From cbbfc72c734c5fabe3211aac01be1db7d41c0945 Mon Sep 17 00:00:00 2001 From: Laren-AWS <57545972+Laren-AWS@users.noreply.github.com> Date: Mon, 20 Feb 2023 13:01:30 -0800 Subject: [PATCH 01/17] Restore aws-cli folder because it's referenced in the AWS CLI guide (#4453) Restore aws-cli folder because it's referenced in the AWS CLI guide. --- aws-cli/README.md | 52 ++++ aws-cli/bash-linux/README.md | 54 ++++ .../ec2/change-ec2-instance-type/README.md | 73 +++++ .../awsdocs_general.sh | 150 ++++++++++ .../change_ec2_instance_type.sh | 273 ++++++++++++++++++ .../test_change_ec2_instance_type.sh | 198 +++++++++++++ .../s3/bucket-lifecycle-operations/README.md | 49 ++++ .../awsdocs_general.sh | 149 ++++++++++ .../bucket_operations.sh | 267 +++++++++++++++++ .../test_bucket_operations.sh | 109 +++++++ 10 files changed, 1374 insertions(+) create mode 100644 aws-cli/README.md create mode 100644 aws-cli/bash-linux/README.md create mode 100644 aws-cli/bash-linux/ec2/change-ec2-instance-type/README.md create mode 100644 aws-cli/bash-linux/ec2/change-ec2-instance-type/awsdocs_general.sh create mode 100644 aws-cli/bash-linux/ec2/change-ec2-instance-type/change_ec2_instance_type.sh create mode 100644 aws-cli/bash-linux/ec2/change-ec2-instance-type/test_change_ec2_instance_type.sh create mode 100644 aws-cli/bash-linux/s3/bucket-lifecycle-operations/README.md create mode 100644 aws-cli/bash-linux/s3/bucket-lifecycle-operations/awsdocs_general.sh create mode 100644 aws-cli/bash-linux/s3/bucket-lifecycle-operations/bucket_operations.sh create mode 100644 aws-cli/bash-linux/s3/bucket-lifecycle-operations/test_bucket_operations.sh diff --git a/aws-cli/README.md b/aws-cli/README.md new file mode 100644 index 00000000000..66dedb510dd --- /dev/null +++ b/aws-cli/README.md @@ -0,0 +1,52 @@ + +# AWS CLI examples + +These are examples for the AWS Command Line Interface (AWS CLI) public +documentation. All examples have been tested and verified to work with +the AWS CLI version 2. + +## Prerequisites + +To run these examples, you'll need: + + * The AWS CLI, downloaded and running on your machine + * AWS credentials in a shared credentials file + +## Running the examples + +Examples are typically written as functions in shell script files that can be +sourced from other files. Most are accompanied by a unit or integration test +script that you can run to validate that each example works. The test scripts +include setup and teardown to create and destroy any prerequisite resources. +We take care that all AWS resources that the example creates are also destroyed +to avoid incurring any unwanted costs. When you're done with an example, we do +recommend that you check the resources in your account to ensure that the +teardown worked as expected and didn't accidentally leave any resources behind. + +To run the examples, you need to create a shared credentials file. For more +information about how to set up a shared credentials file, see [Configuration +and Credential File Settings](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html) +in the _AWS CLI User Guide_. + +## AWS CLI downloads + +For information about how to download and install the AWS CLI, see [Installing +the AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html) +in the _AWS CLI User Guide_. + +## Documentation + +For detailed documentation for the AWS CLI, see the following: + + * [AWS CLI User Guide](https://docs.aws.amazon.com/cli/latest/userguide/) + * [AWS CLI Reference Guide](https://docs.aws.amazon.com/cli/latest/reference/) diff --git a/aws-cli/bash-linux/README.md b/aws-cli/bash-linux/README.md new file mode 100644 index 00000000000..db5e621db89 --- /dev/null +++ b/aws-cli/bash-linux/README.md @@ -0,0 +1,54 @@ + + +# AWS CLI examples for BASH shell on Linux + +These are examples for the AWS Command Line Interface (CLI) public +documentation. All examples have been tested and verified to work with AWS CLI +version 2. The testing platforms include Amazon Linux 2 and MacOS 10.14, both +using a BASH shell. + +## Prerequisites + +To run these examples, you need: + + * The AWS CLI, downloaded and running on your machine + * AWS credentials in a shared credentials file + +## Running the examples + +Examples are typically written as functions in shell script files that can be +sourced from other files. Most are accompanied by a unit or integration test +script that you can run to validate that each example works. The test scripts +include setup and teardown to create and destroy any prerequisite resources. +We take care that all AWS resources that the example creates are also destroyed +to avoid incurring any unwanted costs. When you're done with an example, we do +recommend that you check the resources in your account to ensure that the +teardown worked as expected and didn't accidentally leave any resources behind. + +To run the examples, you need to create a shared credentials file. For more +information about how to set up a shared credentials file, see [Configuration +and Credential File Settings](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html) +in the _AWS CLI User Guide_. + +## AWS CLI downloads + +For information about how to download and install the AWS CLI, see [Installing +the AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html) +in the _AWS CLI User Guide_. + +## Documentation + +For detailed documentation for the AWS CLI, see the following: + + * [AWS CLI User Guide](https://docs.aws.amazon.com/cli/latest/userguide/) + * [AWS CLI Reference Guide](https://docs.aws.amazon.com/cli/latest/reference/) diff --git a/aws-cli/bash-linux/ec2/change-ec2-instance-type/README.md b/aws-cli/bash-linux/ec2/change-ec2-instance-type/README.md new file mode 100644 index 00000000000..c3ce3db8119 --- /dev/null +++ b/aws-cli/bash-linux/ec2/change-ec2-instance-type/README.md @@ -0,0 +1,73 @@ + + +# Change Amazon EC2 Instance Type + +This example demonstrates how to change the instance type of an Amazon EC2 +instance. It stops the instance if it's running, changes the instance type, +and then, if requested, restarts the instance. + +## Files + * change_ec2_instance_type.sh - main script example file + * test_change_ec2_instance_type.sh - unit/integration test file + * general.sh - common test support function file + +## Purpose +The main script file contains the `change_ec2_instance_type()` function that perform the following tasks: + + * Verifies that the specified EC2 instance exists + * Warns the user (unless -f was selected) before stopping the instance + * Changes the instance type + * If requested (by selecting -r), restarts the instance and confirms that the instance is running + +## Prerequisites + + * An Amazon Web Services (AWS) account. + * A shared credentials file with a default profile. The profile that you use must have permissions that allow the AWS operations performed by the script. For more information about how to set up a shared credentials file, see [Configuration and Credential File Settings](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html) in the _AWS CLI User Guide_. + * A running EC2 instance in the account for which you have permission to stop and modify. If you run the test script, it launches an instance for you, tests changing the type, and then terminates the instance. + +## Running the Code +This example is written as a function in a shell script file (*`change_ec2_instance_type.sh`*) that you can `source` from another script or from the command line. Once the function is in memory, you can invoke it from the command line. For example, the following commands change the type of the specified instance to `t2.nano`: + +``` +source change_ec2_instance_type.sh +change_ec2_instance_type -i *instance-id* -t t2.nano +``` + +## Parameters + +**-i** - *(string)* Specifies the instance ID to modify. + +**-t** - *(string)* Specifies the EC2 instance type to switch to. + +**-r** - *(switch)* If set, the function restarts the instance after the type switch. Default: the function doesn't restart the instance. + +**-f** - *(switch)* If set, the function doesn't prompt the user before shutting down the instance to make the type switch. Default: the script prompts the user to confirm shutting down the instance before making the switch. + +**-v** - *(switch)* If set, the function displays status throughout its operation. Default: the script operates silently and displays output only in the event of an error. + +## Testing the Example +The file *change_ec2_instance_type_test.sh* script tests the various code paths for the `change_ec2_instance_type` function. + +If all steps in the test script work correctly, the test script removes all resources that it created. + +You can run the test script with the following parameters: + +**-v** - *(switch)* The tests each show a pass/failure status as they run. Default: the tests runs silently and the output includes only the final overall pass/failure status. + +**-i** - *(switch)* The script pauses after each test to enable you to browse the intermediate results of each step. When run this way, you can examine the current status of the instance using the Amazon EC2 console. The script proceeds to the next step after you press *ENTER* at the prompt. + +## Additional Information + + * As an AWS best practice, grant this code least privilege, or only the permissions required to perform a task. For more information, see [Grant Least Privilege](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege) in the _AWS Identity and Access Management (IAM) User Guide_. + * This code has not been tested in all AWS Regions. Some AWS services are available only in specific Regions. For more information, see [Service Endpoints and Quotas](https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html) in the _AWS General Reference Guide_. + * Running this code can result in charges to your AWS account. It's your responsibility to ensure that any resources created by this script are removed when you are done with them. diff --git a/aws-cli/bash-linux/ec2/change-ec2-instance-type/awsdocs_general.sh b/aws-cli/bash-linux/ec2/change-ec2-instance-type/awsdocs_general.sh new file mode 100644 index 00000000000..6464fcdb1e7 --- /dev/null +++ b/aws-cli/bash-linux/ec2/change-ec2-instance-type/awsdocs_general.sh @@ -0,0 +1,150 @@ +#!/usr/bin/env bash +############################################################################### +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# This file is licensed under the Apache License, Version 2.0 (the "License"). +# +# You may not use this file except in compliance with the License. A copy of +# the License is located at http://aws.amazon.com/apache2.0/. +# +# This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR +# CONDITIONS OF ANY KIND, either express or implied. See the License for the +# specific language governing permissions and limitations under the License. +############################################################################### +# +# This script contains general-purpose functions that are used throughout +# the AWS Command Line Interface (AWS CLI) code examples that are maintained +# in the repo at https://github.com/awsdocs/aws-doc-sdk-examples. +# +# They are intended to abstract functionality that is required for the tests +# to work without cluttering up the code. The intent is to ensure that the +# purpose of the code is clear. + +# Set global defaults: +VERBOSE=false + +############################################################################### +# function run_test +# +# This function is used to perform a command and compare its output to both +# the expected error code and the expected output string. If there isn't a +# match, then the function invokes the test_failed function. +############################################################################### +function run_test { + local DESCRIPTION COMMAND EXPECTED_ERR_CODE EXPECTED_OUTPUT RESPONSE + + DESCRIPTION="$1" + COMMAND="$2" + EXPECTED_ERR_CODE="$3" + if [[ -z "$4" ]]; then EXPECTED_OUTPUT="$4"; else EXPECTED_OUTPUT=""; fi + + iecho -n "Running test: $DESCRIPTION..." + RESPONSE="$($COMMAND)" + ERR="${?}" + + # Check to see if we got the expected error code. + if [[ "$EXPECTED_ERR_CODE" -ne "$ERR" ]]; then + test_failed "The test \"$DESCRIPTION\" returned an unexpected error code: $ERR" + fi + + # Now check the error message, if we provided other than "". + if [[ -n "$EXPECTED_OUTPUT" ]]; then + MATCH=$(echo "$RESPONSE" | grep "$EXPECTED_OUTPUT") + # If there was no match (it's an empty string), then fail. + if [[ -z "$MATCH" ]]; then + test_failed "The test \"$DESCRIPTION\" returned an unexpected output: $RESPONSE" + fi + fi + + iecho "OK" + ipause +} + +############################################################################### +# function test_failed +# +# This function is used to terminate a failed test and to warn the customer +# about possible undeleted resources that could incur costs to their account. +############################################################################### + +function test_failed { + errecho "" + errecho "===TEST FAILED===" + errecho "$@" + errecho "" + errecho " One or more of the tests failed to complete successfully. This means that" + errecho " any tests after the one that failed didn't run and might have left resources" + errecho " still active in your account." + errecho "" + errecho "IMPORTANT:" + errecho " Resources created by this script can incur charges to your AWS account. If the" + errecho " script didn't complete successfully, then you must review and manually delete" + errecho " any resources created by this script that were not automatically removed." + errecho "" + exit 1 +} + + +############################################################################### +# function errecho +# +# This function outputs everything sent to it to STDERR (standard error output). +############################################################################### +function errecho { + printf "%b\n" "$*" 2>&1 +} + +############################################################################### +# function iecho +# +# This function enables the script to display the specified text only if +# the global variable $VERBOSE is set to true. +############################################################################### +function iecho { + if [[ $VERBOSE == true ]]; then + echo -e "$@" + fi +} + +############################################################################### +# function ipause +# +# This function enables the script to pause after each command if interactive +# mode is set (by including -i on the script invocation command). +############################################################################### +function ipause { + if [[ $INTERACTIVE == true ]]; then + read -r -p "Press ENTER to continue..." + fi +} + +# Initialize the shell's RANDOM variable. +RANDOM=$$ +############################################################################### +# function generate_random_name +# +# This function generates a random file name with using the specified root, +# followed by 4 groups that each have 4 digits. +# The default root name is "test". +############################################################################### +function generate_random_name { + + ROOTNAME="test" + if [[ -n $1 ]]; then + ROOTNAME=$1 + fi + + # Initialize the FILENAME variable + FILENAME="$ROOTNAME" + # Configure random number generator to issue numbers between 1000 and 9999, + # inclusive. + DIFF=$((9999-1000+1)) + + for _ in {1..4} + do + rnd=$(($((RANDOM%DIFF))+X)) + # Make sure that the number is 4 digits long. + while [ "${#rnd}" -lt 4 ]; do rnd="0$rnd"; done + FILENAME+="-$rnd" + done + echo $FILENAME +} diff --git a/aws-cli/bash-linux/ec2/change-ec2-instance-type/change_ec2_instance_type.sh b/aws-cli/bash-linux/ec2/change-ec2-instance-type/change_ec2_instance_type.sh new file mode 100644 index 00000000000..e15b90a7ccb --- /dev/null +++ b/aws-cli/bash-linux/ec2/change-ec2-instance-type/change_ec2_instance_type.sh @@ -0,0 +1,273 @@ +#!/usr/bin/env bash +############################################################################### +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# This file is licensed under the Apache License, Version 2.0 (the "License"). +# +# You may not use this file except in compliance with the License. A copy of +# the License is located at http://aws.amazon.com/apache2.0/. +# +# This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR +# CONDITIONS OF ANY KIND, either express or implied. See the License for the +# specific language governing permissions and limitations under the License. +############################################################################### +#// snippet-start:[ec2.bash.change-instance-type.complete] +############################################################################### +# +# function change_ec2_instance_type +# +# This function changes the instance type of the specified Amazon EC2 instance. +# +# Parameters: +# -i [string, mandatory] The instance ID of the instance whose type you +# want to change. +# -t [string, mandatory] The instance type to switch the instance to. +# -f [switch, optional] If set, the function doesn't pause and ask before +# stopping the instance. +# -r [switch, optional] If set, the function restarts the instance after +# changing the type. +# -v [switch, optional] Enable verbose logging. +# -h [switch, optional] Displays this help. +# +# Example: +# The following example converts the specified instance to type "t2.micro" +# without pausing to ask permission. It automatically restarts the +# instance after changing the type. +# +# change_ec2_instance_type -i i-123456789012 -t t2.micro -f -r +# +# Returns: +# 0 if successful +# 1 if it fails +############################################################################### + +# Import the general_purpose functions. +source awsdocs_general.sh + +############################################################################### +# function instance-exists +# +# This function checks to see if the specified instance already exists. If it +# does, it sets two global parameters to return the running state and the +# instance type. +# +# Input parameters: +# $1 - The id of the instance to check +# +# Returns: +# 0 if the instance already exists +# 1 if the instance doesn't exist +# AND: +# Sets two global variables: +# EXISTING_STATE - Contains the running/stopped state of the instance. +# EXISTING_TYPE - Contains the current type of the instance. +############################################################################### +function get_instance_info { + + # Declare local variables. + local INSTANCE_ID RESPONSE + + # This function accepts a single parameter. + INSTANCE_ID=$1 + + # The following --filters parameter causes server-side filtering to limit + # results to only the records that match the specified ID. The --query + # parameter causes CLI client-side filtering to include only the values of + # the InstanceType and State.Code fields. + + RESPONSE=$(aws ec2 describe-instances \ + --query 'Reservations[*].Instances[*].[State.Name, InstanceType]' \ + --filters Name=instance-id,Values="$INSTANCE_ID" \ + --output text \ + ) + + if [[ $? -ne 0 ]] || [[ -z "$RESPONSE" ]]; then + # There was no response, so no such instance. + return 1 # 1 in Bash script means error/false + fi + + # If we got a response, the instance exists. + # Retrieve the values of interest and set them as global variables. + EXISTING_STATE=$(echo "$RESPONSE" | cut -f 1 ) + EXISTING_TYPE=$(echo "$RESPONSE" | cut -f 2 ) + + return 0 # 0 in Bash script means no error/true +} + +###################################### +# +# See header at top of this file +# +###################################### + +function change_ec2_instance_type { + + function usage() ( + echo "" + echo "This function changes the instance type of the specified instance." + echo "Parameter:" + echo " -i Specify the instance ID whose type you want to modify." + echo " -t Specify the instance type to convert the instance to." + echo " -f If the instance was originally running, this option prevents" + echo " the script from asking permission before stopping the instance." + echo " -r Start instance after changing the type." + echo " -v Enable verbose logging." + echo "" + ) + + local FORCE RESTART REQUESTED_TYPE INSTANCE_ID VERBOSE OPTION RESPONSE ANSWER + local OPTIND OPTARG # Required to use getopts command in a function. + + # Set default values. + FORCE=false + RESTART=false + REQUESTED_TYPE="" + INSTANCE_ID="" + VERBOSE=false + + # Retrieve the calling parameters. + while getopts "i:t:frvh" OPTION; do + case "${OPTION}" + in + i) INSTANCE_ID="${OPTARG}";; + t) REQUESTED_TYPE="${OPTARG}";; + f) FORCE=true;; + r) RESTART=true;; + v) VERBOSE=true;; + h) usage; return 0;; + \?) echo "Invalid parameter"; usage; return 1;; + esac + done + + if [[ -z "$INSTANCE_ID" ]]; then + errecho "ERROR: You must provide an instance ID with the -i parameter." + usage + return 1 + fi + + if [[ -z "$REQUESTED_TYPE" ]]; then + errecho "ERROR: You must provide an instance type with the -t parameter." + usage + return 1 + fi + + iecho "Parameters:\n" + iecho " Instance ID: $INSTANCE_ID" + iecho " Requests type: $REQUESTED_TYPE" + iecho " Force stop: $FORCE" + iecho " Restart: $RESTART" + iecho " Verbose: $VERBOSE" + iecho "" + + # Check that the specified instance exists. + iecho -n "Confirming that instance $INSTANCE_ID exists..." + get_instance_info "$INSTANCE_ID" + # If the instance doesn't exist, the function returns an error code <> 0. + if [[ ${?} -ne 0 ]]; then + errecho "ERROR: I can't find the instance \"$INSTANCE_ID\" in the current AWS account." + return 1 + fi + # Function get_instance_info has returned two global values: + # $EXISTING_TYPE -- The instance type of the specified instance + # $EXISTING_STATE -- Whether the specified instance is running + + iecho "confirmed $INSTANCE_ID exists." + iecho " Current type: $EXISTING_TYPE" + iecho " Current state code: $EXISTING_STATE" + + # Are we trying to change the instance to the same type? + if [[ "$EXISTING_TYPE" == "$REQUESTED_TYPE" ]]; then + errecho "ERROR: Can't change instance type to the same type: $REQUESTED_TYPE." + return 1 + fi + + # Check if the instance is currently running. + # 16="running" + if [[ "$EXISTING_STATE" == "running" ]]; then + # If it is, we need to stop it. + # Do we have permission to stop it? + # If -f (FORCE) was set, we do. + # If not, we need to ask the user. + if [[ $FORCE == false ]]; then + while true; do + echo "" + echo "The instance $INSTANCE_ID is currently running. It must be stopped to change the type." + read -r -p "ARE YOU SURE YOU WANT TO STOP THE INSTANCE? (Y or N) " ANSWER + case $ANSWER in + [yY]* ) + break;; + [nN]* ) + echo "Aborting." + exit;; + * ) + echo "Please answer Y or N." + ;; + esac + done + else + iecho "Forcing stop of instance without prompt because of -f." + fi + + # stop the instance + iecho -n "Attempting to stop instance $INSTANCE_ID..." + RESPONSE=$( aws ec2 stop-instances \ + --instance-ids "$INSTANCE_ID" ) + + if [[ ${?} -ne 0 ]]; then + echo "ERROR - AWS reports that it's unable to stop instance $INSTANCE_ID.\n$RESPONSE" + return 1 + fi + iecho "request accepted." + else + iecho "Instance is not in running state, so not requesting a stop." + fi; + + # Wait until stopped. + iecho "Waiting for $INSTANCE_ID to report 'stopped' state..." + aws ec2 wait instance-stopped \ + --instance-ids "$INSTANCE_ID" + if [[ ${?} -ne 0 ]]; then + echo "\nERROR - AWS reports that Wait command failed.\n$RESPONSE" + return 1 + fi + iecho "stopped.\n" + + # Change the type - command produces no output. + iecho "Attempting to change type from $EXISTING_TYPE to $REQUESTED_TYPE..." + RESPONSE=$(aws ec2 modify-instance-attribute \ + --instance-id "$INSTANCE_ID" \ + --instance-type "{\"Value\":\"$REQUESTED_TYPE\"}" + ) + if [[ ${?} -ne 0 ]]; then + errecho "ERROR - AWS reports that it's unable to change the instance type for instance $INSTANCE_ID from $EXISTING_TYPE to $REQUESTED_TYPE.\n$RESPONSE" + return 1 + fi + iecho "changed.\n" + + # Restart if asked + if [[ "$RESTART" == "true" ]]; then + + iecho "Requesting to restart instance $INSTANCE_ID..." + RESPONSE=$(aws ec2 start-instances \ + --instance-ids "$INSTANCE_ID" \ + ) + if [[ ${?} -ne 0 ]]; then + errecho "ERROR - AWS reports that it's unable to restart instance $INSTANCE_ID.\n$RESPONSE" + return 1 + fi + iecho "started.\n" + iecho "Waiting for instance $INSTANCE_ID to report 'running' state..." + RESPONSE=$(aws ec2 wait instance-running \ + --instance-ids "$INSTANCE_ID" ) + if [[ ${?} -ne 0 ]]; then + errecho "ERROR - AWS reports that Wait command failed.\n$RESPONSE" + return 1 + fi + + iecho "running.\n" + + else + iecho "Restart was not requested with -r.\n" + fi +} + +#// snippet-end:[ec2.bash.change-instance-type.complete] diff --git a/aws-cli/bash-linux/ec2/change-ec2-instance-type/test_change_ec2_instance_type.sh b/aws-cli/bash-linux/ec2/change-ec2-instance-type/test_change_ec2_instance_type.sh new file mode 100644 index 00000000000..e66903238fe --- /dev/null +++ b/aws-cli/bash-linux/ec2/change-ec2-instance-type/test_change_ec2_instance_type.sh @@ -0,0 +1,198 @@ +#!/usr/bin/env bash + +############################################################################### +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# This file is licensed under the Apache License, Version 2.0 (the "License"). +# +# You may not use this file except in compliance with the License. A copy of +# the License is located at http://aws.amazon.com/apache2.0/. +# +# This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR +# CONDITIONS OF ANY KIND, either express or implied. See the License for the +# specific language governing permissions and limitations under the License. +############################################################################### + +source ./awsdocs_general.sh +source ./change_ec2_instance_type.sh + +function usage { + echo "This script tests the change_ec2_instance_type function by calling the" + echo "function in a variety of ways and checking the output. It converts the" + echo "instance between types t2.nano and t2.micro." + echo "" + echo "Parameters:" + echo "" + echo " -v Verbose. Shows diagnostic messages about the tests as they run." + echo " -i Interactive. Pauses the script between steps so you can browse" + echo " the results in the AWS Management Console as they occur." + echo "" + echo "IMPORTANT: Running this test script creates an Amazon EC2 instance in" + echo " your Amazon account that can incur charges. It is your responsibility" + echo " to ensure that no resources are left in your account after the script" + echo " completes. If an error occurs during the operation of the script,this" + echo " instance can remain. Check for the instance and delete it manually to" + echo " avoid charges." +} + +# Set default values. +INTERACTIVE=false + +# Retrieve the calling parameters. +while getopts "ivh" OPTION; do + case "${OPTION}" + in + i) + INTERACTIVE=true + VERBOSE=true + ;; + v) + VERBOSE=true + ;; + h) + usage + return 0 + ;; + \?) + echo "Invalid parameter." + usage + return 1 + ;; + esac +done + +if [ "$VERBOSE" == "true" ]; then iecho "Tests running in verbose mode."; fi +if [ "$INTERACTIVE" == "true" ]; then iecho "Tests running in interactive mode."; fi + +iecho "" +iecho "***************SETUP STEPS******************" + # First, get the AMI ID for the one running the latest Amazon Linux 2. + iecho -n "Retrieving the AMI ID for the latest Amazon Linux 2 AMI..." + AMI_ID=$(aws ec2 describe-images \ + --owners 'amazon' \ + --filters 'Name=name,Values=amzn2-ami-hvm-2.0.????????-x86_64-gp2' 'Name=state,Values=available' \ + --query 'sort_by(Images, &CreationDate)[-1].[ImageId]' \ + --output 'text') + if [ ${?} -ne 0 ]; then + echo "ERROR: Unable to retrieve latest Amazon Linux 2 AMI ID: $AMI_ID" + echo "Tests canceled." + return 1 + else + iecho "retrieved $AMI_ID." + fi + + # Now launch the instance as a t2.micro and capture its instance ID. + # All other instance settings are left to default. + iecho -n "Requesting new Amazon EC2 instance of type t2.micro..." + EC2_INSTANCE_ID=$(aws ec2 run-instances \ + --image-id "$AMI_ID" \ + --instance-type t2.micro \ + --query 'Instances[0].InstanceId' \ + --output text) + if [ ${?} -ne 0 ]; then + echo "ERROR: Unable to launch EC2 instance: $EC2_INSTANCE_ID" + echo "Tests canceled." + return 1 + else + iecho "launched. ID:$EC2_INSTANCE_ID" + fi + + iecho -n "Waiting for instance $EC2_INSTANCE_ID to exist..." + aws ec2 wait instance-exists \ + --instance-id "$EC2_INSTANCE_ID" + iecho "confirmed." + +iecho "***************END OF SETUP*****************" +iecho "" + + +run_test "1. Missing mandatory -i parameter" \ + "change_ec2_instance_type" \ + 1 \ + "ERROR: You must provide an instance id." + +run_test "2. Missing mandatory -t parameter" \ + "change_ec2_instance_type -i abc" \ + 1 \ + "ERROR: You must provide an instance type." + +run_test "3. Using an instance ID that doesn't exist" \ + "change_ec2_instance_type -i abc -t t2.micro" \ + 1 \ + "ERROR: I can't find the instance." + +# Test changing to the same type. We can do this while the instance is starting up. +run_test "4. Trying to change to same type" \ + "change_ec2_instance_type -v -i $EC2_INSTANCE_ID -t t2.micro" \ + 1 \ + "ERROR: Can't change instance type to the same type." + +iecho -n "Waiting for instance $EC2_INSTANCE_ID to reach running state..." +RESPONSE=$(aws ec2 wait instance-running --instance-id "$EC2_INSTANCE_ID") +if [[ ${?} -ne 0 ]]; then + errecho "\nERROR: AWS reports that the Wait command failed.\n$RESPONSE" + return 1 +fi +iecho "running." + +# Test changing to t2.micro without -r : should still be in stopped state. +run_test "5. Changing to type t2.nano without restart" \ + "change_ec2_instance_type -f -i $EC2_INSTANCE_ID -t t2.nano" \ + 0 + + # Validate result was "t2.nano" and that it's in "stopped" state. + get_instance_info "$EC2_INSTANCE_ID" + if [ "$EXISTING_TYPE" != "t2.nano" ]; then + test_failed "Unable to validate change. Should be t2.nano. Found $EXISTING_TYPE." + fi + if [ "$EXISTING_STATE" != "stopped" ]; then + test_failed "Unable to validate state. Should be stopped. Found $EXISTING_STATE." + fi + +# Test changing back to t2.micro with -r. Should now be in running state +run_test "6. Changing to type t2.micro with restart" \ + "change_ec2_instance_type -f -r -i $EC2_INSTANCE_ID -t t2.micro" \ + 0 + + # Validate result was "t2.micro" and that it's in "running" state. + get_instance_info "$EC2_INSTANCE_ID" + if [ "$EXISTING_TYPE" != "t2.micro" ]; then + test_failed "Unable to validate change. Should be t2.micro. Found $EXISTING_TYPE." + fi + if [ "$EXISTING_STATE" != "running" ]; then + test_failed "Unable to validate state. Should be running. Found $EXISTING_STATE." + fi + +iecho "" +iecho "*************TEAR DOWN STEPS****************" + iecho -n "Requesting termination of instance $EC2_INSTANCE_ID..." + # Delete and terminate the instance. + RESPONSE=$(aws ec2 terminate-instances \ + --instance-ids "$EC2_INSTANCE_ID" + ) + if [ ${?} -ne 0 ]; then + errecho "**** ERROR ****" + errecho "AWS reported a failure to terminate EC2 instance: $EC2_INSTANCE_ID" + errecho "You must terminate the instance using the AWS Management Console" + errecho "or CLI commands. Failure to terminate the instance can result in" + errecho "charges to your AWS account.\n" + else + iecho "request accepted." + fi + + iecho -n "Waiting for instance $EC2_INSTANCE_ID to terminate..." + aws ec2 wait instance-terminated \ + --instance-id "$EC2_INSTANCE_ID" + iecho "confirmed." + if [[ ${?} -ne 0 ]]; then + errecho "ERROR - AWS reports that Wait command failed." + errecho "You must ensure that the instance terminated successfully yourself using the" + errecho "AWS Management Console or CLI commands. Failure to terminate the instance can" + errecho "result in charges to your AWS account.\n" + return 1 + fi + + +iecho "************END OF TEAR DOWN****************" +iecho "" + +echo "Tests completed successfully." diff --git a/aws-cli/bash-linux/s3/bucket-lifecycle-operations/README.md b/aws-cli/bash-linux/s3/bucket-lifecycle-operations/README.md new file mode 100644 index 00000000000..371ae62be49 --- /dev/null +++ b/aws-cli/bash-linux/s3/bucket-lifecycle-operations/README.md @@ -0,0 +1,49 @@ + + +# Amazon S3 Bucket Lifecycle Operations + +This example demonstrates how to interact with some of the basic Amazon S3 operations. + +## Files + * bucket-operations.sh - main script example file + * test-bucket-operations.sh - unit/integration test file + * general.sh - common test support function file + +## Purpose +The main script file includes functions that perform the following tasks: + + * Creating a bucket and verifying that it exists + * Copying a file from the local computer to a bucket + * Copying a file from one bucket location to a different bucket location + * Listing the contents of a bucket + * Deleting a file from a bucket + * Deleting a bucket + +## Prerequisites + + * An Amazon Web Services (AWS) account. + * A shared credentials file with a default profile. The profile that you use must have permissions that allow the AWS operations performed by the script. For more information about how to set up a shared credentials file, see [Configuration and Credential File Settings](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html) in the _AWS CLI User Guide_. + +## Running the Code + +This example is written as a set of functions in a shell script file (bucket-operations.sh) that can be sourced from another file. The file *`bucket-operations-test.sh`* script demonstrates how to call the functions by sourcing the *`bucket-operations.sh`* file and calling each of the functions. + +If all steps work correctly, the test script removes all resources that it created. + +To see the intermediate results of each step, run the script with a `-i` parameter. When run this way, you can view the current status of the bucket or its contents using the Amazon S3 console. The script only proceeds to the next step when you press *ENTER* at the prompt. + +## Additional Information + + * As an AWS best practice, grant this code least privilege, or only the permissions required to perform a task. For more information, see [Grant Least Privilege](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege) in the _AWS Identity and Access Management (IAM) User Guide_. + * This code has not been tested in all AWS Regions. Some AWS services are available only in specific Regions. For more information, see [Service Endpoints and Quotas](https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html) in the _AWS General Reference Guide_. + * Running this code can result in charges to your AWS account. It is your responsibility to ensure that any resources created by this script are removed when you are done with them. diff --git a/aws-cli/bash-linux/s3/bucket-lifecycle-operations/awsdocs_general.sh b/aws-cli/bash-linux/s3/bucket-lifecycle-operations/awsdocs_general.sh new file mode 100644 index 00000000000..05ba794a506 --- /dev/null +++ b/aws-cli/bash-linux/s3/bucket-lifecycle-operations/awsdocs_general.sh @@ -0,0 +1,149 @@ +#!/usr/bin/env bash +############################################################################### +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# This file is licensed under the Apache License, Version 2.0 (the "License"). +# +# You may not use this file except in compliance with the License. A copy of +# the License is located at http://aws.amazon.com/apache2.0/. +# +# This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR +# CONDITIONS OF ANY KIND, either express or implied. See the License for the +# specific language governing permissions and limitations under the License. +############################################################################### +# +# This script contains general purpose functions that are used throughout +# the AWS Command Line Interface (AWS CLI) code samples that are maintained +# in the repo at https://github.com/awsdocs/aws-doc-sdk-examples +# +# They are intended to abstract functionality that is required for the tests +# to work without cluttering up the code. The intent is to ensure the purpose +# of the code is clear. + +# Set global defaults: +VERBOSE=false + +############################################################################### +# function run_test +# +# This function is used to perform a command and compare its output to both +# the expected error code and the expected output string. If there isn't a +# match, then the function invokes the test_failed function. +############################################################################### +function run_test { + local DESCRIPTION COMMAND EXPECTED_ERR_CODE EXPECTED_OUTPUT RESPONSE + + DESCRIPTION="$1" + COMMAND="$2" + EXPECTED_ERR_CODE="$3" + if [[ -z "$4" ]]; then EXPECTED_OUTPUT="$4"; else EXPECTED_OUTPUT=""; fi + + iecho -n "Running test: $DESCRIPTION..." + RESPONSE="$($COMMAND)" + ERR="${?}" + + # Check to see if we got the expected error code. + if [[ "$EXPECTED_ERR_CODE" -ne "$ERR" ]]; then + test_failed "The test \"$DESCRIPTION\" returned an unexpected error code: $ERR" + fi + + #now check the error message, if we provided other than "". + if [[ -n "$EXPECTED_OUTPUT" ]]; then + MATCH=$(echo "$RESPONSE" | grep "$EXPECTED_OUTPUT") + # If there was no match (it's an empty string), then fail. + if [[ -z "$MATCH" ]]; then + test_failed "The test \"$DESCRIPTION\" returned an unexpected output: $RESPONSE" + fi + fi + + iecho "OK" + ipause +} + +############################################################################### +# function test_failed +# +# This function is used to terminate a failed test and to warn the customer +# about possible undeleted resources that could incur costs to their account. +############################################################################### + +function test_failed { + + errecho "" + errecho "===TEST FAILED===" + errecho "$@" + errecho "" + errecho " One or more of the tests failed to complete successfully. This means that any" + errecho " tests after the one that failed test didn't run and might have left resources" + errecho " still active in your account." + errecho "" + errecho "IMPORTANT:" + errecho " Resources created by this script can incur charges to your AWS account. If the" + errecho " script did not complete successfully, then you must review and manually delete" + errecho " any resources created by this script that were not automatically removed." + errecho "" + exit 1 +} + + +############################################################################### +# function errecho +# +# This function outputs everything sent to it to STDERR (standard error output). +############################################################################### +function errecho { + printf "%s\n" "$*" 2>&1 +} + +############################################################################### +# function iecho +# +# This function enables the script to display the specified text only if +# the global variable $VERBOSE is set to true. +############################################################################### +function iecho { + if [[ $VERBOSE == true ]]; then + echo "$@" + fi +} + +############################################################################### +# function ipause +# +# This function enables the script to pause after each command if interactive +# mode is set (by including -i on the script invocation command). +############################################################################### +function ipause { + if [[ $INTERACTIVE == true ]]; then + read -r -p "Press ENTER to continue..." + fi +} + +# Initialize the shell's RANDOM variable +RANDOM=$$ +############################################################################### +# function generate_random_name +# +# This function generates a random file name with using the specified root +# followed by 4 groups that each have 4 digits. +# The default root name is "test" +function generate_random_name { + + ROOTNAME="test" + if [[ -n $1 ]]; then + ROOTNAME=$1 + fi + + # Initialize the filename variable + FILENAME="$ROOTNAME" + # Configure random number generator to issue numbers between 1000 and 9999, inclusive + DIFF=$((9999-1000+1)) + + for _ in {1..4} + do + rnd=$(($((RANDOM%DIFF))+X)) + # make sure that the number is 4 digits long + while [ "${#rnd}" -lt 4 ]; do rnd="0$rnd"; done + FILENAME+="-$rnd" + done + echo $FILENAME +} \ No newline at end of file diff --git a/aws-cli/bash-linux/s3/bucket-lifecycle-operations/bucket_operations.sh b/aws-cli/bash-linux/s3/bucket-lifecycle-operations/bucket_operations.sh new file mode 100644 index 00000000000..3ade8b8086c --- /dev/null +++ b/aws-cli/bash-linux/s3/bucket-lifecycle-operations/bucket_operations.sh @@ -0,0 +1,267 @@ +#!/usr/bin/env bash +############################################################################### +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# This file is licensed under the Apache License, Version 2.0 (the "License"). +# +# You may not use this file except in compliance with the License. A copy of +# the License is located at http://aws.amazon.com/apache2.0/. +# +# This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR +# CONDITIONS OF ANY KIND, either express or implied. See the License for the +# specific language governing permissions and limitations under the License. +############################################################################### +#// snippet-start:[s3.bash.bucket-operations.complete] +source ./awsdocs_general.sh + +############################################################################### +# function bucket_exists +# +# This function checks to see if the specified bucket already exists. +# +# Parameters: +# $1 - The name of the bucket to check +# +# Returns: +# 0 if the bucket already exists +# 1 if the bucket doesn't exist +############################################################################### +function bucket_exists { + be_bucketname=$1 + + # Check whether the bucket already exists. + # We suppress all output - we're interested only in the return code. + + aws s3api head-bucket \ + --bucket $be_bucketname \ + >/dev/null 2>&1 + + if [[ ${?} -eq 0 ]]; then + return 0 # 0 in Bash script means true. + else + return 1 # 1 in Bash script means false. + fi +} +############################################################################### +# function create-bucket +# +# This function creates the specified bucket in the specified AWS Region, unless +# it already exists. +# +# Parameters: +# -b bucket_name -- The name of the bucket to create +# -r region_code -- The code for an AWS Region in which to +# create the bucket +# +# Returns: +# The URL of the bucket that was created. +# And: +# 0 if successful +# 1 if it fails +############################################################################### +function create_bucket { + local BUCKET_NAME REGION_CODE RESPONSE + local OPTION OPTIND OPTARG # Required to use getopts command in a function + + function usage { + echo "function create_bucket" + echo "Creates an Amazon S3 bucket. You must supply both of the following parameters:" + echo " -b bucket_name The name of the bucket. It must be globally unique." + echo " -r region_code The code for an AWS Region in which the bucket is created." + echo "" + } + + # Retrieve the calling parameters + while getopts "b:r:" OPTION; do + case "${OPTION}" + in + b) BUCKET_NAME="${OPTARG}";; + r) REGION_CODE="${OPTARG}";; + h) usage; return 0;; + \?) echo "Invalid parameter"; usage; return 1;; + esac + done + + if [[ -z "$BUCKET_NAME" ]]; then + errecho "ERROR: You must provide a bucket name with the -b parameter." + usage + return 1 + fi + + if [[ -z "$REGION_CODE" ]]; then + errecho "ERROR: You must provide an AWS Region code with the -r parameter." + usage + return 1 + fi + + iecho "Parameters:\n" + iecho " Bucket name: $BUCKET_NAME" + iecho " Region code: $REGION_CODE" + iecho "" + + + # If the bucket already exists, we don't want to try to create it. + if (bucket_exists $BUCKET_NAME); then + errecho "ERROR: A bucket with that name already exists. Try again." + return 1 + fi + + # The bucket doesn't exist, so try to create it. + + RESPONSE=$(aws s3api create-bucket \ + --bucket $BUCKET_NAME \ + --create-bucket-configuration LocationConstraint=$REGION_CODE) + + if [[ ${?} -ne 0 ]]; then + errecho "ERROR: AWS reports create-bucket operation failed.\n$RESPONSE" + return 1 + fi +} + +############################################################################### +# function copy_file_to_bucket +# +# This function creates a file in the specified bucket. +# +# Parameters: +# -b bucket_name$1 - The name of the bucket to copy the file to +# $2 - The path and file name of the local file to copy to the bucket +# $3 - The key (name) to call the copy of the file in the bucket +# +# Returns: +# 0 if successful +# 1 if it fails +############################################################################### +function copy_file_to_bucket { + cftb_bucketname=$1 + cftb_sourcefile=$2 + cftb_destfilename=$3 + local RESPONSE + + RESPONSE=$(aws s3api put-object \ + --bucket $cftb_bucketname \ + --body $cftb_sourcefile \ + --key $cftb_destfilename) + + if [[ ${?} -ne 0 ]]; then + errecho "ERROR: AWS reports put-object operation failed.\n$RESPONSE" + return 1 + fi +} + +############################################################################### +# function copy_item_in_bucket +# +# This function creates a copy of the specified file in the same bucket. +# +# Parameters: +# $1 - The name of the bucket to copy the file from and to +# $2 - The key of the source file to copy +# $3 - The key of the destination file +# +# Returns: +# 0 if successful +# 1 if it fails +############################################################################### +function copy_item_in_bucket { + ciib_bucketname=$1 + ciib_sourcefile=$2 + ciib_destfile=$3 + local RESPONSE + + RESPONSE=$(aws s3api copy-object \ + --bucket $ciib_bucketname \ + --copy-source $ciib_bucketname/$ciib_sourcefile \ + --key $ciib_destfile) + + if [[ $? -ne 0 ]]; then + errecho "ERROR: AWS reports s3api copy-object operation failed.\n$RESPONSE" + return 1 + fi +} + +############################################################################### +# function list_items_in_bucket +# +# This function displays a list of the files in the bucket with each file's +# size. The function uses the --query parameter to retrieve only the Key and +# Size fields from the Contents collection. +# +# Parameters: +# $1 - The name of the bucket +# +# Returns: +# The list of files in text format +# And: +# 0 if successful +# 1 if it fails +############################################################################### +function list_items_in_bucket { + liib_bucketname=$1 + local RESPONSE + + RESPONSE=$(aws s3api list-objects \ + --bucket $liib_bucketname \ + --output text \ + --query 'Contents[].{Key: Key, Size: Size}' ) + + if [[ ${?} -eq 0 ]]; then + echo "$RESPONSE" + else + errecho "ERROR: AWS reports s3api list-objects operation failed.\n$RESPONSE" + return 1 + fi +} + +############################################################################### +# function delete_item_in_bucket +# +# This function deletes the specified file from the specified bucket. +# +# Parameters: +# $1 - The name of the bucket +# $2 - The key (file name) in the bucket to delete + +# Returns: +# 0 if successful +# 1 if it fails +############################################################################### +function delete_item_in_bucket { + diib_bucketname=$1 + diib_key=$2 + local RESPONSE + + RESPONSE=$(aws s3api delete-object \ + --bucket $diib_bucketname \ + --key $diib_key) + + if [[ $? -ne 0 ]]; then + errecho "ERROR: AWS reports s3api delete-object operation failed.\n$RESPONSE" + return 1 + fi +} + +############################################################################### +# function delete_bucket +# +# This function deletes the specified bucket. +# +# Parameters: +# $1 - The name of the bucket + +# Returns: +# 0 if successful +# 1 if it fails +############################################################################### + function delete_bucket { + db_bucketname=$1 + local RESPONSE + + RESPONSE=$(aws s3api delete-bucket \ + --bucket $db_bucketname) + + if [[ $? -ne 0 ]]; then + errecho "ERROR: AWS reports s3api delete-bucket failed.\n$RESPONSE" + return 1 + fi +} +#// snippet-end:[s3.bash.bucket-operations.complete] diff --git a/aws-cli/bash-linux/s3/bucket-lifecycle-operations/test_bucket_operations.sh b/aws-cli/bash-linux/s3/bucket-lifecycle-operations/test_bucket_operations.sh new file mode 100644 index 00000000000..e423eae83ea --- /dev/null +++ b/aws-cli/bash-linux/s3/bucket-lifecycle-operations/test_bucket_operations.sh @@ -0,0 +1,109 @@ +#!/usr/bin/env bash + +############################################################################### +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# This file is licensed under the Apache License, Version 2.0 (the "License"). +# +# You may not use this file except in compliance with the License. A copy of +# the License is located at http://aws.amazon.com/apache2.0/. +# +# This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR +# CONDITIONS OF ANY KIND, either express or implied. See the License for the +# specific language governing permissions and limitations under the License. +############################################################################### + +source ./awsdocs_general.sh +source ./bucket_operations.sh + +function usage { + echo "This script tests Amazon S3 bucket operations in the AWS CLI." + echo "It creates a randomly named bucket, copies files to it, then" + echo "deletes the files and the bucket." + echo "" + echo "To pause the script between steps so you can see the results in the" + echo "AWS Management Console, include the parameter -i." + echo "" + echo "IMPORTANT: Running this script creates resources in your Amazon" + echo " account that can incur charges. It is your responsibility to" + echo " ensure that no resources are left in your account after the script" + echo " completes. If an error occurs during the operation of the script," + echo " then resources can remain that you might need to delete manually." +} + + # Set default values. + INTERACTIVE=false + VERBOSE=false + + # Retrieve the calling parameters + while getopts "ivh" OPTION; do + case "${OPTION}" + in + i) INTERACTIVE=true;VERBOSE=true; iecho;; + v) VERBOSE=true;; + h) usage; return 0;; + \?) echo "Invalid parameter"; usage; return 1;; + esac + done + + +if [ "$INTERACTIVE" == "true" ]; then iecho "Tests running in interactive mode."; fi +if [ "$VERBOSE" == "true" ]; then iecho "Tests running in verbose mode."; fi + +iecho "***************SETUP STEPS******************" +BUCKETNAME=$(generate_random_name s3test) +REGION="us-west-2" +FILENAME1=$(generate_random_name s3testfile) +FILENAME2=$(generate_random_name s3testfile) + +iecho "BUCKETNAME=$BUCKETNAME" +iecho "REGION=$REGION" +iecho "FILENAME1=$FILENAME1" +iecho "FILENAME2=$FILENAME2" + +iecho "**************END OF STEPS******************" + +run_test "1. Creating bucket with missing bucket_name" \ + "create_bucket -r $REGION" \ + 1 \ + "ERROR: You must provide a bucket name" \ + + +run_test "2. Creating bucket with missing region_name" \ + "create_bucket -b $BUCKETNAME" \ + 1 \ + "ERROR: You must provide an AWS Region code" + +run_test "3. Creating bucket with valid parameters" \ + "create_bucket -r $REGION -b $BUCKETNAME" \ + 0 + +run_test "4. Creating bucket with duplicate name and region" \ + "create_bucket -r $REGION -b $BUCKETNAME" \ + 1 \ + "ERROR: A bucket with that name already exists" + +run_test "5. Copying local file (copy of this script) to bucket" \ + "copy_file_to_bucket $BUCKETNAME ./$0 $FILENAME1" \ + 0 + +run_test "6. Duplicating existing file in bucket" \ + "copy_item_in_bucket $BUCKETNAME $FILENAME1 $FILENAME2" \ + 0 + +run_test "7. Listing contents of bucket" \ + "list_items_in_bucket $BUCKETNAME" \ + 0 + +run_test "8. Deleting first file from bucket" \ + "delete_item_in_bucket $BUCKETNAME $FILENAME1" \ + 0 + +run_test "9. Deleting second file from bucket" \ + "delete_item_in_bucket $BUCKETNAME $FILENAME2" \ + 0 + +run_test "10. Deleting bucket" \ + "delete_bucket $BUCKETNAME" \ + 0 + +echo "Tests completed successfully." From c7ab4b4d1ce52a47934a1b38af59783314716896 Mon Sep 17 00:00:00 2001 From: Steven Meyer <108885656+meyertst-aws@users.noreply.github.com> Date: Mon, 20 Feb 2023 18:02:48 -0500 Subject: [PATCH 02/17] 4245 c++ rds mvp (#4397) C++ RDS MVP --- .doc_gen/metadata/rds_metadata.yaml | 144 ++- .../readmes/includes/prerequisites.jinja2 | 15 + .doc_gen/readmes/includes/tests.jinja2 | 15 + .../cognito/tests/cognito_gtests.cpp | 1 + cpp/example_code/rds/CMakeLists.txt | 87 ++ cpp/example_code/rds/README.md | 114 ++ .../rds/getting_started_with_db_instances.cpp | 1083 +++++++++++++++++ cpp/example_code/rds/rds_samples.h | 25 + cpp/example_code/rds/tests/CMakeLists.txt | 138 +++ ...test_getting_started_with_db_instances.cpp | 118 ++ .../1-DescribeDBParameterGroups.xml | 9 + .../mock_input/10-DescribeDBParameters.xml | 34 + .../mock_input/11-DescribeDBInstances.xml | 9 + .../12-DescribeDBEngineVersions.xml | 322 +++++ .../13-DescribeOrderableDBInstanceOptions.xml | 374 ++++++ .../tests/mock_input/15-CreateDBInstance.xml | 126 ++ .../mock_input/16-DescribeDBInstances.xml | 129 ++ .../mock_input/2-DescribeDBEngineVersions.xml | 322 +++++ .../mock_input/3-CreateDBParameterGroup.xml | 14 + .../mock_input/4-DescribeDBParameters.xml | 345 ++++++ .../mock_input/457-DescribeDBInstances.xml | 136 +++ .../tests/mock_input/458-CreateDBSnapshot.xml | 36 + .../mock_input/459-DescribeDBSnapshots.xml | 38 + .../mock_input/564-DescribeDBSnapshots.xml | 40 + .../tests/mock_input/565-DeleteDBInstance.xml | 129 ++ .../mock_input/566-DescribeDBInstances.xml | 132 ++ .../mock_input/666-DescribeDBInstances.xml | 9 + .../mock_input/667-DeleteDBParameterGroup.xml | 6 + .../mock_input/8-DescribeDBParameters.xml | 147 +++ .../mock_input/9-ModifyDBParameterGroup.xml | 9 + cpp/example_code/rds/tests/rds_gtests.cpp | 110 ++ cpp/example_code/rds/tests/rds_gtests.h | 72 ++ cpp/example_code/rds/tests/test_main.cpp | 11 + 33 files changed, 4298 insertions(+), 1 deletion(-) create mode 100644 cpp/example_code/rds/CMakeLists.txt create mode 100644 cpp/example_code/rds/README.md create mode 100644 cpp/example_code/rds/getting_started_with_db_instances.cpp create mode 100644 cpp/example_code/rds/rds_samples.h create mode 100644 cpp/example_code/rds/tests/CMakeLists.txt create mode 100644 cpp/example_code/rds/tests/gtest_getting_started_with_db_instances.cpp create mode 100644 cpp/example_code/rds/tests/mock_input/1-DescribeDBParameterGroups.xml create mode 100644 cpp/example_code/rds/tests/mock_input/10-DescribeDBParameters.xml create mode 100644 cpp/example_code/rds/tests/mock_input/11-DescribeDBInstances.xml create mode 100644 cpp/example_code/rds/tests/mock_input/12-DescribeDBEngineVersions.xml create mode 100644 cpp/example_code/rds/tests/mock_input/13-DescribeOrderableDBInstanceOptions.xml create mode 100644 cpp/example_code/rds/tests/mock_input/15-CreateDBInstance.xml create mode 100644 cpp/example_code/rds/tests/mock_input/16-DescribeDBInstances.xml create mode 100644 cpp/example_code/rds/tests/mock_input/2-DescribeDBEngineVersions.xml create mode 100644 cpp/example_code/rds/tests/mock_input/3-CreateDBParameterGroup.xml create mode 100644 cpp/example_code/rds/tests/mock_input/4-DescribeDBParameters.xml create mode 100644 cpp/example_code/rds/tests/mock_input/457-DescribeDBInstances.xml create mode 100644 cpp/example_code/rds/tests/mock_input/458-CreateDBSnapshot.xml create mode 100644 cpp/example_code/rds/tests/mock_input/459-DescribeDBSnapshots.xml create mode 100644 cpp/example_code/rds/tests/mock_input/564-DescribeDBSnapshots.xml create mode 100644 cpp/example_code/rds/tests/mock_input/565-DeleteDBInstance.xml create mode 100644 cpp/example_code/rds/tests/mock_input/566-DescribeDBInstances.xml create mode 100644 cpp/example_code/rds/tests/mock_input/666-DescribeDBInstances.xml create mode 100644 cpp/example_code/rds/tests/mock_input/667-DeleteDBParameterGroup.xml create mode 100644 cpp/example_code/rds/tests/mock_input/8-DescribeDBParameters.xml create mode 100644 cpp/example_code/rds/tests/mock_input/9-ModifyDBParameterGroup.xml create mode 100644 cpp/example_code/rds/tests/rds_gtests.cpp create mode 100644 cpp/example_code/rds/tests/rds_gtests.h create mode 100644 cpp/example_code/rds/tests/test_main.cpp diff --git a/.doc_gen/metadata/rds_metadata.yaml b/.doc_gen/metadata/rds_metadata.yaml index e9676abf21f..da52d6af26f 100644 --- a/.doc_gen/metadata/rds_metadata.yaml +++ b/.doc_gen/metadata/rds_metadata.yaml @@ -41,6 +41,17 @@ rds_CreateDBInstance: snippet_tags: - python.example_code.rds.helper.InstanceWrapper_decl - python.example_code.rds.CreateDBInstance + C++: + versions: + - sdk_version: 1 + github: cpp/example_code/rds + sdkguide: + excerpts: + - description: + snippet_tags: + - cpp.example_code.rds.client_configuration + - cpp.example_code.rds.client + - cpp.example_code.rds.CreateDBInstance services: rds: {CreateDBInstance} rds_DeleteDBInstance: @@ -85,6 +96,17 @@ rds_DeleteDBInstance: snippet_tags: - python.example_code.rds.helper.InstanceWrapper_decl - python.example_code.rds.DeleteDBInstance + C++: + versions: + - sdk_version: 1 + github: cpp/example_code/rds + sdkguide: + excerpts: + - description: + snippet_tags: + - cpp.example_code.rds.client_configuration + - cpp.example_code.rds.client + - cpp.example_code.rds.DeleteDBInstance services: rds: {DeleteDBInstance} rds_DescribeAccountAttributes: @@ -163,7 +185,17 @@ rds_DescribeDBInstances: - description: snippet_tags: - rds.ruby.listAllInstances - + C++: + versions: + - sdk_version: 1 + github: cpp/example_code/rds + sdkguide: + excerpts: + - description: + snippet_tags: + - cpp.example_code.rds.client_configuration + - cpp.example_code.rds.client + - cpp.example_code.rds.DescribeDBInstances services: rds: {DescribeDBInstances} rds_ModifyDBInstance: @@ -252,6 +284,18 @@ rds_DescribeDBParameterGroups: - description: snippet_tags: - rds.ruby.listParameterGroups + C++: + versions: + - sdk_version: 1 + github: cpp/example_code/rds + sdkguide: + excerpts: + - description: + snippet_tags: + - cpp.example_code.rds.client_configuration + - cpp.example_code.rds.client + - cpp.example_code.rds.DescribeDBParameterGroups1 + - cpp.example_code.rds.DescribeDBParameterGroups2 services: rds: {DescribeDBParameterGroups} rds_CreateDBParameterGroup: @@ -288,6 +332,17 @@ rds_CreateDBParameterGroup: snippet_tags: - python.example_code.rds.helper.InstanceWrapper_decl - python.example_code.rds.CreateDBParameterGroup + C++: + versions: + - sdk_version: 1 + github: cpp/example_code/rds + sdkguide: + excerpts: + - description: + snippet_tags: + - cpp.example_code.rds.client_configuration + - cpp.example_code.rds.client + - cpp.example_code.rds.CreateDBParameterGroup services: rds: {CreateDBParameterGroup} rds_DeleteDBParameterGroup: @@ -324,6 +379,17 @@ rds_DeleteDBParameterGroup: snippet_tags: - python.example_code.rds.helper.InstanceWrapper_decl - python.example_code.rds.DeleteDBParameterGroup + C++: + versions: + - sdk_version: 1 + github: cpp/example_code/rds + sdkguide: + excerpts: + - description: + snippet_tags: + - cpp.example_code.rds.client_configuration + - cpp.example_code.rds.client + - cpp.example_code.rds.DeleteDBParameterGroup services: rds: {DeleteDBParameterGroup} rds_DescribeDBParameters: @@ -369,6 +435,17 @@ rds_DescribeDBParameters: - description: snippet_tags: - rds.ruby.listParameterGroups + C++: + versions: + - sdk_version: 1 + github: cpp/example_code/rds + sdkguide: + excerpts: + - description: + snippet_tags: + - cpp.example_code.rds.client_configuration + - cpp.example_code.rds.client + - cpp.example_code.rds.DescribeDBParameters services: rds: {DescribeDBParameters} rds_ModifyDBParameterGroup: @@ -405,6 +482,17 @@ rds_ModifyDBParameterGroup: snippet_tags: - python.example_code.rds.helper.InstanceWrapper_decl - python.example_code.rds.ModifyDBParameterGroup + C++: + versions: + - sdk_version: 1 + github: cpp/example_code/rds + sdkguide: + excerpts: + - description: + snippet_tags: + - cpp.example_code.rds.client_configuration + - cpp.example_code.rds.client + - cpp.example_code.rds.ModifyDBParameterGroup services: rds: {ModifyDBParameterGroup} rds_CreateDBSnapshot: @@ -450,6 +538,17 @@ rds_CreateDBSnapshot: - description: snippet_tags: - rds.ruby.createDatabaseSnapshot + C++: + versions: + - sdk_version: 1 + github: cpp/example_code/rds + sdkguide: + excerpts: + - description: + snippet_tags: + - cpp.example_code.rds.client_configuration + - cpp.example_code.rds.client + - cpp.example_code.rds.CreateDBSnapshot services: rds: {CreateDBSnapshot} rds_DescribeDBSnapshots: @@ -486,6 +585,17 @@ rds_DescribeDBSnapshots: - description: snippet_tags: - rds.ruby.listInstanceSnapshots + C++: + versions: + - sdk_version: 1 + github: cpp/example_code/rds + sdkguide: + excerpts: + - description: + snippet_tags: + - cpp.example_code.rds.client_configuration + - cpp.example_code.rds.client + - cpp.example_code.rds.DescribeDBSnapshots services: rds: {DescribeDBSnapshots} rds_DescribeDBEngineVersions: @@ -522,6 +632,17 @@ rds_DescribeDBEngineVersions: snippet_tags: - python.example_code.rds.helper.InstanceWrapper_decl - python.example_code.rds.DescribeDBEngineVersions + C++: + versions: + - sdk_version: 1 + github: cpp/example_code/rds + sdkguide: + excerpts: + - description: + snippet_tags: + - cpp.example_code.rds.client_configuration + - cpp.example_code.rds.client + - cpp.example_code.rds.DescribeDBEngineVersions services: rds: {DescribeDBEngineVersions} rds_DescribeOrderableDBInstanceOptions: @@ -558,6 +679,17 @@ rds_DescribeOrderableDBInstanceOptions: snippet_tags: - python.example_code.rds.helper.InstanceWrapper_decl - python.example_code.rds.DescribeOrderableDBInstanceOptions + C++: + versions: + - sdk_version: 1 + github: cpp/example_code/rds + sdkguide: + excerpts: + - description: + snippet_tags: + - cpp.example_code.rds.client_configuration + - cpp.example_code.rds.client + - cpp.example_code.rds.DescribeOrderableDBInstanceOptions services: rds: {DescribeOrderableDBInstanceOptions} rds_GenerateRDSAuthToken: @@ -637,6 +769,16 @@ rds_Scenario_GetStartedInstances: manage &RDS; actions. snippet_tags: - python.example_code.rds.helper.InstanceWrapper_full + C++: + versions: + - sdk_version: 1 + github: cpp/example_code/rds + sdkguide: + excerpts: + - description: + snippet_tags: + - cpp.example_code.rds.client_configuration + - cpp.example_code.rds.get_started_instances services: rds: {CreateDBInstance, CreateDBParameterGroup, CreateDBSnapshot, DeleteDBInstance, DeleteDBParameterGroup, DescribeDBInstances, DescribeDBEngineVersions, DescribeDBParameterGroups, diff --git a/.doc_gen/readmes/includes/prerequisites.jinja2 b/.doc_gen/readmes/includes/prerequisites.jinja2 index 36367a4a54b..963781b7b5f 100644 --- a/.doc_gen/readmes/includes/prerequisites.jinja2 +++ b/.doc_gen/readmes/includes/prerequisites.jinja2 @@ -1,7 +1,11 @@ ### Prerequisites +{% if lang_config['name'] != 'C++' %} + For prerequisites, see the [README]({{lang_config['readme']}}#Prerequisites) in the `{{lang_config['base_folder']}}` folder. +{% endif %} + {% if lang_config['name'] == 'Python' and lang_config['sdk_ver'] == 3 %} Install the packages required by these examples by running the following in a virtual environment: @@ -9,7 +13,18 @@ Install the packages required by these examples by running the following in a vi python -m pip install -r requirements.txt ``` +{% elif lang_config['name'] == 'C++' and lang_config['sdk_ver'] == 1 %} + +Before using the code examples, first complete the installation and setup steps +for [Getting started](https://docs.aws.amazon.com/sdk-for-cpp/v1/developer-guide/getting-started.html) in the AWS SDK for +C++ Developer Guide. +This section covers how to get and build the SDK, and how to build your own code by using the SDK with a +sample Hello World-style application. + +Next, for information on code example structures and how to build and run the examples, see [Getting started with the AWS SDK for C++ code examples](https://docs.aws.amazon.com/sdk-for-cpp/v1/developer-guide/getting-started-code-examples.html). + {% endif %} + {{ customs['prerequisites'] -}} diff --git a/.doc_gen/readmes/includes/tests.jinja2 b/.doc_gen/readmes/includes/tests.jinja2 index 9dca0dd1c30..fe1171a983f 100644 --- a/.doc_gen/readmes/includes/tests.jinja2 +++ b/.doc_gen/readmes/includes/tests.jinja2 @@ -2,9 +2,24 @@ âš  Running tests might result in charges to your AWS account. +{% if lang_config['name'] != 'C++' %} + To find instructions for running these tests, see the [README]({{lang_config['readme']}}#Tests) in the `{{lang_config['base_folder']}}` folder. +{% endif %} + +{% if lang_config['name'] == 'C++' and lang_config['sdk_ver'] == 1 %} + +```sh + cd + cmake -DBUILD_TESTS=ON + make + ctest +``` + +{% endif %} + {{ customs['tests'] -}} diff --git a/cpp/example_code/cognito/tests/cognito_gtests.cpp b/cpp/example_code/cognito/tests/cognito_gtests.cpp index 10e0140eb5a..1f627a8e032 100644 --- a/cpp/example_code/cognito/tests/cognito_gtests.cpp +++ b/cpp/example_code/cognito/tests/cognito_gtests.cpp @@ -84,6 +84,7 @@ AwsDocTest::MockHTTP::~MockHTTP() { void AwsDocTest::MockHTTP::addResponseWithBody(const std::string &body) { std::shared_ptr goodResponse = Aws::MakeShared( ALLOCATION_TAG, requestTmp); + goodResponse->AddHeader("Content-Type", "text/json"); goodResponse->SetResponseCode(Aws::Http::HttpResponseCode::OK); goodResponse->GetResponseBody() << body; mockHttpClient->AddResponseToReturn(goodResponse); diff --git a/cpp/example_code/rds/CMakeLists.txt b/cpp/example_code/rds/CMakeLists.txt new file mode 100644 index 00000000000..17f670e0d11 --- /dev/null +++ b/cpp/example_code/rds/CMakeLists.txt @@ -0,0 +1,87 @@ +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# SPDX-License-Identifier: Apache-2.0 + +# Set the minimum required version of CMake for this project. +cmake_minimum_required(VERSION 3.11) + +set(SERVICE_NAME rds) +set(SERVICE_COMPONENTS rds) + +# Set this project's name. +project("${SERVICE_NAME}-examples") + +#Set the location of where Windows can find the installed libraries of the SDK. +if(MSVC) + string(REPLACE ";" "/aws-cpp-sdk-all;" SYSTEM_MODULE_PATH "${CMAKE_SYSTEM_PREFIX_PATH}/aws-cpp-sdk-all") + list(APPEND CMAKE_PREFIX_PATH ${SYSTEM_MODULE_PATH}) +endif() + +# Set the C++ standard to use to build this target. +set(CMAKE_CXX_STANDARD 11) + +# Enable CTest for testing these code examples. +if(BUILD_TESTS) + include(CTest) +endif() + +# Build shared libraries by default. +if(NOT DEFINED BUILD_SHARED_LIBS) + set(BUILD_SHARED_LIBS ON) +endif() + +# Find the AWS SDK for C++ package. +find_package(AWSSDK REQUIRED COMPONENTS ${SERVICE_COMPONENTS}) + +# If the compiler is some version of Microsoft Visual C++, or another compiler simulating C++, +# and building as shared libraries, then dynamically link to those shared libraries. +if(MSVC AND BUILD_SHARED_LIBS) + add_definitions(-DUSE_IMPORT_EXPORT) + # Copy relevant AWS SDK for C++ libraries into the current binary directory for running and debugging. + + set(CMAKE_BUILD_TYPE Debug) # Explicitly setting CMAKE_BUILD_TYPE is necessary in Windows to copy DLLs. + + list(APPEND SERVICE_LIST ${SERVICE_COMPONENTS}) + + AWSSDK_CPY_DYN_LIBS(SERVICE_LIST "" ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}) +endif() + +# AWSDOC_SOURCE can be defined in the command line to limit the files in a build. For example, +# you can limit files to one action. +if(NOT DEFINED AWSDOC_SOURCE) + file(GLOB AWSDOC_SOURCE + "*.cpp" + ) +endif() + +# Check whether the target system is Windows, including Win64. +if(WIN32) + # Check whether the compiler is some version of Microsoft Visual C++, or another compiler simulating C++. + if(MSVC) + source_group("Source Files" FILES ${AWSDOC_SOURCE}) + endif(MSVC) +endif() + +foreach(file ${AWSDOC_SOURCE}) + get_filename_component(EXAMPLE ${file} NAME_WE) + + # Build the code example executables. + set(EXAMPLE_EXE run_${EXAMPLE}) + + add_executable(${EXAMPLE_EXE} ${file}) + + target_link_libraries(${EXAMPLE_EXE} ${AWSSDK_LINK_LIBRARIES} + ${AWSSDK_PLATFORM_DEPS}) + + target_include_directories(${EXAMPLE_EXE} + SYSTEM + PUBLIC + ${AWSSDK_INCLUDE_DIR}/aws # This is added to shorten an include path which does not pass checks. + ) + +endforeach() + + +if(BUILD_TESTS) + add_subdirectory(tests) +endif() + diff --git a/cpp/example_code/rds/README.md b/cpp/example_code/rds/README.md new file mode 100644 index 00000000000..b2d9798f65f --- /dev/null +++ b/cpp/example_code/rds/README.md @@ -0,0 +1,114 @@ + +# Amazon RDS code examples for the SDK for C++ + +## Overview + +Shows how to use the AWS SDK for C++ to work with Amazon Relational Database Service (Amazon RDS). + + + + +*Amazon RDS is a web service that makes it easier to set up, operate, and scale a relational database in the cloud.* + +## âš  Important + +* Running this code might result in charges to your AWS account. +* Running the tests might result in charges to your AWS account. +* We recommend that you grant your code least privilege. At most, grant only the minimum permissions required to perform the task. For more information, see [Grant least privilege](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege). +* This code is not tested in every AWS Region. For more information, see [AWS Regional Services](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services). + + + + +## Code examples +### Single actions + +Code excerpts that show you how to call individual service functions. + +* [Create a DB instance](getting_started_with_db_instances.cpp#L483) (`CreateDBInstance`) +* [Create a DB parameter group](getting_started_with_db_instances.cpp#L315) (`CreateDBParameterGroup`) +* [Create a snapshot of a DB instance](getting_started_with_db_instances.cpp#L561) (`CreateDBSnapshot`) +* [Delete a DB instance](getting_started_with_db_instances.cpp#L852) (`DeleteDBInstance`) +* [Delete a DB parameter group](getting_started_with_db_instances.cpp#L906) (`DeleteDBParameterGroup`) +* [Describe DB instances](getting_started_with_db_instances.cpp#L747) (`DescribeDBInstances`) +* [Describe DB parameter groups](getting_started_with_db_instances.cpp#L277) (`DescribeDBParameterGroups`) +* [Describe database engine versions](getting_started_with_db_instances.cpp#L713) (`DescribeDBEngineVersions`) +* [Describe options for DB instances](getting_started_with_db_instances.cpp#L786) (`DescribeOrderableDBInstanceOptions`) +* [Describe parameters in a DB parameter group](getting_started_with_db_instances.cpp#L656) (`DescribeDBParameters`) +* [Describe snapshots of DB instances](getting_started_with_db_instances.cpp#L599) (`DescribeDBSnapshots`) +* [Update parameters in a DB parameter group](getting_started_with_db_instances.cpp#L384) (`ModifyDBParameterGroup`) + +### Scenarios + +Code examples that show you how to accomplish a specific task by calling multiple +functions within the same service. + +* [Get started with DB instances](getting_started_with_db_instances.cpp) + +## Run the examples + +### Prerequisites + + + +Before using the code examples, first complete the installation and setup steps +for [Getting started](https://docs.aws.amazon.com/sdk-for-cpp/v1/developer-guide/getting-started.html) in the AWS SDK for +C++ Developer Guide. +This section covers how to get and build the SDK, and how to build your own code by using the SDK with a +sample Hello World-style application. + +Next, for information on code example structures and how to build and run the examples, see [Getting started with the AWS SDK for C++ code examples](https://docs.aws.amazon.com/sdk-for-cpp/v1/developer-guide/getting-started-code-examples.html). + + + + + +### Instructions + + + + + +#### Get started with DB instances + +This example shows you how to do the following: + +* Create a custom DB parameter group and set parameter values. +* Create a DB instance that's configured to use the parameter group. The DB instance also contains a database. +* Take a snapshot of the instance. +* Delete the instance and parameter group. + + + + +### Tests + +âš  Running tests might result in charges to your AWS account. + + + +```sh + cd + cmake -DBUILD_TESTS=ON + make + ctest +``` + + + + + +## Additional resources + +* [Amazon RDS User Guide](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Welcome.html) +* [Amazon RDS API Reference](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/Welcome.html) +* [SDK for C++ Amazon RDS reference](https://sdk.amazonaws.com/cpp/api/LATEST/aws-cpp-sdk-rds/html/annotated.html) + + + + +--- + +Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + +SPDX-License-Identifier: Apache-2.0 \ No newline at end of file diff --git a/cpp/example_code/rds/getting_started_with_db_instances.cpp b/cpp/example_code/rds/getting_started_with_db_instances.cpp new file mode 100644 index 00000000000..3a882e42c9f --- /dev/null +++ b/cpp/example_code/rds/getting_started_with_db_instances.cpp @@ -0,0 +1,1083 @@ +/* + Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + SPDX-License-Identifier: Apache-2.0 +*/ + +/** + * Before running this C++ code example, set up your development environment, including your credentials. + * + * For more information, see the following documentation topic: + * https://docs.aws.amazon.com/sdk-for-cpp/v1/developer-guide/getting-started.html + * + * For information on the structure of the code examples and how to build and run the examples, see + * https://docs.aws.amazon.com/sdk-for-cpp/v1/developer-guide/getting-started-code-examples.html. + * + * Purpose + * + * Demonstrates creating an Amazon Relational Database Service (Amazon RDS) + * instance and optionally creating a snapshot of the instance. + * + * 1. Check if the DB parameter group already exists. (DescribeDBParameterGroups) + * 2. Get available engine versions for the specified engine. (DescribeDBEngineVersions) + * 3. Create a DB parameter group. (CreateDBParameterGroup) + * 4. Get the parameters in the DB parameter group. (DescribeDBParameters) + * 5. Modify the auto increment parameters in the group. (ModifyDBParameterGroup) + * 6. Display the modified parameters in the group. (DescribeDBParameters) + * 7. Check if the DB instance already exists. (DescribeDBInstances) + * 8. Get a list of available engine versions. (DescribeDBEngineVersions) + * 9. Get a list of micro instance classes. (DescribeOrderableDBInstanceOptions) + * 10. Create an RDS database instance. (CreateDBInstance) + * 11. Wait for the DB instance to become available. (DescribeDBInstances) + * 12. Display the connection string that can be used to connect a 'mysql' shell to the database. + * 13. Create a snapshot of the DB instance. (CreateDBSnapshot) + * 14. Wait for the snapshot to become available. (DescribeDBSnapshots) + * 15. Delete the DB instance. (DeleteDBInstance) + * 16. Wait for the DB instance to be deleted. (DescribeDBInstances) + * 17. Delete the parameter group. (DeleteDBParameterGroup) + * + */ + + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "rds_samples.h" + +#include // Full path fails a validation check. +#include // Full path fails a validation check. + + +namespace AwsDoc { + namespace RDS { + const Aws::String DB_ENGINE("mysql"); + const int DB_ALLOCATED_STORAGE = 5; + const Aws::String DB_STORAGE_TYPE("standard"); + const Aws::String PARAMETER_GROUP_NAME("doc-example-parameter-group"); + const Aws::String DB_INSTANCE_IDENTIFIER("doc-example-instance"); + const Aws::String DB_NAME("docexampledb"); + const Aws::String AUTO_INCREMENT_PREFIX("auto_increment"); + const Aws::String NO_NAME_PREFIX; + const Aws::String NO_SOURCE; + const Aws::String NO_PARAMETER_GROUP_FAMILY; + + //! Routine which gets DB parameters using the 'DescribeDBParameters' api. + /*! + \sa getDBParameters() + \param parameterGroupName: The name of the parameter group. + \param namePrefix: Prefix string to filter results by parameter name. + \param source: A source such as 'user', ignored if empty. + \param parametersResult: Vector of 'Parameter' objects returned by the routine. + \param client: 'RDSClient' instance. + \return bool: Successful completion. + */ + bool getDBParameters(const Aws::String ¶meterGroupName, + const Aws::String &namePrefix, + const Aws::String &source, + Aws::Vector ¶metersResult, + const Aws::RDS::RDSClient &client); + + //! Routine which gets available DB engine versions for an engine name and + //! an optional parameter group family. + /*! + \sa getDBEngineVersions() + \param engineName: A DB engine name. + \param parameterGroupFamily: A parameter group family name, ignored if empty. + \param engineVersionsResult: Vector of 'DBEngineVersion' objects returned by the routine. + \param client: 'RDSClient' instance. + \return bool: Successful completion. + */ + bool getDBEngineVersions(const Aws::String &engineName, + const Aws::String ¶meterGroupFamily, + Aws::Vector &engineVersionsResult, + const Aws::RDS::RDSClient &client); + + //! Routine which gets a DB instance description. + /*! + \sa describeDBInstance() + \param dbInstanceIdentifier: A DB instance identifier. + \param instanceResult: The 'DBInstance' object containing the description. + \param client: 'RDSClient' instance. + \return bool: Successful completion. + */ + bool describeDBInstance(const Aws::String &dbInstanceIdentifier, + Aws::RDS::Model::DBInstance &instanceResult, + const Aws::RDS::RDSClient &client); + + //! Routine which gets available 'micro' DB instance classes, displays the list + //! to the user, and returns the user selection. + /*! + \sa chooseMicroDBInstanceClass() + \param engineName: The DB engine name. + \param engineVersion: The DB engine version. + \param dbInstanceClass: String for DB instance class chosen by the user. + \param client: 'RDSClient' instance. + \return bool: Successful completion. + */ + bool chooseMicroDBInstanceClass(const Aws::String &engine, + const Aws::String &engineVersion, + Aws::String &dbInstanceClass, + const Aws::RDS::RDSClient &client); + + //! Routine which prints a command and instructions for connecting to the + //! DB instance. + /*! + \sa displayConnection() + \param dbInstance: A 'DBInstance' object. + \return void: + */ + void displayConnection(const Aws::RDS::Model::DBInstance &dbInstance); + + //! Routine which deletes resources created by the scenario. + /*! + \sa cleanUpResources() + \param parameterGroupName: A parameter group name, this may be empty. + \param dbInstanceIdentifier: A DB instance identifier, this may be empty. + \param client: 'RDSClient' instance. + \return bool: Successful completion. + */ + bool cleanUpResources(const Aws::String ¶meterGroupName, + const Aws::String &dbInstanceIdentifier, + const Aws::RDS::RDSClient &client); + + //! Test routine passed as argument to askQuestion routine. + /*! + \sa testForEmptyString() + \param string: A string to test. + \return bool: True if empty. + */ + bool testForEmptyString(const Aws::String &string); + + //! Command line prompt/response utility function. + /*! + \\sa askQuestion() + \param string: A question prompt. + \param test: Test function for response. + \return Aws::String: User's response. + */ + Aws::String askQuestion(const Aws::String &string, + const std::function &test = testForEmptyString); + + //! Command line prompt/response for yes/no question. + /*! + \\sa askYesNoQuestion() + \param string: A question prompt expecting a 'y' or 'n' response. + \return bool: True if yes. + */ + bool askYesNoQuestion(const Aws::String &string); + + //! Command line prompt/response utility function for an int result confined to + //! a range. + /*! + \sa askQuestionForIntRange() + \param string: A question prompt. + \param low: Low inclusive. + \param high: High inclusive. + \return int: User's response. + */ + int askQuestionForIntRange(const Aws::String &string, int low, + int high); + + //! Routine which converts a string of ints to a vector of ints. + /*! + \sa splitToInts() + \param string: A string of ints. + \param delimiter: Delimiter between the ints. + \return vector: Vector of ints. + */ + std::vector splitToInts(const Aws::String &string, + char delimiter) { + std::vector result; + std::stringstream stringStream(string); + Aws::String split; + while (std::getline(stringStream, split, delimiter)) { + try { + result.push_back(std::stoi(split)); + } + catch (const std::exception &e) { + std::cerr << "askQuestionForIntRange error " << e.what() + << std::endl; + } + + } + + return result; + } + + //! Utility routine to print a line of asterisks to standard out. + /*! + \\sa printAsterisksLine() + \return void: + */ + inline void printAsterisksLine() { + std::cout << std::setfill('*') << std::setw(88) << " " + << std::endl; + } + } // RDS +} // AwsDoc + +// snippet-start:[cpp.example_code.rds.get_started_instances] +//! Routine which creates an Amazon RDS instance and demonstrates several operations +//! on that instance. +/*! + \sa gettingStartedWithDBInstances() + \param clientConfiguration: AWS client configuration. + \return bool: Successful completion. + */ +bool AwsDoc::RDS::gettingStartedWithDBInstances( + const Aws::Client::ClientConfiguration &clientConfig) { + // snippet-start:[cpp.example_code.rds.client] + Aws::RDS::RDSClient client(clientConfig); + // snippet-end:[cpp.example_code.rds.client] + + printAsterisksLine(); + std::cout << "Welcome to the Amazon Relational Database Service (Amazon RDS)" + << std::endl; + std::cout << "get started with DB instances demo." << std::endl; + printAsterisksLine(); + + std::cout << "Checking for an existing DB parameter group named '" << + PARAMETER_GROUP_NAME << "'." << std::endl; + Aws::String dbParameterGroupFamily("Undefined"); + bool parameterGroupFound = true; + { + // 1. Check if the DB parameter group already exists. + // snippet-start:[cpp.example_code.rds.DescribeDBParameterGroups1] + Aws::RDS::Model::DescribeDBParameterGroupsRequest request; + request.SetDBParameterGroupName(PARAMETER_GROUP_NAME); + + Aws::RDS::Model::DescribeDBParameterGroupsOutcome outcome = + client.DescribeDBParameterGroups(request); + + if (outcome.IsSuccess()) { + std::cout << "DB parameter group named '" << + PARAMETER_GROUP_NAME << "' already exists." << std::endl; + dbParameterGroupFamily = outcome.GetResult().GetDBParameterGroups()[0].GetDBParameterGroupFamily(); + } + // snippet-end:[cpp.example_code.rds.DescribeDBParameterGroups1] + else if (outcome.GetError().GetErrorType() == + Aws::RDS::RDSErrors::D_B_PARAMETER_GROUP_NOT_FOUND_FAULT) { + std::cout << "DB parameter group named '" << + PARAMETER_GROUP_NAME << "' does not exist." << std::endl; + parameterGroupFound = false; + } + // snippet-start:[cpp.example_code.rds.DescribeDBParameterGroups2] + else { + std::cerr << "Error with RDS::DescribeDBParameterGroups. " + << outcome.GetError().GetMessage() + << std::endl; + return false; + } + // snippet-end:[cpp.example_code.rds.DescribeDBParameterGroups2] + } + + if (!parameterGroupFound) { + Aws::Vector engineVersions; + + // 2. Get available engine versions for the specified engine. + if (!getDBEngineVersions(DB_ENGINE, NO_PARAMETER_GROUP_FAMILY, + engineVersions, client)) { + return false; + } + + std::cout << "Getting available database engine versions for " << DB_ENGINE + << "." + << std::endl; + std::vector families; + for (const Aws::RDS::Model::DBEngineVersion &version: engineVersions) { + Aws::String family = version.GetDBParameterGroupFamily(); + if (std::find(families.begin(), families.end(), family) == + families.end()) { + families.push_back(family); + std::cout << " " << families.size() << ": " << family << std::endl; + } + } + + int choice = askQuestionForIntRange("Which family do you want to use? ", 1, + static_cast(families.size())); + dbParameterGroupFamily = families[choice - 1]; + } + if (!parameterGroupFound) { + // 3. Create a DB parameter group. + // snippet-start:[cpp.example_code.rds.CreateDBParameterGroup] + Aws::RDS::Model::CreateDBParameterGroupRequest request; + request.SetDBParameterGroupName(PARAMETER_GROUP_NAME); + request.SetDBParameterGroupFamily(dbParameterGroupFamily); + request.SetDescription("Example parameter group."); + + Aws::RDS::Model::CreateDBParameterGroupOutcome outcome = + client.CreateDBParameterGroup(request); + + if (outcome.IsSuccess()) { + std::cout << "The DB parameter group was successfully created." + << std::endl; + } + else { + std::cerr << "Error with RDS::CreateDBParameterGroup. " + << outcome.GetError().GetMessage() + << std::endl; + return false; + } + // snippet-end:[cpp.example_code.rds.CreateDBParameterGroup] + } + + printAsterisksLine(); + std::cout << "Let's set some parameter values in your parameter group." + << std::endl; + + Aws::String marker; + Aws::Vector autoIncrementParameters; + // 4. Get the parameters in the DB parameter group. + if (!getDBParameters(PARAMETER_GROUP_NAME, AUTO_INCREMENT_PREFIX, NO_SOURCE, + autoIncrementParameters, + client)) { + cleanUpResources(PARAMETER_GROUP_NAME, "", client); + return false; + } + + Aws::Vector updateParameters; + + for (Aws::RDS::Model::Parameter &autoIncParameter: autoIncrementParameters) { + if (autoIncParameter.GetIsModifiable() && + (autoIncParameter.GetDataType() == "integer")) { + std::cout << "The " << autoIncParameter.GetParameterName() + << " is described as: " << + autoIncParameter.GetDescription() << "." << std::endl; + if (autoIncParameter.ParameterValueHasBeenSet()) { + std::cout << "The current value is " + << autoIncParameter.GetParameterValue() + << "." << std::endl; + } + std::vector splitValues = splitToInts( + autoIncParameter.GetAllowedValues(), '-'); + if (splitValues.size() == 2) { + int newValue = askQuestionForIntRange( + Aws::String("Enter a new value in the range ") + + autoIncParameter.GetAllowedValues() + ": ", + splitValues[0], splitValues[1]); + autoIncParameter.SetParameterValue(std::to_string(newValue)); + updateParameters.push_back(autoIncParameter); + + } + else { + std::cerr << "Error parsing " << autoIncParameter.GetAllowedValues() + << std::endl; + } + } + } + + { + // 5. Modify the auto increment parameters in the group. + // snippet-start:[cpp.example_code.rds.ModifyDBParameterGroup] + Aws::RDS::Model::ModifyDBParameterGroupRequest request; + request.SetDBParameterGroupName(PARAMETER_GROUP_NAME); + request.SetParameters(updateParameters); + + Aws::RDS::Model::ModifyDBParameterGroupOutcome outcome = + client.ModifyDBParameterGroup(request); + + if (outcome.IsSuccess()) { + std::cout << "The DB parameter group was successfully modified." + << std::endl; + } + else { + std::cerr << "Error with RDS::ModifyDBParameterGroup. " + << outcome.GetError().GetMessage() + << std::endl; + } + // snippet-end:[cpp.example_code.rds.ModifyDBParameterGroup] + } + + std::cout + << "You can get a list of parameters you've set by specifying a source of 'user'." + << std::endl; + + Aws::Vector userParameters; + // 6. Display the modified parameters in the group. + if (!getDBParameters(PARAMETER_GROUP_NAME, NO_NAME_PREFIX, "user", userParameters, + client)) { + cleanUpResources(PARAMETER_GROUP_NAME, "", client); + return false; + } + + for (const auto &userParameter: userParameters) { + std::cout << " " << userParameter.GetParameterName() << ", " << + userParameter.GetDescription() << ", parameter value - " + << userParameter.GetParameterValue() << std::endl; + } + + printAsterisksLine(); + std::cout << "Checking for an existing DB instance." << std::endl; + + Aws::RDS::Model::DBInstance dbInstance; + // 7. Check if the DB instance already exists. + if (!describeDBInstance(DB_INSTANCE_IDENTIFIER, dbInstance, client)) { + cleanUpResources(PARAMETER_GROUP_NAME, "", client); + return false; + } + + if (dbInstance.DbInstancePortHasBeenSet()) { + std::cout << "The DB instance already exists." << std::endl; + } + else { + std::cout << "Let's create a DB instance." << std::endl; + const Aws::String administratorName = askQuestion( + "Enter an administrator username for the database: "); + const Aws::String administratorPassword = askQuestion( + "Enter a password for the administrator (at least 8 characters): "); + Aws::Vector engineVersions; + + // 8. Get a list of available engine versions. + if (!getDBEngineVersions(DB_ENGINE, dbParameterGroupFamily, engineVersions, + client)) { + cleanUpResources(PARAMETER_GROUP_NAME, "", client); + return false; + } + + std::cout << "The available engines for your parameter group are:" << std::endl; + + int index = 1; + for (const Aws::RDS::Model::DBEngineVersion &engineVersion: engineVersions) { + std::cout << " " << index << ": " << engineVersion.GetEngineVersion() + << std::endl; + ++index; + } + int choice = askQuestionForIntRange("Which engine do you want to use? ", 1, + static_cast(engineVersions.size())); + const Aws::RDS::Model::DBEngineVersion engineVersion = engineVersions[choice - + 1]; + + Aws::String dbInstanceClass; + // 9. Get a list of micro instance classes. + if (!chooseMicroDBInstanceClass(engineVersion.GetEngine(), + engineVersion.GetEngineVersion(), + dbInstanceClass, + client)) { + cleanUpResources(PARAMETER_GROUP_NAME, "", client); + return false; + } + + std::cout << "Creating a DB instance named '" << DB_INSTANCE_IDENTIFIER + << "' and database '" << DB_NAME << "'.\n" + << "The DB instance is configured to use your custom parameter group '" + << PARAMETER_GROUP_NAME << "',\n" + << "selected engine version " << engineVersion.GetEngineVersion() + << ",\n" + << "selected DB instance class '" << dbInstanceClass << "'," + << " and " << DB_ALLOCATED_STORAGE << " GiB of " << DB_STORAGE_TYPE + << " storage.\nThis typically takes several minutes." << std::endl; + + // snippet-start:[cpp.example_code.rds.CreateDBInstance] + Aws::RDS::Model::CreateDBInstanceRequest request; + request.SetDBName(DB_NAME); + request.SetDBInstanceIdentifier(DB_INSTANCE_IDENTIFIER); + request.SetDBParameterGroupName(PARAMETER_GROUP_NAME); + request.SetEngine(engineVersion.GetEngine()); + request.SetEngineVersion(engineVersion.GetEngineVersion()); + request.SetDBInstanceClass(dbInstanceClass); + request.SetStorageType(DB_STORAGE_TYPE); + request.SetAllocatedStorage(DB_ALLOCATED_STORAGE); + request.SetMasterUsername(administratorName); + request.SetMasterUserPassword(administratorPassword); + + Aws::RDS::Model::CreateDBInstanceOutcome outcome = + client.CreateDBInstance(request); + + if (outcome.IsSuccess()) { + std::cout << "The DB instance creation has started." + << std::endl; + } + else { + std::cerr << "Error with RDS::CreateDBInstance. " + << outcome.GetError().GetMessage() + << std::endl; + cleanUpResources(PARAMETER_GROUP_NAME, "", client); + return false; + } + // snippet-end:[cpp.example_code.rds.CreateDBInstance] + } + + std::cout << "Waiting for the DB instance to become available." << std::endl; + + int counter = 0; + // 11. Wait for the DB instance to become available. + do { + std::this_thread::sleep_for(std::chrono::seconds(1)); + ++counter; + if (counter > 900) { + std::cerr << "Wait for instance to become available timed out ofter " + << counter + << " seconds." << std::endl; + cleanUpResources(PARAMETER_GROUP_NAME, DB_INSTANCE_IDENTIFIER, client); + return false; + } + + dbInstance = Aws::RDS::Model::DBInstance(); + if (!describeDBInstance(DB_INSTANCE_IDENTIFIER, dbInstance, client)) { + cleanUpResources(PARAMETER_GROUP_NAME, DB_INSTANCE_IDENTIFIER, client); + return false; + } + + if ((counter % 20) == 0) { + std::cout << "Current DB instance status is '" + << dbInstance.GetDBInstanceStatus() + << "' after " << counter << " seconds." << std::endl; + } + } while (dbInstance.GetDBInstanceStatus() != "available"); + + if (dbInstance.GetDBInstanceStatus() == "available") { + std::cout << "The DB instance has been created." << std::endl; + } + + printAsterisksLine(); + + // 12. Display the connection string that can be used to connect a 'mysql' shell to the database. + displayConnection(dbInstance); + + printAsterisksLine(); + + if (askYesNoQuestion( + "Do you want to create a snapshot of your DB instance (y/n)? ")) { + Aws::String snapshotID(DB_INSTANCE_IDENTIFIER + "-" + + Aws::String(Aws::Utils::UUID::RandomUUID())); + { + std::cout << "Creating a snapshot named " << snapshotID << "." << std::endl; + std::cout << "This typically takes a few minutes." << std::endl; + + // 13. Create a snapshot of the DB instance. + // snippet-start:[cpp.example_code.rds.CreateDBSnapshot] + Aws::RDS::Model::CreateDBSnapshotRequest request; + request.SetDBInstanceIdentifier(DB_INSTANCE_IDENTIFIER); + request.SetDBSnapshotIdentifier(snapshotID); + + Aws::RDS::Model::CreateDBSnapshotOutcome outcome = + client.CreateDBSnapshot(request); + + if (outcome.IsSuccess()) { + std::cout << "Snapshot creation has started." + << std::endl; + } + else { + std::cerr << "Error with RDS::CreateDBSnapshot. " + << outcome.GetError().GetMessage() + << std::endl; + cleanUpResources(PARAMETER_GROUP_NAME, DB_INSTANCE_IDENTIFIER, client); + return false; + } + // snippet-end:[cpp.example_code.rds.CreateDBSnapshot] + } + + std::cout << "Waiting for snapshot to become available." << std::endl; + + Aws::RDS::Model::DBSnapshot snapshot; + counter = 0; + do { + std::this_thread::sleep_for(std::chrono::seconds(1)); + ++counter; + if (counter > 600) { + std::cerr << "Wait for snapshot to be available timed out ofter " + << counter + << " seconds." << std::endl; + cleanUpResources(PARAMETER_GROUP_NAME, DB_INSTANCE_IDENTIFIER, client); + return false; + } + + // 14. Wait for the snapshot to become available. + // snippet-start:[cpp.example_code.rds.DescribeDBSnapshots] + Aws::RDS::Model::DescribeDBSnapshotsRequest request; + request.SetDBSnapshotIdentifier(snapshotID); + + Aws::RDS::Model::DescribeDBSnapshotsOutcome outcome = + client.DescribeDBSnapshots(request); + + if (outcome.IsSuccess()) { + snapshot = outcome.GetResult().GetDBSnapshots()[0]; + } + else { + std::cerr << "Error with RDS::DescribeDBSnapshots. " + << outcome.GetError().GetMessage() + << std::endl; + cleanUpResources(PARAMETER_GROUP_NAME, DB_INSTANCE_IDENTIFIER, client); + return false; + } + // snippet-end:[cpp.example_code.rds.DescribeDBSnapshots] + + if ((counter % 20) == 0) { + std::cout << "Current snapshot status is '" + << snapshot.GetStatus() + << "' after " << counter << " seconds." << std::endl; + } + } while (snapshot.GetStatus() != "available"); + + if (snapshot.GetStatus() != "available") { + std::cout << "A snapshot has been created." << std::endl; + } + } + + printAsterisksLine(); + + bool result = true; + if (askYesNoQuestion( + "Do you want to delete the DB instance and parameter group (y/n)? ")) { + result = cleanUpResources(PARAMETER_GROUP_NAME, DB_INSTANCE_IDENTIFIER, client); + } + + return result; +} + +// snippet-start:[cpp.example_code.rds.DescribeDBParameters] + +//! Routine which gets DB parameters using the 'DescribeDBParameters' api. +/*! + \sa getDBParameters() + \param parameterGroupName: The name of the parameter group. + \param namePrefix: Prefix string to filter results by parameter name. + \param source: A source such as 'user', ignored if empty. + \param parametersResult: Vector of 'Parameter' objects returned by the routine. + \param client: 'RDSClient' instance. + \return bool: Successful completion. + */ +bool AwsDoc::RDS::getDBParameters(const Aws::String ¶meterGroupName, + const Aws::String &namePrefix, + const Aws::String &source, + Aws::Vector ¶metersResult, + const Aws::RDS::RDSClient &client) { + Aws::String marker; + do { + Aws::RDS::Model::DescribeDBParametersRequest request; + request.SetDBParameterGroupName(PARAMETER_GROUP_NAME); + if (!marker.empty()) { + request.SetMarker(marker); + } + if (!source.empty()) { + request.SetSource(source); + } + + Aws::RDS::Model::DescribeDBParametersOutcome outcome = + client.DescribeDBParameters(request); + + if (outcome.IsSuccess()) { + const Aws::Vector ¶meters = + outcome.GetResult().GetParameters(); + for (const Aws::RDS::Model::Parameter ¶meter: parameters) { + if (!namePrefix.empty()) { + if (parameter.GetParameterName().find(AUTO_INCREMENT_PREFIX) == 0) { + parametersResult.push_back(parameter); + } + } + else { + parametersResult.push_back(parameter); + } + } + + marker = outcome.GetResult().GetMarker(); + } + else { + std::cerr << "Error with RDS::DescribeDBParameters. " + << outcome.GetError().GetMessage() + << std::endl; + return false; + } + } while (!marker.empty()); + + return true; +} +// snippet-end:[cpp.example_code.rds.DescribeDBParameters] + +// snippet-start:[cpp.example_code.rds.DescribeDBEngineVersions] + +//! Routine which gets available DB engine versions for an engine name and +//! an optional parameter group family. +/*! + \sa getDBEngineVersions() + \param engineName: A DB engine name. + \param parameterGroupFamily: A parameter group family name, ignored if empty. + \param engineVersionsResult: Vector of 'DBEngineVersion' objects returned by the routine. + \param client: 'RDSClient' instance. + \return bool: Successful completion. + */ +bool AwsDoc::RDS::getDBEngineVersions(const Aws::String &engineName, + const Aws::String ¶meterGroupFamily, + Aws::Vector &engineVersionsResult, + const Aws::RDS::RDSClient &client) { + Aws::RDS::Model::DescribeDBEngineVersionsRequest request; + request.SetEngine(engineName); + if (!parameterGroupFamily.empty()) { + request.SetDBParameterGroupFamily(parameterGroupFamily); + } + + Aws::RDS::Model::DescribeDBEngineVersionsOutcome outcome = + client.DescribeDBEngineVersions(request); + + if (outcome.IsSuccess()) { + engineVersionsResult = outcome.GetResult().GetDBEngineVersions(); + } + else { + std::cerr << "Error with RDS::DescribeDBEngineVersionsRequest. " + << outcome.GetError().GetMessage() + << std::endl; + } + + return outcome.IsSuccess(); +} +// snippet-end:[cpp.example_code.rds.DescribeDBEngineVersions] + +// snippet-start:[cpp.example_code.rds.DescribeDBInstances] + +//! Routine which gets a DB instance description. +/*! + \sa describeDBInstance() + \param dbInstanceIdentifier: A DB instance identifier. + \param instanceResult: The 'DBInstance' object containing the description. + \param client: 'RDSClient' instance. + \return bool: Successful completion. + */ +bool AwsDoc::RDS::describeDBInstance(const Aws::String &dbInstanceIdentifier, + Aws::RDS::Model::DBInstance &instanceResult, + const Aws::RDS::RDSClient &client) { + Aws::RDS::Model::DescribeDBInstancesRequest request; + request.SetDBInstanceIdentifier(dbInstanceIdentifier); + + Aws::RDS::Model::DescribeDBInstancesOutcome outcome = + client.DescribeDBInstances(request); + + bool result = true; + if (outcome.IsSuccess()) { + instanceResult = outcome.GetResult().GetDBInstances()[0]; + } + // This example does not log an error if the DB instance does not exist. + // Instead, it returns false. + else if (outcome.GetError().GetErrorType() != + Aws::RDS::RDSErrors::D_B_INSTANCE_NOT_FOUND_FAULT) { + result = false; + std::cerr << "Error with RDS::GetDBInstances. " + << outcome.GetError().GetMessage() + << std::endl; + } + + return result; +} +// snippet-end:[cpp.example_code.rds.DescribeDBInstances] + +// snippet-start:[cpp.example_code.rds.DescribeOrderableDBInstanceOptions] + +//! Routine which gets available 'micro' DB instance classes, displays the list +//! to the user, and returns the user selection. +/*! + \sa chooseMicroDBInstanceClass() + \param engineName: The DB engine name. + \param engineVersion: The DB engine version. + \param dbInstanceClass: String for DB instance class chosen by the user. + \param client: 'RDSClient' instance. + \return bool: Successful completion. + */ +bool AwsDoc::RDS::chooseMicroDBInstanceClass(const Aws::String &engine, + const Aws::String &engineVersion, + Aws::String &dbInstanceClass, + const Aws::RDS::RDSClient &client) { + std::vector instanceClasses; + Aws::String marker; + do { + Aws::RDS::Model::DescribeOrderableDBInstanceOptionsRequest request; + request.SetEngine(engine); + request.SetEngineVersion(engineVersion); + if (!marker.empty()) { + request.SetMarker(marker); + } + + Aws::RDS::Model::DescribeOrderableDBInstanceOptionsOutcome outcome = + client.DescribeOrderableDBInstanceOptions(request); + + if (outcome.IsSuccess()) { + const Aws::Vector &options = + outcome.GetResult().GetOrderableDBInstanceOptions(); + for (const Aws::RDS::Model::OrderableDBInstanceOption &option: options) { + const Aws::String &instanceClass = option.GetDBInstanceClass(); + if (instanceClass.find("micro") != std::string::npos) { + if (std::find(instanceClasses.begin(), instanceClasses.end(), + instanceClass) == + instanceClasses.end()) { + instanceClasses.push_back(instanceClass); + } + } + } + marker = outcome.GetResult().GetMarker(); + } + else { + std::cerr << "Error with RDS::DescribeOrderableDBInstanceOptions. " + << outcome.GetError().GetMessage() + << std::endl; + return false; + } + } while (!marker.empty()); + + std::cout << "The available micro DB instance classes for your database engine are:" + << std::endl; + for (int i = 0; i < instanceClasses.size(); ++i) { + std::cout << " " << i + 1 << ": " << instanceClasses[i] << std::endl; + } + + int choice = askQuestionForIntRange( + "Which micro DB instance class do you want to use? ", + 1, static_cast(instanceClasses.size())); + dbInstanceClass = instanceClasses[choice - 1]; + return true; +} +// snippet-end:[cpp.example_code.rds.DescribeOrderableDBInstanceOptions] + +//! Routine which deletes resources created by the scenario. +/*! +\sa cleanUpResources() +\param parameterGroupName: A parameter group name, this may be empty. +\param dbInstanceIdentifier: A DB instance identifier, this may be empty. +\param client: 'RDSClient' instance. +\return bool: Successful completion. +*/ +bool AwsDoc::RDS::cleanUpResources(const Aws::String ¶meterGroupName, + const Aws::String &dbInstanceIdentifier, + const Aws::RDS::RDSClient &client) { + bool result = true; + if (!dbInstanceIdentifier.empty()) { + { + // 15. Delete the DB instance. + // snippet-start:[cpp.example_code.rds.DeleteDBInstance] + Aws::RDS::Model::DeleteDBInstanceRequest request; + request.SetDBInstanceIdentifier(dbInstanceIdentifier); + request.SetSkipFinalSnapshot(true); + request.SetDeleteAutomatedBackups(true); + + Aws::RDS::Model::DeleteDBInstanceOutcome outcome = + client.DeleteDBInstance(request); + + if (outcome.IsSuccess()) { + std::cout << "DB instance deletion has started." + << std::endl; + } + else { + std::cerr << "Error with RDS::DeleteDBInstance. " + << outcome.GetError().GetMessage() + << std::endl; + result = false; + } + // snippet-end:[cpp.example_code.rds.DeleteDBInstance] + } + + std::cout + << "Waiting for DB instance to delete before deleting the parameter group." + << std::endl; + std::cout << "This may take a while." << std::endl; + + int counter = 0; + Aws::RDS::Model::DBInstance dbInstance; + do { + std::this_thread::sleep_for(std::chrono::seconds(1)); + ++counter; + if (counter > 800) { + std::cerr << "Wait for instance to delete timed out ofter " << counter + << " seconds." << std::endl; + return false; + } + + dbInstance = Aws::RDS::Model::DBInstance(); + // 16. Wait for the DB instance to be deleted. + if (!describeDBInstance(dbInstanceIdentifier, dbInstance, client)) { + return false; + } + + if (dbInstance.DBInstanceIdentifierHasBeenSet() && (counter % 20) == 0) { + std::cout << "Current DB instance status is '" + << dbInstance.GetDBInstanceStatus() + << "' after " << counter << " seconds." << std::endl; + } + } while (dbInstance.DBInstanceIdentifierHasBeenSet()); + } + + if (!parameterGroupName.empty()) { + // 17. Delete the parameter group. + // snippet-start:[cpp.example_code.rds.DeleteDBParameterGroup] + Aws::RDS::Model::DeleteDBParameterGroupRequest request; + request.SetDBParameterGroupName(parameterGroupName); + + Aws::RDS::Model::DeleteDBParameterGroupOutcome outcome = + client.DeleteDBParameterGroup(request); + + if (outcome.IsSuccess()) { + std::cout << "The DB parameter group was successfully deleted." + << std::endl; + } + else { + std::cerr << "Error with RDS::DeleteDBParameterGroup. " + << outcome.GetError().GetMessage() + << std::endl; + result = false; + } + // snippet-end:[cpp.example_code.rds.DeleteDBParameterGroup] + } + + return result; +} +// snippet-end:[cpp.example_code.rds.get_started_instances] + + +#ifndef TESTING_BUILD + +int main(int argc, const char *argv[]) { + + (void) argc; // Suppress unused warnings. + (void) argv; // Suppress unused warnings. + + Aws::SDKOptions options; + InitAPI(options); + + { + // snippet-start:[cpp.example_code.rds.client_configuration] + Aws::Client::ClientConfiguration clientConfig; + // Optional: Set to the AWS Region (overrides config file). + // clientConfig.region = "us-east-1"; + // snippet-end:[cpp.example_code.rds.client_configuration] + AwsDoc::RDS::gettingStartedWithDBInstances(clientConfig); + } + + ShutdownAPI(options); + + return 0; +} + +#endif // TESTING_BUILD + + +//! Routine which prints a command and instructions for connecting to the +//! DB instance. +/*! +\sa displayConnection() +\param dbInstance: A 'DBInstance' object. +\return void: +*/ +void AwsDoc::RDS::displayConnection(const Aws::RDS::Model::DBInstance &dbInstance) { + std::cout << R"(You can now connect to your database using your favorite MySql client. +One way to connect is by using the 'mysql' shell on an Amazon EC2 instance +that is running in the same VPC as your DB instance. Pass the endpoint, +port, and administrator user name to 'mysql' and enter your password +when prompted:)" << std::endl; + + std::cout << " mysql -h " << dbInstance.GetEndpoint().GetAddress() << " -P " + << dbInstance.GetEndpoint().GetPort() << " - u " + << dbInstance.GetMasterUsername() + << " -p" << std::endl; + + std::cout << "For more information, see the User Guide for Amazon RDS:\n" + << " https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_GettingStarted.CreatingConnecting.MySQL.html#CHAP_GettingStarted.Connecting.MySQL" + << std::endl; +} + +//! Test routine passed as argument to askQuestion routine. +/*! + \sa testForEmptyString() + \param string: A string to test. + \return bool: True if empty. + */ +bool AwsDoc::RDS::testForEmptyString(const Aws::String &string) { + if (string.empty()) { + std::cout << "Enter some text." << std::endl; + return false; + } + + return true; +} + +//! Command line prompt/response utility function. +/*! + \\sa askQuestion() + \param string: A question prompt. + \param test: Test function for response. + \return Aws::String: User's response. + */ +Aws::String AwsDoc::RDS::askQuestion(const Aws::String &string, + const std::function &test) { + Aws::String result; + do { + std::cout << string; + std::getline(std::cin, result); + } while (!test(result)); + + return result; +} + +//! Command line prompt/response for yes/no question. +/*! + \\sa askYesNoQuestion() + \param string: A question prompt expecting a 'y' or 'n' response. + \return bool: True if yes. + */ +bool AwsDoc::RDS::askYesNoQuestion(const Aws::String &string) { + Aws::String resultString = askQuestion(string, []( + const Aws::String &string1) -> bool { + bool result = false; + if (string1.length() == 1) { + int answer = std::tolower(string1[0]); + result = (answer == 'y') || (answer == 'n'); + } + + if (!result) { + std::cout << "Answer 'y' or 'n'." << std::endl; + } + + return result; + }); + + return std::tolower(resultString[0]) == 'y'; +} + +//! Command line prompt/response utility function for an int result confined to +//! a range. +/*! + \sa askQuestionForIntRange() + \param string: A question prompt. + \param low: Low inclusive. + \param high: High inclusive. + \return int: User's response. + */ +int AwsDoc::RDS::askQuestionForIntRange(const Aws::String &string, int low, + int high) { + Aws::String resultString = askQuestion(string, [low, high]( + const Aws::String &string1) -> bool { + try { + int number = std::stoi(string1); + bool result = number >= low && number <= high; + if (!result) { + std::cout << "\nThe number is out of range." << std::endl; + } + return result; + } + catch (const std::invalid_argument &) { + std::cout << "\nNot a valid number." << std::endl; + return false; + } + }); + + int result = 0; + try { + result = std::stoi(resultString); + } + catch (const std::invalid_argument &) { + std::cerr << "askQuestionForFloatRange string not an int " + << resultString << std::endl; + } + + return result; +} + diff --git a/cpp/example_code/rds/rds_samples.h b/cpp/example_code/rds/rds_samples.h new file mode 100644 index 00000000000..9e118e25355 --- /dev/null +++ b/cpp/example_code/rds/rds_samples.h @@ -0,0 +1,25 @@ +/* + Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + SPDX-License-Identifier: Apache-2.0 +*/ + +#pragma once +#ifndef RDS_EXAMPLES_RDS_SAMPLES_H +#define RDS_EXAMPLES_RDS_SAMPLES_H + +namespace AwsDoc { + namespace RDS { + //! Routine which creates an Amazon Relational Database Service (Amazon RDS) + //! instance and demonstrates several operations on that instance. + /*! + \sa gettingStartedWithDBInstances() + \param clientConfiguration: AWS client configuration. + \return bool: Successful completion. + */ + bool gettingStartedWithDBInstances( + const Aws::Client::ClientConfiguration &clientConfig); + + } // RDS +} // AwsDoc + +#endif //RDS_EXAMPLES_RDS_SAMPLES_H diff --git a/cpp/example_code/rds/tests/CMakeLists.txt b/cpp/example_code/rds/tests/CMakeLists.txt new file mode 100644 index 00000000000..34679107000 --- /dev/null +++ b/cpp/example_code/rds/tests/CMakeLists.txt @@ -0,0 +1,138 @@ +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# SPDX-License-Identifier: Apache-2.0 + +# Set the minimum required version of CMake for this project. +cmake_minimum_required(VERSION 3.14) + +set(EXAMPLE_SERVICE_NAME "rds") +set(CURRENT_TARGET "${EXAMPLE_SERVICE_NAME}_gtest") +set(CURRENT_TARGET_AWS_DEPENDENCIES rds) + +# Set this project's name. +project("${EXAMPLE_SERVICE_NAME}-examples-gtests" ) + +# Set the C++ standard to use to build this target. +set(CMAKE_CXX_STANDARD 14) + +include(FetchContent) +FetchContent_Declare( + googletest + GIT_REPOSITORY https://github.com/google/googletest.git + GIT_TAG release-1.12.1 +) +# For Windows: Prevent overriding the parent project's compiler/linker settings. +set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) +FetchContent_MakeAvailable(googletest) + +# Set the location for Windows to find the installed libraries of the SDK. +if(MSVC) + string(REPLACE ";" "/aws-cpp-sdk-all;" SYSTEM_MODULE_PATH "${CMAKE_SYSTEM_PREFIX_PATH}/aws-cpp-sdk-all") + list(APPEND CMAKE_PREFIX_PATH ${SYSTEM_MODULE_PATH}) +endif() + +# Build shared libraries by default. +if(NOT BUILD_SHARED_LIBS) + set(BUILD_SHARED_LIBS ON) +endif() + +# Find the AWS SDK for C++ package. +find_package(AWSSDK REQUIRED COMPONENTS ${CURRENT_TARGET_AWS_DEPENDENCIES}) + +add_executable( + ${CURRENT_TARGET} +) + +# If the compiler is some version of Microsoft Visual C++, or another compiler simulating C++, +# and building as shared libraries, then dynamically link to those shared libraries. +if(MSVC AND BUILD_SHARED_LIBS) + add_definitions(-DUSE_IMPORT_EXPORT) + + set(CMAKE_BUILD_TYPE Debug) #Explicitly setting CMAKE_BUILD_TYPE is necessary in Windows to copy DLLs. + + # Copy relevant AWS SDK for C++ libraries into the current binary directory for running and debugging. + AWSSDK_CPY_DYN_LIBS( + SERVICE_LIST + "" + ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE} + ) + + add_custom_command( + TARGET + ${CURRENT_TARGET} + POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy + ${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_BINDIR}/${CMAKE_BUILD_TYPE}/gtest.dll + ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE} + ) + endif() + +# GTEST_SOURCE_FILES can be defined in the command line to limit the files in a build. For example, +# you can limit files to one action. +if (NOT DEFINED GTEST_SOURCE_FILES) + file( + GLOB + GTEST_SOURCE_FILES + "gtest_*.cpp" + ) +endif() + +# Check whether the target system is Windows, including Win64. +if(WIN32) + # Check whether the compiler is some version of Microsoft Visual C++, or another compiler simulating C++. + if(MSVC) + source_group("Source Files" FILES ${GTEST_SOURCE_FILES}) + endif(MSVC) +endif() + +enable_testing() + + +foreach(TEST_FILE ${GTEST_SOURCE_FILES}) + string(REPLACE "gtest_" "../" SOURCE_FILE ${TEST_FILE}) + if (EXISTS ${SOURCE_FILE}) + list(APPEND GTEST_SOURCE ${SOURCE_FILE} ${TEST_FILE}) + else() + message("Error: no associated source file found for ${TEST_FILE}") + endif() +endforeach() + +target_sources( + ${CURRENT_TARGET} + PUBLIC + ${GTEST_SOURCE} + test_main.cpp + ${EXAMPLE_SERVICE_NAME}_gtests.cpp +) + +target_include_directories( + ${CURRENT_TARGET} + PUBLIC + $ + $ +) + +target_include_directories(${CURRENT_TARGET} + SYSTEM + PUBLIC + ${AWSSDK_INCLUDE_DIR}/aws # This is added to shorten an include path which does not pass checks. + ) + +target_compile_definitions( + ${CURRENT_TARGET} + PUBLIC + TESTING_BUILD + SRC_DIR="${CMAKE_CURRENT_SOURCE_DIR}" +) + +target_link_libraries( + ${CURRENT_TARGET} + GTest::gtest + ${AWSSDK_LINK_LIBRARIES} + ${AWSSDK_PLATFORM_DEPS} +) + +include(GoogleTest) +gtest_add_tests( + TARGET + ${CURRENT_TARGET} +) diff --git a/cpp/example_code/rds/tests/gtest_getting_started_with_db_instances.cpp b/cpp/example_code/rds/tests/gtest_getting_started_with_db_instances.cpp new file mode 100644 index 00000000000..0418bf0d002 --- /dev/null +++ b/cpp/example_code/rds/tests/gtest_getting_started_with_db_instances.cpp @@ -0,0 +1,118 @@ +/* + Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + SPDX-License-Identifier: Apache-2.0 +*/ + +#include +#include +#include "rds_gtests.h" +#include "rds_samples.h" + +namespace AwsDocTest { + + extern const std::vector RESPONSES; + + bool addHttpResponses(MockHTTP &mockHttp); + + // NOLINTNEXTLINE(readability-named-parameter) + TEST_F(RDS_GTests, gettingStartedWithDBInstances) { + AddCommandLineResponses(RESPONSES); + + bool result = AwsDoc::RDS::gettingStartedWithDBInstances(*s_clientConfig); + ASSERT_TRUE(result); + } + + // NOLINTNEXTLINE(readability-named-parameter) + TEST_F(RDS_GTests, gettingStartedWithDBInstances_m_) { + AddCommandLineResponses(RESPONSES); + + MockHTTP mockHttp; + bool result = addHttpResponses(mockHttp); + ASSERT_TRUE(result) << preconditionError(); + + result = AwsDoc::RDS::gettingStartedWithDBInstances(*s_clientConfig); + ASSERT_TRUE(result); + } + + const std::vector RESPONSES = {"1", // Which family do you want to use? + "3", // Enter a new value in the range 1-65535: + "2", // Enter a new value in the range 1-65535: + "foo", // Enter an administrator username for the database: + "foo_Foo8", // Enter a password for the administrator (at least 8 characters): + "1", // The available engines for your parameter group are: + "1", // Which micro DB instance class do you want to use? + "y", // Do you want to create a snapshot of your DB instance (y/n)? + "y"}; // Do you want to delete the DB instance and parameter group (y/n)? + + bool addHttpResponses(MockHTTP &mockHttp) { + if (!mockHttp.addResponseWithBody("mock_input/1-DescribeDBParameterGroups.xml", + Aws::Http::HttpResponseCode::NOT_FOUND)) { + return false; + } + if (!mockHttp.addResponseWithBody( + "mock_input/2-DescribeDBEngineVersions.xml")) { + return false; + } + if (!mockHttp.addResponseWithBody("mock_input/3-CreateDBParameterGroup.xml")) { + return false; + } + if (!mockHttp.addResponseWithBody("mock_input/4-DescribeDBParameters.xml")) { + return false; + } + if (!mockHttp.addResponseWithBody("mock_input/8-DescribeDBParameters.xml")) { + return false; + } + if (!mockHttp.addResponseWithBody("mock_input/9-ModifyDBParameterGroup.xml")) { + return false; + } + if (!mockHttp.addResponseWithBody("mock_input/10-DescribeDBParameters.xml")) { + return false; + } + if (!mockHttp.addResponseWithBody("mock_input/11-DescribeDBInstances.xml", + Aws::Http::HttpResponseCode::NOT_FOUND)) { + return false; + } + if (!mockHttp.addResponseWithBody( + "mock_input/12-DescribeDBEngineVersions.xml")) { + return false; + } + if (!mockHttp.addResponseWithBody( + "mock_input/13-DescribeOrderableDBInstanceOptions.xml")) { + return false; + } + if (!mockHttp.addResponseWithBody("mock_input/15-CreateDBInstance.xml")) { + return false; + } + if (!mockHttp.addResponseWithBody("mock_input/16-DescribeDBInstances.xml")) { + return false; + } + if (!mockHttp.addResponseWithBody("mock_input/457-DescribeDBInstances.xml")) { + return false; + } + if (!mockHttp.addResponseWithBody("mock_input/458-CreateDBSnapshot.xml")) { + return false; + } + if (!mockHttp.addResponseWithBody("mock_input/459-DescribeDBSnapshots.xml")) { + return false; + } + if (!mockHttp.addResponseWithBody("mock_input/564-DescribeDBSnapshots.xml")) { + return false; + } + if (!mockHttp.addResponseWithBody("mock_input/565-DeleteDBInstance.xml")) { + return false; + } + if (!mockHttp.addResponseWithBody("mock_input/566-DescribeDBInstances.xml")) { + return false; + } + if (!mockHttp.addResponseWithBody("mock_input/666-DescribeDBInstances.xml", + Aws::Http::HttpResponseCode::NOT_FOUND)) { + return false; + } + if (!mockHttp.addResponseWithBody( + "mock_input/667-DeleteDBParameterGroup.xml")) { + return false; + } + + return true; + } +} // namespace AwsDocTest diff --git a/cpp/example_code/rds/tests/mock_input/1-DescribeDBParameterGroups.xml b/cpp/example_code/rds/tests/mock_input/1-DescribeDBParameterGroups.xml new file mode 100644 index 00000000000..21b9d99a8df --- /dev/null +++ b/cpp/example_code/rds/tests/mock_input/1-DescribeDBParameterGroups.xml @@ -0,0 +1,9 @@ + + + Sender + DBParameterGroupNotFound + DBParameterGroup not found: doc-example-parameter-group + + ad9db88d-df22-4c3b-b3a3-e05dbf775491 + + diff --git a/cpp/example_code/rds/tests/mock_input/10-DescribeDBParameters.xml b/cpp/example_code/rds/tests/mock_input/10-DescribeDBParameters.xml new file mode 100644 index 00000000000..36cba4062fb --- /dev/null +++ b/cpp/example_code/rds/tests/mock_input/10-DescribeDBParameters.xml @@ -0,0 +1,34 @@ + + + + + 1-65535 + dynamic + integer + Intended for use with master-to-master replication, and can be used to control the + operation of AUTO_INCREMENT columns + + pending-reboot + auto_increment_increment + user + true + 3 + + + 1-65535 + dynamic + integer + Determines the starting point for the AUTO_INCREMENT column value + pending-reboot + auto_increment_offset + user + true + 2 + + + + + 7d540796-3a43-4a38-90df-42c7b2e0f171 + + + diff --git a/cpp/example_code/rds/tests/mock_input/11-DescribeDBInstances.xml b/cpp/example_code/rds/tests/mock_input/11-DescribeDBInstances.xml new file mode 100644 index 00000000000..f9355eee15b --- /dev/null +++ b/cpp/example_code/rds/tests/mock_input/11-DescribeDBInstances.xml @@ -0,0 +1,9 @@ + + + Sender + DBInstanceNotFound + DBInstance doc-example-instance not found. + + 67279f88-7a84-4ad9-8bfe-be4f131dc17f + + diff --git a/cpp/example_code/rds/tests/mock_input/12-DescribeDBEngineVersions.xml b/cpp/example_code/rds/tests/mock_input/12-DescribeDBEngineVersions.xml new file mode 100644 index 00000000000..5692660458a --- /dev/null +++ b/cpp/example_code/rds/tests/mock_input/12-DescribeDBEngineVersions.xml @@ -0,0 +1,322 @@ + + + + + false + 5.7 + MySQL 5.7.33 + false + + rds-ca-2019 + rds-ca-ecc384-g1 + rds-ca-rsa4096-g1 + rds-ca-rsa2048-g1 + + false + mysql5.7 + false + 33 + mysql + 5.7.33 + true + false + + + 5.7.34 + 5.7 + false + MySQL 5.7.34 + false + 34 + mysql + false + + + 5.7.36 + 5.7 + false + MySQL 5.7.36 + false + 36 + mysql + false + + + 5.7.37 + 5.7 + false + MySQL 5.7.37 + false + 37 + mysql + false + + + 5.7.38 + 5.7 + true + MySQL 5.7.38 + false + 38 + mysql + false + + + 5.7.39 + 5.7 + false + MySQL 5.7.39 + false + 39 + mysql + false + + + 5.7.40 + 5.7 + false + MySQL 5.7.40 + false + 40 + mysql + false + + + 5.7.41 + 5.7 + false + MySQL 5.7.41 + false + 41 + mysql + false + + + 8.0.23 + 8.0 + false + MySQL 8.0.23 + false + 23 + mysql + true + + + 8.0.27 + 8.0 + false + MySQL 8.0.27 + false + 27 + mysql + true + + + 8.0.28 + 8.0 + false + MySQL 8.0.28 + false + 28 + mysql + true + + + 8.0.30 + 8.0 + false + MySQL 8.0.30 + false + 30 + mysql + true + + + 8.0.31 + 8.0 + false + MySQL 8.0.31 + false + 31 + mysql + true + + + 8.0.32 + 8.0 + false + MySQL 8.0.32 + false + 32 + mysql + true + + + + audit + error + general + slowquery + + + false + true + MySQL Community Edition + available + + + false + 5.7 + MySQL 5.7.34 + false + + rds-ca-2019 + rds-ca-ecc384-g1 + rds-ca-rsa4096-g1 + rds-ca-rsa2048-g1 + + false + mysql5.7 + false + 34 + mysql + 5.7.34 + true + false + + + 5.7.36 + 5.7 + false + MySQL 5.7.36 + false + 36 + mysql + false + + + 5.7.37 + 5.7 + false + MySQL 5.7.37 + false + 37 + mysql + false + + + 5.7.38 + 5.7 + true + MySQL 5.7.38 + false + 38 + mysql + false + + + 5.7.39 + 5.7 + false + MySQL 5.7.39 + false + 39 + mysql + false + + + 5.7.40 + 5.7 + false + MySQL 5.7.40 + false + 40 + mysql + false + + + 5.7.41 + 5.7 + false + MySQL 5.7.41 + false + 41 + mysql + false + + + 8.0.23 + 8.0 + false + MySQL 8.0.23 + false + 23 + mysql + true + + + 8.0.27 + 8.0 + false + MySQL 8.0.27 + false + 27 + mysql + true + + + 8.0.28 + 8.0 + false + MySQL 8.0.28 + false + 28 + mysql + true + + + 8.0.30 + 8.0 + false + MySQL 8.0.30 + false + 30 + mysql + true + + + 8.0.31 + 8.0 + false + MySQL 8.0.31 + false + 31 + mysql + true + + + 8.0.32 + 8.0 + false + MySQL 8.0.32 + false + 32 + mysql + true + + + + audit + error + general + slowquery + + + false + true + MySQL Community Edition + available + + + + diff --git a/cpp/example_code/rds/tests/mock_input/13-DescribeOrderableDBInstanceOptions.xml b/cpp/example_code/rds/tests/mock_input/13-DescribeOrderableDBInstanceOptions.xml new file mode 100644 index 00000000000..da671f46011 --- /dev/null +++ b/cpp/example_code/rds/tests/mock_input/13-DescribeOrderableDBInstanceOptions.xml @@ -0,0 +1,374 @@ + + + + + false + + + us-east-1a + + + us-east-1b + + + us-east-1c + + + us-east-1d + + + us-east-1e + + + us-east-1f + + + false + false + false + mysql + + true + 5.7.33 + true + true + db.m4.micro + true + true + true + + IPV4 + DUAL + + + true + general-public-license + true + false + 65536 + gp2 + false + true + 5 + + + false + + + us-east-1a + + + us-east-1b + + + us-east-1c + + + us-east-1d + + + us-east-1e + + + us-east-1f + + + 4000 + true + false + 500.0 + false + 125 + mysql + + 3000 + true + 5.7.33 + true + true + db.m4.10xlarge + true + true + true + 64000 + + IPV4 + DUAL + + + true + general-public-license + true + false + 65536 + gp3 + true + true + 20 + + + false + + + us-east-1a + + + us-east-1b + + + us-east-1c + + + us-east-1d + + + us-east-1e + + + us-east-1f + + + false + false + 50.0 + false + mysql + + 1000 + 0.5 + true + 5.7.33 + true + true + db.m4.10xlarge + true + true + true + 256000 + + IPV4 + DUAL + + + true + general-public-license + true + false + 65536 + io1 + true + true + 100 + + + false + + + us-east-1a + + + us-east-1b + + + us-east-1c + + + us-east-1d + + + us-east-1e + + + us-east-1f + + + false + false + false + mysql + + true + 5.7.33 + true + true + db.m4.10xlarge + true + false + true + + IPV4 + DUAL + + + true + general-public-license + true + false + 3072 + standard + false + true + 5 + + + false + + + us-east-1a + + + us-east-1b + + + us-east-1c + + + us-east-1d + + + us-east-1e + + + us-east-1f + + + false + false + false + mysql + + true + 5.7.33 + true + true + db.m4.16xlarge + true + true + true + + IPV4 + DUAL + + + true + general-public-license + true + false + 65536 + gp2 + false + true + 5 + + + false + + + us-east-1a + + + us-east-1b + + + us-east-1c + + + us-east-1d + + + us-east-1e + + + us-east-1f + + + 4000 + true + false + 500.0 + false + 125 + mysql + + 3000 + true + 5.7.33 + true + true + db.m4.16xlarge + true + true + true + 64000 + + IPV4 + DUAL + + + true + general-public-license + true + false + 65536 + gp3 + true + true + 20 + + + false + + + us-east-1a + + + us-east-1b + + + us-east-1c + + + us-east-1d + + + us-east-1e + + + us-east-1f + + + false + false + 50.0 + false + mysql + + 1000 + 0.5 + true + 5.7.33 + true + true + db.m4.16xlarge + true + true + true + 256000 + + IPV4 + DUAL + + + true + general-public-license + true + false + 65536 + io1 + true + true + 100 + + + + diff --git a/cpp/example_code/rds/tests/mock_input/15-CreateDBInstance.xml b/cpp/example_code/rds/tests/mock_input/15-CreateDBInstance.xml new file mode 100644 index 00000000000..07d9a11290c --- /dev/null +++ b/cpp/example_code/rds/tests/mock_input/15-CreateDBInstance.xml @@ -0,0 +1,126 @@ + + + + 5 + + + + doc-example-parameter-group + in-sync + + + + 5.7.33 + foo + + rds-ca-2019 + + db.t2.micro + 0 + false + + false + 0 + creating + 1 + + + default:mysql-5-7 + in-sync + + + region + rds-ca-2019 + 0 + db-CKGCM6BVK67HH7GSPRBYWX5DSU + 03:30-04:00 + false + doc-example-instance + arn:aws:rds:us-east-1:123456789:db:doc-example-instance + mysql + true + false + IPV4 + false + docexampledb + false + + false + + vpc-0d533261ecd9c2d4b + + + subnet-0d4097e69bda55551 + Active + + + us-east-1e + + + + subnet-0113d608cb7592443 + Active + + + us-east-1a + + + + subnet-0835b5ece729e4152 + Active + + + us-east-1b + + + + subnet-09a9558a8b495f5ff + Active + + + us-east-1d + + + + subnet-0dd1dd362104c4f40 + Active + + + us-east-1c + + + + subnet-0195fb838a854432f + Active + + + us-east-1f + + + + Complete + default + default + + + + sg-0b26bb6c3347555e2 + active + + + + general-public-license + + **** + + sun:05:42-sun:06:12 + standard + true + false + + + + 4916ac68-8bc9-4c2e-b907-4df4c03d7065 + + + diff --git a/cpp/example_code/rds/tests/mock_input/16-DescribeDBInstances.xml b/cpp/example_code/rds/tests/mock_input/16-DescribeDBInstances.xml new file mode 100644 index 00000000000..d5c6fc18712 --- /dev/null +++ b/cpp/example_code/rds/tests/mock_input/16-DescribeDBInstances.xml @@ -0,0 +1,129 @@ + + + + + 5 + + + + doc-example-parameter-group + in-sync + + + + 5.7.33 + foo + + rds-ca-2019 + + db.t2.micro + 0 + false + + false + 0 + creating + 1 + + + default:mysql-5-7 + in-sync + + + region + rds-ca-2019 + 0 + db-CKGCM6BVK67HH7GSPRBYWX5DSU + 03:30-04:00 + false + doc-example-instance + arn:aws:rds:us-east-1:123456789:db:doc-example-instance + mysql + true + false + IPV4 + stopped + false + docexampledb + false + + false + + vpc-0d533261ecd9c2d4b + + + subnet-0d4097e69bda55551 + Active + + + us-east-1e + + + + subnet-0113d608cb7592443 + Active + + + us-east-1a + + + + subnet-0835b5ece729e4152 + Active + + + us-east-1b + + + + subnet-09a9558a8b495f5ff + Active + + + us-east-1d + + + + subnet-0dd1dd362104c4f40 + Active + + + us-east-1c + + + + subnet-0195fb838a854432f + Active + + + us-east-1f + + + + Complete + default + default + + + + sg-0b26bb6c3347555e2 + active + + + + general-public-license + + **** + + sun:05:42-sun:06:12 + standard + true + false + + + + + 9ab96737-aca2-477e-add6-57dfae5275b4 + + + diff --git a/cpp/example_code/rds/tests/mock_input/2-DescribeDBEngineVersions.xml b/cpp/example_code/rds/tests/mock_input/2-DescribeDBEngineVersions.xml new file mode 100644 index 00000000000..5692660458a --- /dev/null +++ b/cpp/example_code/rds/tests/mock_input/2-DescribeDBEngineVersions.xml @@ -0,0 +1,322 @@ + + + + + false + 5.7 + MySQL 5.7.33 + false + + rds-ca-2019 + rds-ca-ecc384-g1 + rds-ca-rsa4096-g1 + rds-ca-rsa2048-g1 + + false + mysql5.7 + false + 33 + mysql + 5.7.33 + true + false + + + 5.7.34 + 5.7 + false + MySQL 5.7.34 + false + 34 + mysql + false + + + 5.7.36 + 5.7 + false + MySQL 5.7.36 + false + 36 + mysql + false + + + 5.7.37 + 5.7 + false + MySQL 5.7.37 + false + 37 + mysql + false + + + 5.7.38 + 5.7 + true + MySQL 5.7.38 + false + 38 + mysql + false + + + 5.7.39 + 5.7 + false + MySQL 5.7.39 + false + 39 + mysql + false + + + 5.7.40 + 5.7 + false + MySQL 5.7.40 + false + 40 + mysql + false + + + 5.7.41 + 5.7 + false + MySQL 5.7.41 + false + 41 + mysql + false + + + 8.0.23 + 8.0 + false + MySQL 8.0.23 + false + 23 + mysql + true + + + 8.0.27 + 8.0 + false + MySQL 8.0.27 + false + 27 + mysql + true + + + 8.0.28 + 8.0 + false + MySQL 8.0.28 + false + 28 + mysql + true + + + 8.0.30 + 8.0 + false + MySQL 8.0.30 + false + 30 + mysql + true + + + 8.0.31 + 8.0 + false + MySQL 8.0.31 + false + 31 + mysql + true + + + 8.0.32 + 8.0 + false + MySQL 8.0.32 + false + 32 + mysql + true + + + + audit + error + general + slowquery + + + false + true + MySQL Community Edition + available + + + false + 5.7 + MySQL 5.7.34 + false + + rds-ca-2019 + rds-ca-ecc384-g1 + rds-ca-rsa4096-g1 + rds-ca-rsa2048-g1 + + false + mysql5.7 + false + 34 + mysql + 5.7.34 + true + false + + + 5.7.36 + 5.7 + false + MySQL 5.7.36 + false + 36 + mysql + false + + + 5.7.37 + 5.7 + false + MySQL 5.7.37 + false + 37 + mysql + false + + + 5.7.38 + 5.7 + true + MySQL 5.7.38 + false + 38 + mysql + false + + + 5.7.39 + 5.7 + false + MySQL 5.7.39 + false + 39 + mysql + false + + + 5.7.40 + 5.7 + false + MySQL 5.7.40 + false + 40 + mysql + false + + + 5.7.41 + 5.7 + false + MySQL 5.7.41 + false + 41 + mysql + false + + + 8.0.23 + 8.0 + false + MySQL 8.0.23 + false + 23 + mysql + true + + + 8.0.27 + 8.0 + false + MySQL 8.0.27 + false + 27 + mysql + true + + + 8.0.28 + 8.0 + false + MySQL 8.0.28 + false + 28 + mysql + true + + + 8.0.30 + 8.0 + false + MySQL 8.0.30 + false + 30 + mysql + true + + + 8.0.31 + 8.0 + false + MySQL 8.0.31 + false + 31 + mysql + true + + + 8.0.32 + 8.0 + false + MySQL 8.0.32 + false + 32 + mysql + true + + + + audit + error + general + slowquery + + + false + true + MySQL Community Edition + available + + + + diff --git a/cpp/example_code/rds/tests/mock_input/3-CreateDBParameterGroup.xml b/cpp/example_code/rds/tests/mock_input/3-CreateDBParameterGroup.xml new file mode 100644 index 00000000000..40643c7de81 --- /dev/null +++ b/cpp/example_code/rds/tests/mock_input/3-CreateDBParameterGroup.xml @@ -0,0 +1,14 @@ + + + + mysql5.7 + doc-example-parameter-group + arn:aws:rds:us-east-1:123456789:pg:doc-example-parameter-group + Example parameter group. + + + + 7bd5552a-0a90-4be8-8ed1-c7af78b07815 + + + diff --git a/cpp/example_code/rds/tests/mock_input/4-DescribeDBParameters.xml b/cpp/example_code/rds/tests/mock_input/4-DescribeDBParameters.xml new file mode 100644 index 00000000000..063148b0ab7 --- /dev/null +++ b/cpp/example_code/rds/tests/mock_input/4-DescribeDBParameters.xml @@ -0,0 +1,345 @@ + + + aW5ub2RiX2RlZmF1bHRfcm93X2Zvcm1hdA== + + + 0,1 + static + boolean + Controls whether user-defined functions that have only an xxx symbol for the main function + can be loaded + + pending-reboot + allow-suspicious-udfs + engine-default + false + + + 0,1 + dynamic + boolean + Sets the autocommit mode + pending-reboot + autocommit + engine-default + true + + + 0,1 + static + boolean + Controls whether the server autogenerates SSL key and certificate files in the data + directory, if they do not already exist. + + pending-reboot + auto_generate_certs + engine-default + false + + + 1-65535 + dynamic + integer + Intended for use with master-to-master replication, and can be used to control the + operation of AUTO_INCREMENT columns + + pending-reboot + auto_increment_increment + engine-default + true + + + 1-65535 + dynamic + integer + Determines the starting point for the AUTO_INCREMENT column value + pending-reboot + auto_increment_offset + engine-default + true + + + 0,1 + dynamic + boolean + When this variable has a value of 1 (the default), the server automatically grants the + EXECUTE and ALTER ROUTINE privileges to the creator of a stored routine, if the user cannot already + execute and alter or drop the routine. + + pending-reboot + automatic_sp_privileges + engine-default + true + + + 0,1 + dynamic + boolean + This variable controls whether ALTER TABLE implicitly upgrades temporal columns found to be + in pre-5.6.4 format. + + pending-reboot + avoid_temporal_upgrade + engine-default + true + + + 1-65535 + static + integer + The number of outstanding connection requests MySQL can have + pending-reboot + back_log + engine-default + true + + + static + string + The MySQL installation base directory. + pending-reboot + basedir + system + false + /rdsdbbin/mysql + + + 4096-18446744073709547520 + dynamic + integer + The size of the cache to hold the SQL statements for the binary log during a transaction. + + pending-reboot + binlog_cache_size + system + true + 32768 + + + NONE,CRC32 + dynamic + string + When enabled, this variable causes the master to write a checksum for each event in the + binary log. + + pending-reboot + binlog_checksum + engine-default + true + + + IGNORE_ERROR,ABORT_SERVER + dynamic + string + Controls what happens when the server cannot write to the binary log. + pending-reboot + binlog_error_action + engine-default + true + + + ROW,STATEMENT,MIXED + dynamic + string + Row-based, Statement-based or Mixed replication + pending-reboot + binlog_format + system + true + MIXED + + + 0-1000000 + dynamic + integer + Controls how many microseconds the binary log commit waits before synchronizing the binary + log file to disk. + + pending-reboot + binlog_group_commit_sync_delay + engine-default + true + + + 0-1000000 + dynamic + integer + The maximum number of transactions to wait for before aborting the current delay as + specified by binlog-group-commit-sync-delay. + + pending-reboot + binlog_group_commit_sync_no_delay_count + engine-default + true + + + 0,1 + static + 5.7.23 + boolean + Controls how binary logs are iterated during GTID recovery + pending-reboot + binlog_gtid_simple_recovery + engine-default + true + + + 0-100000 + dynamic + integer + How long in microseconds to keep reading transactions from the flush queue before + proceeding with the group commit (and syncing the log to disk, if sync_binlog is greater than 0). If + the value is 0 (the default), there is no timeout and the server keeps reading new transactions + until the queue is empty. + + pending-reboot + binlog_max_flush_queue_time + engine-default + true + + + 0,1 + dynamic + boolean + If this variable is enabled (the default), transactions are committed in the same order + they are written to the binary log. If disabled, transactions may be committed in parallel. + + pending-reboot + binlog_order_commits + engine-default + true + + + full,minimal,noblob + dynamic + string + Whether the server logs full or minmal rows with row-based replication. + pending-reboot + binlog_row_image + engine-default + true + + + 0,1 + dynamic + boolean + When enabled, it causes a MySQL 5.6.2 or later server to write informational log events + such as row query log events into its binary log. + + pending-reboot + binlog_rows_query_log_events + engine-default + true + + + 4096-18446744073709547520 + dynamic + integer + This variable determines the size of the cache for the binary log to hold nontransactional + statements issued during a transaction. + + pending-reboot + binlog_stmt_cache_size + engine-default + true + + + aes-128-ecb,aes-192-ecb,aes-256-ecb,aes-128-cbc,aes-192-cbc,aes-256-cbc + dynamic + string + This variable controls the block encryption mode for block-based algorithms such as AES. It + affects encryption for AES_ENCRYPT() and AES_DECRYPT(). + + pending-reboot + block_encryption_mode + engine-default + true + + + 0-18446744073709547520 + dynamic + integer + Limits the size of the MyISAM cache tree in bytes per thread. + pending-reboot + bulk_insert_buffer_size + engine-default + true + + + + big5,dec8,cp850,hp8,koi8r,latin1,latin2,swe7,ascii,ujis,sjis,hebrew,tis620,euckr,koi8u,gb2312,greek,cp1250,gbk,latin5,armscii8,utf8,cp866,keybcs2,macce,macroman,cp852,latin7,utf8mb4,cp1251,cp1256,cp1257,binary,geostd8,cp932,eucjpms + + dynamic + string + The character set for statements that arrive from the client. + pending-reboot + character_set_client + engine-default + true + + + 0,1 + static + boolean + Don"t ignore character set information sent by the client. + pending-reboot + character-set-client-handshake + engine-default + true + + + + big5,dec8,cp850,hp8,koi8r,latin1,latin2,swe7,ascii,ujis,sjis,hebrew,tis620,euckr,koi8u,gb2312,greek,cp1250,gbk,latin5,armscii8,utf8,ucs2,cp866,keybcs2,macce,macroman,cp852,latin7,utf8mb4,cp1251,utf16,cp1256,cp1257,utf32,binary,geostd8,cp932,eucjpms + + dynamic + string + The character set used for literals that do not have a character set introducer and for + number-to-string conversion. + + pending-reboot + character_set_connection + engine-default + true + + + + big5,dec8,cp850,hp8,koi8r,latin1,latin2,swe7,ascii,ujis,sjis,hebrew,tis620,euckr,koi8u,gb2312,greek,cp1250,gbk,latin5,armscii8,utf8,ucs2,cp866,keybcs2,macce,macroman,cp852,latin7,utf8mb4,cp1251,utf16,cp1256,cp1257,utf32,binary,geostd8,cp932,eucjpms + + dynamic + string + The character set used by the default database. + pending-reboot + character_set_database + engine-default + true + + + + big5,dec8,cp850,hp8,koi8r,latin1,latin2,swe7,ascii,ujis,sjis,hebrew,tis620,euckr,koi8u,gb2312,greek,cp1250,gbk,latin5,armscii8,utf8,ucs2,cp866,keybcs2,macce,macroman,cp852,latin7,utf8mb4,cp1251,utf16,cp1256,cp1257,utf32,binary,geostd8,cp932,eucjpms + + dynamic + string + The file system character set. + pending-reboot + character_set_filesystem + engine-default + true + + + + big5,dec8,cp850,hp8,koi8r,latin1,latin2,swe7,ascii,ujis,sjis,hebrew,tis620,euckr,koi8u,gb2312,greek,cp1250,gbk,latin5,armscii8,utf8,ucs2,cp866,keybcs2,macce,macroman,cp852,latin7,utf8mb4,cp1251,utf16,cp1256,cp1257,utf32,binary,geostd8,cp932,eucjpms + + dynamic + string + The character set used for returning query results to the client. + pending-reboot + character_set_results + engine-default + true + + + + + f87bc03c-3c89-4437-8269-3b728160eafe + + diff --git a/cpp/example_code/rds/tests/mock_input/457-DescribeDBInstances.xml b/cpp/example_code/rds/tests/mock_input/457-DescribeDBInstances.xml new file mode 100644 index 00000000000..772a38bcc34 --- /dev/null +++ b/cpp/example_code/rds/tests/mock_input/457-DescribeDBInstances.xml @@ -0,0 +1,136 @@ + + + + + 5 + + + + doc-example-parameter-group + in-sync + + + us-east-1a + + 5.7.33 + foo + + 2024-08-22T17:08:50Z + rds-ca-2019 + + 2023-02-13T14:50:12.138Z + db.t2.micro + 0 + false + + false + 0 + available + 1 + + + default:mysql-5-7 + in-sync + + + 2023-02-13T14:51:50.159Z + region + rds-ca-2019 + 0 + db-CKGCM6BVK67HH7GSPRBYWX5DSU + 03:30-04:00 + false + doc-example-instance + arn:aws:rds:us-east-1:123456789:db:doc-example-instance + + Z2R2ITUGPM61AM +
doc-example-instance.cdx7lk6twjmf.us-east-1.rds.amazonaws.com
+ 3306 +
+ mysql + true + false + IPV4 + stopped + false + docexampledb + false + + false + + vpc-0d533261ecd9c2d4b + + + subnet-0d4097e69bda55551 + Active + + + us-east-1e + + + + subnet-0113d608cb7592443 + Active + + + us-east-1a + + + + subnet-0835b5ece729e4152 + Active + + + us-east-1b + + + + subnet-09a9558a8b495f5ff + Active + + + us-east-1d + + + + subnet-0dd1dd362104c4f40 + Active + + + us-east-1c + + + + subnet-0195fb838a854432f + Active + + + us-east-1f + + + + Complete + default + default + + + + sg-0b26bb6c3347555e2 + active + + + + general-public-license + + sun:05:42-sun:06:12 + standard + true + false +
+
+
+ + b4b7a79c-b4e4-4afc-9cb0-c5bedaed4677 + +
+ diff --git a/cpp/example_code/rds/tests/mock_input/458-CreateDBSnapshot.xml b/cpp/example_code/rds/tests/mock_input/458-CreateDBSnapshot.xml new file mode 100644 index 00000000000..853ef619122 --- /dev/null +++ b/cpp/example_code/rds/tests/mock_input/458-CreateDBSnapshot.xml @@ -0,0 +1,36 @@ + + + + 5 + us-east-1a + db-CKGCM6BVK67HH7GSPRBYWX5DSU + doc-example-instance + mysql + 0 + vpc-0d533261ecd9c2d4b + false + region + doc-example-instance-8d855480-090a-4a93-970b-758cfa568737 + default:mysql-5-7 + 5.7.33 + foo + manual + 2023-02-13T14:50:12.138Z + + arn:aws:rds:us-east-1:123456789:snapshot:doc-example-instance-8d855480-090a-4a93-970b-758cfa568737 + + + 0 + + false + 3306 + general-public-license + standard + creating + + + + 465002ad-a894-4e83-a615-304c31d55c4b + + + diff --git a/cpp/example_code/rds/tests/mock_input/459-DescribeDBSnapshots.xml b/cpp/example_code/rds/tests/mock_input/459-DescribeDBSnapshots.xml new file mode 100644 index 00000000000..4c05e21d75c --- /dev/null +++ b/cpp/example_code/rds/tests/mock_input/459-DescribeDBSnapshots.xml @@ -0,0 +1,38 @@ + + + + + 5 + us-east-1a + db-CKGCM6BVK67HH7GSPRBYWX5DSU + doc-example-instance + mysql + 0 + vpc-0d533261ecd9c2d4b + false + region + doc-example-instance-8d855480-090a-4a93-970b-758cfa568737 + default:mysql-5-7 + 5.7.33 + foo + manual + 2023-02-13T14:50:12.138Z + + arn:aws:rds:us-east-1:123456789:snapshot:doc-example-instance-8d855480-090a-4a93-970b-758cfa568737 + + + 0 + + false + 3306 + general-public-license + standard + creating + + + + + bd32d304-d848-4283-ba50-8fb2fc965cab + + + diff --git a/cpp/example_code/rds/tests/mock_input/564-DescribeDBSnapshots.xml b/cpp/example_code/rds/tests/mock_input/564-DescribeDBSnapshots.xml new file mode 100644 index 00000000000..15930b769dc --- /dev/null +++ b/cpp/example_code/rds/tests/mock_input/564-DescribeDBSnapshots.xml @@ -0,0 +1,40 @@ + + + + + 5 + us-east-1a + db-CKGCM6BVK67HH7GSPRBYWX5DSU + doc-example-instance + mysql + 100 + vpc-0d533261ecd9c2d4b + false + region + doc-example-instance-8d855480-090a-4a93-970b-758cfa568737 + default:mysql-5-7 + 5.7.33 + foo + manual + 2023-02-13T14:56:07.955Z + 2023-02-13T14:50:12.138Z + + arn:aws:rds:us-east-1:123456789:snapshot:doc-example-instance-8d855480-090a-4a93-970b-758cfa568737 + + + 0 + + false + 3306 + general-public-license + 2023-02-13T14:56:07.955Z + standard + available + + + + + c0b52396-bdaa-49dc-ad4d-ad6c54bae7b2 + + + diff --git a/cpp/example_code/rds/tests/mock_input/565-DeleteDBInstance.xml b/cpp/example_code/rds/tests/mock_input/565-DeleteDBInstance.xml new file mode 100644 index 00000000000..39941cd29b2 --- /dev/null +++ b/cpp/example_code/rds/tests/mock_input/565-DeleteDBInstance.xml @@ -0,0 +1,129 @@ + + + + 5 + + + + doc-example-parameter-group + in-sync + + + us-east-1a + + 5.7.33 + foo + 2023-02-13T14:50:12.138Z + db.t2.micro + 0 + false + + false + 0 + deleting + 1 + + + default:mysql-5-7 + in-sync + + + 2023-02-13T14:56:06Z + region + + 0 + db-CKGCM6BVK67HH7GSPRBYWX5DSU + 03:30-04:00 + false + doc-example-instance + arn:aws:rds:us-east-1:123456789:db:doc-example-instance + + Z2R2ITUGPM61AM +
doc-example-instance.cdx7lk6twjmf.us-east-1.rds.amazonaws.com
+ 3306 +
+ mysql + true + false + IPV4 + false + docexampledb + false + + false + + vpc-0d533261ecd9c2d4b + + + subnet-0d4097e69bda55551 + + Active + + us-east-1e + + + + subnet-0113d608cb7592443 + + Active + + us-east-1a + + + + subnet-0835b5ece729e4152 + + Active + + us-east-1b + + + + subnet-09a9558a8b495f5ff + + Active + + us-east-1d + + + + subnet-0dd1dd362104c4f40 + + Active + + us-east-1c + + + + subnet-0195fb838a854432f + + Active + + us-east-1f + + + + Complete + default + default + + + + + sg-0b26bb6c3347555e2 + active + + + general-public-license + + sun:05:42-sun:06:12 + standard + true + false +
+
+ + 9040f093-5216-44bb-b079-2b42b5cd1afa + +
+ diff --git a/cpp/example_code/rds/tests/mock_input/566-DescribeDBInstances.xml b/cpp/example_code/rds/tests/mock_input/566-DescribeDBInstances.xml new file mode 100644 index 00000000000..c7b66fb3d4e --- /dev/null +++ b/cpp/example_code/rds/tests/mock_input/566-DescribeDBInstances.xml @@ -0,0 +1,132 @@ + + + + + 5 + + + + doc-example-parameter-group + in-sync + + + us-east-1a + + 5.7.33 + foo + 2023-02-13T14:50:12.138Z + db.t2.micro + 0 + false + + false + 0 + deleting + 1 + + + default:mysql-5-7 + in-sync + + + 2023-02-13T14:56:06Z + region + + 0 + db-CKGCM6BVK67HH7GSPRBYWX5DSU + 03:30-04:00 + false + doc-example-instance + arn:aws:rds:us-east-1:123456789:db:doc-example-instance + + Z2R2ITUGPM61AM +
doc-example-instance.cdx7lk6twjmf.us-east-1.rds.amazonaws.com
+ 3306 +
+ mysql + true + false + IPV4 + stopped + false + docexampledb + false + + false + + vpc-0d533261ecd9c2d4b + + + subnet-0d4097e69bda55551 + + Active + + us-east-1e + + + + subnet-0113d608cb7592443 + + Active + + us-east-1a + + + + subnet-0835b5ece729e4152 + + Active + + us-east-1b + + + + subnet-09a9558a8b495f5ff + + Active + + us-east-1d + + + + subnet-0dd1dd362104c4f40 + + Active + + us-east-1c + + + + subnet-0195fb838a854432f + + Active + + us-east-1f + + + + Complete + default + default + + + + + sg-0b26bb6c3347555e2 + active + + + general-public-license + + sun:05:42-sun:06:12 + standard + true + false +
+
+
+ + 71d956de-4e55-4b94-934d-a7260a70275a + +
+ diff --git a/cpp/example_code/rds/tests/mock_input/666-DescribeDBInstances.xml b/cpp/example_code/rds/tests/mock_input/666-DescribeDBInstances.xml new file mode 100644 index 00000000000..6cd5cfc798b --- /dev/null +++ b/cpp/example_code/rds/tests/mock_input/666-DescribeDBInstances.xml @@ -0,0 +1,9 @@ + + + Sender + DBInstanceNotFound + DBInstance doc-example-instance not found. + + 92bab661-9e3a-4044-8651-10001d604745 + + diff --git a/cpp/example_code/rds/tests/mock_input/667-DeleteDBParameterGroup.xml b/cpp/example_code/rds/tests/mock_input/667-DeleteDBParameterGroup.xml new file mode 100644 index 00000000000..7fe807cdd7c --- /dev/null +++ b/cpp/example_code/rds/tests/mock_input/667-DeleteDBParameterGroup.xml @@ -0,0 +1,6 @@ + + + ba04225b-adf1-49a0-b718-211c78ba07bc + + + diff --git a/cpp/example_code/rds/tests/mock_input/8-DescribeDBParameters.xml b/cpp/example_code/rds/tests/mock_input/8-DescribeDBParameters.xml new file mode 100644 index 00000000000..6dd795a93c8 --- /dev/null +++ b/cpp/example_code/rds/tests/mock_input/8-DescribeDBParameters.xml @@ -0,0 +1,147 @@ + + + + + 1024-18446744073709547520 + dynamic + integer + There is a per-transaction memory pool from which various transaction-related allocations + take memory. For every allocation that cannot be satisfied from the pool because it has insufficient + memory available, the pool is incremented. + + pending-reboot + transaction_prealloc_size + engine-default + true + + + OFF,MURMUR32 + dynamic + string + Reserved for future use. + pending-reboot + transaction_write_set_extraction + engine-default + false + + + READ-UNCOMMITTED,READ-COMMITTED,REPEATABLE-READ,SERIALIZABLE + dynamic + string + Sets the default transaction isolation level. + pending-reboot + tx_isolation + engine-default + true + + + 0,1 + dynamic + boolean + This variable controls whether updates to a view can be made when the view does not contain + all columns of the primary key defined in the underlying table, if the update statement contains a + LIMIT clause (Often generated by GUI tools). + + pending-reboot + updatable_views_with_limit + engine-default + true + + + ON,OFF,FORCE,FORCE_PLUS_PERMANENT + static + string + This option controls how the server loads the validate_password plugin at startup. + + pending-reboot + validate-password + engine-default + true + + + static + string + The path name of the dictionary file used by the validate_password plugin for checking + passwords. + + pending-reboot + validate_password_dictionary_file + engine-default + false + + + 0-2147483647 + dynamic + integer + The minimum number of characters that validate_password requires passwords to have. + + pending-reboot + validate_password_length + engine-default + true + + + 0-2147483647 + dynamic + integer + The minimum number of lowercase and uppercase characters that passwords checked by the + validate_password plugin must have if the password policy is MEDIUM or stronger. + + pending-reboot + validate_password_mixed_case_count + engine-default + true + + + 0-2147483647 + dynamic + integer + The minimum number of numeric (digit) characters that passwords checked by the + validate_password plugin must have if the password policy is MEDIUM or stronger. + + pending-reboot + validate_password_number_count + engine-default + true + + + LOW,MEDIUM,STRONG + dynamic + string + The password policy enforced by the validate_password plugin. + pending-reboot + validate_password_policy + engine-default + true + + + 0-2147483647 + dynamic + integer + The minimum number of nonalphanumeric characters that passwords checked by the + validate_password plugin must have if the password policy is MEDIUM or stronger. + + pending-reboot + validate_password_special_char_count + engine-default + true + + + 1-31536000 + dynamic + integer + The number of seconds the server waits for activity on a non-interactive TCP/IP or UNIX + File connection before closing it. + + pending-reboot + wait_timeout + engine-default + true + + + + + f87bc03c-3c89-4437-8269-3b728160eafe + + + diff --git a/cpp/example_code/rds/tests/mock_input/9-ModifyDBParameterGroup.xml b/cpp/example_code/rds/tests/mock_input/9-ModifyDBParameterGroup.xml new file mode 100644 index 00000000000..68b5b7637b2 --- /dev/null +++ b/cpp/example_code/rds/tests/mock_input/9-ModifyDBParameterGroup.xml @@ -0,0 +1,9 @@ + + + doc-example-parameter-group + + + 8cbc41e9-e0d1-42f0-af64-3e0ad2be4b62 + + + diff --git a/cpp/example_code/rds/tests/rds_gtests.cpp b/cpp/example_code/rds/tests/rds_gtests.cpp new file mode 100644 index 00000000000..7cc437036c7 --- /dev/null +++ b/cpp/example_code/rds/tests/rds_gtests.cpp @@ -0,0 +1,110 @@ +/* + Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + SPDX-License-Identifier: Apache-2.0 +*/ + +#include "rds_gtests.h" +#include +#include +#include + +Aws::SDKOptions AwsDocTest::RDS_GTests::s_options; +std::unique_ptr AwsDocTest::RDS_GTests::s_clientConfig; +static const char ALLOCATION_TAG[] = "RDS_GTEST"; + +void AwsDocTest::RDS_GTests::SetUpTestSuite() { + InitAPI(s_options); + + // s_clientConfig must be a pointer because the client config must be initialized + // after InitAPI. + s_clientConfig = std::make_unique(); +} + +void AwsDocTest::RDS_GTests::TearDownTestSuite() { + ShutdownAPI(s_options); + +} + +void AwsDocTest::RDS_GTests::SetUp() { + m_savedBuffer = std::cout.rdbuf(); + std::cout.rdbuf(&m_coutBuffer); + + m_savedInBuffer = std::cin.rdbuf(); + std::cin.rdbuf(&m_cinBuffer); + + // The following code is needed for the AwsDocTest::MyStringBuffer::underflow exception. + // Otherwise, an infinite loop occurs when looping for a result on an empty buffer. + std::cin.exceptions(std::ios_base::badbit); +} + +void AwsDocTest::RDS_GTests::TearDown() { + if (m_savedBuffer != nullptr) { + std::cout.rdbuf(m_savedBuffer); + m_savedBuffer = nullptr; + } + + if (m_savedInBuffer != nullptr) { + std::cin.rdbuf(m_savedInBuffer); + std::cin.exceptions(std::ios_base::goodbit); + m_savedInBuffer = nullptr; + } +} + +Aws::String AwsDocTest::RDS_GTests::preconditionError() { + return "Failed to meet precondition."; +} + +void AwsDocTest::RDS_GTests::AddCommandLineResponses( + const std::vector &responses) { + + std::stringstream stringStream; + for (auto &response: responses) { + stringStream << response << "\n"; + } + m_cinBuffer.str(stringStream.str()); +} + +int AwsDocTest::MyStringBuffer::underflow() { + int result = basic_stringbuf::underflow(); + if (result == EOF) { + std::cerr << "Error AwsDocTest::MyStringBuffer::underflow." << std::endl; + throw std::underflow_error("AwsDocTest::MyStringBuffer::underflow"); + } + + return result; +} + +AwsDocTest::MockHTTP::MockHTTP() { + mockHttpClient = Aws::MakeShared(ALLOCATION_TAG); + mockHttpClientFactory = Aws::MakeShared(ALLOCATION_TAG); + mockHttpClientFactory->SetClient(mockHttpClient); + SetHttpClientFactory(mockHttpClientFactory); + requestTmp = CreateHttpRequest(Aws::Http::URI("https://test.com/"), + Aws::Http::HttpMethod::HTTP_GET, + Aws::Utils::Stream::DefaultResponseStreamFactoryMethod); +} + +AwsDocTest::MockHTTP::~MockHTTP() { + Aws::Http::CleanupHttp(); + Aws::Http::InitHttp(); +} + +bool AwsDocTest::MockHTTP::addResponseWithBody(const std::string &fileName, + Aws::Http::HttpResponseCode httpResponseCode) { + + std::ifstream inStream(std::string(SRC_DIR) + "/" + fileName); + if (inStream) { + std::shared_ptr goodResponse = Aws::MakeShared( + ALLOCATION_TAG, requestTmp); + goodResponse->AddHeader("Content-Type", "text/xml"); + goodResponse->SetResponseCode(httpResponseCode); + goodResponse->GetResponseBody() << inStream.rdbuf(); + mockHttpClient->AddResponseToReturn(goodResponse); + return true; + } + + std::cerr << "MockHTTP::addResponseWithBody open file error '" << fileName << "'." + << std::endl; + + return false; +} diff --git a/cpp/example_code/rds/tests/rds_gtests.h b/cpp/example_code/rds/tests/rds_gtests.h new file mode 100644 index 00000000000..3d2ec341b3b --- /dev/null +++ b/cpp/example_code/rds/tests/rds_gtests.h @@ -0,0 +1,72 @@ +/* + Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + SPDX-License-Identifier: Apache-2.0 +*/ + +#pragma once +#ifndef RDS_EXAMPLES_RDS_GTESTS_H +#define RDS_EXAMPLES_RDS_GTESTS_H + +#include +#include +#include +#include + +class MockHttpClient; + +class MockHttpClientFactory; + +namespace AwsDocTest { + + class MyStringBuffer : public std::stringbuf { + int underflow() override; + }; + + class RDS_GTests : public testing::Test { + protected: + + void SetUp() override; + + void TearDown() override; + + static void SetUpTestSuite(); + + static void TearDownTestSuite(); + + static Aws::String preconditionError(); + + void AddCommandLineResponses(const std::vector &responses); + + // s_clientConfig must be a pointer because the client config must be initialized + // after InitAPI. + static std::unique_ptr s_clientConfig; + + private: + static Aws::SDKOptions s_options; + + std::stringbuf m_coutBuffer; // Used to silence cout. + std::streambuf *m_savedBuffer = nullptr; + + MyStringBuffer m_cinBuffer; + std::streambuf *m_savedInBuffer = nullptr; + }; // RDS_GTests + + class MockHTTP { + public: + MockHTTP(); + + virtual ~MockHTTP(); + + bool addResponseWithBody(const std::string &fileName, + Aws::Http::HttpResponseCode httpResponseCode = Aws::Http::HttpResponseCode::OK); + + private: + + std::shared_ptr mockHttpClient; + std::shared_ptr mockHttpClientFactory; + std::shared_ptr requestTmp; + }; // MockHTTP + +} // AwsDocTest + +#endif //RDS_EXAMPLES_RDS_GTESTS_H diff --git a/cpp/example_code/rds/tests/test_main.cpp b/cpp/example_code/rds/tests/test_main.cpp new file mode 100644 index 00000000000..00ed3e2b055 --- /dev/null +++ b/cpp/example_code/rds/tests/test_main.cpp @@ -0,0 +1,11 @@ +/* + Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + SPDX-License-Identifier: Apache-2.0 +*/ + +#include "gtest/gtest.h" + +int main(int argc, char **argv) { + ::testing::InitGoogleTest(&argc, argv); + return RUN_ALL_TESTS(); +} From 1335bdcebb634828d6eef3d109464df568296fcf Mon Sep 17 00:00:00 2001 From: Thomas Kelly <45574081+kelly1266@users.noreply.github.com> Date: Mon, 20 Feb 2023 18:57:23 -0500 Subject: [PATCH 03/17] Fix comment describing function (#4407) Comment above main function doesnt accurately describe what the function is doing. --- go/example_code/dynamodb/DynamoDBScanItems.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/go/example_code/dynamodb/DynamoDBScanItems.go b/go/example_code/dynamodb/DynamoDBScanItems.go index 0ec41262ee6..3d3b81f6d1b 100644 --- a/go/example_code/dynamodb/DynamoDBScanItems.go +++ b/go/example_code/dynamodb/DynamoDBScanItems.go @@ -49,7 +49,7 @@ type Item struct { } // snippet-end:[dynamodb.go.scan_items.struct] -// Get the movies with a minimum rating of 8.0 in 2011 +// Get the movies with a minimum rating of 4.0 in 2013 func main() { // snippet-start:[dynamodb.go.scan_items.session] // Initialize a session that the SDK will use to load From 922d980688f2a9dd13798d7a84859613651f8ef7 Mon Sep 17 00:00:00 2001 From: Corey Pyle Date: Tue, 21 Feb 2023 12:07:07 -0500 Subject: [PATCH 04/17] EC2 MVP for JavaScript v3 (#4406) * move files and add to lerna * add Hello EC2 scenario * update create-key-pair, add test, onboard to sos * update describe-key-pairs, add test, onboard to sos * update create-security-group, add tests, onboard to sos * add authorize-security-group-ingress, add tests, onboard to sos * update describe-security-groups, add tests, onboard to sos * update describe-images, add tests, onboard to sos * add describe-instance-types, add tests, onboard to sos * update run-instances, add tests, onboard to sos, clean up * update describe-instances, add tests, onboard to sos * extract stop-instances to new file, add tests, onboard to sos * update start-instances, add tests, onboard to sos * update allocate-address, add tests, onboard to sos * add associate-address, add tests, onboard to sos * add disassociate-address, add tests, onboard to sos * update release-address, add tests, onboard to sos * add terminate instances, add tests, onboard to sos * update delete-security-group, add tests, onboard to sos * update delete-key-pair, add tests, onboard to sos * update describe-addresses, add tests, onboard to sos * update describe-regions, add tests, onboard to sos * update monitor instances, add tests, onboard to sos * add unmonitor instances, add tests, onboard to sos * update reboot instances, add tests, onboard to sos * add basic scenario, onboard to sos * update README and jinja templates * fix snippet spacing * fix textual faux pas --- .doc_gen/metadata/ec2_metadata.yaml | 234 +- .../readmes/includes/run_instructions.jinja2 | 22 + javascriptv3/README.md | 2 +- javascriptv3/example_code/ec2/README.md | 173 +- .../ec2/actions/allocate-address.js | 32 + .../ec2/actions/associate-address.js | 40 + .../authorize-security-group-ingress.js | 45 + .../ec2/actions/create-key-pair.js | 32 + .../ec2/actions/create-security-group.js | 33 + .../ec2/actions/delete-key-pair.js | 30 + .../ec2/actions/delete-security-group.js | 30 + .../ec2/actions/describe-addresses.js | 33 + .../ec2/actions/describe-images.js | 49 + .../ec2/actions/describe-instance-types.js | 54 + .../ec2/actions/describe-instances.js | 47 + .../ec2/actions/describe-key-pairs.js | 32 + .../ec2/actions/describe-regions.js | 44 + .../ec2/actions/describe-security-groups.js | 31 + .../ec2/actions/disassociate-address.js | 32 + .../ec2/actions/monitor-instances.js | 38 + .../ec2/actions/reboot-instances.js | 30 + .../ec2/actions/release-address.js | 31 + .../example_code/ec2/actions/run-instances.js | 41 + .../ec2/actions/start-instances.js | 35 + .../ec2/actions/stop-instances.js | 35 + .../ec2/actions/terminate-instances.js | 34 + .../ec2/actions/unmonitor-instances.js | 35 + javascriptv3/example_code/ec2/hello.js | 37 + javascriptv3/example_code/ec2/libs/client.js | 10 + javascriptv3/example_code/ec2/package.json | 23 +- .../example_code/ec2/scenarios/basic.js | 509 ++ .../ec2/src/ec2_allocateaddress.js | 55 - .../ec2/src/ec2_createinstances.js | 64 - .../example_code/ec2/src/ec2_createkeypair.js | 37 - .../ec2/src/ec2_createsecuritygroup.js | 88 - .../example_code/ec2/src/ec2_deletekeypair.js | 37 - .../ec2/src/ec2_deletesecuritygroup.js | 36 - .../ec2/src/ec2_describeaddresses.js | 37 - .../ec2/src/ec2_describeinstances.js | 31 - .../ec2/src/ec2_describekeypairs.js | 30 - .../ec2/src/ec2_describeregionsandzones.js | 31 - .../ec2/src/ec2_describesecuritygroups.js | 42 - .../ec2/src/ec2_monitorinstances.js | 52 - .../ec2/src/ec2_rebootinstances.js | 37 - .../ec2/src/ec2_releaseaddress.js | 38 - .../ec2/src/ec2_startstopinstances.js | 55 - .../example_code/ec2/src/libs/ec2Client.js | 21 - .../example_code/ec2/src/metadata.yaml | 52 - .../ec2/tests/allocate-address.unit.test.js | 47 + .../ec2/tests/associate-address.unit.test.js | 46 + ...horize-security-group-ingress.unit.test.js | 45 + .../ec2/tests/create-key-pair.unit.test.js | 42 + .../tests/create-security-group.unit.test.js | 44 + .../ec2/tests/delete-key-pair.unit.test.js | 41 + .../tests/delete-security-group.unit.test.js | 43 + .../ec2/tests/describe-addresses.unit.test.js | 50 + .../ec2/tests/describe-images.unit.test.js | 58 + .../describe-instance-types.unit.test.js | 56 + .../ec2/tests/describe-instances.unit.test.js | 52 + .../ec2/tests/describe-key-pairs.unit.test.js | 53 + .../ec2/tests/describe-regions.unit.test.js | 44 + .../describe-security-groups.unit.test.js | 52 + .../tests/disassociate-address.unit.test.js | 48 + .../example_code/ec2/tests/hello.unit.test.js | 53 + .../ec2/tests/monitor-instances.unit.test.js | 49 + .../ec2/tests/reboot-instances.unit.test.js | 46 + .../ec2/tests/release-address.unit.test.js | 48 + .../ec2/tests/run-instances.unit.test.js | 54 + .../ec2/tests/start-instances.unit.test.js | 49 + .../ec2/tests/stop-instances.unit.test.js | 49 + .../tests/terminate-instances.unit.test.js | 47 + .../tests/unmonitor-instances.unit.test.js | 49 + javascriptv3/package-lock.json | 5344 ++++++++++++++--- javascriptv3/package.json | 3 +- 74 files changed, 7357 insertions(+), 1751 deletions(-) create mode 100644 javascriptv3/example_code/ec2/actions/allocate-address.js create mode 100644 javascriptv3/example_code/ec2/actions/associate-address.js create mode 100644 javascriptv3/example_code/ec2/actions/authorize-security-group-ingress.js create mode 100644 javascriptv3/example_code/ec2/actions/create-key-pair.js create mode 100644 javascriptv3/example_code/ec2/actions/create-security-group.js create mode 100644 javascriptv3/example_code/ec2/actions/delete-key-pair.js create mode 100644 javascriptv3/example_code/ec2/actions/delete-security-group.js create mode 100644 javascriptv3/example_code/ec2/actions/describe-addresses.js create mode 100644 javascriptv3/example_code/ec2/actions/describe-images.js create mode 100644 javascriptv3/example_code/ec2/actions/describe-instance-types.js create mode 100644 javascriptv3/example_code/ec2/actions/describe-instances.js create mode 100644 javascriptv3/example_code/ec2/actions/describe-key-pairs.js create mode 100644 javascriptv3/example_code/ec2/actions/describe-regions.js create mode 100644 javascriptv3/example_code/ec2/actions/describe-security-groups.js create mode 100644 javascriptv3/example_code/ec2/actions/disassociate-address.js create mode 100644 javascriptv3/example_code/ec2/actions/monitor-instances.js create mode 100644 javascriptv3/example_code/ec2/actions/reboot-instances.js create mode 100644 javascriptv3/example_code/ec2/actions/release-address.js create mode 100644 javascriptv3/example_code/ec2/actions/run-instances.js create mode 100644 javascriptv3/example_code/ec2/actions/start-instances.js create mode 100644 javascriptv3/example_code/ec2/actions/stop-instances.js create mode 100644 javascriptv3/example_code/ec2/actions/terminate-instances.js create mode 100644 javascriptv3/example_code/ec2/actions/unmonitor-instances.js create mode 100644 javascriptv3/example_code/ec2/hello.js create mode 100644 javascriptv3/example_code/ec2/libs/client.js create mode 100644 javascriptv3/example_code/ec2/scenarios/basic.js delete mode 100644 javascriptv3/example_code/ec2/src/ec2_allocateaddress.js delete mode 100644 javascriptv3/example_code/ec2/src/ec2_createinstances.js delete mode 100644 javascriptv3/example_code/ec2/src/ec2_createkeypair.js delete mode 100644 javascriptv3/example_code/ec2/src/ec2_createsecuritygroup.js delete mode 100644 javascriptv3/example_code/ec2/src/ec2_deletekeypair.js delete mode 100644 javascriptv3/example_code/ec2/src/ec2_deletesecuritygroup.js delete mode 100644 javascriptv3/example_code/ec2/src/ec2_describeaddresses.js delete mode 100644 javascriptv3/example_code/ec2/src/ec2_describeinstances.js delete mode 100644 javascriptv3/example_code/ec2/src/ec2_describekeypairs.js delete mode 100644 javascriptv3/example_code/ec2/src/ec2_describeregionsandzones.js delete mode 100644 javascriptv3/example_code/ec2/src/ec2_describesecuritygroups.js delete mode 100644 javascriptv3/example_code/ec2/src/ec2_monitorinstances.js delete mode 100644 javascriptv3/example_code/ec2/src/ec2_rebootinstances.js delete mode 100644 javascriptv3/example_code/ec2/src/ec2_releaseaddress.js delete mode 100644 javascriptv3/example_code/ec2/src/ec2_startstopinstances.js delete mode 100644 javascriptv3/example_code/ec2/src/libs/ec2Client.js delete mode 100644 javascriptv3/example_code/ec2/src/metadata.yaml create mode 100644 javascriptv3/example_code/ec2/tests/allocate-address.unit.test.js create mode 100644 javascriptv3/example_code/ec2/tests/associate-address.unit.test.js create mode 100644 javascriptv3/example_code/ec2/tests/authorize-security-group-ingress.unit.test.js create mode 100644 javascriptv3/example_code/ec2/tests/create-key-pair.unit.test.js create mode 100644 javascriptv3/example_code/ec2/tests/create-security-group.unit.test.js create mode 100644 javascriptv3/example_code/ec2/tests/delete-key-pair.unit.test.js create mode 100644 javascriptv3/example_code/ec2/tests/delete-security-group.unit.test.js create mode 100644 javascriptv3/example_code/ec2/tests/describe-addresses.unit.test.js create mode 100644 javascriptv3/example_code/ec2/tests/describe-images.unit.test.js create mode 100644 javascriptv3/example_code/ec2/tests/describe-instance-types.unit.test.js create mode 100644 javascriptv3/example_code/ec2/tests/describe-instances.unit.test.js create mode 100644 javascriptv3/example_code/ec2/tests/describe-key-pairs.unit.test.js create mode 100644 javascriptv3/example_code/ec2/tests/describe-regions.unit.test.js create mode 100644 javascriptv3/example_code/ec2/tests/describe-security-groups.unit.test.js create mode 100644 javascriptv3/example_code/ec2/tests/disassociate-address.unit.test.js create mode 100644 javascriptv3/example_code/ec2/tests/hello.unit.test.js create mode 100644 javascriptv3/example_code/ec2/tests/monitor-instances.unit.test.js create mode 100644 javascriptv3/example_code/ec2/tests/reboot-instances.unit.test.js create mode 100644 javascriptv3/example_code/ec2/tests/release-address.unit.test.js create mode 100644 javascriptv3/example_code/ec2/tests/run-instances.unit.test.js create mode 100644 javascriptv3/example_code/ec2/tests/start-instances.unit.test.js create mode 100644 javascriptv3/example_code/ec2/tests/stop-instances.unit.test.js create mode 100644 javascriptv3/example_code/ec2/tests/terminate-instances.unit.test.js create mode 100644 javascriptv3/example_code/ec2/tests/unmonitor-instances.unit.test.js diff --git a/.doc_gen/metadata/ec2_metadata.yaml b/.doc_gen/metadata/ec2_metadata.yaml index ac08540af85..b3964834edb 100644 --- a/.doc_gen/metadata/ec2_metadata.yaml +++ b/.doc_gen/metadata/ec2_metadata.yaml @@ -40,6 +40,15 @@ ec2_Hello: - description: snippet_tags: - python.example_code.ec2.Hello + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/ec2 + sdkguide: + excerpts: + - description: + snippet_tags: + - javascript.v3.ec2.scenarios.Hello services: ec2: {DescribeSecurityGroups} ec2_CreateKeyPair: @@ -85,6 +94,15 @@ ec2_CreateKeyPair: snippet_tags: - python.example_code.ec2.KeyPairWrapper.decl - python.example_code.ec2.CreateKeyPair + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/ec2 + sdkguide: + excerpts: + - description: + snippet_tags: + - ec2.JavaScript.keypairs.createKeyPairV3 SAP ABAP: versions: - sdk_version: 1 @@ -138,6 +156,15 @@ ec2_DescribeKeyPairs: snippet_tags: - python.example_code.ec2.KeyPairWrapper.decl - python.example_code.ec2.DescribeKeyPairs + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/ec2 + sdkguide: + excerpts: + - description: + snippet_tags: + - ec2.JavaScript.keypairs.describeKeyPairV3 SAP ABAP: versions: - sdk_version: 1 @@ -192,6 +219,15 @@ ec2_CreateSecurityGroup: snippet_tags: - python.example_code.ec2.SecurityGroupWrapper.decl - python.example_code.ec2.CreateSecurityGroup + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/ec2 + sdkguide: + excerpts: + - description: + snippet_tags: + - ec2.JavaScript.SecurityGroups.createSecurityGroupV3 SAP ABAP: versions: - sdk_version: 1 @@ -245,6 +281,15 @@ ec2_RunInstances: snippet_tags: - python.example_code.ec2.InstanceWrapper.decl - python.example_code.ec2.RunInstances + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/ec2 + sdkguide: + excerpts: + - description: + snippet_tags: + - ec2.JavaScript.Instances.create_instancesV3 SAP ABAP: versions: - sdk_version: 1 @@ -318,6 +363,15 @@ ec2_StartInstances: snippet_tags: - python.example_code.ec2.InstanceWrapper.decl - python.example_code.ec2.StartInstances + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/ec2 + sdkguide: + excerpts: + - description: + snippet_tags: + - ec2.JavaScript.Instances.start_stopInstancesV3 Rust: versions: - sdk_version: 1 @@ -379,6 +433,15 @@ ec2_StopInstances: snippet_tags: - python.example_code.ec2.InstanceWrapper.decl - python.example_code.ec2.StopInstances + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/ec2 + sdkguide: + excerpts: + - description: + snippet_tags: + - javascript.v3.ec2.actions.StopInstances Rust: versions: - sdk_version: 1 @@ -440,6 +503,15 @@ ec2_AllocateAddress: snippet_tags: - python.example_code.ec2.ElasticIpWrapper.decl - python.example_code.ec2.AllocateAddress + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/ec2 + sdkguide: + excerpts: + - description: + snippet_tags: + - ec2.JavaScript.Addresses.allocateAddressV3 SAP ABAP: versions: - sdk_version: 1 @@ -493,6 +565,15 @@ ec2_AssociateAddress: snippet_tags: - python.example_code.ec2.ElasticIpWrapper.decl - python.example_code.ec2.AssociateAddress + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/ec2 + sdkguide: + excerpts: + - description: + snippet_tags: + - javascript.v3.ec2.actions.AssociateAddress SAP ABAP: versions: - sdk_version: 1 @@ -546,6 +627,15 @@ ec2_DisassociateAddress: snippet_tags: - python.example_code.ec2.ElasticIpWrapper.decl - python.example_code.ec2.DisassociateAddress + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/ec2 + sdkguide: + excerpts: + - description: + snippet_tags: + - javascript.v3.ec2.actions.DisassociateAddress services: ec2: {DisassociateAddress} ec2_ReleaseAddress: @@ -591,6 +681,15 @@ ec2_ReleaseAddress: snippet_tags: - python.example_code.ec2.ElasticIpWrapper.decl - python.example_code.ec2.ReleaseAddress + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/ec2 + sdkguide: + excerpts: + - description: + snippet_tags: + - ec2.JavaScript.Addresses.releaseAddressV3 SAP ABAP: versions: - sdk_version: 1 @@ -644,6 +743,15 @@ ec2_AuthorizeSecurityGroupIngress: snippet_tags: - python.example_code.ec2.SecurityGroupWrapper.decl - python.example_code.ec2.AuthorizeSecurityGroupIngress + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/ec2 + sdkguide: + excerpts: + - description: + snippet_tags: + - javascript.v3.ec2.actions.AuthorizeSecurityGroupIngress services: ec2: {AuthorizeSecurityGroupIngress} ec2_DeleteKeyPair: @@ -689,6 +797,15 @@ ec2_DeleteKeyPair: snippet_tags: - python.example_code.ec2.KeyPairWrapper.decl - python.example_code.ec2.DeleteKeyPair + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/ec2 + sdkguide: + excerpts: + - description: + snippet_tags: + - ec2.JavaScript.keypairs.deleteKeyPairV3 SAP ABAP: versions: - sdk_version: 1 @@ -742,6 +859,15 @@ ec2_DescribeSecurityGroups: snippet_tags: - python.example_code.ec2.SecurityGroupWrapper.decl - python.example_code.ec2.DescribeSecurityGroups + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/ec2 + sdkguide: + excerpts: + - description: + snippet_tags: + - ec2.JavaScript.SecurityGroups.describeSecurityGroupsV3 SAP ABAP: versions: - sdk_version: 1 @@ -795,6 +921,15 @@ ec2_DeleteSecurityGroup: snippet_tags: - python.example_code.ec2.SecurityGroupWrapper.decl - python.example_code.ec2.DeleteSecurityGroup + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/ec2 + sdkguide: + excerpts: + - description: + snippet_tags: + - ec2.JavaScript.SecurityGroups.deleteSecurityGroupV3 SAP ABAP: versions: - sdk_version: 1 @@ -883,6 +1018,15 @@ ec2_TerminateInstances: snippet_tags: - python.example_code.ec2.InstanceWrapper.decl - python.example_code.ec2.TerminateInstances + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/ec2 + sdkguide: + excerpts: + - description: + snippet_tags: + - javascript.v2.ec2.actions.TerminateInstances services: ec2: {TerminateInstances} ec2_DescribeInstances: @@ -927,6 +1071,14 @@ ec2_DescribeInstances: snippet_tags: - python.example_code.ec2.InstanceWrapper.decl - python.example_code.ec2.DescribeInstances + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/ec2 + excerpts: + - description: + snippet_tags: + - ec2.JavaScript.Instances.describeInstancesV3 Rust: versions: - sdk_version: 1 @@ -959,6 +1111,15 @@ ec2_DescribeRegions: - description: snippet_tags: - ec2.rust.ec2-helloworld + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/ec2 + sdkguide: + excerpts: + - description: + snippet_tags: + - ec2.JavaScript.Regions.describeRegionsV3 SAP ABAP: versions: - sdk_version: 1 @@ -999,6 +1160,15 @@ ec2_MonitorInstances: - description: snippet_tags: - ec2.rust.monitor-instance + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/ec2 + sdkguide: + excerpts: + - description: + snippet_tags: + - ec2.JavaScript.Instances.monitorInstancesV3 SAP ABAP: versions: - sdk_version: 1 @@ -1009,6 +1179,23 @@ ec2_MonitorInstances: - ec2.abapv1.monitor_instance services: ec2: {MonitorInstances} +ec2_UnmonitorInstances: + title: Disable detailed monitoring for an &EC2; instance using an &AWS; SDK + title_abbrev: Disable detailed monitoring + synopsis: disable detailed monitoring on an &EC2; instance. + category: + languages: + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/ec2 + sdkguide: + excerpts: + - description: + snippet_tags: + - javascript.v3.ec2.actions.UnmonitorInstances + services: + ec2: {UnmonitorInstances} ec2_RebootInstances: title: Reboot an &EC2; instance using an &AWS; SDK title_abbrev: Reboot an instance @@ -1032,6 +1219,15 @@ ec2_RebootInstances: - description: snippet_tags: - ec2.rust.reboot-instance + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/ec2 + sdkguide: + excerpts: + - description: + snippet_tags: + - ec2.JavaScript.Instances.rebootInstancesV3 SAP ABAP: versions: - sdk_version: 1 @@ -1075,6 +1271,15 @@ ec2_DescribeImages: snippet_tags: - python.example_code.ec2.InstanceWrapper.decl - python.example_code.ec2.DescribeImages + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/ec2 + sdkguide: + excerpts: + - description: + snippet_tags: + - javascript.v3.ec2.actions.DescribeImages services: ec2: {DescribeImages} ec2_DescribeInstanceTypes: @@ -1120,6 +1325,15 @@ ec2_DescribeInstanceTypes: snippet_tags: - python.example_code.ec2.InstanceWrapper.decl - python.example_code.ec2.DescribeInstanceTypes + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/ec2 + sdkguide: + excerpts: + - description: + snippet_tags: + - javascript.v3.ec2.actions.DescribeInstanceTypes services: ec2: {DescribeInstanceTypes} ec2_DescribeAddresses: @@ -1128,6 +1342,15 @@ ec2_DescribeAddresses: synopsis: get details about Elastic IP addresses. category: languages: + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/ec2 + sdkguide: + excerpts: + - description: + snippet_tags: + - ec2.JavaScript.Addresses.describeAddressesV3 SAP ABAP: versions: - sdk_version: 1 @@ -1223,8 +1446,17 @@ ec2_Scenario_GetStartedInstances: - description: Define a class that wraps Elastic IP actions. snippet_tags: - python.example_code.ec2.ElasticIpWrapper.class + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/ec2 + sdkguide: + excerpts: + - description: Run an interactive scenario at a command prompt. + snippet_tags: + - javascript.v3.ec2.scenarios.basic services: ec2: {AllocateAddress, AssociateAddress, AuthorizeSecurityGroupIngress, CreateKeyPair, CreateSecurityGroup, DeleteKeyPair, DeleteSecurityGroup, DescribeImages, DescribeInstanceTypes, DescribeInstances, DescribeKeyPairs, DescribeSecurityGroups, DisassociateAddress, - ReleaseAddress, RunInstances, StartInstances, StopInstances, TerminateInstances} + ReleaseAddress, RunInstances, StartInstances, StopInstances, TerminateInstances, UnmonitorInstances} diff --git a/.doc_gen/readmes/includes/run_instructions.jinja2 b/.doc_gen/readmes/includes/run_instructions.jinja2 index 37d4af40722..19c2953dfbf 100644 --- a/.doc_gen/readmes/includes/run_instructions.jinja2 +++ b/.doc_gen/readmes/includes/run_instructions.jinja2 @@ -1,5 +1,22 @@ ### Instructions +{% if lang_config['name'] == 'JavaScript' and lang_config['sdk_ver'] == 3 %} +**Note**: All code examples are written in ECMAscript 6 (ES6). For guidelines on converting to CommonJS, see +[JavaScript ES6/CommonJS syntax](https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/sdk-examples-javascript-syntax.html). + +**Run a single action** + +```bash +node ./actions/ +``` + +**Run a scenario** + +```bash +node ./scenarios/ +``` +{% endif %} + {{ customs['instructions'] -}} @@ -14,6 +31,11 @@ This example shows you how to {{ hello_ex['synopsis'] }} go run ./hello ``` {% endif %} +{% if lang_config['name'] == 'JavaScript' and lang_config['sdk_ver'] == 3 %} +```bash +node ./hello.js +``` +{% endif %} {% endfor %} {% for scenario in scenarios %} diff --git a/javascriptv3/README.md b/javascriptv3/README.md index 2c089796cf9..0cb211cff20 100644 --- a/javascriptv3/README.md +++ b/javascriptv3/README.md @@ -30,8 +30,8 @@ Cross-service examples are located in the [_cross-services folder_](./example_co ### Prerequisites - Install the latest stable version of Node.js. - - Set up a shared configuration file with your credentials. For more information, see the [AWS SDK for JavaScript (v3) Developer Guide](https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/loading-node-credentials-shared.html). +- Install dependencies by running `npm i` ## Tests diff --git a/javascriptv3/example_code/ec2/README.md b/javascriptv3/example_code/ec2/README.md index 6efd2db4038..7e7b3ddaabb 100644 --- a/javascriptv3/example_code/ec2/README.md +++ b/javascriptv3/example_code/ec2/README.md @@ -1,53 +1,140 @@ -# Amazon Elastic Computing (Amazon EC2) JavaScript SDK v3 code examples -Amazon EC2 is a web service that provides secure, resizable compute capacity in the cloud. -It is designed to make web-scale cloud computing easier for developers. + +# Amazon EC2 code examples for the SDK for JavaScript V3 + +## Overview + +Shows how to use the AWS SDK for JavaScript V3 to work with Amazon Elastic Compute Cloud (Amazon EC2). + + + + +*Amazon EC2 is a web service that provides resizable computing capacity—literally, servers in Amazon's data centers—that you use to build and host your software systems.* + +## ⚠ Important + +* Running this code might result in charges to your AWS account. +* Running the tests might result in charges to your AWS account. +* We recommend that you grant your code least privilege. At most, grant only the minimum permissions required to perform the task. For more information, see [Grant least privilege](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege). +* This code is not tested in every AWS Region. For more information, see [AWS Regional Services](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services). + + + ## Code examples -This is a workspace where you can find the following AWS SDK for JavaScript version 3 (v3) Amazon EC2 examples: - -- [Allocate addresses](src/ec2_allocateaddress.js) -- [Create instances](src/ec2_createinstances.js) -- [Create a key pair](src/ec2_createkeypair.js) -- [Create a security group](src/ec2_createsecuritygroup.js) -- [Delete a key pair](src/ec2_deletekeypair.js) -- [Delete a security group](src/ec2_deletesecuritygroup.js) -- [Describe addresses](src/ec2_describeaddresses.js) -- [Describe instances](src/ec2_describeinstances.js) -- [Describe regions and zones](src/ec2_describeregionsandzones.js) -- [Describe security groups](src/ec2_describesecuritygroups.js) -- [Monitor instances](src/ec2_monitorinstances.js) -- [Reboot instances](src/ec2_rebootinstances.js) -- [Release addresses](src/ec2_releaseaddress.js) -- [Stop/start instances](src/ec2_startstopinstances.js) - -**Note**: All code examples are written in ECMAscript 6 (ES6). For guidelines on converting to CommonJS, see -[JavaScript ES6/CommonJS syntax](https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/sdk-example-javascript-syntax.html). - -## Getting started - -1. Clone the [AWS Code Samples repo](https://github.com/awsdocs/aws-doc-sdk-examples) to your local environment. - See [the Github documentation](https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/cloning-a-repository) for - instructions. - -2. Install the dependencies listed in the package.json. +### Get started + +* [Hello Amazon EC2](hello.js#L8) (`DescribeSecurityGroups`) + +### Single actions + +Code excerpts that show you how to call individual service functions. + +* [Allocate an Elastic IP address](actions/allocate-address.js#L8) (`AllocateAddress`) +* [Associate an Elastic IP address with an instance](actions/associate-address.js#L8) (`AssociateAddress`) +* [Create a security group](actions/create-security-group.js#L8) (`CreateSecurityGroup`) +* [Create a security key pair](actions/create-key-pair.js#L8) (`CreateKeyPair`) +* [Create and run an instance](actions/run-instances.js#L8) (`RunInstances`) +* [Delete a security group](actions/delete-security-group.js#L8) (`DeleteSecurityGroup`) +* [Delete a security key pair](actions/delete-key-pair.js#L8) (`DeleteKeyPair`) +* [Describe Regions](actions/describe-regions.js#L8) (`DescribeRegions`) +* [Describe instances](actions/describe-instances.js#L8) (`DescribeInstances`) +* [Disable detailed monitoring](actions/unmonitor-instances.js#L8) (`UnmonitorInstances`) +* [Disassociate an Elastic IP address from an instance](actions/disassociate-address.js#L8) (`DisassociateAddress`) +* [Enable monitoring](actions/monitor-instances.js#L8) (`MonitorInstances`) +* [Get data about Amazon Machine Images](actions/describe-images.js#L8) (`DescribeImages`) +* [Get data about a security group](actions/describe-security-groups.js#L8) (`DescribeSecurityGroups`) +* [Get data about instance types](actions/describe-instance-types.js#L8) (`DescribeInstanceTypes`) +* [Get details about Elastic IP addresses](actions/describe-addresses.js#L8) (`DescribeAddresses`) +* [List security key pairs](actions/describe-key-pairs.js#L8) (`DescribeKeyPairs`) +* [Reboot an instance](actions/reboot-instances.js#L8) (`RebootInstances`) +* [Release an Elastic IP address](actions/release-address.js#L8) (`ReleaseAddress`) +* [Set inbound rules for a security group](actions/authorize-security-group-ingress.js#L8) (`AuthorizeSecurityGroupIngress`) +* [Start an instance](actions/start-instances.js#L8) (`StartInstances`) +* [Stop an instance](actions/stop-instances.js#L8) (`StopInstances`) +* [Terminate an instance](actions/terminate-instances.js#L8) (`TerminateInstances`) + +### Scenarios + +Code examples that show you how to accomplish a specific task by calling multiple +functions within the same service. + +* [Get started with instances](scenarios/basic.js) + +## Run the examples + +### Prerequisites + +For prerequisites, see the [README](../../README.md#Prerequisites) in the `javascriptv3` folder. + + + + +### Instructions + +**Note**: All code examples are written in ECMAscript 6 (ES6). For guidelines on converting to CommonJS, see +[JavaScript ES6/CommonJS syntax](https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/sdk-examples-javascript-syntax.html). + +**Run a single action** + +```bash +node ./actions/ ``` -npm install node -g -cd javascriptv3/example_code/ec2 -npm install -``` -3. In your text editor, update user variables specified in the ```Inputs``` section of the sample file. -4. Run sample code: +**Run a scenario** + +```bash +node ./scenarios/ ``` -cd src -node [example name].js // For example, node ec2_allocateaddress.js + + + + +#### Hello Amazon EC2 + +This example shows you how to get started using Amazon Elastic Compute Cloud (Amazon EC2). + +```bash +node ./hello.js ``` -## Resources -- [AWS SDK for JavaScript v3](https://github.com/aws/aws-sdk-js-v3) -- [AWS SDK for JavaScript v3 Developer Guide](https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/ec2-examples.html) -- [AWS SDK for JavaScript v3 API Reference Guide](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-ec2/index.html) - +#### Get started with instances + +This example shows you how to do the following: + +* Create a key pair that is used to secure SSH communication between your computer and an EC2 instance. +* Create a security group that acts as a virtual firewall for your EC2 instances to control incoming and outgoing traffic. +* Find an Amazon Machine Image (AMI) and a compatible instance type. +* Create an instance that is created from the instance type and AMI you select, and is configured to use the security group and key pair created in this example. +* Stop and restart the instance. +* Create an Elastic IP address and associate it as a consistent IP address for your instance. +* Connect to your instance with SSH, using both its public IP address and your Elastic IP address. +* Clean up all of the resources created by this example. + + + + +### Tests + +⚠ Running tests might result in charges to your AWS account. + +To find instructions for running these tests, see the [README](../../README.md#Tests) +in the `javascriptv3` folder. + + + + +## Additional resources + +* [Amazon EC2 User Guide](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts.html) +* [Amazon EC2 API Reference](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Welcome.html) +* [SDK for JavaScript V3 Amazon EC2 reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-ec2/index.html) + + + + +--- +Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +SPDX-License-Identifier: Apache-2.0 \ No newline at end of file diff --git a/javascriptv3/example_code/ec2/actions/allocate-address.js b/javascriptv3/example_code/ec2/actions/allocate-address.js new file mode 100644 index 00000000000..04db4be59c7 --- /dev/null +++ b/javascriptv3/example_code/ec2/actions/allocate-address.js @@ -0,0 +1,32 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[ec2.JavaScript.Addresses.allocateAddressV3] +import { AllocateAddressCommand } from "@aws-sdk/client-ec2"; + +import { client } from "../libs/client.js"; + +export const main = async () => { + const command = new AllocateAddressCommand({}); + + try { + const { AllocationId, PublicIp } = await client.send(command); + console.log("A new IP address has been allocated to your account:"); + console.log(`ID: ${AllocationId} Public IP: ${PublicIp}`); + console.log( + "You can view your IP addresses in the AWS Management Console for Amazon EC2. Look under Network & Security > Elastic IPs" + ); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[ec2.JavaScript.Addresses.allocateAddressV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/ec2/actions/associate-address.js b/javascriptv3/example_code/ec2/actions/associate-address.js new file mode 100644 index 00000000000..0a3558529a0 --- /dev/null +++ b/javascriptv3/example_code/ec2/actions/associate-address.js @@ -0,0 +1,40 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[javascript.v3.ec2.actions.AssociateAddress] +import { AssociateAddressCommand } from "@aws-sdk/client-ec2"; + +import { client } from "../libs/client.js"; + +export const main = async () => { + // You need to allocate an Elastic IP address before associating it with an instance. + // You can do that with the AllocateAddressCommand. + const allocationId = "ALLOCATION_ID"; + // You need to create an EC2 instance before an IP address can be associated with it. + // You can do that with the RunInstancesCommand. + const instanceId = "INSTANCE_ID"; + const command = new AssociateAddressCommand({ + AllocationId: allocationId, + InstanceId: instanceId, + }); + + try { + const { AssociationId } = await client.send(command); + console.log( + `Address with allocation ID ${allocationId} is now associated with instance ${instanceId}.`, + `The association ID is ${AssociationId}.` + ); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[javascript.v3.ec2.actions.AssociateAddress] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/ec2/actions/authorize-security-group-ingress.js b/javascriptv3/example_code/ec2/actions/authorize-security-group-ingress.js new file mode 100644 index 00000000000..ef77329340b --- /dev/null +++ b/javascriptv3/example_code/ec2/actions/authorize-security-group-ingress.js @@ -0,0 +1,45 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[javascript.v3.ec2.actions.AuthorizeSecurityGroupIngress] +import { AuthorizeSecurityGroupIngressCommand } from "@aws-sdk/client-ec2"; + +import { client } from "../libs/client.js"; + +// Grant permissions for a single IP address to ssh into instances +// within the provided security group. +export const main = async () => { + const command = new AuthorizeSecurityGroupIngressCommand({ + // Replace with a security group ID from the AWS console or + // the DescribeSecurityGroupsCommand. + GroupId: "SECURITY_GROUP_ID", + IpPermissions: [ + { + IpProtocol: "tcp", + FromPort: 22, + ToPort: 22, + // Replace 0.0.0.0 with the IP address to authorize. + // For more information on this notation, see + // https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing#CIDR_notation + IpRanges: [{ CidrIp: "0.0.0.0/32" }], + }, + ], + }); + + try { + const { SecurityGroupRules } = await client.send(command); + console.log(JSON.stringify(SecurityGroupRules, null, 2)); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[javascript.v3.ec2.actions.AuthorizeSecurityGroupIngress] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/ec2/actions/create-key-pair.js b/javascriptv3/example_code/ec2/actions/create-key-pair.js new file mode 100644 index 00000000000..ed825057a91 --- /dev/null +++ b/javascriptv3/example_code/ec2/actions/create-key-pair.js @@ -0,0 +1,32 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[ec2.JavaScript.keypairs.createKeyPairV3] +import { CreateKeyPairCommand } from "@aws-sdk/client-ec2"; + +import { client } from "../libs/client.js"; + +export const main = async () => { + try { + // Create a key pair in Amazon EC2. + const { KeyMaterial, KeyName } = await client.send( + // A unique name for the key pair. Up to 255 ASCII characters. + new CreateKeyPairCommand({ KeyName: "KEY_PAIR_NAME" }) + ); + // This logs your private key. Be sure to save it. + console.log(KeyName); + console.log(KeyMaterial); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[ec2.JavaScript.keypairs.createKeyPairV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/ec2/actions/create-security-group.js b/javascriptv3/example_code/ec2/actions/create-security-group.js new file mode 100644 index 00000000000..eaa4d665e1f --- /dev/null +++ b/javascriptv3/example_code/ec2/actions/create-security-group.js @@ -0,0 +1,33 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[ec2.JavaScript.SecurityGroups.createSecurityGroupV3] +import { CreateSecurityGroupCommand } from "@aws-sdk/client-ec2"; + +import { client } from "../libs/client.js"; + +export const main = async () => { + const command = new CreateSecurityGroupCommand({ + // Up to 255 characters in length. Cannot start with sg-. + GroupName: "SECURITY_GROUP_NAME", + // Up to 255 characters in length. + Description: "DESCRIPTION", + }); + + try { + const { GroupId } = await client.send(command); + console.log(GroupId); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[ec2.JavaScript.SecurityGroups.createSecurityGroupV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/ec2/actions/delete-key-pair.js b/javascriptv3/example_code/ec2/actions/delete-key-pair.js new file mode 100644 index 00000000000..5dd7292896d --- /dev/null +++ b/javascriptv3/example_code/ec2/actions/delete-key-pair.js @@ -0,0 +1,30 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[ec2.JavaScript.keypairs.deleteKeyPairV3] +import { DeleteKeyPairCommand } from "@aws-sdk/client-ec2"; + +import { client } from "../libs/client.js"; + +export const main = async () => { + const command = new DeleteKeyPairCommand({ + KeyName: "KEY_PAIR_NAME", + }); + + try { + await client.send(command); + console.log("Successfully deleted key pair."); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[ec2.JavaScript.keypairs.deleteKeyPairV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/ec2/actions/delete-security-group.js b/javascriptv3/example_code/ec2/actions/delete-security-group.js new file mode 100644 index 00000000000..0100a63cd97 --- /dev/null +++ b/javascriptv3/example_code/ec2/actions/delete-security-group.js @@ -0,0 +1,30 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[ec2.JavaScript.SecurityGroups.deleteSecurityGroupV3] +import { DeleteSecurityGroupCommand } from "@aws-sdk/client-ec2"; + +import { client } from "../libs/client.js"; + +export const main = async () => { + const command = new DeleteSecurityGroupCommand({ + GroupId: "GROUP_ID", + }); + + try { + await client.send(command); + console.log("Security group deleted successfully."); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[ec2.JavaScript.SecurityGroups.deleteSecurityGroupV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/ec2/actions/describe-addresses.js b/javascriptv3/example_code/ec2/actions/describe-addresses.js new file mode 100644 index 00000000000..e27ee41a771 --- /dev/null +++ b/javascriptv3/example_code/ec2/actions/describe-addresses.js @@ -0,0 +1,33 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[ec2.JavaScript.Addresses.describeAddressesV3] +import { DescribeAddressesCommand } from "@aws-sdk/client-ec2"; + +import { client } from "../libs/client.js"; + +export const main = async () => { + const command = new DescribeAddressesCommand({ + // You can omit this property to show all addresses. + AllocationIds: ["ALLOCATION_ID"], + }); + + try { + const { Addresses } = await client.send(command); + const addressList = Addresses.map((address) => ` • ${address.PublicIp}`); + console.log("Elastic IP addresses:"); + console.log(addressList.join("\n")); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[ec2.JavaScript.Addresses.describeAddressesV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/ec2/actions/describe-images.js b/javascriptv3/example_code/ec2/actions/describe-images.js new file mode 100644 index 00000000000..596f4086cd8 --- /dev/null +++ b/javascriptv3/example_code/ec2/actions/describe-images.js @@ -0,0 +1,49 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[javascript.v3.ec2.actions.DescribeImages] +import { paginateDescribeImages } from "@aws-sdk/client-ec2"; + +import { client } from "../libs/client.js"; + +// List at least the first i386 image available for EC2 instances. +export const main = async () => { + // The paginate function is a wrapper around the base command. + const paginator = paginateDescribeImages( + // Without limiting the page size, this call can take a long time. pageSize is just sugar for + // the MaxResults property in the base command. + { client, pageSize: 25 }, + { + // There are almost 70,000 images available. Be specific with your filtering + // to increase efficiency. + // See https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-ec2/interfaces/describeimagescommandinput.html#filters + Filters: [{ Name: "architecture", Values: ["x86_64"] }], + } + ); + + try { + const arm64Images = []; + for await (const page of paginator) { + if (page.Images.length) { + arm64Images.push(...page.Images); + // Once we have at least 1 result, we can stop. + if (arm64Images.length >= 1) { + break; + } + } + } + console.log(arm64Images); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[javascript.v3.ec2.actions.DescribeImages] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/ec2/actions/describe-instance-types.js b/javascriptv3/example_code/ec2/actions/describe-instance-types.js new file mode 100644 index 00000000000..b213014e407 --- /dev/null +++ b/javascriptv3/example_code/ec2/actions/describe-instance-types.js @@ -0,0 +1,54 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[javascript.v3.ec2.actions.DescribeInstanceTypes] +import { + paginateDescribeInstanceTypes, + DescribeInstanceTypesCommand, +} from "@aws-sdk/client-ec2"; + +import { client } from "../libs/client.js"; + +// List at least the first arm64 EC2 instance type available. +export const main = async () => { + // The paginate function is a wrapper around the underlying command. + const paginator = paginateDescribeInstanceTypes( + // Without limiting the page size, this call can take a long time. pageSize is just sugar for + // the MaxResults property in the underlying command. + { client, pageSize: 25 }, + { + Filters: [ + { Name: "processor-info.supported-architecture", Values: ["x86_64"] }, + { Name: "free-tier-eligible", Values: ["true"] }, + ], + } + ); + + try { + const instanceTypes = []; + + for await (const page of paginator) { + if (page.InstanceTypes.length) { + instanceTypes.push(...page.InstanceTypes); + + // When we have at least 1 result, we can stop. + if (instanceTypes.length >= 1) { + break; + } + } + } + console.log(instanceTypes); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[javascript.v3.ec2.actions.DescribeInstanceTypes] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/ec2/actions/describe-instances.js b/javascriptv3/example_code/ec2/actions/describe-instances.js new file mode 100644 index 00000000000..2ec9a4d250c --- /dev/null +++ b/javascriptv3/example_code/ec2/actions/describe-instances.js @@ -0,0 +1,47 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[ec2.JavaScript.Instances.describeInstancesV3] +import { DescribeInstancesCommand } from "@aws-sdk/client-ec2"; + +import { client } from "../libs/client.js"; + +// List all of your EC2 instances running with x86_64 architecture that were +// launched this month. +export const main = async () => { + const d = new Date(); + const year = d.getFullYear(); + const month = `0${d.getMonth() + 1}`.slice(-2); + const launchTimePattern = `${year}-${month}-*`; + const command = new DescribeInstancesCommand({ + Filters: [ + { Name: "architecture", Values: ["x86_64"] }, + { Name: "instance-state-name", Values: ["running"] }, + { + Name: "launch-time", + Values: [launchTimePattern], + }, + ], + }); + + try { + const { Reservations } = await client.send(command); + const instanceList = Reservations.reduce((prev, current) => { + return prev.concat(current.Instances); + }, []); + + console.log(instanceList); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[ec2.JavaScript.Instances.describeInstancesV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/ec2/actions/describe-key-pairs.js b/javascriptv3/example_code/ec2/actions/describe-key-pairs.js new file mode 100644 index 00000000000..819fe9748ac --- /dev/null +++ b/javascriptv3/example_code/ec2/actions/describe-key-pairs.js @@ -0,0 +1,32 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[ec2.JavaScript.keypairs.describeKeyPairV3] +import { DescribeKeyPairsCommand } from "@aws-sdk/client-ec2"; + +import { client } from "../libs/client.js"; + +export const main = async () => { + const command = new DescribeKeyPairsCommand({}); + + try { + const { KeyPairs } = await client.send(command); + const keyPairList = KeyPairs.map( + (kp) => ` • ${kp.KeyPairId}: ${kp.KeyName}` + ).join("\n"); + console.log("The following key pairs were found in your account:"); + console.log(keyPairList); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[ec2.JavaScript.keypairs.describeKeyPairV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/ec2/actions/describe-regions.js b/javascriptv3/example_code/ec2/actions/describe-regions.js new file mode 100644 index 00000000000..de843000ab3 --- /dev/null +++ b/javascriptv3/example_code/ec2/actions/describe-regions.js @@ -0,0 +1,44 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[ec2.JavaScript.Regions.describeRegionsV3] +import { DescribeRegionsCommand } from "@aws-sdk/client-ec2"; + +import { client } from "../libs/client.js"; + +export const main = async () => { + const command = new DescribeRegionsCommand({ + // By default this command will not show regions that require you to opt-in. + // When AllRegions true even the regions that require opt-in will be returned. + AllRegions: true, + // You can omit the Filters property if you want to get all regions. + Filters: [ + { + Name: "region-name", + // You can specify multiple values for a filter. + // You can also use '*' as a wildcard. This will return all + // of the regions that start with `us-east-`. + Values: ["ap-southeast-4"], + }, + ], + }); + + try { + const { Regions } = await client.send(command); + const regionsList = Regions.map((reg) => ` • ${reg.RegionName}`); + console.log("Found regions:"); + console.log(regionsList.join("\n")); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[ec2.JavaScript.Regions.describeRegionsV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/ec2/actions/describe-security-groups.js b/javascriptv3/example_code/ec2/actions/describe-security-groups.js new file mode 100644 index 00000000000..c72b967ed61 --- /dev/null +++ b/javascriptv3/example_code/ec2/actions/describe-security-groups.js @@ -0,0 +1,31 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[ec2.JavaScript.SecurityGroups.describeSecurityGroupsV3] +import { DescribeSecurityGroupsCommand } from "@aws-sdk/client-ec2"; + +import { client } from "../libs/client.js"; + +// Log the details of a specific security group. +export const main = async () => { + const command = new DescribeSecurityGroupsCommand({ + GroupIds: ["SECURITY_GROUP_ID"], + }); + + try { + const { SecurityGroups } = await client.send(command); + console.log(JSON.stringify(SecurityGroups, null, 2)); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[ec2.JavaScript.SecurityGroups.describeSecurityGroupsV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/ec2/actions/disassociate-address.js b/javascriptv3/example_code/ec2/actions/disassociate-address.js new file mode 100644 index 00000000000..8125bb08b26 --- /dev/null +++ b/javascriptv3/example_code/ec2/actions/disassociate-address.js @@ -0,0 +1,32 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[javascript.v3.ec2.actions.DisassociateAddress] +import { DisassociateAddressCommand } from "@aws-sdk/client-ec2"; + +import { client } from "../libs/client.js"; + +// Disassociate an Elastic IP address from an instance. +export const main = async () => { + const command = new DisassociateAddressCommand({ + // You can also use PublicIp, but that is for EC2 classic which is being retired. + AssociationId: "ASSOCIATION_ID", + }); + + try { + await client.send(command); + console.log("Successfully disassociated address"); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[javascript.v3.ec2.actions.DisassociateAddress] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/ec2/actions/monitor-instances.js b/javascriptv3/example_code/ec2/actions/monitor-instances.js new file mode 100644 index 00000000000..a2af1e68eb6 --- /dev/null +++ b/javascriptv3/example_code/ec2/actions/monitor-instances.js @@ -0,0 +1,38 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[ec2.JavaScript.Instances.monitorInstancesV3] +import { MonitorInstancesCommand } from "@aws-sdk/client-ec2"; + +import { client } from "../libs/client.js"; + +// Turn on detailed monitoring for the selected instance. +// By default, metrics are sent to Amazon CloudWatch every 5 minutes. +// For a cost you can enable detailed monitoring which sends metrics every minute. +export const main = async () => { + const command = new MonitorInstancesCommand({ + InstanceIds: ["INSTANCE_ID"], + }); + + try { + const { InstanceMonitorings } = await client.send(command); + const instancesBeingMonitored = InstanceMonitorings.map( + (im) => + ` • Detailed monitoring state for ${im.InstanceId} is ${im.Monitoring.State}.` + ); + console.log("Monitoring status:"); + console.log(instancesBeingMonitored.join("\n")); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[ec2.JavaScript.Instances.monitorInstancesV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/ec2/actions/reboot-instances.js b/javascriptv3/example_code/ec2/actions/reboot-instances.js new file mode 100644 index 00000000000..6cbc9fab44c --- /dev/null +++ b/javascriptv3/example_code/ec2/actions/reboot-instances.js @@ -0,0 +1,30 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[ec2.JavaScript.Instances.rebootInstancesV3] +import { RebootInstancesCommand } from "@aws-sdk/client-ec2"; + +import { client } from "../libs/client.js"; + +export const main = async () => { + const command = new RebootInstancesCommand({ + InstanceIds: ["INSTANCE_ID"], + }); + + try { + await client.send(command); + console.log("Instance rebooted successfully."); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[ec2.JavaScript.Instances.rebootInstancesV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/ec2/actions/release-address.js b/javascriptv3/example_code/ec2/actions/release-address.js new file mode 100644 index 00000000000..519f0b4a5fa --- /dev/null +++ b/javascriptv3/example_code/ec2/actions/release-address.js @@ -0,0 +1,31 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[ec2.JavaScript.Addresses.releaseAddressV3] +import { ReleaseAddressCommand } from "@aws-sdk/client-ec2"; + +import { client } from "../libs/client.js"; + +export const main = async () => { + const command = new ReleaseAddressCommand({ + // You can also use PublicIp, but that is for EC2 classic which is being retired. + AllocationId: "ALLOCATION_ID", + }); + + try { + await client.send(command); + console.log("Successfully released address."); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[ec2.JavaScript.Addresses.releaseAddressV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/ec2/actions/run-instances.js b/javascriptv3/example_code/ec2/actions/run-instances.js new file mode 100644 index 00000000000..0213e159834 --- /dev/null +++ b/javascriptv3/example_code/ec2/actions/run-instances.js @@ -0,0 +1,41 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[ec2.JavaScript.Instances.create_instancesV3] +import { RunInstancesCommand } from "@aws-sdk/client-ec2"; + +import { client } from "../libs/client.js"; + +// Create a new EC2 instance. +export const main = async () => { + const command = new RunInstancesCommand({ + // Your key pair name. + KeyName: "KEY_PAIR_NAME", + // Your security group. + SecurityGroupIds: ["SECURITY_GROUP_ID"], + // An x86_64 compatible image. + ImageId: "ami-0001a0d1a04bfcc30", + // An x86_64 compatible free-tier instance type. + InstanceType: "t1.micro", + // Ensure only 1 instance launches. + MinCount: 1, + MaxCount: 1, + }); + + try { + const response = await client.send(command); + console.log(response); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[ec2.JavaScript.Instances.create_instancesV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/ec2/actions/start-instances.js b/javascriptv3/example_code/ec2/actions/start-instances.js new file mode 100644 index 00000000000..744f2d68959 --- /dev/null +++ b/javascriptv3/example_code/ec2/actions/start-instances.js @@ -0,0 +1,35 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[ec2.JavaScript.Instances.start_stopInstancesV3] +import { StartInstancesCommand } from "@aws-sdk/client-ec2"; + +import { client } from "../libs/client.js"; + +export const main = async () => { + const command = new StartInstancesCommand({ + // Use DescribeInstancesCommand to find InstanceIds + InstanceIds: ["INSTANCE_ID"], + }); + + try { + const { StartingInstances } = await client.send(command); + const instanceIdList = StartingInstances.map( + (instance) => ` • ${instance.InstanceId}` + ); + console.log("Starting instances:"); + console.log(instanceIdList.join("\n")); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[ec2.JavaScript.Instances.start_stopInstancesV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/ec2/actions/stop-instances.js b/javascriptv3/example_code/ec2/actions/stop-instances.js new file mode 100644 index 00000000000..6ac18f34772 --- /dev/null +++ b/javascriptv3/example_code/ec2/actions/stop-instances.js @@ -0,0 +1,35 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[javascript.v3.ec2.actions.StopInstances] +import { StopInstancesCommand } from "@aws-sdk/client-ec2"; + +import { client } from "../libs/client.js"; + +export const main = async () => { + const command = new StopInstancesCommand({ + // Use DescribeInstancesCommand to find InstanceIds + InstanceIds: ["INSTANCE_ID"], + }); + + try { + const { StoppingInstances } = await client.send(command); + const instanceIdList = StoppingInstances.map( + (instance) => ` • ${instance.InstanceId}` + ); + console.log("Stopping instances:"); + console.log(instanceIdList.join("\n")); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[javascript.v3.ec2.actions.StopInstances] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/ec2/actions/terminate-instances.js b/javascriptv3/example_code/ec2/actions/terminate-instances.js new file mode 100644 index 00000000000..08322e42387 --- /dev/null +++ b/javascriptv3/example_code/ec2/actions/terminate-instances.js @@ -0,0 +1,34 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[javascript.v2.ec2.actions.TerminateInstances] +import { TerminateInstancesCommand } from "@aws-sdk/client-ec2"; + +import { client } from "../libs/client.js"; + +export const main = async () => { + const command = new TerminateInstancesCommand({ + InstanceIds: ["INSTANCE_ID"], + }); + + try { + const { TerminatingInstances } = await client.send(command); + const instanceList = TerminatingInstances.map( + (instance) => ` • ${instance.InstanceId}` + ); + console.log("Terminating instances:"); + console.log(instanceList.join("\n")); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[javascript.v2.ec2.actions.TerminateInstances] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/ec2/actions/unmonitor-instances.js b/javascriptv3/example_code/ec2/actions/unmonitor-instances.js new file mode 100644 index 00000000000..4c6ddf534ac --- /dev/null +++ b/javascriptv3/example_code/ec2/actions/unmonitor-instances.js @@ -0,0 +1,35 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[javascript.v3.ec2.actions.UnmonitorInstances] +import { UnmonitorInstancesCommand } from "@aws-sdk/client-ec2"; + +import { client } from "../libs/client.js"; + +export const main = async () => { + const command = new UnmonitorInstancesCommand({ + InstanceIds: ["i-09a3dfe7ae00e853f"], + }); + + try { + const { InstanceMonitorings } = await client.send(command); + const instanceMonitoringsList = InstanceMonitorings.map( + (im) => + ` • Detailed monitoring state for ${im.InstanceId} is ${im.Monitoring.State}.` + ); + console.log("Monitoring status:"); + console.log(instanceMonitoringsList.join("\n")); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[javascript.v3.ec2.actions.UnmonitorInstances] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/ec2/hello.js b/javascriptv3/example_code/ec2/hello.js new file mode 100644 index 00000000000..72e56da04bb --- /dev/null +++ b/javascriptv3/example_code/ec2/hello.js @@ -0,0 +1,37 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[javascript.v3.ec2.scenarios.Hello] +import { DescribeSecurityGroupsCommand } from "@aws-sdk/client-ec2"; + +import { client } from "./libs/client.js"; + +// Call DescribeSecurityGroups and display the result. +export const main = async () => { + try { + const { SecurityGroups } = await client.send( + new DescribeSecurityGroupsCommand({}) + ); + + const securityGroupList = SecurityGroups.slice(0, 9) + .map((sg) => ` • ${sg.GroupId}: ${sg.GroupName}`) + .join("\n"); + + console.log( + "Hello, Amazon EC2! Let's list up to 10 of your security groups:" + ); + console.log(securityGroupList); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[javascript.v3.ec2.scenarios.Hello] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/ec2/libs/client.js b/javascriptv3/example_code/ec2/libs/client.js new file mode 100644 index 00000000000..fa940095c48 --- /dev/null +++ b/javascriptv3/example_code/ec2/libs/client.js @@ -0,0 +1,10 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +// snippet-start:[ec2.JavaScript.createclientv3] +import { EC2Client } from "@aws-sdk/client-ec2"; +export const REGION = "us-east-1"; +export const client = new EC2Client({ region: REGION }); +// snippet-end:[ec2.JavaScript.createclientv3] diff --git a/javascriptv3/example_code/ec2/package.json b/javascriptv3/example_code/ec2/package.json index 4927c0b0f03..2c1bc642274 100644 --- a/javascriptv3/example_code/ec2/package.json +++ b/javascriptv3/example_code/ec2/package.json @@ -1,20 +1,17 @@ { - "name": "aws-sdk-v3-ec2-examples", + "name": "example-javascriptv3-ec2", "version": "1.0.0", - "main": "index.js", - "repository": "git@github.com/awsdocs/aws-doc-sdk-examples/tree/master/javascriptv3/example_code/iam.git", - "author": "Brian Murray , Alex Forsyth ", + "author": "Brian Murray , Alex Forsyth , Corey Pyle { + // Create a key pair in Amazon EC2. + const { KeyMaterial, KeyPairId } = await ec2Client.send( + // A unique name for the key pair. Up to 255 ASCII characters. + new CreateKeyPairCommand({ KeyName: keyPairName }) + ); + + // Save the private key in a temporary location. + writeFileSync(`${tmpDirectory}/${keyPairName}.pem`, KeyMaterial, { + mode: 0o400, + }); + + return KeyPairId; +}; + +const describeKeyPair = async (keyPairName) => { + const command = new DescribeKeyPairsCommand({ + KeyNames: [keyPairName], + }); + const { KeyPairs } = await ec2Client.send(command); + return KeyPairs[0]; +}; + +const createSecurityGroup = async (securityGroupName) => { + const command = new CreateSecurityGroupCommand({ + GroupName: securityGroupName, + Description: "A security group for the Amazon EC2 example.", + }); + const { GroupId } = await ec2Client.send(command); + return GroupId; +}; + +const allocateIpAddress = async () => { + const command = new AllocateAddressCommand({}); + const { PublicIp, AllocationId } = await ec2Client.send(command); + return { PublicIp, AllocationId }; +}; + +const getLocalIpAddress = async () => { + return new Promise((res, rej) => { + get("http://checkip.amazonaws.com", (response) => { + let data = ""; + response.on("data", (chunk) => (data += chunk)); + response.on("end", () => res(data.trim())); + }).on("error", (err) => { + rej(err); + }); + }); +}; + +const authorizeSecurityGroupIngress = async (securityGroupId) => { + const ipAddress = await getLocalIpAddress(); + const command = new AuthorizeSecurityGroupIngressCommand({ + GroupId: securityGroupId, + IpPermissions: [ + { + IpProtocol: "tcp", + FromPort: 22, + ToPort: 22, + IpRanges: [{ CidrIp: `${ipAddress}/32` }], + }, + ], + }); + + await ec2Client.send(command); + return ipAddress; +}; + +const describeSecurityGroup = async (securityGroupName) => { + const command = new DescribeSecurityGroupsCommand({ + GroupNames: [securityGroupName], + }); + const { SecurityGroups } = await ec2Client.send(command); + + return SecurityGroups[0]; +}; + +const getAmznLinux2AMIs = async () => { + const AMIs = []; + for await (const page of paginateGetParametersByPath( + { + client: ssmClient, + }, + { Path: "/aws/service/ami-amazon-linux-latest" } + )) { + page.Parameters.forEach((param) => { + if (param.Name.includes("amzn2")) { + AMIs.push(param.Value); + } + }); + } + + const imageDetails = []; + + for await (const page of paginateDescribeImages( + { client: ec2Client }, + { ImageIds: AMIs } + )) { + imageDetails.push(...page.Images); + } + + const options = imageDetails.map( + (image) => `${image.ImageId} - ${image.Description}` + ); + const [selectedIndex] = await promptWithOptions(options); + + return imageDetails[selectedIndex]; +}; + +const getCompatibleInstanceTypes = async (imageDetails) => { + const paginator = paginateDescribeInstanceTypes( + { client: ec2Client, pageSize: 25 }, + { + Filters: [ + { + Name: "processor-info.supported-architecture", + Values: [imageDetails.Architecture], + }, + { Name: "instance-type", Values: ["*.micro", "*.small"] }, + ], + } + ); + + const instanceTypes = []; + + for await (const page of paginator) { + if (page.InstanceTypes.length) { + instanceTypes.push(...page.InstanceTypes); + } + } + + const instanceTypeList = instanceTypes.map( + (type) => `${type.InstanceType} - Memory:${type.MemoryInfo.SizeInMiB}` + ); + + const [selectedIndex] = await promptWithOptions( + instanceTypeList, + "Select an instance type." + ); + return instanceTypes[selectedIndex]; +}; + +const runInstance = async ({ + keyPairName, + securityGroupId, + imageId, + instanceType, +}) => { + const command = new RunInstancesCommand({ + KeyName: keyPairName, + SecurityGroupIds: [securityGroupId], + ImageId: imageId, + InstanceType: instanceType, + MinCount: 1, + MaxCount: 1, + }); + + const { Instances } = await ec2Client.send(command); + await waitUntilInstanceStatusOk( + { client: ec2Client }, + { InstanceIds: [Instances[0].InstanceId] } + ); + return Instances[0].InstanceId; +}; + +const describeInstance = async (instanceId) => { + const command = new DescribeInstancesCommand({ + InstanceIds: [instanceId], + }); + + const { Reservations } = await ec2Client.send(command); + return Reservations[0].Instances[0]; +}; + +const displaySSHConnectionInfo = ({ publicIp, keyPairName }) => { + return `ssh -i ${tmpDirectory}/${keyPairName}.pem ec2-user@${publicIp}`; +}; + +const stopInstance = async (instanceId) => { + const command = new StopInstancesCommand({ InstanceIds: [instanceId] }); + await ec2Client.send(command); + await waitUntilInstanceStopped( + { client: ec2Client }, + { InstanceIds: [instanceId] } + ); +}; + +const startInstance = async (instanceId) => { + const startCommand = new StartInstancesCommand({ InstanceIds: [instanceId] }); + await ec2Client.send(startCommand); + await waitUntilInstanceStatusOk( + { client: ec2Client }, + { InstanceIds: [instanceId] } + ); + return await describeInstance(instanceId); +}; + +const associateAddress = async ({ allocationId, instanceId }) => { + const command = new AssociateAddressCommand({ + AllocationId: allocationId, + InstanceId: instanceId, + }); + + const { AssociationId } = await ec2Client.send(command); + return AssociationId; +}; + +const disassociateAddress = async (associationId) => { + const command = new DisassociateAddressCommand({ + AssociationId: associationId, + }); + await ec2Client.send(command); +}; + +const releaseAddress = async (allocationId) => { + const command = new ReleaseAddressCommand({ + AllocationId: allocationId, + }); + + try { + await ec2Client.send(command); + console.log(`🧹 Address with allocation ID ${allocationId} released.\n`); + } catch (err) { + console.log(err); + } +}; + +const restartInstance = async (instanceId) => { + console.log("Stopping instance."); + await stopInstance(instanceId); + console.log("Instance stopped."); + console.log("Starting instance."); + const { PublicIpAddress } = await startInstance(instanceId); + return PublicIpAddress; +}; + +const terminateInstance = async (instanceId) => { + const command = new TerminateInstancesCommand({ + InstanceIds: [instanceId], + }); + + try { + await ec2Client.send(command); + await waitUntilInstanceTerminated( + { client: ec2Client }, + { InstanceIds: [instanceId] } + ); + console.log(`🧹 Instance with ID ${instanceId} terminated.\n`); + } catch (err) { + console.error(err); + } +}; + +const deleteSecurityGroup = async (securityGroupId) => { + const command = new DeleteSecurityGroupCommand({ + GroupId: securityGroupId, + }); + + try { + await ec2Client.send(command); + console.log(`🧹 Security group ${securityGroupId} deleted.\n`); + } catch (err) { + console.error(err); + } +}; + +const deleteKeyPair = async (keyPairName) => { + const command = new DeleteKeyPairCommand({ + KeyName: keyPairName, + }); + + try { + await ec2Client.send(command); + console.log(`🧹 Key pair ${keyPairName} deleted.\n`); + } catch (err) { + console.error(err); + } +}; + +const deleteTemporaryDirectory = () => { + try { + rmSync(tmpDirectory, { recursive: true }); + console.log(`🧹 Temporary directory ${tmpDirectory} deleted.\n`); + } catch (err) { + console.error(err); + } +}; + +const wrapText = (text, char = "=") => { + const rule = char.repeat(80); + return `${rule}\n ${text}\n${rule}\n`; +}; + +const promptToContinue = (prefix) => { + const rl = createInterface({ + input: process.stdin, + output: process.stdout, + }); + + return new Promise((resolve) => { + rl.question(`\nPress enter to continue.\n`, () => { + rl.close(); + resolve(); + }); + }); +}; + +const promptWithOptions = (options, question = "") => { + const rl = createInterface({ + input: process.stdin, + output: process.stdout, + }); + const optionsList = options.map((opt, i) => `${i + 1}) ${opt}`).join("\n"); + + return new Promise((resolve) => { + rl.question(`${question}\n${optionsList}\n-> `, (answer) => { + rl.close(); + const selected = parseInt(answer); + if (isNaN(selected) || selected < 1 || selected > options.length) { + console.log( + `Invalid option. Select a number between 1 and ${options.length}` + ); + resolve(promptWithOptions(options)); + } else { + resolve([selected - 1, options[selected - 1]]); + } + }); + }); +}; + +export const main = async () => { + const keyPairName = "ec2-scenario-key-pair"; + const securityGroupName = "ec2-scenario-security-group"; + + let securityGroupId, ipAllocationId, publicIp, instanceId, associationId; + + console.log(wrapText("Welcome to the Amazon EC2 basic usage scenario.")); + + try { + // Prerequisites + console.log( + "Before you launch an instance, you'll need a few things:", + "\n - A Key Pair", + "\n - A Security Group", + "\n - An IP Address", + "\n - An AMI", + "\n - A compatible instance type", + "\n\n I'll go ahead and take care of the first three, but I'll need your help for the rest." + ); + + await promptToContinue(); + + await createKeyPair(keyPairName); + securityGroupId = await createSecurityGroup(securityGroupName); + const { PublicIp, AllocationId } = await allocateIpAddress(); + ipAllocationId = AllocationId; + publicIp = PublicIp; + const ipAddress = await authorizeSecurityGroupIngress(securityGroupId); + + const { KeyName } = await describeKeyPair(keyPairName); + const { GroupName } = await describeSecurityGroup(securityGroupName); + console.log(`✅ created the key pair ${KeyName}.\n`); + console.log( + `✅ created the security group ${GroupName}`, + `and allowed SSH access from ${ipAddress} (your IP).\n` + ); + console.log(`✅ allocated ${publicIp} to be used for your EC2 instance.\n`); + + await promptToContinue(); + + // Creating the instance + console.log(wrapText("Create the instance.")); + console.log( + "You get to choose which image you want. Select an amazon-linux-2 image from the following:" + ); + const imageDetails = await getAmznLinux2AMIs(); + const instanceTypeDetails = await getCompatibleInstanceTypes(imageDetails); + console.log("Creating your instance. This can take a few seconds."); + instanceId = await runInstance({ + keyPairName, + securityGroupId, + imageId: imageDetails.ImageId, + instanceType: instanceTypeDetails.InstanceType, + }); + const instanceDetails = await describeInstance(instanceId); + console.log(`✅ instance ${instanceId}.\n`); + console.log(instanceDetails); + console.log( + `\nYou should now be able to SSH into your instance from another terminal:`, + `\n${displaySSHConnectionInfo({ + publicIp: instanceDetails.PublicIpAddress, + keyPairName, + })}` + ); + + await promptToContinue(); + + // Understanding the IP address. + console.log(wrapText("Understanding the IP address.")); + console.log( + "When you stop and start an instance, the IP address will change. I'll restart your", + "instance for you. Notice how the IP address changes." + ); + const ipAddressAfterRestart = await restartInstance(instanceId); + console.log( + `\n Instance started. The IP address changed from ${instanceDetails.PublicIpAddress} to ${ipAddressAfterRestart}`, + `\n${displaySSHConnectionInfo({ + publicIp: ipAddressAfterRestart, + keyPairName, + })}` + ); + await promptToContinue(); + console.log( + `If you want to the IP address to be static, you can associate an allocated`, + `IP address to your instance. I allocated ${publicIp} for you earlier, and now I'll associate it to your instance.` + ); + associationId = await associateAddress({ + allocationId: ipAllocationId, + instanceId, + }); + console.log( + "Done. Now you should be able to SSH using the new IP.\n", + `${displaySSHConnectionInfo({ publicIp, keyPairName })}` + ); + await promptToContinue(); + console.log( + "I'll restart the server again so you can see the IP address remains the same." + ); + const ipAddressAfterAssociated = await restartInstance(instanceId); + console.log( + `Done. Here's your SSH info. Notice the IP address hasn't changed.`, + `\n${displaySSHConnectionInfo({ + publicIp: ipAddressAfterAssociated, + keyPairName, + })}` + ); + await promptToContinue(); + } catch (err) { + console.error(err); + } finally { + // Clean up. + console.log(wrapText("Clean up.")); + console.log("Now I'll clean up all of the stuff I created."); + await promptToContinue(); + console.log("Cleaning up. Some of these steps can take a bit of time."); + await disassociateAddress(associationId); + await terminateInstance(instanceId); + await releaseAddress(ipAllocationId); + await deleteSecurityGroup(securityGroupId); + deleteTemporaryDirectory(); + await deleteKeyPair(keyPairName); + console.log( + "Done cleaning up. Thanks for staying until the end!", + "If you have any feedback please use the feedback button in the docs", + "or create an issue on GitHub." + ); + } +}; +// snippet-end:[javascript.v3.ec2.scenarios.basic] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/ec2/src/ec2_allocateaddress.js b/javascriptv3/example_code/ec2/src/ec2_allocateaddress.js deleted file mode 100644 index 344d0ef49c5..00000000000 --- a/javascriptv3/example_code/ec2/src/ec2_allocateaddress.js +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 - -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/ec2-example-elastic-ip-addresses.html - -Purpose: -ec2_allocateaddress.js demonstrates how to allocate and associate an Elastic IP address to an Amazon EC2 instance. - -Inputs (replace in code): -- INSTANCE_ID - -Running the code: -node ec2_allocateaddress.js -*/ -// snippet-start:[ec2.JavaScript.Addresses.allocateAddressV3] -// Import required AWS SDK clients and commands for Node.js -import { - AllocateAddressCommand, - AssociateAddressCommand, -} from "@aws-sdk/client-ec2"; -import { ec2Client } from "./libs/ec2Client"; - -// Set the parameters -const paramsAllocateAddress = { Domain: "vpc" }; - -const run = async () => { - try { - const data = await ec2Client.send( - new AllocateAddressCommand(paramsAllocateAddress) - ); - console.log("Address allocated:", data.AllocationId); - return data; - var paramsAssociateAddress = { - AllocationId: data.AllocationId, - InstanceId: "INSTANCE_ID", //INSTANCE_ID - }; - } catch (err) { - console.log("Address Not Allocated", err); - } - try { - const results = await ec2Client.send( - new AssociateAddressCommand(paramsAssociateAddress) - ); - console.log("Address associated:", results.AssociationId); - return results; - } catch (err) { - console.log("Address Not Associated", err); - } -}; -run(); -// snippet-end:[ec2.JavaScript.Addresses.allocateAddressV3] -// For unit tests only. -// module.exports ={run, paramsAllocateAddress}; diff --git a/javascriptv3/example_code/ec2/src/ec2_createinstances.js b/javascriptv3/example_code/ec2/src/ec2_createinstances.js deleted file mode 100644 index 71965a5dd28..00000000000 --- a/javascriptv3/example_code/ec2/src/ec2_createinstances.js +++ /dev/null @@ -1,64 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 - -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide//ec2-example-creating-an-instance.html - -Purpose: -ec2_createinstances.js demonstrates how to create an Amazon EC2 instance. - -Inputs (replace in code): -- AMI_ID -- KEY_PAIR_NAME - -Running the code: -node ec2_createinstances.js -*/ -// snippet-start:[ec2.JavaScript.Instances.create_instancesV3] -// Import required AWS SDK clients and commands for Node.js -const { - CreateTagsCommand, - RunInstancesCommand, -} = require("@aws-sdk/client-ec2"); -import { ec2Client } from "./libs/ec2Client"; - -// Set the parameters -const instanceParams = { - ImageId: "AMI_ID", //AMI_ID - InstanceType: "t2.micro", - KeyName: "KEY_PAIR_NAME", //KEY_PAIR_NAME - MinCount: 1, - MaxCount: 1, -}; - -const run = async () => { - try { - const data = await ec2Client.send(new RunInstancesCommand(instanceParams)); - console.log(data.Instances[0].InstanceId); - const instanceId = data.Instances[0].InstanceId; - console.log("Created instance", instanceId); - // Add tags to the instance - const tagParams = { - Resources: [instanceId], - Tags: [ - { - Key: "Name", - Value: "SDK Sample", - }, - ], - }; - try { - await ec2Client.send(new CreateTagsCommand(tagParams)); - console.log("Instance tagged"); - } catch (err) { - console.log("Error", err); - } - } catch (err) { - console.log("Error", err); - } -}; -run(); -// snippet-end:[ec2.JavaScript.Instances.create_instancesV3] -// For unit tests only. -// module.exports ={run, instanceParams}; diff --git a/javascriptv3/example_code/ec2/src/ec2_createkeypair.js b/javascriptv3/example_code/ec2/src/ec2_createkeypair.js deleted file mode 100644 index b8a9f1156dc..00000000000 --- a/javascriptv3/example_code/ec2/src/ec2_createkeypair.js +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 - -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/ec2-example-key-pairs.html - -Purpose: -ec2_createkeypair.js demonstrates how to create an RSA key pair for an Amazon EC2 instance. - -Inputs (replace in code): -- MY_KEY_PAIR - -Running the code: -node ec2_createkeypair.js - */ -// snippet-start:[ec2.JavaScript.keypairs.createKeyPairV3] -// Import required AWS SDK clients and commands for Node.js -import { CreateKeyPairCommand } from "@aws-sdk/client-ec2"; -import { ec2Client } from "./libs/ec2Client"; - -// Set the parameters -const params = { KeyName: "MY_KEY_PAIR" }; //MY_KEY_PAIR - -const run = async () => { - try { - const data = await ec2Client.send(new CreateKeyPairCommand(params)); - console.log(JSON.stringify(data)); - return data; - } catch (err) { - console.log("Error", err); - } -}; -run(); -// snippet-end:[ec2.JavaScript.keypairs.createKeyPairV3] -// For unit tests only. -// module.exports ={run, params}; diff --git a/javascriptv3/example_code/ec2/src/ec2_createsecuritygroup.js b/javascriptv3/example_code/ec2/src/ec2_createsecuritygroup.js deleted file mode 100644 index 2a0a39975af..00000000000 --- a/javascriptv3/example_code/ec2/src/ec2_createsecuritygroup.js +++ /dev/null @@ -1,88 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 - -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/ec2-example-security-groups.html - -Purpose: -ec2_createsecuritygroup.js demonstrates how to create a security group for an Amazon EC2 instance. - -Inputs (replace in code): -- KEY_PAIR_NAME -- DESCRIPTION -- SECURITY_GROUP_NAME -- SECURITY_GROUP_ID - -Running the code: -node ec2_createsecuritygroup.js - */ -// snippet-start:[ec2.JavaScript.SecurityGroups.createSecurityGroupV3] -// Import required AWS SDK clients and commands for Node.js -import { - DescribeVpcsCommand, - CreateSecurityGroupCommand, - AuthorizeSecurityGroupIngressCommand, -} from "@aws-sdk/client-ec2"; -import { ec2Client } from "./libs/ec2Client"; - -// Set the parameters -const params = { KeyName: "KEY_PAIR_NAME" }; //KEY_PAIR_NAME - -// Variable to hold a ID of a VPC -let vpc = null; - -const run = async () => { - try { - const data = await ec2Client.send(new DescribeVpcsCommand(params)); - vpc = data.Vpcs[0].VpcId; - return data; - } catch (err) { - console.log("Error", err); - } - try { - const paramsSecurityGroup = { - Description: "DESCRIPTION", //DESCRIPTION - GroupName: "SECURITY_GROUP_NAME", // SECURITY_GROUP_NAME - VpcId: vpc, - }; - const data = await ec2Client.send( - new CreateSecurityGroupCommand(paramsSecurityGroup) - ); - const SecurityGroupId = data.GroupId; - console.log("Success", SecurityGroupId); - return data; - } catch (err) { - console.log("Error", err); - } - try { - const paramsIngress = { - GroupId: "SECURITY_GROUP_ID", //SECURITY_GROUP_ID - IpPermissions: [ - { - IpProtocol: "tcp", - FromPort: 80, - ToPort: 80, - IpRanges: [{ CidrIp: "0.0.0.0/0" }], - }, - { - IpProtocol: "tcp", - FromPort: 22, - ToPort: 22, - IpRanges: [{ CidrIp: "0.0.0.0/0" }], - }, - ], - }; - const data = await ec2Client.send( - new AuthorizeSecurityGroupIngressCommand(paramsIngress) - ); - console.log("Ingress Successfully Set", data); - return data; - } catch (err) { - console.log("Cannot retrieve a VPC", err); - } -}; -run(); -// snippet-end:[ec2.JavaScript.SecurityGroups.createSecurityGroupV3] -// For unit tests only. -// module.exports ={run, params}; diff --git a/javascriptv3/example_code/ec2/src/ec2_deletekeypair.js b/javascriptv3/example_code/ec2/src/ec2_deletekeypair.js deleted file mode 100644 index a9fc093b423..00000000000 --- a/javascriptv3/example_code/ec2/src/ec2_deletekeypair.js +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 - -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/ec2-example-key-pairs.html - -Purpose: -ec2_deletekeypair.js demonstrates how to delete a key pair from an Amazon EC2 instance. - -Inputs (replace in code): -- KEY_PAIR_NAME - -Running the code: -node ec2_deletekeypair.js - */ -// snippet-start:[ec2.JavaScript.keypairs.deleteKeyPairV3] -// Import required AWS SDK clients and commands for Node.js -import { DeleteKeyPairCommand } from "@aws-sdk/client-ec2"; -import { ec2Client } from "./libs/ec2Client"; - -// Set the parameters -const params = { KeyName: "KEY_PAIR_NAME" }; //KEY_PAIR_NAME - -const run = async () => { - try { - const data = await ec2Client.send(new DeleteKeyPairCommand(params)); - console.log("Key Pair Deleted"); - return data; - } catch (err) { - console.log("Error", err); - } -}; -run(); -// snippet-end:[ec2.JavaScript.keypairs.deleteKeyPairV3] -// For unit tests only. -// module.exports ={run, params}; diff --git a/javascriptv3/example_code/ec2/src/ec2_deletesecuritygroup.js b/javascriptv3/example_code/ec2/src/ec2_deletesecuritygroup.js deleted file mode 100644 index c5c3082376c..00000000000 --- a/javascriptv3/example_code/ec2/src/ec2_deletesecuritygroup.js +++ /dev/null @@ -1,36 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 - -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/ec2-example-security-groups.html - -Purpose: -ec2_deletesecuritygroup.js demonstrates how to delete a security group from an Amazon EC2 instance. - -Inputs (replace in code): -- SECURITY_GROUP_ID - -Running the code: -node ec2_deletesecuritygroup.js - */ -// snippet-start:[ec2.JavaScript.SecurityGroups.deleteSecurityGroupV3] -// Import required AWS SDK clients and commands for Node.js -import { DeleteSecurityGroupCommand } from "@aws-sdk/client-ec2"; -import { ec2Client } from "./libs/ec2Client"; -// Set the parameters -const params = { GroupId: "SECURITY_GROUP_ID" }; //SECURITY_GROUP_ID - -const run = async () => { - try { - const data = await ec2Client.send(new DeleteSecurityGroupCommand(params)); - console.log("Security Group Deleted"); - return data; - } catch (err) { - console.log("Error", err); - } -}; -run(); -// snippet-end:[ec2.JavaScript.SecurityGroups.deleteSecurityGroupV3] -// For unit tests only. -// module.exports ={run, params}; diff --git a/javascriptv3/example_code/ec2/src/ec2_describeaddresses.js b/javascriptv3/example_code/ec2/src/ec2_describeaddresses.js deleted file mode 100644 index d716fe69ae1..00000000000 --- a/javascriptv3/example_code/ec2/src/ec2_describeaddresses.js +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 - -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide//ec2-example-elastic-ip-addresses.html - -Purpose: -ec2_describeaddresses.js demonstrates how to retrieve information about one or more Elastic IP addresses. - - -Running the code: -node ec2_describeaddresses.js -*/ -// snippet-start:[ec2.JavaScript.Addresses.describeAddressesV3] - -// Import required AWS SDK clients and commands for Node.js -import { DescribeAddressesCommand } from "@aws-sdk/client-ec2"; -import { ec2Client } from "./libs/ec2Client"; -// Set the parameters -const params = { - Filters: [{ Name: "domain", Values: ["vpc"] }], -}; - -const run = async () => { - try { - const data = await ec2Client.send(new DescribeAddressesCommand(params)); - console.log(JSON.stringify(data.Addresses)); - return data; - } catch (err) { - console.log("Error", err); - } -}; -run(); -// snippet-end:[ec2.JavaScript.Addresses.describeAddressesV3] -// For unit tests only. -// module.exports ={run, params}; diff --git a/javascriptv3/example_code/ec2/src/ec2_describeinstances.js b/javascriptv3/example_code/ec2/src/ec2_describeinstances.js deleted file mode 100644 index 94f950ca464..00000000000 --- a/javascriptv3/example_code/ec2/src/ec2_describeinstances.js +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 - -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/ec2-example-managing-instances.html - -Purpose: -ec2_describeinstances.js demonstrates how to retrieve information about one or more Amazon EC2 instances. - -Running the code: -node ec2_describeinstances.js - */ - -// snippet-start:[ec2.JavaScript.Instances.describeInstancesV3] -// Import required AWS SDK clients and commands for Node.js -import { DescribeInstancesCommand } from "@aws-sdk/client-ec2"; -import { ec2Client } from "./libs/ec2Client"; -const run = async () => { - try { - const data = await ec2Client.send(new DescribeInstancesCommand({})); - console.log("Success", JSON.stringify(data)); - return data; - } catch (err) { - console.log("Error", err); - } -}; -run(); -// snippet-end:[ec2.JavaScript.Instances.describeInstancesV3] -// For unit tests only. -// module.exports ={run, params}; diff --git a/javascriptv3/example_code/ec2/src/ec2_describekeypairs.js b/javascriptv3/example_code/ec2/src/ec2_describekeypairs.js deleted file mode 100644 index 0aa7a531ff0..00000000000 --- a/javascriptv3/example_code/ec2/src/ec2_describekeypairs.js +++ /dev/null @@ -1,30 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 - -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/ec2-example-key-pairs.html - -Purpose: -ec2_describekeypairs.js demonstrates how to retrieve information about one or more key pairs. - -Running the code: -node ec2_describekeypairs.js - */ -// snippet-start:[ec2.JavaScript.keypairs.describeKeyPairV3] -// Import required AWS SDK clients and commands for Node.js -import { DescribeKeyPairsCommand } from "@aws-sdk/client-ec2"; -import { ec2Client } from "./libs/ec2Client"; -const run = async () => { - try { - const data = await ec2Client.send(new DescribeKeyPairsCommand({})); - console.log("Success", JSON.stringify(data.KeyPairs)); - return data; - } catch (err) { - console.log("Error", err); - } -}; -run(); -// snippet-end:[ec2.JavaScript.keypairs.describeKeyPairV3] -// For unit tests only. -// module.exports ={run}; diff --git a/javascriptv3/example_code/ec2/src/ec2_describeregionsandzones.js b/javascriptv3/example_code/ec2/src/ec2_describeregionsandzones.js deleted file mode 100644 index 8f911a9aa5b..00000000000 --- a/javascriptv3/example_code/ec2/src/ec2_describeregionsandzones.js +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 - -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/ec2-example-security-groups.html - -Purpose: -ec2_describeregionsandzones.js demonstrates how to retrieve information about Amazon EC2 regions and availability zones. - -Running the code: -node ec2_describeregionsandzones.js -*/ -// snippet-start:[ec2.JavaScript.Regions.describeRegionsV3] -// Import required AWS SDK clients and commands for Node.js -import { DescribeRegionsCommand } from "@aws-sdk/client-ec2"; -import { ec2Client } from "./libs/ec2Client"; - -const run = async () => { - try { - const data = await ec2Client.send(new DescribeRegionsCommand({})); - console.log("Availability Zones: ", data.Regions); - return data; - } catch (err) { - console.log("Error", err); - } -}; -run(); -// snippet-end:[ec2.JavaScript.Regions.describeRegionsV3] -// For unit tests only. -// module.exports ={run, params}; diff --git a/javascriptv3/example_code/ec2/src/ec2_describesecuritygroups.js b/javascriptv3/example_code/ec2/src/ec2_describesecuritygroups.js deleted file mode 100644 index 1c1a3f0742d..00000000000 --- a/javascriptv3/example_code/ec2/src/ec2_describesecuritygroups.js +++ /dev/null @@ -1,42 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 - -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/ec2-example-security-groups.html - -Purpose: -ec2_describesecuritygroups.js demonstrates how to retrieve information about one or more security groups. - -Inputs (replace in code): -- SECURITY_GROUP_ID - -Running the code: -node ec2_describesecuritygroups.js - - */ -// snippet-start:[ec2.JavaScript.SecurityGroups.describeSecurityGroupsV3] - -// Import required AWS SDK clients and commands for Node.js -import { DescribeSecurityGroupsCommand } from "@aws-sdk/client-ec2"; -import { ec2Client } from "./libs/ec2Client"; - -// Set the parameters -const params = { GroupIds: ["SECURITY_GROUP_ID"] }; //SECURITY_GROUP_ID - -const run = async () => { - try { - const data = await ec2Client.send( - new DescribeSecurityGroupsCommand(params) - ); - console.log("Success", JSON.stringify(data.SecurityGroups)); - return data; - } catch (err) { - console.log("Error", err); - } -}; -run(); - -// snippet-end:[ec2.JavaScript.SecurityGroups.describeSecurityGroupsV3] -// For unit tests only. -module.exports ={run, params}; diff --git a/javascriptv3/example_code/ec2/src/ec2_monitorinstances.js b/javascriptv3/example_code/ec2/src/ec2_monitorinstances.js deleted file mode 100644 index bfa01ec14f1..00000000000 --- a/javascriptv3/example_code/ec2/src/ec2_monitorinstances.js +++ /dev/null @@ -1,52 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 - -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/ec2-example-managing-instances.html - -Purpose: -ec2_monitorinstances.js demonstrates how to enable detailed monitoring for Amazon EC2 instances. - -Inputs (replace in code): -- INSTANCE_ID -- STATE: 'ON' or 'OFF' - -Running the code: -node ec2_monitorinstances.js - */ - -// snippet-start:[ec2.JavaScript.Instances.monitorInstancesV3] -// Import required AWS SDK clients and commands for Node.js -import { - MonitorInstancesCommand, - UnmonitorInstancesCommand, -} from "@aws-sdk/client-ec2"; -import { ec2Client } from "./libs/ec2Client"; - -// Set the parameters -const params = { InstanceIds: ["INSTANCE_ID"] }; // Array of INSTANCE_IDs - -const run = async () => { - if (process.argv[4].toUpperCase() === "ON") { - try { - const data = await ec2Client.send(new MonitorInstancesCommand(params)); - console.log("Success", data.InstanceMonitorings); - return data; - } catch (err) { - console.log("Error", err); - } - } else if (process.argv[4].toUpperCase() === "OFF") { - try { - const data = await ec2Client.send(new UnmonitorInstancesCommand(params)); - console.log("Success", data.InstanceMonitorings); - return data; - } catch (err) { - console.log("Error", err); - } - } -}; -run(); -// snippet-end:[ec2.JavaScript.Instances.monitorInstancesV3] -// For unit tests only. -// module.exports ={run, params}; diff --git a/javascriptv3/example_code/ec2/src/ec2_rebootinstances.js b/javascriptv3/example_code/ec2/src/ec2_rebootinstances.js deleted file mode 100644 index 04beb134ad2..00000000000 --- a/javascriptv3/example_code/ec2/src/ec2_rebootinstances.js +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 - -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/ec2-example-managing-instances.html - -Purpose: -ec2_rebootinstances.js demonstrates how to queue a reboot request for one or more Amazon EC2 instances. - -Inputs (replace in code): -- INSTANCE_ID - -Running the code: -node ec2_rebootinstances.js -*/ -// snippet-start:[ec2.JavaScript.Instances.rebootInstancesV3] -// Import required AWS SDK clients and commands for Node.js -import { RebootInstancesCommand } from "@aws-sdk/client-ec2"; -import { ec2Client } from "./libs/ec2Client.js"; - -// Set the parameters -const params = { InstanceIds: ["INSTANCE_ID"] }; // Array of INSTANCE_IDs - -const run = async () => { - try { - const data = await ec2Client.send(new RebootInstancesCommand(params)); - console.log("Success", data.InstanceMonitorings); - return data; - } catch (err) { - console.log("Error", err); - } -}; -run(); -// snippet-end:[ec2.JavaScript.Instances.rebootInstancesV3] -// For unit tests only. -// module.exports ={run, params}; diff --git a/javascriptv3/example_code/ec2/src/ec2_releaseaddress.js b/javascriptv3/example_code/ec2/src/ec2_releaseaddress.js deleted file mode 100644 index 9ec40ce4466..00000000000 --- a/javascriptv3/example_code/ec2/src/ec2_releaseaddress.js +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 - -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide//ec2-example-elastic-ip-addresses.html - -Purpose: -ec2_releaseaddress.js demonstrates how to release an Elastic IP address. - -Inputs (replace in code): -- ALLOCATION_ID - -Running the code: -node ec2_releaseaddress.js -*/ - -// snippet-start:[ec2.JavaScript.Addresses.releaseAddressV3] -// Import required AWS SDK clients and commands for Node.js -import { ReleaseAddressCommand } from "@aws-sdk/client-ec2"; -import { ec2Client } from "./libs/ec2Client"; - -// Set the parameters -const paramsReleaseAddress = { AllocationId: "ALLOCATION_ID" }; //ALLOCATION_ID - -const run = async () => { - try { - const data = await ec2Client.send(new ReleaseAddressCommand(paramsReleaseAddress)); - console.log("Address released"); - return data; - } catch (err) { - console.log("Error", err); - } -}; -run(); -// snippet-end:[ec2.JavaScript.Addresses.releaseAddressV3] -// For unit tests only. -// module.exports ={run, paramsReleaseAddress}; diff --git a/javascriptv3/example_code/ec2/src/ec2_startstopinstances.js b/javascriptv3/example_code/ec2/src/ec2_startstopinstances.js deleted file mode 100644 index d561010f07e..00000000000 --- a/javascriptv3/example_code/ec2/src/ec2_startstopinstances.js +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 - -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/ec2-example-managing-instances.html - -Purpose: -ec2_startstopinstances.js demonstrates how to start and stop an Amazon EC2 instance that is backed by Amazon Elastic Block Store. - -Inputs (replace in code): -- INSTANCE_ID -- STATE: i.e., "START" or "STOP" - -Running the code: -node ec2_startstopinstances.js -*/ - -// snippet-start:[ec2.JavaScript.Instances.start_stopInstancesV3] - -// Import required AWS SDK clients and commands for Node.js. -import { - StartInstancesCommand, - StopInstancesCommand, -} from "@aws-sdk/client-ec2"; -import { ec2Client } from "./libs/ec2Client"; - -// Set the parameters -const params = { InstanceIds: ["INSTANCE_ID"] }; // Array of INSTANCE_IDs -const command = "STATE"; // STATE i.e. "START" or "STOP" - -const run = async () => { - if (command.toUpperCase() === "START") { - try { - const data = await ec2Client.send(new StartInstancesCommand(params)); - console.log("Success", data.StartingInstances); - return data; - } catch (err) { - console.log("Error2", err); - } - } else if (process.argv[2].toUpperCase() === "STOP") { - try { - const data = await ec2Client.send(new StopInstancesCommand(params)); - console.log("Success", data.StoppingInstances); - return data; - } catch (err) { - console.log("Error", err); - } - } -}; -run(); - -// snippet-end:[ec2.JavaScript.Instances.start_stopInstancesV3] -// For unit tests only. -// module.exports ={run, params}; diff --git a/javascriptv3/example_code/ec2/src/libs/ec2Client.js b/javascriptv3/example_code/ec2/src/libs/ec2Client.js deleted file mode 100644 index fe94f3eb8bd..00000000000 --- a/javascriptv3/example_code/ec2/src/libs/ec2Client.js +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/ec2-examples.html. - -Purpose: -ec2Client.js is a helper function that creates an Amazon Elastic Compute Cloud (Amazon EC2) service client. - -Inputs (replace in code): -- REGION - -*/ -// snippet-start:[ec2.JavaScript.createclientv3] -const { EC2Client } = require( "@aws-sdk/client-ec2"); -// Set the AWS Region. -const REGION = "REGION"; //e.g. "us-east-1" -// Create anAmazon EC2 service client object. -const ec2Client = new EC2Client({ region: REGION }); -module.exports = { ec2Client }; -// snippet-end:[ec2.JavaScript.createclientv3] diff --git a/javascriptv3/example_code/ec2/src/metadata.yaml b/javascriptv3/example_code/ec2/src/metadata.yaml deleted file mode 100644 index 1bdf08db7d0..00000000000 --- a/javascriptv3/example_code/ec2/src/metadata.yaml +++ /dev/null @@ -1,52 +0,0 @@ ---- -# Amazon Cloudwatch basic usage examples -files: - - path: .libs/cwClient.js - services: - - cloudwatch - - path: .libs/cweClient.js - services: - - cloudwatch - - path: .libs/cwlClient.js - services: - - cloudwatch - - path: cw_deletealarms.js - services: - - cloudwatch - - path: cw_describealarms.js - services: - - cloudwatch - - path: cw_disablealarmactions.js - services: - - cloudwatch - - path: cw_enablealarmactions.js - services: - - cloudwatch - - path: cw_listmetrics.js - services: - - cloudwatch - - path: cw_putmetricalarm.js - services: - - cloudwatch - - path: cw_putmetricdata.js - services: - - cloudwatch - - path: cwe_putevents.js - services: - - cloudwatch - - path: cwe_putrule.js - services: - - cloudwatch - - path: cwe_puttargets.js - services: - - cloudwatch - - path: cwl_deletesubscriptionfilter.js - services: - - cloudwatch - - path: cwl_describesubscriptionfilters.js - services: - - cloudwatch - - path: cwl_putsubscriptionfilter.js - services: - - cloudwatch -... diff --git a/javascriptv3/example_code/ec2/tests/allocate-address.unit.test.js b/javascriptv3/example_code/ec2/tests/allocate-address.unit.test.js new file mode 100644 index 00000000000..d044bc64ed5 --- /dev/null +++ b/javascriptv3/example_code/ec2/tests/allocate-address.unit.test.js @@ -0,0 +1,47 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-ec2", async () => { + const actual = await vi.importActual("@aws-sdk/client-ec2"); + return { + ...actual, + EC2Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/allocate-address.js"; + +describe("allocate-address", () => { + it("should log id of the created address and the address itself", async () => { + const logSpy = vi.spyOn(console, "log"); + const response = { + PublicIp: "foo", + AllocationId: "bar", + }; + + send.mockResolvedValueOnce(response); + + await main(); + + expect(logSpy).toHaveBeenNthCalledWith(2, `ID: bar Public IP: foo`); + }); + + it("should log the error message", async () => { + const logSpy = vi.spyOn(console, "error"); + send.mockRejectedValueOnce(new Error("Failed to allocate address")); + + await main(); + + expect(logSpy).toHaveBeenCalledWith( + new Error("Failed to allocate address") + ); + }); +}); diff --git a/javascriptv3/example_code/ec2/tests/associate-address.unit.test.js b/javascriptv3/example_code/ec2/tests/associate-address.unit.test.js new file mode 100644 index 00000000000..bdc2ebb85eb --- /dev/null +++ b/javascriptv3/example_code/ec2/tests/associate-address.unit.test.js @@ -0,0 +1,46 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-ec2", async () => { + const actual = await vi.importActual("@aws-sdk/client-ec2"); + return { + ...actual, + EC2Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/associate-address.js"; + +describe("associate-address", () => { + it("should log the details of the new association", async () => { + const logSpy = vi.spyOn(console, "log"); + + send.mockResolvedValueOnce({ AssociationId: "foo" }); + + await main(); + + expect(logSpy).toHaveBeenCalledWith( + "Address with allocation ID ALLOCATION_ID is now associated with instance INSTANCE_ID.", + "The association ID is foo." + ); + }); + + it("should log the error message", async () => { + const logSpy = vi.spyOn(console, "error"); + send.mockRejectedValueOnce(new Error("Failed to associate address")); + + await main(); + + expect(logSpy).toHaveBeenCalledWith( + new Error("Failed to associate address") + ); + }); +}); diff --git a/javascriptv3/example_code/ec2/tests/authorize-security-group-ingress.unit.test.js b/javascriptv3/example_code/ec2/tests/authorize-security-group-ingress.unit.test.js new file mode 100644 index 00000000000..504f79b88f4 --- /dev/null +++ b/javascriptv3/example_code/ec2/tests/authorize-security-group-ingress.unit.test.js @@ -0,0 +1,45 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-ec2", async () => { + const actual = await vi.importActual("@aws-sdk/client-ec2"); + return { + ...actual, + EC2Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/authorize-security-group-ingress.js"; + +describe("authorize-security-group-ingress", () => { + it("should log the formatted security group rules", async () => { + const logSpy = vi.spyOn(console, "log"); + const rules = [{ foo: "bar" }]; + send.mockResolvedValueOnce({ + SecurityGroupRules: rules, + }); + + await main(); + + expect(logSpy).toHaveBeenCalledWith(JSON.stringify(rules, null, 2)); + }); + + it("should log the error message", async () => { + const logSpy = vi.spyOn(console, "error"); + send.mockRejectedValueOnce(new Error("Failed to authorize security group")); + + await main(); + + expect(logSpy).toHaveBeenCalledWith( + new Error("Failed to authorize security group") + ); + }); +}); diff --git a/javascriptv3/example_code/ec2/tests/create-key-pair.unit.test.js b/javascriptv3/example_code/ec2/tests/create-key-pair.unit.test.js new file mode 100644 index 00000000000..9cdea200a18 --- /dev/null +++ b/javascriptv3/example_code/ec2/tests/create-key-pair.unit.test.js @@ -0,0 +1,42 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-ec2", async () => { + const actual = await vi.importActual("@aws-sdk/client-ec2"); + return { + ...actual, + EC2Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/create-key-pair.js"; + +describe("create-key-pair", () => { + it("should log the key material", async () => { + const logSpy = vi.spyOn(console, "log"); + send.mockResolvedValueOnce({ + KeyMaterial: "foo", + }); + + await main(); + + expect(logSpy).toHaveBeenCalledWith("foo"); + }); + + it("should log the error message", async () => { + const logSpy = vi.spyOn(console, "error"); + send.mockRejectedValueOnce(new Error("Failed to create key pair")); + + await main(); + + expect(logSpy).toHaveBeenCalledWith(new Error("Failed to create key pair")); + }); +}); diff --git a/javascriptv3/example_code/ec2/tests/create-security-group.unit.test.js b/javascriptv3/example_code/ec2/tests/create-security-group.unit.test.js new file mode 100644 index 00000000000..cb6b6fafc7d --- /dev/null +++ b/javascriptv3/example_code/ec2/tests/create-security-group.unit.test.js @@ -0,0 +1,44 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-ec2", async () => { + const actual = await vi.importActual("@aws-sdk/client-ec2"); + return { + ...actual, + EC2Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/create-security-group.js"; + +describe("create-security-group", () => { + it("should log the security group id", async () => { + const logSpy = vi.spyOn(console, "log"); + send.mockResolvedValueOnce({ + GroupId: "foo", + }); + + await main(); + + expect(logSpy).toHaveBeenCalledWith("foo"); + }); + + it("should log the error message", async () => { + const logSpy = vi.spyOn(console, "error"); + send.mockRejectedValueOnce(new Error("Failed to create security group")); + + await main(); + + expect(logSpy).toHaveBeenCalledWith( + new Error("Failed to create security group") + ); + }); +}); diff --git a/javascriptv3/example_code/ec2/tests/delete-key-pair.unit.test.js b/javascriptv3/example_code/ec2/tests/delete-key-pair.unit.test.js new file mode 100644 index 00000000000..fa0dc93277a --- /dev/null +++ b/javascriptv3/example_code/ec2/tests/delete-key-pair.unit.test.js @@ -0,0 +1,41 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-ec2", async () => { + const actual = await vi.importActual("@aws-sdk/client-ec2"); + return { + ...actual, + EC2Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/delete-key-pair.js"; + +describe("delete-key-pair", () => { + it("should log a success message", async () => { + const logSpy = vi.spyOn(console, "log"); + + send.mockResolvedValueOnce({}); + + await main(); + + expect(logSpy).toHaveBeenCalledWith("Successfully deleted key pair."); + }); + + it("should log the error message", async () => { + const logSpy = vi.spyOn(console, "error"); + send.mockRejectedValueOnce(new Error("Failed to delete key pair")); + + await main(); + + expect(logSpy).toHaveBeenCalledWith(new Error("Failed to delete key pair")); + }); +}); diff --git a/javascriptv3/example_code/ec2/tests/delete-security-group.unit.test.js b/javascriptv3/example_code/ec2/tests/delete-security-group.unit.test.js new file mode 100644 index 00000000000..8ae96e73276 --- /dev/null +++ b/javascriptv3/example_code/ec2/tests/delete-security-group.unit.test.js @@ -0,0 +1,43 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-ec2", async () => { + const actual = await vi.importActual("@aws-sdk/client-ec2"); + return { + ...actual, + EC2Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/delete-security-group.js"; + +describe("delete-security-group", () => { + it("should log a success message", async () => { + const logSpy = vi.spyOn(console, "log"); + + send.mockResolvedValueOnce({}); + + await main(); + + expect(logSpy).toHaveBeenCalledWith("Security group deleted successfully."); + }); + + it("should log the error message", async () => { + const logSpy = vi.spyOn(console, "error"); + send.mockRejectedValueOnce(new Error("Failed to delete security group")); + + await main(); + + expect(logSpy).toHaveBeenCalledWith( + new Error("Failed to delete security group") + ); + }); +}); diff --git a/javascriptv3/example_code/ec2/tests/describe-addresses.unit.test.js b/javascriptv3/example_code/ec2/tests/describe-addresses.unit.test.js new file mode 100644 index 00000000000..5f8a9ffad37 --- /dev/null +++ b/javascriptv3/example_code/ec2/tests/describe-addresses.unit.test.js @@ -0,0 +1,50 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-ec2", async () => { + const actual = await vi.importActual("@aws-sdk/client-ec2"); + return { + ...actual, + EC2Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/describe-addresses.js"; + +describe("describe-addresses", () => { + it("should log the instances that were stopped", async () => { + const logSpy = vi.spyOn(console, "log"); + + send.mockResolvedValueOnce({ + Addresses: [ + { + PublicIp: "foo", + }, + ], + }); + + await main(); + + expect(logSpy).toHaveBeenNthCalledWith(1, "Elastic IP addresses:"); + expect(logSpy).toHaveBeenNthCalledWith(2, " • foo"); + }); + + it("should log the error message", async () => { + const logSpy = vi.spyOn(console, "error"); + send.mockRejectedValueOnce(new Error("Failed to describe addresses")); + + await main(); + + expect(logSpy).toHaveBeenCalledWith( + new Error("Failed to describe addresses") + ); + }); +}); diff --git a/javascriptv3/example_code/ec2/tests/describe-images.unit.test.js b/javascriptv3/example_code/ec2/tests/describe-images.unit.test.js new file mode 100644 index 00000000000..e522289bff5 --- /dev/null +++ b/javascriptv3/example_code/ec2/tests/describe-images.unit.test.js @@ -0,0 +1,58 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const paginateDescribeImages = vi.fn(); + +vi.doMock("@aws-sdk/client-ec2", async () => { + const actual = await vi.importActual("@aws-sdk/client-ec2"); + return { + ...actual, + paginateDescribeImages, + }; +}); + +import { main } from "../actions/describe-images.js"; + +describe("describe-images", () => { + it("should log the arm64 images", async () => { + const logSpy = vi.spyOn(console, "log"); + paginateDescribeImages.mockImplementationOnce(async function* () { + yield { + Images: [ + { + ImageId: "12345", + Architecture: "arm64", + }, + ], + }; + }); + + await main(); + + expect(logSpy).toHaveBeenCalledWith([ + { + ImageId: "12345", + Architecture: "arm64", + }, + ]); + }); + + it("should log an error if retrieval fails", async () => { + const logSpy = vi.spyOn(console, "log"); + const errorSpy = vi.spyOn(console, "error"); + paginateDescribeImages.mockReturnValueOnce( + (async function* () { + throw new Error("Retrieval failed"); + })() + ); + + await main(); + + expect(logSpy).not.toHaveBeenCalled(); + expect(errorSpy).toHaveBeenCalledWith(new Error("Retrieval failed")); + }); +}); diff --git a/javascriptv3/example_code/ec2/tests/describe-instance-types.unit.test.js b/javascriptv3/example_code/ec2/tests/describe-instance-types.unit.test.js new file mode 100644 index 00000000000..b50af4b627d --- /dev/null +++ b/javascriptv3/example_code/ec2/tests/describe-instance-types.unit.test.js @@ -0,0 +1,56 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const paginateDescribeInstanceTypes = vi.fn(); + +vi.doMock("@aws-sdk/client-ec2", async () => { + const actual = await vi.importActual("@aws-sdk/client-ec2"); + return { + ...actual, + paginateDescribeInstanceTypes, + }; +}); + +import { main } from "../actions/describe-instance-types.js"; + +describe("describe-instance-types", () => { + it("should log the arm64 instances", async () => { + const logSpy = vi.spyOn(console, "log"); + paginateDescribeInstanceTypes.mockImplementationOnce(async function* () { + yield { + InstanceTypes: [ + { + InstanceType: "t2.micro", + }, + ], + }; + }); + + await main(); + + expect(logSpy).toHaveBeenCalledWith([ + { + InstanceType: "t2.micro", + }, + ]); + }); + + it("should log an error if retrieval fails", async () => { + const logSpy = vi.spyOn(console, "log"); + const errorSpy = vi.spyOn(console, "error"); + paginateDescribeInstanceTypes.mockReturnValueOnce( + (async function* () { + throw new Error("Retrieval failed"); + })() + ); + + await main(); + + expect(logSpy).not.toHaveBeenCalled(); + expect(errorSpy).toHaveBeenCalledWith(new Error("Retrieval failed")); + }); +}); diff --git a/javascriptv3/example_code/ec2/tests/describe-instances.unit.test.js b/javascriptv3/example_code/ec2/tests/describe-instances.unit.test.js new file mode 100644 index 00000000000..41f404b9b48 --- /dev/null +++ b/javascriptv3/example_code/ec2/tests/describe-instances.unit.test.js @@ -0,0 +1,52 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-ec2", async () => { + const actual = await vi.importActual("@aws-sdk/client-ec2"); + return { + ...actual, + EC2Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/describe-instances.js"; + +describe("describe-instances", () => { + it("should log found instances", async () => { + const logSpy = vi.spyOn(console, "log"); + send.mockResolvedValueOnce({ + Reservations: [ + { + Instances: [ + { + InstanceId: "123", + }, + ], + }, + ], + }); + + await main(); + + expect(logSpy).toHaveBeenCalledWith([{ InstanceId: "123" }]); + }); + + it("should log the error message", async () => { + const logSpy = vi.spyOn(console, "error"); + send.mockRejectedValueOnce(new Error("Failed to describe instances")); + + await main(); + + expect(logSpy).toHaveBeenCalledWith( + new Error("Failed to describe instances") + ); + }); +}); diff --git a/javascriptv3/example_code/ec2/tests/describe-key-pairs.unit.test.js b/javascriptv3/example_code/ec2/tests/describe-key-pairs.unit.test.js new file mode 100644 index 00000000000..299c9f608a2 --- /dev/null +++ b/javascriptv3/example_code/ec2/tests/describe-key-pairs.unit.test.js @@ -0,0 +1,53 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-ec2", async () => { + const actual = await vi.importActual("@aws-sdk/client-ec2"); + return { + ...actual, + EC2Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/describe-key-pairs.js"; + +describe("describe-key-pairs", () => { + it("should log the returned key pairs", async () => { + const logSpy = vi.spyOn(console, "log"); + send.mockResolvedValueOnce({ + KeyPairs: [ + { + KeyName: "foo", + KeyPairId: "bar", + }, + ], + }); + + await main(); + + expect(logSpy).nthCalledWith( + 1, + "The following key pairs were found in your account:" + ); + expect(logSpy).nthCalledWith(2, " • bar: foo"); + }); + + it("should log the error message", async () => { + const logSpy = vi.spyOn(console, "error"); + send.mockRejectedValueOnce(new Error("Failed to describe key pairs")); + + await main(); + + expect(logSpy).toHaveBeenCalledWith( + new Error("Failed to describe key pairs") + ); + }); +}); diff --git a/javascriptv3/example_code/ec2/tests/describe-regions.unit.test.js b/javascriptv3/example_code/ec2/tests/describe-regions.unit.test.js new file mode 100644 index 00000000000..4f35254e123 --- /dev/null +++ b/javascriptv3/example_code/ec2/tests/describe-regions.unit.test.js @@ -0,0 +1,44 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-ec2", async () => { + const actual = await vi.importActual("@aws-sdk/client-ec2"); + return { + ...actual, + EC2Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/describe-regions.js"; + +describe("describe-regions", () => { + it("should log a list of regions", async () => { + const logSpy = vi.spyOn(console, "log"); + + send.mockResolvedValueOnce({ + Regions: [{ RegionName: "foo" }], + }); + + await main(); + + expect(logSpy).toHaveBeenNthCalledWith(1, "Found regions:"); + expect(logSpy).toHaveBeenNthCalledWith(2, " • foo"); + }); + + it("should log the error message", async () => { + const logSpy = vi.spyOn(console, "error"); + send.mockRejectedValueOnce(new Error("Failed to log regions")); + + await main(); + + expect(logSpy).toHaveBeenCalledWith(new Error("Failed to log regions")); + }); +}); diff --git a/javascriptv3/example_code/ec2/tests/describe-security-groups.unit.test.js b/javascriptv3/example_code/ec2/tests/describe-security-groups.unit.test.js new file mode 100644 index 00000000000..a1b792b4cbe --- /dev/null +++ b/javascriptv3/example_code/ec2/tests/describe-security-groups.unit.test.js @@ -0,0 +1,52 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-ec2", async () => { + const actual = await vi.importActual("@aws-sdk/client-ec2"); + return { + ...actual, + EC2Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/describe-security-groups.js"; + +describe("describe-security-groups", () => { + it("should log the security group info", async () => { + const logSpy = vi.spyOn(console, "log"); + const securityGroups = [ + { + Foo: "bar", + }, + ]; + + send.mockResolvedValueOnce({ + SecurityGroups: securityGroups, + }); + + await main(); + + expect(logSpy).toHaveBeenCalledWith( + JSON.stringify(securityGroups, null, 2) + ); + }); + + it("should log the error message", async () => { + const logSpy = vi.spyOn(console, "error"); + send.mockRejectedValueOnce(new Error("Failed to describe security group")); + + await main(); + + expect(logSpy).toHaveBeenCalledWith( + new Error("Failed to describe security group") + ); + }); +}); diff --git a/javascriptv3/example_code/ec2/tests/disassociate-address.unit.test.js b/javascriptv3/example_code/ec2/tests/disassociate-address.unit.test.js new file mode 100644 index 00000000000..1e3c89ceeec --- /dev/null +++ b/javascriptv3/example_code/ec2/tests/disassociate-address.unit.test.js @@ -0,0 +1,48 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-ec2", async () => { + const actual = await vi.importActual("@aws-sdk/client-ec2"); + return { + ...actual, + EC2Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/disassociate-address.js"; + +describe("disassociate-address", () => { + it("should log a success message", async () => { + const logSpy = vi.spyOn(console, "log"); + + send.mockResolvedValueOnce({}); + + await main(); + + expect(logSpy).toHaveBeenCalledWith("Successfully disassociated address"); + }); + + it("should log the error message", async () => { + const logSpy = vi.spyOn(console, "error"); + send.mockRejectedValueOnce(new Error("Failed to disassociate address")); + + await main(); + + expect(logSpy).toHaveBeenCalledWith( + new Error("Failed to disassociate address") + ); + }); +}); diff --git a/javascriptv3/example_code/ec2/tests/hello.unit.test.js b/javascriptv3/example_code/ec2/tests/hello.unit.test.js new file mode 100644 index 00000000000..3eeecb9eafd --- /dev/null +++ b/javascriptv3/example_code/ec2/tests/hello.unit.test.js @@ -0,0 +1,53 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-ec2", async () => { + const actual = await vi.importActual("@aws-sdk/client-ec2"); + return { + ...actual, + EC2Client: class { + send = send; + }, + }; +}); + +import { main } from "../hello.js"; + +describe("hello", () => { + it("should log a list of security groups", async () => { + const logSpy = vi.spyOn(console, "log"); + send.mockResolvedValueOnce({ + SecurityGroups: [ + { + GroupName: "groupName", + GroupId: "groupId", + }, + ], + }); + + await main(); + + expect(logSpy).nthCalledWith( + 1, + "Hello, Amazon EC2! Let's list up to 10 of your security groups:" + ); + expect(logSpy).nthCalledWith(2, " • groupId: groupName"); + }); + + it("should log the error message", async () => { + const logSpy = vi.spyOn(console, "error"); + send.mockRejectedValueOnce(new Error("Failed to log the list of security groups")); + + await main(); + + expect(logSpy).toHaveBeenCalledWith( + new Error("Failed to log the list of security groups") + ); + }); +}); diff --git a/javascriptv3/example_code/ec2/tests/monitor-instances.unit.test.js b/javascriptv3/example_code/ec2/tests/monitor-instances.unit.test.js new file mode 100644 index 00000000000..22aaf11382c --- /dev/null +++ b/javascriptv3/example_code/ec2/tests/monitor-instances.unit.test.js @@ -0,0 +1,49 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-ec2", async () => { + const actual = await vi.importActual("@aws-sdk/client-ec2"); + return { + ...actual, + EC2Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/monitor-instances.js"; + +describe("monitor-instances", () => { + it("should log a list instance monitoring details", async () => { + const logSpy = vi.spyOn(console, "log"); + + send.mockResolvedValueOnce({ + InstanceMonitorings: [ + { InstanceId: "foo", Monitoring: { State: "bar" } }, + ], + }); + + await main(); + + expect(logSpy).toHaveBeenNthCalledWith(1, "Monitoring status:"); + expect(logSpy).toHaveBeenNthCalledWith( + 2, + " • Detailed monitoring state for foo is bar." + ); + }); + + it("should log the error message", async () => { + const logSpy = vi.spyOn(console, "error"); + send.mockRejectedValueOnce(new Error("Failed")); + + await main(); + + expect(logSpy).toHaveBeenCalledWith(new Error("Failed")); + }); +}); diff --git a/javascriptv3/example_code/ec2/tests/reboot-instances.unit.test.js b/javascriptv3/example_code/ec2/tests/reboot-instances.unit.test.js new file mode 100644 index 00000000000..a025d00f8fb --- /dev/null +++ b/javascriptv3/example_code/ec2/tests/reboot-instances.unit.test.js @@ -0,0 +1,46 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-ec2", async () => { + const actual = await vi.importActual("@aws-sdk/client-ec2"); + return { + ...actual, + EC2Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/reboot-instances.js"; + +describe("reboot-instances", () => { + it("should log a success message", async () => { + const logSpy = vi.spyOn(console, "log"); + + send.mockResolvedValueOnce({}); + + await main(); + + expect(logSpy).toHaveBeenCalledWith("Instance rebooted successfully."); + }); + + it("should log the error message", async () => { + const logSpy = vi.spyOn(console, "error"); + send.mockRejectedValueOnce(new Error("Failed")); + + await main(); + + expect(logSpy).toHaveBeenCalledWith(new Error("Failed")); + }); +}); diff --git a/javascriptv3/example_code/ec2/tests/release-address.unit.test.js b/javascriptv3/example_code/ec2/tests/release-address.unit.test.js new file mode 100644 index 00000000000..13bacef7bd9 --- /dev/null +++ b/javascriptv3/example_code/ec2/tests/release-address.unit.test.js @@ -0,0 +1,48 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-ec2", async () => { + const actual = await vi.importActual("@aws-sdk/client-ec2"); + return { + ...actual, + EC2Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/release-address.js"; + +describe("release-address", () => { + it("should log a success message", async () => { + const logSpy = vi.spyOn(console, "log"); + + send.mockResolvedValueOnce({}); + + await main(); + + expect(logSpy).toHaveBeenCalledWith("Successfully released address."); + }); + + it("should log the error message", async () => { + const logSpy = vi.spyOn(console, "error"); + send.mockRejectedValueOnce(new Error("Failed to release address")); + + await main(); + + expect(logSpy).toHaveBeenCalledWith( + new Error("Failed to release address") + ); + }); +}); diff --git a/javascriptv3/example_code/ec2/tests/run-instances.unit.test.js b/javascriptv3/example_code/ec2/tests/run-instances.unit.test.js new file mode 100644 index 00000000000..6f4a26d0c1b --- /dev/null +++ b/javascriptv3/example_code/ec2/tests/run-instances.unit.test.js @@ -0,0 +1,54 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-ec2", async () => { + const actual = await vi.importActual("@aws-sdk/client-ec2"); + return { + ...actual, + EC2Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/run-instances.js"; + +describe("run-instances", () => { + it("should log the response from the EC2 run instances command", async () => { + const logSpy = vi.spyOn(console, "log"); + send.mockResolvedValueOnce({ + Instances: [ + { + InstanceId: "i-0e8810a92833675aa", + }, + ], + }); + + await main(); + + expect(logSpy).toHaveBeenCalledWith({ + Instances: [ + { + InstanceId: "i-0e8810a92833675aa", + }, + ], + }); + }); + + it("should log the error message", async () => { + const logSpy = vi.spyOn(console, "error"); + send.mockRejectedValueOnce(new Error("Failed to launch instances")); + + await main(); + + expect(logSpy).toHaveBeenCalledWith( + new Error("Failed to launch instances") + ); + }); +}); diff --git a/javascriptv3/example_code/ec2/tests/start-instances.unit.test.js b/javascriptv3/example_code/ec2/tests/start-instances.unit.test.js new file mode 100644 index 00000000000..691222b4172 --- /dev/null +++ b/javascriptv3/example_code/ec2/tests/start-instances.unit.test.js @@ -0,0 +1,49 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-ec2", async () => { + const actual = await vi.importActual("@aws-sdk/client-ec2"); + return { + ...actual, + EC2Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/start-instances.js"; + +describe("start-instances", () => { + it("should log the instances that were started", async () => { + const logSpy = vi.spyOn(console, "log"); + const instances = [ + { + InstanceId: "bar", + }, + ]; + + send.mockResolvedValueOnce({ + StartingInstances: instances, + }); + + await main(); + + expect(logSpy).toHaveBeenNthCalledWith(1, "Starting instances:"); + expect(logSpy).toHaveBeenNthCalledWith(2, " • bar"); + }); + + it("should log the error message", async () => { + const logSpy = vi.spyOn(console, "error"); + send.mockRejectedValueOnce(new Error("Failed to start instances")); + + await main(); + + expect(logSpy).toHaveBeenCalledWith(new Error("Failed to start instances")); + }); +}); diff --git a/javascriptv3/example_code/ec2/tests/stop-instances.unit.test.js b/javascriptv3/example_code/ec2/tests/stop-instances.unit.test.js new file mode 100644 index 00000000000..e2275affc73 --- /dev/null +++ b/javascriptv3/example_code/ec2/tests/stop-instances.unit.test.js @@ -0,0 +1,49 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-ec2", async () => { + const actual = await vi.importActual("@aws-sdk/client-ec2"); + return { + ...actual, + EC2Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/stop-instances.js"; + +describe("stop-instances", () => { + it("should log the instances that were stopped", async () => { + const logSpy = vi.spyOn(console, "log"); + const instances = [ + { + InstanceId: "bar", + }, + ]; + + send.mockResolvedValueOnce({ + StoppingInstances: instances, + }); + + await main(); + + expect(logSpy).toHaveBeenNthCalledWith(1, "Stopping instances:"); + expect(logSpy).toHaveBeenNthCalledWith(2, " • bar"); + }); + + it("should log the error message", async () => { + const logSpy = vi.spyOn(console, "error"); + send.mockRejectedValueOnce(new Error("Failed to stop instances")); + + await main(); + + expect(logSpy).toHaveBeenCalledWith(new Error("Failed to stop instances")); + }); +}); diff --git a/javascriptv3/example_code/ec2/tests/terminate-instances.unit.test.js b/javascriptv3/example_code/ec2/tests/terminate-instances.unit.test.js new file mode 100644 index 00000000000..d155cfe1f41 --- /dev/null +++ b/javascriptv3/example_code/ec2/tests/terminate-instances.unit.test.js @@ -0,0 +1,47 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-ec2", async () => { + const actual = await vi.importActual("@aws-sdk/client-ec2"); + return { + ...actual, + EC2Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/terminate-instances.js"; + +describe("terminate-instances", () => { + it("should log the instances that were terminated", async () => { + const logSpy = vi.spyOn(console, "log"); + send.mockResolvedValueOnce({ + TerminatingInstances: [ + { + InstanceId: "bar", + }, + ], + }); + + await main(); + + expect(logSpy).toHaveBeenNthCalledWith(1, "Terminating instances:"); + expect(logSpy).toHaveBeenNthCalledWith(2, " • bar"); + }); + + it("should log the error message", async () => { + const logSpy = vi.spyOn(console, "error"); + send.mockRejectedValueOnce(new Error("Failed to terminate instances")); + + await main(); + + expect(logSpy).toHaveBeenCalledWith(new Error("Failed to terminate instances")); + }); +}); diff --git a/javascriptv3/example_code/ec2/tests/unmonitor-instances.unit.test.js b/javascriptv3/example_code/ec2/tests/unmonitor-instances.unit.test.js new file mode 100644 index 00000000000..61b0171d19b --- /dev/null +++ b/javascriptv3/example_code/ec2/tests/unmonitor-instances.unit.test.js @@ -0,0 +1,49 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-ec2", async () => { + const actual = await vi.importActual("@aws-sdk/client-ec2"); + return { + ...actual, + EC2Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/unmonitor-instances.js"; + +describe("unmonitor-instances", () => { + it("should log a list instance monitoring details", async () => { + const logSpy = vi.spyOn(console, "log"); + + send.mockResolvedValueOnce({ + InstanceMonitorings: [ + { InstanceId: "foo", Monitoring: { State: "bar" } }, + ], + }); + + await main(); + + expect(logSpy).toHaveBeenNthCalledWith(1, "Monitoring status:"); + expect(logSpy).toHaveBeenNthCalledWith( + 2, + " • Detailed monitoring state for foo is bar." + ); + }); + + it("should log the error message", async () => { + const logSpy = vi.spyOn(console, "error"); + send.mockRejectedValueOnce(new Error("Failed")); + + await main(); + + expect(logSpy).toHaveBeenCalledWith(new Error("Failed")); + }); +}); diff --git a/javascriptv3/package-lock.json b/javascriptv3/package-lock.json index ccf62f616b4..2bd8b2644e8 100644 --- a/javascriptv3/package-lock.json +++ b/javascriptv3/package-lock.json @@ -13,7 +13,8 @@ "example_code/lambda", "example_code/libs", "example_code/sts", - "example_code/support" + "example_code/support", + "example_code/ec2" ], "devDependencies": { "lerna": "^6.3.0" @@ -1287,6 +1288,114 @@ "vitest": "^0.26.2" } }, + "example_code/ec2": { + "name": "example-javascriptv3-ec2", + "version": "1.0.0", + "license": "Apache 2.0", + "dependencies": { + "@aws-sdk/client-ec2": "^3.266.1", + "@aws-sdk/client-ssm": "^3.271.0" + }, + "devDependencies": { + "vitest": "^0.28.4" + } + }, + "example_code/ec2/node_modules/pathe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.0.tgz", + "integrity": "sha512-ODbEPR0KKHqECXW1GoxdDb+AZvULmXjVPy4rt+pGo2+TnjJTIPJQSVS6N63n8T2Ip+syHhbn52OewKicV0373w==", + "dev": true + }, + "example_code/ec2/node_modules/vite-node": { + "version": "0.28.4", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-0.28.4.tgz", + "integrity": "sha512-KM0Q0uSG/xHHKOJvVHc5xDBabgt0l70y7/lWTR7Q0pR5/MrYxadT+y32cJOE65FfjGmJgxpVEEY+69btJgcXOQ==", + "dev": true, + "dependencies": { + "cac": "^6.7.14", + "debug": "^4.3.4", + "mlly": "^1.1.0", + "pathe": "^1.1.0", + "picocolors": "^1.0.0", + "source-map": "^0.6.1", + "source-map-support": "^0.5.21", + "vite": "^3.0.0 || ^4.0.0" + }, + "bin": { + "vite-node": "vite-node.mjs" + }, + "engines": { + "node": ">=v14.16.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "example_code/ec2/node_modules/vitest": { + "version": "0.28.4", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-0.28.4.tgz", + "integrity": "sha512-sfWIy0AdlbyGRhunm+TLQEJrFH9XuRPdApfubsyLcDbCRrUX717BRQKInTgzEfyl2Ipi1HWoHB84Nqtcwxogcg==", + "dev": true, + "dependencies": { + "@types/chai": "^4.3.4", + "@types/chai-subset": "^1.3.3", + "@types/node": "*", + "@vitest/expect": "0.28.4", + "@vitest/runner": "0.28.4", + "@vitest/spy": "0.28.4", + "@vitest/utils": "0.28.4", + "acorn": "^8.8.1", + "acorn-walk": "^8.2.0", + "cac": "^6.7.14", + "chai": "^4.3.7", + "debug": "^4.3.4", + "local-pkg": "^0.4.2", + "pathe": "^1.1.0", + "picocolors": "^1.0.0", + "source-map": "^0.6.1", + "std-env": "^3.3.1", + "strip-literal": "^1.0.0", + "tinybench": "^2.3.1", + "tinypool": "^0.3.1", + "tinyspy": "^1.0.2", + "vite": "^3.0.0 || ^4.0.0", + "vite-node": "0.28.4", + "why-is-node-running": "^2.2.2" + }, + "bin": { + "vitest": "vitest.mjs" + }, + "engines": { + "node": ">=v14.16.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@edge-runtime/vm": "*", + "@vitest/browser": "*", + "@vitest/ui": "*", + "happy-dom": "*", + "jsdom": "*" + }, + "peerDependenciesMeta": { + "@edge-runtime/vm": { + "optional": true + }, + "@vitest/browser": { + "optional": true + }, + "@vitest/ui": { + "optional": true + }, + "happy-dom": { + "optional": true + }, + "jsdom": { + "optional": true + } + } + }, "example_code/lambda": { "name": "example-javascriptv3-lambda", "version": "1.0.0", @@ -6092,46 +6201,46 @@ } }, "node_modules/@aws-sdk/client-ec2": { - "version": "3.245.0", - "license": "Apache-2.0", + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-ec2/-/client-ec2-3.266.1.tgz", + "integrity": "sha512-1T1CUAQwGDA5YFhX5F2hYDs8cGgML2uC1QEkoggfOI3py+R6Pkcopu/Azlj8W8fv8x4IcGNVyVgsMeQ7uqvoLQ==", "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/client-sts": "3.245.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/credential-provider-node": "3.245.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-sdk-ec2": "3.226.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-signing": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/client-sts": "3.266.1", + "@aws-sdk/config-resolver": "3.266.1", + "@aws-sdk/credential-provider-node": "3.266.1", + "@aws-sdk/fetch-http-handler": "3.266.1", + "@aws-sdk/hash-node": "3.266.1", + "@aws-sdk/invalid-dependency": "3.266.1", + "@aws-sdk/middleware-content-length": "3.266.1", + "@aws-sdk/middleware-endpoint": "3.266.1", + "@aws-sdk/middleware-host-header": "3.266.1", + "@aws-sdk/middleware-logger": "3.266.1", + "@aws-sdk/middleware-recursion-detection": "3.266.1", + "@aws-sdk/middleware-retry": "3.266.1", + "@aws-sdk/middleware-sdk-ec2": "3.266.1", + "@aws-sdk/middleware-serde": "3.266.1", + "@aws-sdk/middleware-signing": "3.266.1", + "@aws-sdk/middleware-stack": "3.266.1", + "@aws-sdk/middleware-user-agent": "3.266.1", + "@aws-sdk/node-config-provider": "3.266.1", + "@aws-sdk/node-http-handler": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/smithy-client": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/url-parser": "3.266.1", "@aws-sdk/util-base64": "3.208.0", "@aws-sdk/util-body-length-browser": "3.188.0", "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.245.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "@aws-sdk/util-waiter": "3.226.0", + "@aws-sdk/util-defaults-mode-browser": "3.266.1", + "@aws-sdk/util-defaults-mode-node": "3.266.1", + "@aws-sdk/util-endpoints": "3.266.1", + "@aws-sdk/util-retry": "3.266.1", + "@aws-sdk/util-user-agent-browser": "3.266.1", + "@aws-sdk/util-user-agent-node": "3.266.1", + "@aws-sdk/util-utf8": "3.254.0", + "@aws-sdk/util-waiter": "3.266.1", "fast-xml-parser": "4.0.11", "tslib": "^2.3.1", "uuid": "^8.3.2" @@ -6140,42 +6249,130 @@ "node": ">=14.0.0" } }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/ie11-detection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz", + "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==", + "dependencies": { + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/sha256-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz", + "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==", + "dependencies": { + "@aws-crypto/ie11-detection": "^3.0.0", + "@aws-crypto/sha256-js": "^3.0.0", + "@aws-crypto/supports-web-crypto": "^3.0.0", + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/sha256-js": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-3.0.0.tgz", + "integrity": "sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==", + "dependencies": { + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/supports-web-crypto": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz", + "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==", + "dependencies": { + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/util": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz", + "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==", + "dependencies": { + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/util/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/abort-controller": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.266.1.tgz", + "integrity": "sha512-6tG6dAgMMKh86U2kgo58J6pyC2pSEAtm1bXnhYOuuXBjFgieNvikwjoj//zzciudmp1qTu5Wh99u8LBLmYofFg==", + "dependencies": { + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/client-sso": { - "version": "3.245.0", - "license": "Apache-2.0", + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.266.1.tgz", + "integrity": "sha512-mgrRfNSa7sJyBgAuMvRE5W2izHYl1n0tpxjLZ8rP+AoOp0GrZLpuj9T2XhmVwyR4ibVBNFKdr8nUHWekF4HA+w==", "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.266.1", + "@aws-sdk/fetch-http-handler": "3.266.1", + "@aws-sdk/hash-node": "3.266.1", + "@aws-sdk/invalid-dependency": "3.266.1", + "@aws-sdk/middleware-content-length": "3.266.1", + "@aws-sdk/middleware-endpoint": "3.266.1", + "@aws-sdk/middleware-host-header": "3.266.1", + "@aws-sdk/middleware-logger": "3.266.1", + "@aws-sdk/middleware-recursion-detection": "3.266.1", + "@aws-sdk/middleware-retry": "3.266.1", + "@aws-sdk/middleware-serde": "3.266.1", + "@aws-sdk/middleware-stack": "3.266.1", + "@aws-sdk/middleware-user-agent": "3.266.1", + "@aws-sdk/node-config-provider": "3.266.1", + "@aws-sdk/node-http-handler": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/smithy-client": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/url-parser": "3.266.1", "@aws-sdk/util-base64": "3.208.0", "@aws-sdk/util-body-length-browser": "3.188.0", "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.245.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.266.1", + "@aws-sdk/util-defaults-mode-node": "3.266.1", + "@aws-sdk/util-endpoints": "3.266.1", + "@aws-sdk/util-retry": "3.266.1", + "@aws-sdk/util-user-agent-browser": "3.266.1", + "@aws-sdk/util-user-agent-node": "3.266.1", + "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" }, "engines": { @@ -6183,41 +6380,41 @@ } }, "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/client-sso-oidc": { - "version": "3.245.0", - "license": "Apache-2.0", + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.266.1.tgz", + "integrity": "sha512-eErpowPr6etcZH25v8JfJNdSPr+jet98cFWhsCN8GSxVNkyZci6aZnx6pBsTQCQn7L/zx8i4QZuOo5LYXdzF6A==", "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.266.1", + "@aws-sdk/fetch-http-handler": "3.266.1", + "@aws-sdk/hash-node": "3.266.1", + "@aws-sdk/invalid-dependency": "3.266.1", + "@aws-sdk/middleware-content-length": "3.266.1", + "@aws-sdk/middleware-endpoint": "3.266.1", + "@aws-sdk/middleware-host-header": "3.266.1", + "@aws-sdk/middleware-logger": "3.266.1", + "@aws-sdk/middleware-recursion-detection": "3.266.1", + "@aws-sdk/middleware-retry": "3.266.1", + "@aws-sdk/middleware-serde": "3.266.1", + "@aws-sdk/middleware-stack": "3.266.1", + "@aws-sdk/middleware-user-agent": "3.266.1", + "@aws-sdk/node-config-provider": "3.266.1", + "@aws-sdk/node-http-handler": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/smithy-client": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/url-parser": "3.266.1", "@aws-sdk/util-base64": "3.208.0", "@aws-sdk/util-body-length-browser": "3.188.0", "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.245.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.266.1", + "@aws-sdk/util-defaults-mode-node": "3.266.1", + "@aws-sdk/util-endpoints": "3.266.1", + "@aws-sdk/util-retry": "3.266.1", + "@aws-sdk/util-user-agent-browser": "3.266.1", + "@aws-sdk/util-user-agent-node": "3.266.1", + "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" }, "engines": { @@ -6225,44 +6422,44 @@ } }, "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/client-sts": { - "version": "3.245.0", - "license": "Apache-2.0", + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.266.1.tgz", + "integrity": "sha512-P1hIyJkzojIG5NHuW2u/oae36KUvTB2q4nSIWuU4BrUPDeBoHg+5+zRRavtfK88aLRohwYDumRdLegT6sQNt0g==", "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/credential-provider-node": "3.245.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-sdk-sts": "3.226.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-signing": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.266.1", + "@aws-sdk/credential-provider-node": "3.266.1", + "@aws-sdk/fetch-http-handler": "3.266.1", + "@aws-sdk/hash-node": "3.266.1", + "@aws-sdk/invalid-dependency": "3.266.1", + "@aws-sdk/middleware-content-length": "3.266.1", + "@aws-sdk/middleware-endpoint": "3.266.1", + "@aws-sdk/middleware-host-header": "3.266.1", + "@aws-sdk/middleware-logger": "3.266.1", + "@aws-sdk/middleware-recursion-detection": "3.266.1", + "@aws-sdk/middleware-retry": "3.266.1", + "@aws-sdk/middleware-sdk-sts": "3.266.1", + "@aws-sdk/middleware-serde": "3.266.1", + "@aws-sdk/middleware-signing": "3.266.1", + "@aws-sdk/middleware-stack": "3.266.1", + "@aws-sdk/middleware-user-agent": "3.266.1", + "@aws-sdk/node-config-provider": "3.266.1", + "@aws-sdk/node-http-handler": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/smithy-client": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/url-parser": "3.266.1", "@aws-sdk/util-base64": "3.208.0", "@aws-sdk/util-body-length-browser": "3.188.0", "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.245.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.266.1", + "@aws-sdk/util-defaults-mode-node": "3.266.1", + "@aws-sdk/util-endpoints": "3.266.1", + "@aws-sdk/util-retry": "3.266.1", + "@aws-sdk/util-user-agent-browser": "3.266.1", + "@aws-sdk/util-user-agent-node": "3.266.1", + "@aws-sdk/util-utf8": "3.254.0", "fast-xml-parser": "4.0.11", "tslib": "^2.3.1" }, @@ -6270,265 +6467,775 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.245.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/config-resolver": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.266.1.tgz", + "integrity": "sha512-MqMVki/y40Ot7XWJnziYuO35zqww3JbpH9jzCRCf8vtOE9u6C8VpuiG/OHIR9WQj63Yhcr+7fohmN3kGFnNWFg==", "dependencies": { - "@aws-sdk/credential-provider-env": "3.226.0", - "@aws-sdk/credential-provider-imds": "3.226.0", - "@aws-sdk/credential-provider-process": "3.226.0", - "@aws-sdk/credential-provider-sso": "3.245.0", - "@aws-sdk/credential-provider-web-identity": "3.226.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/types": "3.226.0", + "@aws-sdk/signature-v4": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.266.1", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-node": { - "version": "3.245.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-env": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.266.1.tgz", + "integrity": "sha512-RPq9/FV7fOv14P5DxpqpcwuCa7P6ijUrN1vhpiYaWMQNJSsJK8cIsPECI3xQ1z+oPZ5/1qA++0RpTLqIhq/ifg==", "dependencies": { - "@aws-sdk/credential-provider-env": "3.226.0", - "@aws-sdk/credential-provider-imds": "3.226.0", - "@aws-sdk/credential-provider-ini": "3.245.0", - "@aws-sdk/credential-provider-process": "3.226.0", - "@aws-sdk/credential-provider-sso": "3.245.0", - "@aws-sdk/credential-provider-web-identity": "3.226.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/types": "3.226.0", + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/types": "3.266.1", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.245.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-imds": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.266.1.tgz", + "integrity": "sha512-pTJnJtKaR0JWVqyt9XgHiqlK+3GnZfd3cuKGv9IsYxumVzladm7gNKiNFw0A2KsDj9jhrCRRZwEsH9ooDzZ/Ow==", "dependencies": { - "@aws-sdk/client-sso": "3.245.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/token-providers": "3.245.0", - "@aws-sdk/types": "3.226.0", + "@aws-sdk/node-config-provider": "3.266.1", + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/url-parser": "3.266.1", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/token-providers": { - "version": "3.245.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.266.1.tgz", + "integrity": "sha512-N52GNeHRJufEx+V0mWfwe5cV3ukHong75uRAB0IeapJwj+kKwxxLH1dKOUaGjd/ALx6/hsISoUE/6jm/Qf/DsA==", "dependencies": { - "@aws-sdk/client-sso-oidc": "3.245.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/types": "3.226.0", + "@aws-sdk/credential-provider-env": "3.266.1", + "@aws-sdk/credential-provider-imds": "3.266.1", + "@aws-sdk/credential-provider-process": "3.266.1", + "@aws-sdk/credential-provider-sso": "3.266.1", + "@aws-sdk/credential-provider-web-identity": "3.266.1", + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/shared-ini-file-loader": "3.266.1", + "@aws-sdk/types": "3.266.1", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-endpoints": { - "version": "3.245.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-node": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.266.1.tgz", + "integrity": "sha512-6/iTi/zugdvuyQDmEakYn01kiFKUArL+rIYwcMf20YguXNml6G4HVWJGbX2JklY6ovnznU5ENw6+ftzBAiw/PA==", "dependencies": { - "@aws-sdk/types": "3.226.0", + "@aws-sdk/credential-provider-env": "3.266.1", + "@aws-sdk/credential-provider-imds": "3.266.1", + "@aws-sdk/credential-provider-ini": "3.266.1", + "@aws-sdk/credential-provider-process": "3.266.1", + "@aws-sdk/credential-provider-sso": "3.266.1", + "@aws-sdk/credential-provider-web-identity": "3.266.1", + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/shared-ini-file-loader": "3.266.1", + "@aws-sdk/types": "3.266.1", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-firehose": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-process": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.266.1.tgz", + "integrity": "sha512-4V/7zVnaZo1IP4Is09dlwd2CkltlUdgbX4NUIb+QxZ/BlY7Ws47xyCjjyJhVVCe+y184M58bG4+HR5dHnrBfSA==", "dependencies": { - "@aws-crypto/sha256-browser": "^1.0.0", - "@aws-crypto/sha256-js": "^1.0.0", - "@aws-sdk/config-resolver": "3.6.1", - "@aws-sdk/credential-provider-node": "3.6.1", - "@aws-sdk/fetch-http-handler": "3.6.1", - "@aws-sdk/hash-node": "3.6.1", - "@aws-sdk/invalid-dependency": "3.6.1", - "@aws-sdk/middleware-content-length": "3.6.1", - "@aws-sdk/middleware-host-header": "3.6.1", - "@aws-sdk/middleware-logger": "3.6.1", - "@aws-sdk/middleware-retry": "3.6.1", - "@aws-sdk/middleware-serde": "3.6.1", - "@aws-sdk/middleware-signing": "3.6.1", - "@aws-sdk/middleware-stack": "3.6.1", - "@aws-sdk/middleware-user-agent": "3.6.1", - "@aws-sdk/node-config-provider": "3.6.1", - "@aws-sdk/node-http-handler": "3.6.1", - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/smithy-client": "3.6.1", - "@aws-sdk/types": "3.6.1", - "@aws-sdk/url-parser": "3.6.1", - "@aws-sdk/url-parser-native": "3.6.1", - "@aws-sdk/util-base64-browser": "3.6.1", - "@aws-sdk/util-base64-node": "3.6.1", - "@aws-sdk/util-body-length-browser": "3.6.1", - "@aws-sdk/util-body-length-node": "3.6.1", - "@aws-sdk/util-user-agent-browser": "3.6.1", - "@aws-sdk/util-user-agent-node": "3.6.1", - "@aws-sdk/util-utf8-browser": "3.6.1", - "@aws-sdk/util-utf8-node": "3.6.1", - "tslib": "^2.0.0" + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/shared-ini-file-loader": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">=10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/ie11-detection": { - "version": "1.0.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.266.1.tgz", + "integrity": "sha512-d9hcV7XV1Gh0Dkt8kADsSoB/hZPlbuTp/Vzbj0HMO7hlGxFGcTrGN1UoQc11UAp4kKeF3i2ZQlMsch0d/2gK3w==", "dependencies": { - "tslib": "^1.11.1" + "@aws-sdk/client-sso": "3.266.1", + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/shared-ini-file-loader": "3.266.1", + "@aws-sdk/token-providers": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/sha256-browser": { - "version": "1.2.2", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.266.1.tgz", + "integrity": "sha512-JIktczlqxIc+Gqc/99e7pPzNSgUjYX23fA2dmLt1bHRPH15p8S1Kv73lvqsgLF5EKP1H/UXDu+jVWDklYM6fVA==", "dependencies": { - "@aws-crypto/ie11-detection": "^1.0.0", - "@aws-crypto/sha256-js": "^1.2.2", - "@aws-crypto/supports-web-crypto": "^1.0.0", - "@aws-crypto/util": "^1.2.2", - "@aws-sdk/types": "^3.1.0", - "@aws-sdk/util-locate-window": "^3.0.0", - "tslib": "^1.11.1" + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/sha256-js": { - "version": "1.2.2", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/fetch-http-handler": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.266.1.tgz", + "integrity": "sha512-tyVMLBrJF1weMUqLU81lhuHES5QtFg7RmSysYM8mndePwBl81iQjLF5D7M8CU3aVzXY3TNU3rZBrm5xEK3xK1w==", "dependencies": { - "@aws-crypto/util": "^1.2.2", - "@aws-sdk/types": "^3.1.0", - "tslib": "^1.11.1" + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/querystring-builder": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-base64": "3.208.0", + "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/supports-web-crypto": { - "version": "1.0.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/hash-node": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.266.1.tgz", + "integrity": "sha512-2DbuY/AmtF4ORJVEAdzHfbM1p8w9ThRlu4BGdI7DXpO6/o1kgRBvNEbZc6MZkg7D2bI7TT6bI83u7AAbbMUMng==", "dependencies": { - "tslib": "^1.11.1" + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-buffer-from": "3.208.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/util": { - "version": "1.2.2", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/invalid-dependency": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.266.1.tgz", + "integrity": "sha512-rGc2Bv10eEVQW2Zwrd4/I2QBj5MOhl8qr1NA3UCHJa2501Z97/jn2BGZoX+Cc+iE55so66GKmqMYpibqdtDARw==", "dependencies": { - "@aws-sdk/types": "^3.1.0", - "@aws-sdk/util-utf8-browser": "^3.0.0", - "tslib": "^1.11.1" + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/util/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/abort-controller": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-content-length": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.266.1.tgz", + "integrity": "sha512-Clq14Fr9WkiSg59jnIelL2F5D81HAhdE1MCZIAEEjN1ZK6bEM2kECnNT9CKJjDsuPvhdkrVGv9rjUSANWHLETw==", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/config-resolver": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-endpoint": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.266.1.tgz", + "integrity": "sha512-EVnzd51U/Jhz9x68jFwqHjU4KPsLIXfuS1PSNV598OT04WLQXerBx/fvZh17Y4Dmmu6hf/JUWI9PI5To+oC3mQ==", "dependencies": { - "@aws-sdk/signature-v4": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/middleware-serde": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/signature-v4": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/url-parser": "3.266.1", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-env": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-host-header": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.266.1.tgz", + "integrity": "sha512-3FSD8EkxOGV4O2iKgBnAwvj3PG/lABzcqmX6hABnsIusXAlUV5umh39FteipLcjnMXB04cLgmcgcG2o3cSA3tQ==", "dependencies": { - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-imds": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-logger": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.266.1.tgz", + "integrity": "sha512-FbD9Hqt994PyDm7OTG8PbIuB6Mv9vYhqOM2RhqC1UGtprDmk084/cEv9Sp+qY33lFPxjZstKneQK6FhAfozIAQ==", "dependencies": { - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.266.1.tgz", + "integrity": "sha512-rgRxdgrLOD20zIFrjFW7Bu3s4MXC1KLDbqJY6sMpc5D8mmQlxfaQiSnCQrjgUxbW0Ni+rXiatlW2q2MwCUAPzw==", "dependencies": { - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/shared-ini-file-loader": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-retry": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.266.1.tgz", + "integrity": "sha512-xBiKAjAP1j8SbKhF28bk1g2iZoiVMI7XV/x5d0g6igsvI4RiqzywTsiLi2VVsYPCY6bwbn0Zgt93Mej/MFfn5w==", + "dependencies": { + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/service-error-classification": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-middleware": "3.266.1", + "@aws-sdk/util-retry": "3.266.1", + "tslib": "^2.3.1", + "uuid": "^8.3.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-sdk-sts": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.266.1.tgz", + "integrity": "sha512-lM9t+S+PjmJ/xhoP9e/sIUS2bZyuEbobHo6a9WPk0UcdiqDWBIp+8MlTRDafKZtlN36gPDk5+qM9tXcI6P5YCA==", + "dependencies": { + "@aws-sdk/middleware-signing": "3.266.1", + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/signature-v4": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-serde": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.266.1.tgz", + "integrity": "sha512-UFJ4BlRG/MUOJq5afHohkDsMDPAkbuXGCkhTz93MGxbACEOJYoEvsaMjpLft88wu4D11GY1Y2PVFkfxJUYWDXA==", + "dependencies": { + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-signing": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.266.1.tgz", + "integrity": "sha512-PbVwt7xSP3xlT5x4Xdj7+2T1PgCW00bh5QrCJi2wo3dEN9UowU/IVGzGSv4/OJItLZWe4puGb1WtA+LKeWA40w==", + "dependencies": { + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/signature-v4": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-middleware": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-stack": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.266.1.tgz", + "integrity": "sha512-liqq541u1eCDe+TCDOSrOcH6kAB6Dn1R8pbtJ23hP3fYM5/8W3V0f6VcywALVL9Pam+mkYmodWeDRQK8ieLEOg==", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.266.1.tgz", + "integrity": "sha512-yoHQSP3OngZnLWeuqMrYkOifMD8FUZxyXoUO9iHPytxns1Gri/4Gn/1raNWMqdrSIlBKPorKzCEu24DX5klf0w==", + "dependencies": { + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/node-config-provider": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.266.1.tgz", + "integrity": "sha512-cDDuj64nGskZNJQdwglIRqTazfZt0f8pooT1ZJrFoydLfMmR9yi6orizQ7C0i1vMkY02HxgwqJiwXuJ73gmaqA==", + "dependencies": { + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/shared-ini-file-loader": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/node-http-handler": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.266.1.tgz", + "integrity": "sha512-oa1cDeD+fwGFg8xMfNUZ95xAE0dxiXaTdJwSqOzCVIBz/auahHrcfXey+Oynw1zUjv8ijOH9z/SXYrqfwlZosw==", + "dependencies": { + "@aws-sdk/abort-controller": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/querystring-builder": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/property-provider": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.266.1.tgz", + "integrity": "sha512-1ZRWqc4sNFGDRZ0Tl4WaukU9jR4ghB84QEQOqc48cJIoDiwOAP9UBJTNBJXCVllmPWGNgx4/lfWJoaFcvwsrzw==", + "dependencies": { + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/protocol-http": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.266.1.tgz", + "integrity": "sha512-8Z1Yfkf59of1R9qRSPmDKIHDo0n5YNCh1FrRLmCRqjjiZ4Ed7FJV/W6YYnJ6VbPcVv1WK6FvwzrGPM2gg4P48Q==", + "dependencies": { + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/querystring-builder": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.266.1.tgz", + "integrity": "sha512-D1LoDv3A+c6YIYq6F2T5m8V0C14vQAarSoT6romVIIYCDuMK4R5BwB1NLFRco1dczyAYmqScxdV2C26+xjXJfw==", + "dependencies": { + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/querystring-parser": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.266.1.tgz", + "integrity": "sha512-Ck8Ahluj+/eK4FcX8IlbO7DA1MNWdnh1rKjc1qx/ZWh71G/FdZ8Sse33N+Ed/z9v7H8W695dprRT6CuRlqyAbw==", + "dependencies": { + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/service-error-classification": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.266.1.tgz", + "integrity": "sha512-c2EvUvn9XLaDjKozCcYlO4cbtbJzBgx6EuhW1eLsMGLY3EobVRo1hGT0PtRmWQNnoW0BXv6oi/8NLOV6x37fxA==", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/shared-ini-file-loader": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.266.1.tgz", + "integrity": "sha512-yV8GY1Cgbc6pl0SRRQtx3PPcZpqYvKf/h1pz0FgkMBPHwOhp7zJYUkYmu3yvXulfORNsM5ro7wnKa0kxb5ljmg==", + "dependencies": { + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/signature-v4": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.266.1.tgz", + "integrity": "sha512-kiHHA3voQKz4QYLKbR/3hKkY2n62MuGewYctvtQsh1069U/OI7FVceIE5hZnrlC5XX4jiNoF1lKdyRhXmK5GMQ==", + "dependencies": { + "@aws-sdk/is-array-buffer": "3.201.0", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-hex-encoding": "3.201.0", + "@aws-sdk/util-middleware": "3.266.1", + "@aws-sdk/util-uri-escape": "3.201.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/smithy-client": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.266.1.tgz", + "integrity": "sha512-fg/+JzHeYPS0poVckSiaE/h1eWf5+u2Cs8/zh/4bAvVPqSA3Gg/yBrtvP+HxKLoSo+ObuPb9aXXkeCKPke6ktA==", + "dependencies": { + "@aws-sdk/middleware-stack": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/token-providers": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.266.1.tgz", + "integrity": "sha512-N+qiLQvPvel9dFdEoffRG4Mcp2p82OMyUvS12P5iYWqPCDuPzU72rYT2PmVFKINmflqEySjsKo8vIaWx7Kl4pQ==", + "dependencies": { + "@aws-sdk/client-sso-oidc": "3.266.1", + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/shared-ini-file-loader": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/types": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.266.1.tgz", + "integrity": "sha512-OVg3CjHKT3/Ws33jx3TUYYkbFOv/CLb9m3P4gZQDvgKPsOagp96LOsG8ZWdcVZCvSorAUqSb5kuc1utsjJxDTw==", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/url-parser": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.266.1.tgz", + "integrity": "sha512-7IBZ8TjTWafug26CnNpz6cdrLU0TZ0G7N9LNfqjM/+69KI/Ragvv2Lsm4jhSv2uMx5OEzwlVYIEYaKMnAUiRLQ==", + "dependencies": { + "@aws-sdk/querystring-parser": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-defaults-mode-browser": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.266.1.tgz", + "integrity": "sha512-4arGHXzTwLIPlNb3a2v7i2fpKFBLQfFygUDT1E6VCAbNpvPVJk+/w0foFs0Zc8BQsPQsC+ZKe20pFw0hnHZJGw==", + "dependencies": { + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/types": "3.266.1", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-defaults-mode-node": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.266.1.tgz", + "integrity": "sha512-EOo2pPtvJUd9vkwRAptBIeF4P5zHeHcvCcCw6ZuP7bLvaUNHxepKAy4iesaB4aqqRgVn6AdV7w489HnTxa8Kpw==", + "dependencies": { + "@aws-sdk/config-resolver": "3.266.1", + "@aws-sdk/credential-provider-imds": "3.266.1", + "@aws-sdk/node-config-provider": "3.266.1", + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-endpoints": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.266.1.tgz", + "integrity": "sha512-w2VjoAIvfw2gau+cVQ5vahfy5CqQJrNOnSXbH6kjpd8RVQ0wOWBDVKb8tUwF4ROD1zovx0jT9d7bsYdMyo3HJw==", + "dependencies": { + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-middleware": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.266.1.tgz", + "integrity": "sha512-iZq+lq80byWZMsdII4OS7CdhgGeuBXBPd//iFWq4YmGts5W1QI1FLIFcsOuUnZtQMiaAuvLXtEO8ZrfaKTFKgw==", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-retry": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-retry/-/util-retry-3.266.1.tgz", + "integrity": "sha512-mQZshXR31iM9eV+x50pdmIFuDAjd8wDrxJ/kDnwR0H9NaeIQ3SKcNFTs0PPqtu/JUX0vb4wvm2KjIkUyO2iijg==", + "dependencies": { + "@aws-sdk/service-error-classification": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.266.1.tgz", + "integrity": "sha512-zT5Sc0rNLOhBC+RhFF0FRE2y+CIf50rJZLkxRXoVRXJeFVSKPyhk3AKqe2Q6FE+yQsTV2FlwSDI98SxgaDORkQ==", + "dependencies": { + "@aws-sdk/types": "3.266.1", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.266.1.tgz", + "integrity": "sha512-o8uYR38GxaKj95acC0tIxM2K0vANVMpEpgpWcW+QTvVc4Vm4im0SBD7BvgXbQV2VW8X28ZNddVbCK7pHHEJrtg==", + "dependencies": { + "@aws-sdk/node-config-provider": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "aws-crt": ">=1.0.0" + }, + "peerDependenciesMeta": { + "aws-crt": { + "optional": true + } + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-waiter": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-waiter/-/util-waiter-3.266.1.tgz", + "integrity": "sha512-g3uzVouAs6LfYU7vZEy4BIEIiCXSAjZnGV4RjTagfxZRpNtAriFn29Zys4nA/cBHxUkOS3XTzbt5eTBwEdK/FA==", + "dependencies": { + "@aws-sdk/abort-controller": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-firehose": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/sha256-browser": "^1.0.0", + "@aws-crypto/sha256-js": "^1.0.0", + "@aws-sdk/config-resolver": "3.6.1", + "@aws-sdk/credential-provider-node": "3.6.1", + "@aws-sdk/fetch-http-handler": "3.6.1", + "@aws-sdk/hash-node": "3.6.1", + "@aws-sdk/invalid-dependency": "3.6.1", + "@aws-sdk/middleware-content-length": "3.6.1", + "@aws-sdk/middleware-host-header": "3.6.1", + "@aws-sdk/middleware-logger": "3.6.1", + "@aws-sdk/middleware-retry": "3.6.1", + "@aws-sdk/middleware-serde": "3.6.1", + "@aws-sdk/middleware-signing": "3.6.1", + "@aws-sdk/middleware-stack": "3.6.1", + "@aws-sdk/middleware-user-agent": "3.6.1", + "@aws-sdk/node-config-provider": "3.6.1", + "@aws-sdk/node-http-handler": "3.6.1", + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/smithy-client": "3.6.1", + "@aws-sdk/types": "3.6.1", + "@aws-sdk/url-parser": "3.6.1", + "@aws-sdk/url-parser-native": "3.6.1", + "@aws-sdk/util-base64-browser": "3.6.1", + "@aws-sdk/util-base64-node": "3.6.1", + "@aws-sdk/util-body-length-browser": "3.6.1", + "@aws-sdk/util-body-length-node": "3.6.1", + "@aws-sdk/util-user-agent-browser": "3.6.1", + "@aws-sdk/util-user-agent-node": "3.6.1", + "@aws-sdk/util-utf8-browser": "3.6.1", + "@aws-sdk/util-utf8-node": "3.6.1", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/ie11-detection": { + "version": "1.0.0", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/sha256-browser": { + "version": "1.2.2", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/ie11-detection": "^1.0.0", + "@aws-crypto/sha256-js": "^1.2.2", + "@aws-crypto/supports-web-crypto": "^1.0.0", + "@aws-crypto/util": "^1.2.2", + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/sha256-js": { + "version": "1.2.2", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/util": "^1.2.2", + "@aws-sdk/types": "^3.1.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/supports-web-crypto": { + "version": "1.0.0", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/util": { + "version": "1.2.2", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/util/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/abort-controller": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/config-resolver": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/signature-v4": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-env": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-imds": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/shared-ini-file-loader": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, @@ -13876,304 +14583,1156 @@ "tslib": "^1.8.0" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/querystring-parser": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/service-error-classification": { + "version": "3.6.1", + "license": "Apache-2.0", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/shared-ini-file-loader": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/signature-v4": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/is-array-buffer": "3.6.1", + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-hex-encoding": "3.6.1", + "@aws-sdk/util-uri-escape": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/smithy-client": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/middleware-stack": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/types": { + "version": "3.6.1", + "license": "Apache-2.0", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/url-parser": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/querystring-parser": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + } + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/url-parser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-body-length-browser": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.8.0" + } + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-body-length-node": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-buffer-from": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/is-array-buffer": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-hex-encoding": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-uri-escape": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "3.6.1", + "bowser": "^2.11.0", + "tslib": "^1.8.0" + } + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/node-config-provider": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-utf8-browser": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.8.0" + } + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-utf8-node": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/util-buffer-from": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-waiter": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/abort-controller": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-waiter/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/fast-xml-parser": { + "version": "3.21.1", + "license": "MIT", + "dependencies": { + "strnum": "^1.0.4" + }, + "bin": { + "xml2js": "cli.js" + }, + "funding": { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" + } + }, + "node_modules/@aws-sdk/client-s3/node_modules/uuid": { + "version": "3.4.0", + "license": "MIT", + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/@aws-sdk/client-ses": { + "version": "3.238.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/client-sts": "3.238.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/credential-provider-node": "3.238.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-signing": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.226.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/util-waiter": "3.226.0", + "fast-xml-parser": "4.0.11", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ssm": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-ssm/-/client-ssm-3.271.0.tgz", + "integrity": "sha512-ylDxFxXDAq82kie9q1Df8vejxN0tQHlrdROY/CRiU7xo9mhV0x6O8p3w/y+E65Y/BsdN1Q95yz9KrGQaUcmo7A==", + "dependencies": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/client-sts": "3.271.0", + "@aws-sdk/config-resolver": "3.271.0", + "@aws-sdk/credential-provider-node": "3.271.0", + "@aws-sdk/fetch-http-handler": "3.271.0", + "@aws-sdk/hash-node": "3.271.0", + "@aws-sdk/invalid-dependency": "3.271.0", + "@aws-sdk/middleware-content-length": "3.271.0", + "@aws-sdk/middleware-endpoint": "3.271.0", + "@aws-sdk/middleware-host-header": "3.271.0", + "@aws-sdk/middleware-logger": "3.271.0", + "@aws-sdk/middleware-recursion-detection": "3.271.0", + "@aws-sdk/middleware-retry": "3.271.0", + "@aws-sdk/middleware-serde": "3.271.0", + "@aws-sdk/middleware-signing": "3.271.0", + "@aws-sdk/middleware-stack": "3.271.0", + "@aws-sdk/middleware-user-agent": "3.271.0", + "@aws-sdk/node-config-provider": "3.271.0", + "@aws-sdk/node-http-handler": "3.271.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/smithy-client": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/url-parser": "3.271.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.271.0", + "@aws-sdk/util-defaults-mode-node": "3.271.0", + "@aws-sdk/util-endpoints": "3.271.0", + "@aws-sdk/util-retry": "3.271.0", + "@aws-sdk/util-user-agent-browser": "3.271.0", + "@aws-sdk/util-user-agent-node": "3.271.0", + "@aws-sdk/util-utf8": "3.254.0", + "@aws-sdk/util-waiter": "3.271.0", + "tslib": "^2.3.1", + "uuid": "^8.3.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/ie11-detection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz", + "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==", + "dependencies": { + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/sha256-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz", + "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==", + "dependencies": { + "@aws-crypto/ie11-detection": "^3.0.0", + "@aws-crypto/sha256-js": "^3.0.0", + "@aws-crypto/supports-web-crypto": "^3.0.0", + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/sha256-js": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-3.0.0.tgz", + "integrity": "sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==", + "dependencies": { + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/supports-web-crypto": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz", + "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==", + "dependencies": { + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/util": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz", + "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==", + "dependencies": { + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/util/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/abort-controller": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.271.0.tgz", + "integrity": "sha512-sP4RvP0fvmMySS6hV/EKMrTJ9KVMH85rn1EKvmJ3nBTKRKiR8GQUS/vX+dhLYu+3jRs2P6cY2zjGzpaOcII91w==", + "dependencies": { + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/client-sso": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.271.0.tgz", + "integrity": "sha512-auWPqok8yJ2UOQfNrvfLNmvf0tRAbekaZRvZZ2TzTKTKd7yz6V7Y5+AdRnp01FHoOQ+8A7MHTXtp7h7i9qltKw==", + "dependencies": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.271.0", + "@aws-sdk/fetch-http-handler": "3.271.0", + "@aws-sdk/hash-node": "3.271.0", + "@aws-sdk/invalid-dependency": "3.271.0", + "@aws-sdk/middleware-content-length": "3.271.0", + "@aws-sdk/middleware-endpoint": "3.271.0", + "@aws-sdk/middleware-host-header": "3.271.0", + "@aws-sdk/middleware-logger": "3.271.0", + "@aws-sdk/middleware-recursion-detection": "3.271.0", + "@aws-sdk/middleware-retry": "3.271.0", + "@aws-sdk/middleware-serde": "3.271.0", + "@aws-sdk/middleware-stack": "3.271.0", + "@aws-sdk/middleware-user-agent": "3.271.0", + "@aws-sdk/node-config-provider": "3.271.0", + "@aws-sdk/node-http-handler": "3.271.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/smithy-client": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/url-parser": "3.271.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.271.0", + "@aws-sdk/util-defaults-mode-node": "3.271.0", + "@aws-sdk/util-endpoints": "3.271.0", + "@aws-sdk/util-retry": "3.271.0", + "@aws-sdk/util-user-agent-browser": "3.271.0", + "@aws-sdk/util-user-agent-node": "3.271.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.271.0.tgz", + "integrity": "sha512-pYN8r0slDbP0v2q0SyLKihE2PPfbsF/hH7+11w6OpAMvSGvfm+m8R5rB49Szy3bkDudR0MhLpD6D76yoy9ckrQ==", + "dependencies": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.271.0", + "@aws-sdk/fetch-http-handler": "3.271.0", + "@aws-sdk/hash-node": "3.271.0", + "@aws-sdk/invalid-dependency": "3.271.0", + "@aws-sdk/middleware-content-length": "3.271.0", + "@aws-sdk/middleware-endpoint": "3.271.0", + "@aws-sdk/middleware-host-header": "3.271.0", + "@aws-sdk/middleware-logger": "3.271.0", + "@aws-sdk/middleware-recursion-detection": "3.271.0", + "@aws-sdk/middleware-retry": "3.271.0", + "@aws-sdk/middleware-serde": "3.271.0", + "@aws-sdk/middleware-stack": "3.271.0", + "@aws-sdk/middleware-user-agent": "3.271.0", + "@aws-sdk/node-config-provider": "3.271.0", + "@aws-sdk/node-http-handler": "3.271.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/smithy-client": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/url-parser": "3.271.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.271.0", + "@aws-sdk/util-defaults-mode-node": "3.271.0", + "@aws-sdk/util-endpoints": "3.271.0", + "@aws-sdk/util-retry": "3.271.0", + "@aws-sdk/util-user-agent-browser": "3.271.0", + "@aws-sdk/util-user-agent-node": "3.271.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/client-sts": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.271.0.tgz", + "integrity": "sha512-dsLGj1Q3EdqLYNjm0WpeK07wv8Xed6R+tCf+x4KMWOAVAnz72XuoZNWDI2NvACubAniEhpFycMmf39Y6NCAkLg==", + "dependencies": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.271.0", + "@aws-sdk/credential-provider-node": "3.271.0", + "@aws-sdk/fetch-http-handler": "3.271.0", + "@aws-sdk/hash-node": "3.271.0", + "@aws-sdk/invalid-dependency": "3.271.0", + "@aws-sdk/middleware-content-length": "3.271.0", + "@aws-sdk/middleware-endpoint": "3.271.0", + "@aws-sdk/middleware-host-header": "3.271.0", + "@aws-sdk/middleware-logger": "3.271.0", + "@aws-sdk/middleware-recursion-detection": "3.271.0", + "@aws-sdk/middleware-retry": "3.271.0", + "@aws-sdk/middleware-sdk-sts": "3.271.0", + "@aws-sdk/middleware-serde": "3.271.0", + "@aws-sdk/middleware-signing": "3.271.0", + "@aws-sdk/middleware-stack": "3.271.0", + "@aws-sdk/middleware-user-agent": "3.271.0", + "@aws-sdk/node-config-provider": "3.271.0", + "@aws-sdk/node-http-handler": "3.271.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/smithy-client": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/url-parser": "3.271.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.271.0", + "@aws-sdk/util-defaults-mode-node": "3.271.0", + "@aws-sdk/util-endpoints": "3.271.0", + "@aws-sdk/util-retry": "3.271.0", + "@aws-sdk/util-user-agent-browser": "3.271.0", + "@aws-sdk/util-user-agent-node": "3.271.0", + "@aws-sdk/util-utf8": "3.254.0", + "fast-xml-parser": "4.0.11", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/config-resolver": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.271.0.tgz", + "integrity": "sha512-WNtUjOa9ufKK4+o58YHosjU9J8v494Fb10tHFqD4OspFWLxBKzSJ+r6xpQRcVPucxsmocGJ2QhIiNYo8OySKkA==", + "dependencies": { + "@aws-sdk/signature-v4": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.271.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/credential-provider-env": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.271.0.tgz", + "integrity": "sha512-lKZGcDYe8us2Ep7/AjhLyMMTq0NuVt+M+L1eedBGRuGkx/Hrvn4qwlIvSXZhiodoQVa+Wr1zIah3Z06U0dTaZA==", + "dependencies": { + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/credential-provider-imds": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.271.0.tgz", + "integrity": "sha512-u3KsjtGBo1SA9HQAVxfA7zHWirlrdKsqsMpnp4eOtixZLoz1e2EytrR5XZem2HND0lzjrUrEPGDPp5OpDtcHxw==", + "dependencies": { + "@aws-sdk/node-config-provider": "3.271.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/url-parser": "3.271.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.271.0.tgz", + "integrity": "sha512-zIclMwXbJeNev74+0tbxLpEO2Js7AhqvR2Msiytz05kOXRyk61NMEavtKRp1YxD2KMptONnvNlbWbNW2rrRDnw==", + "dependencies": { + "@aws-sdk/credential-provider-env": "3.271.0", + "@aws-sdk/credential-provider-imds": "3.271.0", + "@aws-sdk/credential-provider-process": "3.271.0", + "@aws-sdk/credential-provider-sso": "3.271.0", + "@aws-sdk/credential-provider-web-identity": "3.271.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/shared-ini-file-loader": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/credential-provider-node": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.271.0.tgz", + "integrity": "sha512-hfdJ+8QM5xXEm4mF4AfIy6T1fVb2zTaUVm5PfPDHtkggVM1L+QSywEkZ2lUqQZMLbbatJqVLy2EMA91k5kjVrA==", + "dependencies": { + "@aws-sdk/credential-provider-env": "3.271.0", + "@aws-sdk/credential-provider-imds": "3.271.0", + "@aws-sdk/credential-provider-ini": "3.271.0", + "@aws-sdk/credential-provider-process": "3.271.0", + "@aws-sdk/credential-provider-sso": "3.271.0", + "@aws-sdk/credential-provider-web-identity": "3.271.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/shared-ini-file-loader": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/credential-provider-process": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.271.0.tgz", + "integrity": "sha512-Q1HIZYTUYLVe0cNc3HbtFOFzgo3A6PHcmT62T8XClAhFRhkOsJ/KWUybjm8col49/1uqIjKA20E7P7f5Qnn2TQ==", + "dependencies": { + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/shared-ini-file-loader": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.271.0.tgz", + "integrity": "sha512-TIvsv4xXTME6UsH7g05IzVDCLujaMmgv45A0KcAyM/J/HvFQ9IBOBdyKGU5zIawPvCWXiqQqZs/kDchdB2sjXA==", + "dependencies": { + "@aws-sdk/client-sso": "3.271.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/shared-ini-file-loader": "3.271.0", + "@aws-sdk/token-providers": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.271.0.tgz", + "integrity": "sha512-GD1mg7fMA3ESl0jdzH/+keZHV9Fue/iaGMIWNCUm7M9dOJo0JZbDNzSaMtxZnuA6xtkvw3FiLH6ZxPt0V+7wmg==", + "dependencies": { + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/fetch-http-handler": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.271.0.tgz", + "integrity": "sha512-yc0YgKioACFcfs7RPtVHRlpsyYJNdEHkqiWtnRSXG0vuZHAkfvwzchrDK4bizMblnmEV/xbl495ZqDlVbQ0c9A==", + "dependencies": { + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/querystring-builder": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/util-base64": "3.208.0", + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/hash-node": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.271.0.tgz", + "integrity": "sha512-VamRhkGo2uaVe7KhQhdTqpp9y5JKSFNE3yCUZf/o6lGwL9BgBpBiVqzwCePtas7hAphAaOYvefIwx0XLaCeQ1w==", + "dependencies": { + "@aws-sdk/types": "3.271.0", + "@aws-sdk/util-buffer-from": "3.208.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/invalid-dependency": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.271.0.tgz", + "integrity": "sha512-ZN8JmN/t+4UTHkQ6wdod2KKLfJcewLS3D/0iZLnvvOzLlymhcHp9QY8t//RObF+WxnlWeCAvZttoMl/a2MLpYQ==", + "dependencies": { + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-content-length": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.271.0.tgz", + "integrity": "sha512-bmfqCvjFcowa6jLltJIkGHNXY599Fu9ROoMtYjQiD2ixWHmUpS0I/VivcxXL3uES2qhehxYXyJFyCt7aqRQqcA==", + "dependencies": { + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-endpoint": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.271.0.tgz", + "integrity": "sha512-pibhIe57e68NAfDUY5c7d9zo6WfNwgfclwtrK0nV3OXw9psNeCLGLC1YbzsTun49tm0ICSmkHgmqfsXAVe4HWA==", + "dependencies": { + "@aws-sdk/middleware-serde": "3.271.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/signature-v4": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/url-parser": "3.271.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.271.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-host-header": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.271.0.tgz", + "integrity": "sha512-sp75WZDzDui/Wr3GnQH/db4DXgVdOpKdRQddDsRuULzri8HeJlhMW+JCP+sP0kQmkO06Dagxv1tSmENUxFhPaQ==", + "dependencies": { + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-logger": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.271.0.tgz", + "integrity": "sha512-mB/vayfsuc20PySSpbbQ56CPER/RAZF5oGkwGuwFI3bY+VwRun0MOnx3yHj7Ja2DN1ZEOH1Hzrb0eUgREozmHw==", + "dependencies": { + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.271.0.tgz", + "integrity": "sha512-prrS/YL3GdLODqVBSgxvpUfo9aPBLB3Km5wNBdbhjjN0rI1RqjD+0LquVgaz6C1VU/I8cYbnxrFYtQVcdgnWpg==", + "dependencies": { + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-retry": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.271.0.tgz", + "integrity": "sha512-yCBXmxbFGT/4czTi+e4z7lV0nbMWctvvzOtl1ssBiG0LagijIhK4KUp0KTnqDJ+yBqxMpd7wNJ1B0NdS0re6Fw==", + "dependencies": { + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/service-error-classification": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/util-middleware": "3.271.0", + "@aws-sdk/util-retry": "3.271.0", + "tslib": "^2.3.1", + "uuid": "^8.3.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-sdk-sts": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.271.0.tgz", + "integrity": "sha512-/h8+PAx+85M+tSL/kl1lWVgHrrodmDRuQuDLXC7ufE6C1JRxRBkWMTOg6S3ZeuKo1Va/8RcAKf7jtkGdIBD5HQ==", + "dependencies": { + "@aws-sdk/middleware-signing": "3.271.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/signature-v4": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-serde": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.271.0.tgz", + "integrity": "sha512-louPEKEZP2TtTavMwg4k6IJjEbXC6xV05Wtb4I+ZKzjupoTG80nmLtgPU7rnvweej3D69aeSQETfPoq1N4u4mg==", + "dependencies": { + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-signing": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.271.0.tgz", + "integrity": "sha512-jCxbt6sehnmV6we2uu0rY5McREJQ9WGQ3HCtjG1qSxm1vJkROX40IUvq7uvwPi3FquqIv2pCc64vLuDdhfs6OA==", + "dependencies": { + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/signature-v4": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/util-middleware": "3.271.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-stack": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.271.0.tgz", + "integrity": "sha512-ojbvxVdJRzvHx1SiXTX8z5qtsX/86+puqqmhTNQTed0/sp856rJVHrE+59qrOa8tNX+dHih5nzmjZ2OvhP+duA==", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.271.0.tgz", + "integrity": "sha512-VnoY5DfdkSorT/bM91FPwHduzkRFBTi/MyU/J08xPkuAQfu2CmvIBr8W15XN1ysAZbZVyDir7NeE9MNG6Q/soA==", + "dependencies": { + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/querystring-parser": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/node-config-provider": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.271.0.tgz", + "integrity": "sha512-PbEQ7GRO9/oXXrxIMPkOsL1lKzi3FzMizFj1tLjSkN+lvUaRt2w9Yrb+P3G7Wr2VyniI8QwpAPnebQ+5Rg7yig==", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/shared-ini-file-loader": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/service-error-classification": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/node-http-handler": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.271.0.tgz", + "integrity": "sha512-r/wLPLUo3HeWHumvnYxP4LvMz1cKpVO7XVognt5caeDakS2CDiFN3NiCO2PFxOGoWCyMDKcroKtIdXETcgrEbQ==", + "dependencies": { + "@aws-sdk/abort-controller": "3.271.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/querystring-builder": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/shared-ini-file-loader": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/property-provider": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.271.0.tgz", + "integrity": "sha512-y95eWGs2tbCESZZVqNWbDXOL43y18bZSS0mfac2n7srOfeuVh+4+8Zdhsnz/NW3Ao61+k1IxKCFnX0iKfJSu2Q==", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/signature-v4": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/protocol-http": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.271.0.tgz", + "integrity": "sha512-WWyS/M+A0NoEBBLbgO1qG7oxEGWvhjsFJgX0Yzz38mKIjW8G/31X9ylaCQoGFSOTn6GXBRqc/i0P86os+wL45Q==", "dependencies": { - "@aws-sdk/is-array-buffer": "3.6.1", - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-hex-encoding": "3.6.1", - "@aws-sdk/util-uri-escape": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/smithy-client": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/querystring-builder": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.271.0.tgz", + "integrity": "sha512-2FKaoeOgCyn2eShq4hZrEBQ9euHYMvh0aFwWrjQgXjUWJmV4Q+/+eob/sEDeeYvkMW45T5aIG7D+hbVowgWZAQ==", "dependencies": { - "@aws-sdk/middleware-stack": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.271.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/types": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/querystring-parser": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.271.0.tgz", + "integrity": "sha512-SGcxf+gaSMMST806zQxETEoe3ENWkncQh+cpDNDRo/oS582PMd7tIOAxP9JJdLJGp9UkIdSkTLWXDjzk9Zt02w==", + "dependencies": { + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/url-parser": { - "version": "3.6.1", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/querystring-parser": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/service-error-classification": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.271.0.tgz", + "integrity": "sha512-yTnxoeCa4uMRfpaaq6oG1h1a01vXQ2al+D0DyX+D5sw7u6RyZOaxxUEbyfEPTN+JtRw+M+zcdlvto3swIwRqoQ==", + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/url-parser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-body-length-browser": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/shared-ini-file-loader": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.271.0.tgz", + "integrity": "sha512-PR1Hco+r1sH7WlqxaO3Vvl6a8I5juvwVjwjjorbI3EVsxQgEcyCjy1ZVnpCAxY1Xam7ne5nAWO6Y6LtfY4JJ5g==", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-body-length-node": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/signature-v4": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.271.0.tgz", + "integrity": "sha512-OzS+h0MGqzukJSrPqVi08pWDGZkq8U/yXf2LfCkQz58Rv/pbCuDIIN7Oab6IwnVPQV7KoCsegYL3e6BpOp1qpA==", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/is-array-buffer": "3.201.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/util-hex-encoding": "3.201.0", + "@aws-sdk/util-middleware": "3.271.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-buffer-from": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/smithy-client": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.271.0.tgz", + "integrity": "sha512-8wqNArFoLx2hy2kT5jV7JsaZ4jIqI535K1WXBCkzVLKNMv6RVYCBN57I5+C5sgVtHCZwy9RLzRHJIGLEIKIfBg==", "dependencies": { - "@aws-sdk/is-array-buffer": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/middleware-stack": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-hex-encoding": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/token-providers": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.271.0.tgz", + "integrity": "sha512-tCh3Pw7VuSGT6yg8n7IeNc25IT8cjPS9Q0YKzjN8rPBZW5iI8/kJyZ7kQBj52JD8WrEYCoxG4hnDvawe1e1lAA==", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/client-sso-oidc": "3.271.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/shared-ini-file-loader": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-uri-escape": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/types": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.271.0.tgz", + "integrity": "sha512-w4oNKEaBul7eh2IM97c89xaH9Ti8+e+u/Rc1ZkgNtpnfOpDUU2t3ugJ91ihGH+xtASQCWJTopTDfX5CuKsQQtQ==", "dependencies": { - "tslib": "^1.8.0" + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/url-parser": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.271.0.tgz", + "integrity": "sha512-HuL38pnLaZX4zjlsm9sZfyiPvEK9gFl9viX7wpBJcF50+KgRcj1rasYCy8AfWlCEtL7A214xEutFwGqLfTyDag==", + "dependencies": { + "@aws-sdk/querystring-parser": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/util-defaults-mode-browser": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.271.0.tgz", + "integrity": "sha512-zyCIT/4PKiBxblZLKcMTNCllKcPhLuE08lIv1fGaqgIZzULFaAGjd/lpTO1q7I2hOt5oFL/4uzTFDrG8g5HJAg==", "dependencies": { - "@aws-sdk/types": "3.6.1", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/types": "3.271.0", "bowser": "^2.11.0", - "tslib": "^1.8.0" + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/util-defaults-mode-node": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.271.0.tgz", + "integrity": "sha512-QqruC9fkrraoWxrzG7EFX/pOkoLblV2YPsvPHR37DzKSssnsQxOPbiAF95Qw2zocsDrpDuxJEe2RM800vunIsw==", "dependencies": { - "@aws-sdk/node-config-provider": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/config-resolver": "3.271.0", + "@aws-sdk/credential-provider-imds": "3.271.0", + "@aws-sdk/node-config-provider": "3.271.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-utf8-browser": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/util-endpoints": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.271.0.tgz", + "integrity": "sha512-qr+IWZB0Th+TcarjTW5ZakkbKxBNKlLsnFiw3j+gECDA5raUEyTB3w6tRH0nhPFNzN6cM5P8arKlpm3R7f002Q==", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-utf8-node": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/util-middleware": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.271.0.tgz", + "integrity": "sha512-qE+t+JKygIPtXvik1Dy9B2dQx8pJ5NFPms/uFi9kOexCJy8mWd4FApK+sCwT5TGWte+tY2Fg7fcTs5g7ufcsKw==", "dependencies": { - "@aws-sdk/util-buffer-from": "3.6.1", - "tslib": "^1.8.0" + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-waiter": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/util-retry": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-retry/-/util-retry-3.271.0.tgz", + "integrity": "sha512-tO3nHBtAlBSppM37AJNc/rUwLNypPvkDC7av2cyuCDTaH4OHLd/RqZUtvMtSXJKjxR4v8RiyiQvRVE65u0Ermw==", "dependencies": { - "@aws-sdk/abort-controller": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/service-error-classification": "3.271.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 14.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-waiter/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.271.0.tgz", + "integrity": "sha512-nFU4flPzzkG6c46ZKroXtQc6D8g/8ei3nUYJF2Poc+3UD/GiuKASWR+ymALN7Zc2YfR95LcVCNdcm1rDI1WLXA==", + "dependencies": { + "@aws-sdk/types": "3.271.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + } }, - "node_modules/@aws-sdk/client-s3/node_modules/fast-xml-parser": { - "version": "3.21.1", - "license": "MIT", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.271.0.tgz", + "integrity": "sha512-okLJbQ1iBmAH+OdqDd6AmINUAQdLnhi+D9rvp4ZoE5DIhgbzFIuUK6SByB7Rl/9XE76wzkHfRhZJYPyD1cPkQA==", "dependencies": { - "strnum": "^1.0.4" + "@aws-sdk/node-config-provider": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" }, - "bin": { - "xml2js": "cli.js" + "engines": { + "node": ">=14.0.0" }, - "funding": { - "type": "paypal", - "url": "https://paypal.me/naturalintelligence" - } - }, - "node_modules/@aws-sdk/client-s3/node_modules/uuid": { - "version": "3.4.0", - "license": "MIT", - "bin": { - "uuid": "bin/uuid" + "peerDependencies": { + "aws-crt": ">=1.0.0" + }, + "peerDependenciesMeta": { + "aws-crt": { + "optional": true + } } }, - "node_modules/@aws-sdk/client-ses": { - "version": "3.238.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/util-waiter": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-waiter/-/util-waiter-3.271.0.tgz", + "integrity": "sha512-xpafmsE7xnP25NK9l/ove1NKlimtxZ9MAve+bNXCs0wX1E2dJJm/dAPRrlfcHHbb1fMOXJG9kqKLJAFtVjsOVQ==", "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/client-sts": "3.238.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/credential-provider-node": "3.238.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-signing": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.226.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "@aws-sdk/util-waiter": "3.226.0", - "fast-xml-parser": "4.0.11", + "@aws-sdk/abort-controller": "3.271.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { @@ -17305,26 +18864,144 @@ } }, "node_modules/@aws-sdk/middleware-sdk-ec2": { - "version": "3.226.0", - "license": "Apache-2.0", + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-ec2/-/middleware-sdk-ec2-3.266.1.tgz", + "integrity": "sha512-Fymif8a8B9yfKtHeCqwHhbPIYVbLdkXGvgsVzE4R7aXwwKj8tzwDyXw+RArwg1C4FAPn+qS9KARY+oFScLcPjA==", + "dependencies": { + "@aws-sdk/middleware-endpoint": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/signature-v4": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-format-url": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/middleware-endpoint": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.266.1.tgz", + "integrity": "sha512-EVnzd51U/Jhz9x68jFwqHjU4KPsLIXfuS1PSNV598OT04WLQXerBx/fvZh17Y4Dmmu6hf/JUWI9PI5To+oC3mQ==", + "dependencies": { + "@aws-sdk/middleware-serde": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/signature-v4": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/url-parser": "3.266.1", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/middleware-serde": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.266.1.tgz", + "integrity": "sha512-UFJ4BlRG/MUOJq5afHohkDsMDPAkbuXGCkhTz93MGxbACEOJYoEvsaMjpLft88wu4D11GY1Y2PVFkfxJUYWDXA==", + "dependencies": { + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/protocol-http": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.266.1.tgz", + "integrity": "sha512-8Z1Yfkf59of1R9qRSPmDKIHDo0n5YNCh1FrRLmCRqjjiZ4Ed7FJV/W6YYnJ6VbPcVv1WK6FvwzrGPM2gg4P48Q==", + "dependencies": { + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/querystring-builder": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.266.1.tgz", + "integrity": "sha512-D1LoDv3A+c6YIYq6F2T5m8V0C14vQAarSoT6romVIIYCDuMK4R5BwB1NLFRco1dczyAYmqScxdV2C26+xjXJfw==", + "dependencies": { + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/querystring-parser": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.266.1.tgz", + "integrity": "sha512-Ck8Ahluj+/eK4FcX8IlbO7DA1MNWdnh1rKjc1qx/ZWh71G/FdZ8Sse33N+Ed/z9v7H8W695dprRT6CuRlqyAbw==", + "dependencies": { + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/signature-v4": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.266.1.tgz", + "integrity": "sha512-kiHHA3voQKz4QYLKbR/3hKkY2n62MuGewYctvtQsh1069U/OI7FVceIE5hZnrlC5XX4jiNoF1lKdyRhXmK5GMQ==", + "dependencies": { + "@aws-sdk/is-array-buffer": "3.201.0", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-hex-encoding": "3.201.0", + "@aws-sdk/util-middleware": "3.266.1", + "@aws-sdk/util-uri-escape": "3.201.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/types": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.266.1.tgz", + "integrity": "sha512-OVg3CjHKT3/Ws33jx3TUYYkbFOv/CLb9m3P4gZQDvgKPsOagp96LOsG8ZWdcVZCvSorAUqSb5kuc1utsjJxDTw==", "dependencies": { - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/signature-v4": "3.226.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/util-format-url": "3.226.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, + "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/url-parser": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.266.1.tgz", + "integrity": "sha512-7IBZ8TjTWafug26CnNpz6cdrLU0TZ0G7N9LNfqjM/+69KI/Ragvv2Lsm4jhSv2uMx5OEzwlVYIEYaKMnAUiRLQ==", + "dependencies": { + "@aws-sdk/querystring-parser": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/util-format-url": { - "version": "3.226.0", - "license": "Apache-2.0", + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-format-url/-/util-format-url-3.266.1.tgz", + "integrity": "sha512-hCOgeAv1Oc4vK9VIkvbruchXXTxutFgLYFvqt43q5Tnu2jXyWinnIsenKS0PszUxuccmqy/fDcoYQWAqRML1fQ==", + "dependencies": { + "@aws-sdk/querystring-builder": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/util-middleware": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.266.1.tgz", + "integrity": "sha512-iZq+lq80byWZMsdII4OS7CdhgGeuBXBPd//iFWq4YmGts5W1QI1FLIFcsOuUnZtQMiaAuvLXtEO8ZrfaKTFKgw==", "dependencies": { - "@aws-sdk/querystring-builder": "3.226.0", - "@aws-sdk/types": "3.226.0", "tslib": "^2.3.1" }, "engines": { @@ -23825,6 +25502,109 @@ "license": "MIT", "peer": true }, + "node_modules/@vitest/expect": { + "version": "0.28.4", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-0.28.4.tgz", + "integrity": "sha512-JqK0NZ4brjvOSL8hXAnIsfi+jxDF7rH/ZWCGCt0FAqRnVFc1hXsfwXksQvEnKqD84avRt3gmeXoK4tNbmkoVsQ==", + "dev": true, + "dependencies": { + "@vitest/spy": "0.28.4", + "@vitest/utils": "0.28.4", + "chai": "^4.3.7" + } + }, + "node_modules/@vitest/runner": { + "version": "0.28.4", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-0.28.4.tgz", + "integrity": "sha512-Q8UV6GjDvBSTfUoq0QXVCNpNOUrWu4P2qvRq7ssJWzn0+S0ojbVOxEjMt+8a32X6SdkhF8ak+2nkppsqV0JyNQ==", + "dev": true, + "dependencies": { + "@vitest/utils": "0.28.4", + "p-limit": "^4.0.0", + "pathe": "^1.1.0" + } + }, + "node_modules/@vitest/runner/node_modules/p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^1.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@vitest/runner/node_modules/pathe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.0.tgz", + "integrity": "sha512-ODbEPR0KKHqECXW1GoxdDb+AZvULmXjVPy4rt+pGo2+TnjJTIPJQSVS6N63n8T2Ip+syHhbn52OewKicV0373w==", + "dev": true + }, + "node_modules/@vitest/runner/node_modules/yocto-queue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "dev": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@vitest/spy": { + "version": "0.28.4", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-0.28.4.tgz", + "integrity": "sha512-8WuhfXLlvCXpNXEGJW6Gc+IKWI32435fQJLh43u70HnZ1otJOa2Cmg2Wy2Aym47ZnNCP4NolF+8cUPwd0MigKQ==", + "dev": true, + "dependencies": { + "tinyspy": "^1.0.2" + } + }, + "node_modules/@vitest/utils": { + "version": "0.28.4", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-0.28.4.tgz", + "integrity": "sha512-l2QztOLdc2LkR+w/lP52RGh8hW+Ul4KESmCAgVE8q737I7e7bQoAfkARKpkPJ4JQtGpwW4deqlj1732VZD7TFw==", + "dev": true, + "dependencies": { + "cli-truncate": "^3.1.0", + "diff": "^5.1.0", + "loupe": "^2.3.6", + "picocolors": "^1.0.0", + "pretty-format": "^27.5.1" + } + }, + "node_modules/@vitest/utils/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@vitest/utils/node_modules/pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, "node_modules/@yarnpkg/lockfile": { "version": "1.1.0", "dev": true, @@ -24990,6 +26770,112 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/cli-truncate": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", + "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", + "dev": true, + "dependencies": { + "slice-ansi": "^5.0.0", + "string-width": "^5.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-truncate/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/cli-truncate/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/cli-truncate/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "node_modules/cli-truncate/node_modules/is-fullwidth-code-point": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", + "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-truncate/node_modules/slice-ansi": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", + "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^6.0.0", + "is-fullwidth-code-point": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/cli-truncate/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-truncate/node_modules/strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, "node_modules/cli-width": { "version": "3.0.0", "dev": true, @@ -25673,6 +27559,15 @@ "wrappy": "1" } }, + "node_modules/diff": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz", + "integrity": "sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==", + "dev": true, + "engines": { + "node": ">=0.3.1" + } + }, "node_modules/dir-glob": { "version": "3.0.1", "dev": true, @@ -25983,6 +27878,10 @@ "resolved": "example_code/cognito", "link": true }, + "node_modules/example-javascriptv3-ec2": { + "resolved": "example_code/ec2", + "link": true + }, "node_modules/example-javascriptv3-lambda": { "resolved": "example_code/lambda", "link": true @@ -32257,8 +34156,7 @@ }, "node_modules/react-is": { "version": "17.0.2", - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/react-native": { "version": "0.70.6", @@ -33986,9 +35884,10 @@ "license": "MIT" }, "node_modules/tinypool": { - "version": "0.3.0", + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-0.3.1.tgz", + "integrity": "sha512-zLA1ZXlstbU2rlpA4CIeVaqvWq41MTWqLY3FfsAXgC8+f7Pk7zroaJQxDgxn1xNudKW6Kmj4808rPFShUlIRmQ==", "dev": true, - "license": "MIT", "engines": { "node": ">=14.0.0" } @@ -38044,222 +39943,726 @@ } }, "@aws-sdk/client-ec2": { - "version": "3.245.0", + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-ec2/-/client-ec2-3.266.1.tgz", + "integrity": "sha512-1T1CUAQwGDA5YFhX5F2hYDs8cGgML2uC1QEkoggfOI3py+R6Pkcopu/Azlj8W8fv8x4IcGNVyVgsMeQ7uqvoLQ==", "requires": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/client-sts": "3.245.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/credential-provider-node": "3.245.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-sdk-ec2": "3.226.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-signing": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/client-sts": "3.266.1", + "@aws-sdk/config-resolver": "3.266.1", + "@aws-sdk/credential-provider-node": "3.266.1", + "@aws-sdk/fetch-http-handler": "3.266.1", + "@aws-sdk/hash-node": "3.266.1", + "@aws-sdk/invalid-dependency": "3.266.1", + "@aws-sdk/middleware-content-length": "3.266.1", + "@aws-sdk/middleware-endpoint": "3.266.1", + "@aws-sdk/middleware-host-header": "3.266.1", + "@aws-sdk/middleware-logger": "3.266.1", + "@aws-sdk/middleware-recursion-detection": "3.266.1", + "@aws-sdk/middleware-retry": "3.266.1", + "@aws-sdk/middleware-sdk-ec2": "3.266.1", + "@aws-sdk/middleware-serde": "3.266.1", + "@aws-sdk/middleware-signing": "3.266.1", + "@aws-sdk/middleware-stack": "3.266.1", + "@aws-sdk/middleware-user-agent": "3.266.1", + "@aws-sdk/node-config-provider": "3.266.1", + "@aws-sdk/node-http-handler": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/smithy-client": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/url-parser": "3.266.1", "@aws-sdk/util-base64": "3.208.0", "@aws-sdk/util-body-length-browser": "3.188.0", "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.245.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "@aws-sdk/util-waiter": "3.226.0", + "@aws-sdk/util-defaults-mode-browser": "3.266.1", + "@aws-sdk/util-defaults-mode-node": "3.266.1", + "@aws-sdk/util-endpoints": "3.266.1", + "@aws-sdk/util-retry": "3.266.1", + "@aws-sdk/util-user-agent-browser": "3.266.1", + "@aws-sdk/util-user-agent-node": "3.266.1", + "@aws-sdk/util-utf8": "3.254.0", + "@aws-sdk/util-waiter": "3.266.1", "fast-xml-parser": "4.0.11", "tslib": "^2.3.1", "uuid": "^8.3.2" }, "dependencies": { + "@aws-crypto/ie11-detection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz", + "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==", + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/sha256-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz", + "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==", + "requires": { + "@aws-crypto/ie11-detection": "^3.0.0", + "@aws-crypto/sha256-js": "^3.0.0", + "@aws-crypto/supports-web-crypto": "^3.0.0", + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/sha256-js": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-3.0.0.tgz", + "integrity": "sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==", + "requires": { + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/supports-web-crypto": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz", + "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==", + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/util": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz", + "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==", + "requires": { + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-sdk/abort-controller": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.266.1.tgz", + "integrity": "sha512-6tG6dAgMMKh86U2kgo58J6pyC2pSEAtm1bXnhYOuuXBjFgieNvikwjoj//zzciudmp1qTu5Wh99u8LBLmYofFg==", + "requires": { + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, "@aws-sdk/client-sso": { - "version": "3.245.0", + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.266.1.tgz", + "integrity": "sha512-mgrRfNSa7sJyBgAuMvRE5W2izHYl1n0tpxjLZ8rP+AoOp0GrZLpuj9T2XhmVwyR4ibVBNFKdr8nUHWekF4HA+w==", "requires": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.266.1", + "@aws-sdk/fetch-http-handler": "3.266.1", + "@aws-sdk/hash-node": "3.266.1", + "@aws-sdk/invalid-dependency": "3.266.1", + "@aws-sdk/middleware-content-length": "3.266.1", + "@aws-sdk/middleware-endpoint": "3.266.1", + "@aws-sdk/middleware-host-header": "3.266.1", + "@aws-sdk/middleware-logger": "3.266.1", + "@aws-sdk/middleware-recursion-detection": "3.266.1", + "@aws-sdk/middleware-retry": "3.266.1", + "@aws-sdk/middleware-serde": "3.266.1", + "@aws-sdk/middleware-stack": "3.266.1", + "@aws-sdk/middleware-user-agent": "3.266.1", + "@aws-sdk/node-config-provider": "3.266.1", + "@aws-sdk/node-http-handler": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/smithy-client": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/url-parser": "3.266.1", "@aws-sdk/util-base64": "3.208.0", "@aws-sdk/util-body-length-browser": "3.188.0", "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.245.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.266.1", + "@aws-sdk/util-defaults-mode-node": "3.266.1", + "@aws-sdk/util-endpoints": "3.266.1", + "@aws-sdk/util-retry": "3.266.1", + "@aws-sdk/util-user-agent-browser": "3.266.1", + "@aws-sdk/util-user-agent-node": "3.266.1", + "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" } }, "@aws-sdk/client-sso-oidc": { - "version": "3.245.0", + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.266.1.tgz", + "integrity": "sha512-eErpowPr6etcZH25v8JfJNdSPr+jet98cFWhsCN8GSxVNkyZci6aZnx6pBsTQCQn7L/zx8i4QZuOo5LYXdzF6A==", "requires": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.266.1", + "@aws-sdk/fetch-http-handler": "3.266.1", + "@aws-sdk/hash-node": "3.266.1", + "@aws-sdk/invalid-dependency": "3.266.1", + "@aws-sdk/middleware-content-length": "3.266.1", + "@aws-sdk/middleware-endpoint": "3.266.1", + "@aws-sdk/middleware-host-header": "3.266.1", + "@aws-sdk/middleware-logger": "3.266.1", + "@aws-sdk/middleware-recursion-detection": "3.266.1", + "@aws-sdk/middleware-retry": "3.266.1", + "@aws-sdk/middleware-serde": "3.266.1", + "@aws-sdk/middleware-stack": "3.266.1", + "@aws-sdk/middleware-user-agent": "3.266.1", + "@aws-sdk/node-config-provider": "3.266.1", + "@aws-sdk/node-http-handler": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/smithy-client": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/url-parser": "3.266.1", "@aws-sdk/util-base64": "3.208.0", "@aws-sdk/util-body-length-browser": "3.188.0", "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.245.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.266.1", + "@aws-sdk/util-defaults-mode-node": "3.266.1", + "@aws-sdk/util-endpoints": "3.266.1", + "@aws-sdk/util-retry": "3.266.1", + "@aws-sdk/util-user-agent-browser": "3.266.1", + "@aws-sdk/util-user-agent-node": "3.266.1", + "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" } }, "@aws-sdk/client-sts": { - "version": "3.245.0", + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.266.1.tgz", + "integrity": "sha512-P1hIyJkzojIG5NHuW2u/oae36KUvTB2q4nSIWuU4BrUPDeBoHg+5+zRRavtfK88aLRohwYDumRdLegT6sQNt0g==", "requires": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/credential-provider-node": "3.245.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-sdk-sts": "3.226.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-signing": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.266.1", + "@aws-sdk/credential-provider-node": "3.266.1", + "@aws-sdk/fetch-http-handler": "3.266.1", + "@aws-sdk/hash-node": "3.266.1", + "@aws-sdk/invalid-dependency": "3.266.1", + "@aws-sdk/middleware-content-length": "3.266.1", + "@aws-sdk/middleware-endpoint": "3.266.1", + "@aws-sdk/middleware-host-header": "3.266.1", + "@aws-sdk/middleware-logger": "3.266.1", + "@aws-sdk/middleware-recursion-detection": "3.266.1", + "@aws-sdk/middleware-retry": "3.266.1", + "@aws-sdk/middleware-sdk-sts": "3.266.1", + "@aws-sdk/middleware-serde": "3.266.1", + "@aws-sdk/middleware-signing": "3.266.1", + "@aws-sdk/middleware-stack": "3.266.1", + "@aws-sdk/middleware-user-agent": "3.266.1", + "@aws-sdk/node-config-provider": "3.266.1", + "@aws-sdk/node-http-handler": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/smithy-client": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/url-parser": "3.266.1", "@aws-sdk/util-base64": "3.208.0", "@aws-sdk/util-body-length-browser": "3.188.0", "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.245.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.266.1", + "@aws-sdk/util-defaults-mode-node": "3.266.1", + "@aws-sdk/util-endpoints": "3.266.1", + "@aws-sdk/util-retry": "3.266.1", + "@aws-sdk/util-user-agent-browser": "3.266.1", + "@aws-sdk/util-user-agent-node": "3.266.1", + "@aws-sdk/util-utf8": "3.254.0", "fast-xml-parser": "4.0.11", "tslib": "^2.3.1" } }, + "@aws-sdk/config-resolver": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.266.1.tgz", + "integrity": "sha512-MqMVki/y40Ot7XWJnziYuO35zqww3JbpH9jzCRCf8vtOE9u6C8VpuiG/OHIR9WQj63Yhcr+7fohmN3kGFnNWFg==", + "requires": { + "@aws-sdk/signature-v4": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-env": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.266.1.tgz", + "integrity": "sha512-RPq9/FV7fOv14P5DxpqpcwuCa7P6ijUrN1vhpiYaWMQNJSsJK8cIsPECI3xQ1z+oPZ5/1qA++0RpTLqIhq/ifg==", + "requires": { + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-imds": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.266.1.tgz", + "integrity": "sha512-pTJnJtKaR0JWVqyt9XgHiqlK+3GnZfd3cuKGv9IsYxumVzladm7gNKiNFw0A2KsDj9jhrCRRZwEsH9ooDzZ/Ow==", + "requires": { + "@aws-sdk/node-config-provider": "3.266.1", + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/url-parser": "3.266.1", + "tslib": "^2.3.1" + } + }, "@aws-sdk/credential-provider-ini": { - "version": "3.245.0", + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.266.1.tgz", + "integrity": "sha512-N52GNeHRJufEx+V0mWfwe5cV3ukHong75uRAB0IeapJwj+kKwxxLH1dKOUaGjd/ALx6/hsISoUE/6jm/Qf/DsA==", "requires": { - "@aws-sdk/credential-provider-env": "3.226.0", - "@aws-sdk/credential-provider-imds": "3.226.0", - "@aws-sdk/credential-provider-process": "3.226.0", - "@aws-sdk/credential-provider-sso": "3.245.0", - "@aws-sdk/credential-provider-web-identity": "3.226.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/types": "3.226.0", + "@aws-sdk/credential-provider-env": "3.266.1", + "@aws-sdk/credential-provider-imds": "3.266.1", + "@aws-sdk/credential-provider-process": "3.266.1", + "@aws-sdk/credential-provider-sso": "3.266.1", + "@aws-sdk/credential-provider-web-identity": "3.266.1", + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/shared-ini-file-loader": "3.266.1", + "@aws-sdk/types": "3.266.1", "tslib": "^2.3.1" } }, "@aws-sdk/credential-provider-node": { - "version": "3.245.0", + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.266.1.tgz", + "integrity": "sha512-6/iTi/zugdvuyQDmEakYn01kiFKUArL+rIYwcMf20YguXNml6G4HVWJGbX2JklY6ovnznU5ENw6+ftzBAiw/PA==", "requires": { - "@aws-sdk/credential-provider-env": "3.226.0", - "@aws-sdk/credential-provider-imds": "3.226.0", - "@aws-sdk/credential-provider-ini": "3.245.0", - "@aws-sdk/credential-provider-process": "3.226.0", - "@aws-sdk/credential-provider-sso": "3.245.0", - "@aws-sdk/credential-provider-web-identity": "3.226.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/types": "3.226.0", + "@aws-sdk/credential-provider-env": "3.266.1", + "@aws-sdk/credential-provider-imds": "3.266.1", + "@aws-sdk/credential-provider-ini": "3.266.1", + "@aws-sdk/credential-provider-process": "3.266.1", + "@aws-sdk/credential-provider-sso": "3.266.1", + "@aws-sdk/credential-provider-web-identity": "3.266.1", + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/shared-ini-file-loader": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-process": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.266.1.tgz", + "integrity": "sha512-4V/7zVnaZo1IP4Is09dlwd2CkltlUdgbX4NUIb+QxZ/BlY7Ws47xyCjjyJhVVCe+y184M58bG4+HR5dHnrBfSA==", + "requires": { + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/shared-ini-file-loader": "3.266.1", + "@aws-sdk/types": "3.266.1", "tslib": "^2.3.1" } }, "@aws-sdk/credential-provider-sso": { - "version": "3.245.0", + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.266.1.tgz", + "integrity": "sha512-d9hcV7XV1Gh0Dkt8kADsSoB/hZPlbuTp/Vzbj0HMO7hlGxFGcTrGN1UoQc11UAp4kKeF3i2ZQlMsch0d/2gK3w==", "requires": { - "@aws-sdk/client-sso": "3.245.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/token-providers": "3.245.0", - "@aws-sdk/types": "3.226.0", + "@aws-sdk/client-sso": "3.266.1", + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/shared-ini-file-loader": "3.266.1", + "@aws-sdk/token-providers": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-web-identity": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.266.1.tgz", + "integrity": "sha512-JIktczlqxIc+Gqc/99e7pPzNSgUjYX23fA2dmLt1bHRPH15p8S1Kv73lvqsgLF5EKP1H/UXDu+jVWDklYM6fVA==", + "requires": { + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/fetch-http-handler": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.266.1.tgz", + "integrity": "sha512-tyVMLBrJF1weMUqLU81lhuHES5QtFg7RmSysYM8mndePwBl81iQjLF5D7M8CU3aVzXY3TNU3rZBrm5xEK3xK1w==", + "requires": { + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/querystring-builder": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-base64": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/hash-node": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.266.1.tgz", + "integrity": "sha512-2DbuY/AmtF4ORJVEAdzHfbM1p8w9ThRlu4BGdI7DXpO6/o1kgRBvNEbZc6MZkg7D2bI7TT6bI83u7AAbbMUMng==", + "requires": { + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-buffer-from": "3.208.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/invalid-dependency": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.266.1.tgz", + "integrity": "sha512-rGc2Bv10eEVQW2Zwrd4/I2QBj5MOhl8qr1NA3UCHJa2501Z97/jn2BGZoX+Cc+iE55so66GKmqMYpibqdtDARw==", + "requires": { + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-content-length": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.266.1.tgz", + "integrity": "sha512-Clq14Fr9WkiSg59jnIelL2F5D81HAhdE1MCZIAEEjN1ZK6bEM2kECnNT9CKJjDsuPvhdkrVGv9rjUSANWHLETw==", + "requires": { + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-endpoint": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.266.1.tgz", + "integrity": "sha512-EVnzd51U/Jhz9x68jFwqHjU4KPsLIXfuS1PSNV598OT04WLQXerBx/fvZh17Y4Dmmu6hf/JUWI9PI5To+oC3mQ==", + "requires": { + "@aws-sdk/middleware-serde": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/signature-v4": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/url-parser": "3.266.1", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-host-header": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.266.1.tgz", + "integrity": "sha512-3FSD8EkxOGV4O2iKgBnAwvj3PG/lABzcqmX6hABnsIusXAlUV5umh39FteipLcjnMXB04cLgmcgcG2o3cSA3tQ==", + "requires": { + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-logger": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.266.1.tgz", + "integrity": "sha512-FbD9Hqt994PyDm7OTG8PbIuB6Mv9vYhqOM2RhqC1UGtprDmk084/cEv9Sp+qY33lFPxjZstKneQK6FhAfozIAQ==", + "requires": { + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-recursion-detection": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.266.1.tgz", + "integrity": "sha512-rgRxdgrLOD20zIFrjFW7Bu3s4MXC1KLDbqJY6sMpc5D8mmQlxfaQiSnCQrjgUxbW0Ni+rXiatlW2q2MwCUAPzw==", + "requires": { + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-retry": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.266.1.tgz", + "integrity": "sha512-xBiKAjAP1j8SbKhF28bk1g2iZoiVMI7XV/x5d0g6igsvI4RiqzywTsiLi2VVsYPCY6bwbn0Zgt93Mej/MFfn5w==", + "requires": { + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/service-error-classification": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-middleware": "3.266.1", + "@aws-sdk/util-retry": "3.266.1", + "tslib": "^2.3.1", + "uuid": "^8.3.2" + } + }, + "@aws-sdk/middleware-sdk-sts": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.266.1.tgz", + "integrity": "sha512-lM9t+S+PjmJ/xhoP9e/sIUS2bZyuEbobHo6a9WPk0UcdiqDWBIp+8MlTRDafKZtlN36gPDk5+qM9tXcI6P5YCA==", + "requires": { + "@aws-sdk/middleware-signing": "3.266.1", + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/signature-v4": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-serde": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.266.1.tgz", + "integrity": "sha512-UFJ4BlRG/MUOJq5afHohkDsMDPAkbuXGCkhTz93MGxbACEOJYoEvsaMjpLft88wu4D11GY1Y2PVFkfxJUYWDXA==", + "requires": { + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-signing": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.266.1.tgz", + "integrity": "sha512-PbVwt7xSP3xlT5x4Xdj7+2T1PgCW00bh5QrCJi2wo3dEN9UowU/IVGzGSv4/OJItLZWe4puGb1WtA+LKeWA40w==", + "requires": { + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/signature-v4": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-middleware": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-stack": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.266.1.tgz", + "integrity": "sha512-liqq541u1eCDe+TCDOSrOcH6kAB6Dn1R8pbtJ23hP3fYM5/8W3V0f6VcywALVL9Pam+mkYmodWeDRQK8ieLEOg==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-user-agent": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.266.1.tgz", + "integrity": "sha512-yoHQSP3OngZnLWeuqMrYkOifMD8FUZxyXoUO9iHPytxns1Gri/4Gn/1raNWMqdrSIlBKPorKzCEu24DX5klf0w==", + "requires": { + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/node-config-provider": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.266.1.tgz", + "integrity": "sha512-cDDuj64nGskZNJQdwglIRqTazfZt0f8pooT1ZJrFoydLfMmR9yi6orizQ7C0i1vMkY02HxgwqJiwXuJ73gmaqA==", + "requires": { + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/shared-ini-file-loader": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/node-http-handler": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.266.1.tgz", + "integrity": "sha512-oa1cDeD+fwGFg8xMfNUZ95xAE0dxiXaTdJwSqOzCVIBz/auahHrcfXey+Oynw1zUjv8ijOH9z/SXYrqfwlZosw==", + "requires": { + "@aws-sdk/abort-controller": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/querystring-builder": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/property-provider": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.266.1.tgz", + "integrity": "sha512-1ZRWqc4sNFGDRZ0Tl4WaukU9jR4ghB84QEQOqc48cJIoDiwOAP9UBJTNBJXCVllmPWGNgx4/lfWJoaFcvwsrzw==", + "requires": { + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/protocol-http": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.266.1.tgz", + "integrity": "sha512-8Z1Yfkf59of1R9qRSPmDKIHDo0n5YNCh1FrRLmCRqjjiZ4Ed7FJV/W6YYnJ6VbPcVv1WK6FvwzrGPM2gg4P48Q==", + "requires": { + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/querystring-builder": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.266.1.tgz", + "integrity": "sha512-D1LoDv3A+c6YIYq6F2T5m8V0C14vQAarSoT6romVIIYCDuMK4R5BwB1NLFRco1dczyAYmqScxdV2C26+xjXJfw==", + "requires": { + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/querystring-parser": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.266.1.tgz", + "integrity": "sha512-Ck8Ahluj+/eK4FcX8IlbO7DA1MNWdnh1rKjc1qx/ZWh71G/FdZ8Sse33N+Ed/z9v7H8W695dprRT6CuRlqyAbw==", + "requires": { + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/service-error-classification": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.266.1.tgz", + "integrity": "sha512-c2EvUvn9XLaDjKozCcYlO4cbtbJzBgx6EuhW1eLsMGLY3EobVRo1hGT0PtRmWQNnoW0BXv6oi/8NLOV6x37fxA==" + }, + "@aws-sdk/shared-ini-file-loader": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.266.1.tgz", + "integrity": "sha512-yV8GY1Cgbc6pl0SRRQtx3PPcZpqYvKf/h1pz0FgkMBPHwOhp7zJYUkYmu3yvXulfORNsM5ro7wnKa0kxb5ljmg==", + "requires": { + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/signature-v4": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.266.1.tgz", + "integrity": "sha512-kiHHA3voQKz4QYLKbR/3hKkY2n62MuGewYctvtQsh1069U/OI7FVceIE5hZnrlC5XX4jiNoF1lKdyRhXmK5GMQ==", + "requires": { + "@aws-sdk/is-array-buffer": "3.201.0", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-hex-encoding": "3.201.0", + "@aws-sdk/util-middleware": "3.266.1", + "@aws-sdk/util-uri-escape": "3.201.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/smithy-client": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.266.1.tgz", + "integrity": "sha512-fg/+JzHeYPS0poVckSiaE/h1eWf5+u2Cs8/zh/4bAvVPqSA3Gg/yBrtvP+HxKLoSo+ObuPb9aXXkeCKPke6ktA==", + "requires": { + "@aws-sdk/middleware-stack": "3.266.1", + "@aws-sdk/types": "3.266.1", "tslib": "^2.3.1" } }, "@aws-sdk/token-providers": { - "version": "3.245.0", + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.266.1.tgz", + "integrity": "sha512-N+qiLQvPvel9dFdEoffRG4Mcp2p82OMyUvS12P5iYWqPCDuPzU72rYT2PmVFKINmflqEySjsKo8vIaWx7Kl4pQ==", "requires": { - "@aws-sdk/client-sso-oidc": "3.245.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/types": "3.226.0", + "@aws-sdk/client-sso-oidc": "3.266.1", + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/shared-ini-file-loader": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/types": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.266.1.tgz", + "integrity": "sha512-OVg3CjHKT3/Ws33jx3TUYYkbFOv/CLb9m3P4gZQDvgKPsOagp96LOsG8ZWdcVZCvSorAUqSb5kuc1utsjJxDTw==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/url-parser": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.266.1.tgz", + "integrity": "sha512-7IBZ8TjTWafug26CnNpz6cdrLU0TZ0G7N9LNfqjM/+69KI/Ragvv2Lsm4jhSv2uMx5OEzwlVYIEYaKMnAUiRLQ==", + "requires": { + "@aws-sdk/querystring-parser": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-defaults-mode-browser": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.266.1.tgz", + "integrity": "sha512-4arGHXzTwLIPlNb3a2v7i2fpKFBLQfFygUDT1E6VCAbNpvPVJk+/w0foFs0Zc8BQsPQsC+ZKe20pFw0hnHZJGw==", + "requires": { + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/types": "3.266.1", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-defaults-mode-node": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.266.1.tgz", + "integrity": "sha512-EOo2pPtvJUd9vkwRAptBIeF4P5zHeHcvCcCw6ZuP7bLvaUNHxepKAy4iesaB4aqqRgVn6AdV7w489HnTxa8Kpw==", + "requires": { + "@aws-sdk/config-resolver": "3.266.1", + "@aws-sdk/credential-provider-imds": "3.266.1", + "@aws-sdk/node-config-provider": "3.266.1", + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/types": "3.266.1", "tslib": "^2.3.1" } }, "@aws-sdk/util-endpoints": { - "version": "3.245.0", + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.266.1.tgz", + "integrity": "sha512-w2VjoAIvfw2gau+cVQ5vahfy5CqQJrNOnSXbH6kjpd8RVQ0wOWBDVKb8tUwF4ROD1zovx0jT9d7bsYdMyo3HJw==", "requires": { - "@aws-sdk/types": "3.226.0", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-middleware": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.266.1.tgz", + "integrity": "sha512-iZq+lq80byWZMsdII4OS7CdhgGeuBXBPd//iFWq4YmGts5W1QI1FLIFcsOuUnZtQMiaAuvLXtEO8ZrfaKTFKgw==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-retry": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-retry/-/util-retry-3.266.1.tgz", + "integrity": "sha512-mQZshXR31iM9eV+x50pdmIFuDAjd8wDrxJ/kDnwR0H9NaeIQ3SKcNFTs0PPqtu/JUX0vb4wvm2KjIkUyO2iijg==", + "requires": { + "@aws-sdk/service-error-classification": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-user-agent-browser": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.266.1.tgz", + "integrity": "sha512-zT5Sc0rNLOhBC+RhFF0FRE2y+CIf50rJZLkxRXoVRXJeFVSKPyhk3AKqe2Q6FE+yQsTV2FlwSDI98SxgaDORkQ==", + "requires": { + "@aws-sdk/types": "3.266.1", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-user-agent-node": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.266.1.tgz", + "integrity": "sha512-o8uYR38GxaKj95acC0tIxM2K0vANVMpEpgpWcW+QTvVc4Vm4im0SBD7BvgXbQV2VW8X28ZNddVbCK7pHHEJrtg==", + "requires": { + "@aws-sdk/node-config-provider": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-waiter": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-waiter/-/util-waiter-3.266.1.tgz", + "integrity": "sha512-g3uzVouAs6LfYU7vZEy4BIEIiCXSAjZnGV4RjTagfxZRpNtAriFn29Zys4nA/cBHxUkOS3XTzbt5eTBwEdK/FA==", + "requires": { + "@aws-sdk/abort-controller": "3.266.1", + "@aws-sdk/types": "3.266.1", "tslib": "^2.3.1" } } @@ -44608,6 +47011,730 @@ "tslib": "^2.3.1" } }, + "@aws-sdk/client-ssm": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-ssm/-/client-ssm-3.271.0.tgz", + "integrity": "sha512-ylDxFxXDAq82kie9q1Df8vejxN0tQHlrdROY/CRiU7xo9mhV0x6O8p3w/y+E65Y/BsdN1Q95yz9KrGQaUcmo7A==", + "requires": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/client-sts": "3.271.0", + "@aws-sdk/config-resolver": "3.271.0", + "@aws-sdk/credential-provider-node": "3.271.0", + "@aws-sdk/fetch-http-handler": "3.271.0", + "@aws-sdk/hash-node": "3.271.0", + "@aws-sdk/invalid-dependency": "3.271.0", + "@aws-sdk/middleware-content-length": "3.271.0", + "@aws-sdk/middleware-endpoint": "3.271.0", + "@aws-sdk/middleware-host-header": "3.271.0", + "@aws-sdk/middleware-logger": "3.271.0", + "@aws-sdk/middleware-recursion-detection": "3.271.0", + "@aws-sdk/middleware-retry": "3.271.0", + "@aws-sdk/middleware-serde": "3.271.0", + "@aws-sdk/middleware-signing": "3.271.0", + "@aws-sdk/middleware-stack": "3.271.0", + "@aws-sdk/middleware-user-agent": "3.271.0", + "@aws-sdk/node-config-provider": "3.271.0", + "@aws-sdk/node-http-handler": "3.271.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/smithy-client": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/url-parser": "3.271.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.271.0", + "@aws-sdk/util-defaults-mode-node": "3.271.0", + "@aws-sdk/util-endpoints": "3.271.0", + "@aws-sdk/util-retry": "3.271.0", + "@aws-sdk/util-user-agent-browser": "3.271.0", + "@aws-sdk/util-user-agent-node": "3.271.0", + "@aws-sdk/util-utf8": "3.254.0", + "@aws-sdk/util-waiter": "3.271.0", + "tslib": "^2.3.1", + "uuid": "^8.3.2" + }, + "dependencies": { + "@aws-crypto/ie11-detection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz", + "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==", + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/sha256-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz", + "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==", + "requires": { + "@aws-crypto/ie11-detection": "^3.0.0", + "@aws-crypto/sha256-js": "^3.0.0", + "@aws-crypto/supports-web-crypto": "^3.0.0", + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/sha256-js": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-3.0.0.tgz", + "integrity": "sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==", + "requires": { + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/supports-web-crypto": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz", + "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==", + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/util": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz", + "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==", + "requires": { + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-sdk/abort-controller": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.271.0.tgz", + "integrity": "sha512-sP4RvP0fvmMySS6hV/EKMrTJ9KVMH85rn1EKvmJ3nBTKRKiR8GQUS/vX+dhLYu+3jRs2P6cY2zjGzpaOcII91w==", + "requires": { + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-sso": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.271.0.tgz", + "integrity": "sha512-auWPqok8yJ2UOQfNrvfLNmvf0tRAbekaZRvZZ2TzTKTKd7yz6V7Y5+AdRnp01FHoOQ+8A7MHTXtp7h7i9qltKw==", + "requires": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.271.0", + "@aws-sdk/fetch-http-handler": "3.271.0", + "@aws-sdk/hash-node": "3.271.0", + "@aws-sdk/invalid-dependency": "3.271.0", + "@aws-sdk/middleware-content-length": "3.271.0", + "@aws-sdk/middleware-endpoint": "3.271.0", + "@aws-sdk/middleware-host-header": "3.271.0", + "@aws-sdk/middleware-logger": "3.271.0", + "@aws-sdk/middleware-recursion-detection": "3.271.0", + "@aws-sdk/middleware-retry": "3.271.0", + "@aws-sdk/middleware-serde": "3.271.0", + "@aws-sdk/middleware-stack": "3.271.0", + "@aws-sdk/middleware-user-agent": "3.271.0", + "@aws-sdk/node-config-provider": "3.271.0", + "@aws-sdk/node-http-handler": "3.271.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/smithy-client": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/url-parser": "3.271.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.271.0", + "@aws-sdk/util-defaults-mode-node": "3.271.0", + "@aws-sdk/util-endpoints": "3.271.0", + "@aws-sdk/util-retry": "3.271.0", + "@aws-sdk/util-user-agent-browser": "3.271.0", + "@aws-sdk/util-user-agent-node": "3.271.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-sso-oidc": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.271.0.tgz", + "integrity": "sha512-pYN8r0slDbP0v2q0SyLKihE2PPfbsF/hH7+11w6OpAMvSGvfm+m8R5rB49Szy3bkDudR0MhLpD6D76yoy9ckrQ==", + "requires": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.271.0", + "@aws-sdk/fetch-http-handler": "3.271.0", + "@aws-sdk/hash-node": "3.271.0", + "@aws-sdk/invalid-dependency": "3.271.0", + "@aws-sdk/middleware-content-length": "3.271.0", + "@aws-sdk/middleware-endpoint": "3.271.0", + "@aws-sdk/middleware-host-header": "3.271.0", + "@aws-sdk/middleware-logger": "3.271.0", + "@aws-sdk/middleware-recursion-detection": "3.271.0", + "@aws-sdk/middleware-retry": "3.271.0", + "@aws-sdk/middleware-serde": "3.271.0", + "@aws-sdk/middleware-stack": "3.271.0", + "@aws-sdk/middleware-user-agent": "3.271.0", + "@aws-sdk/node-config-provider": "3.271.0", + "@aws-sdk/node-http-handler": "3.271.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/smithy-client": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/url-parser": "3.271.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.271.0", + "@aws-sdk/util-defaults-mode-node": "3.271.0", + "@aws-sdk/util-endpoints": "3.271.0", + "@aws-sdk/util-retry": "3.271.0", + "@aws-sdk/util-user-agent-browser": "3.271.0", + "@aws-sdk/util-user-agent-node": "3.271.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-sts": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.271.0.tgz", + "integrity": "sha512-dsLGj1Q3EdqLYNjm0WpeK07wv8Xed6R+tCf+x4KMWOAVAnz72XuoZNWDI2NvACubAniEhpFycMmf39Y6NCAkLg==", + "requires": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.271.0", + "@aws-sdk/credential-provider-node": "3.271.0", + "@aws-sdk/fetch-http-handler": "3.271.0", + "@aws-sdk/hash-node": "3.271.0", + "@aws-sdk/invalid-dependency": "3.271.0", + "@aws-sdk/middleware-content-length": "3.271.0", + "@aws-sdk/middleware-endpoint": "3.271.0", + "@aws-sdk/middleware-host-header": "3.271.0", + "@aws-sdk/middleware-logger": "3.271.0", + "@aws-sdk/middleware-recursion-detection": "3.271.0", + "@aws-sdk/middleware-retry": "3.271.0", + "@aws-sdk/middleware-sdk-sts": "3.271.0", + "@aws-sdk/middleware-serde": "3.271.0", + "@aws-sdk/middleware-signing": "3.271.0", + "@aws-sdk/middleware-stack": "3.271.0", + "@aws-sdk/middleware-user-agent": "3.271.0", + "@aws-sdk/node-config-provider": "3.271.0", + "@aws-sdk/node-http-handler": "3.271.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/smithy-client": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/url-parser": "3.271.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.271.0", + "@aws-sdk/util-defaults-mode-node": "3.271.0", + "@aws-sdk/util-endpoints": "3.271.0", + "@aws-sdk/util-retry": "3.271.0", + "@aws-sdk/util-user-agent-browser": "3.271.0", + "@aws-sdk/util-user-agent-node": "3.271.0", + "@aws-sdk/util-utf8": "3.254.0", + "fast-xml-parser": "4.0.11", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/config-resolver": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.271.0.tgz", + "integrity": "sha512-WNtUjOa9ufKK4+o58YHosjU9J8v494Fb10tHFqD4OspFWLxBKzSJ+r6xpQRcVPucxsmocGJ2QhIiNYo8OySKkA==", + "requires": { + "@aws-sdk/signature-v4": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-env": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.271.0.tgz", + "integrity": "sha512-lKZGcDYe8us2Ep7/AjhLyMMTq0NuVt+M+L1eedBGRuGkx/Hrvn4qwlIvSXZhiodoQVa+Wr1zIah3Z06U0dTaZA==", + "requires": { + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-imds": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.271.0.tgz", + "integrity": "sha512-u3KsjtGBo1SA9HQAVxfA7zHWirlrdKsqsMpnp4eOtixZLoz1e2EytrR5XZem2HND0lzjrUrEPGDPp5OpDtcHxw==", + "requires": { + "@aws-sdk/node-config-provider": "3.271.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/url-parser": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-ini": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.271.0.tgz", + "integrity": "sha512-zIclMwXbJeNev74+0tbxLpEO2Js7AhqvR2Msiytz05kOXRyk61NMEavtKRp1YxD2KMptONnvNlbWbNW2rrRDnw==", + "requires": { + "@aws-sdk/credential-provider-env": "3.271.0", + "@aws-sdk/credential-provider-imds": "3.271.0", + "@aws-sdk/credential-provider-process": "3.271.0", + "@aws-sdk/credential-provider-sso": "3.271.0", + "@aws-sdk/credential-provider-web-identity": "3.271.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/shared-ini-file-loader": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-node": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.271.0.tgz", + "integrity": "sha512-hfdJ+8QM5xXEm4mF4AfIy6T1fVb2zTaUVm5PfPDHtkggVM1L+QSywEkZ2lUqQZMLbbatJqVLy2EMA91k5kjVrA==", + "requires": { + "@aws-sdk/credential-provider-env": "3.271.0", + "@aws-sdk/credential-provider-imds": "3.271.0", + "@aws-sdk/credential-provider-ini": "3.271.0", + "@aws-sdk/credential-provider-process": "3.271.0", + "@aws-sdk/credential-provider-sso": "3.271.0", + "@aws-sdk/credential-provider-web-identity": "3.271.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/shared-ini-file-loader": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-process": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.271.0.tgz", + "integrity": "sha512-Q1HIZYTUYLVe0cNc3HbtFOFzgo3A6PHcmT62T8XClAhFRhkOsJ/KWUybjm8col49/1uqIjKA20E7P7f5Qnn2TQ==", + "requires": { + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/shared-ini-file-loader": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-sso": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.271.0.tgz", + "integrity": "sha512-TIvsv4xXTME6UsH7g05IzVDCLujaMmgv45A0KcAyM/J/HvFQ9IBOBdyKGU5zIawPvCWXiqQqZs/kDchdB2sjXA==", + "requires": { + "@aws-sdk/client-sso": "3.271.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/shared-ini-file-loader": "3.271.0", + "@aws-sdk/token-providers": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-web-identity": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.271.0.tgz", + "integrity": "sha512-GD1mg7fMA3ESl0jdzH/+keZHV9Fue/iaGMIWNCUm7M9dOJo0JZbDNzSaMtxZnuA6xtkvw3FiLH6ZxPt0V+7wmg==", + "requires": { + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/fetch-http-handler": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.271.0.tgz", + "integrity": "sha512-yc0YgKioACFcfs7RPtVHRlpsyYJNdEHkqiWtnRSXG0vuZHAkfvwzchrDK4bizMblnmEV/xbl495ZqDlVbQ0c9A==", + "requires": { + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/querystring-builder": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/util-base64": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/hash-node": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.271.0.tgz", + "integrity": "sha512-VamRhkGo2uaVe7KhQhdTqpp9y5JKSFNE3yCUZf/o6lGwL9BgBpBiVqzwCePtas7hAphAaOYvefIwx0XLaCeQ1w==", + "requires": { + "@aws-sdk/types": "3.271.0", + "@aws-sdk/util-buffer-from": "3.208.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/invalid-dependency": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.271.0.tgz", + "integrity": "sha512-ZN8JmN/t+4UTHkQ6wdod2KKLfJcewLS3D/0iZLnvvOzLlymhcHp9QY8t//RObF+WxnlWeCAvZttoMl/a2MLpYQ==", + "requires": { + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-content-length": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.271.0.tgz", + "integrity": "sha512-bmfqCvjFcowa6jLltJIkGHNXY599Fu9ROoMtYjQiD2ixWHmUpS0I/VivcxXL3uES2qhehxYXyJFyCt7aqRQqcA==", + "requires": { + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-endpoint": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.271.0.tgz", + "integrity": "sha512-pibhIe57e68NAfDUY5c7d9zo6WfNwgfclwtrK0nV3OXw9psNeCLGLC1YbzsTun49tm0ICSmkHgmqfsXAVe4HWA==", + "requires": { + "@aws-sdk/middleware-serde": "3.271.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/signature-v4": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/url-parser": "3.271.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-host-header": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.271.0.tgz", + "integrity": "sha512-sp75WZDzDui/Wr3GnQH/db4DXgVdOpKdRQddDsRuULzri8HeJlhMW+JCP+sP0kQmkO06Dagxv1tSmENUxFhPaQ==", + "requires": { + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-logger": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.271.0.tgz", + "integrity": "sha512-mB/vayfsuc20PySSpbbQ56CPER/RAZF5oGkwGuwFI3bY+VwRun0MOnx3yHj7Ja2DN1ZEOH1Hzrb0eUgREozmHw==", + "requires": { + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-recursion-detection": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.271.0.tgz", + "integrity": "sha512-prrS/YL3GdLODqVBSgxvpUfo9aPBLB3Km5wNBdbhjjN0rI1RqjD+0LquVgaz6C1VU/I8cYbnxrFYtQVcdgnWpg==", + "requires": { + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-retry": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.271.0.tgz", + "integrity": "sha512-yCBXmxbFGT/4czTi+e4z7lV0nbMWctvvzOtl1ssBiG0LagijIhK4KUp0KTnqDJ+yBqxMpd7wNJ1B0NdS0re6Fw==", + "requires": { + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/service-error-classification": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/util-middleware": "3.271.0", + "@aws-sdk/util-retry": "3.271.0", + "tslib": "^2.3.1", + "uuid": "^8.3.2" + } + }, + "@aws-sdk/middleware-sdk-sts": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.271.0.tgz", + "integrity": "sha512-/h8+PAx+85M+tSL/kl1lWVgHrrodmDRuQuDLXC7ufE6C1JRxRBkWMTOg6S3ZeuKo1Va/8RcAKf7jtkGdIBD5HQ==", + "requires": { + "@aws-sdk/middleware-signing": "3.271.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/signature-v4": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-serde": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.271.0.tgz", + "integrity": "sha512-louPEKEZP2TtTavMwg4k6IJjEbXC6xV05Wtb4I+ZKzjupoTG80nmLtgPU7rnvweej3D69aeSQETfPoq1N4u4mg==", + "requires": { + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-signing": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.271.0.tgz", + "integrity": "sha512-jCxbt6sehnmV6we2uu0rY5McREJQ9WGQ3HCtjG1qSxm1vJkROX40IUvq7uvwPi3FquqIv2pCc64vLuDdhfs6OA==", + "requires": { + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/signature-v4": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/util-middleware": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-stack": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.271.0.tgz", + "integrity": "sha512-ojbvxVdJRzvHx1SiXTX8z5qtsX/86+puqqmhTNQTed0/sp856rJVHrE+59qrOa8tNX+dHih5nzmjZ2OvhP+duA==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-user-agent": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.271.0.tgz", + "integrity": "sha512-VnoY5DfdkSorT/bM91FPwHduzkRFBTi/MyU/J08xPkuAQfu2CmvIBr8W15XN1ysAZbZVyDir7NeE9MNG6Q/soA==", + "requires": { + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/node-config-provider": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.271.0.tgz", + "integrity": "sha512-PbEQ7GRO9/oXXrxIMPkOsL1lKzi3FzMizFj1tLjSkN+lvUaRt2w9Yrb+P3G7Wr2VyniI8QwpAPnebQ+5Rg7yig==", + "requires": { + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/shared-ini-file-loader": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/node-http-handler": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.271.0.tgz", + "integrity": "sha512-r/wLPLUo3HeWHumvnYxP4LvMz1cKpVO7XVognt5caeDakS2CDiFN3NiCO2PFxOGoWCyMDKcroKtIdXETcgrEbQ==", + "requires": { + "@aws-sdk/abort-controller": "3.271.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/querystring-builder": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/property-provider": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.271.0.tgz", + "integrity": "sha512-y95eWGs2tbCESZZVqNWbDXOL43y18bZSS0mfac2n7srOfeuVh+4+8Zdhsnz/NW3Ao61+k1IxKCFnX0iKfJSu2Q==", + "requires": { + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/protocol-http": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.271.0.tgz", + "integrity": "sha512-WWyS/M+A0NoEBBLbgO1qG7oxEGWvhjsFJgX0Yzz38mKIjW8G/31X9ylaCQoGFSOTn6GXBRqc/i0P86os+wL45Q==", + "requires": { + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/querystring-builder": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.271.0.tgz", + "integrity": "sha512-2FKaoeOgCyn2eShq4hZrEBQ9euHYMvh0aFwWrjQgXjUWJmV4Q+/+eob/sEDeeYvkMW45T5aIG7D+hbVowgWZAQ==", + "requires": { + "@aws-sdk/types": "3.271.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/querystring-parser": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.271.0.tgz", + "integrity": "sha512-SGcxf+gaSMMST806zQxETEoe3ENWkncQh+cpDNDRo/oS582PMd7tIOAxP9JJdLJGp9UkIdSkTLWXDjzk9Zt02w==", + "requires": { + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/service-error-classification": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.271.0.tgz", + "integrity": "sha512-yTnxoeCa4uMRfpaaq6oG1h1a01vXQ2al+D0DyX+D5sw7u6RyZOaxxUEbyfEPTN+JtRw+M+zcdlvto3swIwRqoQ==" + }, + "@aws-sdk/shared-ini-file-loader": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.271.0.tgz", + "integrity": "sha512-PR1Hco+r1sH7WlqxaO3Vvl6a8I5juvwVjwjjorbI3EVsxQgEcyCjy1ZVnpCAxY1Xam7ne5nAWO6Y6LtfY4JJ5g==", + "requires": { + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/signature-v4": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.271.0.tgz", + "integrity": "sha512-OzS+h0MGqzukJSrPqVi08pWDGZkq8U/yXf2LfCkQz58Rv/pbCuDIIN7Oab6IwnVPQV7KoCsegYL3e6BpOp1qpA==", + "requires": { + "@aws-sdk/is-array-buffer": "3.201.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/util-hex-encoding": "3.201.0", + "@aws-sdk/util-middleware": "3.271.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/smithy-client": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.271.0.tgz", + "integrity": "sha512-8wqNArFoLx2hy2kT5jV7JsaZ4jIqI535K1WXBCkzVLKNMv6RVYCBN57I5+C5sgVtHCZwy9RLzRHJIGLEIKIfBg==", + "requires": { + "@aws-sdk/middleware-stack": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/token-providers": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.271.0.tgz", + "integrity": "sha512-tCh3Pw7VuSGT6yg8n7IeNc25IT8cjPS9Q0YKzjN8rPBZW5iI8/kJyZ7kQBj52JD8WrEYCoxG4hnDvawe1e1lAA==", + "requires": { + "@aws-sdk/client-sso-oidc": "3.271.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/shared-ini-file-loader": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/types": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.271.0.tgz", + "integrity": "sha512-w4oNKEaBul7eh2IM97c89xaH9Ti8+e+u/Rc1ZkgNtpnfOpDUU2t3ugJ91ihGH+xtASQCWJTopTDfX5CuKsQQtQ==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/url-parser": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.271.0.tgz", + "integrity": "sha512-HuL38pnLaZX4zjlsm9sZfyiPvEK9gFl9viX7wpBJcF50+KgRcj1rasYCy8AfWlCEtL7A214xEutFwGqLfTyDag==", + "requires": { + "@aws-sdk/querystring-parser": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-defaults-mode-browser": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.271.0.tgz", + "integrity": "sha512-zyCIT/4PKiBxblZLKcMTNCllKcPhLuE08lIv1fGaqgIZzULFaAGjd/lpTO1q7I2hOt5oFL/4uzTFDrG8g5HJAg==", + "requires": { + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/types": "3.271.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-defaults-mode-node": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.271.0.tgz", + "integrity": "sha512-QqruC9fkrraoWxrzG7EFX/pOkoLblV2YPsvPHR37DzKSssnsQxOPbiAF95Qw2zocsDrpDuxJEe2RM800vunIsw==", + "requires": { + "@aws-sdk/config-resolver": "3.271.0", + "@aws-sdk/credential-provider-imds": "3.271.0", + "@aws-sdk/node-config-provider": "3.271.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-endpoints": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.271.0.tgz", + "integrity": "sha512-qr+IWZB0Th+TcarjTW5ZakkbKxBNKlLsnFiw3j+gECDA5raUEyTB3w6tRH0nhPFNzN6cM5P8arKlpm3R7f002Q==", + "requires": { + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-middleware": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.271.0.tgz", + "integrity": "sha512-qE+t+JKygIPtXvik1Dy9B2dQx8pJ5NFPms/uFi9kOexCJy8mWd4FApK+sCwT5TGWte+tY2Fg7fcTs5g7ufcsKw==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-retry": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-retry/-/util-retry-3.271.0.tgz", + "integrity": "sha512-tO3nHBtAlBSppM37AJNc/rUwLNypPvkDC7av2cyuCDTaH4OHLd/RqZUtvMtSXJKjxR4v8RiyiQvRVE65u0Ermw==", + "requires": { + "@aws-sdk/service-error-classification": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-user-agent-browser": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.271.0.tgz", + "integrity": "sha512-nFU4flPzzkG6c46ZKroXtQc6D8g/8ei3nUYJF2Poc+3UD/GiuKASWR+ymALN7Zc2YfR95LcVCNdcm1rDI1WLXA==", + "requires": { + "@aws-sdk/types": "3.271.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-user-agent-node": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.271.0.tgz", + "integrity": "sha512-okLJbQ1iBmAH+OdqDd6AmINUAQdLnhi+D9rvp4ZoE5DIhgbzFIuUK6SByB7Rl/9XE76wzkHfRhZJYPyD1cPkQA==", + "requires": { + "@aws-sdk/node-config-provider": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-waiter": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-waiter/-/util-waiter-3.271.0.tgz", + "integrity": "sha512-xpafmsE7xnP25NK9l/ove1NKlimtxZ9MAve+bNXCs0wX1E2dJJm/dAPRrlfcHHbb1fMOXJG9kqKLJAFtVjsOVQ==", + "requires": { + "@aws-sdk/abort-controller": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" + } + } + } + }, "@aws-sdk/client-sso": { "version": "3.238.0", "requires": { @@ -47167,21 +50294,117 @@ } }, "@aws-sdk/middleware-sdk-ec2": { - "version": "3.226.0", + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-ec2/-/middleware-sdk-ec2-3.266.1.tgz", + "integrity": "sha512-Fymif8a8B9yfKtHeCqwHhbPIYVbLdkXGvgsVzE4R7aXwwKj8tzwDyXw+RArwg1C4FAPn+qS9KARY+oFScLcPjA==", "requires": { - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/signature-v4": "3.226.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/util-format-url": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/signature-v4": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-format-url": "3.266.1", "tslib": "^2.3.1" }, "dependencies": { + "@aws-sdk/middleware-endpoint": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.266.1.tgz", + "integrity": "sha512-EVnzd51U/Jhz9x68jFwqHjU4KPsLIXfuS1PSNV598OT04WLQXerBx/fvZh17Y4Dmmu6hf/JUWI9PI5To+oC3mQ==", + "requires": { + "@aws-sdk/middleware-serde": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/signature-v4": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/url-parser": "3.266.1", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-serde": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.266.1.tgz", + "integrity": "sha512-UFJ4BlRG/MUOJq5afHohkDsMDPAkbuXGCkhTz93MGxbACEOJYoEvsaMjpLft88wu4D11GY1Y2PVFkfxJUYWDXA==", + "requires": { + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/protocol-http": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.266.1.tgz", + "integrity": "sha512-8Z1Yfkf59of1R9qRSPmDKIHDo0n5YNCh1FrRLmCRqjjiZ4Ed7FJV/W6YYnJ6VbPcVv1WK6FvwzrGPM2gg4P48Q==", + "requires": { + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/querystring-builder": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.266.1.tgz", + "integrity": "sha512-D1LoDv3A+c6YIYq6F2T5m8V0C14vQAarSoT6romVIIYCDuMK4R5BwB1NLFRco1dczyAYmqScxdV2C26+xjXJfw==", + "requires": { + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/querystring-parser": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.266.1.tgz", + "integrity": "sha512-Ck8Ahluj+/eK4FcX8IlbO7DA1MNWdnh1rKjc1qx/ZWh71G/FdZ8Sse33N+Ed/z9v7H8W695dprRT6CuRlqyAbw==", + "requires": { + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/signature-v4": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.266.1.tgz", + "integrity": "sha512-kiHHA3voQKz4QYLKbR/3hKkY2n62MuGewYctvtQsh1069U/OI7FVceIE5hZnrlC5XX4jiNoF1lKdyRhXmK5GMQ==", + "requires": { + "@aws-sdk/is-array-buffer": "3.201.0", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-hex-encoding": "3.201.0", + "@aws-sdk/util-middleware": "3.266.1", + "@aws-sdk/util-uri-escape": "3.201.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/types": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.266.1.tgz", + "integrity": "sha512-OVg3CjHKT3/Ws33jx3TUYYkbFOv/CLb9m3P4gZQDvgKPsOagp96LOsG8ZWdcVZCvSorAUqSb5kuc1utsjJxDTw==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/url-parser": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.266.1.tgz", + "integrity": "sha512-7IBZ8TjTWafug26CnNpz6cdrLU0TZ0G7N9LNfqjM/+69KI/Ragvv2Lsm4jhSv2uMx5OEzwlVYIEYaKMnAUiRLQ==", + "requires": { + "@aws-sdk/querystring-parser": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, "@aws-sdk/util-format-url": { - "version": "3.226.0", + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-format-url/-/util-format-url-3.266.1.tgz", + "integrity": "sha512-hCOgeAv1Oc4vK9VIkvbruchXXTxutFgLYFvqt43q5Tnu2jXyWinnIsenKS0PszUxuccmqy/fDcoYQWAqRML1fQ==", + "requires": { + "@aws-sdk/querystring-builder": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-middleware": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.266.1.tgz", + "integrity": "sha512-iZq+lq80byWZMsdII4OS7CdhgGeuBXBPd//iFWq4YmGts5W1QI1FLIFcsOuUnZtQMiaAuvLXtEO8ZrfaKTFKgw==", "requires": { - "@aws-sdk/querystring-builder": "3.226.0", - "@aws-sdk/types": "3.226.0", "tslib": "^2.3.1" } } @@ -51463,6 +54686,92 @@ "version": "21.0.0", "peer": true }, + "@vitest/expect": { + "version": "0.28.4", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-0.28.4.tgz", + "integrity": "sha512-JqK0NZ4brjvOSL8hXAnIsfi+jxDF7rH/ZWCGCt0FAqRnVFc1hXsfwXksQvEnKqD84avRt3gmeXoK4tNbmkoVsQ==", + "dev": true, + "requires": { + "@vitest/spy": "0.28.4", + "@vitest/utils": "0.28.4", + "chai": "^4.3.7" + } + }, + "@vitest/runner": { + "version": "0.28.4", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-0.28.4.tgz", + "integrity": "sha512-Q8UV6GjDvBSTfUoq0QXVCNpNOUrWu4P2qvRq7ssJWzn0+S0ojbVOxEjMt+8a32X6SdkhF8ak+2nkppsqV0JyNQ==", + "dev": true, + "requires": { + "@vitest/utils": "0.28.4", + "p-limit": "^4.0.0", + "pathe": "^1.1.0" + }, + "dependencies": { + "p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "dev": true, + "requires": { + "yocto-queue": "^1.0.0" + } + }, + "pathe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.0.tgz", + "integrity": "sha512-ODbEPR0KKHqECXW1GoxdDb+AZvULmXjVPy4rt+pGo2+TnjJTIPJQSVS6N63n8T2Ip+syHhbn52OewKicV0373w==", + "dev": true + }, + "yocto-queue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "dev": true + } + } + }, + "@vitest/spy": { + "version": "0.28.4", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-0.28.4.tgz", + "integrity": "sha512-8WuhfXLlvCXpNXEGJW6Gc+IKWI32435fQJLh43u70HnZ1otJOa2Cmg2Wy2Aym47ZnNCP4NolF+8cUPwd0MigKQ==", + "dev": true, + "requires": { + "tinyspy": "^1.0.2" + } + }, + "@vitest/utils": { + "version": "0.28.4", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-0.28.4.tgz", + "integrity": "sha512-l2QztOLdc2LkR+w/lP52RGh8hW+Ul4KESmCAgVE8q737I7e7bQoAfkARKpkPJ4JQtGpwW4deqlj1732VZD7TFw==", + "dev": true, + "requires": { + "cli-truncate": "^3.1.0", + "diff": "^5.1.0", + "loupe": "^2.3.6", + "picocolors": "^1.0.0", + "pretty-format": "^27.5.1" + }, + "dependencies": { + "ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true + }, + "pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + } + } + } + }, "@yarnpkg/lockfile": { "version": "1.1.0", "dev": true @@ -52229,6 +55538,72 @@ "cli-spinners": { "version": "2.6.1" }, + "cli-truncate": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", + "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", + "dev": true, + "requires": { + "slice-ansi": "^5.0.0", + "string-width": "^5.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true + }, + "ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true + }, + "emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", + "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", + "dev": true + }, + "slice-ansi": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", + "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", + "dev": true, + "requires": { + "ansi-styles": "^6.0.0", + "is-fullwidth-code-point": "^4.0.0" + } + }, + "string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "requires": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + } + }, + "strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "dev": true, + "requires": { + "ansi-regex": "^6.0.1" + } + } + } + }, "cli-width": { "version": "3.0.0", "dev": true @@ -52686,6 +56061,12 @@ "wrappy": "1" } }, + "diff": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz", + "integrity": "sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==", + "dev": true + }, "dir-glob": { "version": "3.0.1", "dev": true, @@ -53539,269 +56920,333 @@ } } }, - "example-javascriptv3-cloudwatchlogs": { - "version": "file:example_code/cloudwatch-logs", + "example-javascriptv3-cloudwatchlogs": { + "version": "file:example_code/cloudwatch-logs", + "requires": { + "@aws-sdk/client-cloudwatch-logs": "^3.215.0", + "@aws-sdk/client-iam": "^3.216.0", + "@aws-sdk/client-lambda": "^3.216.0", + "libs": "*", + "ramda": "^0.28.0", + "vitest": "^0.25.3" + }, + "dependencies": { + "@aws-sdk/client-cloudwatch-logs": { + "version": "3.244.0", + "requires": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/client-sts": "3.241.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/credential-provider-node": "3.241.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-signing": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.241.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-sso": { + "version": "3.241.0", + "requires": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.241.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-sso-oidc": { + "version": "3.241.0", + "requires": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.241.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-sts": { + "version": "3.241.0", + "requires": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/credential-provider-node": "3.241.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-sdk-sts": "3.226.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-signing": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.241.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "fast-xml-parser": "4.0.11", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-ini": { + "version": "3.241.0", + "requires": { + "@aws-sdk/credential-provider-env": "3.226.0", + "@aws-sdk/credential-provider-imds": "3.226.0", + "@aws-sdk/credential-provider-process": "3.226.0", + "@aws-sdk/credential-provider-sso": "3.241.0", + "@aws-sdk/credential-provider-web-identity": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-node": { + "version": "3.241.0", + "requires": { + "@aws-sdk/credential-provider-env": "3.226.0", + "@aws-sdk/credential-provider-imds": "3.226.0", + "@aws-sdk/credential-provider-ini": "3.241.0", + "@aws-sdk/credential-provider-process": "3.226.0", + "@aws-sdk/credential-provider-sso": "3.241.0", + "@aws-sdk/credential-provider-web-identity": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-sso": { + "version": "3.241.0", + "requires": { + "@aws-sdk/client-sso": "3.241.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/token-providers": "3.241.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/token-providers": { + "version": "3.241.0", + "requires": { + "@aws-sdk/client-sso-oidc": "3.241.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-endpoints": { + "version": "3.241.0", + "requires": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "vitest": { + "version": "0.25.8", + "dev": true, + "requires": { + "@types/chai": "^4.3.4", + "@types/chai-subset": "^1.3.3", + "@types/node": "*", + "acorn": "^8.8.1", + "acorn-walk": "^8.2.0", + "chai": "^4.3.7", + "debug": "^4.3.4", + "local-pkg": "^0.4.2", + "source-map": "^0.6.1", + "strip-literal": "^1.0.0", + "tinybench": "^2.3.1", + "tinypool": "^0.3.0", + "tinyspy": "^1.0.2", + "vite": "^3.0.0 || ^4.0.0" + } + } + } + }, + "example-javascriptv3-cognito": { + "version": "file:example_code/cognito", "requires": { - "@aws-sdk/client-cloudwatch-logs": "^3.215.0", - "@aws-sdk/client-iam": "^3.216.0", - "@aws-sdk/client-lambda": "^3.216.0", - "libs": "*", + "@aws-sdk/client-cognito-identity-provider": "^3.183.0", + "@aws-sdk/client-ses": "^3.183.0", + "@types/qrcode-terminal": "^0.12.0", + "amazon-cognito-identity-js": "^5.2.10", + "aws-amplify": "^4.3.37", + "crypto-js": "^4.1.1", + "qrcode-terminal": "^0.12.0", "ramda": "^0.28.0", - "vitest": "^0.25.3" + "vitest": "^0.26.2" + } + }, + "example-javascriptv3-ec2": { + "version": "file:example_code/ec2", + "requires": { + "@aws-sdk/client-ec2": "^3.266.1", + "@aws-sdk/client-ssm": "*", + "vitest": "^0.28.4" }, "dependencies": { - "@aws-sdk/client-cloudwatch-logs": { - "version": "3.244.0", - "requires": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/client-sts": "3.241.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/credential-provider-node": "3.241.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-signing": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.241.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/client-sso": { - "version": "3.241.0", - "requires": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.241.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/client-sso-oidc": { - "version": "3.241.0", - "requires": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.241.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/client-sts": { - "version": "3.241.0", - "requires": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/credential-provider-node": "3.241.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-sdk-sts": "3.226.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-signing": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.241.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "fast-xml-parser": "4.0.11", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/credential-provider-ini": { - "version": "3.241.0", - "requires": { - "@aws-sdk/credential-provider-env": "3.226.0", - "@aws-sdk/credential-provider-imds": "3.226.0", - "@aws-sdk/credential-provider-process": "3.226.0", - "@aws-sdk/credential-provider-sso": "3.241.0", - "@aws-sdk/credential-provider-web-identity": "3.226.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/types": "3.226.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/credential-provider-node": { - "version": "3.241.0", - "requires": { - "@aws-sdk/credential-provider-env": "3.226.0", - "@aws-sdk/credential-provider-imds": "3.226.0", - "@aws-sdk/credential-provider-ini": "3.241.0", - "@aws-sdk/credential-provider-process": "3.226.0", - "@aws-sdk/credential-provider-sso": "3.241.0", - "@aws-sdk/credential-provider-web-identity": "3.226.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/types": "3.226.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/credential-provider-sso": { - "version": "3.241.0", - "requires": { - "@aws-sdk/client-sso": "3.241.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/token-providers": "3.241.0", - "@aws-sdk/types": "3.226.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/token-providers": { - "version": "3.241.0", - "requires": { - "@aws-sdk/client-sso-oidc": "3.241.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/types": "3.226.0", - "tslib": "^2.3.1" - } + "pathe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.0.tgz", + "integrity": "sha512-ODbEPR0KKHqECXW1GoxdDb+AZvULmXjVPy4rt+pGo2+TnjJTIPJQSVS6N63n8T2Ip+syHhbn52OewKicV0373w==", + "dev": true }, - "@aws-sdk/util-endpoints": { - "version": "3.241.0", + "vite-node": { + "version": "0.28.4", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-0.28.4.tgz", + "integrity": "sha512-KM0Q0uSG/xHHKOJvVHc5xDBabgt0l70y7/lWTR7Q0pR5/MrYxadT+y32cJOE65FfjGmJgxpVEEY+69btJgcXOQ==", + "dev": true, "requires": { - "@aws-sdk/types": "3.226.0", - "tslib": "^2.3.1" + "cac": "^6.7.14", + "debug": "^4.3.4", + "mlly": "^1.1.0", + "pathe": "^1.1.0", + "picocolors": "^1.0.0", + "source-map": "^0.6.1", + "source-map-support": "^0.5.21", + "vite": "^3.0.0 || ^4.0.0" } }, "vitest": { - "version": "0.25.8", + "version": "0.28.4", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-0.28.4.tgz", + "integrity": "sha512-sfWIy0AdlbyGRhunm+TLQEJrFH9XuRPdApfubsyLcDbCRrUX717BRQKInTgzEfyl2Ipi1HWoHB84Nqtcwxogcg==", "dev": true, "requires": { "@types/chai": "^4.3.4", "@types/chai-subset": "^1.3.3", "@types/node": "*", + "@vitest/expect": "0.28.4", + "@vitest/runner": "0.28.4", + "@vitest/spy": "0.28.4", + "@vitest/utils": "0.28.4", "acorn": "^8.8.1", "acorn-walk": "^8.2.0", + "cac": "^6.7.14", "chai": "^4.3.7", "debug": "^4.3.4", "local-pkg": "^0.4.2", + "pathe": "^1.1.0", + "picocolors": "^1.0.0", "source-map": "^0.6.1", + "std-env": "^3.3.1", "strip-literal": "^1.0.0", "tinybench": "^2.3.1", - "tinypool": "^0.3.0", + "tinypool": "^0.3.1", "tinyspy": "^1.0.2", - "vite": "^3.0.0 || ^4.0.0" + "vite": "^3.0.0 || ^4.0.0", + "vite-node": "0.28.4", + "why-is-node-running": "^2.2.2" } } } }, - "example-javascriptv3-cognito": { - "version": "file:example_code/cognito", - "requires": { - "@aws-sdk/client-cognito-identity-provider": "^3.183.0", - "@aws-sdk/client-ses": "^3.183.0", - "@types/qrcode-terminal": "^0.12.0", - "amazon-cognito-identity-js": "^5.2.10", - "aws-amplify": "^4.3.37", - "crypto-js": "^4.1.1", - "qrcode-terminal": "^0.12.0", - "ramda": "^0.28.0", - "vitest": "^0.26.2" - } - }, "example-javascriptv3-lambda": { "version": "file:example_code/lambda", "requires": { @@ -58788,8 +62233,7 @@ } }, "react-is": { - "version": "17.0.2", - "peer": true + "version": "17.0.2" }, "react-native": { "version": "0.70.6", @@ -59953,7 +63397,9 @@ "dev": true }, "tinypool": { - "version": "0.3.0", + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-0.3.1.tgz", + "integrity": "sha512-zLA1ZXlstbU2rlpA4CIeVaqvWq41MTWqLY3FfsAXgC8+f7Pk7zroaJQxDgxn1xNudKW6Kmj4808rPFShUlIRmQ==", "dev": true }, "tinyspy": { diff --git a/javascriptv3/package.json b/javascriptv3/package.json index 7930cd581eb..35ffa7b87a0 100644 --- a/javascriptv3/package.json +++ b/javascriptv3/package.json @@ -12,7 +12,8 @@ "example_code/lambda", "example_code/libs", "example_code/sts", - "example_code/support" + "example_code/support", + "example_code/ec2" ], "devDependencies": { "lerna": "^6.3.0" From f2b09fd8da7e163a7b76b1fd43d232054a084acb Mon Sep 17 00:00:00 2001 From: Laren-AWS <57545972+Laren-AWS@users.noreply.github.com> Date: Tue, 21 Feb 2023 10:35:17 -0800 Subject: [PATCH 05/17] Update Glue title overrides per Glue team (#4454) Update Glue title overrides per Glue team. Co-authored-by: Steven Meyer <108885656+meyertst-aws@users.noreply.github.com> --- .doc_gen/metadata/services.yaml | 3 +++ .doc_gen/validation/services_schema.yaml | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/.doc_gen/metadata/services.yaml b/.doc_gen/metadata/services.yaml index f73ec7ba0aa..7e2029392cd 100644 --- a/.doc_gen/metadata/services.yaml +++ b/.doc_gen/metadata/services.yaml @@ -428,6 +428,9 @@ glue: long: '&GLUlong;' short: '&GLU;' sort: Glue + chapter_override: + title: '&GLU; API code examples using &AWS; SDKs' + title_abbrev: '&GLU; API code examples' expanded: long: AWS Glue short: AWS Glue diff --git a/.doc_gen/validation/services_schema.yaml b/.doc_gen/validation/services_schema.yaml index aa96f9764dc..40554b9985c 100644 --- a/.doc_gen/validation/services_schema.yaml +++ b/.doc_gen/validation/services_schema.yaml @@ -21,8 +21,8 @@ service: tags: map(key=enum('product_categories')) chapter_override: - title: str(upper_start=True, end_punc=False) - title_abbrev: str(upper_start=True, end_punc=False) + title: str(end_punc=False) + title_abbrev: str(end_punc=False) entity_regex: regex('^[&]([\dA-Za-z-_])+[;]$|^&AWS; SDK for Kotlin Developer Guide$', name='valid entity') doc_url: regex('^(?!https://docs.aws.amazon.com/).+', name="relative documentation URL") \ No newline at end of file From e45e19dcd9b2521a6572f0d1b0888bd475034cd7 Mon Sep 17 00:00:00 2001 From: Shahzad Bhatti Date: Tue, 21 Feb 2023 11:38:17 -0800 Subject: [PATCH 06/17] Adding Cognito examples for SRP Authentication (#4228) * Adding Cognito examples for SRP Authentication * Implemented feedback from CR to limit the identifier under 40-characters and add punctuations to the comments * Implemented feedback from CR to limit the identifier under 40-characters and add punctuations to the comments --------- Co-authored-by: Shahzad Bhatti Co-authored-by: Steven Meyer <108885656+meyertst-aws@users.noreply.github.com> --- .../com/example/cognito/ConfirmSignUp.java | 8 +- .../java/com/example/cognito/srp/SRPDemo.java | 136 ++++++++++++++++++ .../cognito/srp/usecases/AdminAuthDemo.java | 94 ++++++++++++ .../cognito/srp/usecases/DeviceAuthDemo.java | 109 ++++++++++++++ .../srp/usecases/DeviceTrackingDemo.java | 77 ++++++++++ .../srp/usecases/SoftwareTokenMFADemo.java | 57 ++++++++ .../cognito/srp/usecases/UserAuthDemo.java | 111 ++++++++++++++ .../example/cognito/srp/utils/HashUtils.java | 77 ++++++++++ .../example/cognito/srp/utils/SRPUtils.java | 116 +++++++++++++++ .../src/test/java/AmazonCognitoTest.java | 2 + 10 files changed, 783 insertions(+), 4 deletions(-) create mode 100644 javav2/example_code/cognito/src/main/java/com/example/cognito/srp/SRPDemo.java create mode 100644 javav2/example_code/cognito/src/main/java/com/example/cognito/srp/usecases/AdminAuthDemo.java create mode 100644 javav2/example_code/cognito/src/main/java/com/example/cognito/srp/usecases/DeviceAuthDemo.java create mode 100644 javav2/example_code/cognito/src/main/java/com/example/cognito/srp/usecases/DeviceTrackingDemo.java create mode 100644 javav2/example_code/cognito/src/main/java/com/example/cognito/srp/usecases/SoftwareTokenMFADemo.java create mode 100644 javav2/example_code/cognito/src/main/java/com/example/cognito/srp/usecases/UserAuthDemo.java create mode 100644 javav2/example_code/cognito/src/main/java/com/example/cognito/srp/utils/HashUtils.java create mode 100644 javav2/example_code/cognito/src/main/java/com/example/cognito/srp/utils/SRPUtils.java diff --git a/javav2/example_code/cognito/src/main/java/com/example/cognito/ConfirmSignUp.java b/javav2/example_code/cognito/src/main/java/com/example/cognito/ConfirmSignUp.java index 5faa803f3c4..218f9496fac 100644 --- a/javav2/example_code/cognito/src/main/java/com/example/cognito/ConfirmSignUp.java +++ b/javav2/example_code/cognito/src/main/java/com/example/cognito/ConfirmSignUp.java @@ -23,7 +23,7 @@ public static void main(String[] args) { "Where:\n" + " ClientId - The ID of the app client associated with the user pool.\n\n" + " ConfirmationCode - The confirmation code sent by a user's request to confirm registration.\n\n" + - " Username - The user name of the user whose registration you want to confirm.\n\n" + " Username - The user name of the user whose registration you want to confirm.\n\n"; if (args.length != 1) { System.out.println(usage); @@ -39,11 +39,11 @@ public static void main(String[] args) { .credentialsProvider(ProfileCredentialsProvider.create()) .build(); - confirmSignUp(identityProviderClient, confirmationCode, username); + confirmSignUp(clientId, identityProviderClient, confirmationCode, username); identityProviderClient.close(); } - public static void confirmSignUp(CognitoIdentityProviderClient identityProviderClient, String confirmationCode, String username){ + public static void confirmSignUp(String clientId, CognitoIdentityProviderClient identityProviderClient, String confirmationCode, String username){ ConfirmSignUpRequest req = ConfirmSignUpRequest.builder() .clientId(clientId) @@ -56,4 +56,4 @@ public static void confirmSignUp(CognitoIdentityProviderClient identityProviderC System.out.println("User " + username + " sign up confirmed"); } -} \ No newline at end of file +} diff --git a/javav2/example_code/cognito/src/main/java/com/example/cognito/srp/SRPDemo.java b/javav2/example_code/cognito/src/main/java/com/example/cognito/srp/SRPDemo.java new file mode 100644 index 00000000000..90a97ab20e9 --- /dev/null +++ b/javav2/example_code/cognito/src/main/java/com/example/cognito/srp/SRPDemo.java @@ -0,0 +1,136 @@ +/* Copyright 2010-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"). + * You may not use this file except in compliance with the License. + * A copy of the License is located at + * + * http://aws.amazon.com/apache2.0 + * + * or in the "license" file accompanying this file. This file is distributed + * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ +package com.example.cognito.srp; + +import com.example.cognito.srp.usecases.*; +import software.amazon.awssdk.auth.credentials.EnvironmentVariableCredentialsProvider; +import software.amazon.awssdk.services.cognitoidentityprovider.CognitoIdentityProviderClient; +import software.amazon.awssdk.services.cognitoidentityprovider.model.*; + +import java.util.Scanner; + +public class SRPDemo { + private static final String COGNITO_USERNAME = "test_user-auth-device-tracking"; + private static final String COGNITO_PASSWORD = "changeme-0okm9IJN~"; + private static final String COGNITO_POOL_ID; + private static final String COGNITO_USER_CLIENT_ID; + private static final String COGNITO_ADMIN_CLIENT_ID; + private static final String COGNITO_ADMIN_CLIENT_SECRET; + private static final CognitoIdentityProviderClient cognitoClient = CognitoIdentityProviderClient.builder() + .credentialsProvider(EnvironmentVariableCredentialsProvider.create()) + .build(); + + static { + // Create user pool. + DeviceConfigurationType deviceConfig = DeviceConfigurationType.builder() + .challengeRequiredOnNewDevice(true) + .deviceOnlyRememberedOnUserPrompt(true) + .build(); + CreateUserPoolRequest poolRequest = CreateUserPoolRequest.builder() + .poolName("my awesome user pool") + .deviceConfiguration(deviceConfig) + .build(); + CreateUserPoolResponse pool = cognitoClient.createUserPool(poolRequest); + COGNITO_POOL_ID = pool.userPool().id(); + System.out.println("User pool is: " + COGNITO_POOL_ID); + SetUserPoolMfaConfigRequest mfaRequest = SetUserPoolMfaConfigRequest.builder() + .userPoolId(COGNITO_POOL_ID) + .mfaConfiguration(UserPoolMfaType.ON) + .softwareTokenMfaConfiguration(SoftwareTokenMfaConfigType.builder().enabled(true).build()) + .build(); + cognitoClient.setUserPoolMfaConfig(mfaRequest); + // Create user application client. + CreateUserPoolClientRequest userClientRequest = CreateUserPoolClientRequest.builder() + .clientName("my awesome application client for user") + .userPoolId(COGNITO_POOL_ID) + .explicitAuthFlows(ExplicitAuthFlowsType.ALLOW_USER_SRP_AUTH, ExplicitAuthFlowsType.ALLOW_REFRESH_TOKEN_AUTH) + .generateSecret(false) + .build(); + CreateUserPoolClientResponse userClientResponse = cognitoClient.createUserPoolClient(userClientRequest); + COGNITO_USER_CLIENT_ID = userClientResponse.userPoolClient().clientId(); + System.out.println("Application client for user is: " + COGNITO_USER_CLIENT_ID); + // Create admin application client. + CreateUserPoolClientRequest adminClientRequest = CreateUserPoolClientRequest.builder() + .clientName("my awesome application client for admin") + .userPoolId(COGNITO_POOL_ID) + .explicitAuthFlows(ExplicitAuthFlowsType.ALLOW_ADMIN_USER_PASSWORD_AUTH, ExplicitAuthFlowsType.ALLOW_REFRESH_TOKEN_AUTH) + .generateSecret(true) + .build(); + CreateUserPoolClientResponse adminClientResponse = cognitoClient.createUserPoolClient(adminClientRequest); + COGNITO_ADMIN_CLIENT_ID = adminClientResponse.userPoolClient().clientId(); + COGNITO_ADMIN_CLIENT_SECRET = adminClientResponse.userPoolClient().clientSecret(); + System.out.println("Application client for admin is: " + COGNITO_ADMIN_CLIENT_ID); + // Create user. + AdminCreateUserRequest userRequest = AdminCreateUserRequest.builder() + .userPoolId(COGNITO_POOL_ID) + .username(COGNITO_USERNAME) + .build(); + cognitoClient.adminCreateUser(userRequest); + AdminSetUserPasswordRequest passwordRequest = AdminSetUserPasswordRequest.builder() + .userPoolId(COGNITO_POOL_ID) + .username(COGNITO_USERNAME) + .password(COGNITO_PASSWORD) + .permanent(true) + .build(); + cognitoClient.adminSetUserPassword(passwordRequest); + } + + public static void main(String[] args) { + // 1. Start authentication with Admin credentials. + AdminInitiateAuthResponse authResponse = new AdminAuthDemo(cognitoClient, COGNITO_POOL_ID, COGNITO_ADMIN_CLIENT_ID, COGNITO_ADMIN_CLIENT_SECRET) + .adminInitiateAuth(COGNITO_USERNAME, COGNITO_PASSWORD); + System.out.println(authResponse); + + // 2. Get a token to associate an MFA application. + String session = authResponse.session(); + AssociateSoftwareTokenResponse associateResponse = new SoftwareTokenMFADemo(cognitoClient).associateSoftwareToken(session); + session = associateResponse.session(); + String secretCode = associateResponse.secretCode(); + System.out.println("Please enter this token into Google Authenticator: " + secretCode); + + Scanner scanner = new Scanner(System.in); + System.out.println("Enter TOTP from Google authenticator: "); + String code = scanner.nextLine(); + VerifySoftwareTokenResponse verifyResponse = new SoftwareTokenMFADemo(cognitoClient).verifySoftwareToken(session, code); + + // 3. Respond to an auth challenge [MFA_SETUP]. + session = verifyResponse.session(); + AdminRespondToAuthChallengeResponse challengeResponse = new AdminAuthDemo(cognitoClient, COGNITO_POOL_ID, COGNITO_ADMIN_CLIENT_ID, COGNITO_ADMIN_CLIENT_SECRET) + .adminRespondToAuthChallenge(session, COGNITO_USERNAME); + System.out.println("Challenge response: " + challengeResponse); + + // 4. Confirm an MFA device for tracking. + String accessToken = challengeResponse.authenticationResult().accessToken(); + String deviceGroupKey = challengeResponse.authenticationResult().newDeviceMetadata().deviceGroupKey(); + String deviceKey = challengeResponse.authenticationResult().newDeviceMetadata().deviceKey(); + String deviceName = "my cool device name"; + String devicePassword = "my secret device password"; + ConfirmDeviceResponse confirmResponse = new DeviceTrackingDemo(cognitoClient) + .confirmDevice(accessToken, deviceGroupKey, deviceKey, deviceName, devicePassword); + System.out.println("Confirm response: " + confirmResponse); + if (confirmResponse.userConfirmationNecessary()) { + UpdateDeviceStatusResponse deviceResponse = new DeviceTrackingDemo(cognitoClient) + .updateDeviceStatus(accessToken, deviceKey); + } + + // 5. User SRP auth. + RespondToAuthChallengeResponse userSrpResponse = new UserAuthDemo(cognitoClient, COGNITO_POOL_ID, COGNITO_USER_CLIENT_ID) + .userSrpAuth(COGNITO_USERNAME, COGNITO_PASSWORD, deviceKey); + System.out.println("User SRP response: " + userSrpResponse); + + // 6. Device SRP Auth. + RespondToAuthChallengeResponse deviceSrpResponse = new DeviceAuthDemo(cognitoClient, COGNITO_USER_CLIENT_ID).deviceSrpAuth(COGNITO_USERNAME, deviceGroupKey, deviceKey, devicePassword); + System.out.println("Device SRP response: " + deviceSrpResponse); + } +} diff --git a/javav2/example_code/cognito/src/main/java/com/example/cognito/srp/usecases/AdminAuthDemo.java b/javav2/example_code/cognito/src/main/java/com/example/cognito/srp/usecases/AdminAuthDemo.java new file mode 100644 index 00000000000..907d1f58f1d --- /dev/null +++ b/javav2/example_code/cognito/src/main/java/com/example/cognito/srp/usecases/AdminAuthDemo.java @@ -0,0 +1,94 @@ +/* Copyright 2010-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"). + * You may not use this file except in compliance with the License. + * A copy of the License is located at + * + * http://aws.amazon.com/apache2.0 + * + * or in the "license" file accompanying this file. This file is distributed + * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ +package com.example.cognito.srp.usecases; + +import java.util.HashMap; +import java.util.Map; + +import com.example.cognito.srp.utils.HashUtils; +import software.amazon.awssdk.services.cognitoidentityprovider.CognitoIdentityProviderClient; +import software.amazon.awssdk.services.cognitoidentityprovider.model.*; +import software.amazon.awssdk.utils.StringUtils; + + +public class AdminAuthDemo { + + private final CognitoIdentityProviderClient cognitoClient; + private final String poolId; + private final String clientId; + private final String clientSecret; + + public AdminAuthDemo(CognitoIdentityProviderClient cognitoClient, String poolId, String clientId, String clientSecret) { + this.cognitoClient = cognitoClient; + this.poolId = poolId; + this.clientId = clientId; + this.clientSecret = clientSecret; + } + + public AdminInitiateAuthResponse adminInitiateAuth(String username, String password) { + Map authParameters = new HashMap<>(); + authParameters.put("USERNAME", username); + authParameters.put("PASSWORD", password); + + if (StringUtils.isNotBlank(this.clientSecret)) { + String secretHash = HashUtils.computeSecretHash(this.clientId, this.clientSecret, username); + authParameters.put("SECRET_HASH", secretHash); + } + + AdminInitiateAuthRequest authRequest = AdminInitiateAuthRequest.builder() + .userPoolId(poolId) + .clientId(clientId) + .authFlow(AuthFlowType.ADMIN_USER_PASSWORD_AUTH) + .authParameters(authParameters) + .build(); + + try { + AdminInitiateAuthResponse response = this.cognitoClient.adminInitiateAuth(authRequest); + return response; + } catch(CognitoIdentityProviderException e) { + System.err.println(e.awsErrorDetails().errorMessage()); + System.exit(1); + } + + return null; + } + + public AdminRespondToAuthChallengeResponse adminRespondToAuthChallenge(String session, String username) { + Map challengeResponses = new HashMap<>(); + challengeResponses.put("USERNAME", username); + + if (StringUtils.isNotBlank(this.clientSecret)) { + String secretHash = HashUtils.computeSecretHash(this.clientId, this.clientSecret, username); + challengeResponses.put("SECRET_HASH", secretHash); + } + + AdminRespondToAuthChallengeRequest challengeRequest = AdminRespondToAuthChallengeRequest.builder() + .userPoolId(poolId) + .clientId(clientId) + .session(session) + .challengeName(ChallengeNameType.MFA_SETUP) + .challengeResponses(challengeResponses) + .build(); + + try { + AdminRespondToAuthChallengeResponse response = this.cognitoClient.adminRespondToAuthChallenge(challengeRequest); + return response; + } catch(CognitoIdentityProviderException e) { + System.err.println(e.awsErrorDetails().errorMessage()); + System.exit(1); + } + + return null; + } +} diff --git a/javav2/example_code/cognito/src/main/java/com/example/cognito/srp/usecases/DeviceAuthDemo.java b/javav2/example_code/cognito/src/main/java/com/example/cognito/srp/usecases/DeviceAuthDemo.java new file mode 100644 index 00000000000..d96c1d20c75 --- /dev/null +++ b/javav2/example_code/cognito/src/main/java/com/example/cognito/srp/usecases/DeviceAuthDemo.java @@ -0,0 +1,109 @@ +/* Copyright 2010-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"). + * You may not use this file except in compliance with the License. + * A copy of the License is located at + * + * http://aws.amazon.com/apache2.0 + * + * or in the "license" file accompanying this file. This file is distributed + * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ +package com.example.cognito.srp.usecases; + +import com.example.cognito.srp.utils.SRPUtils; +import software.amazon.awssdk.services.cognitoidentityprovider.CognitoIdentityProviderClient; +import software.amazon.awssdk.services.cognitoidentityprovider.model.*; +import software.amazon.awssdk.utils.Pair; + +import java.math.BigInteger; +import java.util.Base64; +import java.util.HashMap; +import java.util.Map; + +public class DeviceAuthDemo { + private final CognitoIdentityProviderClient cognitoClient; + private final String clientId; + + public DeviceAuthDemo(CognitoIdentityProviderClient cognitoClient, String clientId) { + this.cognitoClient = cognitoClient; + this.clientId = clientId; + } + + public RespondToAuthChallengeResponse deviceSrpAuth(String username, String deviceGroupKey, String deviceKey, String devicePassword) { + Pair clientKeys = SRPUtils.generateSrpClientKeys(); + BigInteger a = clientKeys.left(); + BigInteger A = clientKeys.right(); + RespondToAuthChallengeResponse deviceSrpChallengeResponse = respondToDeviceSrpAuthChallenge(username, deviceKey, A.toString(16)); + System.out.println("DeviceSrpAuth response: " + deviceSrpChallengeResponse); + // Get response from SRP initial auth. + BigInteger B = new BigInteger(deviceSrpChallengeResponse.challengeParameters().get("SRP_B"), 16); + BigInteger salt = new BigInteger(deviceSrpChallengeResponse.challengeParameters().get("SALT"), 16); + String secretBlock = deviceSrpChallengeResponse.challengeParameters().get("SECRET_BLOCK"); + + // Calculate password claim signature. + String timestamp = SRPUtils.getCurrentTimestamp(); + System.out.println("Current timestamp: " + timestamp); + byte[] passwordClaimSignature = SRPUtils.calculatePasswordClaimSignature( + deviceGroupKey+deviceKey, devicePassword, timestamp, + a, A, B, salt, + Base64.getDecoder().decode(secretBlock)); + + RespondToAuthChallengeResponse challengeResponse = respondToAuthChallenge(username, secretBlock, timestamp, + Base64.getEncoder().encodeToString(passwordClaimSignature), deviceKey); + System.out.println("RespondToAuthChallenge response: " + challengeResponse); + return challengeResponse; + } + + public RespondToAuthChallengeResponse respondToDeviceSrpAuthChallenge(String username, String deviceKey, String A) { + Map challengeResponses = new HashMap<>(); + challengeResponses.put("USERNAME", username); + challengeResponses.put("DEVICE_KEY", deviceKey); + challengeResponses.put("SRP_A", A); + + RespondToAuthChallengeRequest challengeRequest = RespondToAuthChallengeRequest.builder() + .clientId(clientId) + .challengeName(ChallengeNameType.DEVICE_SRP_AUTH) + .challengeResponses(challengeResponses) + .build(); + + try { + RespondToAuthChallengeResponse response = this.cognitoClient.respondToAuthChallenge(challengeRequest); + return response; + } catch(CognitoIdentityProviderException e) { + System.err.println(e.awsErrorDetails().errorMessage()); + System.exit(1); + } + return null; + } + + public RespondToAuthChallengeResponse respondToAuthChallenge(String username, String secretBlock, String timestamp, + String passwordClaimSignature, String deviceKey) { + Map challengeResponses = new HashMap<>(); + challengeResponses.put("USERNAME", username); + challengeResponses.put("PASSWORD_CLAIM_SECRET_BLOCK", secretBlock); + challengeResponses.put("PASSWORD_CLAIM_SIGNATURE", passwordClaimSignature); + challengeResponses.put("TIMESTAMP", timestamp); + challengeResponses.put("DEVICE_KEY", deviceKey); + + + RespondToAuthChallengeRequest challengeRequest = RespondToAuthChallengeRequest.builder() + .clientId(clientId) + .challengeName(ChallengeNameType.DEVICE_PASSWORD_VERIFIER) + .challengeResponses(challengeResponses) + .build(); + + try { + RespondToAuthChallengeResponse response = this.cognitoClient.respondToAuthChallenge(challengeRequest); + return response; + } catch(CognitoIdentityProviderException e) { + System.err.println(e.awsErrorDetails().errorMessage()); + System.exit(1); + } + + return null; + } + +} diff --git a/javav2/example_code/cognito/src/main/java/com/example/cognito/srp/usecases/DeviceTrackingDemo.java b/javav2/example_code/cognito/src/main/java/com/example/cognito/srp/usecases/DeviceTrackingDemo.java new file mode 100644 index 00000000000..f4305a54952 --- /dev/null +++ b/javav2/example_code/cognito/src/main/java/com/example/cognito/srp/usecases/DeviceTrackingDemo.java @@ -0,0 +1,77 @@ +/* Copyright 2010-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"). + * You may not use this file except in compliance with the License. + * A copy of the License is located at + * + * http://aws.amazon.com/apache2.0 + * + * or in the "license" file accompanying this file. This file is distributed + * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ +package com.example.cognito.srp.usecases; + +import com.example.cognito.srp.utils.SRPUtils; +import software.amazon.awssdk.services.cognitoidentityprovider.CognitoIdentityProviderClient; +import software.amazon.awssdk.services.cognitoidentityprovider.model.*; + +import java.math.BigInteger; +import java.security.SecureRandom; +import java.util.Base64; + +import static java.security.CryptoPrimitive.SECURE_RANDOM; + +public class DeviceTrackingDemo { + private final CognitoIdentityProviderClient cognitoClient; + + public DeviceTrackingDemo(CognitoIdentityProviderClient cognitoClient) { + this.cognitoClient = cognitoClient; + } + + public ConfirmDeviceResponse confirmDevice(String accessToken, String deviceGroupKey, String deviceKey, String deviceName, String devicePassword) { + BigInteger salt = SRPUtils.generateSalt(); + BigInteger passwordVerifier = SRPUtils.generatePasswordVerifier(deviceGroupKey + deviceKey, devicePassword, salt); + + DeviceSecretVerifierConfigType verifierConfig = DeviceSecretVerifierConfigType.builder() + .salt(Base64.getEncoder().encodeToString(salt.toByteArray())) + .passwordVerifier(Base64.getEncoder().encodeToString(passwordVerifier.toByteArray())) + .build(); + + ConfirmDeviceRequest confirmRequest = ConfirmDeviceRequest.builder() + .accessToken(accessToken) + .deviceKey(deviceKey) + .deviceSecretVerifierConfig(verifierConfig) + .deviceName(deviceName) + .build(); + + try { + ConfirmDeviceResponse response = cognitoClient.confirmDevice(confirmRequest); + return response; + } catch (CognitoIdentityProviderException e) { + System.err.println(e.awsErrorDetails().errorMessage()); + System.exit(1); + } + + return null; + } + + public UpdateDeviceStatusResponse updateDeviceStatus(String accessToken, String deviceKey) { + UpdateDeviceStatusRequest deviceRequest = UpdateDeviceStatusRequest.builder() + .accessToken(accessToken) + .deviceKey(deviceKey) + .deviceRememberedStatus(DeviceRememberedStatusType.REMEMBERED) + .build(); + + try { + UpdateDeviceStatusResponse response = cognitoClient.updateDeviceStatus(deviceRequest); + return response; + } catch (CognitoIdentityProviderException e) { + System.err.println(e.awsErrorDetails().errorMessage()); + System.exit(1); + } + + return null; + } +} diff --git a/javav2/example_code/cognito/src/main/java/com/example/cognito/srp/usecases/SoftwareTokenMFADemo.java b/javav2/example_code/cognito/src/main/java/com/example/cognito/srp/usecases/SoftwareTokenMFADemo.java new file mode 100644 index 00000000000..c8654f8c92a --- /dev/null +++ b/javav2/example_code/cognito/src/main/java/com/example/cognito/srp/usecases/SoftwareTokenMFADemo.java @@ -0,0 +1,57 @@ +/* Copyright 2010-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"). + * You may not use this file except in compliance with the License. + * A copy of the License is located at + * + * http://aws.amazon.com/apache2.0 + * + * or in the "license" file accompanying this file. This file is distributed + * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ +package com.example.cognito.srp.usecases; + +import software.amazon.awssdk.services.cognitoidentityprovider.CognitoIdentityProviderClient; +import software.amazon.awssdk.services.cognitoidentityprovider.model.*; + +public class SoftwareTokenMFADemo { + private final CognitoIdentityProviderClient cognitoClient; + + public SoftwareTokenMFADemo(CognitoIdentityProviderClient cognitoClient) { + this.cognitoClient = cognitoClient; + } + + public AssociateSoftwareTokenResponse associateSoftwareToken(String session) { + AssociateSoftwareTokenRequest associationRequest = AssociateSoftwareTokenRequest.builder() + .session(session) + .build(); + + try { + AssociateSoftwareTokenResponse response = cognitoClient.associateSoftwareToken(associationRequest); + return response; + } catch (CognitoIdentityProviderException e) { + System.err.println(e.awsErrorDetails().errorMessage()); + System.exit(1); + } + return null; + } + + public VerifySoftwareTokenResponse verifySoftwareToken(String session, String code) { + VerifySoftwareTokenRequest verifySoftwareTokenRequest = VerifySoftwareTokenRequest.builder() + .session(session) + .userCode(code) + .build(); + + try { + VerifySoftwareTokenResponse response = cognitoClient.verifySoftwareToken(verifySoftwareTokenRequest); + return response; + } catch (CognitoIdentityProviderException e) { + System.err.println(e.awsErrorDetails().errorMessage()); + System.exit(1); + } + return null; + } + +} diff --git a/javav2/example_code/cognito/src/main/java/com/example/cognito/srp/usecases/UserAuthDemo.java b/javav2/example_code/cognito/src/main/java/com/example/cognito/srp/usecases/UserAuthDemo.java new file mode 100644 index 00000000000..a2efcdb8f7b --- /dev/null +++ b/javav2/example_code/cognito/src/main/java/com/example/cognito/srp/usecases/UserAuthDemo.java @@ -0,0 +1,111 @@ +/* Copyright 2010-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"). + * You may not use this file except in compliance with the License. + * A copy of the License is located at + * + * http://aws.amazon.com/apache2.0 + * + * or in the "license" file accompanying this file. This file is distributed + * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ +package com.example.cognito.srp.usecases; + +import com.example.cognito.srp.utils.SRPUtils; +import software.amazon.awssdk.services.cognitoidentityprovider.CognitoIdentityProviderClient; +import software.amazon.awssdk.services.cognitoidentityprovider.model.*; +import software.amazon.awssdk.utils.Pair; + +import java.math.BigInteger; +import java.util.Base64; +import java.util.HashMap; +import java.util.Map; + +public class UserAuthDemo { + private final CognitoIdentityProviderClient cognitoClient; + private final String poolId; + private final String clientId; + + public UserAuthDemo(CognitoIdentityProviderClient cognitoClient, String poolId, String clientId) { + this.cognitoClient = cognitoClient; + this.poolId = poolId; + this.clientId = clientId; + } + + public RespondToAuthChallengeResponse userSrpAuth(String username, String password, String deviceKey) { + Pair clientKeys = SRPUtils.generateSrpClientKeys(); + BigInteger a = clientKeys.left(); + BigInteger A = clientKeys.right(); + InitiateAuthResponse initiateAuthResponse = initiateAuth(username, A.toString(16)); + System.out.println("InitiateAuth response: " + initiateAuthResponse); + // Get response from SRP initial auth. + BigInteger B = new BigInteger(initiateAuthResponse.challengeParameters().get("SRP_B"), 16); + BigInteger salt = new BigInteger(initiateAuthResponse.challengeParameters().get("SALT"), 16); + String userId = initiateAuthResponse.challengeParameters().get("USER_ID_FOR_SRP"); + String secretBlock = initiateAuthResponse.challengeParameters().get("SECRET_BLOCK"); + + // Calculate password claim signature. + String timestamp = SRPUtils.getCurrentTimestamp(); + System.out.println("Current timestamp: " + timestamp); + byte[] passwordClaimSignature = SRPUtils.calculatePasswordClaimSignature( + poolId.split("_")[1] + userId, password, timestamp, + a, A, B, salt, + Base64.getDecoder().decode(secretBlock)); + + RespondToAuthChallengeResponse challengeResponse = respondToAuthChallengeResponse(userId, secretBlock, timestamp, + Base64.getEncoder().encodeToString(passwordClaimSignature), deviceKey); + System.out.println("RespondToAuthChallenge response: " + challengeResponse); + return challengeResponse; + } + + public InitiateAuthResponse initiateAuth(String username, String A) { + Map authParameters = new HashMap<>(); + authParameters.put("USERNAME", username); + authParameters.put("SRP_A", A); + + InitiateAuthRequest authRequest = InitiateAuthRequest.builder() + .clientId(clientId) + .authFlow(AuthFlowType.USER_SRP_AUTH) + .authParameters(authParameters) + .build(); + + try { + InitiateAuthResponse response = this.cognitoClient.initiateAuth(authRequest); + return response; + } catch(CognitoIdentityProviderException e) { + System.err.println(e.awsErrorDetails().errorMessage()); + System.exit(1); + } + + return null; + } + + public RespondToAuthChallengeResponse respondToAuthChallengeResponse(String userId, String secretBlock, String timestamp, + String passwordClaimSignature, String deviceKey) { + Map challengeResponses = new HashMap<>(); + challengeResponses.put("USERNAME", userId); + challengeResponses.put("PASSWORD_CLAIM_SECRET_BLOCK", secretBlock); + challengeResponses.put("PASSWORD_CLAIM_SIGNATURE", passwordClaimSignature); + challengeResponses.put("TIMESTAMP", timestamp); + challengeResponses.put("DEVICE_KEY", deviceKey); + + + RespondToAuthChallengeRequest challengeRequest = RespondToAuthChallengeRequest.builder() + .clientId(clientId) + .challengeName(ChallengeNameType.PASSWORD_VERIFIER) + .challengeResponses(challengeResponses) + .build(); + + try { + RespondToAuthChallengeResponse response = this.cognitoClient.respondToAuthChallenge(challengeRequest); + return response; + } catch(CognitoIdentityProviderException e) { + System.err.println(e.awsErrorDetails().errorMessage()); + System.exit(1); + } + + return null; + } +} diff --git a/javav2/example_code/cognito/src/main/java/com/example/cognito/srp/utils/HashUtils.java b/javav2/example_code/cognito/src/main/java/com/example/cognito/srp/utils/HashUtils.java new file mode 100644 index 00000000000..bdaf7cb0459 --- /dev/null +++ b/javav2/example_code/cognito/src/main/java/com/example/cognito/srp/utils/HashUtils.java @@ -0,0 +1,77 @@ +/* Copyright 2010-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"). + * You may not use this file except in compliance with the License. + * A copy of the License is located at + * + * http://aws.amazon.com/apache2.0 + * + * or in the "license" file accompanying this file. This file is distributed + * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ +package com.example.cognito.srp.utils; + +import javax.crypto.Mac; +import javax.crypto.spec.SecretKeySpec; +import java.math.BigInteger; +import java.nio.charset.StandardCharsets; +import java.security.InvalidKeyException; +import java.security.MessageDigest; +import java.security.NoSuchAlgorithmException; +import java.util.Base64; + +public class HashUtils { + private static final String HMAC_ALGORITHM = "HmacSHA256"; + private static final String HASH_ALGORITHM = "SHA-256"; + public static String computeSecretHash(String clientId, String clientSecret, String username) { + byte[] output = hmac(clientSecret.getBytes(StandardCharsets.UTF_8), username.getBytes(StandardCharsets.UTF_8), clientId.getBytes(StandardCharsets.UTF_8)); + return Base64.getEncoder().encodeToString(output); + } + + public static byte[] hmac(byte[] key, byte[]... inputs) { + SecretKeySpec signingKey = new SecretKeySpec(key, HMAC_ALGORITHM); + Mac mac = null; + try { + mac = Mac.getInstance(HMAC_ALGORITHM); + mac.init(signingKey); + } catch (NoSuchAlgorithmException e) { + throw new RuntimeException(e); + } catch (InvalidKeyException e) { + throw new RuntimeException(e); + } + for (byte[] input : inputs) { + mac.update(input); + } + return mac.doFinal(); + } + + public static byte[] sha256(byte[]... contents) { + MessageDigest md = null; + try { + md = MessageDigest.getInstance(HASH_ALGORITHM); + } catch (NoSuchAlgorithmException e) { + throw new RuntimeException(e); + } + md.reset(); + for (byte[] content : contents) { + md.update(content); + } + return md.digest(); + } + + public static BigInteger sha256(BigInteger... contents) { + MessageDigest md = null; + try { + md = MessageDigest.getInstance(HASH_ALGORITHM); + } catch (NoSuchAlgorithmException e) { + throw new RuntimeException(e); + } + for (BigInteger content : contents) { + md.update(content.toByteArray()); + } + byte[] value = md.digest(); + return new BigInteger(1, value); + } +} diff --git a/javav2/example_code/cognito/src/main/java/com/example/cognito/srp/utils/SRPUtils.java b/javav2/example_code/cognito/src/main/java/com/example/cognito/srp/utils/SRPUtils.java new file mode 100644 index 00000000000..f65b56c5539 --- /dev/null +++ b/javav2/example_code/cognito/src/main/java/com/example/cognito/srp/utils/SRPUtils.java @@ -0,0 +1,116 @@ +/* Copyright 2010-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"). + * You may not use this file except in compliance with the License. + * A copy of the License is located at + * + * http://aws.amazon.com/apache2.0 + * + * or in the "license" file accompanying this file. This file is distributed + * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either + * express or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ +package com.example.cognito.srp.utils; + +import software.amazon.awssdk.utils.Pair; + +import java.math.BigInteger; +import java.nio.charset.StandardCharsets; +import java.security.NoSuchAlgorithmException; +import java.security.SecureRandom; +import java.text.SimpleDateFormat; +import java.util.*; + +public class SRPUtils { + private static final String RNG_ALGORIGHM = "SHA1PRNG"; + private static final String HEX_N = "FFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD1" + + "29024E088A67CC74020BBEA63B139B22514A08798E3404DD" + + "EF9519B3CD3A431B302B0A6DF25F14374FE1356D6D51C245" + + "E485B576625E7EC6F44C42E9A637ED6B0BFF5CB6F406B7ED" + + "EE386BFB5A899FA5AE9F24117C4B1FE649286651ECE45B3D" + + "C2007CB8A163BF0598DA48361C55D39A69163FA8FD24CF5F" + + "83655D23DCA3AD961C62F356208552BB9ED529077096966D" + + "670C354E4ABC9804F1746C08CA18217C32905E462E36CE3B" + + "E39E772C180E86039B2783A2EC07A28FB5C55DF06F4C52C9" + + "DE2BCBF6955817183995497CEA956AE515D2261898FA0510" + + "15728E5A8AAAC42DAD33170D04507A33A85521ABDF1CBA64" + + "ECFB850458DBEF0A8AEA71575D060C7DB3970F85A6E1E4C7" + + "ABF5AE8CDB0933D71E8C94E04A25619DCEE3D2261AD2EE6B" + + "F12FFA06D98A0864D87602733EC86A64521F2B18177B200C" + + "BBE117577A615D6C770988C0BAD946E208E24FA074E5AB31" + + "43DB5BFCE0FD108E4B82D120A93AD2CAFFFFFFFFFFFFFFFF"; + public static final BigInteger N = new BigInteger(HEX_N, 16); + public static final BigInteger g = BigInteger.valueOf(2); + public static final BigInteger k; + private static final int SALT_KEY_LENGTH = 128; + private static final int EPHEMERAL_KEY_LENGTH = 1024; + private static final int DERIVED_KEY_SIZE = 16; + private static final String DERIVED_KEY_INFO = "Caldera Derived Key"; + private static final SecureRandom SECURE_RANDOM; + private static final SimpleDateFormat DATE_TIME_FORMATTER = new SimpleDateFormat("EEE MMM d HH:mm:ss z yyyy", Locale.US); + + static { + try { + SECURE_RANDOM = SecureRandom.getInstance(RNG_ALGORIGHM); + } catch (NoSuchAlgorithmException e) { + throw new RuntimeException(e); + } + + k = HashUtils.sha256(N, g); + DATE_TIME_FORMATTER.setTimeZone(TimeZone.getTimeZone("UTC")); + } + + public static BigInteger generateSalt() { + BigInteger salt = new BigInteger(SALT_KEY_LENGTH, SECURE_RANDOM); + return salt; + } + + public static String getCurrentTimestamp() { + Date currentTimestamp = new Date(); + return DATE_TIME_FORMATTER.format(currentTimestamp); + } + + private static BigInteger calculateX(String name, String password, BigInteger salt) { + String credential = name + ":" + password; + byte[] credentialHash = HashUtils.sha256(credential.getBytes(StandardCharsets.UTF_8)); + byte[] saltedCredentialHash = HashUtils.sha256(salt.toByteArray(), credentialHash); + BigInteger x = new BigInteger(1, saltedCredentialHash); + return x; + } + + public static BigInteger generatePasswordVerifier(String name, String password, BigInteger salt) { + BigInteger x = calculateX(name, password, salt); + return g.modPow(x, N); + } + + public static byte[] calculatePasswordClaimSignature(String name, String password, String timestamp, + BigInteger a, BigInteger A, BigInteger B, BigInteger salt, + byte[] secretBlock) { + BigInteger x = calculateX(name, password, salt); + // u = H(A, B) + BigInteger u = HashUtils.sha256(A, B); + // S = ((B-kg^x)^(a+ux))%N + BigInteger S = (B.subtract(k.multiply(g.modPow(x, N))).modPow(a.add(u.multiply(x)), N)).mod(N); + byte[] key = hkdf(S.toByteArray(), u.toByteArray()); + byte[] passwordClaimSignature = HashUtils.hmac(key, + name.getBytes(StandardCharsets.UTF_8), secretBlock, timestamp.getBytes(StandardCharsets.UTF_8)); + return passwordClaimSignature; + } + + private static byte[] hkdf(byte[] ikm, byte[] salt) { + byte[] prk = HashUtils.hmac(salt, ikm); + byte[] end = {(byte)1}; + byte[] output = HashUtils.hmac(prk, DERIVED_KEY_INFO.getBytes(StandardCharsets.UTF_8), end); + return Arrays.copyOfRange(output, 0, DERIVED_KEY_SIZE); + } + + public static Pair generateSrpClientKeys() { + BigInteger a, A; + do { + a = new BigInteger(EPHEMERAL_KEY_LENGTH, SECURE_RANDOM).mod(N); + A = g.modPow(a, N); + } while (A.mod(N).equals(BigInteger.ZERO)); + return Pair.of(a, A); + } +} diff --git a/javav2/example_code/cognito/src/test/java/AmazonCognitoTest.java b/javav2/example_code/cognito/src/test/java/AmazonCognitoTest.java index 905e1ed23b1..2af1b3682dd 100644 --- a/javav2/example_code/cognito/src/test/java/AmazonCognitoTest.java +++ b/javav2/example_code/cognito/src/test/java/AmazonCognitoTest.java @@ -43,6 +43,8 @@ public class AmazonCognitoTest { private static String userNameMVP=""; private static String passwordMVP=""; private static String emailMVP=""; + private static String confirmationCode=""; + private static String authFlow=""; @BeforeAll From 0f6ee0a04c58f7da514bd59931527ffcf9c03251 Mon Sep 17 00:00:00 2001 From: Irene Smith <73654695+irenepsmith@users.noreply.github.com> Date: Tue, 21 Feb 2023 15:43:27 -0500 Subject: [PATCH 07/17] Adding tags to test methods. (#4423) * Adding tags to test methods. * Fixed linter error. --------- Co-authored-by: Steven Meyer <108885656+meyertst-aws@users.noreply.github.com> --- .../AutoScaleMethodsTests.cs | 10 +++++++++ .../CloudWatchMethodsTests.cs | 2 ++ .../AutoScale_BasicsTests/EC2MethodsTests.cs | 3 +++ dotnetv3/EC2/Tests/EC2WrapperTests.cs | 22 +++++++++++++++++++ .../IAMUserExampleTests/IAMUserTests.cs | 7 ++++++ .../IAM_BasicsTests.cs | 6 +++++ .../Lambda_BasicsTests/LambdaMethodsTests.cs | 9 ++++++++ .../RDS/Tests/RDSInstanceScenarioTests.cs | 10 +++++++++ .../S3_BasicsScenarioTests/S3BucketTests.cs | 7 ++++++ .../TransferMethodsTests.cs | 4 ++++ dotnetv3/SES/Tests/SESExampleTests.cs | 19 ++++++++++++++++ .../Support/Tests/SupportIntegrationTests.cs | 12 ++++++++++ .../Tests/TranscribeExampleTests.cs | 16 ++++++++++++++ .../DynamoDbMethodsTests.cs | 10 +++++++++ .../PartiQLMethodsTests.cs | 8 +++++++ .../PartiQLBatchMethodsTests.cs | 4 ++++ 16 files changed, 149 insertions(+) diff --git a/dotnetv3/AutoScaling/scenarios/AutoScale_Basics/AutoScale_BasicsTests/AutoScaleMethodsTests.cs b/dotnetv3/AutoScaling/scenarios/AutoScale_Basics/AutoScale_BasicsTests/AutoScaleMethodsTests.cs index 929c7b50fed..de41d447454 100644 --- a/dotnetv3/AutoScaling/scenarios/AutoScale_Basics/AutoScale_BasicsTests/AutoScaleMethodsTests.cs +++ b/dotnetv3/AutoScaling/scenarios/AutoScale_Basics/AutoScale_BasicsTests/AutoScaleMethodsTests.cs @@ -18,6 +18,7 @@ public class AutoScaleMethodsTests private readonly string _LaunchTemplateName = "AutoScaleLaunchTemplateTest"; [TestMethod()] + [TestProperty("Category", "Integration")] public async Task DeleteAutoScalingGroupTest() { var success = await AutoScaleMethods.DeleteAutoScalingGroupAsync(_Client, _GroupName); @@ -25,6 +26,7 @@ public async Task DeleteAutoScalingGroupTest() } [TestMethod()] + [TestProperty("Category", "Integration")] public async Task DeleteAutoScalingGroupGroupNonexistentTest() { var success = await AutoScaleMethods.DeleteAutoScalingGroupAsync(_Client, "NonExistentGroup"); @@ -32,6 +34,7 @@ public async Task DeleteAutoScalingGroupGroupNonexistentTest() } [TestMethod()] + [TestProperty("Category", "Integration")] public async Task TerminateInstanceInAutoScalingGroupTest() { var instanceId = string.Empty; @@ -40,6 +43,7 @@ public async Task TerminateInstanceInAutoScalingGroupTest() } [TestMethod()] + [TestProperty("Category", "Integration")] public async Task DescribeScalingActivitiesTest() { var activities = await AutoScaleMethods.DescribeAutoScalingActivitiesAsync(_Client, _GroupName); @@ -47,6 +51,7 @@ public async Task DescribeScalingActivitiesTest() } [TestMethod()] + [TestProperty("Category", "Integration")] public async Task SetDesiredCapacityTest() { var success = await AutoScaleMethods.SetDesiredCapacityAsync(_Client, _GroupName, 3); @@ -62,6 +67,7 @@ public async Task SetDesiredCapacityTest() } [TestMethod()] + [TestProperty("Category", "Integration")] public async Task DescribeAccountLimitsTest() { var success = await AutoScaleMethods.DescribeAccountLimitsAsync(_Client); @@ -69,6 +75,7 @@ public async Task DescribeAccountLimitsTest() } [TestMethod()] + [TestProperty("Category", "Integration")] public async Task DescribeAutoScalingGroupsTest() { var details = await AutoScaleMethods.DescribeAutoScalingGroupsAsync(_Client, _GroupName); @@ -76,6 +83,7 @@ public async Task DescribeAutoScalingGroupsTest() } [TestMethod()] + [TestProperty("Category", "Integration")] public async Task EnableMetricsCollectionTest() { var success = await AutoScaleMethods.EnableMetricsCollectionAsync(_Client, _GroupName); @@ -83,6 +91,7 @@ public async Task EnableMetricsCollectionTest() } [TestMethod()] + [TestProperty("Category", "Integration")] public async Task UpdateAutoScalingGroupTest() { var success = await AutoScaleMethods.UpdateAutoScalingGroupAsync(_Client, _GroupName, _LaunchTemplateName, _ServiceLinkedRoleArn, 3); @@ -90,6 +99,7 @@ public async Task UpdateAutoScalingGroupTest() } [TestMethod()] + [TestProperty("Category", "Integration")] public async Task CreateAutoScalingGroupTest() { var success = await AutoScaleMethods.CreateAutoScalingGroup(_Client, _GroupName, _LaunchTemplateName, _ServiceLinkedRoleArn); diff --git a/dotnetv3/AutoScaling/scenarios/AutoScale_Basics/AutoScale_BasicsTests/CloudWatchMethodsTests.cs b/dotnetv3/AutoScaling/scenarios/AutoScale_Basics/AutoScale_BasicsTests/CloudWatchMethodsTests.cs index 9abbdfeb497..84ecfaf4215 100644 --- a/dotnetv3/AutoScaling/scenarios/AutoScale_Basics/AutoScale_BasicsTests/CloudWatchMethodsTests.cs +++ b/dotnetv3/AutoScaling/scenarios/AutoScale_Basics/AutoScale_BasicsTests/CloudWatchMethodsTests.cs @@ -17,6 +17,7 @@ public class CloudWatchMethodsTests private string _GroupName = "test-group-name"; [TestMethod()] + [TestProperty("Category", "Integration")] public void GetCloudWatchMetricsAsyncTest() { var metrics = CloudWatchMethods.GetCloudWatchMetricsAsync(_GroupName); @@ -24,6 +25,7 @@ public void GetCloudWatchMetricsAsyncTest() } [TestMethod()] + [TestProperty("Category", "Integration")] public void GetMetricStatisticsAsyncTest() { var metricStatistics = CloudWatchMethods.GetMetricStatisticsAsync(_GroupName); diff --git a/dotnetv3/AutoScaling/scenarios/AutoScale_Basics/AutoScale_BasicsTests/EC2MethodsTests.cs b/dotnetv3/AutoScaling/scenarios/AutoScale_Basics/AutoScale_BasicsTests/EC2MethodsTests.cs index afd9cdf1feb..c946c27231b 100644 --- a/dotnetv3/AutoScaling/scenarios/AutoScale_Basics/AutoScale_BasicsTests/EC2MethodsTests.cs +++ b/dotnetv3/AutoScaling/scenarios/AutoScale_Basics/AutoScale_BasicsTests/EC2MethodsTests.cs @@ -16,6 +16,7 @@ public class EC2MethodsTests private static string launchTemplateId = string.Empty; [TestMethod()] + [TestProperty("Category", "Integration")] public async Task CreateLaunchTemplateAsyncTest() { launchTemplateId = await EC2Methods.CreateLaunchTemplateAsync(imageId, instanceType, launchTemplateName); @@ -23,6 +24,7 @@ public async Task CreateLaunchTemplateAsyncTest() } [TestMethod()] + [TestProperty("Category", "Integration")] public async Task DeleteLaunchTemplateAsyncTest() { var deletedLaunchTemplateName = await EC2Methods.DeleteLaunchTemplateAsync(launchTemplateId); @@ -30,6 +32,7 @@ public async Task DeleteLaunchTemplateAsyncTest() } [TestMethod()] + [TestProperty("Category", "Integration")] public async Task DescribeLaunchTemplateAsyncTest() { var success = await EC2Methods.DescribeLaunchTemplateAsync(launchTemplateName); diff --git a/dotnetv3/EC2/Tests/EC2WrapperTests.cs b/dotnetv3/EC2/Tests/EC2WrapperTests.cs index c0a7e38e8a1..d1f39cd6f50 100644 --- a/dotnetv3/EC2/Tests/EC2WrapperTests.cs +++ b/dotnetv3/EC2/Tests/EC2WrapperTests.cs @@ -61,6 +61,7 @@ public EC2WrapperTests() /// [Fact()] [Order(1)] + [Trait("Category", "Integration")] public async Task CreateKeyPairTest() { _keyPair = await _ec2Wrapper.CreateKeyPair(_keyPairName); @@ -73,6 +74,7 @@ public async Task CreateKeyPairTest() /// [Fact()] [Order(2)] + [Trait("Category", "Integration")] public void SaveKeyPairTest() { _tempFileName = _ec2Wrapper.SaveKeyPair(_keyPair); @@ -87,6 +89,7 @@ public void SaveKeyPairTest() /// Async task. [Fact()] [Order(3)] + [Trait("Category", "Integration")] public async Task DescribeKeyPairsTest() { var keyPairs = await _ec2Wrapper.DescribeKeyPairs(_keyPairName); @@ -99,6 +102,7 @@ public async Task DescribeKeyPairsTest() /// Async task. [Fact()] [Order(4)] + [Trait("Category", "Integration")] public async Task CreateSecurityGroupTest() { _secGroupId = await _ec2Wrapper.CreateSecurityGroup(_groupName, _groupDescription); @@ -112,6 +116,7 @@ public async Task CreateSecurityGroupTest() /// Async task. [Fact()] [Order(5)] + [Trait("Category", "Integration")] public async Task AuthorizeSecurityGroupIngressTest() { var success = await _ec2Wrapper.AuthorizeSecurityGroupIngress(_groupName); @@ -125,6 +130,7 @@ public async Task AuthorizeSecurityGroupIngressTest() /// Async task. [Fact()] [Order(6)] + [Trait("Category", "Integration")] public async Task DescribeSecurityGroupsTest() { var secGroups = await _ec2Wrapper.DescribeSecurityGroups(_secGroupId); @@ -137,6 +143,7 @@ public async Task DescribeSecurityGroupsTest() /// Async task. [Fact()] [Order(7)] + [Trait("Category", "Integration")] public async Task DescribeInstanceTest() { var instance = await _ec2Wrapper.DescribeInstance(_ec2InstanceId); @@ -149,6 +156,7 @@ public async Task DescribeInstanceTest() /// Async task. [Fact()] [Order(8)] + [Trait("Category", "Integration")] public async Task DescribeImagesTest() { // Get list of available Amazon Linux 2 Amazon Machine Images (AMIs). @@ -169,6 +177,7 @@ public async Task DescribeImagesTest() /// Async task. [Fact()] [Order(9)] + [Trait("Category", "Integration")] public async Task DescribeInstanceTypesTest() { _instanceTypes = await _ec2Wrapper.DescribeInstanceTypes(_architecture); @@ -181,6 +190,7 @@ public async Task DescribeInstanceTypesTest() /// Async task. [Fact()] [Order(10)] + [Trait("Category", "Integration")] public async Task RunInstancesTest() { _ec2InstanceId = await _ec2Wrapper.RunInstances(_imageId, _instanceType, _keyPairName, _secGroupId); @@ -201,6 +211,7 @@ public async Task RunInstancesTest() /// Async task. [Fact()] [Order(11)] + [Trait("Category", "Integration")] public async Task DescribeInstancesTest() { try @@ -219,6 +230,7 @@ public async Task DescribeInstancesTest() /// Async task. [Fact()] [Order(12)] + [Trait("Category", "Integration")] public async Task AllocateAddressTest() { _allocationId = await _ec2Wrapper.AllocateAddress(); @@ -231,6 +243,7 @@ public async Task AllocateAddressTest() /// Async task. [Fact()] [Order(13)] + [Trait("Category", "Integration")] public async Task AssociateAddressTest() { _associationId = await _ec2Wrapper.AssociateAddress(_allocationId, _ec2InstanceId); @@ -243,6 +256,7 @@ public async Task AssociateAddressTest() /// Async task. [Fact()] [Order(14)] + [Trait("Category", "Integration")] public async Task StopInstancesTest() { try @@ -268,6 +282,7 @@ public async Task StopInstancesTest() /// Async task. [Fact()] [Order(15)] + [Trait("Category", "Integration")] public async Task StartInstancesTest() { try @@ -296,6 +311,7 @@ public async Task StartInstancesTest() /// Async task. [Fact()] [Order(16)] + [Trait("Category", "Integration")] public async Task DisassociateIpTest() { var success = await _ec2Wrapper.DisassociateIp(_associationId); @@ -308,6 +324,7 @@ public async Task DisassociateIpTest() /// Async task. [Fact()] [Order(17)] + [Trait("Category", "Integration")] public async Task ReleaseAddressTest() { var success = await _ec2Wrapper.ReleaseAddress(_allocationId); @@ -320,6 +337,7 @@ public async Task ReleaseAddressTest() /// Async task. [Fact()] [Order(18)] + [Trait("Category", "Integration")] public async Task TerminateInstanceTest() { var stateChange = await _ec2Wrapper.TerminateInstances(_ec2InstanceId); @@ -340,6 +358,7 @@ public async Task TerminateInstanceTest() /// Async task. [Fact()] [Order(19)] + [Trait("Category", "Integration")] public async Task DeleteSecurityGroupTest() { var success = await _ec2Wrapper.DeleteSecurityGroup(_secGroupId); @@ -352,6 +371,7 @@ public async Task DeleteSecurityGroupTest() /// Async task. [Fact()] [Order(20)] + [Trait("Category", "Integration")] public async Task DeleteKeyPairTest() { var success = await _ec2Wrapper.DeleteKeyPair(_keyPair.KeyName); @@ -363,6 +383,7 @@ public async Task DeleteKeyPairTest() /// [Fact()] [Order(21)] + [Trait("Category", "Integration")] public void DeleteTempFileTest() { try @@ -381,6 +402,7 @@ public void DeleteTempFileTest() /// Async task. [Fact()] [Order(22)] + [Trait("Category", "Integration")] public async Task GetEc2AmiListTest() { _images = await _ec2Wrapper.GetEC2AmiList(); diff --git a/dotnetv3/IAM/IAMUserExample/IAMUserExampleTests/IAMUserTests.cs b/dotnetv3/IAM/IAMUserExample/IAMUserExampleTests/IAMUserTests.cs index 16e59496f5a..eccd636c0d8 100644 --- a/dotnetv3/IAM/IAMUserExample/IAMUserExampleTests/IAMUserTests.cs +++ b/dotnetv3/IAM/IAMUserExample/IAMUserExampleTests/IAMUserTests.cs @@ -35,6 +35,7 @@ public class IAMUserTests string BucketName = "bucket-to-delete"; [Fact] + [Trait("Category", "Unit")] public async Task CreateGroupAsyncTest() { var mockIAMClient = new Mock(); @@ -75,6 +76,7 @@ public async Task CreateGroupAsyncTest() } [Fact] + [Trait("Category", "Unit")] public async Task PutGroupPolicyAsyncTest() { var mockIAMClient = new Mock(); @@ -110,6 +112,7 @@ public async Task PutGroupPolicyAsyncTest() } [Fact] + [Trait("Category", "Unit")] public async Task CreateUserAsyncTest() { var mockIAMClient = new Mock(); @@ -147,6 +150,7 @@ public async Task CreateUserAsyncTest() } [Fact] + [Trait("Category", "Unit")] public async Task AddUserToGroupAsyncTest() { var mockIAMClient = new Mock(); @@ -187,6 +191,7 @@ public async Task AddUserToGroupAsyncTest() } [Fact] + [Trait("Category", "Unit")] public async Task CreateAccessKeyAsyncTest() { var mockIAMClient = new Mock(); @@ -224,6 +229,7 @@ public async Task CreateAccessKeyAsyncTest() } [Fact] + [Trait("Category", "Unit")] public async Task ListBucketsAsyncTest() { var mockS3Client = new Mock(); @@ -269,6 +275,7 @@ public async Task ListBucketsAsyncTest() } [Fact] + [Trait("Category", "Unit")] public async Task CleanUpResourcesTest() { var mockIAMClient = new Mock(); diff --git a/dotnetv3/IAM/IAM_Basics_Scenario/IAM_Basics_ScenarioTests/IAM_BasicsTests.cs b/dotnetv3/IAM/IAM_Basics_Scenario/IAM_Basics_ScenarioTests/IAM_BasicsTests.cs index 36fac57000a..c83c760198d 100644 --- a/dotnetv3/IAM/IAM_Basics_Scenario/IAM_Basics_ScenarioTests/IAM_BasicsTests.cs +++ b/dotnetv3/IAM/IAM_Basics_Scenario/IAM_Basics_ScenarioTests/IAM_BasicsTests.cs @@ -36,6 +36,7 @@ public class IAM_BasicsTests "}"; [Fact, TestPriority(1)] + [Trait("Category", "Integration")] public async Task CreateUserAsyncTest() { var user = await IAM_Basics.CreateUserAsync(Client, UserName); @@ -46,6 +47,7 @@ public async Task CreateUserAsyncTest() } [Fact, TestPriority(2)] + [Trait("Category", "Integration")] public async Task CreateAccessKeyAsyncTest() { var accessKey = await IAM_Basics.CreateAccessKeyAsync(Client, UserName); @@ -58,6 +60,7 @@ public async Task CreateAccessKeyAsyncTest() } [Fact, TestPriority(3)] + [Trait("Category", "Integration")] public async Task CreateRoleAsyncTest() { string testAssumeRolePolicy = "{" + @@ -82,6 +85,7 @@ public async Task CreateRoleAsyncTest() } [Fact, TestPriority(4)] + [Trait("Category", "Integration")] public async Task CreatePolicyAsyncTest() { // Create a policy with permissions to list Amazon S3 buckets @@ -92,6 +96,7 @@ public async Task CreatePolicyAsyncTest() } [Fact, TestPriority(5)] + [Trait("Category", "Integration")] public async Task AttachRoleAsyncTest() { // Attach the policy to the role we created earlier. @@ -99,6 +104,7 @@ public async Task AttachRoleAsyncTest() } [Fact, TestPriority(6)] + [Trait("Category", "Integration")] public void DeleteResourcesTest() { // Delete all the resources created for the various tests. diff --git a/dotnetv3/Lambda/scenarios/Lambda_Basics/Lambda_BasicsTests/LambdaMethodsTests.cs b/dotnetv3/Lambda/scenarios/Lambda_Basics/Lambda_BasicsTests/LambdaMethodsTests.cs index a8220d04138..2e8e1e583ee 100644 --- a/dotnetv3/Lambda/scenarios/Lambda_Basics/Lambda_BasicsTests/LambdaMethodsTests.cs +++ b/dotnetv3/Lambda/scenarios/Lambda_Basics/Lambda_BasicsTests/LambdaMethodsTests.cs @@ -34,6 +34,7 @@ public LambdaMethodsTests() [Fact()] [Order(1)] + [Trait("Category", "Integration")] public async Task CreateLambdaFunctionTest() { var functionArn = await _LambdaMethods.CreateLambdaFunction( @@ -49,6 +50,7 @@ public async Task CreateLambdaFunctionTest() [Fact()] [Order(2)] + [Trait("Category", "Integration")] public async Task GetFunctionTest() { var functionConfig = await _LambdaMethods.GetFunction(_client, _configuration["FunctionName"]); @@ -57,6 +59,7 @@ public async Task GetFunctionTest() [Fact()] [Order(3)] + [Trait("Category", "Integration")] public async Task ListFunctionsTest() { var functions = await _LambdaMethods.ListFunctions(_client); @@ -65,6 +68,7 @@ public async Task ListFunctionsTest() [Fact()] [Order(4)] + [Trait("Category", "Integration")] public async Task InvokeIncrementerTest() { // First make sure that the function is active. @@ -89,6 +93,7 @@ public async Task InvokeIncrementerTest() [Fact()] [Order(5)] + [Trait("Category", "Integration")] public async Task UpdateFunctionCodeTest() { await _LambdaMethods.UpdateFunctionCode( @@ -109,6 +114,7 @@ await _LambdaMethods.UpdateFunctionCode( [Fact()] [Order(6)] + [Trait("Category", "Integration")] public async Task UpdateFunctionConfigurationAsyncTest() { var success = await _LambdaMethods.UpdateFunctionConfigurationAsync( @@ -130,6 +136,7 @@ public async Task UpdateFunctionConfigurationAsyncTest() [Fact()] [Order(7)] + [Trait("Category", "Integration")] public async Task InvokeArithmeticMultiplyFunctionTest() { var functionParameters = "{" + @@ -147,6 +154,7 @@ public async Task InvokeArithmeticMultiplyFunctionTest() [Fact()] [Order(8)] + [Trait("Category", "Integration")] public async Task DeleteLambdaFunctionTest() { var success = await _LambdaMethods.DeleteLambdaFunction( @@ -157,6 +165,7 @@ public async Task DeleteLambdaFunctionTest() [Fact()] [Order(9)] + [Trait("Category", "Integration")] public async Task DeleteLambdaFunctionTest_DoesntExist_ShouldFail() { var functionName = "nonexistent_function"; diff --git a/dotnetv3/RDS/Tests/RDSInstanceScenarioTests.cs b/dotnetv3/RDS/Tests/RDSInstanceScenarioTests.cs index 25ab4b9fdfe..ef4da42f336 100644 --- a/dotnetv3/RDS/Tests/RDSInstanceScenarioTests.cs +++ b/dotnetv3/RDS/Tests/RDSInstanceScenarioTests.cs @@ -39,6 +39,7 @@ public RDSInstanceScenarioTests() /// Async task. [Fact] [Order(1)] + [Trait("Category", "Integration")] public async Task VerifyDescribeDBEngineVersions_ShouldSucceed() { var engineName = _configuration["engineName"]; @@ -53,6 +54,7 @@ public async Task VerifyDescribeDBEngineVersions_ShouldSucceed() /// Async task. [Fact] [Order(2)] + [Trait("Category", "Integration")] public async Task CreateDbParameterGroup_ShouldSucceed() { var groupFamilyName = _configuration["parameterGroupFamily"]; @@ -76,6 +78,7 @@ public async Task CreateDbParameterGroup_ShouldSucceed() /// Async task. [Fact] [Order(3)] + [Trait("Category", "Integration")] public async Task DescribeDBParameters_ShouldNotBeEmpty() { var parameters = @@ -90,6 +93,7 @@ public async Task DescribeDBParameters_ShouldNotBeEmpty() /// Async task. [Fact] [Order(4)] + [Trait("Category", "Integration")] public async Task ModifyParameters_ShouldReturnGroupName() { var modifyParameters = new List(); @@ -117,6 +121,7 @@ public async Task ModifyParameters_ShouldReturnGroupName() /// Async task. [Fact] [Order(5)] + [Trait("Category", "Integration")] public async Task DescribeDBParameters_ShouldReturnUserParameters() { var parameters = @@ -133,6 +138,7 @@ public async Task DescribeDBParameters_ShouldReturnUserParameters() /// Async task. [Fact] [Order(6)] + [Trait("Category", "Integration")] public async Task DescribeOrderableDBInstanceOptions_ShouldNotBeEmpty() { var engineName = _configuration["engineName"]; @@ -149,6 +155,7 @@ public async Task DescribeOrderableDBInstanceOptions_ShouldNotBeEmpty() /// Async task. [Fact] [Order(7)] + [Trait("Category", "Integration")] public async Task CreateDBInstance_ShouldReturnInstance() { var parameterGroupName = _configuration["parameterGroupName"]; @@ -189,6 +196,7 @@ public async Task CreateDBInstance_ShouldReturnInstance() /// Async task. [Fact] [Order(8)] + [Trait("Category", "Integration")] public async Task CreateSnapshot_ShouldNotBeEmpty() { var instanceIdentifier = _configuration["instanceIdentifier"]; @@ -216,6 +224,7 @@ public async Task CreateSnapshot_ShouldNotBeEmpty() /// Async task. [Fact] [Order(9)] + [Trait("Category", "Integration")] public async Task DeleteInstance_ShouldNotFail() { var instanceIdentifier = _configuration["instanceIdentifier"]; @@ -241,6 +250,7 @@ public async Task DeleteInstance_ShouldNotFail() /// Async task. [Fact] [Order(10)] + [Trait("Category", "Integration")] public async Task DeleteParameterGroup_ShouldNotFail() { var result = await _wrapper.DeleteDBParameterGroup(_parameterGroupName); diff --git a/dotnetv3/S3/S3_BasicsScenarioTests/S3BucketTests.cs b/dotnetv3/S3/S3_BasicsScenarioTests/S3BucketTests.cs index 1c19f9aecf7..4a15ae93b86 100644 --- a/dotnetv3/S3/S3_BasicsScenarioTests/S3BucketTests.cs +++ b/dotnetv3/S3/S3_BasicsScenarioTests/S3BucketTests.cs @@ -154,6 +154,7 @@ public IAmazonS3 CreateMockS3Client() } [Fact()] + [Trait("Category", "Unit")] public async Task CreateBucketAsyncTest() { IAmazonS3 client = CreateMockS3Client(); @@ -171,6 +172,7 @@ public async Task CreateBucketAsyncTest() } [Fact()] + [Trait("Category", "Unit")] public async Task UploadFileAsyncTest() { IAmazonS3 client = CreateMockS3Client(); @@ -189,6 +191,7 @@ public async Task UploadFileAsyncTest() } [Fact()] + [Trait("Category", "Unit")] public async Task DownloadObjectFromBucketAsyncTest() { IAmazonS3 client = CreateMockS3Client(); @@ -205,6 +208,7 @@ public async Task DownloadObjectFromBucketAsyncTest() } [Fact()] + [Trait("Category", "Unit")] public async Task CopyObjectInBucketAsyncTest() { IAmazonS3 client = CreateMockS3Client(); @@ -223,6 +227,7 @@ public async Task CopyObjectInBucketAsyncTest() } [Fact()] + [Trait("Category", "Unit")] public async Task ListBucketContentsAsyncTest() { IAmazonS3 client = CreateMockS3Client(); @@ -239,6 +244,7 @@ public async Task ListBucketContentsAsyncTest() } [Fact()] + [Trait("Category", "Unit")] public async Task DeleteBucketContentsAsyncTest() { IAmazonS3 client = CreateMockS3Client(); @@ -260,6 +266,7 @@ public async Task DeleteBucketContentsAsyncTest() } [Fact()] + [Trait("Category", "Unit")] public async Task DeleteBucketAsyncTest() { IAmazonS3 client = CreateMockS3Client(); diff --git a/dotnetv3/S3/scenarios/TransferUtilityBasics/TransferUtilityBasicsTests/TransferMethodsTests.cs b/dotnetv3/S3/scenarios/TransferUtilityBasics/TransferUtilityBasicsTests/TransferMethodsTests.cs index 6875447f899..13595b467bf 100644 --- a/dotnetv3/S3/scenarios/TransferUtilityBasics/TransferUtilityBasicsTests/TransferMethodsTests.cs +++ b/dotnetv3/S3/scenarios/TransferUtilityBasics/TransferUtilityBasicsTests/TransferMethodsTests.cs @@ -26,6 +26,7 @@ public TransferMethodsTests() } [Fact()] + [Trait("Category", "Integration")] public async Task DownloadSingleFileAsyncTest() { var keyName = _configuration["FileToDownload"]; @@ -44,6 +45,7 @@ public async Task DownloadSingleFileAsyncTest() } [Fact()] + [Trait("Category", "Integration")] public async Task DownloadS3DirectoryAsyncTest() { var downloadPath = $"{_localPath}\\TestDownloadFolder"; @@ -59,6 +61,7 @@ public async Task DownloadS3DirectoryAsyncTest() } [Fact()] + [Trait("Category", "Integration")] public async Task UploadSingleFileAsyncTest() { var fileName = _configuration["FileToUpload"]; @@ -74,6 +77,7 @@ public async Task UploadSingleFileAsyncTest() } [Fact()] + [Trait("Category", "Integration")] public async Task UploadFullDirectoryAsyncTest() { var bucketName = _configuration["BucketName"]; diff --git a/dotnetv3/SES/Tests/SESExampleTests.cs b/dotnetv3/SES/Tests/SESExampleTests.cs index fc2740863dd..f092bec4cc7 100644 --- a/dotnetv3/SES/Tests/SESExampleTests.cs +++ b/dotnetv3/SES/Tests/SESExampleTests.cs @@ -33,6 +33,7 @@ public SesExampleTests() /// Async task. [Fact] [Order(1)] + [Trait("Category", "Integration")] public async Task VerifyIdentity_ValidEmail_ReturnsTrue() { var verifyEmail = _configuration["ValidEmailAddress"]; @@ -46,6 +47,7 @@ public async Task VerifyIdentity_ValidEmail_ReturnsTrue() /// Async task. [Fact] [Order(2)] + [Trait("Category", "Integration")] public async Task VerifyIdentity_NotValidEmail_ReturnsFalse() { var verifyEmail = _configuration["NotValidEmailAddress"]; @@ -59,6 +61,7 @@ public async Task VerifyIdentity_NotValidEmail_ReturnsFalse() /// Async task. [Fact] [Order(3)] + [Trait("Category", "Integration")] public async Task ListIdentity_EmailType_ReturnsWithEmail() { var verifyEmail = _configuration["ValidEmailAddress"]; @@ -73,6 +76,7 @@ public async Task ListIdentity_EmailType_ReturnsWithEmail() /// Async task. [Fact] [Order(4)] + [Trait("Category", "Integration")] public async Task GetIdentityStatus_ValidEmail_ReturnsStatus() { var validEmail = _configuration["ValidEmailAddress"]; @@ -86,6 +90,7 @@ public async Task GetIdentityStatus_ValidEmail_ReturnsStatus() /// Async task. [Fact] [Order(5)] + [Trait("Category", "Integration")] public async Task GetIdentityStatus_NotValidEmail_ReturnsNotStarted() { var notValidEmail = _configuration["NotValidEmailAddress"]; @@ -99,6 +104,7 @@ public async Task GetIdentityStatus_NotValidEmail_ReturnsNotStarted() /// Async task. [Fact] [Order(6)] + [Trait("Category", "Integration")] public async Task SendEmail_ValidSettings_ReturnsMessageId() { var senderAddress = _configuration["SendEmailSenderAddress"]; @@ -116,6 +122,7 @@ public async Task SendEmail_ValidSettings_ReturnsMessageId() /// Async task. [Fact] [Order(7)] + [Trait("Category", "Integration")] public async Task SendEmail_MissingSender_ReturnsEmptyString() { var senderAddress = ""; @@ -133,6 +140,7 @@ public async Task SendEmail_MissingSender_ReturnsEmptyString() /// Async task. [Fact] [Order(8)] + [Trait("Category", "Integration")] public async Task SendEmail_NotValidRecipient_ReturnsEmptyString() { var senderAddress = _configuration["SendEmailSenderAddress"]; @@ -151,6 +159,7 @@ public async Task SendEmail_NotValidRecipient_ReturnsEmptyString() /// Async task. [Fact] [Order(9)] + [Trait("Category", "Integration")] public async Task CreateEmailTemplate_ValidSettings_ReturnsTrue() { var templateName = _configuration["TemplateName"]; @@ -169,6 +178,7 @@ public async Task CreateEmailTemplate_ValidSettings_ReturnsTrue() /// Async task. [Fact] [Order(10)] + [Trait("Category", "Integration")] public async Task CreateEmailTemplate_NotValidSettings_ReturnsFalse() { var success = await _wrapper.CreateEmailTemplateAsync("", "", "", ""); @@ -181,6 +191,7 @@ public async Task CreateEmailTemplate_NotValidSettings_ReturnsFalse() /// Async task. [Fact] [Order(11)] + [Trait("Category", "Integration")] public async Task SendTemplateEmail_ValidSettings_ReturnsMessageId() { var templateName = _configuration["TemplateName"]; @@ -199,6 +210,7 @@ public async Task SendTemplateEmail_ValidSettings_ReturnsMessageId() /// Async task. [Fact] [Order(12)] + [Trait("Category", "Integration")] public async Task SendTemplateEmail_NotValidSettings_ReturnsEmptyString() { var senderAddress = _configuration["SendEmailSenderAddress"]; @@ -216,6 +228,7 @@ public async Task SendTemplateEmail_NotValidSettings_ReturnsEmptyString() /// Async task. [Fact] [Order(13)] + [Trait("Category", "Integration")] public async Task ListEmailTemplates_ReturnsWithTemplate() { var templateName = _configuration["TemplateName"]; @@ -229,6 +242,7 @@ public async Task ListEmailTemplates_ReturnsWithTemplate() /// Async task. [Fact] [Order(14)] + [Trait("Category", "Integration")] public async Task DeleteEmailTemplate_ValidName_ReturnsTrue() { var templateName = _configuration["TemplateName"]; @@ -242,6 +256,7 @@ public async Task DeleteEmailTemplate_ValidName_ReturnsTrue() /// Async task. [Fact] [Order(15)] + [Trait("Category", "Integration")] public async Task DeleteEmailTemplate_NotValidName_ReturnsFalse() { var success = await _wrapper.DeleteEmailTemplateAsync(""); @@ -255,6 +270,7 @@ public async Task DeleteEmailTemplate_NotValidName_ReturnsFalse() /// Async task. [Fact] [Order(16)] + [Trait("Category", "Integration")] public async Task ListEmailTemplates_ReturnsWithoutTemplate() { var templateName = _configuration["TemplateName"]; @@ -268,6 +284,7 @@ public async Task ListEmailTemplates_ReturnsWithoutTemplate() /// Async task. [Fact] [Order(17)] + [Trait("Category", "Integration")] public async Task DeleteIdentity_ValidEmail_ReturnsTrue() { var identityEmail = _configuration["ValidEmailAddress"]; @@ -281,6 +298,7 @@ public async Task DeleteIdentity_ValidEmail_ReturnsTrue() /// Async task. [Fact] [Order(18)] + [Trait("Category", "Integration")] public async Task DeleteIdentity_NotValidEmail_ReturnsFalse() { var success = await _wrapper.DeleteIdentityAsync(""); @@ -293,6 +311,7 @@ public async Task DeleteIdentity_NotValidEmail_ReturnsFalse() /// Async task. [Fact] [Order(19)] + [Trait("Category", "Integration")] public async Task GetSendQuota_ReturnsNotNull() { var sendQuota = await _wrapper.GetSendQuotaAsync(); diff --git a/dotnetv3/Support/Tests/SupportIntegrationTests.cs b/dotnetv3/Support/Tests/SupportIntegrationTests.cs index 97d7fa668ef..865e9e43bf8 100644 --- a/dotnetv3/Support/Tests/SupportIntegrationTests.cs +++ b/dotnetv3/Support/Tests/SupportIntegrationTests.cs @@ -40,6 +40,7 @@ public SupportIntegrationTests() /// Async task. [Fact] [Order(1)] + [Trait("Category", "Integration")] public async Task VerifySubscription_ShouldReturnTrue() { var result = await _supportWrapper.VerifySubscription(); @@ -53,6 +54,7 @@ public async Task VerifySubscription_ShouldReturnTrue() /// Async task. [Fact] [Order(2)] + [Trait("Category", "Integration")] public async Task VerifySubscription_ShouldReturnFalse() { var supportClient = new AmazonAWSSupportClient( @@ -71,6 +73,7 @@ public async Task VerifySubscription_ShouldReturnFalse() /// Async task. [Fact] [Order(3)] + [Trait("Category", "Integration")] public async Task VerifyDescribeServices_ShouldNotBeEmpty() { var services = await _supportWrapper.DescribeServices(); @@ -83,6 +86,7 @@ public async Task VerifyDescribeServices_ShouldNotBeEmpty() /// Async task. [Fact] [Order(4)] + [Trait("Category", "Integration")] public async Task VerifyDescribeSeverityLevels_ShouldNotBeEmpty() { var services = await _supportWrapper.DescribeSeverityLevels(); @@ -95,6 +99,7 @@ public async Task VerifyDescribeSeverityLevels_ShouldNotBeEmpty() /// Async task. [Fact] [Order(5)] + [Trait("Category", "Integration")] public async Task VerifyCreateCase_ShouldReturnId() { var serviceCode = _configuration["serviceCode"]; @@ -116,6 +121,7 @@ public async Task VerifyCreateCase_ShouldReturnId() /// Async task. [Fact] [Order(6)] + [Trait("Category", "Integration")] public async Task VerifyCreateCaseWithInvalidCode_ShouldFail() { await Assert.ThrowsAsync(async () => @@ -135,6 +141,7 @@ await _supportWrapper.CreateCase( /// Async task. [Fact] [Order(7)] + [Trait("Category", "Integration")] public async Task VerifyAddAttachmentToSet_ShouldReturnId() { var fileName = _configuration["exampleFileName"]; @@ -162,6 +169,7 @@ await sw.WriteLineAsync( /// Async task. [Fact] [Order(8)] + [Trait("Category", "Integration")] public async Task VerifyAddCommunicationToCase_ShouldReturnId() { var result = await _supportWrapper.AddCommunicationToCase( @@ -178,6 +186,7 @@ public async Task VerifyAddCommunicationToCase_ShouldReturnId() /// Async task. [Fact] [Order(9)] + [Trait("Category", "Integration")] public async Task VerifyCommunicationForCase_ShouldNotBeEmpty() { var communications = await _supportWrapper.DescribeCommunications(_caseId!); @@ -192,6 +201,7 @@ public async Task VerifyCommunicationForCase_ShouldNotBeEmpty() /// Async task. [Fact] [Order(10)] + [Trait("Category", "Integration")] public async Task VerifyDescribeAttachment_ShouldNotBeEmpty() { var attachment = await _supportWrapper.DescribeAttachment(_attachmentSetId!); @@ -204,6 +214,7 @@ public async Task VerifyDescribeAttachment_ShouldNotBeEmpty() /// Async task. [Fact] [Order(11)] + [Trait("Category", "Integration")] public async Task VerifyDescribeCases_ShouldNotBeEmpty() { // Describe the cases. If it is empty, try again and allow time for the new case to appear. @@ -230,6 +241,7 @@ public async Task VerifyDescribeCases_ShouldNotBeEmpty() /// Async task. [Fact] [Order(12)] + [Trait("Category", "Integration")] public async Task VerifyResolveCase_ShouldReturnResolved() { var result = await _supportWrapper.ResolveCase(_caseId!); diff --git a/dotnetv3/Transcribe/Tests/TranscribeExampleTests.cs b/dotnetv3/Transcribe/Tests/TranscribeExampleTests.cs index 75646ce4f91..f23f2ab7635 100644 --- a/dotnetv3/Transcribe/Tests/TranscribeExampleTests.cs +++ b/dotnetv3/Transcribe/Tests/TranscribeExampleTests.cs @@ -33,6 +33,7 @@ public TranscribeExampleTests() /// Async task. [Fact] [Order(1)] + [Trait("Category", "Integration")] public async Task VerifyCreateVocabulary_ValidName_ShouldSucceed() { var vocabularyName = _configuration["customVocabularyName"]; @@ -54,6 +55,7 @@ public async Task VerifyCreateVocabulary_ValidName_ShouldSucceed() /// Async task. [Fact] [Order(2)] + [Trait("Category", "Integration")] public async Task VerifyCreateVocabulary_NonValidName_ShouldThrowException() { var vocabularyName = " "; @@ -72,6 +74,7 @@ await _wrapper.CreateCustomVocabulary(LanguageCode.EnUS, phrases, /// Async task. [Fact] [Order(3)] + [Trait("Category", "Integration")] public async Task GetVocabulary_ValidName_ShouldSucceed() { var vocabularyName = _configuration["customVocabularyName"]; @@ -92,6 +95,7 @@ public async Task GetVocabulary_ValidName_ShouldSucceed() /// Async task. [Fact] [Order(4)] + [Trait("Category", "Integration")] public async Task GetVocabulary_WrongName_ShouldThrowException() { await Assert.ThrowsAsync(async () => @@ -106,6 +110,7 @@ public async Task GetVocabulary_WrongName_ShouldThrowException() /// Async task. [Fact] [Order(5)] + [Trait("Category", "Integration")] public async Task UpdateVocabulary_ShouldSucceed() { var vocabularyName = _configuration["customVocabularyName"]; @@ -127,6 +132,7 @@ public async Task UpdateVocabulary_ShouldSucceed() /// Async task. [Fact] [Order(6)] + [Trait("Category", "Integration")] public async Task UpdateVocabulary_WrongName_ShouldThrowException() { var phrases = new List { "testPhraseUpdate" }; @@ -143,6 +149,7 @@ public async Task UpdateVocabulary_WrongName_ShouldThrowException() /// Async task. [Fact] [Order(7)] + [Trait("Category", "Integration")] public async Task ListVocabulary_ShouldReturnResults() { var result = await _wrapper.ListCustomVocabularies(); @@ -155,6 +162,7 @@ public async Task ListVocabulary_ShouldReturnResults() /// Async task. [Fact] [Order(8)] + [Trait("Category", "Integration")] public async Task DeleteVocabulary_ShouldSucceed() { var vocabularyName = _configuration["customVocabularyName"]; @@ -168,6 +176,7 @@ public async Task DeleteVocabulary_ShouldSucceed() /// Async task. [Fact] [Order(9)] + [Trait("Category", "Integration")] public async Task VerifyCreateTranscriptionJob_ValidMedia_ShouldComplete() { var mediaLocation = _configuration["transcriptionMediaLocation"]; @@ -194,6 +203,7 @@ public async Task VerifyCreateTranscriptionJob_ValidMedia_ShouldComplete() /// Async task. [Fact] [Order(10)] + [Trait("Category", "Integration")] public async Task VerifyCreateTranscriptionJob_MissingMedia_ShouldThrowException() { var mediaLocation = _configuration["transcriptionMediaLocation"]; @@ -214,6 +224,7 @@ public async Task VerifyCreateTranscriptionJob_MissingMedia_ShouldThrowException /// Async task. [Fact] [Order(11)] + [Trait("Category", "Integration")] public async Task ListTranscriptionJobs_ShouldReturnResults() { var result = await _wrapper.ListTranscriptionJobs(); @@ -226,6 +237,7 @@ public async Task ListTranscriptionJobs_ShouldReturnResults() /// Async task. [Fact] [Order(11)] + [Trait("Category", "Integration")] public async Task DeleteTranscriptionJob_ShouldSucceed() { var transcriptionJobName = _configuration["transcriptionJobName"]; @@ -239,6 +251,7 @@ public async Task DeleteTranscriptionJob_ShouldSucceed() /// Async task. [Fact] [Order(12)] + [Trait("Category", "Integration")] public async Task VerifyCreateMedicalTranscriptionJob_ValidMedia_ShouldComplete() { var mediaLocation = _configuration["transcriptionMediaLocation"]; @@ -266,6 +279,7 @@ public async Task VerifyCreateMedicalTranscriptionJob_ValidMedia_ShouldComplete( /// Async task. [Fact] [Order(13)] + [Trait("Category", "Integration")] public async Task VerifyCreateMedicalTranscriptionJob_DuplicateName_ShouldThrowException() { var mediaLocation = _configuration["transcriptionMediaLocation"]; @@ -286,6 +300,7 @@ public async Task VerifyCreateMedicalTranscriptionJob_DuplicateName_ShouldThrowE /// Async task. [Fact] [Order(14)] + [Trait("Category", "Integration")] public async Task ListMedicalTranscriptionJobs_ShouldReturnResults() { var result = await _wrapper.ListMedicalTranscriptionJobs(); @@ -298,6 +313,7 @@ public async Task ListMedicalTranscriptionJobs_ShouldReturnResults() /// Async task. [Fact] [Order(15)] + [Trait("Category", "Integration")] public async Task DeleteMedicalTranscriptionJob_ShouldSucceed() { var medicalTranscriptionJobName = _configuration["medicalTranscriptionJobName"]; diff --git a/dotnetv3/dynamodb/scenarios/DynamoDB_Basics/DynamoDB_Basics_ScenarioTests/DynamoDbMethodsTests.cs b/dotnetv3/dynamodb/scenarios/DynamoDB_Basics/DynamoDB_Basics_ScenarioTests/DynamoDbMethodsTests.cs index c26b249d598..6342b14cf5d 100644 --- a/dotnetv3/dynamodb/scenarios/DynamoDB_Basics/DynamoDB_Basics_ScenarioTests/DynamoDbMethodsTests.cs +++ b/dotnetv3/dynamodb/scenarios/DynamoDB_Basics/DynamoDB_Basics_ScenarioTests/DynamoDbMethodsTests.cs @@ -14,6 +14,7 @@ public class DynamoDbMethodsTests [Fact()] [Order(1)] + [Trait("Category", "Integration")] public async Task CreateMovieTableAsyncTest() { var success = await DynamoDbMethods.CreateMovieTableAsync(client, _tableName); @@ -23,6 +24,7 @@ public async Task CreateMovieTableAsyncTest() [Fact()] [Order(2)] + [Trait("Category", "Integration")] public async Task PutItemAsyncTest() { var newMovie = new Movie @@ -37,6 +39,7 @@ public async Task PutItemAsyncTest() [Fact()] [Order(3)] + [Trait("Category", "Integration")] public async Task UpdateItemAsyncTest() { var updateMovie = new Movie @@ -57,6 +60,7 @@ public async Task UpdateItemAsyncTest() [Fact()] [Order(4)] + [Trait("Category", "Integration")] public void ImportMoviesWithBadFileNameShouldReturnNullTest() { var movies = DynamoDbMethods.ImportMovies(_badMovieFile); @@ -65,6 +69,7 @@ public void ImportMoviesWithBadFileNameShouldReturnNullTest() [Fact()] [Order(5)] + [Trait("Category", "Integration")] public async Task BatchWriteItemsAsyncTest() { var itemCount = await DynamoDbMethods.BatchWriteItemsAsync(client, _movieFileName); @@ -73,6 +78,7 @@ public async Task BatchWriteItemsAsyncTest() [Fact()] [Order(6)] + [Trait("Category", "Integration")] public async Task GetItemAsyncTest() { var lookupMovie = new Movie @@ -88,6 +94,7 @@ public async Task GetItemAsyncTest() [Fact()] [Order(8)] + [Trait("Category", "Integration")] public async Task DeleteItemAsyncTest() { var movieToDelete = new Movie @@ -102,6 +109,7 @@ public async Task DeleteItemAsyncTest() [Fact()] [Order(9)] + [Trait("Category", "Integration")] public async Task QueryMoviesAsyncTest() { // Use Query to find all the movies released in 2010. @@ -112,6 +120,7 @@ public async Task QueryMoviesAsyncTest() [Fact()] [Order(10)] + [Trait("Category", "Integration")] public async Task ScanTableAsyncTest() { int startYear = 2001; @@ -122,6 +131,7 @@ public async Task ScanTableAsyncTest() [Fact()] [Order(11)] + [Trait("Category", "Integration")] public async void DeleteTableAsyncTest() { var success = await DynamoDbMethods.DeleteTableAsync(client, _tableName); diff --git a/dotnetv3/dynamodb/scenarios/PartiQL_Basics_Scenario/PartiQL_Basics_Tests/PartiQLMethodsTests.cs b/dotnetv3/dynamodb/scenarios/PartiQL_Basics_Scenario/PartiQL_Basics_Tests/PartiQLMethodsTests.cs index 63ef4ae0978..399c758d9b5 100644 --- a/dotnetv3/dynamodb/scenarios/PartiQL_Basics_Scenario/PartiQL_Basics_Tests/PartiQLMethodsTests.cs +++ b/dotnetv3/dynamodb/scenarios/PartiQL_Basics_Scenario/PartiQL_Basics_Tests/PartiQLMethodsTests.cs @@ -15,12 +15,14 @@ public PartiQLMethodsTests() } [Fact] + [Trait("Category", "Integration")] public void Dispose() { _ = DynamoDBMethods.DeleteTableAsync(tableName); } [Fact(), TestPriority(1)] + [Trait("Category", "Integration")] public async Task InsertMoviesTest() { // Because InsertMovies calls ImportMovies, there is no @@ -31,6 +33,7 @@ public async Task InsertMoviesTest() } [Fact(), TestPriority(2)] + [Trait("Category", "Integration")] public async Task GetSingleMovieTestExistingMovie() { var title = "Star Wars"; @@ -40,6 +43,7 @@ public async Task GetSingleMovieTestExistingMovie() } [Fact(), TestPriority(3)] + [Trait("Category", "Integration")] public async Task GetSingleMovieTestNonexistentMovie() { var title = "MASH"; @@ -49,6 +53,7 @@ public async Task GetSingleMovieTestNonexistentMovie() } [Fact(), TestPriority(4)] + [Trait("Category", "Integration")] public async Task GetMoviesTest() { int year = 2010; @@ -58,6 +63,7 @@ public async Task GetMoviesTest() } [Fact(), TestPriority(5)] + [Trait("Category", "Integration")] public async Task InsertSingleMovieTest() { var movieTitle = "Butch Cassidy and the Sundance Kid"; @@ -67,6 +73,7 @@ public async Task InsertSingleMovieTest() } [Fact(), TestPriority(6)] + [Trait("Category", "Integration")] public async Task UpdateSingleMovieTest() { var producer = "MGM"; @@ -78,6 +85,7 @@ public async Task UpdateSingleMovieTest() } [Fact(), TestPriority(7)] + [Trait("Category", "Integration")] public async Task DeleteSingleMovieTest() { var movieTitle = "Butch Cassidy and the Sundance Kid"; diff --git a/dotnetv3/dynamodb/scenarios/PartiQL_Batch_Scenario/PartiQLBatch_Tests/PartiQLBatchMethodsTests.cs b/dotnetv3/dynamodb/scenarios/PartiQL_Batch_Scenario/PartiQLBatch_Tests/PartiQLBatchMethodsTests.cs index 721958b2dde..824823dd36c 100644 --- a/dotnetv3/dynamodb/scenarios/PartiQL_Batch_Scenario/PartiQLBatch_Tests/PartiQLBatchMethodsTests.cs +++ b/dotnetv3/dynamodb/scenarios/PartiQL_Batch_Scenario/PartiQLBatch_Tests/PartiQLBatchMethodsTests.cs @@ -20,6 +20,7 @@ public void Dispose() } [Fact(), TestPriority(1)] + [Trait("Category", "Integration")] public async Task InsertMoviesTest() { // Because InsertMovies calls ImportMovies, there is not @@ -30,6 +31,7 @@ public async Task InsertMoviesTest() } [Fact(), TestPriority(2)] + [Trait("Category", "Integration")] public async Task GetBatchTest() { // Update multiple movies by using the BatchExecute statement. @@ -43,6 +45,7 @@ public async Task GetBatchTest() } [Fact(), TestPriority(3)] + [Trait("Category", "Integration")] public async Task UpdateBatchTest() { // Update multiple movies by using the BatchExecute statement. @@ -58,6 +61,7 @@ public async Task UpdateBatchTest() } [Fact(), TestPriority(4)] + [Trait("Category", "Integration")] public async Task DeleteBatchTest() { // Update multiple movies by using the BatchExecute statement. From baed18ad941a9b3702f61ee778ed12fac3b914c4 Mon Sep 17 00:00:00 2001 From: Laren-AWS <57545972+Laren-AWS@users.noreply.github.com> Date: Wed, 22 Feb 2023 04:14:45 -0800 Subject: [PATCH 08/17] Python Step Functions scenario, actions, and hello (#4425) * Python Step Functions scenario, actions, and hello. * Renamed folder sfn -> stepfunctions because it's more readable. * Inocporate edits. --- .doc_gen/metadata/sfn_metadata.yaml | 176 ++++++++++--- .doc_gen/readmes/config.py | 3 +- .../readmes/includes/run_instructions.jinja2 | 5 + .github/pre_validate/pre_validate.py | 3 +- python/example_code/stepfunctions/README.md | 161 +++++++----- .../example_code/stepfunctions/activities.py | 136 ++++++++++ .../get_started_state_machines.py | 237 ++++++++++++++++++ python/example_code/stepfunctions/hello.py | 24 ++ .../stepfunctions/requirements.txt | 1 + .../stepfunctions/state_machines.py | 156 ++++++++++++ .../stepfunctions/stepfunctions_basics.py | 232 ----------------- .../stepfunctions/test/conftest.py | 31 +++ .../stepfunctions/test/test_cleanup.py | 56 +++++ .../test/test_find_or_create_activity.py | 59 +++++ .../test/test_find_or_create_state_machine.py | 72 ++++++ .../test/test_finish_state_machine_run.py | 52 ++++ .../test_get_started_state_machines_integ.py | 34 +++ .../stepfunctions/test/test_prerequisites.py | 54 ++++ .../test/test_run_state_machine.py | 60 +++++ .../test/test_stepfunctions_basics.py | 195 -------------- python/test_tools/stepfunctions_stubber.py | 48 +++- .../sample_files/chat_sfn_state_machine.json | 76 ++++++ 22 files changed, 1342 insertions(+), 529 deletions(-) create mode 100644 python/example_code/stepfunctions/activities.py create mode 100644 python/example_code/stepfunctions/get_started_state_machines.py create mode 100644 python/example_code/stepfunctions/hello.py create mode 100644 python/example_code/stepfunctions/requirements.txt create mode 100644 python/example_code/stepfunctions/state_machines.py delete mode 100644 python/example_code/stepfunctions/stepfunctions_basics.py create mode 100644 python/example_code/stepfunctions/test/test_cleanup.py create mode 100644 python/example_code/stepfunctions/test/test_find_or_create_activity.py create mode 100644 python/example_code/stepfunctions/test/test_find_or_create_state_machine.py create mode 100644 python/example_code/stepfunctions/test/test_finish_state_machine_run.py create mode 100644 python/example_code/stepfunctions/test/test_get_started_state_machines_integ.py create mode 100644 python/example_code/stepfunctions/test/test_prerequisites.py create mode 100644 python/example_code/stepfunctions/test/test_run_state_machine.py delete mode 100644 python/example_code/stepfunctions/test/test_stepfunctions_basics.py create mode 100644 resources/sample_files/chat_sfn_state_machine.json diff --git a/.doc_gen/metadata/sfn_metadata.yaml b/.doc_gen/metadata/sfn_metadata.yaml index a66ac4bab45..bfa036f694c 100644 --- a/.doc_gen/metadata/sfn_metadata.yaml +++ b/.doc_gen/metadata/sfn_metadata.yaml @@ -1,4 +1,20 @@ -# zexi 0.4.2 +sfn_Hello: + title: Hello &SFN; + title_abbrev: Hello &SFN; + synopsis: get started using &SFN;. + category: Hello + languages: + Python: + versions: + - sdk_version: 3 + github: python/example_code/stepfunctions + sdkguide: + excerpts: + - description: + snippet_tags: + - python.example_code.sfn.Hello + services: + sfn: {ListStateMachines} sfn_CreateStateMachine: title: Create a &SFN; state machine using an &AWS; SDK title_abbrev: Create a state machine @@ -31,28 +47,10 @@ sfn_CreateStateMachine: excerpts: - description: snippet_tags: - - python.example_code.sfn.StepFunctionsStateMachine + - python.example_code.sfn.StateMachine_decl - python.example_code.sfn.CreateStateMachine services: sfn: {CreateStateMachine} -sfn_UpdateStateMachine: - title: Update a &SFN; state machine using an &AWS; SDK - title_abbrev: Update a state machine - synopsis: update a &SFN; state machine. - category: - languages: - Python: - versions: - - sdk_version: 3 - github: python/example_code/stepfunctions - sdkguide: - excerpts: - - description: - snippet_tags: - - python.example_code.sfn.StepFunctionsStateMachine - - python.example_code.sfn.UpdateStateMachine - services: - sfn: {UpdateStateMachine} sfn_DeleteStateMachine: title: Delete a &SFN; state machine using an &AWS; SDK title_abbrev: Delete a state machine @@ -85,7 +83,7 @@ sfn_DeleteStateMachine: excerpts: - description: snippet_tags: - - python.example_code.sfn.StepFunctionsStateMachine + - python.example_code.sfn.StateMachine_decl - python.example_code.sfn.DeleteStateMachine services: sfn: {DeleteStateMachine} @@ -122,7 +120,7 @@ sfn_ListStateMachines: - description: Find a state machine by name by searching the list of state machines for the account. snippet_tags: - - python.example_code.sfn.StepFunctionsStateMachine + - python.example_code.sfn.StateMachine_decl - python.example_code.sfn.ListStateMachines services: sfn: {ListStateMachines} @@ -140,7 +138,7 @@ sfn_DescribeStateMachine: excerpts: - description: snippet_tags: - - python.example_code.sfn.StepFunctionsStateMachine + - python.example_code.sfn.StateMachine_decl - python.example_code.sfn.DescribeStateMachine services: sfn: {DescribeStateMachine} @@ -176,7 +174,7 @@ sfn_StartExecution: excerpts: - description: snippet_tags: - - python.example_code.sfn.StepFunctionsStateMachine + - python.example_code.sfn.StateMachine_decl - python.example_code.sfn.StartExecution services: sfn: {StartExecution} @@ -204,6 +202,14 @@ sfn_ListExecutions: - description: snippet_tags: - stepfunctions.java2.get_history.main + services: + sfn: {ListExecutions} +sfn_DescribeExecution: + title: Describe a &SFN; state machine run using an &AWS; SDK + title_abbrev: Describe a state machine run + synopsis: describe a &SFN; state machine run. + category: + languages: Python: versions: - sdk_version: 3 @@ -212,14 +218,49 @@ sfn_ListExecutions: excerpts: - description: snippet_tags: - - python.example_code.sfn.StepFunctionsStateMachine - - python.example_code.sfn.ListExecutions + - python.example_code.sfn.DescribeExecution services: - sfn: {ListExecutions} -sfn_StopExecution: - title: Stop a &SFN; state machine run using an &AWS; SDK - title_abbrev: Stop a state machine run - synopsis: stop a &SFN; state machine run. + sfn: {DescribeExecution} +sfn_CreateActivity: + title: Create a &SFN; activity using an &AWS; SDK + title_abbrev: Create an activity + synopsis: create a &SFN; activity. + category: + languages: + Python: + versions: + - sdk_version: 3 + github: python/example_code/stepfunctions + sdkguide: + excerpts: + - description: + snippet_tags: + - python.example_code.sfn.Activity_decl + - python.example_code.sfn.CreateActivity + services: + sfn: {CreateActivity} +sfn_ListActivities: + title: List &SFN; activities using an &AWS; SDK + title_abbrev: List activities + synopsis: list &SFN; activities. + category: + languages: + Python: + versions: + - sdk_version: 3 + github: python/example_code/stepfunctions + sdkguide: + excerpts: + - description: + snippet_tags: + - python.example_code.sfn.Activity_decl + - python.example_code.sfn.ListActivities + services: + sfn: {ListActivities} +sfn_GetActivityTask: + title: Get task data for a &SFN; activity using an &AWS; SDK + title_abbrev: Get task data for an activity + synopsis: get task data for a &SFN; activity. category: languages: Python: @@ -230,7 +271,74 @@ sfn_StopExecution: excerpts: - description: snippet_tags: - - python.example_code.sfn.StepFunctionsStateMachine - - python.example_code.sfn.StopExecution + - python.example_code.sfn.Activity_decl + - python.example_code.sfn.GetActivityTask + services: + sfn: {GetActivityTask} +sfn_SendTaskSuccess: + title: Send a success response to a &SFN; task using an &AWS; SDK + title_abbrev: Send a success response to a task + synopsis: send a success response to a &SFN; task. + category: + languages: + Python: + versions: + - sdk_version: 3 + github: python/example_code/stepfunctions + sdkguide: + excerpts: + - description: + snippet_tags: + - python.example_code.sfn.Activity_decl + - python.example_code.sfn.SendTaskSuccess + services: + sfn: {SendTaskSuccess} +sfn_DeleteActivity: + title: Delete a &SFN; activity using an &AWS; SDK + title_abbrev: Delete an activity + synopsis: delete a &SFN; activity. + category: + languages: + Python: + versions: + - sdk_version: 3 + github: python/example_code/stepfunctions + sdkguide: + excerpts: + - description: + snippet_tags: + - python.example_code.sfn.Activity_decl + - python.example_code.sfn.DeleteActivity + services: + sfn: {DeleteActivity} +sfn_Scenario_GetStartedStateMachines: + title: Get started with &SFN; state machines using an &AWS; SDK + title_abbrev: Get started with state machines + synopsis_list: + - Create an activity. + - Create a state machine from an &SLN; definition that contains the + previously created activity as a step. + - Run the state machine and respond to the activity with user input. + - Get the final status and output after the run completes. + - Delete resources created by the example. + category: Scenarios + languages: + Python: + versions: + - sdk_version: 3 + github: python/example_code/stepfunctions + sdkguide: + excerpts: + - description: Run an interactive scenario at a command prompt. + snippet_tags: + - python.example_code.sfn.Scenario_GetStartedStateMachines + - description: Define a class that wraps state machine actions. + snippet_tags: + - python.example_code.sfn.StateMachine_full + - description: Define a class that wraps activity actions. + snippet_tags: + - python.example_code.sfn.Activity_full services: - sfn: {StopExecution} + sfn: {CreateActivity, CreateStateMachine, DeleteActivity, DeleteStateMachine, DescribeExecution, + DescribeStateMachine, GetActivityTask, Hello, ListActivities, ListStateMachines, + SendTaskSuccess, StartExecution} diff --git a/.doc_gen/readmes/config.py b/.doc_gen/readmes/config.py index 48bde3cbb83..f9b5c85eb26 100644 --- a/.doc_gen/readmes/config.py +++ b/.doc_gen/readmes/config.py @@ -10,7 +10,8 @@ } entities = { '&AWS;': 'AWS', - '&ASH;': 'Security Hub' + '&ASH;': 'Security Hub', + '&SLN;': 'Amazon States Language', } language = { 'C++': { diff --git a/.doc_gen/readmes/includes/run_instructions.jinja2 b/.doc_gen/readmes/includes/run_instructions.jinja2 index 19c2953dfbf..d526dd9bce9 100644 --- a/.doc_gen/readmes/includes/run_instructions.jinja2 +++ b/.doc_gen/readmes/includes/run_instructions.jinja2 @@ -31,6 +31,11 @@ This example shows you how to {{ hello_ex['synopsis'] }} go run ./hello ``` {% endif %} +{% if lang_config['name'] == 'Python' and lang_config['sdk_ver'] == 3 %} +``` +python hello.py +``` +{% endif %} {% if lang_config['name'] == 'JavaScript' and lang_config['sdk_ver'] == 3 %} ```bash node ./hello.js diff --git a/.github/pre_validate/pre_validate.py b/.github/pre_validate/pre_validate.py index 70e6b32d7ee..efd27935c6c 100644 --- a/.github/pre_validate/pre_validate.py +++ b/.github/pre_validate/pre_validate.py @@ -64,7 +64,8 @@ EXPECTED_SAMPLE_FILES = { 'README.md', 'movies.json', - 'speech_sample.mp3' + 'speech_sample.mp3', + 'chat_sfn_state_machine.json', } # media file types diff --git a/python/example_code/stepfunctions/README.md b/python/example_code/stepfunctions/README.md index 4bdbd3761d3..b4502a99321 100644 --- a/python/example_code/stepfunctions/README.md +++ b/python/example_code/stepfunctions/README.md @@ -1,89 +1,128 @@ -# AWS Step Functions examples + +# Step Functions code examples for the SDK for Python -## Purpose +## Overview -Shows how to use the AWS SDK for Python (Boto3) with AWS Step Functions to -create and run state machines. +Shows how to use the AWS SDK for Python (Boto3) to work with AWS Step Functions. -*AWS Step Functions makes it easy to coordinate the components of distributed -applications as a series of steps in a visual workflow.* + + + +*Step Functions makes it easy to coordinate the components of distributed applications as a series of steps in a visual workflow.* + +## ⚠ Important + +* Running this code might result in charges to your AWS account. +* Running the tests might result in charges to your AWS account. +* We recommend that you grant your code least privilege. At most, grant only the minimum permissions required to perform the task. For more information, see [Grant least privilege](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege). +* This code is not tested in every AWS Region. For more information, see [AWS Regional Services](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services). + + + ## Code examples -### API examples - -* [Create a state machine](stepfunctions_basics.py) -(`CreateStateMachine`) -* [Delete a state machine](stepfunctions_basics.py) -(`DeleteStateMachine`) -* [Describe a state machine](stepfunctions_basics.py) -(`DescribeStateMachine`) -* [List state machine runs](stepfunctions_basics.py) -(`ListExecutions`) -* [List state machines](stepfunctions_basics.py) -(`ListStateMachines`) -* [Start a state machine run](stepfunctions_basics.py) -(`StartExecution`) -* [Stop a state machine run](stepfunctions_basics.py) -(`StopExecution`) -* [Update a state machine](stepfunctions_basics.py) -(`UpdateStateMachine`) +### Get started -## ⚠ Important +* [Hello Step Functions](hello.py#L4) (`ListStateMachines`) + +### Single actions + +Code excerpts that show you how to call individual service functions. -- As an AWS best practice, grant this code least privilege, or only the - permissions required to perform a task. For more information, see - [Grant Least Privilege](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege) - in the *AWS Identity and Access Management - User Guide*. -- This code has not been tested in all AWS Regions. Some AWS services are - available only in specific Regions. For more information, see the - [AWS Region Table](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/) - on the AWS website. -- Running this code might result in charges to your AWS account. +* [Create a state machine](state_machines.py#L28) (`CreateStateMachine`) +* [Create an activity](activities.py#L31) (`CreateActivity`) +* [Delete a state machine](state_machines.py#L138) (`DeleteStateMachine`) +* [Delete an activity](activities.py#L118) (`DeleteActivity`) +* [Describe a state machine](state_machines.py#L75) (`DescribeStateMachine`) +* [Describe a state machine run](state_machines.py#L118) (`DescribeExecution`) +* [Get task data for an activity](activities.py#L73) (`GetActivityTask`) +* [List activities](activities.py#L51) (`ListActivities`) +* [List state machines](state_machines.py#L53) (`ListStateMachines`) +* [Send a success response to a task](activities.py#L95) (`SendTaskSuccess`) +* [Start a state machine run](state_machines.py#L95) (`StartExecution`) -## Running the code +### Scenarios + +Code examples that show you how to accomplish a specific task by calling multiple +functions within the same service. + +* [Get started with state machines](get_started_state_machines.py) + +### Cross-service examples + +Sample applications that work across multiple AWS services. + +* [Create a messenger application](../../cross_service/stepfunctions_messenger) + +## Run the examples ### Prerequisites -- You must have an AWS account, and have your default credentials and AWS Region - configured as described in the [AWS Tools and SDKs Shared Configuration and - Credentials Reference Guide](https://docs.aws.amazon.com/credref/latest/refdocs/creds-config-files.html). -- Python 3.7 or later -- Boto3 1.14.47 or later -- PyTest 5.3.5 or later (to run unit tests) +For prerequisites, see the [README](../../README.md#Prerequisites) in the `python` folder. + +Install the packages required by these examples by running the following in a virtual environment: -### Command +``` +python -m pip install -r requirements.txt +``` + + + + +### Instructions -This example shows how to implement basic Step Functions operations. For -a full example that can be run at a command prompt, see -[python/cross_service/stepfunctions_messenger](https://github.com/awsdocs/aws-doc-sdk-examples/tree/master/python/cross_service/stepfunctions_messenger). + + -### Example structure +#### Hello Step Functions -The example contains the following file. +This example shows you how to get started using Step Functions. -**stepfunctions_basics.py** +``` +python hello.py +``` -Shows how to use AWS Step Functions state machine APIs. +#### Get started with state machines -## Running the tests +This example shows you how to do the following: -The unit tests in this module use the botocore Stubber. This captures requests before -they are sent to AWS, and returns a mocked response. To run all of the tests, -run the following in your [GitHub root]/python/example_code/stepfunctions -folder. +* Create an activity. +* Create a state machine from an Amazon States Language definition that contains the previously created activity as a step. +* Run the state machine and respond to the activity with user input. +* Get the final status and output after the run completes. +* Delete resources created by the example. -``` -python -m pytest +Start the example by running the following at a command prompt: + +``` +python get_started_state_machines.py ``` -## Additional information + + -- [Boto3 AWS Step Functions service reference](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/stepfunctions.html) -- [AWS Step Functions documentation](https://docs.aws.amazon.com/step-functions) +### Tests + +⚠ Running tests might result in charges to your AWS account. + +To find instructions for running these tests, see the [README](../../README.md#Tests) +in the `python` folder. + + + + +## Additional resources + +* [Step Functions Developer Guide](https://docs.aws.amazon.com/step-functions/latest/dg/welcome.html) +* [Step Functions API Reference](https://docs.aws.amazon.com/step-functions/latest/apireference/Welcome.html) +* [SDK for Python Step Functions reference](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/stepfunctions.html) + + + --- + Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 +SPDX-License-Identifier: Apache-2.0 \ No newline at end of file diff --git a/python/example_code/stepfunctions/activities.py b/python/example_code/stepfunctions/activities.py new file mode 100644 index 00000000000..99db8633402 --- /dev/null +++ b/python/example_code/stepfunctions/activities.py @@ -0,0 +1,136 @@ +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# SPDX-License-Identifier: Apache-2.0 + +""" +Purpose + +Shows how to use the AWS SDK for Python (Boto3) with AWS Step Functions to +create and manage activities. An activity is used by a state machine to pause its +execution and let external code get current state data and send a response before the +state machine is resumed. +""" + +import logging + +from botocore.exceptions import ClientError + +logger = logging.getLogger(__name__) + + +# snippet-start:[python.example_code.sfn.Activity_full] +# snippet-start:[python.example_code.sfn.Activity_decl] +class Activity: + """Encapsulates Step Function activity actions.""" + def __init__(self, stepfunctions_client): + """ + :param stepfunctions_client: A Boto3 Step Functions client. + """ + self.stepfunctions_client = stepfunctions_client +# snippet-end:[python.example_code.sfn.Activity_decl] + + # snippet-start:[python.example_code.sfn.CreateActivity] + def create(self, name): + """ + Create an activity. + + :param name: The name of the activity to create. + :return: The Amazon Resource Name (ARN) of the newly created activity. + """ + try: + response = self.stepfunctions_client.create_activity( + name=name) + except ClientError as err: + logger.error( + "Couldn't create activity %s. Here's why: %s: %s", name, + err.response['Error']['Code'], err.response['Error']['Message']) + raise + else: + return response['activityArn'] + # snippet-end:[python.example_code.sfn.CreateActivity] + + # snippet-start:[python.example_code.sfn.ListActivities] + def find(self, name): + """ + Find an activity by name. This requires listing activities until one is found + with a matching name. + + :param name: The name of the activity to search for. + :return: If found, the ARN of the activity; otherwise, None. + """ + try: + paginator = self.stepfunctions_client.get_paginator('list_activities') + for page in paginator.paginate(): + for activity in page.get('activities', []): + if activity['name'] == name: + return activity['activityArn'] + except ClientError as err: + logger.error( + "Couldn't list activities. Here's why: %s: %s", + err.response['Error']['Code'], err.response['Error']['Message']) + raise + # snippet-end:[python.example_code.sfn.ListActivities] + + # snippet-start:[python.example_code.sfn.GetActivityTask] + def get_task(self, activity_arn): + """ + Gets task data for an activity. When a state machine is waiting for the + specified activity, a response is returned with data from the state machine. + When a state machine is not waiting, this call blocks for 60 seconds. + + :param activity_arn: The ARN of the activity to get task data for. + :return: The task data for the activity. + """ + try: + response = self.stepfunctions_client.get_activity_task( + activityArn=activity_arn) + except ClientError as err: + logger.error( + "Couldn't get a task for activity %s. Here's why: %s: %s", activity_arn, + err.response['Error']['Code'], err.response['Error']['Message']) + raise + else: + return response + # snippet-end:[python.example_code.sfn.GetActivityTask] + + # snippet-start:[python.example_code.sfn.SendTaskSuccess] + def send_task_success(self, task_token, task_response): + """ + Sends a success response to a waiting activity step. A state machine with an + activity step waits for the activity to get task data and then respond with + either success or failure before it resumes processing. + + :param task_token: The token associated with the task. This is included in the + response to the get_activity_task action and must be sent + without modification. + :param task_response: The response data from the activity. This data is + received and processed by the state machine. + """ + try: + self.stepfunctions_client.send_task_success( + taskToken=task_token, output=task_response) + except ClientError as err: + logger.error( + "Couldn't send task success. Here's why: %s: %s", + err.response['Error']['Code'], err.response['Error']['Message']) + raise + # snippet-end:[python.example_code.sfn.SendTaskSuccess] + + # snippet-start:[python.example_code.sfn.DeleteActivity] + def delete(self, activity_arn): + """ + Delete an activity. + + :param activity_arn: The ARN of the activity to delete. + """ + try: + response = self.stepfunctions_client.delete_activity( + activityArn=activity_arn) + except ClientError as err: + logger.error( + "Couldn't delete activity %s. Here's why: %s: %s", activity_arn, + err.response['Error']['Code'], err.response['Error']['Message']) + raise + else: + return response + # snippet-end:[python.example_code.sfn.DeleteActivity] +# snippet-end:[python.example_code.sfn.Activity_full] diff --git a/python/example_code/stepfunctions/get_started_state_machines.py b/python/example_code/stepfunctions/get_started_state_machines.py new file mode 100644 index 00000000000..75218489a72 --- /dev/null +++ b/python/example_code/stepfunctions/get_started_state_machines.py @@ -0,0 +1,237 @@ +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# SPDX-License-Identifier: Apache-2.0 + +""" +Purpose + +Shows how to use the AWS SDK for Python (Boto3) with AWS Step Functions to +do the following: + +1. Create an activity. +2. Create a state machine from an Amazon States Language definition that contains the +previously created activity as a step. +3. Run the state machine and respond to the activity with user input. +4. Get the final status and output after the run completes. +5. Delete resources created by the example. +""" + +import json +import logging +import sys + +import boto3 +from botocore.exceptions import ClientError +from activities import Activity +from state_machines import StateMachine + +# Add relative path to include demo_tools in this code example without need for setup. +sys.path.append('../..') +import demo_tools.question as q +from demo_tools.retries import wait + +logger = logging.getLogger(__name__) + + +# snippet-start:[python.example_code.sfn.Scenario_GetStartedStateMachines] +class StateMachineScenario: + """Runs an interactive scenario that shows how to get started using Step Functions.""" + def __init__(self, activity, state_machine, iam_client): + """ + :param activity: An object that wraps activity actions. + :param state_machine: An object that wraps state machine actions. + :param iam_client: A Boto3 AWS Identity and Access Management (IAM) client. + """ + self.activity = activity + self.state_machine = state_machine + self.iam_client = iam_client + self.state_machine_role = None + + def prerequisites(self, state_machine_role_name): + """ + Finds or creates an IAM role that can be assumed by Step Functions. + A role of this kind is required to create a state machine. + The state machine used in this example does not call any additional services, + so it needs no additional permissions. + + :param state_machine_role_name: The name of the role. + :return: Data about the role. + """ + trust_policy = { + "Version": "2012-10-17", + "Statement": [{ + "Sid": "", + "Effect": "Allow", + "Principal": { + "Service": "states.amazonaws.com"}, + "Action": "sts:AssumeRole"}]} + try: + role = self.iam_client.get_role(RoleName=state_machine_role_name) + print(f"Prerequisite IAM role {state_machine_role_name} already exists.") + except ClientError as err: + if err.response['Error']['Code'] == 'NoSuchEntity': + role = None + else: + logger.error( + "Couldn't get prerequisite IAM role %s. Here's why: %s: %s", + state_machine_role_name, + err.response['Error']['Code'], err.response['Error']['Message']) + raise + if role is None: + try: + role = self.iam_client.create_role( + RoleName=state_machine_role_name, + AssumeRolePolicyDocument=json.dumps(trust_policy)) + except ClientError as err: + logger.error( + "Couldn't create prerequisite IAM role %s. Here's why: %s: %s", + state_machine_role_name, + err.response['Error']['Code'], err.response['Error']['Message']) + raise + self.state_machine_role = role['Role'] + + def find_or_create_activity(self, activity_name): + """ + Finds or creates a Step Functions activity. + + :param activity_name: The name of the activity. + :return: The Amazon Resource Name (ARN) of the activity. + """ + print("First, let's set up an activity and state machine.") + activity_arn = self.activity.find(activity_name) + if activity_arn is None: + activity_arn = self.activity.create(activity_name) + print(f"Activity {activity_name} created. Its Amazon Resource Name (ARN) is " + f"{activity_arn}.") + else: + print(f"Activity {activity_name} already exists.") + return activity_arn + + def find_or_create_state_machine(self, state_machine_name, activity_arn): + """ + Finds or creates a Step Functions state machine. + + :param state_machine_name: The name of the state machine. + :param activity_arn: The ARN of an activity that is used as a step in the state + machine. This ARN is injected into the state machine + definition that's used to create the state machine. + :return: The ARN of the state machine. + """ + state_machine_arn = self.state_machine.find(state_machine_name) + if state_machine_arn is None: + with open('../../../resources/sample_files/chat_sfn_state_machine.json') as state_machine_file: + state_machine_def = state_machine_file.read().replace( + '{{DOC_EXAMPLE_ACTIVITY_ARN}}', activity_arn) + state_machine_arn = self.state_machine.create( + state_machine_name, state_machine_def, self.state_machine_role['Arn']) + print(f"State machine {state_machine_name} created.") + else: + print(f"State machine {state_machine_name} already exists.") + print('-'*88) + print(f"Here's some information about state machine {state_machine_name}:") + state_machine_info = self.state_machine.describe(state_machine_arn) + for field in ['name', 'status', 'stateMachineArn', 'roleArn']: + print(f"\t{field}: {state_machine_info[field]}") + return state_machine_arn + + def run_state_machine(self, state_machine_arn, activity_arn): + """ + Run the state machine. The state machine used in this example is a simple + chat simulation. It contains an activity step in a loop that is used for user + interaction. When the state machine gets to the activity step, it waits for + an external application to get task data and submit a response. This function + acts as the activity application by getting task input and responding with + user input. + + :param state_machine_arn: The ARN of the state machine. + :param activity_arn: The ARN of the activity used as a step in the state machine. + :return: The ARN of the run. + """ + print(f"Let's run the state machine. It's a simplistic, non-AI chat simulator " + f"we'll call ChatSFN.") + user_name = q.ask("What should ChatSFN call you? ", q.non_empty) + run_input = {'name': user_name} + print("Starting state machine...") + run_arn = self.state_machine.start(state_machine_arn, json.dumps(run_input)) + action = None + while action != 'done': + activity_task = self.activity.get_task(activity_arn) + task_input = json.loads(activity_task['input']) + print(f"ChatSFN: {task_input['message']}") + action = task_input['actions'][q.choose("What now? ", task_input['actions'])] + task_response = {'action': action} + self.activity.send_task_success(activity_task['taskToken'], json.dumps(task_response)) + return run_arn + + def finish_state_machine_run(self, run_arn): + """ + Wait for the state machine run to finish, then print final status and output. + + :param run_arn: The ARN of the run to retrieve. + """ + print(f"Let's get the final output from the state machine:") + status = 'RUNNING' + while status == 'RUNNING': + run_output = self.state_machine.describe_run(run_arn) + status = run_output['status'] + if status == 'RUNNING': + print("The state machine is still running, let's wait for it to finish.") + wait(1) + elif status == 'SUCCEEDED': + print(f"ChatSFN: {json.loads(run_output['output'])['message']}") + else: + print(f"Run status: {status}.") + + def cleanup( + self, state_machine_name, state_machine_arn, activity_name, activity_arn, + state_machine_role_name): + """ + Clean up resources created by this example. + + :param state_machine_name: The name of the state machine. + :param state_machine_arn: The ARN of the state machine. + :param activity_name: The name of the activity. + :param activity_arn: The ARN of the activity. + :param state_machine_role_name: The name of the role used by the state machine. + """ + if q.ask("Do you want to delete the state machine, activity, and role created for this " + "example? (y/n) ", q.is_yesno): + self.state_machine.delete(state_machine_arn) + print(f"Deleted state machine {state_machine_name}.") + self.activity.delete(activity_arn) + print(f"Deleted activity {activity_name}.") + self.iam_client.delete_role(RoleName=state_machine_role_name) + print(f"Deleted role {state_machine_role_name}.") + + def run_scenario(self, activity_name, state_machine_name): + print('-'*88) + print("Welcome to the AWS Step Functions state machines demo.") + print('-'*88) + + activity_arn = self.find_or_create_activity(activity_name) + state_machine_arn = self.find_or_create_state_machine(state_machine_name, activity_arn) + print('-'*88) + run_arn = self.run_state_machine(state_machine_arn, activity_arn) + print('-'*88) + self.finish_state_machine_run(run_arn) + print('-'*88) + self.cleanup( + state_machine_name, state_machine_arn, activity_name, activity_arn, + self.state_machine_role['RoleName']) + + print('-'*88) + print("\nThanks for watching!") + print('-'*88) + + +if __name__ == '__main__': + logging.basicConfig(level=logging.INFO, format='%(levelname)s: %(message)s') + try: + stepfunctions_client = boto3.client('stepfunctions') + iam_client = boto3.client('iam') + scenario = StateMachineScenario( + Activity(stepfunctions_client), StateMachine(stepfunctions_client), iam_client) + scenario.prerequisites('doc-example-state-machine-chat') + scenario.run_scenario('doc-example-activity', 'doc-example-state-machine') + except Exception: + logging.exception("Something went wrong with the demo.") +# snippet-end:[python.example_code.sfn.Scenario_GetStartedStateMachines] diff --git a/python/example_code/stepfunctions/hello.py b/python/example_code/stepfunctions/hello.py new file mode 100644 index 00000000000..8bf3deffe04 --- /dev/null +++ b/python/example_code/stepfunctions/hello.py @@ -0,0 +1,24 @@ +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# SPDX-License-Identifier: Apache-2.0 + +# snippet-start:[python.example_code.sfn.Hello] +import boto3 + +def hello_stepfunctions(stepfunctions_client): + """ + Use the AWS SDK for Python (Boto3) to create an AWS Step Functions client and list + the state machines in your account. This list might be empty if you haven't created + any state machines. + This example uses the default settings specified in your shared credentials + and config files. + + :param stepfunctions_client: A Boto3 Step Functions Client object. + """ + print("Hello, Step Functions! Let's list up to 10 of your state machines:") + state_machines = stepfunctions_client.list_state_machines(maxResults=10) + for sm in state_machines['stateMachines']: + print(f"\t{sm['name']}: {sm['stateMachineArn']}") + +if __name__ == '__main__': + hello_stepfunctions(boto3.client('stepfunctions')) +# snippet-end:[python.example_code.sfn.Hello] diff --git a/python/example_code/stepfunctions/requirements.txt b/python/example_code/stepfunctions/requirements.txt new file mode 100644 index 00000000000..0212cb5a052 --- /dev/null +++ b/python/example_code/stepfunctions/requirements.txt @@ -0,0 +1 @@ +boto3>=1.24.60 diff --git a/python/example_code/stepfunctions/state_machines.py b/python/example_code/stepfunctions/state_machines.py new file mode 100644 index 00000000000..2959ecedc61 --- /dev/null +++ b/python/example_code/stepfunctions/state_machines.py @@ -0,0 +1,156 @@ +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# SPDX-License-Identifier: Apache-2.0 + +""" +Purpose + +Shows how to use the AWS SDK for Python (Boto3) with AWS Step Functions to create and +manage state machines. +""" + +import logging +from botocore.exceptions import ClientError + +logger = logging.getLogger(__name__) + + +# snippet-start:[python.example_code.sfn.StateMachine_full] +# snippet-start:[python.example_code.sfn.StateMachine_decl] +class StateMachine: + """Encapsulates Step Functions state machine actions.""" + def __init__(self, stepfunctions_client): + """ + :param stepfunctions_client: A Boto3 Step Functions client. + """ + self.stepfunctions_client = stepfunctions_client +# snippet-end:[python.example_code.sfn.StateMachine_decl] + + # snippet-start:[python.example_code.sfn.CreateStateMachine] + def create(self, name, definition, role_arn): + """ + Creates a state machine with the specific definition. The state machine assumes + the provided role before it starts a run. + + :param name: The name to give the state machine. + :param definition: The Amazon States Language definition of the steps in the + the state machine. + :param role_arn: The Amazon Resource Name (ARN) of the role that is assumed by + Step Functions when the state machine is run. + :return: The ARN of the newly created state machine. + """ + try: + response = self.stepfunctions_client.create_state_machine( + name=name, definition=definition, roleArn=role_arn) + except ClientError as err: + logger.error( + "Couldn't create state machine %s. Here's why: %s: %s", name, + err.response['Error']['Code'], err.response['Error']['Message']) + raise + else: + return response['stateMachineArn'] + # snippet-end:[python.example_code.sfn.CreateStateMachine] + + # snippet-start:[python.example_code.sfn.ListStateMachines] + def find(self, name): + """ + Find a state machine by name. This requires listing the state machines until + one is found with a matching name. + + :param name: The name of the state machine to search for. + :return: The ARN of the state machine if found; otherwise, None. + """ + try: + paginator = self.stepfunctions_client.get_paginator('list_state_machines') + for page in paginator.paginate(): + for state_machine in page.get('stateMachines', []): + if state_machine['name'] == name: + return state_machine['stateMachineArn'] + except ClientError as err: + logger.error( + "Couldn't list state machines. Here's why: %s: %s", + err.response['Error']['Code'], err.response['Error']['Message']) + raise + # snippet-end:[python.example_code.sfn.ListStateMachines] + + # snippet-start:[python.example_code.sfn.DescribeStateMachine] + def describe(self, state_machine_arn): + """ + Get data about a state machine. + + :param state_machine_arn: The ARN of the state machine to look up. + :return: The retrieved state machine data. + """ + try: + response = self.stepfunctions_client.describe_state_machine( + stateMachineArn=state_machine_arn) + except ClientError as err: + logger.error( + "Couldn't describe state machine %s. Here's why: %s: %s", state_machine_arn, + err.response['Error']['Code'], err.response['Error']['Message']) + raise + else: + return response + # snippet-end:[python.example_code.sfn.DescribeStateMachine] + + # snippet-start:[python.example_code.sfn.StartExecution] + def start(self, state_machine_arn, run_input): + """ + Start a run of a state machine with a specified input. A run is also known + as an "execution" in Step Functions. + + :param state_machine_arn: The ARN of the state machine to run. + :param run_input: The input to the state machine, in JSON format. + :return: The ARN of the run. This can be used to get information about the run, + including its current status and final output. + """ + try: + response = self.stepfunctions_client.start_execution( + stateMachineArn=state_machine_arn, input=run_input) + except ClientError as err: + logger.error( + "Couldn't start state machine %s. Here's why: %s: %s", state_machine_arn, + err.response['Error']['Code'], err.response['Error']['Message']) + raise + else: + return response['executionArn'] + # snippet-end:[python.example_code.sfn.StartExecution] + + # snippet-start:[python.example_code.sfn.DescribeExecution] + def describe_run(self, run_arn): + """ + Get data about a state machine run, such as its current status or final output. + + :param run_arn: The ARN of the run to look up. + :return: The retrieved run data. + """ + try: + response = self.stepfunctions_client.describe_execution( + executionArn=run_arn) + except ClientError as err: + logger.error( + "Couldn't describe run %s. Here's why: %s: %s", run_arn, + err.response['Error']['Code'], err.response['Error']['Message']) + raise + else: + return response + # snippet-end:[python.example_code.sfn.DescribeExecution] + + # snippet-start:[python.example_code.sfn.DeleteStateMachine] + def delete(self, state_machine_arn): + """ + Delete a state machine and all of its run data. + + :param state_machine_arn: The ARN of the state machine to delete. + """ + try: + response = self.stepfunctions_client.delete_state_machine( + stateMachineArn=state_machine_arn) + except ClientError as err: + logger.error( + "Couldn't delete state machine %s. Here's why: %s: %s", state_machine_arn, + err.response['Error']['Code'], err.response['Error']['Message']) + raise + else: + return response + # snippet-end:[python.example_code.sfn.DeleteStateMachine] +# snippet-end:[python.example_code.sfn.StateMachine_full] diff --git a/python/example_code/stepfunctions/stepfunctions_basics.py b/python/example_code/stepfunctions/stepfunctions_basics.py deleted file mode 100644 index d84d1051542..00000000000 --- a/python/example_code/stepfunctions/stepfunctions_basics.py +++ /dev/null @@ -1,232 +0,0 @@ -# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -# SPDX-License-Identifier: Apache-2.0 - -""" -Purpose - -Shows how to use the AWS SDK for Python (Boto3) with AWS Step Functions to -create and run state machines. -""" - -import json -import logging -from botocore.exceptions import ClientError - -logger = logging.getLogger(__name__) - - -# snippet-start:[python.example_code.sfn.StepFunctionsStateMachine] -class StepFunctionsStateMachine: - """Encapsulates Step Functions state machine functions.""" - def __init__(self, stepfunctions_client): - """ - :param stepfunctions_client: A Boto3 Step Functions client. - """ - self.stepfunctions_client = stepfunctions_client - self.state_machine_name = None - self.state_machine_arn = None -# snippet-end:[python.example_code.sfn.StepFunctionsStateMachine] - - def _clear(self): - """ - Clears the object of its instance data. - """ - self.state_machine_name = None - self.state_machine_arn = None - -# snippet-start:[python.example_code.sfn.CreateStateMachine] - def create(self, name, definition, role_arn): - """ - Creates a new state machine. - - :param name: The name of the new state machine. - :param definition: A dict that contains all of the state and flow control - information. The dict is translated to JSON before it is - uploaded. - :param role_arn: A role that grants Step Functions permission to access any - AWS services that are specified in the definition. - :return: The Amazon Resource Name (ARN) of the new state machine. - """ - try: - response = self.stepfunctions_client.create_state_machine( - name=name, definition=json.dumps(definition), roleArn=role_arn) - self.state_machine_name = name - self.state_machine_arn = response['stateMachineArn'] - logger.info( - "Created state machine %s. ARN is %s.", name, self.state_machine_arn) - except ClientError: - logger.exception("Couldn't create state machine %s.", name) - raise - else: - return self.state_machine_arn -# snippet-end:[python.example_code.sfn.CreateStateMachine] - -# snippet-start:[python.example_code.sfn.UpdateStateMachine] - def update(self, definition, role_arn=None): - """ - Updates an existing state machine. Any runs currently operating do not update - until they are stopped. - - :param definition: A dict that contains all of the state and flow control - information for the state machine. This completely replaces - the existing definition. - :param role_arn: A role that grants Step Functions permission to access any - AWS services that are specified in the definition. - """ - if self.state_machine_arn is None: - raise ValueError - try: - kwargs = { - 'stateMachineArn': self.state_machine_arn, - 'definition': json.dumps(definition)} - if role_arn is not None: - kwargs['roleArn'] = role_arn - self.stepfunctions_client.update_state_machine(**kwargs) - logger.info("Updated state machine %s.", self.state_machine_name) - except ClientError: - logger.exception( - "Couldn't update state machine %s.", self.state_machine_name) - raise -# snippet-end:[python.example_code.sfn.UpdateStateMachine] - -# snippet-start:[python.example_code.sfn.DeleteStateMachine] - def delete(self): - """ - Deletes a state machine and all associated run information. - """ - if self.state_machine_arn is None: - raise ValueError - try: - self.stepfunctions_client.delete_state_machine( - stateMachineArn=self.state_machine_arn) - logger.info("Deleted state machine %s.", self.state_machine_name) - self._clear() - except ClientError: - logger.exception( - "Couldn't delete state machine %s.", self.state_machine_name) - raise -# snippet-end:[python.example_code.sfn.DeleteStateMachine] - -# snippet-start:[python.example_code.sfn.ListStateMachines] - def find(self, state_machine_name): - """ - Finds a state machine by name. This function iterates the state machines for - the current account until it finds a match and returns the first matching - state machine. - - :param state_machine_name: The name of the state machine to find. - :return: The ARN of the named state machine when found; otherwise, None. - """ - self._clear() - try: - paginator = self.stepfunctions_client.get_paginator('list_state_machines') - for page in paginator.paginate(): - for machine in page['stateMachines']: - if machine['name'] == state_machine_name: - self.state_machine_name = state_machine_name - self.state_machine_arn = machine['stateMachineArn'] - break - if self.state_machine_arn is not None: - break - if self.state_machine_arn is not None: - logger.info( - "Found state machine %s with ARN %s.", self.state_machine_name, - self.state_machine_arn) - else: - logger.info("Couldn't find state machine %s.", state_machine_name) - except ClientError: - logger.exception("Couldn't find state machine %s.", state_machine_name) - raise - else: - return self.state_machine_arn -# snippet-end:[python.example_code.sfn.ListStateMachines] - -# snippet-start:[python.example_code.sfn.DescribeStateMachine] - def describe(self): - """ - Gets metadata about a state machine. - - :return: The metadata about the state machine. - """ - if self.state_machine_arn is None: - raise ValueError - try: - response = self.stepfunctions_client.describe_state_machine( - stateMachineArn=self.state_machine_arn) - logger.info("Got metadata for state machine %s.", self.state_machine_name) - except ClientError: - logger.exception( - "Couldn't get metadata for state machine %s.", self.state_machine_name) - raise - else: - return response -# snippet-end:[python.example_code.sfn.DescribeStateMachine] - -# snippet-start:[python.example_code.sfn.StartExecution] - def start_run(self, run_name, run_input=None): - """ - Starts a run with the current state definition. - - :param run_name: The name of the run. This name must be unique for all runs - for the state machine. - :param run_input: Data that is passed as input to the run. - :return: The ARN of the run. - """ - if self.state_machine_arn is None: - raise ValueError - try: - kwargs = {'stateMachineArn': self.state_machine_arn, 'name': run_name} - if run_input is not None: - kwargs['input'] = json.dumps(run_input) - response = self.stepfunctions_client.start_execution(**kwargs) - run_arn = response['executionArn'] - logger.info("Started run %s. ARN is %s.", run_name, run_arn) - except ClientError: - logger.exception("Couldn't start run %s.", run_name) - raise - else: - return run_arn -# snippet-end:[python.example_code.sfn.StartExecution] - -# snippet-start:[python.example_code.sfn.ListExecutions] - def list_runs(self, run_status=None): - """ - Lists the runs for the state machine. - - :param run_status: When specified, only lists runs that have the specified - status. Otherwise, all runs are listed. - :return: The list of runs. - """ - if self.state_machine_arn is None: - raise ValueError - try: - kwargs = {'stateMachineArn': self.state_machine_arn} - if run_status is not None: - kwargs['statusFilter'] = run_status - response = self.stepfunctions_client.list_executions(**kwargs) - runs = response['executions'] - logger.info( - "Got %s runs for state machine %s.", len(runs), self.state_machine_name) - except ClientError: - logger.exception( - "Couldn't get runs for state machine %s.", self.state_machine_name) - raise - else: - return runs -# snippet-end:[python.example_code.sfn.ListExecutions] - -# snippet-start:[python.example_code.sfn.StopExecution] - def stop_run(self, run_arn, cause): - """ - Stops a run. - - :param run_arn: The run to stop. - :param cause: A description of why the run was stopped. - """ - try: - self.stepfunctions_client.stop_execution(executionArn=run_arn, cause=cause) - logger.info("Stopping run %s.", run_arn) - except ClientError: - logger.exception("Couldn't stop run %s.", run_arn) - raise -# snippet-end:[python.example_code.sfn.StopExecution] diff --git a/python/example_code/stepfunctions/test/conftest.py b/python/example_code/stepfunctions/test/conftest.py index 15dfd0fc0b4..a910212d280 100644 --- a/python/example_code/stepfunctions/test/conftest.py +++ b/python/example_code/stepfunctions/test/conftest.py @@ -6,6 +6,37 @@ """ import sys +import boto3 +import pytest + +from activities import Activity +from state_machines import StateMachine +import get_started_state_machines + # This is needed so Python can find test_tools on the path. sys.path.append('../..') from test_tools.fixtures.common import * + + +class ScenarioData: + def __init__(self, client, stubber, iam_client, iam_stubber): + self.client = client + self.stubber = stubber + self.iam_client = iam_client + self.iam_stubber = iam_stubber + self.scenario = get_started_state_machines.StateMachineScenario( + Activity(self.client), StateMachine(self.client), self.iam_client) + + +@pytest.fixture +def scenario_data(make_stubber): + client = boto3.client('stepfunctions') + stubber = make_stubber(client) + iam_client = boto3.client('iam') + iam_stubber = make_stubber(iam_client) + return ScenarioData(client, stubber, iam_client, iam_stubber) + + +@pytest.fixture(autouse=True) +def mock_wait(monkeypatch): + monkeypatch.setattr(get_started_state_machines, 'wait', lambda x: None) diff --git a/python/example_code/stepfunctions/test/test_cleanup.py b/python/example_code/stepfunctions/test/test_cleanup.py new file mode 100644 index 00000000000..75cd4d1b65b --- /dev/null +++ b/python/example_code/stepfunctions/test/test_cleanup.py @@ -0,0 +1,56 @@ +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# SPDX-License-Identifier: Apache-2.0 + +from botocore.exceptions import ClientError +import pytest + + +class MockManager: + def __init__(self, stub_runner, scenario_data, input_mocker): + self.scenario_data = scenario_data + self.sm_name = 'test-sm' + self.sm_arn = f'arn:aws:states:test-region:111122223333:/statemachine/{self.sm_name}' + self.act_name = 'test-act' + self.act_arn = f'arn:aws:states:test-region:111122223333:/activity/{self.act_name}' + self.sm_role = 'test-role' + self.scenario_args = [self.sm_name, self.sm_arn, self.act_name, self.act_arn, self.sm_role] + answers = ['y'] + input_mocker.mock_answers(answers) + self.stub_runner = stub_runner + + def setup_stubs(self, error, stop_on, stubber): + with self.stub_runner(error, stop_on) as runner: + runner.add(stubber.stub_delete_state_machine, self.sm_arn) + runner.add(stubber.stub_delete_activity, self.act_arn) + runner.add(self.scenario_data.iam_stubber.stub_delete_role, self.sm_role) + + +@pytest.fixture +def mock_mgr(stub_runner, scenario_data, input_mocker): + return MockManager(stub_runner, scenario_data, input_mocker) + + +def test_cleanup(mock_mgr, capsys): + mock_mgr.setup_stubs(None, None, mock_mgr.scenario_data.stubber) + + mock_mgr.scenario_data.scenario.cleanup(*mock_mgr.scenario_args) + + capt = capsys.readouterr() + assert mock_mgr.sm_name in capt.out + assert mock_mgr.act_name in capt.out + assert mock_mgr.sm_role in capt.out + + +@pytest.mark.parametrize('error, stop_on_index', [ + ('TESTERROR-stub_delete_state_machine', 0), + ('TESTERROR-stub_delete_activity', 1), +]) +def test_cleanup_error( + mock_mgr, caplog, error, stop_on_index): + mock_mgr.setup_stubs(error, stop_on_index, mock_mgr.scenario_data.stubber) + + with pytest.raises(ClientError) as exc_info: + mock_mgr.scenario_data.scenario.cleanup(*mock_mgr.scenario_args) + assert exc_info.value.response['Error']['Code'] == error + + assert error in caplog.text diff --git a/python/example_code/stepfunctions/test/test_find_or_create_activity.py b/python/example_code/stepfunctions/test/test_find_or_create_activity.py new file mode 100644 index 00000000000..9fd7da9c296 --- /dev/null +++ b/python/example_code/stepfunctions/test/test_find_or_create_activity.py @@ -0,0 +1,59 @@ +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# SPDX-License-Identifier: Apache-2.0 + +from datetime import datetime +from botocore.exceptions import ClientError +import pytest + + +class MockManager: + def __init__(self, stub_runner, scenario_data, input_mocker): + self.scenario_data = scenario_data + self.act_exists = False + self.act_name = 'test-act' + self.activities = [{ + 'name': self.act_name, + 'activityArn': f'arn:aws:states:test-region:111122223333:/activity/{self.act_name}', + 'creationDate': datetime.now()}] + self.scenario_args = [self.act_name] + self.stub_runner = stub_runner + + def setup_stubs(self, error, stop_on, stubber): + with self.stub_runner(error, stop_on) as runner: + if self.act_exists: + runner.add(stubber.stub_list_activities, self.activities) + else: + runner.add(stubber.stub_list_activities, []) + runner.add(stubber.stub_create_activity, self.activities[0]['name'], self.activities[0]['activityArn']) + + +@pytest.fixture +def mock_mgr(stub_runner, scenario_data, input_mocker): + return MockManager(stub_runner, scenario_data, input_mocker) + + +@pytest.mark.parametrize('act_exists', [True, False]) +def test_find_or_create_activity(mock_mgr, capsys, act_exists): + mock_mgr.act_exists = act_exists + mock_mgr.setup_stubs(None, None, mock_mgr.scenario_data.stubber) + + got_output = mock_mgr.scenario_data.scenario.find_or_create_activity(*mock_mgr.scenario_args) + + capt = capsys.readouterr() + assert mock_mgr.act_name in capt.out + assert got_output == mock_mgr.activities[0]['activityArn'] + + +@pytest.mark.parametrize('error, stop_on_index', [ + ('TESTERROR-stub_list_activities', 0), + ('TESTERROR-stub_create_activity', 1), +]) +def test_find_or_create_activity_error( + mock_mgr, caplog, error, stop_on_index): + mock_mgr.setup_stubs(error, stop_on_index, mock_mgr.scenario_data.stubber) + + with pytest.raises(ClientError) as exc_info: + mock_mgr.scenario_data.scenario.find_or_create_activity(*mock_mgr.scenario_args) + assert exc_info.value.response['Error']['Code'] == error + + assert error in caplog.text diff --git a/python/example_code/stepfunctions/test/test_find_or_create_state_machine.py b/python/example_code/stepfunctions/test/test_find_or_create_state_machine.py new file mode 100644 index 00000000000..e002948e4e1 --- /dev/null +++ b/python/example_code/stepfunctions/test/test_find_or_create_state_machine.py @@ -0,0 +1,72 @@ +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# SPDX-License-Identifier: Apache-2.0 + +import json +from unittest.mock import patch, mock_open +from botocore.exceptions import ClientError +import pytest + + +class MockManager: + def __init__(self, stub_runner, scenario_data, input_mocker): + self.scenario_data = scenario_data + self.sm_exists = False + self.sm_name = 'test-state-machine' + self.sm_def = 'test-definition' + self.sm_arn = f'arn:aws:states:test-region:111122223333:/statemachine/{self.sm_name}' + self.act_arn = 'arn:aws:states:test-region:111122223333:/activity/test-act' + self.sm_role_arn = 'arn:aws:iam:test-region:111122223333:/roles/test-role' + scenario_data.scenario.state_machine_role = {'Arn': self.sm_role_arn} + self.scenario_args = [self.sm_name, self.act_arn] + self.stub_runner = stub_runner + + def setup_stubs(self, error, stop_on, stubber): + with self.stub_runner(error, stop_on) as runner: + if self.sm_exists: + runner.add(stubber.stub_list_state_machines, [{'name': self.sm_name, 'stateMachineArn': self.sm_arn}]) + else: + runner.add(stubber.stub_list_state_machines, []) + runner.add( + stubber.stub_create_state_machine, self.sm_name, self.sm_def, + self.sm_role_arn, self.sm_arn) + runner.add( + stubber.stub_describe_state_machine, self.sm_arn, self.sm_name, self.sm_def, 'ACTIVE', self.sm_role_arn) + + +@pytest.fixture +def mock_mgr(stub_runner, scenario_data, input_mocker): + return MockManager(stub_runner, scenario_data, input_mocker) + + +@pytest.mark.parametrize('sm_exists', [True, False]) +def test_find_or_create_state_machine(mock_mgr, capsys, sm_exists): + mock_mgr.sm_exists = sm_exists + mock_mgr.setup_stubs(None, None, mock_mgr.scenario_data.stubber) + + with patch('builtins.open', mock_open(read_data=mock_mgr.sm_def)) as mock_file: + got_output = mock_mgr.scenario_data.scenario.find_or_create_state_machine(*mock_mgr.scenario_args) + if not sm_exists: + mock_file.assert_called_with('../../../resources/sample_files/chat_sfn_state_machine.json') + + capt = capsys.readouterr() + assert got_output == mock_mgr.sm_arn + assert f"name: {mock_mgr.sm_name}" in capt.out + assert f"stateMachineArn: {mock_mgr.sm_arn}" in capt.out + assert f"roleArn: {mock_mgr.sm_role_arn}" in capt.out + + +@pytest.mark.parametrize('error, stop_on_index', [ + ('TESTERROR-stub_list_state_machines', 0), + ('TESTERROR-stub_create_state_machine', 1), + ('TESTERROR-stub_describe_state_machine', 2), +]) +def test_find_or_create_state_machine_error( + mock_mgr, caplog, error, stop_on_index): + mock_mgr.setup_stubs(error, stop_on_index, mock_mgr.scenario_data.stubber) + + with pytest.raises(ClientError) as exc_info: + with patch('builtins.open', mock_open(read_data=mock_mgr.sm_def)) as mock_file: + mock_mgr.scenario_data.scenario.find_or_create_state_machine(*mock_mgr.scenario_args) + assert exc_info.value.response['Error']['Code'] == error + + assert error in caplog.text diff --git a/python/example_code/stepfunctions/test/test_finish_state_machine_run.py b/python/example_code/stepfunctions/test/test_finish_state_machine_run.py new file mode 100644 index 00000000000..1f17444edf3 --- /dev/null +++ b/python/example_code/stepfunctions/test/test_finish_state_machine_run.py @@ -0,0 +1,52 @@ +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# SPDX-License-Identifier: Apache-2.0 + +import json +from botocore.exceptions import ClientError +import pytest + + +class MockManager: + def __init__(self, stub_runner, scenario_data, input_mocker): + self.scenario_data = scenario_data + self.run_arn = f'arn:aws:states:test-region:111122223333:/execution/test-run' + self.sm_arn = f'arn:aws:states:test-region:111122223333:/statemachine/test-sm' + self.scenario_args = [self.run_arn] + self.stub_runner = stub_runner + + def setup_stubs(self, error, stop_on, stubber): + with self.stub_runner(error, stop_on) as runner: + runner.add(stubber.stub_describe_execution, self.run_arn, self.sm_arn, 'RUNNING', '') + runner.add( + stubber.stub_describe_execution, self.run_arn, self.sm_arn, 'SUCCEEDED', + json.dumps({'message': 'test-message'})) + + +@pytest.fixture +def mock_mgr(stub_runner, scenario_data, input_mocker): + return MockManager(stub_runner, scenario_data, input_mocker) + + +def test_finish_state_machine_run(mock_mgr, capsys): + mock_mgr.setup_stubs(None, None, mock_mgr.scenario_data.stubber) + + mock_mgr.scenario_data.scenario.finish_state_machine_run(*mock_mgr.scenario_args) + + capt = capsys.readouterr() + assert 'running' in capt.out + assert 'ChatSFN: test-message' in capt.out + + +@pytest.mark.parametrize('error, stop_on_index', [ + ('TESTERROR-stub_describe_execution', 0), + ('TESTERROR-stub_describe_execution', 1), +]) +def test_finish_state_machine_run_error( + mock_mgr, caplog, error, stop_on_index): + mock_mgr.setup_stubs(error, stop_on_index, mock_mgr.scenario_data.stubber) + + with pytest.raises(ClientError) as exc_info: + mock_mgr.scenario_data.scenario.finish_state_machine_run(*mock_mgr.scenario_args) + assert exc_info.value.response['Error']['Code'] == error + + assert error in caplog.text diff --git a/python/example_code/stepfunctions/test/test_get_started_state_machines_integ.py b/python/example_code/stepfunctions/test/test_get_started_state_machines_integ.py new file mode 100644 index 00000000000..be1fccbb8f9 --- /dev/null +++ b/python/example_code/stepfunctions/test/test_get_started_state_machines_integ.py @@ -0,0 +1,34 @@ +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# SPDX-License-Identifier: Apache-2.0 + +import boto3 +import pytest + +from activities import Activity +from state_machines import StateMachine +from get_started_state_machines import StateMachineScenario + + +@pytest.fixture +def mock_wait(monkeypatch): + return + + +@pytest.mark.integ +def test_run_get_started_state_machines_integ(input_mocker, capsys): + stepfunctions_client = boto3.client('stepfunctions') + iam_client = boto3.client('iam') + scenario = StateMachineScenario( + Activity(stepfunctions_client), StateMachine(stepfunctions_client), iam_client) + + input_mocker.mock_answers([ + 'Testerson', # Username. + 4, # 'done' action. + 'y', # Cleanup. + ]) + + scenario.prerequisites('doc-example-test-state-machine-chat') + scenario.run_scenario('doc-example-test-activity', 'doc-example-test-state-machine') + + capt = capsys.readouterr() + assert "Thanks for watching!" in capt.out diff --git a/python/example_code/stepfunctions/test/test_prerequisites.py b/python/example_code/stepfunctions/test/test_prerequisites.py new file mode 100644 index 00000000000..d900935315c --- /dev/null +++ b/python/example_code/stepfunctions/test/test_prerequisites.py @@ -0,0 +1,54 @@ +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# SPDX-License-Identifier: Apache-2.0 + +from botocore.exceptions import ClientError +import pytest + + +class MockManager: + def __init__(self, stub_runner, scenario_data, input_mocker): + self.scenario_data = scenario_data + self.role_exists = False + self.role_name = 'test-role' + self.role_arn = f'arn:aws:iam:test-region:111122223333:/roles/{self.role_name}' + self.scenario_args = [self.role_name] + self.stub_runner = stub_runner + + def setup_stubs(self, error, stop_on, stubber): + with self.stub_runner(error, stop_on) as runner: + if self.role_exists: + runner.add(stubber.stub_get_role, self.role_name, self.role_arn) + else: + runner.add(stubber.stub_get_role, self.role_name, error_code='NoSuchEntity') + runner.add(stubber.stub_create_role, self.role_name, role_arn=self.role_arn) + + +@pytest.fixture +def mock_mgr(stub_runner, scenario_data, input_mocker): + return MockManager(stub_runner, scenario_data, input_mocker) + + +@pytest.mark.parametrize('role_exists', [True, False]) +def test_prerequisites(mock_mgr, capsys, role_exists): + mock_mgr.role_exists = role_exists + mock_mgr.setup_stubs(None, None, mock_mgr.scenario_data.iam_stubber) + + mock_mgr.scenario_data.scenario.prerequisites(*mock_mgr.scenario_args) + + assert mock_mgr.scenario_data.scenario.state_machine_role['RoleName'] == mock_mgr.role_name + assert mock_mgr.scenario_data.scenario.state_machine_role['Arn'] == mock_mgr.role_arn + + +@pytest.mark.parametrize('error, stop_on_index', [ + ('TESTERROR-stub_get_role', 0), + ('TESTERROR-stub_create_role', 1), +]) +def test_prerequisites_error( + mock_mgr, caplog, error, stop_on_index): + mock_mgr.setup_stubs(error, stop_on_index, mock_mgr.scenario_data.iam_stubber) + + with pytest.raises(ClientError) as exc_info: + mock_mgr.scenario_data.scenario.prerequisites(*mock_mgr.scenario_args) + assert exc_info.value.response['Error']['Code'] == error + + assert error in caplog.text diff --git a/python/example_code/stepfunctions/test/test_run_state_machine.py b/python/example_code/stepfunctions/test/test_run_state_machine.py new file mode 100644 index 00000000000..61c64a4b011 --- /dev/null +++ b/python/example_code/stepfunctions/test/test_run_state_machine.py @@ -0,0 +1,60 @@ +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# SPDX-License-Identifier: Apache-2.0 + +import json +from botocore.exceptions import ClientError +import pytest + + +class MockManager: + def __init__(self, stub_runner, scenario_data, input_mocker): + self.scenario_data = scenario_data + self.sm_arn = f'arn:aws:states:test-region:111122223333:/statemachine/test-sm' + self.act_arn = 'arn:aws:states:test-region:111122223333:/activity/test-act' + self.run_arn = f'arn:aws:states:test-region:111122223333:/execution/test-run' + self.token = 'test-token' + self.scenario_args = [self.sm_arn, self.act_arn] + self.scenario_out = self.run_arn + self.username = 'Testerson' + answers = [self.username, 2] + input_mocker.mock_answers(answers) + self.stub_runner = stub_runner + + def setup_stubs(self, error, stop_on, stubber): + with self.stub_runner(error, stop_on) as runner: + runner.add(stubber.stub_start_execution, self.sm_arn, self.run_arn, run_input={'name': self.username}) + runner.add( + stubber.stub_get_activity_task, self.act_arn, self.token, + json.dumps({'message': f'Hello, {self.username}', 'actions': ['test', 'done']})) + runner.add(stubber.stub_send_task_success, self.token, json.dumps({'action': 'done'})) + + +@pytest.fixture +def mock_mgr(stub_runner, scenario_data, input_mocker): + return MockManager(stub_runner, scenario_data, input_mocker) + + +def test_run_state_machine(mock_mgr, capsys): + mock_mgr.setup_stubs(None, None, mock_mgr.scenario_data.stubber) + + got_output = mock_mgr.scenario_data.scenario.run_state_machine(*mock_mgr.scenario_args) + + capt = capsys.readouterr() + assert got_output == mock_mgr.scenario_out + assert f"ChatSFN: Hello, {mock_mgr.username}" in capt.out + + +@pytest.mark.parametrize('error, stop_on_index', [ + ('TESTERROR-stub_start_execution', 0), + ('TESTERROR-stub_get_activity_task', 1), + ('TESTERROR-stub_send_task_success', 2), +]) +def test_run_state_machine_error( + mock_mgr, caplog, error, stop_on_index): + mock_mgr.setup_stubs(error, stop_on_index, mock_mgr.scenario_data.stubber) + + with pytest.raises(ClientError) as exc_info: + mock_mgr.scenario_data.scenario.run_state_machine(*mock_mgr.scenario_args) + assert exc_info.value.response['Error']['Code'] == error + + assert error in caplog.text diff --git a/python/example_code/stepfunctions/test/test_stepfunctions_basics.py b/python/example_code/stepfunctions/test/test_stepfunctions_basics.py deleted file mode 100644 index b5f7a7b2a9e..00000000000 --- a/python/example_code/stepfunctions/test/test_stepfunctions_basics.py +++ /dev/null @@ -1,195 +0,0 @@ -# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -# SPDX-License-Identifier: Apache-2.0 - -""" -Unit tests for stepfunctions_basics.py -""" - -import boto3 -from botocore.exceptions import ClientError -import pytest - -from stepfunctions_basics import StepFunctionsStateMachine - - -@pytest.mark.parametrize('error_code', [None, 'TestException']) -def test_create(make_stubber, error_code): - stepfunctions_client = boto3.client('stepfunctions') - stepfunctions_stubber = make_stubber(stepfunctions_client) - state_machine = StepFunctionsStateMachine(stepfunctions_client) - name = 'test-name' - definition = {'Comment': 'test-definition'} - role_arn = 'test-role-arn' - arn = 'test-arn' - - stepfunctions_stubber.stub_create_state_machine( - name, definition, role_arn, arn, error_code=error_code) - - if error_code is None: - got_arn = state_machine.create(name, definition, role_arn) - assert got_arn == arn - assert state_machine.state_machine_name == name - assert state_machine.state_machine_arn == arn - else: - with pytest.raises(ClientError) as exc_info: - state_machine.create(name, definition, role_arn) - assert exc_info.value.response['Error']['Code'] == error_code - - -@pytest.mark.parametrize('role_arn,error_code', [ - (None, None), ('test-role-arn', None), (None, 'TestException')]) -def test_update(make_stubber, role_arn, error_code): - stepfunctions_client = boto3.client('stepfunctions') - stepfunctions_stubber = make_stubber(stepfunctions_client) - state_machine = StepFunctionsStateMachine(stepfunctions_client) - state_machine.state_machine_arn = 'test-arn' - definition = {'Comment': 'test-definition'} - - stepfunctions_stubber.stub_update_state_machine( - state_machine.state_machine_arn, definition, role_arn, error_code=error_code) - - if error_code is None: - state_machine.update(definition, role_arn) - else: - with pytest.raises(ClientError) as exc_info: - state_machine.update(definition, role_arn) - assert exc_info.value.response['Error']['Code'] == error_code - - -@pytest.mark.parametrize('error_code', [None, 'TestException']) -def test_delete(make_stubber, error_code): - stepfunctions_client = boto3.client('stepfunctions') - stepfunctions_stubber = make_stubber(stepfunctions_client) - state_machine = StepFunctionsStateMachine(stepfunctions_client) - state_machine.state_machine_arn = 'test-state_machine_arn' - - stepfunctions_stubber.stub_delete_state_machine( - state_machine.state_machine_arn, error_code=error_code) - - if error_code is None: - state_machine.delete() - else: - with pytest.raises(ClientError) as exc_info: - state_machine.delete() - assert exc_info.value.response['Error']['Code'] == error_code - - -@pytest.mark.parametrize('found,error_code', [ - (True, None), (False, None), (True, 'TestException')]) -def test_find(make_stubber, found, error_code): - stepfunctions_client = boto3.client('stepfunctions') - stepfunctions_stubber = make_stubber(stepfunctions_client) - state_machine = StepFunctionsStateMachine(stepfunctions_client) - state_machine_name = 'test-state_machine_name' - state_machine_arn = 'test-arn' - machine_data = [('wrong-name', 'wrong-arn')] - if found: - machine_data.append((state_machine_name, state_machine_arn)) - state_machines = [ - {'name': name, 'stateMachineArn': arn} for name, arn in machine_data] - - stepfunctions_stubber.stub_list_state_machines( - state_machines, error_code=error_code) - - if error_code is None: - got_state_machine_arn = state_machine.find(state_machine_name) - if found: - assert got_state_machine_arn == state_machine_arn - else: - assert got_state_machine_arn is None - else: - with pytest.raises(ClientError) as exc_info: - state_machine.find(state_machine_name) - assert exc_info.value.response['Error']['Code'] == error_code - - -@pytest.mark.parametrize('error_code', [None, 'TestException']) -def test_describe(make_stubber, error_code): - stepfunctions_client = boto3.client('stepfunctions') - stepfunctions_stubber = make_stubber(stepfunctions_client) - state_machine = StepFunctionsStateMachine(stepfunctions_client) - state_machine.state_machine_arn = 'test-state_machine_arn' - name = 'test-name' - definition = 'test-definition' - role_arn = 'test-role_arn' - - stepfunctions_stubber.stub_describe_state_machine( - state_machine.state_machine_arn, name, definition, role_arn, - error_code=error_code) - - if error_code is None: - got_response = state_machine.describe() - assert got_response['name'] == name - assert got_response['definition'] == definition - assert got_response['roleArn'] == role_arn - assert got_response['stateMachineArn'] == state_machine.state_machine_arn - else: - with pytest.raises(ClientError) as exc_info: - state_machine.describe() - assert exc_info.value.response['Error']['Code'] == error_code - - -@pytest.mark.parametrize('run_input,error_code', [ - ({'test-key': 'test-value'}, None), - (None, None), - ({'test-key': 'test-value'}, 'TestException')]) -def test_start_run(make_stubber, run_input, error_code): - stepfunctions_client = boto3.client('stepfunctions') - stepfunctions_stubber = make_stubber(stepfunctions_client) - state_machine = StepFunctionsStateMachine(stepfunctions_client) - state_machine.state_machine_arn = 'test-arn' - run_name = 'test-run_name' - run_arn = 'test-run_arn' - - stepfunctions_stubber.stub_start_execution( - state_machine.state_machine_arn, run_name, run_arn, run_input, - error_code=error_code) - - if error_code is None: - got_run_arn = state_machine.start_run(run_name, run_input) - assert got_run_arn == run_arn - else: - with pytest.raises(ClientError) as exc_info: - state_machine.start_run(run_name, run_input) - assert exc_info.value.response['Error']['Code'] == error_code - - -@pytest.mark.parametrize('run_status,error_code', [ - ('test-run_status', None), (None, None), ('test-run_status', 'TestException')]) -def test_list_runs(make_stubber, run_status, error_code): - stepfunctions_client = boto3.client('stepfunctions') - stepfunctions_stubber = make_stubber(stepfunctions_client) - state_machine = StepFunctionsStateMachine(stepfunctions_client) - state_machine.state_machine_arn = 'test-arn' - runs = [{'name': name, 'executionArn': arn} for name, arn in - [('run-name-1', 'run-arn-1'), ('run-name-2', 'run-arn-2')]] - - stepfunctions_stubber.stub_list_executions( - state_machine.state_machine_arn, runs, run_status, error_code=error_code) - - if error_code is None: - got_runs = state_machine.list_runs(run_status) - assert [{'name': run['name'], 'executionArn': run['executionArn']} - for run in got_runs] == runs - else: - with pytest.raises(ClientError) as exc_info: - state_machine.list_runs(run_status) - assert exc_info.value.response['Error']['Code'] == error_code - - -@pytest.mark.parametrize('error_code', [None, 'TestException']) -def test_stop_run(make_stubber, error_code): - stepfunctions_client = boto3.client('stepfunctions') - stepfunctions_stubber = make_stubber(stepfunctions_client) - state_machine = StepFunctionsStateMachine(stepfunctions_client) - run_arn = 'test-run_arn' - cause = 'test cause' - - stepfunctions_stubber.stub_stop_execution(run_arn, cause, error_code=error_code) - - if error_code is None: - state_machine.stop_run(run_arn, cause) - else: - with pytest.raises(ClientError) as exc_info: - state_machine.stop_run(run_arn, cause) - assert exc_info.value.response['Error']['Code'] == error_code diff --git a/python/test_tools/stepfunctions_stubber.py b/python/test_tools/stepfunctions_stubber.py index 982ae08af84..9379c4c1c3a 100644 --- a/python/test_tools/stepfunctions_stubber.py +++ b/python/test_tools/stepfunctions_stubber.py @@ -31,7 +31,7 @@ def __init__(self, client, use_stubs=True): def stub_create_state_machine( self, name, definition, role_arn, state_machine_arn, error_code=None): expected_params = { - 'name': name, 'definition': json.dumps(definition), 'roleArn': role_arn} + 'name': name, 'definition': definition, 'roleArn': role_arn} response = { 'stateMachineArn': state_machine_arn, 'creationDate': datetime.now()} self._stub_bifurcator( @@ -62,19 +62,19 @@ def stub_list_state_machines(self, state_machines, error_code=None): 'list_state_machines', expected_params, response, error_code=error_code) def stub_describe_state_machine( - self, state_machine_arn, name, definition, role_arn, error_code=None): + self, state_machine_arn, name, definition, status, role_arn, error_code=None): expected_params = {'stateMachineArn': state_machine_arn} response = { 'name': name, 'definition': definition, 'roleArn': role_arn, - 'stateMachineArn': state_machine_arn, 'type': 'STANDARD', + 'stateMachineArn': state_machine_arn, 'status': status, 'type': 'STANDARD', 'creationDate': datetime.now()} self._stub_bifurcator( 'describe_state_machine', expected_params, response, error_code=error_code) def stub_start_execution( - self, state_machine_arn, run_name, run_arn, run_input=None, + self, state_machine_arn, run_arn, run_input=None, error_code=None): - expected_params = {'stateMachineArn': state_machine_arn, 'name': run_name} + expected_params = {'stateMachineArn': state_machine_arn} if run_input is not None: expected_params['input'] = json.dumps(run_input) response = {'executionArn': run_arn, 'startDate': datetime.now()} @@ -93,8 +93,46 @@ def stub_list_executions( self._stub_bifurcator( 'list_executions', expected_params, response, error_code=error_code) + def stub_describe_execution(self, run_arn, sm_arn, status, output, error_code=None): + expected_params = {'executionArn': run_arn} + response = { + 'executionArn': run_arn, 'stateMachineArn': sm_arn, 'status': status, 'output': output, + 'startDate': datetime.now()} + self._stub_bifurcator( + 'describe_execution', expected_params, response, error_code=error_code) + def stub_stop_execution(self, run_arn, cause, error_code=None): expected_params = {'executionArn': run_arn, 'cause': cause} response = {'stopDate': datetime.now()} self._stub_bifurcator( 'stop_execution', expected_params, response, error_code=error_code) + + def stub_list_activities(self, activities, error_code=None): + expected_params = {} + response = {'activities': activities} + self._stub_bifurcator( + 'list_activities', expected_params, response, error_code=error_code) + + def stub_create_activity(self, name, arn, error_code=None): + expected_params = {'name': name} + response = {'activityArn': arn, 'creationDate': datetime.now()} + self._stub_bifurcator( + 'create_activity', expected_params, response, error_code=error_code) + + def stub_get_activity_task(self, act_arn, token, act_input, error_code=None): + expected_params = {'activityArn': act_arn} + response = {'taskToken': token, 'input': act_input} + self._stub_bifurcator( + 'get_activity_task', expected_params, response, error_code=error_code) + + def stub_send_task_success(self, token, output, error_code=None): + expected_params = {'taskToken': token, 'output': output} + response = {} + self._stub_bifurcator( + 'send_task_success', expected_params, response, error_code=error_code) + + def stub_delete_activity(self, act_arn, error_code=None): + expected_params = {'activityArn': act_arn} + response = {} + self._stub_bifurcator( + 'delete_activity', expected_params, response, error_code=error_code) diff --git a/resources/sample_files/chat_sfn_state_machine.json b/resources/sample_files/chat_sfn_state_machine.json new file mode 100644 index 00000000000..b106e69f5f2 --- /dev/null +++ b/resources/sample_files/chat_sfn_state_machine.json @@ -0,0 +1,76 @@ +{ + "Comment": "A non-AI simplistic chat simulator", + "StartAt": "Greeting", + "States": { + "Greeting": { + "Type": "Pass", + "Parameters": { + "message.$": "States.Format('Hello, {}!', $.name)" + }, + "Next": "GetInput" + }, + "GetInput": { + "Type": "Task", + "Resource": "{{DOC_EXAMPLE_ACTIVITY_ARN}}", + "Parameters": { + "message.$": "$.message", + "actions.$": "States.Array('song', 'poem', 'story', 'done')" + }, + "TimeoutSeconds": 300, + "Next": "Choice" + }, + "Choice": { + "Type": "Choice", + "Choices": [ + { + "Variable": "$.action", + "StringEquals": "song", + "Next": "Song" + }, + { + "Variable": "$.action", + "StringEquals": "poem", + "Next": "Poem" + }, + { + "Variable": "$.action", + "StringEquals": "story", + "Next": "Story" + }, + { + "Variable": "$.action", + "StringEquals": "done", + "Next": "Done" + } + ] + }, + "Song": { + "Type": "Pass", + "Result": { + "message": "My song has no tune but you can still dance to it." + }, + "Next": "GetInput" + }, + "Poem": { + "Type": "Pass", + "Result": { + "message": "This is my poem but it doesn't rhyme." + }, + "Next": "GetInput" + }, + "Story": { + "Type": "Pass", + "Result": { + "message": "This story has neither beginning, middle, nor end." + }, + "Next": "GetInput" + }, + "Done": { + "Type": "Pass", + "End": true, + "Result": { + "message": "Thanks for chatting." + } + } + } +} From eac48353c0163678c1540dc44a0c51bf974bf903 Mon Sep 17 00:00:00 2001 From: Eric Shepherd Date: Wed, 22 Feb 2023 08:26:24 -0500 Subject: [PATCH 09/17] Dockerfile fixes (#4377) * Dockerfile compatibility for newer Swift versions Versions of the Swift docker image for version 5.7 and later have differences that prevented the Dockerfile's instructions from working correctly, and did not work with the `swiftbuild` script. This is fixed in this commit thusly: * Changed the Dockerfile to pull the most recent Swift instead of Swift 5.6. This is done because the Swift 5.6 docker image doesn't work for ARM Macs. * Changed the name of `swiftbuild` to `swiftbuild.py` to clarify that it's a Python script. * Changed the Dockerfile to invoke `swiftbuild` by directly executing `python3.10 swiftbuild.py`. This both uses the name for the Python installed on the more recent image and is updated for the new name of the script. * Reword dockerfile comment * Tweak wording one more time. --------- Co-authored-by: Eric Shepherd Co-authored-by: Steven Meyer <108885656+meyertst-aws@users.noreply.github.com> --- swift/Dockerfile | 9 +++++---- swift/tools/{swiftbuild => swiftbuild.py} | 0 2 files changed, 5 insertions(+), 4 deletions(-) rename swift/tools/{swiftbuild => swiftbuild.py} (100%) diff --git a/swift/Dockerfile b/swift/Dockerfile index 38ccc768919..7980598cb49 100644 --- a/swift/Dockerfile +++ b/swift/Dockerfile @@ -2,10 +2,11 @@ # Status: Beta # GA updates: https://github.com/awsdocs/aws-doc-sdk-examples/issues/4132 -# Although some examples work on earlier versions of Swift, the -# version below will run all examples. +# Our examples have various minimum Swift versions, depending on what features +# of the SDK they use. Here we will just pull the most recent version of the +# official Swift Docker image. -FROM swift:5.6 +FROM swift # Install Python for the scripts and tools. @@ -16,5 +17,5 @@ RUN apt-get update && \ COPY . /swift/ RUN cd /swift/example_code/ && \ - ../tools/swiftbuild */* + python3.10 ../tools/swiftbuild.py */* CMD ["bash"] diff --git a/swift/tools/swiftbuild b/swift/tools/swiftbuild.py similarity index 100% rename from swift/tools/swiftbuild rename to swift/tools/swiftbuild.py From 2c80a773af03e96015007ff2e1b958034f7336ef Mon Sep 17 00:00:00 2001 From: Steven Meyer <108885656+meyertst-aws@users.noreply.github.com> Date: Wed, 22 Feb 2023 09:24:46 -0500 Subject: [PATCH 10/17] memory leak fixed (#4427) remove new call for the stream buffer. --- .../transfer-manager/transferOnStream.cpp | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/cpp/example_code/transfer-manager/transferOnStream.cpp b/cpp/example_code/transfer-manager/transferOnStream.cpp index 5f2fdd43ffa..4cf31dd5c9b 100644 --- a/cpp/example_code/transfer-manager/transferOnStream.cpp +++ b/cpp/example_code/transfer-manager/transferOnStream.cpp @@ -38,7 +38,6 @@ using namespace Aws::Utils; using namespace Aws::S3; static const size_t BUFFER_SIZE = 512 * 1024 * 1024; // 512MB Buffer -static size_t g_file_size = 0; /** * In-memory stream implementation @@ -48,11 +47,11 @@ class MyUnderlyingStream : public Aws::IOStream public: using Base = Aws::IOStream; // Provide a customer-controlled streambuf to hold data from the bucket. - MyUnderlyingStream(std::streambuf* buf) + explicit MyUnderlyingStream(std::streambuf* buf) : Base(buf) {} - virtual ~MyUnderlyingStream() = default; + ~MyUnderlyingStream() override = default; }; int main(int argc, char** argv) @@ -84,6 +83,13 @@ int main(int argc, char** argv) Aws::Transfer::TransferManagerConfiguration transfer_config(executor.get()); transfer_config.s3Client = s3_client; + // Create buffer to hold data received by the data stream. + Aws::Utils::Array buffer(BUFFER_SIZE); + + // The local variable 'streamBuffer' is captured by reference in a lambda. + // It must persist until all downloading by the 'transfer_manager' is complete. + Stream::PreallocatedStreamBuf streamBuffer(buffer.GetUnderlyingData(), buffer.GetLength()); + auto transfer_manager = Aws::Transfer::TransferManager::Create(transfer_config); auto uploadHandle = transfer_manager->UploadFile(LOCAL_FILE, BUCKET, KEY, "text/plain", Aws::Map()); @@ -101,14 +107,11 @@ int main(int argc, char** argv) // Verify that the upload retrieved the expected amount of data. assert(uploadHandle->GetBytesTotalSize() == uploadHandle->GetBytesTransferred()); - g_file_size = uploadHandle->GetBytesTotalSize(); - // Create buffer to hold data received by the data stream. - Aws::Utils::Array buffer(BUFFER_SIZE); auto downloadHandle = transfer_manager->DownloadFile(BUCKET, KEY, [&]() { //Define a lambda expression for the callback method parameter to stream back the data. - return Aws::New("TestTag", Aws::New("TestTag", buffer.GetUnderlyingData(), BUFFER_SIZE)); + return Aws::New("TestTag", &streamBuffer); }); downloadHandle->WaitUntilFinished();// Block calling thread until download is complete. auto downStat = downloadHandle->GetStatus(); @@ -129,7 +132,8 @@ int main(int argc, char** argv) // Write the buffered data to local file copy. Aws::OFStream storeFile(LOCAL_FILE_COPY.c_str(), Aws::OFStream::out | Aws::OFStream::trunc); - storeFile.write((const char*)(buffer.GetUnderlyingData()), downloadHandle->GetBytesTransferred()); + storeFile.write((const char*)(buffer.GetUnderlyingData()), + static_cast(downloadHandle->GetBytesTransferred())); storeFile.close(); std::cout << "File dumped to local file finished. You can verify the two files' content using md5sum." << std::endl; From b9510c9093017aa28c9524e26f6cdc6eb889caf2 Mon Sep 17 00:00:00 2001 From: Scott Macdonald <57190223+scmacdon@users.noreply.github.com> Date: Wed, 22 Feb 2023 13:47:09 -0500 Subject: [PATCH 11/17] Add Java S3 v2 code examples that show how to handle DEEP_ARCHIVE use cases (#4413) * Add files via upload * Update config.properties * Add files via upload * Update README.md * Update README.md * Update README.md * Update s3_metadata.yaml * Update README.md * Update README.md * Update README.md --------- Co-authored-by: Steven Meyer <108885656+meyertst-aws@users.noreply.github.com> --- .doc_gen/metadata/s3_metadata.yaml | 5 +- javav2/example_code/s3/README.md | 95 ++++++++++--------- .../com/example/s3/CopyObjectStorage.java | 78 +++++++++++++++ .../example/s3/GetObjectRestoreStatus.java | 61 ++++++++++++ .../s3/src/main/resources/config.properties | 4 + .../s3/src/test/java/AmazonS3Test.java | 84 +++++++++------- 6 files changed, 248 insertions(+), 79 deletions(-) create mode 100644 javav2/example_code/s3/src/main/java/com/example/s3/CopyObjectStorage.java create mode 100644 javav2/example_code/s3/src/main/java/com/example/s3/GetObjectRestoreStatus.java diff --git a/.doc_gen/metadata/s3_metadata.yaml b/.doc_gen/metadata/s3_metadata.yaml index 827c4de44b8..e0387b91a7c 100644 --- a/.doc_gen/metadata/s3_metadata.yaml +++ b/.doc_gen/metadata/s3_metadata.yaml @@ -692,9 +692,12 @@ s3_HeadObject: github: javav2/example_code/s3 sdkguide: excerpts: - - description: + - description: Determine the content type of an object. snippet_tags: - s3.java2.getobjectcontenttype.main + - description: Get the restore status of an object. + snippet_tags: + - s3.java2.get.restore.status.main Ruby: versions: - sdk_version: 3 diff --git a/javav2/example_code/s3/README.md b/javav2/example_code/s3/README.md index b5a35487645..4438da4d1b5 100644 --- a/javav2/example_code/s3/README.md +++ b/javav2/example_code/s3/README.md @@ -19,60 +19,64 @@ Amazon S3 is cloud object storage with industry-leading scalability, data availa You will find these examples that use the **S3Client** class: -- [Abort a multipart upload to an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/AbortMultipartUpload.java) (AbortMultipartUpload command) -- [Copy an object from one S3 bucket to another S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/CopyObject.java) (CopyObject command) -- [Create and delete an access point for an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/CreateAccessPoint.java) (CreateAccessPoint command) -- [Create an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/CreateBucket.java) (CreateBucket command) + +- [Abort a multipart upload to an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/AbortMultipartUpload.java) (AbortMultipartUpload command) +- [Add a bucket policy to an existing Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/SetBucketPolicy.java) (PutBucketPolicy command) +- [Add, update, and delete a lifecycle configuration](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/LifecycleConfiguration.java) (PutBucketLifecycleConfiguration command) +- [Copy an object from one Amazon S3 bucket to another one](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/CopyObject.java) (CopyObject command) +- [Copy an Amazon S3 object and set its storage](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/CopyObjectStorage.java) (CopyObject command) +- [Create an S3ControlClient object using a virtual private cloud (VPC) URL](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/VPCCreateJob.java) (createJob command) +- [Create and delete an access point for an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/CreateAccessPoint.java) (CreateAccessPoint command) +- [Create an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/CreateBucket.java) (CreateBucket command) - [Create an Amazon S3 batch job](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/CreateJob.java) (CreateJob command) -- [Delete a policy from an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/DeleteBucketPolicy.java) (DeleteBucketPolicy command) -- [Delete multiple objects from an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/DeleteMultiObjects.java) (DeleteObjects command) -- [Delete the website configuration for an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/DeleteWebsiteConfiguration.java) (DeleteBucketWebsite command) -- [Use the S3Presigner client to create a presigned URL and upload an object to an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/GeneratePresignedUrlAndUploadObject.java) (PresignPutObject command) -- [Use the S3Presigner client to create a presigned URL and upload an object that contains metadata to an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/GeneratePresignedUrlMetadata.java) (PresignPutObject command) -- [Use the S3Presigner client to create a presigned URL and upload a PNG image file to an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/GeneratePresignedUrlUploadImage.java) (PresignPutObject command) -- [Get the access control list (ACL) for an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/GetAcl.java) (GetObjectAcl command) -- [Get the bucket policy for an existing S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/GetBucketPolicy.java) (GetBucketPolicy command) -- [Get the content type of an object in an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/GetObjectContentType.java) (HeadObject command) -- [Read data from an S3 object](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/GetObjectData.java) (GetObjectAsBytes command) -- [Get an object located in an S3 bucket by using the S3Presigner client object](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/GetObjectPresignedUrl.java) (PresignGetObject command) -- [Read tags that belong to an object located in an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/GetObjectTags.java) (GetObjectTagging command) -- [Get an URL for an object located in an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/GetObjectUrl.java) (GetUrl command) -- [Use the AWS Key Management Service to encrypt data prior to placing the data into an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/KMSEncryptionExample.java) (Encrypt command) -- [Add, update, and delete a Lifecycle configuration](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/LifecycleConfiguration.java) (PutBucketLifecycleConfiguration command) -- [Retrieve a list of in-progress multipart uploads.](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/ListMultipartUploads.java) (ListMultipartUploads command) -- [Get a list of objects located in a given S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/ListObjects.java) (ListObjects command) -- [Set tags for an object in an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/ManagingObjectTags.java) (putObject command) -- [Get a presigned object using a Java Swing app.](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/PresignedSwing.java) (using Swing command) -- [Set the logging parameters for an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/PutBucketLogging.java) (PutObject command) -- [Upload an object to an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/PutObject.java) (PutObject commands) -- [Upload an object with metadata to an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/PutObjectMetadata.java) (PutObject command) -- [Upload an object with retention configuration to an S3 object](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/PutObjectRetention.java) (PutObjectRetention command) -- [Restore an archived copy of an object back into an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/RestoreObject.java) (RestoreObject command) -- [Delete an empty S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/S3BucketDeletion.java) (DeleteBucket command) -- [Create, list and delete an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/S3BucketOps.java) (various commands) -- [Manage cross-origin resource sharing (CORS) for an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/S3Cors.java) (PutBucketCors command) +- [Create, list and delete an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/S3BucketOps.java) (various commands) +- [Delete a policy from an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/DeleteBucketPolicy.java) (DeleteBucketPolicy command) +- [Delete multiple objects from an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/DeleteMultiObjects.java) (DeleteObjects command) +- [Delete the website configuration for an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/DeleteWebsiteConfiguration.java) (DeleteBucketWebsite command) +- [Delete an empty Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/S3BucketDeletion.java) (DeleteBucket command) +- [Get the access control list (ACL) for an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/GetAcl.java) (GetObjectAcl command) +- [Get the bucket policy for an existing Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/GetBucketPolicy.java) (GetBucketPolicy command) +- [Get the content type of an object in an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/GetObjectContentType.java) (HeadObject command) +- [Get an object located in an Amazon S3 bucket by using the S3Presigner client object](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/GetObjectPresignedUrl.java) (PresignGetObject command) +- [Get an object restore status](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/GetObjectRestoreStatus.java) (headObject command) +- [Get an URL for an object located in an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/GetObjectUrl.java) (GetUrl command) - [Get log information](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/S3Log.java) (ListBuckets command) -- [Set a new access control list (ACL) for an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/SetAcl.java) (PutBucketAcl command) -- [Add a bucket policy to an existing S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/SetBucketPolicy.java) (PutBucketPolicy command) -- [Set the website configuration for an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/SetWebsiteConfiguration.java) (PutBucketWebsite command) -- [Create an S3ControlClient object using a virtual private cloud (VPC) URL](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/VPCCreateJob.java) (createJob command) +- [Get a list of objects located in a given Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/ListObjects.java) (ListObjects command) +- [Manage cross-origin resource sharing (CORS) for an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/S3Cors.java) (PutBucketCors command) +- [Read data from an Amazon S3 object](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/GetObjectData.java) (GetObjectAsBytes command) +- [Read tags that belong to an object located in an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/GetObjectTags.java) (GetObjectTagging command) +- [Restore an archived copy of an object back into an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/RestoreObject.java) (RestoreObject command) +- [Retrieve a list of in-progress multipart uploads](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/ListMultipartUploads.java) (ListMultipartUploads command) +- [Set tags for an object in an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/ManagingObjectTags.java) (putObject command) +- [Set the logging parameters for an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/PutBucketLogging.java) (PutObject command) +- [Set a new access control list (ACL) for an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/SetAcl.java) (PutBucketAcl command) +- [Set the website configuration for an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/SetWebsiteConfiguration.java) (PutBucketWebsite command) - [Set up an S3Client object using a virtual private cloud (VPC) URL](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/VPCS3Example.java) (EndpointOverride command) +- [Upload an object to an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/PutObject.java) (PutObject commands) +- [Upload an object with metadata to an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/PutObjectMetadata.java) (PutObject command) +- [Upload an object with retention configuration to an Amazon S3 object](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/PutObjectRetention.java) (PutObjectRetention command) +- [Use the AWS Key Management Service to encrypt data prior to placing the data into an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/KMSEncryptionExample.java) (Encrypt command) +The following examples use the **S3Presigner** class: +- [Use the S3Presigner client to create a presigned URL and upload an object to an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/GeneratePresignedUrlAndUploadObject.java) (PresignPutObject command) +- [Use the S3Presigner client to create a presigned URL and upload an object that contains metadata to an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/GeneratePresignedUrlMetadata.java) (PresignPutObject command) +- [Use the S3Presigner client to create a presigned URL and upload a PNG image file to an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/GeneratePresignedUrlUploadImage.java) (PresignPutObject command) +- [Get a presigned object using a Java Swing app](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/PresignedSwing.java) (using Swing command) -You will find these examples that use the **S3AsyncClient** class: +The following examples use the **S3AsyncClient** class: - [Create an Amazon S3 object using the Async client](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/async/CreateBucketAsync.java) (CreateBucket command) - [Read data from an Amazon S3 object using the Async client](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/async/GetObjectDataAsync.java) (GetObject command) - [Use the asynchronous client to place an object into an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/async/S3AsyncOps.java) (PutObject command) -You will find these examples that use the **S3TransferManager** class: +The following examples use the **S3TransferManager** class: -- [Download a file from an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/transfermanager/FileDownload.java) (DownloadFile command) -- [Download all objects in an S3 bucket to a local directory](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/transfermanager/DownloadToDirectory.java) (DownloadDirectory command) -- [Copy an object to another S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/transfermanager/ObjectCopy.java) (CopyRequest command) -- [Upload a file to an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/transfermanager/FileUpload.java) (UploadFile command) -- [Upload a local directory to an S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/transfermanager/DirectoryUpload.java) (UploadDirectory command) +- [Download a file from an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/transfermanager/FileDownload.java) (DownloadFile command) +- [Download all objects in an Amazon S3 bucket to a local directory](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/transfermanager/DownloadToDirectory.java) (DownloadDirectory command) +- [Copy an object to another Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/transfermanager/ObjectCopy.java) (CopyRequest command) +- [Upload a file to an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/transfermanager/FileUpload.java) (UploadFile command) +- [Upload a local directory to an Amazon S3 bucket](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javav2/example_code/s3/src/main/java/com/example/s3/transfermanager/DirectoryUpload.java) (UploadDirectory command) ### Scenario @@ -81,7 +85,6 @@ You will find these examples that use the **S3TransferManager** class: ### Cross-service - - [Build a Spring Boot web application that streams Amazon S3 content over HTTP](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/javav2/usecases/create_spring_stream_app) - [Detect PPE in images with Amazon Rekognition](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/javav2/usecases/creating_lambda_ppe) - [Create a dynamic web application that analyzes photos using the AWS SDK for Java](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/javav2/usecases/creating_photo_analyzer_app) @@ -124,6 +127,9 @@ Define these values to successfully run the JUnit tests: - **encryptObjectPath** - The path to a TXT file to encrypt and place into a Amazon S3 bucket. This value is required for the **KMSEncryptionExample** test. - **encryptOutPath** - The path where a text file is written to after it's decrypted. This value is required for the **KMSEncryptionExample** test. - **keyId** - The id of the AWS KMS key to use to encrypt/decrypt the data. You can obtain the key ID value from the AWS Management Console. This value is required for the **KMSEncryptionExample** test. +- **restoreImagePath** - The path of an image file used in the restore tests. For example, **C:/AWS/Sea10.jpg**. +- **restoreBucket** - The name of a bucket used in the restore tests. +- **restoreImageName** - The name of an image file used in the restore tests. For example, **Sea10.jpg**. ### Sample policy text @@ -194,6 +200,9 @@ If you do not define the correct values in the properties file, your JUnit tests * [Developer guide - AWS SDK for Java 2.x](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/get-started.html). * [Amazon Simple Storage Service User Guide](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html). * [Interface S3Client](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/services/s3/S3Client.html). +* [Interface S3Presigner](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/services/s3/presigner/S3Presigner.html). +* [Interface S3TransferManager](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/transfer/s3/S3TransferManager.html). +* [Interface S3AsyncClient](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/services/s3/S3AsyncClient.html). Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 diff --git a/javav2/example_code/s3/src/main/java/com/example/s3/CopyObjectStorage.java b/javav2/example_code/s3/src/main/java/com/example/s3/CopyObjectStorage.java new file mode 100644 index 00000000000..88b9fe4d58e --- /dev/null +++ b/javav2/example_code/s3/src/main/java/com/example/s3/CopyObjectStorage.java @@ -0,0 +1,78 @@ +//snippet-sourcedescription:[CopyObjectStorage.java demonstrates how to copy an object and set its storage.] +//snippet-keyword:[AWS SDK for Java v2] +//snippet-service:[Amazon S3] +/* + Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + SPDX-License-Identifier: Apache-2.0 +*/ + +package com.example.s3; + +// snippet-start:[s3.java2.copy_store.import] +import software.amazon.awssdk.auth.credentials.ProfileCredentialsProvider; +import software.amazon.awssdk.regions.Region; +import software.amazon.awssdk.services.s3.S3Client; +import software.amazon.awssdk.services.s3.model.CopyObjectRequest; +import software.amazon.awssdk.services.s3.model.S3Exception; +// snippet-end:[s3.java2.copy_store.import] + +/** + * Before running this Java V2 code example, set up your development environment, including your credentials. + * + * For more information, see the following documentation topic: + * + * https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/get-started.html + */ + +public class CopyObjectStorage { + + public static void main(String[] args) { + final String usage = "\n" + + "Usage:\n" + + " \n\n" + + "Where:\n" + + " objectKey - The name of the object (for example, book.pdf).\n\n" + + " fromBucket - The S3 bucket name that contains the object (for example, bucket1).\n" + + " toBucket - The S3 bucket to copy the object to (for example, bucket2).\n"; + + if (args.length != 3) { + System.out.println(usage); + System.exit(1); + } + + String objectKey = args[0]; + String fromBucket = args[1]; + String toBucket = args[2]; + + ProfileCredentialsProvider credentialsProvider = ProfileCredentialsProvider.create(); + Region region = Region.US_EAST_1; + S3Client s3 = S3Client.builder() + .region(region) + .credentialsProvider(credentialsProvider) + .build(); + + copyBucketObject (s3, fromBucket, objectKey, toBucket); + s3.close(); + } + + // snippet-start:[s3.java2.copy_store.main] + public static void copyBucketObject (S3Client s3, String fromBucket, String objectKey, String toBucket) { + CopyObjectRequest copyReq = CopyObjectRequest.builder() + .sourceBucket(fromBucket) + .sourceKey(objectKey) + .storageClass("DEEP_ARCHIVE") + .destinationBucket(toBucket) + .destinationKey(objectKey) + .build(); + + try { + s3.copyObject(copyReq); + System.out.println("You have successfully stored "+objectKey +" to DEEP_ARCHIVE."); + + } catch (S3Exception e) { + System.err.println(e.awsErrorDetails().errorMessage()); + System.exit(1); + } + } + // snippet-end:[s3.java2.copy_store.main] +} diff --git a/javav2/example_code/s3/src/main/java/com/example/s3/GetObjectRestoreStatus.java b/javav2/example_code/s3/src/main/java/com/example/s3/GetObjectRestoreStatus.java new file mode 100644 index 00000000000..95c6384f2fc --- /dev/null +++ b/javav2/example_code/s3/src/main/java/com/example/s3/GetObjectRestoreStatus.java @@ -0,0 +1,61 @@ +// snippet-comment:[These are tags for the AWS doc team's sample catalog. Do not remove.] +// snippet-sourcedescription:[GetObjectRestoreStatus.java demonstrates how to get the restore status of an Amazon Simple Storage Service (Amazon S3) object.] +//snippet-keyword:[AWS SDK for Java v2] +//snippet-service:[Amazon S3] + +package com.example.s3; + +// snippet-start:[s3.java2.get.restore.status.import] +import software.amazon.awssdk.auth.credentials.ProfileCredentialsProvider; +import software.amazon.awssdk.regions.Region; +import software.amazon.awssdk.services.s3.S3Client; +import software.amazon.awssdk.services.s3.model.HeadObjectRequest; +import software.amazon.awssdk.services.s3.model.HeadObjectResponse; +import software.amazon.awssdk.services.s3.model.S3Exception; +// snippet-end:[s3.java2.get.restore.status.import] + +public class GetObjectRestoreStatus { + public static void main(String[] args) { + final String usage = "\n" + + "Usage:\n" + + " \n\n" + + "Where:\n" + + " bucketName - The Amazon S3 bucket name. \n\n"+ + " keyName - A key name that represents the object. \n\n"; + + if (args.length != 2) { + System.out.println(usage); + System.exit(1); + } + + String bucketName = args[0]; + String keyName = args[1]; + ProfileCredentialsProvider credentialsProvider = ProfileCredentialsProvider.create(); + Region region = Region.US_EAST_1; + S3Client s3 = S3Client.builder() + .region(region) + .credentialsProvider(credentialsProvider) + .build(); + + checkStatus(s3,bucketName,keyName); + s3.close(); + } + + // snippet-start:[s3.java2.get.restore.status.main] + public static void checkStatus(S3Client s3, String bucketName, String keyName) { + try { + HeadObjectRequest headObjectRequest = HeadObjectRequest.builder() + .bucket(bucketName) + .key(keyName) + .build(); + + HeadObjectResponse response = s3.headObject(headObjectRequest); + System.out.println("The Amazon S3 object restoration status is "+response.restore()); + + } catch (S3Exception e) { + System.err.println(e.awsErrorDetails().errorMessage()); + System.exit(1); + } + } + // snippet-end:[s3.java2.get.restore.status.main] +} diff --git a/javav2/example_code/s3/src/main/resources/config.properties b/javav2/example_code/s3/src/main/resources/config.properties index 0ad8cbe3cca..5a370785f22 100644 --- a/javav2/example_code/s3/src/main/resources/config.properties +++ b/javav2/example_code/s3/src/main/resources/config.properties @@ -14,3 +14,7 @@ encryptObjectName = encryptObjectPath = encryptOutPath = keyId = +restoreImagePath = +restoreBucket = +restoreImageName = + diff --git a/javav2/example_code/s3/src/test/java/AmazonS3Test.java b/javav2/example_code/s3/src/test/java/AmazonS3Test.java index 1c74d9d191d..93bb4b33c12 100644 --- a/javav2/example_code/s3/src/test/java/AmazonS3Test.java +++ b/javav2/example_code/s3/src/test/java/AmazonS3Test.java @@ -24,8 +24,8 @@ public class AmazonS3Test { private static S3Presigner presigner; private static S3ControlClient s3ControlClient; - // Define the data members required for the tests - private static String bucketName = ""; + // Define the data members required for the tests. + private static String bucketName = ""; private static String objectKey = ""; private static String objectPath = ""; private static String toBucket = ""; @@ -38,16 +38,19 @@ public class AmazonS3Test { private static String accountId=""; private static String accessPointName=""; - //Used for the Encryption test + // Used for the encryption test. private static String encryptObjectName=""; private static String encryptObjectPath=""; private static String encryptOutPath=""; private static String keyId=""; + // Used for restore tests. + private static String restoreImagePath = ""; + private static String restoreBucket = ""; + private static String restoreImageName = ""; + @BeforeAll public static void setUp() throws IOException { - - // Run tests on Real AWS Resources ProfileCredentialsProvider credentialsProvider = ProfileCredentialsProvider.create(); s3 = S3Client.builder() .region(Region.US_EAST_1) @@ -72,11 +75,9 @@ public static void setUp() throws IOException { System.out.println("Sorry, unable to find config.properties"); return; } - - //load a properties file from class path, inside static method prop.load(input); - // Populate the data members required for all tests + // Populate the data members required for all tests. bucketName = prop.getProperty("bucketName"); objectKey = prop.getProperty("objectKey"); objectPath= prop.getProperty("objectPath"); @@ -93,6 +94,9 @@ public static void setUp() throws IOException { encryptObjectPath = prop.getProperty("encryptObjectPath"); encryptOutPath = prop.getProperty("encryptOutPath"); keyId = prop.getProperty("keyId"); + restoreImagePath = prop.getProperty("restoreImagePath"); + restoreBucket = prop.getProperty("restoreBucket"); + restoreImageName = prop.getProperty("restoreImageName"); } catch (IOException ex) { ex.printStackTrace(); @@ -109,15 +113,13 @@ public void whenInitializingAWSS3Service_thenNotNull() { @Test @Order(2) public void createBucket() { - - CreateBucket.createBucket(s3,bucketName); - System.out.println("Test 2 passed"); + CreateBucket.createBucket(s3,bucketName); + System.out.println("Test 2 passed"); } @Test @Order(3) public void putObject() { - String result = PutObject.putS3Object(s3, bucketName, objectKey, objectPath); assertTrue(!result.isEmpty()); System.out.println("Test 3 passed"); @@ -126,43 +128,38 @@ public void putObject() { @Test @Order(4) public void copyBucketObject() { - - String result = CopyObject.copyBucketObject(s3,bucketName,objectKey,toBucket); - assertTrue(!result.isEmpty()); - System.out.println("Test 4 passed"); - } + String result = CopyObject.copyBucketObject(s3,bucketName,objectKey,toBucket); + assertTrue(!result.isEmpty()); + System.out.println("Test 4 passed"); + } @Test @Order(5) public void setBucketPolicy() { - - String polText = SetBucketPolicy.getBucketPolicyFromFile(policyText); - assertTrue(!polText.isEmpty()); - SetBucketPolicy.setPolicy(s3, bucketNamePolicy, polText); - System.out.println("Test 5 passed"); + String polText = SetBucketPolicy.getBucketPolicyFromFile(policyText); + assertTrue(!polText.isEmpty()); + SetBucketPolicy.setPolicy(s3, bucketNamePolicy, polText); + System.out.println("Test 5 passed"); } @Test @Order(6) public void getBucketPolicy() { - - String polText = GetBucketPolicy.getPolicy(s3, bucketNamePolicy); - assertTrue(!polText.isEmpty()); - System.out.println("Test 6 passed"); + String polText = GetBucketPolicy.getPolicy(s3, bucketNamePolicy); + assertTrue(!polText.isEmpty()); + System.out.println("Test 6 passed"); } @Test @Order(7) public void deleteBucketPolicy() { - - DeleteBucketPolicy.deleteS3BucketPolicy(s3,bucketNamePolicy ); - System.out.println("Test 7 passed"); + DeleteBucketPolicy.deleteS3BucketPolicy(s3,bucketNamePolicy ); + System.out.println("Test 7 passed"); } @Test @Order(8) - public void setBucketACL() - { + public void setBucketACL() { System.out.format("Running Amazon S3 Test 8"); System.out.println("for object: " + objectKey); System.out.println(" in bucket: " + bucketName); @@ -173,13 +170,11 @@ public void setBucketACL() @Test @Order(9) public void getACL(){ - String result = GetAcl.getBucketACL(s3,objectKey,bucketName); assertTrue(!result.isEmpty()); System.out.println("Test 9 passed"); } - @Test @Order(10) public void GeneratePresignedUrlAndUploadObject() { @@ -190,7 +185,6 @@ public void GeneratePresignedUrlAndUploadObject() { @Test @Order(11) public void GetObjectPresignedUrl() { - GetObjectPresignedUrl.getPresignedUrl(presigner, presignBucket, presignKey); System.out.println("Test 11 passed"); } @@ -220,7 +214,6 @@ public void CreateAccessPoint() { @Test @Order(15) public void LifecycleConfiguration() { - LifecycleConfiguration.setLifecycleConfig(s3, bucketName, accountId); LifecycleConfiguration.getLifecycleConfig(s3, bucketName, accountId); LifecycleConfiguration.deleteLifecycleConfig(s3, bucketName, accountId); @@ -251,4 +244,25 @@ public void deleteObjects() { System.out.println("Test 19 passed"); } + @Test + @Order(19) + public void copyObjectStorage() { + PutObject.putS3Object(s3, restoreBucket, restoreImageName, restoreImagePath); + CopyObjectStorage.copyBucketObject(s3,restoreBucket, restoreImageName, restoreBucket); + System.out.println("Test 19 passed"); + } + + @Test + @Order(20) + public void RestoreObject() { + RestoreObject.restoreS3Object(s3, restoreBucket, restoreImageName, accountId); + System.out.println("Test 20 passed"); + } + + @Test + @Order(21) + public void getRestoreStatus() { + GetObjectRestoreStatus.checkStatus(s3, restoreBucket, restoreImageName); + System.out.println("Test 21 passed"); + } } From 3bf5f354753c7cd02d7bfba2ee92d4e512c904f6 Mon Sep 17 00:00:00 2001 From: Scott Macdonald <57190223+scmacdon@users.noreply.github.com> Date: Fri, 24 Feb 2023 15:47:02 -0500 Subject: [PATCH 12/17] Updated the Java v2 Glue MVP (#4465) * Add files via upload * Add files via upload * Add files via upload * Add files via upload * Add files via upload --- .../java/com/example/glue/GlueScenario.java | 112 +++++++++++------- .../glue/src/test/java/GlueTest.java | 20 ++-- 2 files changed, 85 insertions(+), 47 deletions(-) diff --git a/javav2/example_code/glue/src/main/java/com/example/glue/GlueScenario.java b/javav2/example_code/glue/src/main/java/com/example/glue/GlueScenario.java index e4b26543f43..5a839d0c722 100644 --- a/javav2/example_code/glue/src/main/java/com/example/glue/GlueScenario.java +++ b/javav2/example_code/glue/src/main/java/com/example/glue/GlueScenario.java @@ -17,8 +17,10 @@ import java.time.format.DateTimeFormatter; import java.time.format.FormatStyle; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; import java.util.Locale; +import java.util.Map; import java.util.concurrent.TimeUnit; import software.amazon.awssdk.services.glue.model.DatabaseInput; import software.amazon.awssdk.services.glue.model.CreateDatabaseRequest; @@ -83,7 +85,6 @@ public class GlueScenario { public static final String DASHES = new String(new char[80]).replace("\0", "-"); public static void main(String[] args) throws InterruptedException { - final String usage = "\n" + "Usage:\n" + " \n\n" + @@ -95,9 +96,10 @@ public static void main(String[] args) throws InterruptedException { " crawlerName - The name of the crawler. \n" + " jobName - The name you assign to this job definition."+ " scriptLocation - The Amazon S3 path to a script that runs a job." + - " locationUri - The location of the database" ; + " locationUri - The location of the database" + + " bucketNameSc - The Amazon S3 bucket name used when creating a job" ; - if (args.length != 8) { + if (args.length != 9) { System.out.println(usage); System.exit(1); } @@ -110,6 +112,7 @@ public static void main(String[] args) throws InterruptedException { String jobName = args[5]; String scriptLocation = args[6]; String locationUri = args[7]; + String bucketNameSc = args[8]; Region region = Region.US_EAST_1; GlueClient glueClient = GlueClient.builder() @@ -146,8 +149,10 @@ public static void main(String[] args) throws InterruptedException { System.out.println(DASHES); System.out.println(DASHES); + System.out.println("*** Wait 5 min for the tables to become available"); + TimeUnit.MINUTES.sleep(5); System.out.println("6. Get tables."); - getGlueTables(glueClient, dbName); + String myTableName = getGlueTables(glueClient, dbName); System.out.println(DASHES); System.out.println(DASHES); @@ -157,7 +162,7 @@ public static void main(String[] args) throws InterruptedException { System.out.println(DASHES); System.out.println("8. Start a Job run."); - startJob(glueClient, jobName); + startJob(glueClient, jobName, dbName, myTableName, bucketNameSc ); System.out.println(DASHES); System.out.println(DASHES); @@ -193,7 +198,6 @@ public static void main(String[] args) throws InterruptedException { } public static void createDatabase(GlueClient glueClient, String dbName, String locationUri ) { - try { DatabaseInput input = DatabaseInput.builder() .description("Built with the AWS SDK for Java V2") @@ -206,7 +210,7 @@ public static void createDatabase(GlueClient glueClient, String dbName, String l .build(); glueClient.createDatabase(request); - System.out.println("The database was successfully created"); + System.out.println(dbName +" was successfully created"); } catch (GlueException e) { System.err.println(e.awsErrorDetails().errorMessage()); @@ -251,29 +255,30 @@ public static void createGlueCrawler(GlueClient glueClient, } public static void getSpecificCrawler(GlueClient glueClient, String crawlerName) { - try { GetCrawlerRequest crawlerRequest = GetCrawlerRequest.builder() .name(crawlerName) .build(); - GetCrawlerResponse response = glueClient.getCrawler(crawlerRequest); - Instant createDate = response.crawler().creationTime(); - DateTimeFormatter formatter = DateTimeFormatter.ofLocalizedDateTime( FormatStyle.SHORT ) - .withLocale( Locale.US) - .withZone( ZoneId.systemDefault() ); + boolean ready = false; + while(!ready) { + GetCrawlerResponse response = glueClient.getCrawler(crawlerRequest); + String status = response.crawler().stateAsString(); + if (status.compareTo("READY") == 0) { + ready = true ; + } + Thread.sleep(3000); + } - formatter.format( createDate ); - System.out.println("The create date of the Crawler is " + createDate ); + System.out.println("The crawler is now ready"); - } catch (GlueException e) { - System.err.println(e.awsErrorDetails().errorMessage()); + } catch (GlueException | InterruptedException e) { + System.err.println(e.getMessage()); System.exit(1); } } public static void startSpecificCrawler(GlueClient glueClient, String crawlerName) { - try { StartCrawlerRequest crawlerRequest = StartCrawlerRequest.builder() .name(crawlerName) @@ -289,7 +294,6 @@ public static void startSpecificCrawler(GlueClient glueClient, String crawlerNam } public static void getSpecificDatabase(GlueClient glueClient, String databaseName) { - try { GetDatabaseRequest databasesRequest = GetDatabaseRequest.builder() .name(databaseName) @@ -312,8 +316,8 @@ public static void getSpecificDatabase(GlueClient glueClient, String databaseNam } } - public static void getGlueTables(GlueClient glueClient, String dbName){ - + public static String getGlueTables(GlueClient glueClient, String dbName){ + String myTableName = ""; try { GetTablesRequest tableRequest = GetTablesRequest.builder() .databaseName(dbName) @@ -321,22 +325,33 @@ public static void getGlueTables(GlueClient glueClient, String dbName){ GetTablesResponse response = glueClient.getTables(tableRequest); List tables = response.tableList(); - for (Table table: tables) { - System.out.println("Table name is: "+table.name()); + if (tables.isEmpty()) { + System.out.println("No tables were returned"); + } else { + for (Table table : tables) { + myTableName = table.name(); + System.out.println("Table name is: " + myTableName); + } } } catch (GlueException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } + return myTableName; } - public static void startJob(GlueClient glueClient, String jobName) { - + public static void startJob(GlueClient glueClient, String jobName, String inputDatabase, String inputTable, String outBucket) { try { + Map myMap = new HashMap<>(); + myMap.put("--input_database", inputDatabase); + myMap.put("--input_table", inputTable); + myMap.put("--output_bucket_url", outBucket); + StartJobRunRequest runRequest = StartJobRunRequest.builder() .workerType(WorkerType.G_1_X) .numberOfWorkers(10) + .arguments(myMap) .jobName(jobName) .build(); @@ -350,11 +365,10 @@ public static void startJob(GlueClient glueClient, String jobName) { } public static void createJob(GlueClient glueClient, String jobName, String iam, String scriptLocation) { - try { JobCommand command = JobCommand.builder() .pythonVersion("3") - .name("MyJob1") + .name("glueetl") .scriptLocation(scriptLocation) .build(); @@ -378,7 +392,6 @@ public static void createJob(GlueClient glueClient, String jobName, String iam, } public static void getAllJobs(GlueClient glueClient) { - try { GetJobsRequest jobsRequest = GetJobsRequest.builder() .maxResults(10) @@ -398,29 +411,50 @@ public static void getAllJobs(GlueClient glueClient) { } public static void getJobRuns(GlueClient glueClient, String jobName) { - try { GetJobRunsRequest runsRequest = GetJobRunsRequest.builder() .jobName(jobName) .maxResults(20) .build(); - GetJobRunsResponse response = glueClient.getJobRuns(runsRequest); - List jobRuns = response.jobRuns(); - for (JobRun jobRun: jobRuns) { - System.out.println("Job run state is "+jobRun.jobRunState().name()); - System.out.println("Job run Id is "+jobRun.id()); - System.out.println("The Glue version is "+jobRun.glueVersion()); + boolean jobDone = false ; + while (!jobDone) { + GetJobRunsResponse response = glueClient.getJobRuns(runsRequest); + List jobRuns = response.jobRuns(); + for (JobRun jobRun : jobRuns) { + String jobState = jobRun.jobRunState().name(); + if (jobState.compareTo("SUCCEEDED") == 0) { + System.out.println(jobName + " has succeeded"); + jobDone = true; + + } else if (jobState.compareTo("STOPPED") == 0) { + System.out.println("Job run has stopped"); + jobDone = true; + + } else if (jobState.compareTo("FAILED") == 0) { + System.out.println("Job run has failed"); + jobDone = true; + + } else if (jobState.compareTo("TIMEOUT") == 0) { + System.out.println("Job run has timed out"); + jobDone = true; + + } else { + System.out.println("*** Job run state is " + jobRun.jobRunState().name()); + System.out.println("Job run Id is " + jobRun.id()); + System.out.println("The Glue version is " + jobRun.glueVersion()); + } + TimeUnit.SECONDS.sleep(5); + } } - } catch (GlueException e) { - System.err.println(e.awsErrorDetails().errorMessage()); + } catch (GlueException | InterruptedException e) { + System.err.println(e.getMessage()); System.exit(1); } } public static void deleteJob(GlueClient glueClient, String jobName) { - try { DeleteJobRequest jobRequest = DeleteJobRequest.builder() .jobName(jobName) @@ -436,7 +470,6 @@ public static void deleteJob(GlueClient glueClient, String jobName) { } public static void deleteDatabase(GlueClient glueClient, String databaseName) { - try { DeleteDatabaseRequest request = DeleteDatabaseRequest.builder() .name(databaseName) @@ -452,7 +485,6 @@ public static void deleteDatabase(GlueClient glueClient, String databaseName) { } public static void deleteSpecificCrawler(GlueClient glueClient, String crawlerName) { - try { DeleteCrawlerRequest deleteCrawlerRequest = DeleteCrawlerRequest.builder() .name(crawlerName) diff --git a/javav2/example_code/glue/src/test/java/GlueTest.java b/javav2/example_code/glue/src/test/java/GlueTest.java index b03756f9d85..df0a86b5f99 100644 --- a/javav2/example_code/glue/src/test/java/GlueTest.java +++ b/javav2/example_code/glue/src/test/java/GlueTest.java @@ -1,4 +1,5 @@ import com.example.glue.*; +import software.amazon.awssdk.auth.credentials.ProfileCredentialsProvider; import software.amazon.awssdk.services.glue.GlueClient; import org.junit.jupiter.api.*; import software.amazon.awssdk.regions.Region; @@ -29,6 +30,8 @@ public class GlueTest { private static String crawlerNameSc=""; private static String scriptLocationSc=""; private static String locationUri=""; + private static String bucketNameSc=""; + @BeforeAll public static void setUp() throws IOException, URISyntaxException { @@ -38,7 +41,7 @@ public static void setUp() throws IOException, URISyntaxException { .region(region) .credentialsProvider(ProfileCredentialsProvider.create()) .build(); - + try (InputStream input = GlueTest.class.getClassLoader().getResourceAsStream("config.properties")) { Properties prop = new Properties(); @@ -67,6 +70,7 @@ public static void setUp() throws IOException, URISyntaxException { crawlerNameSc = prop.getProperty("crawlerNameSc"); scriptLocationSc = prop.getProperty("scriptLocationSc"); locationUri = prop.getProperty("locationUri"); + bucketNameSc = prop.getProperty("bucketNameSc"); } catch (IOException ex) { ex.printStackTrace(); @@ -125,7 +129,7 @@ public void GetDatabases() { @Test @Order(8) public void GetTable() { - GetTable.getGlueTable(glueClient, existingDatabaseName, tableName); + GetTable.getGlueTable(glueClient, existingDatabaseName); System.out.println("Test 8 passed"); } @@ -153,19 +157,21 @@ public void DeleteCrawler() { @Test @Order(12) public void ScenarioTest() throws InterruptedException { - GlueScenario.createDatabase(glueClient, dbNameSc, locationUri); - GlueScenario.createGlueCrawler(glueClient, IAM, s3Path, cron, dbNameSc, crawlerNameSc); + GlueScenario.createGlueCrawler(glueClient, IAM, s3PathSc, cron, dbNameSc, crawlerNameSc); GlueScenario.getSpecificCrawler(glueClient, crawlerNameSc); GlueScenario.startSpecificCrawler(glueClient, crawlerNameSc); GlueScenario.getSpecificDatabase(glueClient, dbNameSc); - GlueScenario.getGlueTables(glueClient, dbNameSc); + + System.out.println("Wait 5 min for the tables to become available"); + TimeUnit.MINUTES.sleep(5);// Sleep for 5 minute to get tables ready + String myTableName = GlueScenario.getGlueTables(glueClient, dbNameSc); GlueScenario.createJob(glueClient, jobNameSc, IAM, scriptLocationSc); - GlueScenario.startJob(glueClient, jobNameSc); + GlueScenario.startJob(glueClient, jobNameSc, dbNameSc, myTableName, bucketNameSc ); GlueScenario.getAllJobs(glueClient); GlueScenario.getJobRuns(glueClient, jobNameSc); GlueScenario.deleteJob(glueClient, jobNameSc); - System.out.println("*** Wait for 5 MIN so the "+crawlerNameSc +" has stopped"); + System.out.println("*** Wait 5 MIN for the "+crawlerNameSc +" to stop"); TimeUnit.MINUTES.sleep(5); GlueScenario.deleteDatabase(glueClient, dbNameSc); GlueScenario.deleteSpecificCrawler(glueClient, crawlerNameSc); From e4ce25fdb8c60bcde8e3b737add2847a4d854fce Mon Sep 17 00:00:00 2001 From: Laren-AWS <57545972+Laren-AWS@users.noreply.github.com> Date: Mon, 27 Feb 2023 05:08:14 -0800 Subject: [PATCH 13/17] WRITEME updates: command help, snippet finding, and long service names. (#4466) * WRITEME updates: command help, snippet finding, and long service names. * Update long entity regex to allow &Long; (&Short;) entries. --------- Co-authored-by: Steven Meyer <108885656+meyertst-aws@users.noreply.github.com> --- .doc_gen/metadata/services.yaml | 60 +++++++++---------- .doc_gen/readmes/scanner.py | 17 ++++-- .doc_gen/readmes/writeme.py | 25 ++++++-- .../zonbook/utility/sdk_api_examples.xml | 2 +- .doc_gen/validation/services_schema.yaml | 5 +- 5 files changed, 68 insertions(+), 41 deletions(-) diff --git a/.doc_gen/metadata/services.yaml b/.doc_gen/metadata/services.yaml index 7e2029392cd..92e6b843d19 100644 --- a/.doc_gen/metadata/services.yaml +++ b/.doc_gen/metadata/services.yaml @@ -1,9 +1,9 @@ acm: - long: '&ACMlong;' + long: '&ACMlong; (&ACM;)' short: '&ACM;' sort: ACM expanded: - long: AWS Certificate Manager + long: AWS Certificate Manager (ACM) short: ACM blurb: helps you to provision, manage, and renew publicly trusted TLS certificates on AWS based websites. guide: @@ -304,11 +304,11 @@ dynamodb: product_categories: {'Database'} version: dynamodb-2012-08-10 ebs: - long: '&EBSlong;' + long: '&EBSlong; (&EBS;)' short: '&EBS;' sort: EBS expanded: - long: Amazon Elastic Block Store + long: Amazon Elastic Block Store (Amazon EBS) short: Amazon EBS blurb: is a web service that provides block level storage volumes for use with Amazon Elastic Compute Cloud instances. guide: @@ -319,11 +319,11 @@ ebs: product_categories: {'Storage'} version: ebs-2019-11-02 ec2: - long: '&EC2long;' + long: '&EC2long; (&EC2;)' short: '&EC2;' sort: EC2 expanded: - long: Amazon Elastic Compute Cloud + long: Amazon Elastic Compute Cloud (Amazon EC2) short: Amazon EC2 blurb: is a web service that provides resizable computing capacity—literally, servers in Amazon's data centers—that you use to build and host your software systems. @@ -335,11 +335,11 @@ ec2: product_categories: {'Compute'} version: ec2-2016-11-15 ecr: - long: '&ECRlong;' + long: '&ECRlong; (&ECR;)' short: '&ECR;' sort: ECR expanded: - long: Amazon Elastic Container Registry + long: Amazon Elastic Container Registry (Amazon ECR) short: Amazon ECR blurb: is a fully managed Docker container registry that makes it easy for developers to store, manage, and deploy Docker container images. guide: @@ -350,11 +350,11 @@ ecr: product_categories: {'Containers'} version: ecr-2015-09-21 ecs: - long: '&ECSlong;' + long: '&ECSlong; (&ECS;)' short: '&ECS;' sort: ECS expanded: - long: Amazon Elastic Container Service + long: Amazon Elastic Container Service (Amazon ECS) short: Amazon ECS blurb: is a highly scalable, fast, container management service that makes it easy to run, stop, and manage Docker containers on a cluster of Amazon EC2 instances. guide: @@ -365,11 +365,11 @@ ecs: product_categories: {'Containers'} version: ecs-2014-11-13 eks: - long: '&EKSlong;' + long: '&EKSlong; (&EKS;)' short: '&EKS;' sort: EKS expanded: - long: Amazon Elastic Kubernetes Service + long: Amazon Elastic Kubernetes Service (Amazon EKS) short: Amazon EKS blurb: is a managed service that makes it easy for you to run Kubernetes on AWS without needing to install and operate your own Kubernetes clusters. guide: @@ -444,11 +444,11 @@ glue: version: glue-2017-03-31 iam: bundle: iam - long: '&IAMlong;' + long: '&IAMlong; (&IAM;)' short: '&IAM;' sort: IAM expanded: - long: AWS Identity and Access Management + long: AWS Identity and Access Management (IAM) short: IAM blurb: is a web service for securely controlling access to AWS services. With IAM, you can centrally manage permissions in your AWS account. guide: @@ -520,11 +520,11 @@ kinesis-analytics-v2: product_categories: {'Analytics'} version: kinesisanalyticsv2-2018-05-23 kms: - long: '&KMSlong;' + long: '&KMSlong; (&KMS;)' short: '&KMS;' sort: KMS expanded: - long: AWS Key Management Service + long: AWS Key Management Service (AWS KMS) short: AWS KMS blurb: is an encryption and key management service scaled for the cloud. guide: @@ -732,11 +732,11 @@ polly: product_categories: {'Machine Learning'} version: polly-2016-06-10 qldb: - long: '&QLDBlong;' + long: '&QLDBlong; (&QLDB;)' short: '&QLDB;' sort: QLDB expanded: - long: Amazon Quantum Ledger Database + long: Amazon Quantum Ledger Database (Amazon QLDB) short: Amazon QLDB blurb: is a fully managed ledger database that provides a transparent, immutable, and cryptographically verifiable transaction log owned by a central trusted authority. guide: @@ -747,11 +747,11 @@ qldb: product_categories: {'Database'} version: qldb-2019-01-02 rds: - long: '&RDSlong;' + long: '&RDSlong; (&RDS;)' short: '&RDS;' sort: RDS expanded: - long: Amazon Relational Database Service + long: Amazon Relational Database Service (Amazon RDS) short: Amazon RDS blurb: is a web service that makes it easier to set up, operate, and scale a relational database in the cloud. guide: @@ -857,11 +857,11 @@ route53-recovery-cluster: product_categories: {'Networking & Content Delivery'} version: route53-recovery-cluster-2019-12-02 s3: - long: '&S3long;' + long: '&S3long; (&S3;)' short: '&S3;' sort: S3 expanded: - long: Amazon Simple Storage Service + long: Amazon Simple Storage Service (Amazon S3) short: Amazon S3 blurb: is storage for the internet. You can use Amazon S3 to store and retrieve any amount of data at any time, from anywhere on the web. guide: @@ -903,11 +903,11 @@ secrets-manager: version: secretsmanager-2017-10-17 ses: bundle: ses - long: '&SESlong;' + long: '&SESlong; (&SES;)' short: '&SES;' sort: SES expanded: - long: Amazon Simple Email Service + long: Amazon Simple Email Service (Amazon SES) short: Amazon SES blurb: is a reliable, scalable, and cost-effective email service. guide: @@ -965,11 +965,11 @@ snowball: product_categories: {'Storage'} version: snowball-2016-06-30 sns: - long: '&SNSlong;' + long: '&SNSlong; (&SNS;)' short: '&SNS;' sort: SNS expanded: - long: Amazon Simple Notification Service + long: Amazon Simple Notification Service (Amazon SNS) short: Amazon SNS blurb: is a web service that enables applications, end-users, and devices to instantly send and receive notifications from the cloud. guide: @@ -980,11 +980,11 @@ sns: product_categories: {'Application Integration', 'Front-End Web & Mobile'} version: sns-2010-03-31 sqs: - long: '&SQSlong;' + long: '&SQSlong; (&SQS;)' short: '&SQS;' sort: SQS expanded: - long: Amazon Simple Queue Service + long: Amazon Simple Queue Service (Amazon SQS) short: Amazon SQS blurb: is a fully managed message queuing service that makes it easy to decouple and scale microservices, distributed systems, and serverless applications. guide: @@ -1011,11 +1011,11 @@ ssm: version: ssm-2014-11-06 sts: bundle: iam - long: '&STSlong;' + long: '&STSlong; (&STS;)' short: '&STS;' sort: STS expanded: - long: AWS Security Token Service + long: AWS Security Token Service (AWS STS) short: AWS STS blurb: creates and provides trusted users with temporary security credentials that can control access to your AWS resources. guide: diff --git a/.doc_gen/readmes/scanner.py b/.doc_gen/readmes/scanner.py index 5639779f837..486be2ce841 100644 --- a/.doc_gen/readmes/scanner.py +++ b/.doc_gen/readmes/scanner.py @@ -4,16 +4,17 @@ import config import logging import os +import re import yaml logger = logging.getLogger(__name__) class Scanner: - def __init__(self, meta_folder, language, service): + def __init__(self, meta_folder): self.meta_folder = meta_folder - self.lang_name = language - self.svc_name = service + self.lang_name = None + self.svc_name = None self.sdk_meta = None self.svc_meta = None self.example_meta = None @@ -43,10 +44,18 @@ def sdk(self): self._load_sdks() return self.sdk_meta[self.lang_name] + def sdks(self): + self._load_sdks() + return self.sdk_meta + def service(self): self._load_services() return self.svc_meta[self.svc_name] + def services(self): + self._load_services() + return self.svc_meta + def expand_entity(self, entity): self._load_services() for _, svc in self.svc_meta.items(): @@ -108,7 +117,7 @@ def snippet(self, example, sdk_ver, readme_folder, api_name): try: with open(os.path.join(root, f), 'r') as search_file: for index, line in enumerate(search_file.readlines()): - if tag in line: + if re.findall(rf'\b{tag}\b', line): tag_path = os.path.relpath(search_file.name, readme_folder).replace('\\', '/') if api_name != '': tag_path += f'#L{index+1}' diff --git a/.doc_gen/readmes/writeme.py b/.doc_gen/readmes/writeme.py index a4ada6f9f6f..c0eb55787fa 100644 --- a/.doc_gen/readmes/writeme.py +++ b/.doc_gen/readmes/writeme.py @@ -8,18 +8,35 @@ def main(): + scanner = Scanner('.doc_gen/metadata') + sdks = scanner.sdks() + lang_vers = [] + for sdk in sdks: + vers = ', '.join([str(v) for v in sdks[sdk]['sdk']]) + lang_vers.append(f'{sdk}: {vers}') + parser = argparse.ArgumentParser() - parser.add_argument('language', help="The language of the SDK. Must match a top-level field in sdks.yaml.") - parser.add_argument('sdk_version', help="The major version of the SDK. Must match a version listed in sdks.yaml.") - parser.add_argument('service', help="The targeted service. Must match a top-level field in services.yaml.") + parser.add_argument( + 'language', metavar='sdk_language', choices=scanner.sdks(), help="The language of the SDK. Choose from: %(choices)s.") + parser.add_argument( + 'sdk_version', help=f"The major version of the SDK. Must match a version of the specified SDK: {', '.join(lang_vers)}") + parser.add_argument('service', metavar='service', choices=scanner.services(), help=f"The targeted service. Choose from: %(choices)s.") parser.add_argument('--svc_folder', help="Overrides the folder template to specify the service example folder.") parser.add_argument( '--safe', action='store_true', help=f"Save a copy of the original README as the 'saved_readme' value specified in config.py ({config.saved_readme}).") args = parser.parse_args() + if int(args.sdk_version) not in sdks[args.language]['sdk']: + parser.print_usage() + print(f"writeme.py: error: argument sdk_verion: invalid choice for " + f"{args.language}: {args.sdk_version} (for {args.language}, choose from " + f"{', '.join([str(v) for v in sdks[args.language]['sdk']])})") + return + try: - scanner = Scanner('.doc_gen/metadata', args.language, args.service) + scanner.lang_name = args.language + scanner.svc_name = args.service renderer = Renderer(scanner, args.sdk_version, args.safe, svc_folder=args.svc_folder) renderer.render() except Exception as err: diff --git a/.doc_gen/templates/zonbook/utility/sdk_api_examples.xml b/.doc_gen/templates/zonbook/utility/sdk_api_examples.xml index d946eda471e..962701ac9f7 100644 --- a/.doc_gen/templates/zonbook/utility/sdk_api_examples.xml +++ b/.doc_gen/templates/zonbook/utility/sdk_api_examples.xml @@ -39,7 +39,7 @@ {{- range $category := $svc_examples.CategoryNamesSorted}} {{- if ne $category "Hello"}} {{- with $cat_examples := index $svc_examples.CategorizedExampleSets $category}} -
+
{{$cat_examples.CategoryName}} {{$cat_examples.CategoryName}} diff --git a/.doc_gen/validation/services_schema.yaml b/.doc_gen/validation/services_schema.yaml index 40554b9985c..e1cdf8c08a4 100644 --- a/.doc_gen/validation/services_schema.yaml +++ b/.doc_gen/validation/services_schema.yaml @@ -3,7 +3,7 @@ map(include('service'), key=regex('^[\da-z-]+$', name='service slug')) --- service: - long: include('entity_regex') + long: include('long_entity_regex') short: include('entity_regex') sort: regex('^[^&]\w', name='non-entity') chapter_override: include('chapter_override', required=False) @@ -24,5 +24,6 @@ chapter_override: title: str(end_punc=False) title_abbrev: str(end_punc=False) -entity_regex: regex('^[&]([\dA-Za-z-_])+[;]$|^&AWS; SDK for Kotlin Developer Guide$', name='valid entity') +long_entity_regex: regex('^[&]([\dA-Za-z-_])+[;]( \(&([\dA-Za-z-_])+;\))?$', name='valid entity') +entity_regex: regex('^[&]([\dA-Za-z-_])+[;]$', name='valid entity') doc_url: regex('^(?!https://docs.aws.amazon.com/).+', name="relative documentation URL") \ No newline at end of file From ac4bfb28a4fe0322437464a6a1ab8f04489b8b0b Mon Sep 17 00:00:00 2001 From: Eric Shepherd Date: Mon, 27 Feb 2023 10:35:22 -0500 Subject: [PATCH 14/17] Update IAM examples for recent Swift SDK changes (#4401) * Update IAM examples for recent Swift SDK changes This updates the Swift SDK examples for IAM to adjust the names of functions, types, and other symbols following a naming convention update. * Remove debug output from AttachRolePolicy --------- Co-authored-by: Eric Shepherd Co-authored-by: Steven Meyer <108885656+meyertst-aws@users.noreply.github.com> --- swift/example_code/iam/AttachRolePolicy/Package.swift | 2 +- .../Sources/ServiceHandler/ServiceHandler.swift | 4 ++-- .../AttachRolePolicyTests/AttachRolePolicyTests.swift | 1 - .../AttachRolePolicyTests/ServiceHandler_Ext.swift | 10 +++++----- .../CreateServiceLinkedRole.swift | 2 +- .../Sources/ServiceHandler/ServiceHandler.swift | 10 +++++----- .../ServiceHandler_Ext.swift | 4 ++-- .../iam/CreateUser/Sources/CreateUser/CreateUser.swift | 2 +- .../Sources/ServiceHandler/ServiceHandler.swift | 4 ++-- .../iam/GetPolicy/Sources/GetPolicy/GetPolicy.swift | 2 +- .../Sources/ServiceHandler/ServiceHandler.swift | 10 +++++----- .../Tests/GetPolicyTests/GetPolicyTests.swift | 2 +- .../Tests/GetPolicyTests/ServiceHandler_Ext.swift | 8 ++++---- .../iam/GetRole/Sources/GetRole/GetRole.swift | 2 +- .../Sources/ServiceHandler/ServiceHandler.swift | 6 +++--- .../Tests/GetRoleTests/ServiceHandler_Ext.swift | 4 ++-- .../ListAttachedRolePolicies.swift | 2 +- .../Sources/ServiceHandler/ServiceHandler.swift | 10 +++++----- .../ServiceHandler_Ext.swift | 8 ++++---- swift/example_code/iam/ListGroups/Package.swift | 7 ++++--- .../iam/ListGroups/Sources/ListGroups/ListGroups.swift | 1 - .../Sources/ServiceHandler/ServiceHandler.swift | 4 ++-- .../Sources/ListPolicies/ListPolicies.swift | 2 +- .../Sources/ServiceHandler/ServiceHandler.swift | 4 ++-- .../Sources/ListRolePolicies/ListRolePolicies.swift | 2 +- .../Sources/ServiceHandler/ServiceHandler.swift | 4 ++-- .../ListRolePoliciesTests/ServiceHandler_Ext.swift | 4 ++-- .../iam/ListRoles/Sources/ListRoles/ListRoles.swift | 2 +- .../Sources/ServiceHandler/ServiceHandler.swift | 4 ++-- .../Tests/ListRolesTests/ServiceHandler_Ext.swift | 4 ++-- .../iam/ListUsers/Sources/ListUsers/ListUsers.swift | 2 +- .../Sources/ServiceHandler/ServiceHandler.swift | 4 ++-- swift/example_code/iam/basics/Package.swift | 2 +- 33 files changed, 69 insertions(+), 70 deletions(-) diff --git a/swift/example_code/iam/AttachRolePolicy/Package.swift b/swift/example_code/iam/AttachRolePolicy/Package.swift index d84d9d5d829..9a50e54bb70 100644 --- a/swift/example_code/iam/AttachRolePolicy/Package.swift +++ b/swift/example_code/iam/AttachRolePolicy/Package.swift @@ -21,7 +21,7 @@ let package = Package( // Dependencies declare other packages that this package depends on. .package( url: "https://github.com/awslabs/aws-sdk-swift", - from: "0.3.0" + from: "0.9.0" ), .package( url: "https://github.com/apple/swift-argument-parser.git", diff --git a/swift/example_code/iam/AttachRolePolicy/Sources/ServiceHandler/ServiceHandler.swift b/swift/example_code/iam/AttachRolePolicy/Sources/ServiceHandler/ServiceHandler.swift index 81fee00957a..2b01313b39c 100644 --- a/swift/example_code/iam/AttachRolePolicy/Sources/ServiceHandler/ServiceHandler.swift +++ b/swift/example_code/iam/AttachRolePolicy/Sources/ServiceHandler/ServiceHandler.swift @@ -23,7 +23,7 @@ enum ServiceHandlerError: Error { /// A class containing all the code that interacts with the AWS SDK for Swift. public class ServiceHandler { - public let client: IamClient + public let client: IAMClient /// Initialize and return a new ``ServiceHandler`` object, which is used /// to drive the AWS calls used for the example. The Region string @@ -34,7 +34,7 @@ public class ServiceHandler { // snippet-start:[iam.swift.attachrolepolicy.handler.init] public init() async { do { - client = try IamClient(region: "AWS_GLOBAL") + client = try IAMClient(region: "AWS_GLOBAL") } catch { print("ERROR: ", dump(error, name: "Initializing Amazon IAM client")) exit(1) diff --git a/swift/example_code/iam/AttachRolePolicy/Tests/AttachRolePolicyTests/AttachRolePolicyTests.swift b/swift/example_code/iam/AttachRolePolicy/Tests/AttachRolePolicyTests/AttachRolePolicyTests.swift index 231e9cfd637..2c48ca71591 100644 --- a/swift/example_code/iam/AttachRolePolicy/Tests/AttachRolePolicyTests/AttachRolePolicyTests.swift +++ b/swift/example_code/iam/AttachRolePolicy/Tests/AttachRolePolicyTests/AttachRolePolicyTests.swift @@ -133,7 +133,6 @@ final class AttachRolePolicyTests: XCTestCase { let policyArn = try await createTestPolicy() testPolicyARNs.append(policyArn) } - // Attach the policies to the test role. for policyArn in testPolicyARNs { diff --git a/swift/example_code/iam/AttachRolePolicy/Tests/AttachRolePolicyTests/ServiceHandler_Ext.swift b/swift/example_code/iam/AttachRolePolicy/Tests/AttachRolePolicyTests/ServiceHandler_Ext.swift index 0bfe80c2891..0bff8f74848 100644 --- a/swift/example_code/iam/AttachRolePolicy/Tests/AttachRolePolicyTests/ServiceHandler_Ext.swift +++ b/swift/example_code/iam/AttachRolePolicy/Tests/AttachRolePolicyTests/ServiceHandler_Ext.swift @@ -19,11 +19,11 @@ public extension ServiceHandler { /// Create a new managed AWS Identity and Access Management (IAM) policy. /// /// - Parameters: - /// - name: The name of the new policy.d + /// - name: The name of the new policy. /// - policyDocument: The policy document to assign to the new policy. /// - /// - Returns: An `IamClientTypes.Policy` object representing the new policy. - func createPolicy(policyName: String, policyDocument: String) async throws -> IamClientTypes.Policy { + /// - Returns: An `IAMClientTypes.Policy` object representing the new policy. + func createPolicy(policyName: String, policyDocument: String) async throws -> IAMClientTypes.Policy { let input = CreatePolicyInput( policyDocument: policyDocument, policyName: policyName @@ -134,8 +134,8 @@ public extension ServiceHandler { /// /// - Parameter name: A `String` giving the name of the user to get. If /// this parameter is `nil`, the default user's information is returned. - /// - Returns: An `IamClientTypes.User` record describing the user. - func getUser(name: String?) async throws -> IamClientTypes.User { + /// - Returns: An `IAMClientTypes.User` record describing the user. + func getUser(name: String?) async throws -> IAMClientTypes.User { let input = GetUserInput( userName: name ) diff --git a/swift/example_code/iam/CreateServiceLinkedRole/Sources/CreateServiceLinkedRole/CreateServiceLinkedRole.swift b/swift/example_code/iam/CreateServiceLinkedRole/Sources/CreateServiceLinkedRole/CreateServiceLinkedRole.swift index 3b2513bf03e..0ef93473fe9 100644 --- a/swift/example_code/iam/CreateServiceLinkedRole/Sources/CreateServiceLinkedRole/CreateServiceLinkedRole.swift +++ b/swift/example_code/iam/CreateServiceLinkedRole/Sources/CreateServiceLinkedRole/CreateServiceLinkedRole.swift @@ -2,7 +2,7 @@ // Swift Example: CreateServiceLinkedRole // // An example showing how to use the Amazon Identity and Access Management (IAM) -// `IamClient` function `createServiceLinkedRole()`. +// `IAMClient` function `createServiceLinkedRole()`. // // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0. diff --git a/swift/example_code/iam/CreateServiceLinkedRole/Sources/ServiceHandler/ServiceHandler.swift b/swift/example_code/iam/CreateServiceLinkedRole/Sources/ServiceHandler/ServiceHandler.swift index 1b9969f09bb..a3ffcdad309 100644 --- a/swift/example_code/iam/CreateServiceLinkedRole/Sources/ServiceHandler/ServiceHandler.swift +++ b/swift/example_code/iam/CreateServiceLinkedRole/Sources/ServiceHandler/ServiceHandler.swift @@ -24,7 +24,7 @@ enum ServiceHandlerError: Error { /// A class containing all the code that interacts with the AWS SDK for Swift. public class ServiceHandler { - public let client: IamClient + public let client: IAMClient /// Initialize and return a new ``ServiceHandler`` object, which is used /// to drive the AWS calls used for the example. The Region string @@ -35,7 +35,7 @@ public class ServiceHandler { // snippet-start:[iam.swift.createservicelinkedrole.handler.init] public init() async { do { - client = try IamClient(region: "AWS_GLOBAL") + client = try IAMClient(region: "AWS_GLOBAL") } catch { print("ERROR: ", dump(error, name: "Initializing Amazon IAM client")) exit(1) @@ -51,16 +51,16 @@ public class ServiceHandler { /// the new role's name. /// - description: An optional `String` describing the new role. /// - /// - Returns: A `IamClientTypes.Role` object describing the new role. + /// - Returns: A `IAMClientTypes.Role` object describing the new role. /// /// The `service` parameter should be a string derived that looks like a /// URL but has no `http://` at the beginning, such as /// `elasticbeanstalk.amazonaws.com`. // snippet-start:[iam.swift.createservicelinkedrole.handler.createservicelinkedrole] public func createServiceLinkedRole(service: String, suffix: String? = nil, description: String?) - async throws -> IamClientTypes.Role { + async throws -> IAMClientTypes.Role { let input = CreateServiceLinkedRoleInput( - aWSServiceName: service, + awsServiceName: service, customSuffix: suffix, description: description ) diff --git a/swift/example_code/iam/CreateServiceLinkedRole/Tests/CreateServiceLinkedRoleTests/ServiceHandler_Ext.swift b/swift/example_code/iam/CreateServiceLinkedRole/Tests/CreateServiceLinkedRoleTests/ServiceHandler_Ext.swift index 9db6ee260bf..98c73fd69a8 100644 --- a/swift/example_code/iam/CreateServiceLinkedRole/Tests/CreateServiceLinkedRoleTests/ServiceHandler_Ext.swift +++ b/swift/example_code/iam/CreateServiceLinkedRole/Tests/CreateServiceLinkedRoleTests/ServiceHandler_Ext.swift @@ -71,8 +71,8 @@ public extension ServiceHandler { /// /// - Parameter name: A `String` giving the name of the user to get. If /// this parameter is `nil`, the default user's information is returned. - /// - Returns: An `IamClientTypes.User` record describing the user. - func getUser(name: String?) async throws -> IamClientTypes.User { + /// - Returns: An `IAMClientTypes.User` record describing the user. + func getUser(name: String?) async throws -> IAMClientTypes.User { let input = GetUserInput( userName: name ) diff --git a/swift/example_code/iam/CreateUser/Sources/CreateUser/CreateUser.swift b/swift/example_code/iam/CreateUser/Sources/CreateUser/CreateUser.swift index c3991fd34d6..ae28904af7d 100644 --- a/swift/example_code/iam/CreateUser/Sources/CreateUser/CreateUser.swift +++ b/swift/example_code/iam/CreateUser/Sources/CreateUser/CreateUser.swift @@ -2,7 +2,7 @@ // Swift Example: CreateUser // // An example showing how to use the Amazon Identity and Access Management (IAM) -// `IamClient` function `createUser()`. +// `IAMClient` function `createUser()`. // // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0. diff --git a/swift/example_code/iam/CreateUser/Sources/ServiceHandler/ServiceHandler.swift b/swift/example_code/iam/CreateUser/Sources/ServiceHandler/ServiceHandler.swift index d7a2dbb1651..5f6ad32a388 100644 --- a/swift/example_code/iam/CreateUser/Sources/ServiceHandler/ServiceHandler.swift +++ b/swift/example_code/iam/CreateUser/Sources/ServiceHandler/ServiceHandler.swift @@ -23,7 +23,7 @@ enum ServiceHandlerError: Error { /// A class containing all the code that interacts with the AWS SDK for Swift. public class ServiceHandler { - public let client: IamClient + public let client: IAMClient /// Initialize and return a new ``ServiceHandler`` object, which is used /// to drive the AWS calls used for the example. The Region string @@ -34,7 +34,7 @@ public class ServiceHandler { // snippet-start:[iam.swift.createuser.handler.init] public init() async { do { - client = try IamClient(region: "AWS_GLOBAL") + client = try IAMClient(region: "AWS_GLOBAL") } catch { print("ERROR: ", dump(error, name: "Initializing Amazon IAM client")) exit(1) diff --git a/swift/example_code/iam/GetPolicy/Sources/GetPolicy/GetPolicy.swift b/swift/example_code/iam/GetPolicy/Sources/GetPolicy/GetPolicy.swift index c6fd1c71bb6..90a33cbd7e1 100644 --- a/swift/example_code/iam/GetPolicy/Sources/GetPolicy/GetPolicy.swift +++ b/swift/example_code/iam/GetPolicy/Sources/GetPolicy/GetPolicy.swift @@ -2,7 +2,7 @@ // Swift Example: GetPolicy // // An example showing how to use the Amazon Identity and Access Management (IAM) -// `IamClient` function `getPolicy()`. +// `IAMClient` function `getPolicy()`. // // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0. diff --git a/swift/example_code/iam/GetPolicy/Sources/ServiceHandler/ServiceHandler.swift b/swift/example_code/iam/GetPolicy/Sources/ServiceHandler/ServiceHandler.swift index 7447199b69e..38aad00b593 100644 --- a/swift/example_code/iam/GetPolicy/Sources/ServiceHandler/ServiceHandler.swift +++ b/swift/example_code/iam/GetPolicy/Sources/ServiceHandler/ServiceHandler.swift @@ -23,7 +23,7 @@ enum ServiceHandlerError: Error { /// A class containing all the code that interacts with the AWS SDK for Swift. public class ServiceHandler { - public let client: IamClient + public let client: IAMClient /// Initialize and return a new ``ServiceHandler`` object, which is used /// to drive the AWS calls used for the example. The Region string @@ -34,7 +34,7 @@ public class ServiceHandler { // snippet-start:[iam.swift.getpolicy.handler.init] public init() async { do { - client = try IamClient(region: "AWS_GLOBAL") + client = try IAMClient(region: "AWS_GLOBAL") } catch { print("ERROR: ", dump(error, name: "Initializing Amazon IAM client")) exit(1) @@ -43,12 +43,12 @@ public class ServiceHandler { // snippet-end:[iam.swift.getpolicy.handler.init] /// Returns information about the specified policy in a - /// `IamClientTypes.Policy` structure. + /// `IAMClientTypes.Policy` structure. /// /// - Parameter arn: The ARN of the policy to return. - /// - Returns: A `IamClientTypes.Policy` with the policy information. + /// - Returns: A `IAMClientTypes.Policy` with the policy information. // snippet-start:[iam.swift.getpolicy.handler.getpolicy] - public func getPolicy(arn: String) async throws -> IamClientTypes.Policy { + public func getPolicy(arn: String) async throws -> IAMClientTypes.Policy { let input = GetPolicyInput( policyArn: arn ) diff --git a/swift/example_code/iam/GetPolicy/Tests/GetPolicyTests/GetPolicyTests.swift b/swift/example_code/iam/GetPolicy/Tests/GetPolicyTests/GetPolicyTests.swift index 50566ce0b67..1b8758e348a 100644 --- a/swift/example_code/iam/GetPolicy/Tests/GetPolicyTests/GetPolicyTests.swift +++ b/swift/example_code/iam/GetPolicy/Tests/GetPolicyTests/GetPolicyTests.swift @@ -41,7 +41,7 @@ final class GetPolicyTests: XCTestCase { tdSem.wait() } - private func createTestPolicy(name: String? = nil) async throws -> IamClientTypes.Policy { + private func createTestPolicy(name: String? = nil) async throws -> IAMClientTypes.Policy { let policyName = name ?? String.uniqueName() // The policy document is a JSON string describing the policy. For diff --git a/swift/example_code/iam/GetPolicy/Tests/GetPolicyTests/ServiceHandler_Ext.swift b/swift/example_code/iam/GetPolicy/Tests/GetPolicyTests/ServiceHandler_Ext.swift index 8a5592eb374..bb4d6ffdb57 100644 --- a/swift/example_code/iam/GetPolicy/Tests/GetPolicyTests/ServiceHandler_Ext.swift +++ b/swift/example_code/iam/GetPolicy/Tests/GetPolicyTests/ServiceHandler_Ext.swift @@ -22,9 +22,9 @@ public extension ServiceHandler { /// - name: The name of the new policy. /// - policyDocument: The policy document to assign to the new policy /// - /// - Returns: A `IamClientTypes.Policy` describing the new policy. + /// - Returns: A `IAMClientTypes.Policy` describing the new policy. /// - func createPolicy(name: String, policyDocument: String) async throws -> IamClientTypes.Policy { + func createPolicy(name: String, policyDocument: String) async throws -> IAMClientTypes.Policy { let input = CreatePolicyInput( policyDocument: policyDocument, policyName: name @@ -47,9 +47,9 @@ public extension ServiceHandler { /// Delete an IAM policy. /// - /// - Parameter name: The `IamClientTypes.Policy` describing the policy to + /// - Parameter name: The `IAMClientTypes.Policy` describing the policy to /// delete. - func deletePolicy(policy: IamClientTypes.Policy) async throws { + func deletePolicy(policy: IAMClientTypes.Policy) async throws { let input = DeletePolicyInput( policyArn: policy.arn ) diff --git a/swift/example_code/iam/GetRole/Sources/GetRole/GetRole.swift b/swift/example_code/iam/GetRole/Sources/GetRole/GetRole.swift index b01e1e2b4ae..bf860ee087a 100644 --- a/swift/example_code/iam/GetRole/Sources/GetRole/GetRole.swift +++ b/swift/example_code/iam/GetRole/Sources/GetRole/GetRole.swift @@ -2,7 +2,7 @@ // Swift Example: GetRole // // An example showing how to use the Amazon Identity and Access Management (IAM) -// `IamClient` function `getRole()`. +// `IAMClient` function `getRole()`. // // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0. diff --git a/swift/example_code/iam/GetRole/Sources/ServiceHandler/ServiceHandler.swift b/swift/example_code/iam/GetRole/Sources/ServiceHandler/ServiceHandler.swift index b84787cbd84..bc1c82f9b0d 100644 --- a/swift/example_code/iam/GetRole/Sources/ServiceHandler/ServiceHandler.swift +++ b/swift/example_code/iam/GetRole/Sources/ServiceHandler/ServiceHandler.swift @@ -24,7 +24,7 @@ public enum ServiceHandlerError: Error { /// A class containing all the code that interacts with the AWS SDK for Swift. public class ServiceHandler { - public let client: IamClient + public let client: IAMClient /// Initialize and return a new ``ServiceHandler`` object, which is used /// to drive the AWS calls used for the example. The Region string @@ -35,7 +35,7 @@ public class ServiceHandler { // snippet-start:[iam.swift.getrole.handler.init] public init() async { do { - client = try IamClient(region: "AWS_GLOBAL") + client = try IAMClient(region: "AWS_GLOBAL") } catch { print("ERROR: ", dump(error, name: "Initializing Amazon IAM client")) exit(1) @@ -49,7 +49,7 @@ public class ServiceHandler { /// /// - Returns: The ID of the newly created role. // snippet-start:[iam.swift.getrole.handler.getrole] - public func getRole(name: String) async throws -> IamClientTypes.Role { + public func getRole(name: String) async throws -> IAMClientTypes.Role { let input = GetRoleInput( roleName: name ) diff --git a/swift/example_code/iam/GetRole/Tests/GetRoleTests/ServiceHandler_Ext.swift b/swift/example_code/iam/GetRole/Tests/GetRoleTests/ServiceHandler_Ext.swift index 241bdd8803c..97927d400a4 100644 --- a/swift/example_code/iam/GetRole/Tests/GetRoleTests/ServiceHandler_Ext.swift +++ b/swift/example_code/iam/GetRole/Tests/GetRoleTests/ServiceHandler_Ext.swift @@ -19,8 +19,8 @@ public extension ServiceHandler { /// /// - Parameter name: A `String` giving the name of the user to get. If /// this parameter is `nil`, the default user's information is returned. - /// - Returns: An `IamClientTypes.User` record describing the user. - func getUser(name: String?) async throws -> IamClientTypes.User { + /// - Returns: An `IAMClientTypes.User` record describing the user. + func getUser(name: String?) async throws -> IAMClientTypes.User { let input = GetUserInput( userName: name ) diff --git a/swift/example_code/iam/ListAttachedRolePolicies/Sources/ListAttachedRolePolicies/ListAttachedRolePolicies.swift b/swift/example_code/iam/ListAttachedRolePolicies/Sources/ListAttachedRolePolicies/ListAttachedRolePolicies.swift index 63b7f3294c9..db15ab19902 100644 --- a/swift/example_code/iam/ListAttachedRolePolicies/Sources/ListAttachedRolePolicies/ListAttachedRolePolicies.swift +++ b/swift/example_code/iam/ListAttachedRolePolicies/Sources/ListAttachedRolePolicies/ListAttachedRolePolicies.swift @@ -2,7 +2,7 @@ // Swift Example: ListAttachedRolePolicies // // An example showing how to use the Amazon Identity and Access Management (IAM) -// `IamClient` function `listAttachedRolePolicies()`. +// `IAMClient` function `listAttachedRolePolicies()`. // // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0. diff --git a/swift/example_code/iam/ListAttachedRolePolicies/Sources/ServiceHandler/ServiceHandler.swift b/swift/example_code/iam/ListAttachedRolePolicies/Sources/ServiceHandler/ServiceHandler.swift index f7030b1ba85..620931d607a 100644 --- a/swift/example_code/iam/ListAttachedRolePolicies/Sources/ServiceHandler/ServiceHandler.swift +++ b/swift/example_code/iam/ListAttachedRolePolicies/Sources/ServiceHandler/ServiceHandler.swift @@ -23,7 +23,7 @@ enum ServiceHandlerError: Error { /// A class containing all the code that interacts with the AWS SDK for Swift. public class ServiceHandler { - public let client: IamClient + public let client: IAMClient /// Initialize and return a new ``ServiceHandler`` object, which is used /// to drive the AWS calls used for the example. The Region string @@ -34,7 +34,7 @@ public class ServiceHandler { // snippet-start:[iam.swift.listattachedrolepolicies.handler.init] public init() async { do { - client = try IamClient(region: "AWS_GLOBAL") + client = try IAMClient(region: "AWS_GLOBAL") } catch { print("ERROR: ", dump(error, name: "Initializing Amazon IAM client")) exit(1) @@ -49,10 +49,10 @@ public class ServiceHandler { /// /// - Parameter role: The IAM role to return the policy list for. /// - /// - Returns: An array of `IamClientTypes.AttachedPolicy` objects + /// - Returns: An array of `IAMClientTypes.AttachedPolicy` objects /// describing each managed policy that's attached to the role. - public func listAttachedRolePolicies(role: String) async throws -> [IamClientTypes.AttachedPolicy] { - var policyList: [IamClientTypes.AttachedPolicy] = [] + public func listAttachedRolePolicies(role: String) async throws -> [IAMClientTypes.AttachedPolicy] { + var policyList: [IAMClientTypes.AttachedPolicy] = [] var marker: String? = nil var isTruncated: Bool diff --git a/swift/example_code/iam/ListAttachedRolePolicies/Tests/ListAttachedRolePoliciesTests/ServiceHandler_Ext.swift b/swift/example_code/iam/ListAttachedRolePolicies/Tests/ListAttachedRolePoliciesTests/ServiceHandler_Ext.swift index cb5b17aac73..df945eee658 100644 --- a/swift/example_code/iam/ListAttachedRolePolicies/Tests/ListAttachedRolePoliciesTests/ServiceHandler_Ext.swift +++ b/swift/example_code/iam/ListAttachedRolePolicies/Tests/ListAttachedRolePoliciesTests/ServiceHandler_Ext.swift @@ -21,8 +21,8 @@ public extension ServiceHandler { /// - Parameters: /// - name: The name of the new policy. /// - policyDocument: The policy document to assign to the new policy. - /// - Returns: An `IamClientTypes.Policy` object representing the new policy. - func createPolicy(policyName: String, policyDocument: String) async throws -> IamClientTypes.Policy { + /// - Returns: An `IAMClientTypes.Policy` object representing the new policy. + func createPolicy(policyName: String, policyDocument: String) async throws -> IAMClientTypes.Policy { let input = CreatePolicyInput( policyDocument: policyDocument, policyName: policyName @@ -123,8 +123,8 @@ public extension ServiceHandler { /// /// - Parameter name: A `String` giving the name of the user to get. If /// this parameter is `nil`, the default user's information is returned. - /// - Returns: An `IamClientTypes.User` record describing the user. - func getUser(name: String?) async throws -> IamClientTypes.User { + /// - Returns: An `IAMClientTypes.User` record describing the user. + func getUser(name: String?) async throws -> IAMClientTypes.User { let input = GetUserInput( userName: name ) diff --git a/swift/example_code/iam/ListGroups/Package.swift b/swift/example_code/iam/ListGroups/Package.swift index f3a2fe345d1..678fad0fd96 100644 --- a/swift/example_code/iam/ListGroups/Package.swift +++ b/swift/example_code/iam/ListGroups/Package.swift @@ -1,4 +1,4 @@ -// swift-tools-version:5.5 +// swift-tools-version:5.6 // The swift-tools-version declares the minimum version of Swift required to // build this package. // @@ -21,11 +21,11 @@ let package = Package( // Dependencies declare other packages that this package depends on. .package( url: "https://github.com/awslabs/aws-sdk-swift", - from: "0.3.0" + from: "0.9.0" ), .package( url: "https://github.com/apple/swift-argument-parser.git", - .branch("main") + from: "1.2.0" ), .package( name: "SwiftUtilities", @@ -44,6 +44,7 @@ let package = Package( dependencies: [ "ServiceHandler", .product(name: "ArgumentParser", package: "swift-argument-parser"), + .product(name: "AWSIAM", package: "aws-sdk-swift"), ], path: "./Sources/ListGroups", linkerSettings: [ diff --git a/swift/example_code/iam/ListGroups/Sources/ListGroups/ListGroups.swift b/swift/example_code/iam/ListGroups/Sources/ListGroups/ListGroups.swift index 1461ea0a6fa..41acd9adf19 100644 --- a/swift/example_code/iam/ListGroups/Sources/ListGroups/ListGroups.swift +++ b/swift/example_code/iam/ListGroups/Sources/ListGroups/ListGroups.swift @@ -33,7 +33,6 @@ struct ExampleCommand: ParsableCommand { do { let groups = try await serviceHandler.listGroups() - print("Found \(groups.count) groups") for group in groups { print(" \(group)") diff --git a/swift/example_code/iam/ListGroups/Sources/ServiceHandler/ServiceHandler.swift b/swift/example_code/iam/ListGroups/Sources/ServiceHandler/ServiceHandler.swift index 0316a8c4059..e5a9e5c9cbd 100644 --- a/swift/example_code/iam/ListGroups/Sources/ServiceHandler/ServiceHandler.swift +++ b/swift/example_code/iam/ListGroups/Sources/ServiceHandler/ServiceHandler.swift @@ -15,7 +15,7 @@ import AWSClientRuntime /// A class containing all the code that interacts with the AWS SDK for Swift. public class ServiceHandler { - public let client: IamClient + public let client: IAMClient /// Initialize and return a new ``ServiceHandler`` object, which is used /// to drive the AWS calls used for the example. The Region string @@ -26,7 +26,7 @@ public class ServiceHandler { // snippet-start:[iam.swift.listgroups.handler.init] public init() async { do { - client = try IamClient(region: "AWS_GLOBAL") + client = try IAMClient(region: "AWS_GLOBAL") } catch { print("ERROR: ", dump(error, name: "Initializing Amazon IAM client")) exit(1) diff --git a/swift/example_code/iam/ListPolicies/Sources/ListPolicies/ListPolicies.swift b/swift/example_code/iam/ListPolicies/Sources/ListPolicies/ListPolicies.swift index f8e6e82fefe..eb5f6375a55 100644 --- a/swift/example_code/iam/ListPolicies/Sources/ListPolicies/ListPolicies.swift +++ b/swift/example_code/iam/ListPolicies/Sources/ListPolicies/ListPolicies.swift @@ -2,7 +2,7 @@ // Swift Example: ListPolicies // // An example showing how to use the Amazon Identity and Access Management (IAM) -// `IamClient` function `listPolicies()`. +// `IAMClient` function `listPolicies()`. // // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0. diff --git a/swift/example_code/iam/ListPolicies/Sources/ServiceHandler/ServiceHandler.swift b/swift/example_code/iam/ListPolicies/Sources/ServiceHandler/ServiceHandler.swift index b4f1cb10350..9d9db55751d 100644 --- a/swift/example_code/iam/ListPolicies/Sources/ServiceHandler/ServiceHandler.swift +++ b/swift/example_code/iam/ListPolicies/Sources/ServiceHandler/ServiceHandler.swift @@ -23,7 +23,7 @@ enum ServiceHandlerError: Error { /// A class containing all the code that interacts with the AWS SDK for Swift. public class ServiceHandler { - public let client: IamClient + public let client: IAMClient /// Initialize and return a new ``ServiceHandler`` object, which is used /// to drive the AWS calls used for the example. The Region string @@ -34,7 +34,7 @@ public class ServiceHandler { // snippet-start:[iam.swift.listpolicies.handler.init] public init() async { do { - client = try IamClient(region: "AWS_GLOBAL") + client = try IAMClient(region: "AWS_GLOBAL") } catch { print("ERROR: ", dump(error, name: "Initializing Amazon IAM client")) exit(1) diff --git a/swift/example_code/iam/ListRolePolicies/Sources/ListRolePolicies/ListRolePolicies.swift b/swift/example_code/iam/ListRolePolicies/Sources/ListRolePolicies/ListRolePolicies.swift index d7c7fa91b67..6182bd6b2b7 100644 --- a/swift/example_code/iam/ListRolePolicies/Sources/ListRolePolicies/ListRolePolicies.swift +++ b/swift/example_code/iam/ListRolePolicies/Sources/ListRolePolicies/ListRolePolicies.swift @@ -2,7 +2,7 @@ // Swift Example: ListRolePolicies // // An example showing how to use the Amazon Identity and Access Management (IAM) -// `IamClient` function `listRolePolicies()`. +// `IAMClient` function `listRolePolicies()`. // // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0. diff --git a/swift/example_code/iam/ListRolePolicies/Sources/ServiceHandler/ServiceHandler.swift b/swift/example_code/iam/ListRolePolicies/Sources/ServiceHandler/ServiceHandler.swift index 7dbb1194ff0..01a2deb7a92 100644 --- a/swift/example_code/iam/ListRolePolicies/Sources/ServiceHandler/ServiceHandler.swift +++ b/swift/example_code/iam/ListRolePolicies/Sources/ServiceHandler/ServiceHandler.swift @@ -23,7 +23,7 @@ enum ServiceHandlerError: Error { /// A class containing all the code that interacts with the AWS SDK for Swift. public class ServiceHandler { - public let client: IamClient + public let client: IAMClient /// Initialize and return a new ``ServiceHandler`` object, which is used /// to drive the AWS calls used for the example. The Region string @@ -34,7 +34,7 @@ public class ServiceHandler { // snippet-start:[iam.swift.listrolepolicies.handler.init] public init() async { do { - client = try IamClient(region: "AWS_GLOBAL") + client = try IAMClient(region: "AWS_GLOBAL") } catch { print("ERROR: ", dump(error, name: "Initializing Amazon IAM client")) exit(1) diff --git a/swift/example_code/iam/ListRolePolicies/Tests/ListRolePoliciesTests/ServiceHandler_Ext.swift b/swift/example_code/iam/ListRolePolicies/Tests/ListRolePoliciesTests/ServiceHandler_Ext.swift index 2be9b861a6f..e924bf3c993 100644 --- a/swift/example_code/iam/ListRolePolicies/Tests/ListRolePoliciesTests/ServiceHandler_Ext.swift +++ b/swift/example_code/iam/ListRolePolicies/Tests/ListRolePoliciesTests/ServiceHandler_Ext.swift @@ -90,8 +90,8 @@ public extension ServiceHandler { /// - Parameter name: A `String` giving the name of the user to get. If /// this parameter is `nil`, the default user's information is returned. /// - /// - Returns: An `IamClientTypes.User` record describing the user. - func getUser(name: String?) async throws -> IamClientTypes.User { + /// - Returns: An `IAMClientTypes.User` record describing the user. + func getUser(name: String?) async throws -> IAMClientTypes.User { let input = GetUserInput( userName: name ) diff --git a/swift/example_code/iam/ListRoles/Sources/ListRoles/ListRoles.swift b/swift/example_code/iam/ListRoles/Sources/ListRoles/ListRoles.swift index bb936520f8f..47126a7659d 100644 --- a/swift/example_code/iam/ListRoles/Sources/ListRoles/ListRoles.swift +++ b/swift/example_code/iam/ListRoles/Sources/ListRoles/ListRoles.swift @@ -2,7 +2,7 @@ // Swift Example: ListRoles // // An example showing how to use the Amazon Identity and Access Management (IAM) -// `IamClient` function `listRoles()`. +// `IAMClient` function `listRoles()`. // // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0. diff --git a/swift/example_code/iam/ListRoles/Sources/ServiceHandler/ServiceHandler.swift b/swift/example_code/iam/ListRoles/Sources/ServiceHandler/ServiceHandler.swift index 054718ecc29..fbd27d38fed 100644 --- a/swift/example_code/iam/ListRoles/Sources/ServiceHandler/ServiceHandler.swift +++ b/swift/example_code/iam/ListRoles/Sources/ServiceHandler/ServiceHandler.swift @@ -22,7 +22,7 @@ enum ServiceHandlerError: Error { /// A class containing all the code that interacts with the AWS SDK for Swift. public class ServiceHandler { - public let client: IamClient + public let client: IAMClient /// Initialize and return a new ``ServiceHandler`` object, which is used /// to drive the AWS calls used for the example. The Region string @@ -33,7 +33,7 @@ public class ServiceHandler { // snippet-start:[iam.swift.listroles.handler.init] public init() async { do { - client = try IamClient(region: "AWS_GLOBAL") + client = try IAMClient(region: "AWS_GLOBAL") } catch { print("ERROR: ", dump(error, name: "Initializing Amazon IAM client")) exit(1) diff --git a/swift/example_code/iam/ListRoles/Tests/ListRolesTests/ServiceHandler_Ext.swift b/swift/example_code/iam/ListRoles/Tests/ListRolesTests/ServiceHandler_Ext.swift index 5f45348013f..e9bd5c33391 100644 --- a/swift/example_code/iam/ListRoles/Tests/ListRolesTests/ServiceHandler_Ext.swift +++ b/swift/example_code/iam/ListRoles/Tests/ListRolesTests/ServiceHandler_Ext.swift @@ -59,8 +59,8 @@ public extension ServiceHandler { /// - Parameter name: A `String` giving the name of the user to get. If /// this parameter is `nil`, the default user's information is returned. /// - /// - Returns: An `IamClientTypes.User` record describing the user. - func getUser(name: String?) async throws -> IamClientTypes.User { + /// - Returns: An `IAMClientTypes.User` record describing the user. + func getUser(name: String?) async throws -> IAMClientTypes.User { let input = GetUserInput( userName: name ) diff --git a/swift/example_code/iam/ListUsers/Sources/ListUsers/ListUsers.swift b/swift/example_code/iam/ListUsers/Sources/ListUsers/ListUsers.swift index 8a2babe01b8..57c8ef393b1 100644 --- a/swift/example_code/iam/ListUsers/Sources/ListUsers/ListUsers.swift +++ b/swift/example_code/iam/ListUsers/Sources/ListUsers/ListUsers.swift @@ -2,7 +2,7 @@ // Swift Example: ListUsers // // An example showing how to use the Amazon Identity and Access Management (IAM) -// `IamClient` function `listUsers()`. +// `IAMClient` function `listUsers()`. // // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0. diff --git a/swift/example_code/iam/ListUsers/Sources/ServiceHandler/ServiceHandler.swift b/swift/example_code/iam/ListUsers/Sources/ServiceHandler/ServiceHandler.swift index 162564a1f2e..1ce17ad6a6a 100644 --- a/swift/example_code/iam/ListUsers/Sources/ServiceHandler/ServiceHandler.swift +++ b/swift/example_code/iam/ListUsers/Sources/ServiceHandler/ServiceHandler.swift @@ -15,7 +15,7 @@ import AWSClientRuntime /// A class containing all the code that interacts with the AWS SDK for Swift. public class ServiceHandler { - public let client: IamClient + public let client: IAMClient /// Initialize and return a new ``ServiceHandler`` object, which is used /// to drive the AWS calls used for the example. The Region string @@ -26,7 +26,7 @@ public class ServiceHandler { // snippet-start:[iam.swift.listusers.handler.init] public init() async { do { - client = try IamClient(region: "AWS_GLOBAL") + client = try IAMClient(region: "AWS_GLOBAL") } catch { print("ERROR: ", dump(error, name: "Initializing Amazon IAM client")) exit(1) diff --git a/swift/example_code/iam/basics/Package.swift b/swift/example_code/iam/basics/Package.swift index 074b26298df..76692d1cdac 100644 --- a/swift/example_code/iam/basics/Package.swift +++ b/swift/example_code/iam/basics/Package.swift @@ -21,7 +21,7 @@ let package = Package( // Dependencies declare other packages that this package depends on. .package( url: "https://github.com/awslabs/aws-sdk-swift", - from: "0.6.0" + from: "0.10.0" ), .package( url: "https://github.com/apple/swift-argument-parser.git", From 4201ec6fb63a5b1cadeb73da6190e8d58ab6f6dc Mon Sep 17 00:00:00 2001 From: David Souther Date: Wed, 1 Mar 2023 08:21:28 -0800 Subject: [PATCH 15/17] Bump MSRV, ensure SDK branches are main, TLS test moved to smithy-rs (#4469) * Bump MSRV and ensure branch is main for all sdk deps. * New Clippy * Drop tls tests, these are upstreamed to smithy-rs * Clippy --- .github/workflows/rust.yml | 2 +- rust_dev_preview/Cargo.toml | 3 +- .../dynamodb/src/scenario/movies/mod.rs | 4 +- rust_dev_preview/rust-toolchain.toml | 2 +- .../Cargo.toml | 25 ------- .../additional-ci | 1 - .../src/main.rs | 68 ------------------- 7 files changed, 5 insertions(+), 100 deletions(-) delete mode 100644 rust_dev_preview/using-native-tls-instead-of-rustls/Cargo.toml delete mode 100644 rust_dev_preview/using-native-tls-instead-of-rustls/additional-ci delete mode 100644 rust_dev_preview/using-native-tls-instead-of-rustls/src/main.rs diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 68fc9a8c459..827c77fcf1c 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -22,7 +22,7 @@ jobs: - uses: actions-rs/toolchain@v1 with: profile: minimal - toolchain: 1.62.1 + toolchain: 1.63 override: true components: clippy, rustfmt - uses: actions-rs/cargo@v1 diff --git a/rust_dev_preview/Cargo.toml b/rust_dev_preview/Cargo.toml index a1c4c0ca937..374d8568e74 100644 --- a/rust_dev_preview/Cargo.toml +++ b/rust_dev_preview/Cargo.toml @@ -60,6 +60,5 @@ members = [ "test-utils", "testing", "tls", - "transcribestreaming", - "using-native-tls-instead-of-rustls" + "transcribestreaming" ] diff --git a/rust_dev_preview/dynamodb/src/scenario/movies/mod.rs b/rust_dev_preview/dynamodb/src/scenario/movies/mod.rs index 466926a5a28..edbb0616a0e 100644 --- a/rust_dev_preview/dynamodb/src/scenario/movies/mod.rs +++ b/rust_dev_preview/dynamodb/src/scenario/movies/mod.rs @@ -48,14 +48,14 @@ where } } -#[derive(Debug, Serialize, Deserialize, PartialEq)] +#[derive(Debug, Serialize, Deserialize, PartialEq, Eq)] pub struct Movie { year: i32, title: String, info: MovieInfo, } -#[derive(Debug, Serialize, Deserialize, PartialEq)] +#[derive(Debug, Serialize, Deserialize, PartialEq, Eq)] pub struct MovieInfo { #[serde(default = "Vec::new")] genres: Vec, diff --git a/rust_dev_preview/rust-toolchain.toml b/rust_dev_preview/rust-toolchain.toml index 8f5007e18f6..c870e23488b 100644 --- a/rust_dev_preview/rust-toolchain.toml +++ b/rust_dev_preview/rust-toolchain.toml @@ -1,3 +1,3 @@ # This should be kept in sync with https://github.com/awslabs/aws-sdk-rust#supported-rust-versions-msrv [toolchain] -channel = "1.62.1" +channel = "1.63" diff --git a/rust_dev_preview/using-native-tls-instead-of-rustls/Cargo.toml b/rust_dev_preview/using-native-tls-instead-of-rustls/Cargo.toml deleted file mode 100644 index 9289078e8a7..00000000000 --- a/rust_dev_preview/using-native-tls-instead-of-rustls/Cargo.toml +++ /dev/null @@ -1,25 +0,0 @@ -[package] -name = "using-native-tls-instead-of-rustls" -version = "0.1.0" -authors = ["Zelda Hessler zhessler@amazon.com>"] -edition = "2021" - -# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html - -[dependencies] -# aws-config pulls in rustls and several other things by default. We have to disable defaults in order to use native-tls -# and then manually bring the other defaults back -aws-config = { git = "https://github.com/awslabs/aws-sdk-rust", branch = "main", default-features = false, features = [ - "native-tls", - "rt-tokio", -] } -# aws-sdk-s3 brings in rustls by default so we disable that in order to use native-tls only -aws-sdk-s3 = { git = "https://github.com/awslabs/aws-sdk-rust", branch = "main", default-features = false, features = [ - "native-tls", -] } -# aws-sdk-sts is the same as aws-sdk-s3 -aws-sdk-sts = { git = "https://github.com/awslabs/aws-sdk-rust", branch = "main", default-features = false, features = [ - "native-tls", -] } -tokio = { version = "1.20.1", features = ["full"] } -tracing-subscriber = { version = "0.3.15", features = ["env-filter"] } diff --git a/rust_dev_preview/using-native-tls-instead-of-rustls/additional-ci b/rust_dev_preview/using-native-tls-instead-of-rustls/additional-ci deleted file mode 100644 index a9bf588e2f8..00000000000 --- a/rust_dev_preview/using-native-tls-instead-of-rustls/additional-ci +++ /dev/null @@ -1 +0,0 @@ -#!/bin/bash diff --git a/rust_dev_preview/using-native-tls-instead-of-rustls/src/main.rs b/rust_dev_preview/using-native-tls-instead-of-rustls/src/main.rs deleted file mode 100644 index bb99a1b5dbb..00000000000 --- a/rust_dev_preview/using-native-tls-instead-of-rustls/src/main.rs +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. - * SPDX-License-Identifier: Apache-2.0. - */ - -/// The SDK defaults to using RusTLS by default but you can also use [`native_tls`](https://github.com/sfackler/rust-native-tls) -/// which will choose a TLS implementation appropriate for your platform. This example looks much like -/// any other. Activating and deactivating `features` in your app's `Cargo.toml` is all that's needed. -#[tokio::main] -async fn main() -> Result<(), aws_sdk_s3::Error> { - tracing_subscriber::fmt::init(); - list_buckets().await -} - -async fn list_buckets() -> Result<(), aws_sdk_s3::Error> { - let shared_config = aws_config::load_from_env().await; - - let s3_config = aws_sdk_s3::Config::from(&shared_config); - let client = aws_sdk_s3::Client::from_conf(s3_config); - - let resp = client.list_buckets().send().await?; - - for bucket in resp.buckets().unwrap_or_default() { - println!("bucket: {:?}", bucket.name().unwrap_or_default()) - } - - Ok(()) -} - -#[cfg(test)] -mod tests { - use crate::list_buckets; - - /// You can run this test to ensure that this example is only using `native-tls` - /// and that nothing is pulling in `rustls` as a dependency - #[test] - #[should_panic = "error: package ID specification `rustls` did not match any packages"] - fn test_rustls_is_not_in_dependency_tree() { - let cargo_location = std::env::var("CARGO").unwrap(); - let cargo_command = std::process::Command::new(&cargo_location) - .arg("tree") - .arg("--invert") - .arg("rustls") - .output() - .expect("failed to run 'cargo tree'"); - - let stderr = String::from_utf8_lossy(&cargo_command.stderr); - - // We expect the call to `cargo tree` to error out. If it did, we panic with the resulting - // message here. In the case that no error message is set, that's bad. - if !stderr.is_empty() { - panic!("{}", stderr); - } - - // Uh oh. We expected an error message but got none, likely because `cargo tree` found - // `rustls` in our dependencies. We'll print out the message we got to see what went wrong. - let stdout = String::from_utf8_lossy(&cargo_command.stdout); - - println!("{}", stdout) - } - - // NOTE: not currently run in CI, separate PR will set up a with-creds CI runner - #[tokio::test] - #[ignore] - async fn needs_creds_native_tls_works() { - list_buckets().await.expect("should succeed") - } -} From 9d1011c5a28763d5b8c0698fef84e7de59765287 Mon Sep 17 00:00:00 2001 From: Corey Pyle Date: Wed, 1 Mar 2023 15:47:39 -0500 Subject: [PATCH 16/17] S3 Cleanup (#4475) * move and rename s3 files * refactor copy-object example, add tests, clean up metadata * refactor create-bucket example, add tests, clean up metadata * refactor delete-bucket-policy example, add tests, clean up metadata * refactor put-bucket-website example, add tests, clean up metadata * refactor delete-bucket-website example, add tests, clean up metadata * refactor delete-bucket example, add tests, clean up metadata * refactor put-object example, add tests, clean up metadata * refactor delete-object example, add tests, clean up metadata * refactor put-bucket-policy example, add tests, clean up metadata * refactor put-bucket-cors example, add tests, clean up metadata * refactor get-bucket-cors example, add tests, clean up metadata * refactor get-bucket-policy example, add tests, clean up metadata * refactor put-bucket-acl, add test, update metadata * refactor list-objects, add test, update metadata * refactor list-buckets, add test, update metadata * refactor get-object, add test, update metadata * refactor get-bucket-website, add test, update metadata * refactor delete-objects, add test, update metadata * start basic scenario * add upload, list, copy, delete, and empty steps to s3 example * add upload, list, copy, delete, and empty steps to s3 example * finish basic scenario * fix malformed snippets * clean up some excerpt descriptions * update multipart and create/list/delete scenarios * update presigned url examples * update README * update list-objects to handle over 1000 objects * add web-example and test out deprecating snippets * add readme reference to new media items * copy editing --- .doc_gen/metadata/s3_metadata.yaml | 154 +- .doc_gen/metadata/sdks.yaml | 16 +- .doc_gen/readmes/includes/overview.jinja2 | 2 +- .../readmes/includes/run_instructions.jinja2 | 2 +- .github/pre_validate/pre_validate.py | 2 + .../example_code/ec2/scenarios/basic.js | 49 +- .../libs/tests/util-io.unit.test.js | 11 + .../example_code/libs/utils/util-fs.js | 47 +- .../example_code/libs/utils/util-io.js | 71 + .../example_code/libs/utils/util-string.js | 30 +- javascriptv3/example_code/s3/README.md | 212 +- .../example_code/s3/actions/copy-object.js | 32 + .../example_code/s3/actions/create-bucket.js | 32 + .../s3/actions/delete-bucket-policy.js | 31 + .../s3/actions/delete-bucket-website.js | 31 + .../example_code/s3/actions/delete-bucket.js | 31 + .../example_code/s3/actions/delete-object.js | 31 + .../example_code/s3/actions/delete-objects.js | 36 + .../example_code/s3/actions/get-bucket-acl.js | 30 + .../s3/actions/get-bucket-cors.js | 40 + .../s3/actions/get-bucket-policy.js | 30 + .../s3/actions/get-bucket-website.js | 33 + .../example_code/s3/actions/get-object.js | 33 + .../example_code/s3/actions/list-buckets.js | 33 + .../example_code/s3/actions/list-objects.js | 51 + .../example_code/s3/actions/put-bucket-acl.js | 58 + .../s3/actions/put-bucket-cors.js | 51 + .../s3/actions/put-bucket-policy.js | 46 + .../s3/actions/put-bucket-website.js | 42 + .../example_code/s3/actions/put-object.js | 32 + javascriptv3/example_code/s3/client.js | 11 + .../example_code/s3/dead-snippets.txt | 74 + .../example_code/s3/{src => }/libs/s3Utils.js | 0 javascriptv3/example_code/s3/package.json | 25 + .../example_code/s3/photoExample/README.md | 21 - .../example_code/s3/photoExample/package.json | 41 - .../s3/photoExample/src/s3_PhotoExample.html | 38 - .../s3/photoExample/src/s3_PhotoExample.js | 301 - .../example_code/s3/photoViewer/README.md | 22 - .../example_code/s3/photoViewer/package.json | 37 - .../s3/photoViewer/src/s3_PhotoViewer.html | 38 - .../s3/photoViewer/src/s3_PhotoViewer.ts | 156 - .../example_code/s3/scenarios/basic.js | 217 + .../s3/scenarios/create-list-delete-bucket.js | 56 + .../s3/scenarios/multipart-download.js | 75 + .../multipart-upload.js} | 18 +- .../s3/scenarios/presigned-url-download.js | 71 + .../s3/scenarios/presigned-url-upload.js | 103 + .../s3/scenarios/s3_basics/libs/s3Client.js | 21 - .../s3/scenarios/s3_basics/package.json | 12 - .../s3/scenarios/s3_basics/src/s3_basics.js | 192 - .../scenarios/s3_basics/tests/babel.config.js | 3 - .../scenarios/s3_basics/tests/jest.config.js | 8 - .../s3/scenarios/s3_basics/tests/package.json | 15 - .../s3_basics/tests/s3_basics.test.js | 20 - .../s3/scenarios/web/list-objects/.gitignore | 24 + .../s3/scenarios/web/list-objects/index.html | 13 + .../scenarios/web/list-objects/package.json | 25 + .../web/list-objects/public/vite.svg | 1 + .../s3/scenarios/web/list-objects/src/App.css | 42 + .../s3/scenarios/web/list-objects/src/App.tsx | 59 + .../scenarios/web/list-objects/src/index.css | 69 + .../scenarios/web/list-objects/src/main.tsx | 10 + .../web/list-objects/src/vite-env.d.ts | 1 + .../scenarios/web/list-objects/tsconfig.json | 21 + .../web/list-objects/tsconfig.node.json | 9 + .../scenarios/web/list-objects/vite.config.ts | 7 + .../example_code/s3/src/libs/s3Client.js | 22 - .../example_code/s3/src/metadata.yaml | 85 - javascriptv3/example_code/s3/src/package.json | 17 - javascriptv3/example_code/s3/src/s3.js | 88 - .../example_code/s3/src/s3_copyobject.js | 44 - .../s3/src/s3_create_and_upload_objects.js | 52 - .../example_code/s3/src/s3_createbucket.js | 38 - .../s3/src/s3_delete_all_objects.js | 43 - .../s3/src/s3_delete_multiple_objects.js | 49 - .../example_code/s3/src/s3_delete_object.js | 35 - .../example_code/s3/src/s3_deletebucket.js | 36 - .../s3/src/s3_deletebucketpolicy.js | 37 - .../s3/src/s3_deletebucketwebsite.js | 38 - .../s3/src/s3_get_presignedURL.js | 112 - .../example_code/s3/src/s3_getbucketacl.js | 40 - .../example_code/s3/src/s3_getbucketpolicy.js | 36 - .../s3/src/s3_getbucketwebsite.js | 38 - .../example_code/s3/src/s3_getcors.js | 37 - .../example_code/s3/src/s3_getobject.js | 45 - .../s3/src/s3_list1000plusobjects.js | 56 - .../example_code/s3/src/s3_listbuckets.js | 34 - .../example_code/s3/src/s3_listobjects.js | 36 - .../s3/src/s3_put_presignedURL.js | 87 - .../example_code/s3/src/s3_putbucketacl.js | 52 - .../example_code/s3/src/s3_putbucketpolicy.js | 72 - .../s3/src/s3_setbucketwebsite.js | 55 - .../example_code/s3/src/s3_setcors.js | 77 - .../example_code/s3/src/s3_upload_object.js | 55 - .../example_code/s3/tests/babel.config.js | 3 - .../example_code/s3/tests/basic.unit.test.js | 137 + .../s3/tests/copy-object.unit.test.js | 42 + .../s3/tests/create-bucket.unit.test.js | 42 + .../tests/delete-bucket-policy.unit.test.js | 42 + .../tests/delete-bucket-website.unit.test.js | 42 + .../s3/tests/delete-bucket.unit.test.js | 42 + .../s3/tests/delete-object.unit.test.js | 42 + .../s3/tests/delete-objects.unit.test.js | 46 + .../s3/tests/get-bucket-cors.unit.test.js | 60 + .../s3/tests/get-bucket-policy.unit.test.js | 42 + .../s3/tests/get-bucket-website.unit.test.js | 48 + .../s3/tests/get-object.unit.test.js | 48 + .../example_code/s3/tests/jest.config.js | 8 - .../s3/tests/list-buckets.unit.test.js | 46 + .../s3/tests/list-objects.unit.test.js | 46 + .../s3/tests/multipart-download.unit.test.js | 62 + .../example_code/s3/tests/package.json | 22 - .../s3/tests/put-bucket-acl.unit.test.js | 42 + .../s3/tests/put-bucket-cors.unit.test.js | 42 + .../s3/tests/put-bucket-policy.unit.test.js | 42 + .../s3/tests/put-bucket-website.unit.test.js | 42 + .../s3/tests/put-object.unit.test.js | 42 + .../s3/tests/s3_copyobject.test.js | 15 - .../s3/tests/s3_createbucket.test.js | 15 - .../s3/tests/s3_delete_all_objects.test.js | 15 - .../tests/s3_delete_multiple_objects.test.js | 15 - .../s3/tests/s3_delete_object.test.js | 15 - .../s3/tests/s3_deletebucket.test.js | 15 - .../s3/tests/s3_deletebucketpolicy.test.js | 15 - .../s3/tests/s3_deletebucketwebsite.test.js | 15 - .../s3/tests/s3_getbucketacl.test.js | 15 - .../s3/tests/s3_getbucketpolicy.test.js | 15 - .../s3/tests/s3_getbucketwebsite.test.js | 15 - .../example_code/s3/tests/s3_getcors.test.js | 15 - .../s3/tests/s3_listbuckets.test.js | 15 - .../s3/tests/s3_listobjects.test.js | 15 - .../s3/tests/s3_multipartupload.test.js | 13 - .../s3/tests/s3_putbucketacl.test.js | 15 - .../s3/tests/s3_putbucketpolicy.test.js | 15 - .../s3/tests/s3_setbucketwebsite.test.js | 15 - javascriptv3/example_code/s3/tests/yarn.lock | 5188 -- javascriptv3/package-lock.json | 46738 +++++++++------- javascriptv3/package.json | 3 +- .../sample_files/.sample_media/market_2.jpg | Bin 0 -> 431316 bytes .../sample_files/.sample_media/spheres_2.jpg | Bin 0 -> 1823130 bytes resources/sample_files/README.md | 2 + 142 files changed, 28878 insertions(+), 28922 deletions(-) create mode 100644 javascriptv3/example_code/libs/tests/util-io.unit.test.js create mode 100644 javascriptv3/example_code/libs/utils/util-io.js create mode 100644 javascriptv3/example_code/s3/actions/copy-object.js create mode 100644 javascriptv3/example_code/s3/actions/create-bucket.js create mode 100644 javascriptv3/example_code/s3/actions/delete-bucket-policy.js create mode 100644 javascriptv3/example_code/s3/actions/delete-bucket-website.js create mode 100644 javascriptv3/example_code/s3/actions/delete-bucket.js create mode 100644 javascriptv3/example_code/s3/actions/delete-object.js create mode 100644 javascriptv3/example_code/s3/actions/delete-objects.js create mode 100644 javascriptv3/example_code/s3/actions/get-bucket-acl.js create mode 100644 javascriptv3/example_code/s3/actions/get-bucket-cors.js create mode 100644 javascriptv3/example_code/s3/actions/get-bucket-policy.js create mode 100644 javascriptv3/example_code/s3/actions/get-bucket-website.js create mode 100644 javascriptv3/example_code/s3/actions/get-object.js create mode 100644 javascriptv3/example_code/s3/actions/list-buckets.js create mode 100644 javascriptv3/example_code/s3/actions/list-objects.js create mode 100644 javascriptv3/example_code/s3/actions/put-bucket-acl.js create mode 100644 javascriptv3/example_code/s3/actions/put-bucket-cors.js create mode 100644 javascriptv3/example_code/s3/actions/put-bucket-policy.js create mode 100644 javascriptv3/example_code/s3/actions/put-bucket-website.js create mode 100644 javascriptv3/example_code/s3/actions/put-object.js create mode 100644 javascriptv3/example_code/s3/client.js create mode 100644 javascriptv3/example_code/s3/dead-snippets.txt rename javascriptv3/example_code/s3/{src => }/libs/s3Utils.js (100%) create mode 100644 javascriptv3/example_code/s3/package.json delete mode 100644 javascriptv3/example_code/s3/photoExample/README.md delete mode 100644 javascriptv3/example_code/s3/photoExample/package.json delete mode 100644 javascriptv3/example_code/s3/photoExample/src/s3_PhotoExample.html delete mode 100644 javascriptv3/example_code/s3/photoExample/src/s3_PhotoExample.js delete mode 100644 javascriptv3/example_code/s3/photoViewer/README.md delete mode 100644 javascriptv3/example_code/s3/photoViewer/package.json delete mode 100644 javascriptv3/example_code/s3/photoViewer/src/s3_PhotoViewer.html delete mode 100644 javascriptv3/example_code/s3/photoViewer/src/s3_PhotoViewer.ts create mode 100644 javascriptv3/example_code/s3/scenarios/basic.js create mode 100644 javascriptv3/example_code/s3/scenarios/create-list-delete-bucket.js create mode 100644 javascriptv3/example_code/s3/scenarios/multipart-download.js rename javascriptv3/example_code/s3/{src/s3_multipartupload.js => scenarios/multipart-upload.js} (84%) create mode 100644 javascriptv3/example_code/s3/scenarios/presigned-url-download.js create mode 100644 javascriptv3/example_code/s3/scenarios/presigned-url-upload.js delete mode 100644 javascriptv3/example_code/s3/scenarios/s3_basics/libs/s3Client.js delete mode 100644 javascriptv3/example_code/s3/scenarios/s3_basics/package.json delete mode 100644 javascriptv3/example_code/s3/scenarios/s3_basics/src/s3_basics.js delete mode 100644 javascriptv3/example_code/s3/scenarios/s3_basics/tests/babel.config.js delete mode 100644 javascriptv3/example_code/s3/scenarios/s3_basics/tests/jest.config.js delete mode 100644 javascriptv3/example_code/s3/scenarios/s3_basics/tests/package.json delete mode 100644 javascriptv3/example_code/s3/scenarios/s3_basics/tests/s3_basics.test.js create mode 100644 javascriptv3/example_code/s3/scenarios/web/list-objects/.gitignore create mode 100644 javascriptv3/example_code/s3/scenarios/web/list-objects/index.html create mode 100644 javascriptv3/example_code/s3/scenarios/web/list-objects/package.json create mode 100644 javascriptv3/example_code/s3/scenarios/web/list-objects/public/vite.svg create mode 100644 javascriptv3/example_code/s3/scenarios/web/list-objects/src/App.css create mode 100644 javascriptv3/example_code/s3/scenarios/web/list-objects/src/App.tsx create mode 100644 javascriptv3/example_code/s3/scenarios/web/list-objects/src/index.css create mode 100644 javascriptv3/example_code/s3/scenarios/web/list-objects/src/main.tsx create mode 100644 javascriptv3/example_code/s3/scenarios/web/list-objects/src/vite-env.d.ts create mode 100644 javascriptv3/example_code/s3/scenarios/web/list-objects/tsconfig.json create mode 100644 javascriptv3/example_code/s3/scenarios/web/list-objects/tsconfig.node.json create mode 100644 javascriptv3/example_code/s3/scenarios/web/list-objects/vite.config.ts delete mode 100644 javascriptv3/example_code/s3/src/libs/s3Client.js delete mode 100644 javascriptv3/example_code/s3/src/metadata.yaml delete mode 100644 javascriptv3/example_code/s3/src/package.json delete mode 100644 javascriptv3/example_code/s3/src/s3.js delete mode 100644 javascriptv3/example_code/s3/src/s3_copyobject.js delete mode 100644 javascriptv3/example_code/s3/src/s3_create_and_upload_objects.js delete mode 100644 javascriptv3/example_code/s3/src/s3_createbucket.js delete mode 100644 javascriptv3/example_code/s3/src/s3_delete_all_objects.js delete mode 100644 javascriptv3/example_code/s3/src/s3_delete_multiple_objects.js delete mode 100644 javascriptv3/example_code/s3/src/s3_delete_object.js delete mode 100644 javascriptv3/example_code/s3/src/s3_deletebucket.js delete mode 100644 javascriptv3/example_code/s3/src/s3_deletebucketpolicy.js delete mode 100644 javascriptv3/example_code/s3/src/s3_deletebucketwebsite.js delete mode 100644 javascriptv3/example_code/s3/src/s3_get_presignedURL.js delete mode 100644 javascriptv3/example_code/s3/src/s3_getbucketacl.js delete mode 100644 javascriptv3/example_code/s3/src/s3_getbucketpolicy.js delete mode 100644 javascriptv3/example_code/s3/src/s3_getbucketwebsite.js delete mode 100644 javascriptv3/example_code/s3/src/s3_getcors.js delete mode 100644 javascriptv3/example_code/s3/src/s3_getobject.js delete mode 100644 javascriptv3/example_code/s3/src/s3_list1000plusobjects.js delete mode 100644 javascriptv3/example_code/s3/src/s3_listbuckets.js delete mode 100644 javascriptv3/example_code/s3/src/s3_listobjects.js delete mode 100644 javascriptv3/example_code/s3/src/s3_put_presignedURL.js delete mode 100644 javascriptv3/example_code/s3/src/s3_putbucketacl.js delete mode 100644 javascriptv3/example_code/s3/src/s3_putbucketpolicy.js delete mode 100644 javascriptv3/example_code/s3/src/s3_setbucketwebsite.js delete mode 100644 javascriptv3/example_code/s3/src/s3_setcors.js delete mode 100644 javascriptv3/example_code/s3/src/s3_upload_object.js delete mode 100644 javascriptv3/example_code/s3/tests/babel.config.js create mode 100644 javascriptv3/example_code/s3/tests/basic.unit.test.js create mode 100644 javascriptv3/example_code/s3/tests/copy-object.unit.test.js create mode 100644 javascriptv3/example_code/s3/tests/create-bucket.unit.test.js create mode 100644 javascriptv3/example_code/s3/tests/delete-bucket-policy.unit.test.js create mode 100644 javascriptv3/example_code/s3/tests/delete-bucket-website.unit.test.js create mode 100644 javascriptv3/example_code/s3/tests/delete-bucket.unit.test.js create mode 100644 javascriptv3/example_code/s3/tests/delete-object.unit.test.js create mode 100644 javascriptv3/example_code/s3/tests/delete-objects.unit.test.js create mode 100644 javascriptv3/example_code/s3/tests/get-bucket-cors.unit.test.js create mode 100644 javascriptv3/example_code/s3/tests/get-bucket-policy.unit.test.js create mode 100644 javascriptv3/example_code/s3/tests/get-bucket-website.unit.test.js create mode 100644 javascriptv3/example_code/s3/tests/get-object.unit.test.js delete mode 100644 javascriptv3/example_code/s3/tests/jest.config.js create mode 100644 javascriptv3/example_code/s3/tests/list-buckets.unit.test.js create mode 100644 javascriptv3/example_code/s3/tests/list-objects.unit.test.js create mode 100644 javascriptv3/example_code/s3/tests/multipart-download.unit.test.js delete mode 100644 javascriptv3/example_code/s3/tests/package.json create mode 100644 javascriptv3/example_code/s3/tests/put-bucket-acl.unit.test.js create mode 100644 javascriptv3/example_code/s3/tests/put-bucket-cors.unit.test.js create mode 100644 javascriptv3/example_code/s3/tests/put-bucket-policy.unit.test.js create mode 100644 javascriptv3/example_code/s3/tests/put-bucket-website.unit.test.js create mode 100644 javascriptv3/example_code/s3/tests/put-object.unit.test.js delete mode 100644 javascriptv3/example_code/s3/tests/s3_copyobject.test.js delete mode 100644 javascriptv3/example_code/s3/tests/s3_createbucket.test.js delete mode 100644 javascriptv3/example_code/s3/tests/s3_delete_all_objects.test.js delete mode 100644 javascriptv3/example_code/s3/tests/s3_delete_multiple_objects.test.js delete mode 100644 javascriptv3/example_code/s3/tests/s3_delete_object.test.js delete mode 100644 javascriptv3/example_code/s3/tests/s3_deletebucket.test.js delete mode 100644 javascriptv3/example_code/s3/tests/s3_deletebucketpolicy.test.js delete mode 100644 javascriptv3/example_code/s3/tests/s3_deletebucketwebsite.test.js delete mode 100644 javascriptv3/example_code/s3/tests/s3_getbucketacl.test.js delete mode 100644 javascriptv3/example_code/s3/tests/s3_getbucketpolicy.test.js delete mode 100644 javascriptv3/example_code/s3/tests/s3_getbucketwebsite.test.js delete mode 100644 javascriptv3/example_code/s3/tests/s3_getcors.test.js delete mode 100644 javascriptv3/example_code/s3/tests/s3_listbuckets.test.js delete mode 100644 javascriptv3/example_code/s3/tests/s3_listobjects.test.js delete mode 100644 javascriptv3/example_code/s3/tests/s3_multipartupload.test.js delete mode 100644 javascriptv3/example_code/s3/tests/s3_putbucketacl.test.js delete mode 100644 javascriptv3/example_code/s3/tests/s3_putbucketpolicy.test.js delete mode 100644 javascriptv3/example_code/s3/tests/s3_setbucketwebsite.test.js delete mode 100644 javascriptv3/example_code/s3/tests/yarn.lock create mode 100644 resources/sample_files/.sample_media/market_2.jpg create mode 100644 resources/sample_files/.sample_media/spheres_2.jpg diff --git a/.doc_gen/metadata/s3_metadata.yaml b/.doc_gen/metadata/s3_metadata.yaml index e0387b91a7c..8b280e68879 100644 --- a/.doc_gen/metadata/s3_metadata.yaml +++ b/.doc_gen/metadata/s3_metadata.yaml @@ -81,9 +81,6 @@ s3_CreateBucket: github: javascriptv3/example_code/s3 sdkguide: sdk-for-javascript/v3/developer-guide/s3-example-creating-buckets.html#s3-example-creating-buckets-new-bucket-2 excerpts: - - description: Create the client. - snippet_tags: - - s3.JavaScript.buckets.createclientv3 - description: Create the bucket. snippet_tags: - s3.JavaScript.buckets.createBucketV3 @@ -205,9 +202,6 @@ s3_CopyObject: - sdk_version: 3 github: javascriptv3/example_code/s3 excerpts: - - description: Create the client. - snippet_tags: - - s3.JavaScript.buckets.createclientv3 - description: Copy the object. snippet_tags: - s3.JavaScript.buckets.copyObjectV3 @@ -314,9 +308,6 @@ s3_DeleteBucketPolicy: github: javascriptv3/example_code/s3 sdkguide: sdk-for-javascript/v3/developer-guide/s3-example-bucket-policies.html#s3-example-bucket-policies-delete-policy excerpts: - - description: Create the client. - snippet_tags: - - s3.JavaScript.buckets.createclientv3 - description: Delete the bucket policy. snippet_tags: - s3.JavaScript.policy.deleteBucketPolicyV3 @@ -395,9 +386,6 @@ s3_DeleteObject: - sdk_version: 3 github: javascriptv3/example_code/s3 excerpts: - - description: Create the client. - snippet_tags: - - s3.JavaScript.buckets.createclientv3 - description: Delete an object. snippet_tags: - s3.JavaScript.buckets.deleteobjectV3 @@ -497,15 +485,9 @@ s3_DeleteObjects: - sdk_version: 3 github: javascriptv3/example_code/s3 excerpts: - - description: Create the client. - snippet_tags: - - s3.JavaScript.buckets.createclientv3 - description: Delete multiple objects. snippet_tags: - s3.JavaScript.buckets.deletemultipleobjectsV3 - - description: Delete all objects in a bucket. - snippet_tags: - - s3.JavaScript.buckets.deleteoallbjectsV3 Ruby: versions: - sdk_version: 3 @@ -571,9 +553,6 @@ s3_DeleteBucketWebsite: github: javascriptv3/example_code/s3 sdkguide: sdk-for-javascript/v3/developer-guide/s3-example-static-web-host.html#s3-example-static-web-host-delete-website excerpts: - - description: Create the client. - snippet_tags: - - s3.JavaScript.buckets.createclientv3 - description: Delete the website configuration from the bucket. snippet_tags: - s3.JavaScript.website.deleteBucketWebsiteV3 @@ -662,9 +641,6 @@ s3_GetBucketPolicy: github: javascriptv3/example_code/s3 sdkguide: sdk-for-javascript/v3/developer-guide/s3-example-bucket-policies.html#s3-example-bucket-policies-get-policy excerpts: - - description: Create the client. - snippet_tags: - - s3.JavaScript.buckets.createclientv3 - description: Get the bucket policy. snippet_tags: - s3.JavaScript.policy.getBucketPolicyV3 @@ -800,9 +776,6 @@ s3_GetObject: github: javascriptv3/example_code/s3 sdkguide: sdk-for-javascript/v3/developer-guide/s3-example-creating-buckets.html#s3-example-creating-buckets-get-object excerpts: - - description: Create the client. - snippet_tags: - - s3.JavaScript.buckets.createclientv3 - description: Download the object. snippet_tags: - s3.JavaScript.buckets.getobjectV3 @@ -1122,15 +1095,11 @@ s3_ListObjects: - sdk_version: 3 github: javascriptv3/example_code/s3 excerpts: - - description: Create the client. - snippet_tags: - - s3.JavaScript.buckets.createclientv3 - - description: List the objects. + - description: List all of the objects in your bucket. If there is more than one + object, IsTruncated and NextContinuationToken will be used to iterate + over the full list. snippet_tags: - s3.JavaScript.buckets.listObjectsV3 - - description: List 1000 or more objects. - snippet_tags: - - s3.JavaScript.buckets.listManyObjectsV3 Ruby: versions: - sdk_version: 3 @@ -1285,12 +1254,6 @@ s3_PutObject: github: javascriptv3/example_code/s3 sdkguide: sdk-for-javascript/v3/developer-guide/s3-example-creating-buckets.html#s3-example-creating-buckets-new-bucket-2 excerpts: - - description: Create the client. - snippet_tags: - - s3.JavaScript.buckets.createclientv3 - - description: Create and upload the object. - snippet_tags: - - s3.JavaScript.buckets.upload_putcommandV3 - description: Upload the object. snippet_tags: - s3.JavaScript.buckets.uploadV3 @@ -1421,9 +1384,6 @@ s3_DeleteBucket: github: javascriptv3/example_code/s3 sdkguide: sdk-for-javascript/v3/developer-guide/s3-example-creating-buckets.html#s3-example-deleting-buckets excerpts: - - description: Create the client. - snippet_tags: - - s3.JavaScript.buckets.createclientv3 - description: Delete the bucket. snippet_tags: - s3.JavaScript.buckets.deleteBucketV3 @@ -1492,9 +1452,6 @@ s3_GetBucketCors: github: javascriptv3/example_code/s3 sdkguide: sdk-for-javascript/v3/developer-guide/s3-example-configuring-buckets.html#s3-example-configuring-buckets-get-cors excerpts: - - description: Create the client. - snippet_tags: - - s3.JavaScript.buckets.createclientv3 - description: Get the CORS policy for the bucket. snippet_tags: - s3.JavaScript.cors.getBucketCorsV3 @@ -1549,9 +1506,6 @@ s3_PutBucketCors: github: javascriptv3/example_code/s3 sdkguide: sdk-for-javascript/v3/developer-guide/s3-example-configuring-buckets.html#s3-example-configuring-buckets-put-cors excerpts: - - description: Create the client. - snippet_tags: - - s3.JavaScript.buckets.createclientv3 - description: Add a CORS rule. snippet_tags: - s3.JavaScript.v3.cors.putBucketCors @@ -1644,9 +1598,6 @@ s3_GetBucketAcl: github: javascriptv3/example_code/s3 sdkguide: sdk-for-javascript/v3/developer-guide/s3-example-access-permissions.html#s3-example-access-permissions-get-acl excerpts: - - description: Create the client. - snippet_tags: - - s3.JavaScript.buckets.createclientv3 - description: Get the ACL permissions. snippet_tags: - s3.JavaScript.perms.getBucketAclV3 @@ -1709,9 +1660,6 @@ s3_PutBucketAcl: github: javascriptv3/example_code/s3 sdkguide: sdk-for-javascript/v3/developer-guide/s3-example-access-permissions.html#s3-example-access-permissions-put-acl excerpts: - - description: Create the client. - snippet_tags: - - s3.JavaScript.buckets.createclientv3 - description: Put the bucket ACL. snippet_tags: - s3.JavaScript.perms.putBucketAclV3 @@ -1766,9 +1714,6 @@ s3_PutBucketPolicy: github: javascriptv3/example_code/s3 sdkguide: sdk-for-javascript/v3/developer-guide/s3-example-bucket-policies.html#s3-example-bucket-policies-set-policy excerpts: - - description: Create the client. - snippet_tags: - - s3.JavaScript.buckets.createclientv3 - description: Add the policy. snippet_tags: - s3.JavaScript.policy.putBucketPolicyV3 @@ -1823,9 +1768,6 @@ s3_PutBucketWebsite: github: javascriptv3/example_code/s3 sdkguide: sdk-for-javascript/v3/developer-guide/s3-example-static-web-host.html#s3-example-static-web-host-set-website excerpts: - - description: Create the client. - snippet_tags: - - s3.JavaScript.buckets.createclientv3 - description: Set the website configuration. snippet_tags: - s3.JavaScript.website.putBucketWebsiteV3 @@ -1869,9 +1811,6 @@ s3_GetBucketWebsite: github: javascriptv3/example_code/s3 sdkguide: excerpts: - - description: Create the client. - snippet_tags: - - s3.JavaScript.buckets.createclientv3 - description: Get the website configuration. snippet_tags: - s3.JavaScript.website.getBucketWebsiteV3 @@ -1961,9 +1900,6 @@ s3_ListBuckets: github: javascriptv3/example_code/s3 sdkguide: sdk-for-javascript/v3/developer-guide/s3-example-creating-buckets.html#s3-example-creating-buckets-list-buckets excerpts: - - description: Create the client. - snippet_tags: - - s3.JavaScript.buckets.createclientv3 - description: List the buckets. snippet_tags: - s3.JavaScript.buckets.listBucketsV3 @@ -2176,6 +2112,18 @@ s3_Scenario_UsingLargeFiles: - description: snippet_tags: - rust.example_code.s3.large_files.scenario + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/s3 + sdkguide: + excerpts: + - description: Upload a large file. + snippet_tags: + - javascript.v3.s3.scenarios.multipartupload + - description: Download a large file. + snippet_tags: + - javascript.v3.s3.scenarios.multipartdownload services: s3: {} s3_Scenario_BatchObjectVersioning: @@ -2193,7 +2141,7 @@ s3_Scenario_BatchObjectVersioning: s3_Scenario_PresignedUrl: title: Create a presigned URL for &S3; using an &AWS; SDK title_abbrev: Create a presigned URL - synopsis: create a presigned URL for S3 and upload an object. + synopsis: create a presigned URL for Amazon S3 and upload an object. category: Scenarios languages: .NET: @@ -2258,9 +2206,6 @@ s3_Scenario_PresignedUrl: github: javascriptv3/example_code/s3 sdkguide: sdk-for-javascript/v3/developer-guide/s3-example-creating-buckets.html#s3-create-presigendurl excerpts: - - description: Create the client. - snippet_tags: - - s3.JavaScript.buckets.createclientv3 - description: Create a presigned URL to upload an object to a bucket. snippet_tags: - s3.JavaScript.buckets.presignedurlv3 @@ -2357,12 +2302,54 @@ s3_Scenario_GettingStarted: JavaScript: versions: - sdk_version: 3 - github: javascriptv3/example_code/s3/scenarios/s3_basics/src + github: javascriptv3/example_code/s3 sdkguide: excerpts: - - description: + - description: First, import all the necessary modules. + snippet_tags: + - javascript.v3.s3.scenarios.basic.imports + - description: The preceding imports reference some helper utilities. These utilities + are local to the GitHub repository linked at the start of + this section. For your reference, see the following implementations + of those utilities. + snippet_tags: + - javascript.v3.utils.dirnameFromMetaUrl + - javascript.v3.utils.promptToSelect + - javascript.v3.utils.promptToContinue + - javascript.v3.utils.promptForText + - javascript.v3.utils.wrapText + - description: Objects in S3 are stored in 'buckets'. Let's define a function + for creating a new bucket. + snippet_tags: + - javascript.v3.s3.scenarios.basic.CreateBucket + - description: Buckets contain 'objects'. This function uploads the + contents of a directory to your bucket as objects. + snippet_tags: + - javascript.v3.s3.scenarios.basic.PutObject + - description: After uploading objects, check to confirm that they were + uploaded correctly. You can use ListObjects for that. You'll be + using the 'Key' property, but there are other useful properties + in the response also. + snippet_tags: + - javascript.v3.s3.scenarios.basic.ListObjects + - description: Sometimes you might want to copy an object from one bucket to another. + Use the CopyObject command for that. snippet_tags: - - s3_basics.JavaScript.s3_basics + - javascript.v3.s3.scenarios.basic.CopyObject + - description: There's no SDK method for getting multiple objects from a bucket. + Instead, you'll create a list of objects to download and + iterate over them. + snippet_tags: + - javascript.v3.s3.scenarios.basic.GetObject + - description: It's time to clean up your resources. A bucket must be empty + before it can be deleted. These two functions empty and delete the + bucket. + snippet_tags: + - javascript.v3.s3.scenarios.basic.clean + - description: The 'main' function pulls everything together. If you run this + file directly the main function will be called. + snippet_tags: + - javascript.v3.s3.scenarios.basic.main Kotlin: versions: - sdk_version: 1 @@ -2521,3 +2508,22 @@ s3_MultipartCopy: - S3.dotnetv3.MPUapiCopyObjectExample services: s3: {UploadCopyPart, InitiateMultipartUpload, GetObjectMetadata, CompleteMultipartUpload} +s3_Scenario_ListObjectsWeb: + title: A web page that lists &S3; objects using an &AWS; SDK + title_abbrev: Create a web page that lists &S3; objects + synopsis: list &S3; objects in a web page. + category: Scenarios + languages: + JavaScript: + versions: + - sdk_version: 3 + github: javascriptv3/example_code/s3/scenarios/web/list-objects + sdkguide: + excerpts: + - description: The following code is the relevant React component that makes calls + to the &AWS; SDK. A runnable version of the application containing + this component can be found at the preceding GitHub link. + snippet_tags: + - javascript.v3.scenarios.web.ListObjects + services: + s3: {ListObjects} diff --git a/.doc_gen/metadata/sdks.yaml b/.doc_gen/metadata/sdks.yaml index 5e4ea8a27de..44a52d927d5 100644 --- a/.doc_gen/metadata/sdks.yaml +++ b/.doc_gen/metadata/sdks.yaml @@ -83,21 +83,21 @@ JavaScript: property: javascript sdk: 2: - long: "&JSBlong; V2" - short: "&JSB; V2" + long: "&JSBlong; (v2)" + short: "&JSB; (v2)" expanded: - long: "AWS SDK for JavaScript V2" - short: "SDK for JavaScript V2" + long: "AWS SDK for JavaScript (v2)" + short: "SDK for JavaScript (v2)" guide: "sdk-for-javascript/v2/developer-guide/welcome.html" api_ref: uid: "AWSJavaScriptSDK" name: "&guide-jsb-api;" 3: - long: "&JSBlong; V3" - short: "&JSB; V3" + long: "&JSBlong; (v3)" + short: "&JSB; (v3)" expanded: - long: "AWS SDK for JavaScript V3" - short: "SDK for JavaScript V3" + long: "AWS SDK for JavaScript (v3)" + short: "SDK for JavaScript (v3)" guide: "sdk-for-javascript/v3/developer-guide/welcome.html" api_ref: uid: "AWSJavaScriptSDKV3" diff --git a/.doc_gen/readmes/includes/overview.jinja2 b/.doc_gen/readmes/includes/overview.jinja2 index 7143f80fec0..3275e6519a3 100644 --- a/.doc_gen/readmes/includes/overview.jinja2 +++ b/.doc_gen/readmes/includes/overview.jinja2 @@ -1,6 +1,6 @@ ## Overview -Shows how to use the {{sdk['long']}} to work with {{service['long']}}. +Shows how to use the {{sdk['long']}} to work with {{service['long']}} ({{service['short']}}). {{ customs['overview'] -}} diff --git a/.doc_gen/readmes/includes/run_instructions.jinja2 b/.doc_gen/readmes/includes/run_instructions.jinja2 index d526dd9bce9..3bd17c82f98 100644 --- a/.doc_gen/readmes/includes/run_instructions.jinja2 +++ b/.doc_gen/readmes/includes/run_instructions.jinja2 @@ -11,7 +11,7 @@ node ./actions/ ``` **Run a scenario** - +Most scenarios can be run with the following command: ```bash node ./scenarios/ ``` diff --git a/.github/pre_validate/pre_validate.py b/.github/pre_validate/pre_validate.py index efd27935c6c..e0db3ef3e74 100644 --- a/.github/pre_validate/pre_validate.py +++ b/.github/pre_validate/pre_validate.py @@ -66,6 +66,8 @@ 'movies.json', 'speech_sample.mp3', 'chat_sfn_state_machine.json', + 'market_2.jpg', + 'spheres_2.jpg', } # media file types diff --git a/javascriptv3/example_code/ec2/scenarios/basic.js b/javascriptv3/example_code/ec2/scenarios/basic.js index bc8735ddb27..aece2df6aef 100644 --- a/javascriptv3/example_code/ec2/scenarios/basic.js +++ b/javascriptv3/example_code/ec2/scenarios/basic.js @@ -38,6 +38,9 @@ import { } from "@aws-sdk/client-ec2"; import { paginateGetParametersByPath, SSMClient } from "@aws-sdk/client-ssm"; +import { promptToSelect, promptToContinue } from "libs/utils/util-io.js"; +import { wrapText } from "libs/utils/util-string.js"; + const ec2Client = new EC2Client(); const ssmClient = new SSMClient(); @@ -147,7 +150,7 @@ const getAmznLinux2AMIs = async () => { const options = imageDetails.map( (image) => `${image.ImageId} - ${image.Description}` ); - const [selectedIndex] = await promptWithOptions(options); + const [selectedIndex] = await promptToSelect(options); return imageDetails[selectedIndex]; }; @@ -178,7 +181,7 @@ const getCompatibleInstanceTypes = async (imageDetails) => { (type) => `${type.InstanceType} - Memory:${type.MemoryInfo.SizeInMiB}` ); - const [selectedIndex] = await promptWithOptions( + const [selectedIndex] = await promptToSelect( instanceTypeList, "Select an instance type." ); @@ -331,48 +334,6 @@ const deleteTemporaryDirectory = () => { } }; -const wrapText = (text, char = "=") => { - const rule = char.repeat(80); - return `${rule}\n ${text}\n${rule}\n`; -}; - -const promptToContinue = (prefix) => { - const rl = createInterface({ - input: process.stdin, - output: process.stdout, - }); - - return new Promise((resolve) => { - rl.question(`\nPress enter to continue.\n`, () => { - rl.close(); - resolve(); - }); - }); -}; - -const promptWithOptions = (options, question = "") => { - const rl = createInterface({ - input: process.stdin, - output: process.stdout, - }); - const optionsList = options.map((opt, i) => `${i + 1}) ${opt}`).join("\n"); - - return new Promise((resolve) => { - rl.question(`${question}\n${optionsList}\n-> `, (answer) => { - rl.close(); - const selected = parseInt(answer); - if (isNaN(selected) || selected < 1 || selected > options.length) { - console.log( - `Invalid option. Select a number between 1 and ${options.length}` - ); - resolve(promptWithOptions(options)); - } else { - resolve([selected - 1, options[selected - 1]]); - } - }); - }); -}; - export const main = async () => { const keyPairName = "ec2-scenario-key-pair"; const securityGroupName = "ec2-scenario-security-group"; diff --git a/javascriptv3/example_code/libs/tests/util-io.unit.test.js b/javascriptv3/example_code/libs/tests/util-io.unit.test.js new file mode 100644 index 00000000000..85a0f547c1e --- /dev/null +++ b/javascriptv3/example_code/libs/tests/util-io.unit.test.js @@ -0,0 +1,11 @@ +import { describe, it, expect } from "vitest"; + +import { promptToSelect } from '../utils/util-io.js' + +describe("promptToSelect", () => { + it("should resolve with autoSelected option if it's valid", async () => { + const [selected, option] = await promptToSelect(["foo", "bar"], "", 1); + expect(selected).toEqual(0); + expect(option).toEqual("foo"); + }); +}); diff --git a/javascriptv3/example_code/libs/utils/util-fs.js b/javascriptv3/example_code/libs/utils/util-fs.js index 9748dbbe321..49f7e8289e4 100644 --- a/javascriptv3/example_code/libs/utils/util-fs.js +++ b/javascriptv3/example_code/libs/utils/util-fs.js @@ -32,53 +32,59 @@ import { fileURLToPath } from "url"; import { log } from "./util-log.js"; import { promiseAll, splitMapTrim } from "../ext-ramda.js"; -const deleteFiles = compose(promiseAll, map(unlink)); +export const deleteFiles = compose(promiseAll, map(unlink)); -const dirnameFromMetaUrl = (metaUrl) => { +// snippet-start:[javascript.v3.utils.dirnameFromMetaUrl] +export const dirnameFromMetaUrl = (metaUrl) => { return fileURLToPath(new URL(".", metaUrl)); }; +// snippet-end:[javascript.v3.utils.dirnameFromMetaUrl] -const getDelimitedEntries = curry((delimiter, str) => +export const getDelimitedEntries = curry((delimiter, str) => pipe(getTmp, defaultTo(""), splitMapTrim(delimiter))(str) ); -const getNewLineDelimitedEntries = getDelimitedEntries("\n"); +export const getNewLineDelimitedEntries = getDelimitedEntries("\n"); -const getTmp = tryCatch( +export const getTmp = tryCatch( (name) => readFileSync(`./${name}.tmp`, { encoding: "utf-8" }), always(null) ); -const setTmp = (name, data) => +export const setTmp = (name, data) => writeFileSync(`./${name}.tmp`, data, { encoding: "utf-8" }); -const handleZipWarning = (resolve) => (w) => { +export const handleZipWarning = (resolve) => (w) => { log(w); resolve(); }; -const handleZipEnd = (resolve, path) => async () => { +export const handleZipEnd = (resolve, path) => async () => { log(`Zipped successfully.`); const buffer = await readFile(path); resolve(buffer); }; -const makeDir = ifElse(existsSync, identity, tap(mkdirSync)); +export const makeDir = ifElse(existsSync, identity, tap(mkdirSync)); -const readLines = pipe(readFileSync, invoker(0, "toString"), split("\n")); +export const readLines = pipe( + readFileSync, + invoker(0, "toString"), + split("\n") +); -const readSubdirSync = pipe( +export const readSubdirSync = pipe( readdirSync, filter(invoker(0, "isDirectory")), map(prop("name")) ); /** - * - * @param {string} inputPath + * + * @param {string} inputPath * @returns {Promise} */ -const zip = (inputPath) => +export const zip = (inputPath) => new Promise((resolve, reject) => { try { readdirSync(inputPath); @@ -102,16 +108,3 @@ const zip = (inputPath) => archive.directory(inputPath, false); archive.finalize(); }); - -export { - deleteFiles, - dirnameFromMetaUrl, - getTmp, - makeDir, - readLines, - readSubdirSync, - getDelimitedEntries, - getNewLineDelimitedEntries, - setTmp, - zip, -}; diff --git a/javascriptv3/example_code/libs/utils/util-io.js b/javascriptv3/example_code/libs/utils/util-io.js new file mode 100644 index 00000000000..9e695209200 --- /dev/null +++ b/javascriptv3/example_code/libs/utils/util-io.js @@ -0,0 +1,71 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { createInterface } from "readline"; + +// snippet-start:[javascript.v3.utils.promptToSelect] +export const promptToSelect = (options, question = "", autoSelect) => { + const rl = createInterface({ + input: process.stdin, + output: process.stdout, + }); + const selectionInvalid = (selected) => + isNaN(selected) || selected < 1 || selected > options.length; + const optionsList = options.map((opt, i) => `${i + 1}) ${opt}`).join("\n"); + const prompt = `${question}\n${optionsList}\n-> `; + + return new Promise((resolve) => { + if (!selectionInvalid(autoSelect)) { + resolve([autoSelect - 1, options[autoSelect - 1]]); + return; + } + + rl.question(prompt, (answer) => { + rl.close(); + const selected = parseInt(answer); + if (selectionInvalid(selected)) { + console.log( + `Invalid option. Select a number between 1 and ${options.length}` + ); + resolve(promptToSelect(options)); + } else { + resolve([selected - 1, options[selected - 1]]); + } + }); + }); +}; +// snippet-end:[javascript.v3.utils.promptToSelect] + +// snippet-start:[javascript.v3.utils.promptToContinue] +export const promptToContinue = () => { + const rl = createInterface({ + input: process.stdin, + output: process.stdout, + }); + + return new Promise((resolve) => { + rl.question(`\nPress enter to continue.\n`, () => { + rl.close(); + resolve(); + }); + }); +}; +// snippet-end:[javascript.v3.utils.promptToContinue] + +// snippet-start:[javascript.v3.utils.promptForText] +export const promptForText = (question) => { + const rl = createInterface({ + input: process.stdin, + output: process.stdout, + }); + + return new Promise((resolve) => { + rl.question(`${question}\n-> `, (answer) => { + rl.close(); + resolve(answer); + }); + }); +}; +// snippet-end:[javascript.v3.utils.promptForText] diff --git a/javascriptv3/example_code/libs/utils/util-string.js b/javascriptv3/example_code/libs/utils/util-string.js index c86d7afb39f..12bca6e74af 100644 --- a/javascriptv3/example_code/libs/utils/util-string.js +++ b/javascriptv3/example_code/libs/utils/util-string.js @@ -6,9 +6,9 @@ import { pipe, adjust, join, split, toLower, map, toUpper } from "ramda"; import { v4 as uuidv4 } from "uuid"; -const getUniqueName = (name) => `${uuidv4()}-${name.toLowerCase()}`; +export const getUniqueName = (name) => `${uuidv4()}-${name.toLowerCase()}`; -const postfix = (source, str) => { +export const postfix = (source, str) => { if (typeof str !== "string") { throw new Error("Cannot postfix a non-string value."); } @@ -16,25 +16,21 @@ const postfix = (source, str) => { return `${source}${str}`; }; -const downcaseSplit = pipe(toLower, split("-")); +export const downcaseSplit = pipe(toLower, split("-")); -const capitalize = pipe(Array.from, adjust(0, toUpper), join("")); +export const capitalize = pipe(Array.from, adjust(0, toUpper), join("")); -const kebabCase = pipe(downcaseSplit, join("-")); +export const kebabCase = pipe(downcaseSplit, join("-")); -const pascalCase = pipe(downcaseSplit, map(capitalize), join("")); +export const pascalCase = pipe(downcaseSplit, map(capitalize), join("")); -const snakeCase = pipe(downcaseSplit, join("_")); +export const snakeCase = pipe(downcaseSplit, join("_")); -const titleCase = pipe(downcaseSplit, map(capitalize), join(" ")); +export const titleCase = pipe(downcaseSplit, map(capitalize), join(" ")); -export { - capitalize, - downcaseSplit, - getUniqueName, - kebabCase, - pascalCase, - postfix, - snakeCase, - titleCase +// snippet-start:[javascript.v3.utils.wrapText] +export const wrapText = (text, char = "=") => { + const rule = char.repeat(80); + return `${rule}\n ${text}\n${rule}\n`; }; +// snippet-end:[javascript.v3.utils.wrapText] diff --git a/javascriptv3/example_code/s3/README.md b/javascriptv3/example_code/s3/README.md index 73c78beeb6c..a4a5ac9e92a 100644 --- a/javascriptv3/example_code/s3/README.md +++ b/javascriptv3/example_code/s3/README.md @@ -1,82 +1,162 @@ -# Amazon S3 JavaScript SDK v3 code examples -The code examples in this directory demonstrate how to work with Amazon Simple Storage Service (Amazon S3) using the AWS SDK for JavaScript version 3 (v3). + +# Amazon S3 code examples for the SDK for JavaScript (v3) -Amazon S3 is an object storage service that offers industry-leading scalability, data availability, security, and performance. +## Overview + +Shows how to use the AWS SDK for JavaScript (v3) to work with Amazon Simple Storage Service (Amazon S3). + + + + +*Amazon S3 is storage for the internet. You can use Amazon S3 to store and retrieve any amount of data at any time, from anywhere on the web.* + +## ⚠ Important + +* Running this code might result in charges to your AWS account. +* Running the tests might result in charges to your AWS account. +* We recommend that you grant your code least privilege. At most, grant only the minimum permissions required to perform the task. For more information, see [Grant least privilege](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege). +* This code is not tested in every AWS Region. For more information, see [AWS Regional Services](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services). + + + ## Code examples -In this workspace, you can find the following AWS SDK for JavaScript version 3 (v3) examples for Amazon S3: -### Scenario examples -- [S3_basics](scenarios/s3_basics/src/s3_basics.js) - -### Single action examples -- [Copy object](src/s3_copyobject.js) (CopyObjectCommand) -- [Create and upload objects](src/s3_create_and_upload_objects.js) (PutObjectCommand) -- [Create a bucket](src/s3_createbucket.js) (CreateBucketCommand) -- [Delete a bucket](src/s3_deletebucket.js) (DeleteBucketCommand) -- [Delete all objects from a bucket](src/s3_delete_all_objects.js) (ListObjectsCommand, DeleteObjectCommand) -- [Delete multiple objects from a bucket](src/s3_delete_multiple_objects.js) (DeleteObjectsCommand) -- [Delete an object from a bucket](src/s3_delete_object.js) (DeleteObjectCommand) -- [Delete a bucket policy](src/s3_deletebucketpolicy.js) (DeleteBucketPolicyCommand) -- [Delete a bucket website policy](src/s3_deletebucketwebsite.js) (DeleteBucketWebsiteCommand) -- [Create a pre-signed URL to get objects](src/s3_get_presignedURL.js) -- [Get a bucket Access Control List (ACL)](src/s3_getbucketacl.js) -- [Get a bucket policy](src/s3_getbucketpolicy.js) (GetBucketPolicyCommand) -- [Get a bucket website policy](src/s3_getbucketwebsite.js) (GetBucketWebsiteCommand) -- [Get a bucket CORS policy](src/s3_getcors.js) (GetBucketCorsCommand) -- [Get objects from a bucket](src/s3_getobject.js) (GetObjectCommand) -- [Get more than 1000 objects from a bucket](src/s3_list1000plusobjects.js) (ListObjectsCommand) -- [List buckets](src/s3_listbuckets.js) (ListBucketsCommand) -- [List objects](src/s3_listobjects.js) (ListObjectsCommand) -- [Create a pre-signed URL to put objects](src/s3_put_presignedURL.js) -- [Set a bucket ACL](src/s3_putbucketacl.js) (PutBucketAclCommand) -- [Set a bucket policy](src/s3_putbucketpolicy.js) (PutBucketPolicyCommand) -- [Set a bucket website policy](src/s3_setbucketwebsite.js) (PutBucketWebsiteCommand) -- [Set a bucket CORS policy](src/s3_setcors.js) (PutBucketCorsCommand) -- [Upload objects to a bucket](src/s3_upload_object.js) (PutObjectCommand) - -**Note**: All code examples are written in ECMAscript 6 (ES6). For guidelines on converting to CommonJS, see -[JavaScript ES6/CommonJS syntax](https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/sdk-examples-javascript-syntax.html). +### Single actions -## Important +Code excerpts that show you how to call individual service functions. -- As an AWS best practice, grant this code least privilege, or only the - permissions required to perform a task. For more information, see - [Grant least privilege](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege) - in the *AWS Identity and Access Management User Guide*. -- This code has not been tested in all AWS Regions. Some AWS services are - available only in specific AWS Regions. For more information, see the - [AWS Regional Services List](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/) - on the AWS website. -- Running this code might result in charges to your AWS account. +* [Add CORS rules to a bucket](actions/put-bucket-cors.js#L8) (`PutBucketCors`) +* [Add a policy to a bucket](actions/put-bucket-policy.js#L8) (`PutBucketPolicy`) +* [Copy an object from one bucket to another](actions/copy-object.js#L8) (`CopyObject`) +* [Create a bucket](actions/create-bucket.js#L8) (`CreateBucket`) +* [Delete a policy from a bucket](actions/delete-bucket-policy.js#L8) (`DeleteBucketPolicy`) +* [Delete an empty bucket](actions/delete-bucket.js#L8) (`DeleteBucket`) +* [Delete an object](actions/delete-object.js#L8) (`DeleteObject`) +* [Delete multiple objects](actions/delete-objects.js#L8) (`DeleteObjects`) +* [Delete the website configuration from a bucket](actions/delete-bucket-website.js#L8) (`DeleteBucketWebsite`) +* [Get CORS rules for a bucket](actions/get-bucket-cors.js#L8) (`GetBucketCors`) +* [Get an object from a bucket](actions/get-object.js#L8) (`GetObject`) +* [Get the ACL of a bucket](actions/get-bucket-acl.js#L8) (`GetBucketAcl`) +* [Get the policy for a bucket](actions/get-bucket-policy.js#L8) (`GetBucketPolicy`) +* [Get the website configuration for a bucket](actions/get-bucket-website.js#L8) (`GetBucketWebsite`) +* [List buckets](actions/list-buckets.js#L8) (`ListBuckets`) +* [List objects in a bucket](actions/list-objects.js#L8) (`ListObjects`) +* [Set a new ACL for a bucket](actions/put-bucket-acl.js#L8) (`PutBucketAcl`) +* [Set the website configuration for a bucket](actions/put-bucket-website.js#L8) (`PutBucketWebsite`) +* [Upload an object to a bucket](actions/put-object.js#L8) (`PutObject`) -## Running the code +### Scenarios + +Code examples that show you how to accomplish a specific task by calling multiple +functions within the same service. + +* [Create a presigned URL](scenarios/presigned-url-upload.js) +* [Create a web page that lists Amazon S3 objects](scenarios/web/list-objects/src/App.tsx) +* [Get started with buckets and objects](scenarios/basic.js) +* [Upload or download large files](scenarios/multipart-upload.js) + +## Run the examples ### Prerequisites -- An AWS account. To create an account, see [How do I create and activate a new AWS account](https://aws.amazon.com/premiumsupport/knowledge-center/create-and-activate-aws-account/) on the AWS Premium Support website. -- AWS credentials. For details, see [Setting credentials in Node.js](https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/setting-credentials-node.html) in the - *AWS SDK for Javascript (v3) Developer Guide*. -1. Clone the [AWS SDK Code Samples repo](https://github.com/awsdocs/aws-doc-sdk-examples) to your local environment. See [the Github documentation](https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/cloning-a-repository) for instructions. -2. Install the dependencies listed in the package.json. +For prerequisites, see the [README](../../README.md#Prerequisites) in the `javascriptv3` folder. + -``` -npm install node -g -cd javascriptv3/example_code/s3 -npm install -``` -3. In your text editor, update user variables specified in the ```Inputs``` section of the sample file. -4. Run sample code: + + + +### Instructions + +**Note**: All code examples are written in ECMAscript 6 (ES6). For guidelines on converting to CommonJS, see +[JavaScript ES6/CommonJS syntax](https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/sdk-examples-javascript-syntax.html). + +**Run a single action** + +```bash +node ./actions/ ``` -cd src -node [example name].js + +**Run a scenario** +Most scenarios can be run with the following command: +```bash +node ./scenarios/ ``` -## Unit tests -For more information see, the [README](../README.rst). + +Some scenarios are web applications that must be bundled. These scenarios are in the `scenarios/web` folder. +Follow these steps to run a web scenario. Some scenarios might require extra steps to get them working. + +1. Navigate to the web scenario you want to run. +1. Run `npm i`. +1. Run `npm run dev`. + + + +#### Create a presigned URL + +This example shows you how to create a presigned URL for Amazon S3 and upload an object. + + + + + +#### Create a web page that lists Amazon S3 objects + +This example shows you how to list Amazon S3 objects in a web page. + + + + + +#### Get started with buckets and objects + +This example shows you how to do the following: + +* Create a bucket. +* Upload a file to the bucket. +* Download an object from a bucket. +* Copy an object to a subfolder in a bucket. +* List the objects in a bucket. +* Delete the objects in a bucket. +* Delete a bucket. + + + + +#### Upload or download large files + +This example shows you how to upload or download large files to and from Amazon S3. + + + + + +### Tests + +⚠ Running tests might result in charges to your AWS account. + + +To find instructions for running these tests, see the [README](../../README.md#Tests) +in the `javascriptv3` folder. + + + + + + +## Additional resources + +* [Amazon S3 User Guide](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html) +* [Amazon S3 API Reference](https://docs.aws.amazon.com/AmazonS3/latest/API/Welcome.html) +* [SDK for JavaScript (v3) Amazon S3 reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-s3/index.html) + + + + +--- + +Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -## Resources -- [AWS SDK for JavaScript v3 repo](https://github.com/aws/aws-sdk-js-v3) -- [AWS SDK for JavaScript v3 Developer Guide](https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-examples.html) -- [AWS SDK for JavaScript v3 API Reference Guide](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-s3/index.html) +SPDX-License-Identifier: Apache-2.0 \ No newline at end of file diff --git a/javascriptv3/example_code/s3/actions/copy-object.js b/javascriptv3/example_code/s3/actions/copy-object.js new file mode 100644 index 00000000000..0a6813e71a6 --- /dev/null +++ b/javascriptv3/example_code/s3/actions/copy-object.js @@ -0,0 +1,32 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[s3.JavaScript.buckets.copyObjectV3] +import { S3Client, CopyObjectCommand } from "@aws-sdk/client-s3"; + +const client = new S3Client({}); + +export const main = async () => { + const command = new CopyObjectCommand({ + CopySource: "SOURCE_BUCKET/SOURCE_OBJECT_KEY", + Bucket: "DESTINATION_BUCKET", + Key: "NEW_OBJECT_KEY", + }); + + try { + const response = await client.send(command); + console.log(response); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[s3.JavaScript.buckets.copyObjectV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/s3/actions/create-bucket.js b/javascriptv3/example_code/s3/actions/create-bucket.js new file mode 100644 index 00000000000..813e28adcd2 --- /dev/null +++ b/javascriptv3/example_code/s3/actions/create-bucket.js @@ -0,0 +1,32 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[s3.JavaScript.buckets.createBucketV3] +import { CreateBucketCommand, S3Client } from "@aws-sdk/client-s3"; + +const client = new S3Client({}); + +export const main = async () => { + const command = new CreateBucketCommand({ + // The name of the bucket. Bucket names are unique and have several other constraints. + // See https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html + Bucket: "bucket-name", + }); + + try { + const { Location } = await client.send(command); + console.log(`Bucket created with location ${Location}`); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[s3.JavaScript.buckets.createBucketV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/s3/actions/delete-bucket-policy.js b/javascriptv3/example_code/s3/actions/delete-bucket-policy.js new file mode 100644 index 00000000000..8032f7343f0 --- /dev/null +++ b/javascriptv3/example_code/s3/actions/delete-bucket-policy.js @@ -0,0 +1,31 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[s3.JavaScript.policy.deleteBucketPolicyV3] +import { DeleteBucketPolicyCommand, S3Client } from "@aws-sdk/client-s3"; + +const client = new S3Client({}); + +// This will remove the policy from the bucket. +export const main = async () => { + const command = new DeleteBucketPolicyCommand({ + Bucket: "test-bucket", + }); + + try { + const response = await client.send(command); + console.log(response); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[s3.JavaScript.policy.deleteBucketPolicyV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/s3/actions/delete-bucket-website.js b/javascriptv3/example_code/s3/actions/delete-bucket-website.js new file mode 100644 index 00000000000..e4ba5807bf7 --- /dev/null +++ b/javascriptv3/example_code/s3/actions/delete-bucket-website.js @@ -0,0 +1,31 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[s3.JavaScript.website.deleteBucketWebsiteV3] +import { DeleteBucketWebsiteCommand, S3Client } from "@aws-sdk/client-s3"; + +const client = new S3Client({}) + +// Disable static website hosting on the bucket. +export const main = async () => { + const command = new DeleteBucketWebsiteCommand({ + Bucket: "test-bucket", + }); + + try { + const response = await client.send(command); + console.log(response); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[s3.JavaScript.website.deleteBucketWebsiteV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/s3/actions/delete-bucket.js b/javascriptv3/example_code/s3/actions/delete-bucket.js new file mode 100644 index 00000000000..e5438a03776 --- /dev/null +++ b/javascriptv3/example_code/s3/actions/delete-bucket.js @@ -0,0 +1,31 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[s3.JavaScript.buckets.deleteBucketV3] +import { DeleteBucketCommand, S3Client } from "@aws-sdk/client-s3"; + +const client = new S3Client({}) + +// Delete a bucket. +export const main = async () => { + const command = new DeleteBucketCommand({ + Bucket: "test-bucket", + }); + + try { + const response = await client.send(command); + console.log(response); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[s3.JavaScript.buckets.deleteBucketV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/s3/actions/delete-object.js b/javascriptv3/example_code/s3/actions/delete-object.js new file mode 100644 index 00000000000..85df21a0c15 --- /dev/null +++ b/javascriptv3/example_code/s3/actions/delete-object.js @@ -0,0 +1,31 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[s3.JavaScript.buckets.deleteobjectV3] +import { DeleteObjectCommand, S3Client } from "@aws-sdk/client-s3"; + +const client = new S3Client({}); + +export const main = async () => { + const command = new DeleteObjectCommand({ + Bucket: "test-bucket", + Key: "test-key.txt", + }); + + try { + const response = await client.send(command); + console.log(response); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[s3.JavaScript.buckets.deleteobjectV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/s3/actions/delete-objects.js b/javascriptv3/example_code/s3/actions/delete-objects.js new file mode 100644 index 00000000000..25f4c3c374d --- /dev/null +++ b/javascriptv3/example_code/s3/actions/delete-objects.js @@ -0,0 +1,36 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[s3.JavaScript.buckets.deletemultipleobjectsV3] +import { DeleteObjectsCommand, S3Client } from "@aws-sdk/client-s3"; + +const client = new S3Client({}); + +export const main = async () => { + const command = new DeleteObjectsCommand({ + Bucket: "test-bucket", + Delete: { + Objects: [{ Key: "object1.txt" }, { Key: "object2.txt" }], + }, + }); + + try { + const { Deleted } = await client.send(command); + console.log( + `Successfully deleted ${Deleted.length} objects from S3 bucket. Deleted objects:` + ); + console.log(Deleted.map((d) => ` • ${d.Key}`).join("\n")); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[s3.JavaScript.buckets.deletemultipleobjectsV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/s3/actions/get-bucket-acl.js b/javascriptv3/example_code/s3/actions/get-bucket-acl.js new file mode 100644 index 00000000000..c1aa8d32387 --- /dev/null +++ b/javascriptv3/example_code/s3/actions/get-bucket-acl.js @@ -0,0 +1,30 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[s3.JavaScript.perms.getBucketAclV3] +import { GetBucketAclCommand, S3Client } from "@aws-sdk/client-s3"; + +const client = new S3Client({}); + +export const main = async () => { + const command = new GetBucketAclCommand({ + Bucket: "test-bucket", + }); + + try { + const response = await client.send(command); + console.log(response); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[s3.JavaScript.perms.getBucketAclV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/s3/actions/get-bucket-cors.js b/javascriptv3/example_code/s3/actions/get-bucket-cors.js new file mode 100644 index 00000000000..766b0254475 --- /dev/null +++ b/javascriptv3/example_code/s3/actions/get-bucket-cors.js @@ -0,0 +1,40 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[s3.JavaScript.cors.getBucketCorsV3] +import { GetBucketCorsCommand, S3Client } from "@aws-sdk/client-s3"; + +const client = new S3Client({}); + +export const main = async () => { + const command = new GetBucketCorsCommand({ + Bucket: "test-bucket", + }); + + try { + const { CORSRules } = await client.send(command); + CORSRules.forEach((cr, i) => { + console.log( + `\nCORSRule ${i + 1}`, + `\n${"-".repeat(10)}`, + `\nAllowedHeaders: ${cr.AllowedHeaders.join(" ")}`, + `\nAllowedMethods: ${cr.AllowedMethods.join(" ")}`, + `\nAllowedOrigins: ${cr.AllowedOrigins.join(" ")}`, + `\nExposeHeaders: ${cr.ExposeHeaders.join(" ")}`, + `\nMaxAgeSeconds: ${cr.MaxAgeSeconds}` + ); + }); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[s3.JavaScript.cors.getBucketCorsV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/s3/actions/get-bucket-policy.js b/javascriptv3/example_code/s3/actions/get-bucket-policy.js new file mode 100644 index 00000000000..9a91ce107b6 --- /dev/null +++ b/javascriptv3/example_code/s3/actions/get-bucket-policy.js @@ -0,0 +1,30 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[s3.JavaScript.policy.getBucketPolicyV3] +import { GetBucketPolicyCommand, S3Client } from "@aws-sdk/client-s3"; + +const client = new S3Client({}); + +export const main = async () => { + const command = new GetBucketPolicyCommand({ + Bucket: "test-bucket", + }); + + try { + const { Policy } = await client.send(command); + console.log(JSON.parse(Policy)); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[s3.JavaScript.policy.getBucketPolicyV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/s3/actions/get-bucket-website.js b/javascriptv3/example_code/s3/actions/get-bucket-website.js new file mode 100644 index 00000000000..ca25511136a --- /dev/null +++ b/javascriptv3/example_code/s3/actions/get-bucket-website.js @@ -0,0 +1,33 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[s3.JavaScript.website.getBucketWebsiteV3] +import { GetBucketWebsiteCommand, S3Client } from "@aws-sdk/client-s3"; + +const client = new S3Client({}); + +export const main = async () => { + const command = new GetBucketWebsiteCommand({ + Bucket: "test-bucket", + }); + + try { + const { ErrorDocument, IndexDocument } = await client.send(command); + console.log( + `Your bucket is set up to host a website. It has an error document:`, + `${ErrorDocument.Key}, and an index document: ${IndexDocument.Suffix}.` + ); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[s3.JavaScript.website.getBucketWebsiteV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/s3/actions/get-object.js b/javascriptv3/example_code/s3/actions/get-object.js new file mode 100644 index 00000000000..9079e6c9e41 --- /dev/null +++ b/javascriptv3/example_code/s3/actions/get-object.js @@ -0,0 +1,33 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[s3.JavaScript.buckets.getobjectV3] +import { GetObjectCommand, S3Client } from "@aws-sdk/client-s3"; + +const client = new S3Client({}) + +export const main = async () => { + const command = new GetObjectCommand({ + Bucket: "test-bucket", + Key: "hello-s3.txt" + }); + + try { + const response = await client.send(command); + // The Body object also has 'transformToByteArray' and 'transformToWebStream' methods. + const str = await response.Body.transformToString(); + console.log(str); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[s3.JavaScript.buckets.getobjectV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/s3/actions/list-buckets.js b/javascriptv3/example_code/s3/actions/list-buckets.js new file mode 100644 index 00000000000..9be82dda825 --- /dev/null +++ b/javascriptv3/example_code/s3/actions/list-buckets.js @@ -0,0 +1,33 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[s3.JavaScript.buckets.listBucketsV3] +import { ListBucketsCommand, S3Client } from "@aws-sdk/client-s3"; + +const client = new S3Client({}); + +export const main = async () => { + const command = new ListBucketsCommand({}); + + try { + const { Owner, Buckets } = await client.send(command); + console.log( + `${Owner.DisplayName} owns ${Buckets.length} bucket${ + Buckets.length === 1 ? "" : "s" + }:` + ); + console.log(`${Buckets.map((b) => ` • ${b.Name}`).join("\n")}`); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[s3.JavaScript.buckets.listBucketsV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/s3/actions/list-objects.js b/javascriptv3/example_code/s3/actions/list-objects.js new file mode 100644 index 00000000000..6fa9404f8ba --- /dev/null +++ b/javascriptv3/example_code/s3/actions/list-objects.js @@ -0,0 +1,51 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[s3.JavaScript.buckets.listObjectsV3] +// snippet-start:[s3.JavaScript.buckets.listManyObjectsV3] +import { + S3Client, + // This command supersedes the ListObjectsCommand and is the recommended way to list objects. + ListObjectsV2Command, +} from "@aws-sdk/client-s3"; + +const client = new S3Client({}); + +export const main = async () => { + const command = new ListObjectsV2Command({ + Bucket: "my-bucket", + // The default and maximum number of keys returned is 1000. This limits it to + // one for demonstration purposes. + MaxKeys: 1, + }); + + try { + let isTruncated = true; + + console.log("Your bucket contains the following objects:\n") + let contents = ""; + + while (isTruncated) { + const { Contents, IsTruncated, NextContinuationToken } = await client.send(command); + const contentsList = Contents.map((c) => ` • ${c.Key}`).join("\n"); + contents += contentsList + "\n"; + isTruncated = IsTruncated; + command.input.ContinuationToken = NextContinuationToken; + } + console.log(contents); + + } catch (err) { + console.error(err); + } +}; +// snippet-end:[s3.JavaScript.buckets.listObjectsV3] +// snippet-end:[s3.JavaScript.buckets.listManyObjectsV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/s3/actions/put-bucket-acl.js b/javascriptv3/example_code/s3/actions/put-bucket-acl.js new file mode 100644 index 00000000000..a14b63079a7 --- /dev/null +++ b/javascriptv3/example_code/s3/actions/put-bucket-acl.js @@ -0,0 +1,58 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[s3.JavaScript.perms.putBucketAclV3] +import { + PutBucketAclCommand, + GetBucketAclCommand, + S3Client, +} from "@aws-sdk/client-s3"; + +const client = new S3Client({}); + +// Most Amazon S3 use cases don't require the use of access control lists (ACLs). +// We recommend that you disable ACLs, except in unusual circumstances where +// you need to control access for each object individually. +// Consider a policy instead. For more information see https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-policies.html. +export const main = async () => { + // Grant a user READ access to a bucket. + const command = new PutBucketAclCommand({ + Bucket: "test-bucket", + AccessControlPolicy: { + Grants: [ + { + Grantee: { + // The canonical ID of the user. This ID is an obfuscated form of your AWS account number. + // It's unique to Amazon S3 and can't be found elsewhere. + // For more information, see https://docs.aws.amazon.com/AmazonS3/latest/userguide/finding-canonical-user-id.html. + ID: "canonical-id-1", + Type: "CanonicalUser", + }, + // One of FULL_CONTROL | READ | WRITE | READ_ACP | WRITE_ACP + // https://docs.aws.amazon.com/AmazonS3/latest/API/API_Grant.html#AmazonS3-Type-Grant-Permission + Permission: "FULL_CONTROL", + }, + ], + Owner: { + ID: "canonical-id-2", + }, + }, + }); + + try { + const response = await client.send(command); + console.log(response); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[s3.JavaScript.perms.putBucketAclV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/s3/actions/put-bucket-cors.js b/javascriptv3/example_code/s3/actions/put-bucket-cors.js new file mode 100644 index 00000000000..5efc65e31a1 --- /dev/null +++ b/javascriptv3/example_code/s3/actions/put-bucket-cors.js @@ -0,0 +1,51 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[s3.JavaScript.v3.cors.putBucketCors] +import { PutBucketCorsCommand, S3Client } from "@aws-sdk/client-s3"; + +const client = new S3Client({}) + +// By default, Amazon S3 doesn't allow cross-origin requests. Use this command +// to explicitly allow cross-origin requests. +export const main = async () => { + const command = new PutBucketCorsCommand({ + Bucket: "test-bucket", + CORSConfiguration: { + CORSRules: [ + { + // Allow all headers to be sent to this bucket. + AllowedHeaders: ["*"], + // Allow only GET and PUT methods to be sent to this bucket. + AllowedMethods: ["GET", "PUT"], + // Allow only requests from the specified origin. + AllowedOrigins: ["https://www.example.com"], + // Allow the entity tag (ETag) header to be returned in the response. The ETag header + // The entity tag represents a specific version of the object. The ETag reflects + // changes only to the contents of an object, not its metadata. + ExposeHeaders: ["ETag"], + // How long the requesting browser should cache the preflight response. After + // this time, the preflight request will have to be made again. + MaxAgeSeconds: 3600, + }, + ], + }, + }); + + try { + const response = await client.send(command); + console.log(response); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[s3.JavaScript.v3.cors.putBucketCors] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/s3/actions/put-bucket-policy.js b/javascriptv3/example_code/s3/actions/put-bucket-policy.js new file mode 100644 index 00000000000..81672f4bfbf --- /dev/null +++ b/javascriptv3/example_code/s3/actions/put-bucket-policy.js @@ -0,0 +1,46 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[s3.JavaScript.policy.putBucketPolicyV3] +import { PutBucketPolicyCommand, S3Client } from "@aws-sdk/client-s3"; + +const client = new S3Client({}); + +export const main = async () => { + const command = new PutBucketPolicyCommand({ + Policy: JSON.stringify({ + Version: "2012-10-17", + Statement: [ + { + Sid: "AllowGetObject", + // Allow this particular user to call GetObject on any object in this bucket. + Effect: "Allow", + Principal: { + AWS: "arn:aws:iam::ACCOUNT-ID:user/USERNAME", + }, + Action: "s3:GetObject", + Resource: "arn:aws:s3:::BUCKET-NAME/*", + }, + ], + }), + // Apply the preceding policy to this bucket. + Bucket: "BUCKET-NAME", + }); + + try { + const response = await client.send(command); + console.log(response); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[s3.JavaScript.policy.putBucketPolicyV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/s3/actions/put-bucket-website.js b/javascriptv3/example_code/s3/actions/put-bucket-website.js new file mode 100644 index 00000000000..1a597848e7f --- /dev/null +++ b/javascriptv3/example_code/s3/actions/put-bucket-website.js @@ -0,0 +1,42 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[s3.JavaScript.website.putBucketWebsiteV3] +import { PutBucketWebsiteCommand, S3Client } from "@aws-sdk/client-s3"; + +const client = new S3Client({}); + +// Set up a bucket as a static website. +// The bucket needs to be publicly accessible. +export const main = async () => { + const command = new PutBucketWebsiteCommand({ + Bucket: "test-bucket", + WebsiteConfiguration: { + ErrorDocument: { + // The object key name to use when a 4XX class error occurs. + Key: "error.html", + }, + IndexDocument: { + // A suffix that is appended to a request that is for a directory. + Suffix: "index.html", + }, + }, + }); + + try { + const response = await client.send(command); + console.log(response); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[s3.JavaScript.website.putBucketWebsiteV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/s3/actions/put-object.js b/javascriptv3/example_code/s3/actions/put-object.js new file mode 100644 index 00000000000..44a4d1373b8 --- /dev/null +++ b/javascriptv3/example_code/s3/actions/put-object.js @@ -0,0 +1,32 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[s3.JavaScript.buckets.uploadV3] +import { PutObjectCommand, S3Client } from "@aws-sdk/client-s3"; + +const client = new S3Client({}); + +export const main = async () => { + const command = new PutObjectCommand({ + Bucket: "test-bucket", + Key: "hello-s3.txt", + Body: "Hello S3!", + }); + + try { + const response = await client.send(command); + console.log(response); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[s3.JavaScript.buckets.uploadV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/s3/client.js b/javascriptv3/example_code/s3/client.js new file mode 100644 index 00000000000..a681c797e05 --- /dev/null +++ b/javascriptv3/example_code/s3/client.js @@ -0,0 +1,11 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +// snippet-start:[s3.JavaScript.buckets.createclientv3] +import { S3Client } from "@aws-sdk/client-s3"; +// This relies on a Region being set up in your local AWS config. +const client = new S3Client({}); +export { client }; +// snippet-end:[s3.JavaScript.buckets.createclientv3] diff --git a/javascriptv3/example_code/s3/dead-snippets.txt b/javascriptv3/example_code/s3/dead-snippets.txt new file mode 100644 index 00000000000..ecc44705397 --- /dev/null +++ b/javascriptv3/example_code/s3/dead-snippets.txt @@ -0,0 +1,74 @@ +// snippet-start:[s3.HTML.photoAlbumExample.completeV3] +This code example has been superseded by the example in +Code examples > Amazon S3 > Create a web page that lists S3 objects +// snippet-end:[s3.HTML.photoAlbumExample.completeV3] + +// snippet-start:[s3.HTML.s3_PhotoViewer.completeV3] +This code example has been superseded by the example in +Code examples > Amazon S3 > Create a web page that lists S3 objects +// snippet-end:[s3.HTML.s3_PhotoViewer.completeV3] + +// snippet-start:[s3.JavaScript.s3_PhotoViewer.completeV3] +This code example has been superseded by the example in +Code examples > Amazon S3 > Create a web page that lists S3 objects +// snippet-end:[s3.JavaScript.s3_PhotoViewer.completeV3] + +// snippet-start:[s3.JavaScript.s3_PhotoViewer.configV3] +This code example has been superseded by the example in +Code examples > Amazon S3 > Create a web page that lists S3 objects +// snippet-end:[s3.JavaScript.s3_PhotoViewer.configV3] + +// snippet-start:[s3.JavaScript.s3_PhotoViewer.listAlbumV3] +This code example has been superseded by the example in +Code examples > Amazon S3 > Create a web page that lists S3 objects +// snippet-end:[s3.JavaScript.s3_PhotoViewer.listAlbumV3] + +// snippet-start:[s3.JavaScript.s3_PhotoViewer.viewAlbumV3] +This code example has been superseded by the example in +Code examples > Amazon S3 > Create a web page that lists S3 objects +// snippet-end:[s3.JavaScript.s3_PhotoViewer.viewAlbumV3] + +// snippet-start:[s3.JavaScript.photoAlbumExample.configV3] +This code example has been superseded by the example in +Code examples > Amazon S3 > Create a web page that lists S3 objects +// snippet-end:[s3.JavaScript.photoAlbumExample.configV3] + +// snippet-start:[s3.JavaScript.photoAlbumExample.listAlbumsV3] +This code example has been superseded by the example in +Code examples > Amazon S3 > Create a web page that lists S3 objects +// snippet-end:[s3.JavaScript.photoAlbumExample.listAlbumsV3] + +// snippet-start:[s3.JavaScript.photoAlbumExample.createAlbumV3] +This code example has been superseded by the example in +Code examples > Amazon S3 > Create a web page that lists S3 objects +// snippet-end:[s3.JavaScript.photoAlbumExample.createAlbumV3] + +// snippet-start:[s3.JavaScript.photoAlbumExample.viewAlbumV3] +This code example has been superseded by the example in +Code examples > Amazon S3 > Create a web page that lists S3 objects +// snippet-end:[s3.JavaScript.photoAlbumExample.viewAlbumV3] + +// snippet-start:[s3.JavaScript.photoAlbumExample.addPhotoV3] +This code example has been superseded by the example in +Code examples > Amazon S3 > Create a web page that lists S3 objects +// snippet-end:[s3.JavaScript.photoAlbumExample.addPhotoV3] + +// snippet-start:[s3.JavaScript.photoAlbumExample.deletePhotoV3] +This code example has been superseded by the example in +Code examples > Amazon S3 > Create a web page that lists S3 objects +// snippet-end:[s3.JavaScript.photoAlbumExample.deletePhotoV3] + +// snippet-start:[s3.JavaScript.photoAlbumExample.deleteAlbumV3] +This code example has been superseded by the example in +Code examples > Amazon S3 > Create a web page that lists S3 objects +// snippet-end:[s3.JavaScript.photoAlbumExample.deleteAlbumV3] + +// snippet-start:[s3.JavaScript.photoAlbumExample.completeV3] +This code example has been superseded by the example in +Code examples > Amazon S3 > Create a web page that lists S3 objects +// snippet-end:[s3.JavaScript.photoAlbumExample.completeV3] + +// snippet-start:[s3.JavaScript.buckets.upload_putcommandV3] +This code example has been superseded by the example in +Code examples > Amazon S3 > Create a web page that lists S3 objects +// snippet-end:[s3.JavaScript.buckets.upload_putcommandV3] \ No newline at end of file diff --git a/javascriptv3/example_code/s3/src/libs/s3Utils.js b/javascriptv3/example_code/s3/libs/s3Utils.js similarity index 100% rename from javascriptv3/example_code/s3/src/libs/s3Utils.js rename to javascriptv3/example_code/s3/libs/s3Utils.js diff --git a/javascriptv3/example_code/s3/package.json b/javascriptv3/example_code/s3/package.json new file mode 100644 index 00000000000..11d740c5e06 --- /dev/null +++ b/javascriptv3/example_code/s3/package.json @@ -0,0 +1,25 @@ +{ + "name": "example-javascriptv3-s3", + "version": "1.0.0", + "description": "Examples demonstrating how to use the AWS SDK for JavaScript (v3) to interact with Amazon S3.", + "scripts": { + "test": "vitest run **/*.unit.test.js" + }, + "author": "corepyle@amazon.com", + "license": "Apache-2.0", + "type": "module", + "dependencies": { + "@aws-crypto/sha256-browser": "^4.0.0", + "@aws-sdk/client-s3": "^3.272.0", + "@aws-sdk/credential-providers": "^3.276.0", + "@aws-sdk/hash-node": "^3.272.0", + "@aws-sdk/protocol-http": "^3.272.0", + "@aws-sdk/s3-request-presigner": "^3.276.0", + "@aws-sdk/url-parser": "^3.272.0", + "@aws-sdk/util-format-url": "^3.272.0", + "libs": "*" + }, + "devDependencies": { + "vitest": "^0.28.5" + } +} diff --git a/javascriptv3/example_code/s3/photoExample/README.md b/javascriptv3/example_code/s3/photoExample/README.md deleted file mode 100644 index 84c704e4569..00000000000 --- a/javascriptv3/example_code/s3/photoExample/README.md +++ /dev/null @@ -1,21 +0,0 @@ -# JavaScript environment for Amazon Simple Storage Service (S3) examples -Environment for AWS SDK for JavaScript version 3 (v3) Amazon S3 Photo Album tutorial. For more information, see the [AWS documentation for these examples](https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-photo-album.html). - -This example demonstrates how to manipulate photos in albums stored in an Amazon S3 bucket. - -# Getting started - -1. Clone the [AWS SDK Code Samples repo](https://github.com/awsdocs/aws-doc-sdk-examples) repo to your local environment. See [the Github documentation](https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/cloning-a-repository) for instructions. - -2. Install the dependencies listed in the package.json. - -**Note**: These dependencies include the client modules for the AWS services that this example requires, -such as *@aws-sdk/client-s3*, *@aws-sdk/client-cognito-identity*, and -*@aws-sdk/credential-provider-cognito-identity*. -``` -npm install node -g -cd javascriptv3/example_code/s3/photoExample/src -npm install -``` - -3. Follow the steps in the [AWS documentation for this examples](https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-photo-album.html). diff --git a/javascriptv3/example_code/s3/photoExample/package.json b/javascriptv3/example_code/s3/photoExample/package.json deleted file mode 100644 index 8d4eeac3743..00000000000 --- a/javascriptv3/example_code/s3/photoExample/package.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "name": "PhotoExample", - "version": "1.0.0", - "description": "A browser-based Photo App demonstrating how to use the AWS SDK for JavaScript V3.", - "main": "s3_PhotoExample.js", - "scripts": { - "build": "webpack s3_PhotoExample.js --mode development --target web --devtool false -o main.js", - "test": "exit 0" - }, - "node": { - "fs": "empty" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/awsdocs/aws-doc-sdk-examples.git" - }, - "author": "brmur, AllanFly120", - "license": "Apache-2.0", - "bugs": { - "url": "https://github.com/awsdocs/aws-doc-sdk-examples/issues" - }, - "homepage": "https://github.com/awsdocs/aws-doc-sdk-examples#readme", - "dependencies": { - "@aws-sdk/client-cognito-identity": "^3.32.0", - "@aws-sdk/credential-provider-cognito-identity": "^3.32.0", - "@aws-sdk/client-lambda": "^3.32.0", - "@aws-sdk/client-s3": "^3.32.0", - "fs": "0.0.1-security" - }, - "devDependencies": { - "webpack": "^4.42.0", - "webpack-cli": "^3.3.11", - "@aws-sdk/types": "^3.32.0", - "@types/jest": "^26.0.13", - "@types/node": "^14.0.23", - "jest": "^26.4.2", - "ts-jest": "^26.3.0", - "ts-node": "^9.0.0", - "typescript": "^4.0.2" - } -} diff --git a/javascriptv3/example_code/s3/photoExample/src/s3_PhotoExample.html b/javascriptv3/example_code/s3/photoExample/src/s3_PhotoExample.html deleted file mode 100644 index 3b2fccf419c..00000000000 --- a/javascriptv3/example_code/s3/photoExample/src/s3_PhotoExample.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - -

My photo albums app

-
- - - diff --git a/javascriptv3/example_code/s3/photoExample/src/s3_PhotoExample.js b/javascriptv3/example_code/s3/photoExample/src/s3_PhotoExample.js deleted file mode 100644 index dc65ce8dee3..00000000000 --- a/javascriptv3/example_code/s3/photoExample/src/s3_PhotoExample.js +++ /dev/null @@ -1,301 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/s3-example-photo-album.html. -Purpose: -s3_PhotoExample.js demonstrates how to manipulate photos in albums stored in an Amazon S3 bucket. -Inputs (replace in code): -- BUCKET_NAME -- REGION -- IDENTITY_POOL_ID -Running the code: -node s3_PhotoExample.js -*/ -// snippet-start:[s3.JavaScript.photoAlbumExample.completeV3] -// snippet-start:[s3.JavaScript.photoAlbumExample.configV3] -// Load the required clients and packages -const { CognitoIdentityClient } = require("@aws-sdk/client-cognito-identity"); -const { - fromCognitoIdentityPool, -} = require("@aws-sdk/credential-provider-cognito-identity"); -const { S3Client, PutObjectCommand, ListObjectsCommand, DeleteObjectCommand, DeleteObjectsCommand } = require("@aws-sdk/client-s3"); - -// Set the AWS Region -const REGION = "REGION"; //REGION - -// Initialize the Amazon Cognito credentials provider -const s3 = new S3Client({ - region: REGION, - credentials: fromCognitoIdentityPool({ - client: new CognitoIdentityClient({ region: REGION }), - identityPoolId: "IDENTITY_POOL_ID", // IDENTITY_POOL_ID - }), -}); - -const albumBucketName = "BUCKET_NAME"; //BUCKET_NAME -// snippet-end:[s3.JavaScript.photoAlbumExample.configV3] -// snippet-start:[s3.JavaScript.photoAlbumExample.listAlbumsV3] - -// A utility function to create HTML -function getHtml(template) { - return template.join("\n"); -} -// Make getHTML function available to the browser -window.getHTML = getHtml; - -// List the photo albums that exist in the bucket -const listAlbums = async () => { - try { - const data = await s3.send( - new ListObjectsCommand({ Delimiter: "/", Bucket: albumBucketName }) - ); - - if (data.CommonPrefixes === undefined) { - const htmlTemplate = [ - "

You don't have any albums. You need to create an album.

", - "", - ]; - document.getElementById("app").innerHTML = htmlTemplate; - } else { - var albums = data.CommonPrefixes.map(function (commonPrefix) { - var prefix = commonPrefix.Prefix; - var albumName = decodeURIComponent(prefix.replace("/", "")); - return getHtml([ - "
  • ", - "X", - "", - albumName, - "", - "
  • ", - ]); - }); - var message = albums.length - ? getHtml([ - "

    Click an album name to view it.

    ", - "

    Click the X to delete the album.

    ", - ]) - : "

    You do not have any albums. You need to create an album."; - const htmlTemplate = [ - "

    Albums

    ", - message, - "
      ", - getHtml(albums), - "
    ", - "", - ]; - document.getElementById("app").innerHTML = getHtml(htmlTemplate); - } - } catch (err) { - return alert("There was an error listing your albums: " + err.message); - } -}; - -// Make listAlbums function available to the browser -window.listAlbums = listAlbums; - -// snippet-end:[s3.JavaScript.photoAlbumExample.listAlbumsV3] -// snippet-start:[s3.JavaScript.photoAlbumExample.createAlbumV3] - -// Create an album in the bucket -const createAlbum = async (albumName) => { - albumName = albumName.trim(); - if (!albumName) { - return alert("Album names must contain at least one non-space character."); - } - if (albumName.indexOf("/") !== -1) { - return alert("Album names cannot contain slashes."); - } - var albumKey = encodeURIComponent(albumName); - try { - const key = albumKey + "/"; - const params = { Bucket: albumBucketName, Key: key }; - await s3.send(new PutObjectCommand(params)); - alert("Successfully created album."); - viewAlbum(albumName); - } catch (err) { - return alert("There was an error creating your album: " + err.message); - } -}; - -// Make createAlbum function available to the browser -window.createAlbum = createAlbum; - -// snippet-end:[s3.JavaScript.photoAlbumExample.createAlbumV3] -// snippet-start:[s3.JavaScript.photoAlbumExample.viewAlbumV3] - -// View the contents of an album - -const viewAlbum = async (albumName) => { - const albumPhotosKey = encodeURIComponent(albumName) + "/"; - try { - const data = await s3.send( - new ListObjectsCommand({ - Prefix: albumPhotosKey, - Bucket: albumBucketName, - }) - ); - if (data.Contents.length === 1) { - var htmlTemplate = [ - "

    You don't have any photos in this album. You need to add photos.

    ", - '', - '", - '", - ]; - document.getElementById("app").innerHTML = getHtml(htmlTemplate); - } else { - console.log(data); - const href = "https://s3." + REGION + ".amazonaws.com/"; - const bucketUrl = href + albumBucketName + "/"; - const photos = data.Contents.map(function (photo) { - const photoKey = photo.Key; - console.log(photo.Key); - const photoUrl = bucketUrl + encodeURIComponent(photoKey); - return getHtml([ - "", - "
    ", - '', - "
    ", - "
    ", - "", - "X", - "", - "", - photoKey.replace(albumPhotosKey, ""), - "", - "
    ", - "
    ", - ]); - }); - var message = photos.length - ? "

    Click the X to delete the photo.

    " - : "

    You don't have any photos in this album. You need to add photos.

    "; - const htmlTemplate = [ - "

    ", - "Album: " + albumName, - "

    ", - message, - "
    ", - getHtml(photos), - "
    ", - '', - '", - '", - ]; - document.getElementById("app").innerHTML = getHtml(htmlTemplate); - document.getElementsByTagName("img")[0].remove(); - } - } catch (err) { - return alert("There was an error viewing your album: " + err.message); - } -}; -// Make viewAlbum function available to the browser -window.viewAlbum = viewAlbum; - -// snippet-end:[s3.JavaScript.photoAlbumExample.viewAlbumV3] -// snippet-start:[s3.JavaScript.photoAlbumExample.addPhotoV3] - -// Add a photo to an album -const addPhoto = async (albumName) => { - const files = document.getElementById("photoupload").files; - try { - const albumPhotosKey = encodeURIComponent(albumName) + "/"; - await s3.send( - new ListObjectsCommand({ - Prefix: albumPhotosKey, - Bucket: albumBucketName - }) - ); - const file = files[0]; - const fileName = file.name; - const photoKey = albumPhotosKey + fileName; - const uploadParams = { - Bucket: albumBucketName, - Key: photoKey, - Body: file - }; - try { - await s3.send(new PutObjectCommand(uploadParams)); - alert("Successfully uploaded photo."); - viewAlbum(albumName); - } catch (err) { - return alert("There was an error uploading your photo: ", err.message); - } - } catch (err) { - if (!files.length) { - return alert("Choose a file to upload first."); - } - } -}; -// Make addPhoto function available to the browser -window.addPhoto = addPhoto; - -// snippet-end:[s3.JavaScript.photoAlbumExample.addPhotoV3] -// snippet-start:[s3.JavaScript.photoAlbumExample.deletePhotoV3] - -// Delete a photo from an album -const deletePhoto = async (albumName, photoKey) => { - try { - console.log(photoKey); - const params = { Key: photoKey, Bucket: albumBucketName }; - await s3.send(new DeleteObjectCommand(params)); - console.log("Successfully deleted photo."); - viewAlbum(albumName); - } catch (err) { - return alert("There was an error deleting your photo: ", err.message); - } -}; -// Make deletePhoto function available to the browser -window.deletePhoto = deletePhoto; - -// snippet-end:[s3.JavaScript.photoAlbumExample.deletePhotoV3] -// snippet-start:[s3.JavaScript.photoAlbumExample.deleteAlbumV3] - -// Delete an album from the bucket -const deleteAlbum = async (albumName) => { - const albumKey = encodeURIComponent(albumName) + "/"; - try { - const params = { Bucket: albumBucketName, Prefix: albumKey }; - const data = await s3.send(new ListObjectsCommand(params)); - const objects = data.Contents.map(function (object) { - return { Key: object.Key }; - }); - try { - const params = { - Bucket: albumBucketName, - Delete: { Objects: objects }, - Quiet: true, - }; - await s3.send(new DeleteObjectsCommand(params)); - listAlbums(); - return alert("Successfully deleted album."); - } catch (err) { - return alert("There was an error deleting your album: ", err.message); - } - } catch (err) { - return alert("There was an error deleting your album1: ", err.message); - } -}; -// Make deleteAlbum function available to the browser -window.deleteAlbum = deleteAlbum; - -// snippet-end:[s3.JavaScript.photoAlbumExample.deleteAlbumV3] -// snippet-end:[s3.JavaScript.photoAlbumExample.completeV3] -//for units tests only - diff --git a/javascriptv3/example_code/s3/photoViewer/README.md b/javascriptv3/example_code/s3/photoViewer/README.md deleted file mode 100644 index 45123de6198..00000000000 --- a/javascriptv3/example_code/s3/photoViewer/README.md +++ /dev/null @@ -1,22 +0,0 @@ -# JavaScript environment for Amazon Simple Storage Service (S3) examples -Environment for AWS SDK for JavaScript version 3 (v3) Amazon S3 Photo Viewer tutorial. For more information, see the [AWS documentation for these examples](https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-photos-view.html). - -Amazon Simple Storage Service (Amazon S3) is an object storage service that offers industry-leading scalability, data availability, security, and performance. - -This is a workspace where you can find the following AWS SDK for JavaScript v3 S3 examples. - -# Getting started - -1. Clone the [AWS SDK Code Samples repo](https://github.com/awsdocs/aws-doc-sdk-examples) repo to your local environment. See [the Github documentation](https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/cloning-a-repository) for instructions. - -2. Install the dependencies listed in the package.json. - -**Note**: These dependencies include the client modules for the AWS services that this example requires, -such as *@aws-sdk/client-s3*, *@aws-sdk/client-cognito-identity*, and -*@aws-sdk/credential-provider-cognito-identity*. -``` -npm install node -g -cd javascriptv3/example_code/s3/photoViewer/src -npm install -``` -3. Follow the steps in the [AWS documentation for this examples](https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-photos-view.html). diff --git a/javascriptv3/example_code/s3/photoViewer/package.json b/javascriptv3/example_code/s3/photoViewer/package.json deleted file mode 100644 index 938fc33e8ec..00000000000 --- a/javascriptv3/example_code/s3/photoViewer/package.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "name": "PhotoViewer", - "version": "1.0.0", - "description": "A browser-based Photo Viewers demonstrating how to use the AWS SDK for JavaScript V3.", - "main": "s3_PhotoViewer.js", - "scripts": { - "build": "webpack s3_PhotoViewer.js --mode development --target web --devtool false -o main.js", - "test": "exit 0" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/awsdocs/aws-doc-sdk-examples.git" - }, - "author": "brmur-AWS, AllanFly120", - "license": "Apache-2.0", - "bugs": { - "url": "https://github.com/awsdocs/aws-doc-sdk-examples/issues" - }, - "homepage": "https://github.com/awsdocs/aws-doc-sdk-examples#readme", - "dependencies": { - "@aws-sdk/client-cognito-identity": "^3.32.0", - "@aws-sdk/credential-provider-cognito-identity": "^3.32.0", - "@aws-sdk/client-s3": "^3.32.0", - "fs": "0.0.1-security" - }, - "devDependencies": { - "webpack": "^4.42.0", - "webpack-cli": "^3.3.11", - "@aws-sdk/types": "^3.32.0", - "@types/jest": "^26.0.13", - "@types/node": "^14.0.23", - "jest": "^26.4.2", - "ts-jest": "^26.3.0", - "ts-node": "^9.0.0", - "typescript": "^4.0.2" - } -} diff --git a/javascriptv3/example_code/s3/photoViewer/src/s3_PhotoViewer.html b/javascriptv3/example_code/s3/photoViewer/src/s3_PhotoViewer.html deleted file mode 100644 index e3948b6c804..00000000000 --- a/javascriptv3/example_code/s3/photoViewer/src/s3_PhotoViewer.html +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - -

    Photo album viewer

    -
    - - - - diff --git a/javascriptv3/example_code/s3/photoViewer/src/s3_PhotoViewer.ts b/javascriptv3/example_code/s3/photoViewer/src/s3_PhotoViewer.ts deleted file mode 100644 index cfc3d36fe09..00000000000 --- a/javascriptv3/example_code/s3/photoViewer/src/s3_PhotoViewer.ts +++ /dev/null @@ -1,156 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. - SPDX-License-Identifier: Apache-2.0 - - ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at - https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-photos-view.html - - Purpose: - s3_PhotoViewer.js demonstrates how to allow viewing of photos in albums stored in an Amazon S3 bucket. - - Inputs (replace in code): - - REGION - - BUCKET_NAME - - Running the code: - ts-node s3_PhotoViewer.js - */ -// snippet-start:[s3.JavaScript.s3_PhotoViewer.completeV3] -// snippet-start:[s3.JavaScript.s3_PhotoViewer.configV3] -// Load the required clients and packages -const { CognitoIdentityClient } = require("@aws-sdk/client-cognito-identity"); -const { - fromCognitoIdentityPool, -} = require("@aws-sdk/credential-provider-cognito-identity"); -const { S3Client, ListObjectsCommand } = require("@aws-sdk/client-s3"); - -// Initialize the Amazon Cognito credentials provider -const REGION = "region"; //e.g., 'us-east-1' -const s3 = new S3Client({ - region: REGION, - credentials: fromCognitoIdentityPool({ - client: new CognitoIdentityClient({ region: REGION }), - identityPoolId: "IDENTITY_POOL_ID", // IDENTITY_POOL_ID e.g., eu-west-1:xxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx - }), -}); - -// snippet-end:[s3.JavaScript.s3_PhotoViewer.configV3] -// snippet-start:[s3.JavaScript.s3_PhotoViewer.listAlbumV3] -// A utility function to create HTML. -function getHtml(template) { - return template.join("\n"); -} -// Make the getHTML function available to the browser -window.getHTML = getHtml; - -// List the photo albums that exist in the bucket -const albumBucketName = "BUCKET_NAME"; //BUCKET_NAME - -const listAlbums = async () => { - try { - const data = await s3.send( - new ListObjectsCommand({ Delimiter: "/", Bucket: albumBucketName }) - ); - const albums = data.CommonPrefixes.map(function (commonPrefix) { - const prefix = commonPrefix.Prefix; - const albumName = decodeURIComponent(prefix.replace("/", "")); - return getHtml([ - "
  • ", - '", - "
  • ", - ]); - }); - const message = albums.length - ? getHtml(["

    Click an album name to view it.

    "]) - : "

    You don't have any albums. You need to create an album."; - const htmlTemplate = [ - "

    Albums

    ", - message, - "
      ", - getHtml(albums), - "
    ", - ]; - document.getElementById("viewer").innerHTML = getHtml(htmlTemplate); - } catch (err) { - return alert("There was an error listing your albums: " + err.message); - } -}; -// Make the viewAlbum function available to the browser -window.listAlbums = listAlbums; - -// snippet-end:[s3.JavaScript.s3_PhotoViewer.listAlbumV3] -// snippet-start:[s3.JavaScript.s3_PhotoViewer.viewAlbumV3] - -// Show the photos that exist in an album -const viewAlbum = async (albumName) => { - try { - const albumPhotosKey = encodeURIComponent(albumName) + "/"; - const data = await s3.send( - new ListObjectsCommand({ - Prefix: albumPhotosKey, - Bucket: albumBucketName, - }) - ); - const href = "https://s3." + REGION + ".amazonaws.com/"; - const bucketUrl = href + albumBucketName + "/"; - const photos = data.Contents.map(function (photo) { - const photoKey = photo.Key; - const photoUrl = bucketUrl + encodeURIComponent(photoKey); - return getHtml([ - "", - "
    ", - "
    ", - '', - "
    ", - "
    ", - "", - photoKey.replace(albumPhotosKey, ""), - "", - "
    ", - "
    ", - ]); - }); - const message = photos.length - ? "

    The following photos are present.

    " - : "

    There are no photos in this album.

    "; - const htmlTemplate = [ - "
    ", - '", - "
    ", - "

    ", - "Album: " + albumName, - "

    ", - message, - "
    ", - getHtml(photos), - "
    ", - "

    ", - "End of album: " + albumName, - "

    ", - "
    ", - '", - "
    ", - ]; - document.getElementById("viewer").innerHTML = getHtml(htmlTemplate); - document - .getElementsByTagName("img")[0] - .setAttribute("style", "display:none;"); - } catch (err) { - return alert("There was an error viewing your album: " + err.message); - } -}; - -// Make the viewAlbum function available to the browser -window.viewAlbum = viewAlbum; -// snippet-end:[s3.JavaScript.s3_PhotoViewer.viewAlbumV3] -// snippet-end:[s3.JavaScript.s3_PhotoViewer.completeV3] -//for unit tests only -export { listAlbums, viewAlbum }; diff --git a/javascriptv3/example_code/s3/scenarios/basic.js b/javascriptv3/example_code/s3/scenarios/basic.js new file mode 100644 index 00000000000..1d4958d8ee7 --- /dev/null +++ b/javascriptv3/example_code/s3/scenarios/basic.js @@ -0,0 +1,217 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +/* This example code shows you how to use Amazon S3 can be used as a core component of an application. + * You'll do the following: + * - Create a bucket. + * - Upload files to the bucket. + * - List files in the bucket. + * - Copy files from another bucket to this one. + * - Download files from the bucket. + * - Empty the bucket. + * - Delete the bucket. + */ + +// snippet-start:[javascript.v3.s3.scenarios.basic.imports] +// Used to check if currently running file is this file. +import { fileURLToPath } from "url"; +import { readdirSync, readFileSync, writeFileSync } from "fs"; + +// Local helper utils. +import { dirnameFromMetaUrl } from "libs/utils/util-fs.js"; +import { promptForText, promptToContinue } from "libs/utils/util-io.js"; +import { wrapText } from "libs/utils/util-string.js"; + +import { + S3Client, + CreateBucketCommand, + PutObjectCommand, + ListObjectsCommand, + CopyObjectCommand, + GetObjectCommand, + DeleteObjectsCommand, + DeleteBucketCommand, +} from "@aws-sdk/client-s3"; +// snippet-end:[javascript.v3.s3.scenarios.basic.imports] + +// snippet-start:[javascript.v3.s3.scenarios.basic.S3Client] +// The Region can be provided as an argument to S3Client or +// declared in the AWS configuration file. In this case +// we're using the Region provided in the AWS configuration. +const s3Client = new S3Client({}); +// snippet-end:[javascript.v3.s3.scenarios.basic.S3Client] + +// snippet-start:[javascript.v3.s3.scenarios.basic.CreateBucket] +export const createBucket = async () => { + const bucketName = await promptForText( + "Enter a bucket name. Bucket names must be globally unique:" + ); + const command = new CreateBucketCommand({ Bucket: bucketName }); + await s3Client.send(command); + console.log("Bucket created successfully.\n"); + return bucketName; +}; +// snippet-end:[javascript.v3.s3.scenarios.basic.CreateBucket] + +// snippet-start:[javascript.v3.s3.scenarios.basic.PutObject] +export const uploadFilesToBucket = async ({ bucketName, folderPath }) => { + console.log(`Uploading files from ${folderPath}\n`); + const keys = readdirSync(folderPath); + const files = keys.map((key) => { + const filePath = `${folderPath}/${key}`; + const fileContent = readFileSync(filePath); + return { + Key: key, + Body: fileContent, + }; + }); + + for (let file of files) { + await s3Client.send( + new PutObjectCommand({ + Bucket: bucketName, + Body: file.Body, + Key: file.Key, + }) + ); + console.log(`${file.Key} uploaded successfully.`); + } +}; +// snippet-end:[javascript.v3.s3.scenarios.basic.PutObject] + +// snippet-start:[javascript.v3.s3.scenarios.basic.ListObjects] +export const listFilesInBucket = async ({ bucketName }) => { + const command = new ListObjectsCommand({ Bucket: bucketName }); + const { Contents } = await s3Client.send(command); + const contentsList = Contents.map((c) => ` • ${c.Key}`).join("\n"); + console.log("\nHere's a list of files in the bucket:"); + console.log(contentsList + "\n"); +}; +// snippet-end:[javascript.v3.s3.scenarios.basic.ListObjects] + +// snippet-start:[javascript.v3.s3.scenarios.basic.CopyObject] +export const copyFileFromBucket = async ({ destinationBucket }) => { + const answer = await promptForText( + "Would you like to copy an object from another bucket? (yes/no)" + ); + + if (answer === "no") { + return; + } else { + const copy = async () => { + try { + const sourceBucket = await promptForText("Enter source bucket name:"); + const sourceKey = await promptForText("Enter source key:"); + const destinationKey = await promptForText("Enter destination key:"); + + const command = new CopyObjectCommand({ + Bucket: destinationBucket, + CopySource: `${sourceBucket}/${sourceKey}`, + Key: destinationKey, + }); + await s3Client.send(command); + await copyFileFromBucket({ destinationBucket }); + } catch (err) { + console.error(`Copy error.`); + console.error(err); + const retryAnswer = await promptForText("Try again? (yes/no)"); + if (retryAnswer !== "no") { + await copy(); + } + } + }; + await copy(); + } +}; +// snippet-end:[javascript.v3.s3.scenarios.basic.CopyObject] + +// snippet-start:[javascript.v3.s3.scenarios.basic.GetObject] +export const downloadFilesFromBucket = async ({ bucketName }) => { + const { Contents } = await s3Client.send( + new ListObjectsCommand({ Bucket: bucketName }) + ); + const path = await promptForText("Enter destination path for files:"); + + for (let content of Contents) { + const obj = await s3Client.send( + new GetObjectCommand({ Bucket: bucketName, Key: content.Key }) + ); + writeFileSync( + `${path}/${content.Key}`, + await obj.Body.transformToByteArray() + ); + } + console.log("Files downloaded successfully.\n"); +}; +// snippet-end:[javascript.v3.s3.scenarios.basic.GetObject] + +// snippet-start:[javascript.v3.s3.scenarios.basic.clean] +export const emptyBucket = async ({ bucketName }) => { + const listObjectsCommand = new ListObjectsCommand({ Bucket: bucketName }); + const { Contents } = await s3Client.send(listObjectsCommand); + const keys = Contents.map((c) => c.Key); + + const deleteObjectsCommand = new DeleteObjectsCommand({ + Bucket: bucketName, + Delete: { Objects: keys.map((key) => ({ Key: key })) }, + }); + await s3Client.send(deleteObjectsCommand); + console.log(`${bucketName} emptied successfully.\n`); +}; + +export const deleteBucket = async ({ bucketName }) => { + const command = new DeleteBucketCommand({ Bucket: bucketName }); + await s3Client.send(command); + console.log(`${bucketName} deleted successfully.\n`); +}; +// snippet-end:[javascript.v3.s3.scenarios.basic.clean] + +// snippet-start:[javascript.v3.s3.scenarios.basic.main] +const main = async () => { + const OBJECT_DIRECTORY = `${dirnameFromMetaUrl( + import.meta.url + )}../../../../resources/sample_files/.sample_media`; + + try { + console.log(wrapText("Welcome to the Amazon S3 getting started example.")); + console.log("Let's create a bucket."); + const bucketName = await createBucket(); + await promptToContinue(); + + console.log(wrapText("File upload.")); + console.log( + "I have some default files ready to go. You can edit the source code to provide your own." + ); + await uploadFilesToBucket({ + bucketName, + folderPath: OBJECT_DIRECTORY, + }); + + await listFilesInBucket({ bucketName }); + await promptToContinue(); + + console.log(wrapText("Copy files.")); + await copyFileFromBucket({ destinationBucket: bucketName }); + await listFilesInBucket({ bucketName }); + await promptToContinue(); + + console.log(wrapText("Download files.")); + await downloadFilesFromBucket({ bucketName }); + + console.log(wrapText("Clean up.")); + await emptyBucket({ bucketName }); + await deleteBucket({ bucketName }); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[javascript.v3.s3.scenarios.basic.main] + +// snippet-start:[javascript.v3.s3.scenarios.basic.runner] +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} +// snippet-end:[javascript.v3.s3.scenarios.basic.runner] diff --git a/javascriptv3/example_code/s3/scenarios/create-list-delete-bucket.js b/javascriptv3/example_code/s3/scenarios/create-list-delete-bucket.js new file mode 100644 index 00000000000..087dbf48878 --- /dev/null +++ b/javascriptv3/example_code/s3/scenarios/create-list-delete-bucket.js @@ -0,0 +1,56 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[s3.javascript.bucket_operations.list_create_deleteV3] +import { + CreateBucketCommand, + DeleteBucketCommand, + ListBucketsCommand, + S3Client, +} from "@aws-sdk/client-s3"; + +const wait = async (milliseconds) => { + return new Promise((resolve) => setTimeout(resolve, milliseconds)); +}; + +export const main = async () => { + const client = new S3Client({}); + const now = Date.now(); + const BUCKET_NAME = `easy-bucket-${now.toString()}`; + + const createBucketCommand = new CreateBucketCommand({ Bucket: BUCKET_NAME }); + const listBucketsCommand = new ListBucketsCommand({}); + const deleteBucketCommand = new DeleteBucketCommand({ Bucket: BUCKET_NAME }); + + try { + console.log(`Creating bucket ${BUCKET_NAME}.`); + await client.send(createBucketCommand); + console.log(`${BUCKET_NAME} created`); + + await wait(2000); + + console.log(`Here are your buckets:`); + const { Buckets } = await client.send(listBucketsCommand); + Buckets.forEach((bucket) => { + console.log(` • ${bucket.Name}`); + }); + + await wait(2000); + + console.log(`Deleting bucket ${BUCKET_NAME}.`); + await client.send(deleteBucketCommand); + console.log(`${BUCKET_NAME} deleted`); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[s3.javascript.bucket_operations.list_create_deleteV3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/s3/scenarios/multipart-download.js b/javascriptv3/example_code/s3/scenarios/multipart-download.js new file mode 100644 index 00000000000..81b4b6eb521 --- /dev/null +++ b/javascriptv3/example_code/s3/scenarios/multipart-download.js @@ -0,0 +1,75 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[javascript.v3.s3.scenarios.multipartdownload] +import { GetObjectCommand, S3Client } from "@aws-sdk/client-s3"; +import { createWriteStream } from "fs"; + +const s3Client = new S3Client({}); +const oneMB = 1024 * 1024; + +export const getObjectRange = ({ bucket, key, start, end }) => { + const command = new GetObjectCommand({ + Bucket: bucket, + Key: key, + Range: `bytes=${start}-${end}`, + }); + + return s3Client.send(command); +}; + +export const getRangeAndLength = (contentRange) => { + const [range, length] = contentRange.split("/"); + const [start, end] = range.split("-"); + return { + start: parseInt(start), + end: parseInt(end), + length: parseInt(length), + }; +}; + +export const isComplete = ({ end, length }) => end === length - 1; + +// When downloading a large file, you might want to break it down into +// smaller pieces. Amazon S3 accepts a Range header to specify the start +// and end of the byte range to be downloaded. +const downloadInChunks = async ({ bucket, key }) => { + const writeStream = createWriteStream( + fileURLToPath(new URL(`./${key}`, import.meta.url)) + ).on("error", (err) => console.error(err)); + + let rangeAndLength = { start: -1, end: -1, length: -1 }; + + while (!isComplete(rangeAndLength)) { + const { end } = rangeAndLength; + const nextRange = { start: end + 1, end: end + oneMB }; + + console.log(`Downloading bytes ${nextRange.start} to ${nextRange.end}`); + + const { ContentRange, Body } = await getObjectRange({ + bucket, + key, + ...nextRange, + }); + + writeStream.write(await Body.transformToByteArray()); + rangeAndLength = getRangeAndLength(ContentRange); + } +}; + +export const main = async () => { + await downloadInChunks({ + bucket: "my-cool-bucket", + key: "my-cool-object.txt", + }); +}; +// snippet-end:[javascript.v3.s3.scenarios.multipartdownload] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/s3/src/s3_multipartupload.js b/javascriptv3/example_code/s3/scenarios/multipart-upload.js similarity index 84% rename from javascriptv3/example_code/s3/src/s3_multipartupload.js rename to javascriptv3/example_code/s3/scenarios/multipart-upload.js index a7eff2c65a6..e27f312bf75 100644 --- a/javascriptv3/example_code/s3/src/s3_multipartupload.js +++ b/javascriptv3/example_code/s3/scenarios/multipart-upload.js @@ -3,14 +3,16 @@ * SPDX-License-Identifier: Apache-2.0 */ -// snippet-start:[s3.JavaScript.buckets.multipartupload_v3] +import { fileURLToPath } from "url"; + +// snippet-start:[javascript.v3.s3.scenarios.multipartupload] import { CreateMultipartUploadCommand, UploadPartCommand, CompleteMultipartUploadCommand, AbortMultipartUploadCommand, + S3Client, } from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client.js"; const twentyFiveMB = 25 * 1024 * 1024; @@ -18,8 +20,9 @@ export const createString = (size = twentyFiveMB) => { return "x".repeat(size); }; -export const run = async () => { - const bucketName = process.env.S3_BUCKET_NAME; // S3_BUCKET_NAME="BUCKET_NAME" && node s3_multipartupload.js +export const main = async () => { + const s3Client = new S3Client({}); + const bucketName = "test-bucket"; const key = "multipart.txt"; const str = createString(); const buffer = Buffer.from(str, "utf8"); @@ -94,6 +97,9 @@ export const run = async () => { } } }; +// snippet-end:[javascript.v3.s3.scenarios.multipartupload] -export default run(); -// snippet-end:[s3.JavaScript.buckets.multipartupload_v3] +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/s3/scenarios/presigned-url-download.js b/javascriptv3/example_code/s3/scenarios/presigned-url-download.js new file mode 100644 index 00000000000..70d5ca0f60f --- /dev/null +++ b/javascriptv3/example_code/s3/scenarios/presigned-url-download.js @@ -0,0 +1,71 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[s3.JavaScript.buckets.getpresignedurlv3] +import { GetObjectCommand, S3Client } from "@aws-sdk/client-s3"; +import { fromIni } from "@aws-sdk/credential-providers"; +import { HttpRequest } from "@aws-sdk/protocol-http"; +import { + getSignedUrl, + S3RequestPresigner, +} from "@aws-sdk/s3-request-presigner"; +import { parseUrl } from "@aws-sdk/url-parser"; +import { formatUrl } from "@aws-sdk/util-format-url"; +import { Hash } from "@aws-sdk/hash-node"; + +const createPresignedUrlWithoutClient = async ({ region, bucket, key }) => { + const url = parseUrl(`https://${bucket}.s3.${region}.amazonaws.com/${key}`); + const presigner = new S3RequestPresigner({ + credentials: fromIni(), + region, + sha256: Hash.bind(null, "sha256"), + }); + + const signedUrlObject = await presigner.presign(new HttpRequest(url)); + return formatUrl(signedUrlObject); +}; + +const createPresignedUrlWithClient = async ({ region, bucket, key }) => { + const client = new S3Client({ region }); + const command = new GetObjectCommand({ Bucket: bucket, Key: key }); + return getSignedUrl(client, command, { expiresIn: 3600 }); +}; + +export const main = async () => { + const REGION = "us-east-1"; + const BUCKET = "coreys-default-bucket"; + const KEY = "corey_mug.jpg"; + + try { + const noClientUrl = await createPresignedUrlWithoutClient({ + region: REGION, + bucket: BUCKET, + key: KEY, + }); + + const clientUrl = await createPresignedUrlWithClient({ + region: REGION, + bucket: BUCKET, + key: KEY, + }); + + console.log("Presigned URL without client"); + console.log(noClientUrl); + console.log("\n"); + + console.log("Presigned URL with client"); + console.log(clientUrl); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[s3.JavaScript.buckets.getpresignedurlv3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/s3/scenarios/presigned-url-upload.js b/javascriptv3/example_code/s3/scenarios/presigned-url-upload.js new file mode 100644 index 00000000000..6ab8a8505b1 --- /dev/null +++ b/javascriptv3/example_code/s3/scenarios/presigned-url-upload.js @@ -0,0 +1,103 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { fileURLToPath } from "url"; + +// snippet-start:[s3.JavaScript.buckets.presignedurlv3] +import https from "https"; +import { PutObjectCommand, S3Client } from "@aws-sdk/client-s3"; +import { fromIni } from "@aws-sdk/credential-providers"; +import { HttpRequest } from "@aws-sdk/protocol-http"; +import { + getSignedUrl, + S3RequestPresigner, +} from "@aws-sdk/s3-request-presigner"; +import { parseUrl } from "@aws-sdk/url-parser"; +import { formatUrl } from "@aws-sdk/util-format-url"; +import { Hash } from "@aws-sdk/hash-node"; + +const createPresignedUrlWithoutClient = async ({ region, bucket, key }) => { + const url = parseUrl(`https://${bucket}.s3.${region}.amazonaws.com/${key}`); + const presigner = new S3RequestPresigner({ + credentials: fromIni(), + region, + sha256: Hash.bind(null, "sha256"), + }); + + const signedUrlObject = await presigner.presign( + new HttpRequest({ ...url, method: "PUT" }) + ); + return formatUrl(signedUrlObject); +}; + +const createPresignedUrlWithClient = async ({ region, bucket, key }) => { + const client = new S3Client({ region }); + const command = new PutObjectCommand({ Bucket: bucket, Key: key }); + return getSignedUrl(client, command, { expiresIn: 3600 }); +}; + +function put(url, data) { + return new Promise((resolve, reject) => { + const req = https.request( + url, + { method: "PUT", headers: { "Content-Length": new Blob([data]).size } }, + (res) => { + let responseBody = ""; + res.on("data", (chunk) => { + responseBody += chunk; + }); + res.on("end", () => { + resolve(responseBody); + }); + } + ); + req.on("error", (err) => { + reject(err); + }); + req.write(data); + req.end(); + }); +} + +export const main = async () => { + const REGION = "us-east-1"; + const BUCKET = "coreys-default-bucket"; + const KEY = "corey_test.txt"; + + // There are two ways to generate a presigned URL. + // 1. Use createPresignedUrl without the S3 client. + // 2. Use getSignedUrl in conjunction with the S3 client and GetObjectCommand. + try { + const noClientUrl = await createPresignedUrlWithoutClient({ + region: REGION, + bucket: BUCKET, + key: KEY, + }); + + const clientUrl = await createPresignedUrlWithClient({ + region: REGION, + bucket: BUCKET, + key: KEY, + }); + + // After you get the presigned URL, you can provide your own file + // data. Refer to put() above. + console.log("Calling PUT using presigned URL without client"); + await put(noClientUrl, "Hello World"); + + console.log("Calling PUT using presigned URL with client"); + await put(clientUrl, "Hello World"); + + console.log("\nDone. Check your S3 console."); + } catch (err) { + console.error(err); + } +}; +// snippet-end:[s3.JavaScript.buckets.presignedurlv3] + +// Invoke main function if this file was run directly. +if (process.argv[1] === fileURLToPath(import.meta.url)) { + main(); +} diff --git a/javascriptv3/example_code/s3/scenarios/s3_basics/libs/s3Client.js b/javascriptv3/example_code/s3/scenarios/s3_basics/libs/s3Client.js deleted file mode 100644 index 830eb006a20..00000000000 --- a/javascriptv3/example_code/s3/scenarios/s3_basics/libs/s3Client.js +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example follows the steps in "Getting started with Amazon S3" in the Amazon S3 -User Guide. - - https://docs.aws.amazon.com/AmazonS3/latest/userguide/GetStartedWithS3.html - -Purpose: -s3Client.js is a helper function that creates an Amazon Simple Storage Service (Amazon S3) service client. - -Inputs (replace in code): - -*/ -// snippet-start:[s3_basics.JavaScript.createclientv3] -// Create a service client module using ES6 syntax. -import { S3Client } from "@aws-sdk/client-s3"; -// Set the AWS Region. -export const REGION = "REGION"; //For example, "us-east-1". -// Create an Amazon S3 service client object. -export const s3Client = new S3Client({ region: REGION }); -// snippet-end:[s3_basics.JavaScript.createclientv3] diff --git a/javascriptv3/example_code/s3/scenarios/s3_basics/package.json b/javascriptv3/example_code/s3/scenarios/s3_basics/package.json deleted file mode 100644 index 926ff9cdb43..00000000000 --- a/javascriptv3/example_code/s3/scenarios/s3_basics/package.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "name": "s3_basics", - "version": "1.0.0", - "description": "", - "dependencies": { - "@aws-sdk/client-s3": "^3.32.0" - }, - "keywords": [], - "author": "", - "license": "ISC", - "type": "module" -} diff --git a/javascriptv3/example_code/s3/scenarios/s3_basics/src/s3_basics.js b/javascriptv3/example_code/s3/scenarios/s3_basics/src/s3_basics.js deleted file mode 100644 index 478e787291d..00000000000 --- a/javascriptv3/example_code/s3/scenarios/s3_basics/src/s3_basics.js +++ /dev/null @@ -1,192 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example follows the steps in "Getting started with Amazon S3" in the Amazon S3 -User Guide. - - https://docs.aws.amazon.com/AmazonS3/latest/userguide/GetStartedWithS3.html - -Purpose: -Shows how to use the AWS SDK for JavaScript (v3) to get started using Amazon Simple Storage -Service (Amazon S3). Create a bucket, move objects into and out of it, and delete all -resources at the end of the demo. - -Inputs (in command line): -node s3_basics.js - -Running the code: -node s3_basics.js -*/ -// snippet-start:[s3_basics.JavaScript.s3_basics] -import { - CreateBucketCommand, - PutObjectCommand, - CopyObjectCommand, - DeleteObjectCommand, - DeleteBucketCommand, - GetObjectCommand -} from "@aws-sdk/client-s3"; -import { s3Client } from "../libs/s3Client.js"; // Helper function that creates an Amazon S3 service client module. - -if (process.argv.length < 5) { - console.log( - "Usage: node s3_basics.js \n" + - "Example: node s3_basics_full.js test-bucket 'test.txt' 'Test Content'" - ); -} -const bucket_name = process.argv[2]; -const object_key = process.argv[3]; -const object_content = process.argv[4]; - -export const run = async (bucket_name, object_key, object_content) => { - try { - const create_bucket_params = { - Bucket: bucket_name - }; - console.log("\nCreating the bucket, named " + bucket_name + "...\n"); - console.log("about to create"); - const data = await s3Client.send( - new CreateBucketCommand(create_bucket_params) - ); - console.log("Bucket created at ", data.Location); - try { - console.log( - "\nCreated and uploaded an object named " + - object_key + - " to first bucket " + - bucket_name + - " ...\n" - ); - // Set the parameters for the object to upload. - const object_upload_params = { - Bucket: bucket_name, - // Specify the name of the new object. For example, 'test.html'. - // To create a directory for the object, use '/'. For example, 'myApp/package.json'. - Key: object_key, - // Content of the new object. - Body: object_content, - }; - // Create and upload the object to the first S3 bucket. - await s3Client.send(new PutObjectCommand(object_upload_params)); - console.log( - "Successfully uploaded object: " + - object_upload_params.Bucket + - "/" + - object_upload_params.Key - ); - try { - const download_bucket_params = { - Bucket: bucket_name, - Key: object_key - }; - console.log( - "\nDownloading " + - object_key + - " from" + - bucket_name + - " ...\n" - ); - // Create a helper function to convert a ReadableStream into a string. - const streamToString = (stream) => - new Promise((resolve, reject) => { - const chunks = []; - stream.on("data", (chunk) => chunks.push(chunk)); - stream.on("error", reject); - stream.on("end", () => resolve(Buffer.concat(chunks).toString("utf8"))); - }); - - // Get the object from the Amazon S3 bucket. It is returned as a ReadableStream. - const data = await s3Client.send(new GetObjectCommand(download_bucket_params)); - // Convert the ReadableStream to a string. - const bodyContents = await streamToString(data.Body); - console.log(bodyContents); - try { - // Copy the object from the first bucket to the second bucket. - const copy_object_params = { - Bucket: bucket_name, - CopySource: "/" + bucket_name + "/" + object_key, - Key: "copy-destination/" + object_key, - }; - console.log( - "\nCopying " + - object_key + - " from" + - bucket_name + - " to " + - bucket_name + - "/" + - copy_object_params.Key + - " ...\n" - ); - await s3Client.send(new CopyObjectCommand(copy_object_params)); - console.log("Success, object copied to folder."); - try { - console.log("\nDeleting " + object_key + " from" + bucket_name); - const delete_object_from_bucket_params = { - Bucket: bucket_name, - Key: object_key, - }; - - await s3Client.send( - new DeleteObjectCommand(delete_object_from_bucket_params) - ); - console.log("Success. Object deleted from bucket."); - try { - console.log( - "\nDeleting " + - object_key + - " from " + - bucket_name + - "/copy-destination folder" - ); - const delete_object_from_folder_params = { - Bucket: bucket_name, - Key: "copy-destination/" + object_key, - }; - - await s3Client.send( - new DeleteObjectCommand(delete_object_from_folder_params) - ); - console.log("Success. Object deleted from folder."); - try { - console.log( - "\nDeleting the bucket named " + bucket_name + "...\n" - ); - const delete_bucket_params = {Bucket: bucket_name}; - await s3Client.send( - new DeleteBucketCommand(delete_bucket_params) - ); - console.log("Success. First bucket deleted."); - return "Run successfully"; // For unit tests. - } catch (err) { - console.log("Error deleting object from folder.", err); - process.exit(1); - } - } catch (err) { - console.log("Error deleting bucket.", err); - process.exit(1); - } - } catch (err) { - console.log("Error deleting object from bucket.", err); - process.exit(1); - } - } catch (err) { - console.log("Error copying object from to folder", err); - process.exit(1); - } - } catch (err) { - console.log("Error downloading object", err); - process.exit(1); - - } - }catch (err) { - console.log("Error creating and upload object to bucket", err); - process.exit(1); - } - console.log("works"); - } catch (err) { - console.log("Error creating bucket", err); - } -}; -run(bucket_name, object_key, object_content); - -// snippet-end:[s3_basics.JavaScript.s3_basics] diff --git a/javascriptv3/example_code/s3/scenarios/s3_basics/tests/babel.config.js b/javascriptv3/example_code/s3/scenarios/s3_basics/tests/babel.config.js deleted file mode 100644 index 82956c0ed17..00000000000 --- a/javascriptv3/example_code/s3/scenarios/s3_basics/tests/babel.config.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - presets: ['@babel/preset-env'] -} \ No newline at end of file diff --git a/javascriptv3/example_code/s3/scenarios/s3_basics/tests/jest.config.js b/javascriptv3/example_code/s3/scenarios/s3_basics/tests/jest.config.js deleted file mode 100644 index 20299b49b0d..00000000000 --- a/javascriptv3/example_code/s3/scenarios/s3_basics/tests/jest.config.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = { - testEnvironment: 'node', - moduleDirectories: ["node_modules"], - testMatch: ["**/tests/*.test.js"], - transform: { - "^.+\\.(js|jsx)$": "babel-jest" - } -}; diff --git a/javascriptv3/example_code/s3/scenarios/s3_basics/tests/package.json b/javascriptv3/example_code/s3/scenarios/s3_basics/tests/package.json deleted file mode 100644 index 4fc21650a10..00000000000 --- a/javascriptv3/example_code/s3/scenarios/s3_basics/tests/package.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "author": "Brian Murray ", - "license": "Apache 2.0", - "dependencies": { - "@aws-sdk/client-s3": "^3.32.0" - }, - "devDependencies": { - "@babel/preset-env": "^7.14.4", - "jest": "^26.6.3", - "regenerator-runtime": "^0.13.7" - }, - "scripts": { - "test": "jest" - } -} diff --git a/javascriptv3/example_code/s3/scenarios/s3_basics/tests/s3_basics.test.js b/javascriptv3/example_code/s3/scenarios/s3_basics/tests/s3_basics.test.js deleted file mode 100644 index 0eee033ce73..00000000000 --- a/javascriptv3/example_code/s3/scenarios/s3_basics/tests/s3_basics.test.js +++ /dev/null @@ -1,20 +0,0 @@ -function getRandomInt(max) { - return Math.floor(Math.random() * max); -} -const value = getRandomInt(1000); -const bucket_name = "bucket-" + value; -process.argv.push("node", "s3_basics.js", bucket_name, "test.txt", "Test Content"); -console.log('argv', process.argv[4], process.argv[5], process.argv[6]) -const expected = "Run successfully"; - -import "regenerator-runtime/runtime"; -import { run } from "../src/s3_basics.js"; - -describe("Test function runs", () => { - it("should successfully run", async() => { - /* console.log(value);*/ - const response = await run(process.argv[4], process.argv[5], process.argv[6]); - console.log("Response ", Promise.resolve(response)); - expect(response).toEqual((expected)); - }); -}); diff --git a/javascriptv3/example_code/s3/scenarios/web/list-objects/.gitignore b/javascriptv3/example_code/s3/scenarios/web/list-objects/.gitignore new file mode 100644 index 00000000000..a547bf36d8d --- /dev/null +++ b/javascriptv3/example_code/s3/scenarios/web/list-objects/.gitignore @@ -0,0 +1,24 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +dist +dist-ssr +*.local + +# Editor directories and files +.vscode/* +!.vscode/extensions.json +.idea +.DS_Store +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? diff --git a/javascriptv3/example_code/s3/scenarios/web/list-objects/index.html b/javascriptv3/example_code/s3/scenarios/web/list-objects/index.html new file mode 100644 index 00000000000..e0d1c840806 --- /dev/null +++ b/javascriptv3/example_code/s3/scenarios/web/list-objects/index.html @@ -0,0 +1,13 @@ + + + + + + + Vite + React + TS + + +
    + + + diff --git a/javascriptv3/example_code/s3/scenarios/web/list-objects/package.json b/javascriptv3/example_code/s3/scenarios/web/list-objects/package.json new file mode 100644 index 00000000000..bdb7c8411ec --- /dev/null +++ b/javascriptv3/example_code/s3/scenarios/web/list-objects/package.json @@ -0,0 +1,25 @@ +{ + "name": "list-objects", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "tsc && vite build", + "preview": "vite preview" + }, + "dependencies": { + "@aws-sdk/client-cognito-identity": "^3.278.0", + "@aws-sdk/client-s3": "^3.278.0", + "@aws-sdk/credential-providers": "^3.278.0", + "react": "^18.2.0", + "react-dom": "^18.2.0" + }, + "devDependencies": { + "@types/react": "^18.0.27", + "@types/react-dom": "^18.0.10", + "@vitejs/plugin-react": "^3.1.0", + "typescript": "^4.9.3", + "vite": "^4.1.0" + } +} diff --git a/javascriptv3/example_code/s3/scenarios/web/list-objects/public/vite.svg b/javascriptv3/example_code/s3/scenarios/web/list-objects/public/vite.svg new file mode 100644 index 00000000000..e7b8dfb1b2a --- /dev/null +++ b/javascriptv3/example_code/s3/scenarios/web/list-objects/public/vite.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/javascriptv3/example_code/s3/scenarios/web/list-objects/src/App.css b/javascriptv3/example_code/s3/scenarios/web/list-objects/src/App.css new file mode 100644 index 00000000000..b9d355df2a5 --- /dev/null +++ b/javascriptv3/example_code/s3/scenarios/web/list-objects/src/App.css @@ -0,0 +1,42 @@ +#root { + max-width: 1280px; + margin: 0 auto; + padding: 2rem; + text-align: center; +} + +.logo { + height: 6em; + padding: 1.5em; + will-change: filter; + transition: filter 300ms; +} +.logo:hover { + filter: drop-shadow(0 0 2em #646cffaa); +} +.logo.react:hover { + filter: drop-shadow(0 0 2em #61dafbaa); +} + +@keyframes logo-spin { + from { + transform: rotate(0deg); + } + to { + transform: rotate(360deg); + } +} + +@media (prefers-reduced-motion: no-preference) { + a:nth-of-type(2) .logo { + animation: logo-spin infinite 20s linear; + } +} + +.card { + padding: 2em; +} + +.read-the-docs { + color: #888; +} diff --git a/javascriptv3/example_code/s3/scenarios/web/list-objects/src/App.tsx b/javascriptv3/example_code/s3/scenarios/web/list-objects/src/App.tsx new file mode 100644 index 00000000000..1c9242b326e --- /dev/null +++ b/javascriptv3/example_code/s3/scenarios/web/list-objects/src/App.tsx @@ -0,0 +1,59 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +// snippet-start:[javascript.v3.scenarios.web.ListObjects] +import { useEffect, useState } from "react"; +import { + ListObjectsCommand, + ListObjectsCommandOutput, + S3Client, +} from "@aws-sdk/client-s3"; +import { fromCognitoIdentityPool } from "@aws-sdk/credential-providers"; +import "./App.css"; + +function App() { + const [objects, setObjects] = useState< + Required["Contents"] + >([]); + + useEffect(() => { + const client = new S3Client({ + region: "us-east-1", + // Unless you have a public bucket, you'll need access to a private bucket. + // One way to do this is to create an Amazon Cognito identity pool, attach a role to the pool, + // and grant the role access to the 's3:GetObject' action. + // + // You'll also need to configure the CORS settings on the bucket to allow traffic from + // this example site. Here's an example configuration that allows all origins. Don't + // do this in production. + //[ + // { + // "AllowedHeaders": ["*"], + // "AllowedMethods": ["GET"], + // "AllowedOrigins": ["*"], + // "ExposeHeaders": [], + // }, + //] + // + credentials: fromCognitoIdentityPool({ + clientConfig: { region: "us-east-1" }, + identityPoolId: "", + }), + }); + const command = new ListObjectsCommand({ Bucket: "bucket-name" }); + client.send(command).then(({ Contents }) => setObjects(Contents || [])); + }, []); + + return ( +
    + {objects.map((o) => ( +
    {o.Key}
    + ))} +
    + ); +} + +export default App; +// snippet-end:[javascript.v3.scenarios.web.ListObjects] diff --git a/javascriptv3/example_code/s3/scenarios/web/list-objects/src/index.css b/javascriptv3/example_code/s3/scenarios/web/list-objects/src/index.css new file mode 100644 index 00000000000..2c3fac689c7 --- /dev/null +++ b/javascriptv3/example_code/s3/scenarios/web/list-objects/src/index.css @@ -0,0 +1,69 @@ +:root { + font-family: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif; + line-height: 1.5; + font-weight: 400; + + color-scheme: light dark; + color: rgba(255, 255, 255, 0.87); + background-color: #242424; + + font-synthesis: none; + text-rendering: optimizeLegibility; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + -webkit-text-size-adjust: 100%; +} + +a { + font-weight: 500; + color: #646cff; + text-decoration: inherit; +} +a:hover { + color: #535bf2; +} + +body { + margin: 0; + display: flex; + place-items: center; + min-width: 320px; + min-height: 100vh; +} + +h1 { + font-size: 3.2em; + line-height: 1.1; +} + +button { + border-radius: 8px; + border: 1px solid transparent; + padding: 0.6em 1.2em; + font-size: 1em; + font-weight: 500; + font-family: inherit; + background-color: #1a1a1a; + cursor: pointer; + transition: border-color 0.25s; +} +button:hover { + border-color: #646cff; +} +button:focus, +button:focus-visible { + outline: 4px auto -webkit-focus-ring-color; +} + +@media (prefers-color-scheme: light) { + :root { + color: #213547; + background-color: #ffffff; + } + a:hover { + color: #747bff; + } + button { + background-color: #f9f9f9; + } +} diff --git a/javascriptv3/example_code/s3/scenarios/web/list-objects/src/main.tsx b/javascriptv3/example_code/s3/scenarios/web/list-objects/src/main.tsx new file mode 100644 index 00000000000..791f139e242 --- /dev/null +++ b/javascriptv3/example_code/s3/scenarios/web/list-objects/src/main.tsx @@ -0,0 +1,10 @@ +import React from 'react' +import ReactDOM from 'react-dom/client' +import App from './App' +import './index.css' + +ReactDOM.createRoot(document.getElementById('root') as HTMLElement).render( + + + , +) diff --git a/javascriptv3/example_code/s3/scenarios/web/list-objects/src/vite-env.d.ts b/javascriptv3/example_code/s3/scenarios/web/list-objects/src/vite-env.d.ts new file mode 100644 index 00000000000..11f02fe2a00 --- /dev/null +++ b/javascriptv3/example_code/s3/scenarios/web/list-objects/src/vite-env.d.ts @@ -0,0 +1 @@ +/// diff --git a/javascriptv3/example_code/s3/scenarios/web/list-objects/tsconfig.json b/javascriptv3/example_code/s3/scenarios/web/list-objects/tsconfig.json new file mode 100644 index 00000000000..3d0a51a86e2 --- /dev/null +++ b/javascriptv3/example_code/s3/scenarios/web/list-objects/tsconfig.json @@ -0,0 +1,21 @@ +{ + "compilerOptions": { + "target": "ESNext", + "useDefineForClassFields": true, + "lib": ["DOM", "DOM.Iterable", "ESNext"], + "allowJs": false, + "skipLibCheck": true, + "esModuleInterop": false, + "allowSyntheticDefaultImports": true, + "strict": true, + "forceConsistentCasingInFileNames": true, + "module": "ESNext", + "moduleResolution": "Node", + "resolveJsonModule": true, + "isolatedModules": true, + "noEmit": true, + "jsx": "react-jsx" + }, + "include": ["src"], + "references": [{ "path": "./tsconfig.node.json" }] +} diff --git a/javascriptv3/example_code/s3/scenarios/web/list-objects/tsconfig.node.json b/javascriptv3/example_code/s3/scenarios/web/list-objects/tsconfig.node.json new file mode 100644 index 00000000000..9d31e2aed93 --- /dev/null +++ b/javascriptv3/example_code/s3/scenarios/web/list-objects/tsconfig.node.json @@ -0,0 +1,9 @@ +{ + "compilerOptions": { + "composite": true, + "module": "ESNext", + "moduleResolution": "Node", + "allowSyntheticDefaultImports": true + }, + "include": ["vite.config.ts"] +} diff --git a/javascriptv3/example_code/s3/scenarios/web/list-objects/vite.config.ts b/javascriptv3/example_code/s3/scenarios/web/list-objects/vite.config.ts new file mode 100644 index 00000000000..5a33944a9b4 --- /dev/null +++ b/javascriptv3/example_code/s3/scenarios/web/list-objects/vite.config.ts @@ -0,0 +1,7 @@ +import { defineConfig } from 'vite' +import react from '@vitejs/plugin-react' + +// https://vitejs.dev/config/ +export default defineConfig({ + plugins: [react()], +}) diff --git a/javascriptv3/example_code/s3/src/libs/s3Client.js b/javascriptv3/example_code/s3/src/libs/s3Client.js deleted file mode 100644 index 7915b62fe85..00000000000 --- a/javascriptv3/example_code/s3/src/libs/s3Client.js +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-creating-buckets.html. - -Purpose: -s3Client.js is a helper function that creates an Amazon Simple Storage Service (Amazon S3) service client. - -Inputs (replace in code): - - REGION - -*/ -// snippet-start:[s3.JavaScript.buckets.createclientv3] -// Create service client module using ES6 syntax. -import { S3Client } from "@aws-sdk/client-s3"; -// Set the AWS Region. -const REGION = "us-east-1"; -// Create an Amazon S3 service client object. -const s3Client = new S3Client({ region: REGION }); -export { s3Client }; -// snippet-end:[s3.JavaScript.buckets.createclientv3] diff --git a/javascriptv3/example_code/s3/src/metadata.yaml b/javascriptv3/example_code/s3/src/metadata.yaml deleted file mode 100644 index 789d6c4e5d6..00000000000 --- a/javascriptv3/example_code/s3/src/metadata.yaml +++ /dev/null @@ -1,85 +0,0 @@ ---- -# Amazon S3 examples -files: - - path: ./libs/s3Client.js - services: - - s3 - - path: ../photoViewer/src/s3_PhotoViewer.js - services: - - s3 - - path: ../photoExample/src/s3_PhotoExample.js - services: - - s3 - - path: s3_createbucket.js - services: - - s3 - - path: s3_deletebucket.js - services: - - s3 - - path: s3_deletebucketpolicy.js - services: - - s3 - - path: s3_deletebucketwebsite.js - services: - - s3 - - path: s3_delete_object.js - services: - - s3 - - path: s3_delete_all_objects.js - services: - - s3 - - path: s3_delete_multiple_objects.js - services: - - s3 - - path: s3_getbucketacl.js - services: - - s3 - - path: s3_putbucketacl.js - services: - - s3 - - path: s3_getbucketpolicy.js - services: - - s3 - - path: s3_getbucketwebsite.js - services: - - s3 - - path: s3_getcors.js - services: - - s3 - - path: s3_setcors.js - services: - - s3 - - path: s3_listbuckets.js - services: - - s3 - - path: s3_listobjects.js - services: - - s3 - - path: s3_setbucketwebsite.js - services: - - s3 - - path: s3_multipartupload.js - services: - - s3 - - path: s3_putbucketpolicy.js - services: - - s3 - - path: s3_list1000plusobjects.js - services: - - s3 - - path: s3_create_and_upload_object.js - services: - - s3 - - path: s3_upload_object.js - services: - - s3 - - path: s3_put_presignedURL.js - services: - - s3 - - path: s3.js - services: - - s3 - - path: s3_getobject.js - services: - - s3 -... diff --git a/javascriptv3/example_code/s3/src/package.json b/javascriptv3/example_code/s3/src/package.json deleted file mode 100644 index 8a373f22f72..00000000000 --- a/javascriptv3/example_code/s3/src/package.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "name": "aws-sdk-v3-s3-examples", - "version": "1.0.0", - "main": "index.js", - "repository": "git@github.com/awsdocs/aws-doc-sdk-examples/tree/master/javascriptv3/example_code/s3.git", - "author": "Brian Murray ", - "license": "Apache 2.0", - "transform": {}, - "dependencies": { - "@aws-sdk/client-s3": "^3.196.0", - "@aws-sdk/node-http-handler": "^3.32.0" - }, - "scripts": { - "test": "jest" - }, - "type": "module" -} diff --git a/javascriptv3/example_code/s3/src/s3.js b/javascriptv3/example_code/s3/src/s3.js deleted file mode 100644 index d9448aabcba..00000000000 --- a/javascriptv3/example_code/s3/src/s3.js +++ /dev/null @@ -1,88 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 - -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/cloud9/latest/user-guide/sample-nodejs.html. - -Purpose: -s3.js demonstrates how to list, create, and delete a bucket in Amazon S3. - -Inputs: -- BUCKET_NAME - -Running the code: -nodes3.js REGION BUCKET_NAME -*/ - -// snippet-start:[s3.javascript.bucket_operations.list_create_deleteV3] - -if (process.argv.length < 4) { - console.log( - "Usage: node s3.js \n" + - "Example: node s3.js my-test-bucket us-east-2" - ); - process.exit(1); -} -import { - ListBucketsCommand, - CreateBucketCommand, - DeleteBucketCommand, -} from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client"; // Helper function that creates an Amazon S3 service client module. - -const bucket_name = process.argv[2]; -const region = process.argv[3]; - -const create_bucket_params = { - Bucket: bucket_name, - CreateBucketConfiguration: { - LocationConstraint: region, - }, -}; - -export const delete_bucket_params = { Bucket: bucket_name }; - -// List all of your available buckets in this AWS Region. - -export const run = async () => { - try { - const data = await s3Client.send(new ListBucketsCommand({})); - console.log("My buckets now are:\n"); - - for (var i = 0; i < data.Buckets.length; i++) { - console.log(data.Buckets[i].Name); - } - } catch (err) { - console.log("Error", err); - } - - try { - console.log("\nCreating a bucket named " + bucket_name + "...\n"); - const data = await s3Client.send( - new CreateBucketCommand(create_bucket_params) - ); - console.log("My buckets now are:\n"); - - for (var i = 0; i < data.Buckets.length; i++) { - console.log(data.Buckets[i].Name); - } - } catch (err) { - console.log(err.code + ": " + err.message); - } - - try { - console.log("\nDeleting the bucket named " + bucket_name + "...\n"); - const data = await s3Client.send( - new DeleteBucketCommand(delete_bucket_params) - ); - return data; - } catch (err) { - console.log(err.code + ": " + err.message); - } -}; -run(); - -// snippet-end:[s3.javascript.bucket_operations.list_create_deleteV3] -// For unit testing only. -// module.exports ={run, create_bucket_params, delete_bucket_params}; diff --git a/javascriptv3/example_code/s3/src/s3_copyobject.js b/javascriptv3/example_code/s3/src/s3_copyobject.js deleted file mode 100644 index 46ed4306a3f..00000000000 --- a/javascriptv3/example_code/s3/src/s3_copyobject.js +++ /dev/null @@ -1,44 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-creating-buckets.html. - -Purpose: -s3_copyobject.js demonstrates how to copy an object from one Amazon Simple Storage Solution (Amazon S3) bucket to another. - -Inputs (replace in code): -- DESTINATION_BUCKET_NAME -- SOURCE_BUCKET_NAME -- OBJECT_NAME - -Running the code: -node s3_copyobject.js -*/ -// snippet-start:[s3.JavaScript.buckets.copyObjectV3] -// Get service clients module and commands using ES6 syntax. -import { CopyObjectCommand } from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client.js"; - -// Set the bucket parameters. - -export const params = { - Bucket: "DESTINATION_BUCKET_NAME", - CopySource: "/SOURCE_BUCKET_NAME/OBJECT_NAME", - Key: "OBJECT_NAME" -}; - -// Create the Amazon S3 bucket. -export const run = async () => { - try { - const data = await s3Client.send(new CopyObjectCommand(params)); - console.log("Success", data); - return data; // For unit tests. - } catch (err) { - console.log("Error", err); - } -}; -run(); -// snippet-end:[s3.JavaScript.buckets.copyObjectV3] -// For unit tests only. -//exports {run, bucketParams}; diff --git a/javascriptv3/example_code/s3/src/s3_create_and_upload_objects.js b/javascriptv3/example_code/s3/src/s3_create_and_upload_objects.js deleted file mode 100644 index 93f328336af..00000000000 --- a/javascriptv3/example_code/s3/src/s3_create_and_upload_objects.js +++ /dev/null @@ -1,52 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-creating-buckets.html. - -Purpose: -s3_create_and_upload_objects.js creates and uploads an object to an Amazon Simple Storage Solution (Amazon S3) bucket. -Inputs: -- BUCKET_NAME -- KEY: The name of the object to create and upload. -- BODY: The contents of the uploaded file. - -Running the code: -nodes3_create_and_upload_object.js -*/ -// snippet-start:[s3.JavaScript.buckets.upload_putcommandV3] - -// Import required AWS SDK clients and commands for Node.js. -import { PutObjectCommand } from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client.js"; // Helper function that creates an Amazon S3 service client module. - -// Set the parameters. -export const bucketParams = { - Bucket: "BUCKET_NAME", - // Specify the name of the new object. For example, 'index.html'. - // To create a directory for the object, use '/'. For example, 'myApp/package.json'. - Key: "OBJECT_NAME", - // Content of the new object. - Body: "BODY", -}; - -// Create and upload the object to the S3 bucket. -export const run = async () => { - try { - const data = await s3Client.send(new PutObjectCommand(bucketParams)); - return data; // For unit tests. - console.log( - "Successfully uploaded object: " + - bucketParams.Bucket + - "/" + - bucketParams.Key - ); - } catch (err) { - console.log("Error", err); - } -}; -run(); - -// snippet-end:[s3.JavaScript.buckets.upload_putcommandV3] -// For unit testing only. For more information, see -// module.exports ={run, bucketParams}; diff --git a/javascriptv3/example_code/s3/src/s3_createbucket.js b/javascriptv3/example_code/s3/src/s3_createbucket.js deleted file mode 100644 index facb09daaba..00000000000 --- a/javascriptv3/example_code/s3/src/s3_createbucket.js +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-creating-buckets.html. - -Purpose: -s3_createbucket.js demonstrates how to create an Amazon S3 bucket. - -Inputs (replace in code): -- BUCKET_NAME - -Running the code: -nodes3_createbucket.js -*/ -// snippet-start:[s3.JavaScript.buckets.createBucketV3] -// Get service clients module and commands using ES6 syntax. -import { CreateBucketCommand } from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client.js"; - -// Set the bucket parameters. - -export const bucketParams = { Bucket: "BUCKET_NAME" }; - -// Create the Amazon S3 bucket. -export const run = async () => { - try { - const data = await s3Client.send(new CreateBucketCommand(bucketParams)); - console.log("Success", data); - return data; // For unit tests. - } catch (err) { - console.log("Error", err); - } -}; -run(); -// snippet-end:[s3.JavaScript.buckets.createBucketV3] -// For unit tests only. -// module.exports ={run, bucketParams}; diff --git a/javascriptv3/example_code/s3/src/s3_delete_all_objects.js b/javascriptv3/example_code/s3/src/s3_delete_all_objects.js deleted file mode 100644 index d1ebf9cbfe5..00000000000 --- a/javascriptv3/example_code/s3/src/s3_delete_all_objects.js +++ /dev/null @@ -1,43 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-creating-buckets.html. - -Purpose: -s3_delete_all_objectS.js demonstrates how to delete all objects} from an Amazon Simple Storage Solution (S3) bucket. - -Inputs (replace in code): -- BUCKET_NAME - -Running the code: -nodes3_delete_all_objectS.js -*/ -// snippet-start:[s3.JavaScript.buckets.deleteoallbjectsV3] -import { ListObjectsCommand, DeleteObjectCommand } from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client.js"; // Helper function that creates an Amazon S3 service client module. - -export const bucketParams = { Bucket: "BUCKET_NAME" }; - -export const run = async () => { - try { - const data = await s3Client.send(new ListObjectsCommand(bucketParams)); - let noOfObjects = data.Contents; - for (let i = 0; i < noOfObjects.length; i++) { - await s3Client.send( - new DeleteObjectCommand({ - Bucket: bucketParams.Bucket, - Key: noOfObjects[i].Key, - }) - ); - } - console.log("Success. Objects deleted."); - return data; // For unit tests. - } catch (err) { - console.log("Error", err); - } -}; -run(); -// snippet-end:[s3.JavaScript.buckets.deleteoallbjectsV3] -// For unit testing only. -// module.exports ={run, bucketParams}; diff --git a/javascriptv3/example_code/s3/src/s3_delete_multiple_objects.js b/javascriptv3/example_code/s3/src/s3_delete_multiple_objects.js deleted file mode 100644 index c897766786a..00000000000 --- a/javascriptv3/example_code/s3/src/s3_delete_multiple_objects.js +++ /dev/null @@ -1,49 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-creating-buckets.html. - -Purpose: -s3_delete_multiple_objects.js demonstrates how to delete multiple objects} from an Amazon Simple Storage Solution (S3) bucket. - -Inputs (replace in code): -- BUCKET_NAME -- KEY_1 -- KEY_2 - -Running the code: -nodes3_delete_multiple_objects.js -*/ -// snippet-start:[s3.JavaScript.buckets.deletemultipleobjectsV3] -import { DeleteObjectsCommand } from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client.js" // Helper function that creates an Amazon S3 service client module. - -export const bucketParams = { - Bucket: "BUCKET_NAME", - Delete: { - Objects: [ - { - Key: "KEY_1", - }, - { - Key: "KEY_2", - }, - ], - }, -}; - -export const run = async () => { - try { - const data = await s3Client.send(new DeleteObjectsCommand(bucketParams)); - return data; // For unit tests. - console.log("Success. Object deleted."); - } catch (err) { - console.log("Error", err); - } -}; -run(); -// snippet-end:[s3.JavaScript.buckets.deletemultipleobjectsV3] -// For unit testing only. -// module.exports ={run, bucketParams}; - diff --git a/javascriptv3/example_code/s3/src/s3_delete_object.js b/javascriptv3/example_code/s3/src/s3_delete_object.js deleted file mode 100644 index 21c5bffacfa..00000000000 --- a/javascriptv3/example_code/s3/src/s3_delete_object.js +++ /dev/null @@ -1,35 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-creating-buckets.html. - -Purpose: -s3_delete_object.js demonstrates how to delete an object} from an Amazon Simple Storage Solution (S3) bucket. - -Inputs (replace in code): -- BUCKET_NAME -- KEY - -Running the code: -nodes3_delete_object.js -*/ -// snippet-start:[s3.JavaScript.buckets.deleteobjectV3] -import { DeleteObjectCommand } from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client.js" // Helper function that creates an Amazon S3 service client module. - -export const bucketParams = { Bucket: "BUCKET_NAME", Key: "KEY" }; - -export const run = async () => { - try { - const data = await s3Client.send(new DeleteObjectCommand(bucketParams)); - console.log("Success. Object deleted.", data); - return data; // For unit tests. - } catch (err) { - console.log("Error", err); - } -}; -run(); -// snippet-end:[s3.JavaScript.buckets.deleteobjectV3] -// For unit testing only. -// module.exports ={run, bucketParams}; diff --git a/javascriptv3/example_code/s3/src/s3_deletebucket.js b/javascriptv3/example_code/s3/src/s3_deletebucket.js deleted file mode 100644 index 060fc809514..00000000000 --- a/javascriptv3/example_code/s3/src/s3_deletebucket.js +++ /dev/null @@ -1,36 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-creating-buckets.html. -Purpose: -s3_deletebucket.js demonstrates how to delete an Amazon S3 bucket. - -Inputs (replace in code): -- BUCKET_NAME - -Running the code: -nodes3_deletebucket.js -*/ -// snippet-start:[s3.JavaScript.buckets.deleteBucketV3] -// Import required AWS SDK clients and commands for Node.js. -import { DeleteBucketCommand } from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client.js"; // Helper function that creates an Amazon S3 service client module. - -// Set the bucket parameters -export const bucketParams = { Bucket: "BUCKET_NAME" }; - -export const run = async () => { - try { - const data = await s3Client.send(new DeleteBucketCommand(bucketParams)); - return data; // For unit tests. - console.log("Success - bucket deleted"); - } catch (err) { - console.log("Error", err); - } -}; -// Invoke run() so these examples run out of the box. -run(); -// snippet-end:[s3.JavaScript.buckets.deleteBucketV3] -// For unit testing only. -// module.exports ={run, bucketParams}; diff --git a/javascriptv3/example_code/s3/src/s3_deletebucketpolicy.js b/javascriptv3/example_code/s3/src/s3_deletebucketpolicy.js deleted file mode 100644 index ee55870e9ee..00000000000 --- a/javascriptv3/example_code/s3/src/s3_deletebucketpolicy.js +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-bucket-policies.html. -Purpose: -s3_deletebucketpolicy.js demonstrates how to delete an Amazon S3 bucket policy. - -Inputs (replace in code): -- BUCKET_NAME - -Running the code: -node s3_deletebucketpolicy.js -*/ -// snippet-start:[s3.JavaScript.policy.deleteBucketPolicyV3] - -// Import required AWS SDK clients and commands for Node.js. -import { DeleteBucketPolicyCommand } from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client.js"; // Helper function that creates an Amazon S3 service client module. - -// Set the bucket parameters -export const bucketParams = { Bucket: "BUCKET_NAME" }; - -export const run = async () => { - try { - const data = await s3Client.send(new DeleteBucketPolicyCommand(bucketParams)); - console.log("Success", data + ", bucket policy deleted"); - return data; // For unit tests. - } catch (err) { - console.log("Error", err); - } -}; -// Invoke run() so these examples run out of the box. -run(); -// snippet-end:[s3.JavaScript.policy.deleteBucketPolicyV3] -// For unit testing only. -// module.exports ={run, bucketParams}; diff --git a/javascriptv3/example_code/s3/src/s3_deletebucketwebsite.js b/javascriptv3/example_code/s3/src/s3_deletebucketwebsite.js deleted file mode 100644 index 2094bdd5b52..00000000000 --- a/javascriptv3/example_code/s3/src/s3_deletebucketwebsite.js +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-static-web-host.html. - -Purpose: -s3_deletebucketwebsite.js demonstrates how to delete the website configuration} from an Amazon S3 bucket. - -Inputs (replace in code): -- BUCKET_NAME - -Running the code: -nodes3_deletebucketwebsite.js - */ -// snippet-start:[s3.JavaScript.website.deleteBucketWebsiteV3] - -// Import required AWS SDK clients and commands for Node.js. - -import { DeleteBucketWebsiteCommand } from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client.js"; // Helper function that creates an Amazon S3 service client module. - -// Create the parameters for calling -export const bucketParams = { Bucket: "BUCKET_NAME" }; - -export const run = async () => { - try { - const data = await s3Client.send(new DeleteBucketWebsiteCommand(bucketParams)); - return data; // For unit tests. - console.log("Success", data); - } catch (err) { - console.log("Error", err); - } -}; -run(); -// snippet-end:[s3.JavaScript.website.deleteBucketWebsiteV3] -// For unit testing only. -// module.exports ={run, bucketParams}; diff --git a/javascriptv3/example_code/s3/src/s3_get_presignedURL.js b/javascriptv3/example_code/s3/src/s3_get_presignedURL.js deleted file mode 100644 index fd0eabd52f7..00000000000 --- a/javascriptv3/example_code/s3/src/s3_get_presignedURL.js +++ /dev/null @@ -1,112 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-creating-buckets.html. - -Purpose: -s3_get_presignedURL.js demonstrated how to generate a presigned URL to get an object from an Amazon Simple Storage Service (Amazon S3) bucket. - -Note: This example creates a bucket and object for demonstration purposes, then immediately deletes them. - -Inputs (replace in code): - -Running the code: -node s3_get_presignedURL.js - -[Outputs | Returns]: -Uploads the specified file to the specified bucket. -*/ - -// snippet-start:[s3.JavaScript.buckets.getpresignedurlv3] -// Import the required AWS SDK clients and commands for Node.js -import { - CreateBucketCommand, - PutObjectCommand, - GetObjectCommand, - DeleteObjectCommand, - DeleteBucketCommand, -} from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client.js"; // Helper function that creates an Amazon S3 service client module. -import { getSignedUrl } from "@aws-sdk/s3-request-presigner"; -import fetch from "node-fetch"; - -// Set parameters -// Create a random names for the S3 bucket and key. -export const bucketParams = { - Bucket: `test-bucket-${Math.ceil(Math.random() * 10 ** 10)}`, - Key: `test-object-${Math.ceil(Math.random() * 10 ** 10)}`, - Body: "BODY", -}; - -export const run = async () => { - // Create an S3 bucket. - try { - console.log(`Creating bucket ${bucketParams.Bucket}`); - const data = await s3Client.send( - new CreateBucketCommand({ Bucket: bucketParams.Bucket }) - ); - console.log(`Waiting for "${bucketParams.Bucket}" bucket creation...\n`); - } catch (err) { - console.log("Error creating bucket", err); - } - // Put the object in the S3 bucket. - try { - console.log(`Putting object "${bucketParams.Key}" in bucket`); - const data = await s3Client.send( - new PutObjectCommand({ - Bucket: bucketParams.Bucket, - Key: bucketParams.Key, - Body: bucketParams.Body, - }) - ); - } catch (err) { - console.log("Error putting object", err); - } - // Create a presigned URL. - try { - // Create the command. - const command = new GetObjectCommand(bucketParams); - - // Create the presigned URL. - const signedUrl = await getSignedUrl(s3Client, command, { - expiresIn: 3600, - }); - console.log( - `\nGetting "${bucketParams.Key}" using signedUrl with body "${bucketParams.Body}" in v3` - ); - console.log(signedUrl); - const response = await fetch(signedUrl); - console.log( - `\nResponse returned by signed URL: ${await response.text()}\n` - ); - } catch (err) { - console.log("Error creating presigned URL", err); - } - // Delete the object. - try { - console.log(`\nDeleting object "${bucketParams.Key}"} from bucket`); - const data = await s3Client.send( - new DeleteObjectCommand({ - Bucket: bucketParams.Bucket, - Key: bucketParams.Key, - }) - ); - } catch (err) { - console.log("Error deleting object", err); - } - // Delete the S3 bucket. - try { - console.log(`\nDeleting bucket ${bucketParams.Bucket}`); - const data = await s3Client.send( - new DeleteBucketCommand({ - Bucket: bucketParams.Bucket, - Key: bucketParams.Key, - }) - ); - } catch (err) { - console.log("Error deleting object", err); - } -}; -run(); -// snippet-end:[s3.JavaScript.buckets.getpresignedurlv3] diff --git a/javascriptv3/example_code/s3/src/s3_getbucketacl.js b/javascriptv3/example_code/s3/src/s3_getbucketacl.js deleted file mode 100644 index 313a3435c27..00000000000 --- a/javascriptv3/example_code/s3/src/s3_getbucketacl.js +++ /dev/null @@ -1,40 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-access-permissions.html. - -Purpose: -s3_getbucketacl.js demonstrates how to retrieve the Access Control List (ACL) permissions of an Amazon -Simple Storage Service (Amazon S3) bucket. - -Inputs (replace in code): -- BUCKET_NAME - -Running the code: -nodes3_getbucketacl.js - -Outputs: -Retrieves the details of the ACL permissions of an Amazon S3 bucket. -*/ -//snippet-start:[s3.JavaScript.perms.getBucketAclV3] -// Import required AWS SDK clients and commands for Node.js. -import { GetBucketAclCommand } from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client.js"; // Helper function that creates an Amazon S3 service client module. - -// Create the parameters. -export const bucketParams = { Bucket: "BUCKET_NAME" }; - -export const run = async () => { - try { - const data = await s3Client.send(new GetBucketAclCommand(bucketParams)); - console.log("Success", data.Grants); - return data; // For unit tests. - } catch (err) { - console.log("Error", err); - } -}; -run(); -// snippet-end:[s3.JavaScript.perms.getBucketAclV3] -// For unit testing only. -// module.exports ={run, bucketParams}; diff --git a/javascriptv3/example_code/s3/src/s3_getbucketpolicy.js b/javascriptv3/example_code/s3/src/s3_getbucketpolicy.js deleted file mode 100644 index 51aca4b1085..00000000000 --- a/javascriptv3/example_code/s3/src/s3_getbucketpolicy.js +++ /dev/null @@ -1,36 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-bucket-policies.html. - -Purpose: -s3_getbucketpolicy.js demonstrates how to retrieve the policy of an Amazon S3 bucket. - -Inputs (replace in code): -- BUCKET_NAME - -Running the code: -nodes3_getbucketpolicy.js -*/ -// snippet-start:[s3.JavaScript.policy.getBucketPolicyV3] -// Import required AWS SDK clients and commands for Node.js. -import { GetBucketPolicyCommand } from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client.js"; // Helper function that creates an Amazon S3 service client module. - -// Create the parameters for calling -export const bucketParams = { Bucket: "BUCKET_NAME" }; - -export const run = async () => { - try { - const data = await s3Client.send(new GetBucketPolicyCommand(bucketParams)); - console.log("Success", data); - return data; // For unit tests. - } catch (err) { - console.log("Error", err); - } -}; -run(); -// snippet-end:[s3.JavaScript.policy.getBucketPolicyV3] -// For unit testing only. -// module.exports ={run, bucketParams}; diff --git a/javascriptv3/example_code/s3/src/s3_getbucketwebsite.js b/javascriptv3/example_code/s3/src/s3_getbucketwebsite.js deleted file mode 100644 index 19d58380a18..00000000000 --- a/javascriptv3/example_code/s3/src/s3_getbucketwebsite.js +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-static-web-host.html. - -Purpose: -s3_getbucketwebsite.js demonstrates how to retrieve the website configuration of an Amazon S3 bucket. - -Inputs : -- BUCKET_NAME - -Running the code: -nodes3_getbucketwebsite.js -*/ -// snippet-start:[s3.JavaScript.website.getBucketWebsiteV3] - - -// Import required AWS SDK clients and commands for Node.js. -import { GetBucketWebsiteCommand } from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client.js"; // Helper function that creates an Amazon S3 service client module. - -// Create the parameters for calling -export const bucketParams = { Bucket: "BUCKET_NAME" }; - -export const run = async () => { - try { - const data = await s3Client.send(new GetBucketWebsiteCommand(bucketParams)); - console.log("Success", data); - return data; // For unit tests. - } catch (err) { - console.log("Error", err); - } -}; -run(); -// snippet-end:[s3.JavaScript.website.getBucketWebsiteV3] -// For unit testing only. -// module.exports ={run, bucketParams}; diff --git a/javascriptv3/example_code/s3/src/s3_getcors.js b/javascriptv3/example_code/s3/src/s3_getcors.js deleted file mode 100644 index 324cfd1bf9e..00000000000 --- a/javascriptv3/example_code/s3/src/s3_getcors.js +++ /dev/null @@ -1,37 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -// https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-configuring-buckets.html. - -Purpose: -s3_getcors.js demonstrates how to retrieve the CORS configuration of an Amazon S3 bucket. - -Inputs : -- BUCKET_NAME - -Running the code: -nodes3_getcors.js - */ -// snippet-start:[s3.JavaScript.cors.getBucketCorsV3] - -// Import required AWS SDK clients and commands for Node.js. -import { GetBucketCorsCommand } from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client.js"; // Helper function that creates an Amazon S3 service client module. - -// Create the parameters for calling -export const bucketParams = { Bucket: "BUCKET_NAME" }; - -export const run = async () => { - try { - const data = await s3Client.send(new GetBucketCorsCommand(bucketParams)); - console.log("Success", JSON.stringify(data.CORSRules)); - return data; // For unit tests. - } catch (err) { - console.log("Error", err); - } -}; -run(); -// snippet-end:[s3.JavaScript.cors.getBucketCorsV3] -// For unit testing only. -// module.exports ={run, bucketParams}; diff --git a/javascriptv3/example_code/s3/src/s3_getobject.js b/javascriptv3/example_code/s3/src/s3_getobject.js deleted file mode 100644 index 96dc446e039..00000000000 --- a/javascriptv3/example_code/s3/src/s3_getobject.js +++ /dev/null @@ -1,45 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 - -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-creating-buckets.html. - -Purpose: -s3_getobject.js gets an object from an Amazon Simple Storage Service (Amazon S3) bucket. - -Inputs (replace in code): -- BUCKET_NAME -- KEY - -Running the code: -node s3_getobject.js - -[Outputs | Returns]: -Returns the object} from the Amazon S3 bucket. -*/ -// snippet-start:[s3.JavaScript.buckets.getobjectV3] -// Import required AWS SDK clients and commands for Node.js. -import { GetObjectCommand } from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client.js"; // Helper function that creates an Amazon S3 service client module. - -export const bucketParams = { - Bucket: "BUCKET_NAME", - Key: "KEY", -}; - -export const run = async () => { - try { - // Get the object from the Amazon S3 bucket. It is returned as a ReadableStream. - const data = await s3Client.send(new GetObjectCommand(bucketParams)); - // Convert the ReadableStream to a string. - return await data.Body.transformToString(); - } catch (err) { - console.log("Error", err); - } -}; - -run(); -// snippet-end:[s3.JavaScript.buckets.getobjectV3] -// For unit testing only. -// module.exports ={run, bucketParams}; diff --git a/javascriptv3/example_code/s3/src/s3_list1000plusobjects.js b/javascriptv3/example_code/s3/src/s3_list1000plusobjects.js deleted file mode 100644 index 017914dd618..00000000000 --- a/javascriptv3/example_code/s3/src/s3_list1000plusobjects.js +++ /dev/null @@ -1,56 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-creating-buckets.html. - -Purpose: -s3_list1000plusObjects.js demonstrates how to list 1000 or more objects in an Amazon S3 bucket. - -Inputs (replace in code): -- BUCKET_NAME - -Running the code: -node s3_list1000plusObjects.js - -*/ -// snippet-start:[s3.JavaScript.buckets.listManyObjectsV3] -// Import required AWS SDK clients and commands for Node.js. -import { ListObjectsCommand } from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client.js"; // Helper function that creates an Amazon S3 service client module. - -// Create the parameters for the bucket -export const bucketParams = { Bucket: "BUCKET_NAME" }; - -export async function run() { - // Declare truncated as a flag that the while loop is based on. - let truncated = true; - // Declare a variable to which the key of the last element is assigned to in the response. - let pageMarker; - // while loop that runs until 'response.truncated' is false. - while (truncated) { - try { - const response = await s3Client.send(new ListObjectsCommand(bucketParams)); - // return response; //For unit tests - response.Contents.forEach((item) => { - console.log(item.Key); - }); - // Log the key of every item in the response to standard output. - truncated = response.IsTruncated; - // If truncated is true, assign the key of the last element in the response to the pageMarker variable. - if (truncated) { - pageMarker = response.Contents.slice(-1)[0].Key; - // Assign the pageMarker value to bucketParams so that the next iteration starts from the new pageMarker. - bucketParams.Marker = pageMarker; - } - // At end of the list, response.truncated is false, and the function exits the while loop. - } catch (err) { - console.log("Error", err); - truncated = false; - } - } -} -run(); -// snippet-end:[s3.JavaScript.buckets.listManyObjectsV3] -// For unit testing only. -// module.exports ={run, bucketParams}; diff --git a/javascriptv3/example_code/s3/src/s3_listbuckets.js b/javascriptv3/example_code/s3/src/s3_listbuckets.js deleted file mode 100644 index bdccd5b86ae..00000000000 --- a/javascriptv3/example_code/s3/src/s3_listbuckets.js +++ /dev/null @@ -1,34 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is pending release. The preview version of the SDK is available -at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-creating-buckets.html. - -Purpose: -s3_listbuckets.js demonstrates how to list all the buckets in an AWS account. - -Inputs (replace in code): -- BUCKET_NAME - -Running the code: -s3_getbucketwebsite s3_listobjects.js -*/ -// snippet-start:[s3.JavaScript.buckets.listBucketsV3] -// Import required AWS SDK clients and commands for Node.js. -import { ListBucketsCommand } from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client.js"; // Helper function that creates an Amazon S3 service client module. - -export const run = async () => { - try { - const data = await s3Client.send(new ListBucketsCommand({})); - console.log("Success", data.Buckets); - return data; // For unit tests. - } catch (err) { - console.log("Error", err); - } -}; -run(); -// snippet-end:[s3.JavaScript.buckets.listBucketsV3] -// For unit testing only. -// module.exports ={run, bucketParams}; diff --git a/javascriptv3/example_code/s3/src/s3_listobjects.js b/javascriptv3/example_code/s3/src/s3_listobjects.js deleted file mode 100644 index 5fec3a94a8a..00000000000 --- a/javascriptv3/example_code/s3/src/s3_listobjects.js +++ /dev/null @@ -1,36 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-creating-buckets.html. - -Purpose: -s3_listobjects.js demonstrates how to list the objects in an Amazon S3 bucket. - -Inputs (replace in code): -- BUCKET_NAME - -Running the code: -nodes3_listobjects.js -*/ -// snippet-start:[s3.JavaScript.buckets.listObjectsV3] -// Import required AWS SDK clients and commands for Node.js. -import { ListObjectsCommand } from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client.js"; // Helper function that creates an Amazon S3 service client module. - -// Create the parameters for the bucket -export const bucketParams = { Bucket: "BUCKET_NAME" }; - -export const run = async () => { - try { - const data = await s3Client.send(new ListObjectsCommand(bucketParams)); - console.log("Success", data); - return data; // For unit tests. - } catch (err) { - console.log("Error", err); - } -}; -run(); -// snippet-end:[s3.JavaScript.buckets.listObjectsV3] -// For unit testing only. -// module.exports ={run, bucketParams}; diff --git a/javascriptv3/example_code/s3/src/s3_put_presignedURL.js b/javascriptv3/example_code/s3/src/s3_put_presignedURL.js deleted file mode 100644 index e51f8ffeba4..00000000000 --- a/javascriptv3/example_code/s3/src/s3_put_presignedURL.js +++ /dev/null @@ -1,87 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-creating-buckets.html. - -Purpose: -s3_put_presignedURL.js creates a presigned URL to upload a file to an Amazon Simple Storage Service (Amazon S3) bucket. - -Note: This example immediately deletes the object and bucket. - -Running the code: -nodes3_put_presignedURL.js - -[Outputs | Returns]: -Uploads the specified file to the specified bucket. -*/ - -// snippet-start:[s3.JavaScript.buckets.presignedurlv3] -// Import the required AWS SDK clients and commands for Node.js -import { - CreateBucketCommand, - DeleteObjectCommand, - PutObjectCommand, - DeleteBucketCommand } -from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client.js"; // Helper function that creates an Amazon S3 service client module. -import { getSignedUrl } from "@aws-sdk/s3-request-presigner"; -import fetch from "node-fetch"; - -// Set parameters -// Create a random name for the Amazon Simple Storage Service (Amazon S3) bucket and key -export const bucketParams = { - Bucket: `test-bucket-${Math.ceil(Math.random() * 10 ** 10)}`, - Key: `test-object-${Math.ceil(Math.random() * 10 ** 10)}`, - Body: "BODY" -}; -export const run = async () => { - try { - // Create an S3 bucket. - console.log(`Creating bucket ${bucketParams.Bucket}`); - await s3Client.send(new CreateBucketCommand({ Bucket: bucketParams.Bucket })); - console.log(`Waiting for "${bucketParams.Bucket}" bucket creation...`); - } catch (err) { - console.log("Error creating bucket", err); - } - try { - // Create a command to put the object in the S3 bucket. - const command = new PutObjectCommand(bucketParams); - // Create the presigned URL. - const signedUrl = await getSignedUrl(s3Client, command, { - expiresIn: 3600, - }); - console.log( - `\nPutting "${bucketParams.Key}" using signedUrl with body "${bucketParams.Body}" in v3` - ); - console.log(signedUrl); - const response = await fetch(signedUrl, {method: 'PUT', body: bucketParams.Body}); - console.log( - `\nResponse returned by signed URL: ${await response.text()}\n` - ); - } catch (err) { - console.log("Error creating presigned URL", err); - } - try { - // Delete the object. - console.log(`\nDeleting object "${bucketParams.Key}"} from bucket`); - await s3Client.send( - new DeleteObjectCommand({ Bucket: bucketParams.Bucket, Key: bucketParams.Key }) - ); - } catch (err) { - console.log("Error deleting object", err); - } - try { - // Delete the S3 bucket. - console.log(`\nDeleting bucket ${bucketParams.Bucket}`); - await s3Client.send( - new DeleteBucketCommand({ Bucket: bucketParams.Bucket }) - ); - } catch (err) { - console.log("Error deleting bucket", err); - } -}; -run(); -// snippet-end:[s3.JavaScript.buckets.presignedurlv3] -// For unit testing only. -// module.exports ={run, bucketParams}; diff --git a/javascriptv3/example_code/s3/src/s3_putbucketacl.js b/javascriptv3/example_code/s3/src/s3_putbucketacl.js deleted file mode 100644 index fa4893e46d2..00000000000 --- a/javascriptv3/example_code/s3/src/s3_putbucketacl.js +++ /dev/null @@ -1,52 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-access-permissions.html. - -Purpose: -s3_putbucketacl.js demonstrates how to attach Access Control List (ACL) permissions to an Amazon -Simple Storage Service (Amazon S3) bucket. - -Inputs (replace in code): -- BUCKET_NAME -- GRANTEE_1 -- GRANTEE_2 - -Running the code: -nodes3_putbucketacl.js - -Outputs: -Applies an ACL to an Amazon S3 bucket. -*/ -//snippet-start:[s3.JavaScript.perms.putBucketAclV3] -// Import required AWS SDK clients and commands for Node.js. -import { PutBucketAclCommand } from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client.js"; // Helper function that creates an Amazon S3 service client module. - -// Set the parameters. For more information, -// see https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/S3.html#putBucketAcl-property. -export const bucketParams = { - Bucket: "BUCKET_NAME", - // 'GrantFullControl' allows grantee the read, write, read ACP, and write ACL permissions on the bucket. - // Use a canonical user ID for an AWS account, formatted as follows: - // id=002160194XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXa7a49125274 - GrantFullControl: "GRANTEE_1", - // 'GrantWrite' allows grantee to create, overwrite, and delete any object in the bucket. - // For example, 'uri=http://acs.amazonaws.com/groups/s3/LogDelivery' - GrantWrite: "GRANTEE_2", -}; - -export const run = async () => { - try { - const data = await s3Client.send(new PutBucketAclCommand(bucketParams)); - console.log("Success, permissions added to bucket", data); - return data; // For unit tests. - } catch (err) { - console.log("Error", err); - } -}; -run(); -//snippet-end:[s3.JavaScript.perms.putBucketAclV3] -// For unit testing only. -// module.exports ={run, bucketParams}; diff --git a/javascriptv3/example_code/s3/src/s3_putbucketpolicy.js b/javascriptv3/example_code/s3/src/s3_putbucketpolicy.js deleted file mode 100644 index 4dc426d1d3e..00000000000 --- a/javascriptv3/example_code/s3/src/s3_putbucketpolicy.js +++ /dev/null @@ -1,72 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/cross-service-example-dataupload.html. - -Purpose: -s3_putbucketpolicy.js is an example that demonstrates how to attach a permissions policy to an Amazon S3 bucket. - -Inputs (replace in code): -- IDENTITY_POOL_ID -- TABLE_NAME - -Running the code: -node s3_putbucketpolicy.js - */ -// snippet-start:[s3.JavaScript.policy.putBucketPolicyV3] -// Import required AWS SDK clients and commands for Node.js. -import { CreateBucketCommand, PutBucketPolicyCommand } from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client.js"; // Helper function that creates an Amazon S3 service client module. - -const BUCKET_NAME = "BUCKET_NAME"; -export const bucketParams = { - Bucket: BUCKET_NAME, -}; -// Create the policy in JSON for the S3 bucket. -const readOnlyAnonUserPolicy = { - Version: "2012-10-17", - Statement: [ - { - Sid: "AddPerm", - Effect: "Allow", - Principal: "*", - Action: ["s3:GetObject"], - Resource: [""], - }, - ], -}; - -// Create selected bucket resource string for bucket policy. -const bucketResource = "arn:aws:s3:::" + BUCKET_NAME + "/*"; //BUCKET_NAME -readOnlyAnonUserPolicy.Statement[0].Resource[0] = bucketResource; - -// Convert policy JSON into string and assign into parameters. -const bucketPolicyParams = { - Bucket: BUCKET_NAME, - Policy: JSON.stringify(readOnlyAnonUserPolicy), -}; - -export const run = async () => { - try { - const data = await s3Client.send( - new CreateBucketCommand(bucketParams) - ); - console.log('Success, bucket created.', data) - try { - const response = await s3Client.send( - new PutBucketPolicyCommand(bucketPolicyParams) - ); - console.log("Success, permissions added to bucket", response); - return response; - } - catch (err) { - console.log("Error adding policy to S3 bucket.", err); - } - } catch (err) { - console.log("Error creating S3 bucket.", err); - } -}; -run(); -// snippet-end:[s3.JavaScript.policy.putBucketPolicyV3] - diff --git a/javascriptv3/example_code/s3/src/s3_setbucketwebsite.js b/javascriptv3/example_code/s3/src/s3_setbucketwebsite.js deleted file mode 100644 index 53e4b39f6c2..00000000000 --- a/javascriptv3/example_code/s3/src/s3_setbucketwebsite.js +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-static-web-host.html. - -Purpose: -s3_setbucketwebsite.js applies a bucket website configuration to a selected bucket, and is part of an example -of using an Amazon S3 bucket as a static web host. - -Inputs (replace in code): -- INDEX_PAGE -- ERROR_PAGE - -Running the code: -nodes3_setbucketwebsite.js - */ -// snippet-start:[s3.JavaScript.website.putBucketWebsiteV3] -// Import required AWS SDK clients and commands for Node.js. -import { PutBucketWebsiteCommand } from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client.js"; // Helper function that creates an Amazon S3 service client module. - -// Create the parameters for the bucket -export const bucketParams = { Bucket: "BUCKET_NAME" }; -export const staticHostParams = { - Bucket: bucketParams, - WebsiteConfiguration: { - ErrorDocument: { - Key: "", - }, - IndexDocument: { - Suffix: "", - }, - }, -}; - -export const run = async () => { - // Insert specified bucket name and index and error documents into parameters JSON - // from command line arguments - staticHostParams.Bucket = bucketParams; - staticHostParams.WebsiteConfiguration.IndexDocument.Suffix = "INDEX_PAGE"; // The index document inserted into parameters JSON. - staticHostParams.WebsiteConfiguration.ErrorDocument.Key = "ERROR_PAGE"; // The error document inserted into parameters JSON. - // Set the new website configuration on the selected bucket. - try { - const data = await s3Client.send(new PutBucketWebsiteCommand(staticHostParams)); - console.log("Success", data); - return data; - } catch (err) { - console.log("Error", err); - } -}; -run(); -// snippet-end:[s3.JavaScript.website.putBucketWebsiteV3] -// For unit testing only. -// module.exports ={run, bucketParams, staticHostParams}; diff --git a/javascriptv3/example_code/s3/src/s3_setcors.js b/javascriptv3/example_code/s3/src/s3_setcors.js deleted file mode 100644 index bdfc2ad3852..00000000000 --- a/javascriptv3/example_code/s3/src/s3_setcors.js +++ /dev/null @@ -1,77 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 - -ABOUT THIS NODE.JS EXAMPLE: This sample is part of the SDK for JavaScript Developer Guide (scheduled for release September 2020) top -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-configuring-buckets.html. - -Purpose: -s3_setcors.js demonstrates how to set the CORS configuration of an Amazon S3 bucket. - -Inputs: -- BUCKET_NAME (into command line below) - -Running the code: -node s3_setcors.js BUCKET_NAME REGION - */ -// snippet-start:[s3.JavaScript.v3.cors.putBucketCors] -// Import required AWS-SDK clients and commands for Node.js. -import { PutBucketCorsCommand } from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client.js"; // Helper function that creates an Amazon S3 service client module. - -// Set parameters. -// Create initial parameters JSON for putBucketCors. -const thisConfig = { - AllowedHeaders: ["Authorization"], - AllowedMethods: [], - AllowedOrigins: ["*"], - ExposeHeaders: [], - MaxAgeSeconds: 3000, -}; - -// Assemble the list of allowed methods based on command line parameters -const allowedMethods = []; -process.argv.forEach(function (val) { - if (val.toUpperCase() === "POST") { - allowedMethods.push("POST"); - } - if (val.toUpperCase() === "GET") { - allowedMethods.push("GET"); - } - if (val.toUpperCase() === "PUT") { - allowedMethods.push("PUT"); - } - if (val.toUpperCase() === "PATCH") { - allowedMethods.push("PATCH"); - } - if (val.toUpperCase() === "DELETE") { - allowedMethods.push("DELETE"); - } - if (val.toUpperCase() === "HEAD") { - allowedMethods.push("HEAD"); - } -}); - -// Copy the array of allowed methods into the config object -thisConfig.AllowedMethods = allowedMethods; - -// Create an array of configs then add the config object to it. -const corsRules = new Array(thisConfig); - -// Create CORS parameters. -export const corsParams = { - Bucket: "BUCKET_NAME", - CORSConfiguration: { CORSRules: corsRules }, -}; -export async function run() { - try { - const data = await s3Client.send(new PutBucketCorsCommand(corsParams)); - console.log("Success", data); - return data; // For unit tests. - } catch (err) { - console.log("Error", err); - } -} -run(); -// snippet-end:[s3.JavaScript.v3.cors.putBucketCors] -// For unit testing only. -// module.exports ={run, corsParams}; diff --git a/javascriptv3/example_code/s3/src/s3_upload_object.js b/javascriptv3/example_code/s3/src/s3_upload_object.js deleted file mode 100644 index 179f44bff23..00000000000 --- a/javascriptv3/example_code/s3/src/s3_upload_object.js +++ /dev/null @@ -1,55 +0,0 @@ -/* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -SPDX-License-Identifier: Apache-2.0 -ABOUT THIS NODE.JS EXAMPLE: This example works with the AWS SDK for JavaScript version 3 (v3), -which is available at https://github.com/aws/aws-sdk-js-v3. This example is in the 'AWS SDK for JavaScript v3 Developer Guide' at -https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/s3-example-creating-buckets.html. - -Purpose: -s3_putobject.js uploads an existing file to an Amazon Simple Storage Service (Amazon S3) bucket. - -Inputs (replace in code): -- BUCKET_NAME -- OBJECT_PATH_AND_NAME: Relative path and name of object. For example '../myFiles/index.js'. - -Running the code: -nodes3_putobject.js - -[Outputs | Returns]: -Uploads the specified file to the specified bucket. - -*/ -// snippet-start:[s3.JavaScript.buckets.uploadV3] -// Import required AWS SDK clients and commands for Node.js. -import { PutObjectCommand } from "@aws-sdk/client-s3"; -import { s3Client } from "./libs/s3Client.js"; // Helper function that creates an Amazon S3 service client module. -import {path} from "path"; -import {fs} from "fs"; - -const file = "OBJECT_PATH_AND_NAME"; // Path to and name of object. For example '../myFiles/index.js'. -const fileStream = fs.createReadStream(file); - -// Set the parameters -export const uploadParams = { - Bucket: "BUCKET_NAME", - // Add the required 'Key' parameter using the 'path' module. - Key: path.basename(file), - // Add the required 'Body' parameter - Body: fileStream, -}; - - -// Upload file to specified bucket. -export const run = async () => { - try { - const data = await s3Client.send(new PutObjectCommand(uploadParams)); - console.log("Success", data); - return data; // For unit tests. - } catch (err) { - console.log("Error", err); - } -}; -run(); - -// snippet-end:[s3.JavaScript.buckets.uploadV3] -// For unit testing only. -// module.exports ={run, uploadParams}; diff --git a/javascriptv3/example_code/s3/tests/babel.config.js b/javascriptv3/example_code/s3/tests/babel.config.js deleted file mode 100644 index 82956c0ed17..00000000000 --- a/javascriptv3/example_code/s3/tests/babel.config.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - presets: ['@babel/preset-env'] -} \ No newline at end of file diff --git a/javascriptv3/example_code/s3/tests/basic.unit.test.js b/javascriptv3/example_code/s3/tests/basic.unit.test.js new file mode 100644 index 00000000000..9bf3efc7b85 --- /dev/null +++ b/javascriptv3/example_code/s3/tests/basic.unit.test.js @@ -0,0 +1,137 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi, beforeEach } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-s3", async () => { + const actual = await vi.importActual("@aws-sdk/client-s3"); + return { + ...actual, + S3Client: class { + send = send; + }, + }; +}); + +vi.doMock("fs", async () => { + const actual = await vi.importActual("fs"); + return { + ...actual, + readdirSync: () => ["file1.txt", "file2.txt"], + readFileSync: () => "file content", + }; +}); + +vi.doMock("libs/utils/util-io.js", async () => { + const actual = await vi.importActual("libs/utils/util-io.js"); + return { + ...actual, + promptForText: async () => "my-bucket", + }; +}); + +import { + createBucket, + deleteBucket, + emptyBucket, + listFilesInBucket, + uploadFilesToBucket, +} from "../scenarios/basic.js"; + +describe("S3 basic scenario", () => { + const logSpy = vi.spyOn(console, "log"); + + beforeEach(() => { + vi.clearAllMocks(); + }); + + describe("createBucket", () => { + it("should log a success message", async () => { + send.mockResolvedValueOnce({}); + + await createBucket("my-bucket"); + + expect(logSpy).toHaveBeenCalledWith("Bucket created successfully.\n"); + }); + }); + + describe("uploadFilesToBucket", () => { + it("should send the files to s3", async () => { + send.mockResolvedValueOnce({}); + + await uploadFilesToBucket({ bucketName: "my-bucket", folderPath: "" }); + + expect(send).toHaveBeenCalledWith( + expect.objectContaining({ + input: expect.objectContaining({ + Bucket: "my-bucket", + Key: "file1.txt", + Body: "file content", + }), + }) + ); + }); + + it("should log the files that were found and uploaded", async () => { + send.mockResolvedValueOnce({}); + + await uploadFilesToBucket({ bucketName: "my-bucket", folderPath: "" }); + + expect(logSpy).toHaveBeenCalledWith("file1.txt uploaded successfully."); + }); + }); + + describe("listFilesInBucket", () => { + it("should list the files in the bucket", async () => { + send.mockResolvedValueOnce({ + Contents: [{ Key: "file1" }, { Key: "file2" }], + }); + + await listFilesInBucket({ bucketName: "my-bucket", folderPath: "" }); + + expect(logSpy).toHaveBeenCalledWith(` • file1\n • file2\n`); + }); + }); + + describe("emptyBucket", () => { + it("should call 'send' with the keys returned from ListObjects", async () => { + send.mockResolvedValueOnce({ + Contents: [{ Key: "file1" }, { Key: "file2" }], + }); + + await emptyBucket({ bucketName: "my-bucket", folderPath: "" }); + + expect(send).toHaveBeenNthCalledWith( + 2, + expect.objectContaining({ + input: expect.objectContaining({ + Bucket: "my-bucket", + Delete: { + Objects: [{ Key: "file1" }, { Key: "file2" }], + }, + }), + }) + ); + }); + }); + + describe("deleteBucket", () => { + it("should call 'send' with the provided bucket name", async () => { + send.mockResolvedValueOnce({}); + + await deleteBucket({ bucketName: "my-bucket" }); + + expect(send).toHaveBeenCalledWith( + expect.objectContaining({ + input: expect.objectContaining({ + Bucket: "my-bucket", + }), + }) + ); + }); + }); +}); diff --git a/javascriptv3/example_code/s3/tests/copy-object.unit.test.js b/javascriptv3/example_code/s3/tests/copy-object.unit.test.js new file mode 100644 index 00000000000..fa55442d5f5 --- /dev/null +++ b/javascriptv3/example_code/s3/tests/copy-object.unit.test.js @@ -0,0 +1,42 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-s3", async () => { + const actual = await vi.importActual("@aws-sdk/client-s3"); + return { + ...actual, + S3Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/copy-object.js"; + +describe("copy-object", () => { + it("should log the response from the service", async () => { + send.mockResolvedValue("foo"); + + const spy = vi.spyOn(console, "log"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); + + it("should log errors", async () => { + send.mockRejectedValue("foo"); + + const spy = vi.spyOn(console, "error"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); +}); diff --git a/javascriptv3/example_code/s3/tests/create-bucket.unit.test.js b/javascriptv3/example_code/s3/tests/create-bucket.unit.test.js new file mode 100644 index 00000000000..c206893d69e --- /dev/null +++ b/javascriptv3/example_code/s3/tests/create-bucket.unit.test.js @@ -0,0 +1,42 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-s3", async () => { + const actual = await vi.importActual("@aws-sdk/client-s3"); + return { + ...actual, + S3Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/create-bucket.js"; + +describe("copy-object", () => { + it("should log the response from the service", async () => { + send.mockResolvedValue({ Location: "foo" }); + + const spy = vi.spyOn(console, "log"); + + await main(); + + expect(spy).toHaveBeenCalledWith("Bucket created with location foo"); + }); + + it("should log errors", async () => { + send.mockRejectedValue("foo"); + + const spy = vi.spyOn(console, "error"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); +}); diff --git a/javascriptv3/example_code/s3/tests/delete-bucket-policy.unit.test.js b/javascriptv3/example_code/s3/tests/delete-bucket-policy.unit.test.js new file mode 100644 index 00000000000..952f96f28f0 --- /dev/null +++ b/javascriptv3/example_code/s3/tests/delete-bucket-policy.unit.test.js @@ -0,0 +1,42 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-s3", async () => { + const actual = await vi.importActual("@aws-sdk/client-s3"); + return { + ...actual, + S3Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/delete-bucket-policy.js"; + +describe("delete-bucket-policy", () => { + it("should log the response from the service", async () => { + send.mockResolvedValue("foo"); + + const spy = vi.spyOn(console, "log"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); + + it("should log errors", async () => { + send.mockRejectedValue("foo"); + + const spy = vi.spyOn(console, "error"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); +}); diff --git a/javascriptv3/example_code/s3/tests/delete-bucket-website.unit.test.js b/javascriptv3/example_code/s3/tests/delete-bucket-website.unit.test.js new file mode 100644 index 00000000000..a5b3d73031b --- /dev/null +++ b/javascriptv3/example_code/s3/tests/delete-bucket-website.unit.test.js @@ -0,0 +1,42 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-s3", async () => { + const actual = await vi.importActual("@aws-sdk/client-s3"); + return { + ...actual, + S3Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/delete-bucket-website.js"; + +describe("delete-bucket-website", () => { + it("should log the response from the service", async () => { + send.mockResolvedValue("foo"); + + const spy = vi.spyOn(console, "log"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); + + it("should log errors", async () => { + send.mockRejectedValue("foo"); + + const spy = vi.spyOn(console, "error"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); +}); diff --git a/javascriptv3/example_code/s3/tests/delete-bucket.unit.test.js b/javascriptv3/example_code/s3/tests/delete-bucket.unit.test.js new file mode 100644 index 00000000000..162d4141b94 --- /dev/null +++ b/javascriptv3/example_code/s3/tests/delete-bucket.unit.test.js @@ -0,0 +1,42 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-s3", async () => { + const actual = await vi.importActual("@aws-sdk/client-s3"); + return { + ...actual, + S3Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/delete-bucket.js"; + +describe("delete-bucket", () => { + it("should log the response from the service", async () => { + send.mockResolvedValue("foo"); + + const spy = vi.spyOn(console, "log"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); + + it("should log errors", async () => { + send.mockRejectedValue("foo"); + + const spy = vi.spyOn(console, "error"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); +}); diff --git a/javascriptv3/example_code/s3/tests/delete-object.unit.test.js b/javascriptv3/example_code/s3/tests/delete-object.unit.test.js new file mode 100644 index 00000000000..272d9ff3bfe --- /dev/null +++ b/javascriptv3/example_code/s3/tests/delete-object.unit.test.js @@ -0,0 +1,42 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-s3", async () => { + const actual = await vi.importActual("@aws-sdk/client-s3"); + return { + ...actual, + S3Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/delete-object.js"; + +describe("delete-object", () => { + it("should log the response from the service", async () => { + send.mockResolvedValue("foo"); + + const spy = vi.spyOn(console, "log"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); + + it("should log errors", async () => { + send.mockRejectedValue("foo"); + + const spy = vi.spyOn(console, "error"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); +}); diff --git a/javascriptv3/example_code/s3/tests/delete-objects.unit.test.js b/javascriptv3/example_code/s3/tests/delete-objects.unit.test.js new file mode 100644 index 00000000000..ef3554e3669 --- /dev/null +++ b/javascriptv3/example_code/s3/tests/delete-objects.unit.test.js @@ -0,0 +1,46 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-s3", async () => { + const actual = await vi.importActual("@aws-sdk/client-s3"); + return { + ...actual, + S3Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/delete-objects.js"; + +describe("delete-objects", () => { + it("should log the response from the service", async () => { + send.mockResolvedValue({ Deleted: [{ Key: "foo" }, { Key: "bar" }] }); + + const spy = vi.spyOn(console, "log"); + + await main(); + + expect(spy).toHaveBeenNthCalledWith( + 1, + "Successfully deleted 2 objects from S3 bucket. Deleted objects:" + ); + expect(spy).toHaveBeenNthCalledWith(2, ` • foo\n • bar`); + }); + + it("should log errors", async () => { + send.mockRejectedValue("foo"); + + const spy = vi.spyOn(console, "error"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); +}); diff --git a/javascriptv3/example_code/s3/tests/get-bucket-cors.unit.test.js b/javascriptv3/example_code/s3/tests/get-bucket-cors.unit.test.js new file mode 100644 index 00000000000..d026ae06418 --- /dev/null +++ b/javascriptv3/example_code/s3/tests/get-bucket-cors.unit.test.js @@ -0,0 +1,60 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-s3", async () => { + const actual = await vi.importActual("@aws-sdk/client-s3"); + return { + ...actual, + S3Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/get-bucket-cors.js"; + +describe("get-bucket-cors", () => { + it("should log the response from the service", async () => { + send.mockResolvedValue({ + CORSRules: [ + { + AllowedHeaders: ["foo"], + AllowedMethods: ["bar"], + AllowedOrigins: ["baz"], + ExposeHeaders: ["qux"], + MaxAgeSeconds: 123, + }, + ], + }); + + const spy = vi.spyOn(console, "log"); + + await main(); + + expect(spy).toHaveBeenCalledWith( + `\nCORSRule 1`, + `\n${"-".repeat(10)}`, + `\nAllowedHeaders: foo`, + `\nAllowedMethods: bar`, + `\nAllowedOrigins: baz`, + `\nExposeHeaders: qux`, + `\nMaxAgeSeconds: 123` + ); + }); + + it("should log errors", async () => { + send.mockRejectedValue("foo"); + + const spy = vi.spyOn(console, "error"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); +}); diff --git a/javascriptv3/example_code/s3/tests/get-bucket-policy.unit.test.js b/javascriptv3/example_code/s3/tests/get-bucket-policy.unit.test.js new file mode 100644 index 00000000000..a013e9f7990 --- /dev/null +++ b/javascriptv3/example_code/s3/tests/get-bucket-policy.unit.test.js @@ -0,0 +1,42 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-s3", async () => { + const actual = await vi.importActual("@aws-sdk/client-s3"); + return { + ...actual, + S3Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/get-bucket-policy.js"; + +describe("get-bucket-policy", () => { + it("should log the response from the service", async () => { + send.mockResolvedValue({ Policy: `{ "foo": "bar" }` }); + + const spy = vi.spyOn(console, "log"); + + await main(); + + expect(spy).toHaveBeenCalledWith({ foo: "bar" }); + }); + + it("should log errors", async () => { + send.mockRejectedValue("foo"); + + const spy = vi.spyOn(console, "error"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); +}); diff --git a/javascriptv3/example_code/s3/tests/get-bucket-website.unit.test.js b/javascriptv3/example_code/s3/tests/get-bucket-website.unit.test.js new file mode 100644 index 00000000000..c959d106f9a --- /dev/null +++ b/javascriptv3/example_code/s3/tests/get-bucket-website.unit.test.js @@ -0,0 +1,48 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-s3", async () => { + const actual = await vi.importActual("@aws-sdk/client-s3"); + return { + ...actual, + S3Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/get-bucket-website.js"; + +describe("get-bucket-website", () => { + it("should log the response from the service", async () => { + send.mockResolvedValue({ + IndexDocument: { Suffix: "foo" }, + ErrorDocument: { Key: "bar" }, + }); + + const spy = vi.spyOn(console, "log"); + + await main(); + + expect(spy).toHaveBeenCalledWith( + "Your bucket is set up to host a website. It has an error document:", + "bar, and an index document: foo." + ); + }); + + it("should log errors", async () => { + send.mockRejectedValue("foo"); + + const spy = vi.spyOn(console, "error"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); +}); diff --git a/javascriptv3/example_code/s3/tests/get-object.unit.test.js b/javascriptv3/example_code/s3/tests/get-object.unit.test.js new file mode 100644 index 00000000000..c3faba68d44 --- /dev/null +++ b/javascriptv3/example_code/s3/tests/get-object.unit.test.js @@ -0,0 +1,48 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-s3", async () => { + const actual = await vi.importActual("@aws-sdk/client-s3"); + return { + ...actual, + S3Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/get-object.js"; + +describe("get-object", () => { + it("should log the response from the service", async () => { + send.mockResolvedValue({ + Body: { + async transformToString() { + return "foo"; + }, + }, + }); + + const spy = vi.spyOn(console, "log"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); + + it("should log errors", async () => { + send.mockRejectedValue("foo"); + + const spy = vi.spyOn(console, "error"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); +}); diff --git a/javascriptv3/example_code/s3/tests/jest.config.js b/javascriptv3/example_code/s3/tests/jest.config.js deleted file mode 100644 index 20299b49b0d..00000000000 --- a/javascriptv3/example_code/s3/tests/jest.config.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = { - testEnvironment: 'node', - moduleDirectories: ["node_modules"], - testMatch: ["**/tests/*.test.js"], - transform: { - "^.+\\.(js|jsx)$": "babel-jest" - } -}; diff --git a/javascriptv3/example_code/s3/tests/list-buckets.unit.test.js b/javascriptv3/example_code/s3/tests/list-buckets.unit.test.js new file mode 100644 index 00000000000..73ca453bf56 --- /dev/null +++ b/javascriptv3/example_code/s3/tests/list-buckets.unit.test.js @@ -0,0 +1,46 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-s3", async () => { + const actual = await vi.importActual("@aws-sdk/client-s3"); + return { + ...actual, + S3Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/list-buckets.js"; + +describe("list-buckets", () => { + it("should log the response from the service", async () => { + send.mockResolvedValue({ + Buckets: [{ Name: "foo" }], + Owner: { DisplayName: "bar" }, + }); + + const spy = vi.spyOn(console, "log"); + + await main(); + + expect(spy).toHaveBeenNthCalledWith(1, "bar owns 1 bucket:"); + expect(spy).toHaveBeenNthCalledWith(2, " • foo"); + }); + + it("should log errors", async () => { + send.mockRejectedValue("foo"); + + const spy = vi.spyOn(console, "error"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); +}); diff --git a/javascriptv3/example_code/s3/tests/list-objects.unit.test.js b/javascriptv3/example_code/s3/tests/list-objects.unit.test.js new file mode 100644 index 00000000000..ab242aa4183 --- /dev/null +++ b/javascriptv3/example_code/s3/tests/list-objects.unit.test.js @@ -0,0 +1,46 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-s3", async () => { + const actual = await vi.importActual("@aws-sdk/client-s3"); + return { + ...actual, + S3Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/list-objects.js"; + +describe("list-objects", () => { + it("should log the response from the service", async () => { + send.mockResolvedValue({ Contents: [{ Key: "foo" }] }); + + const spy = vi.spyOn(console, "log"); + + await main(); + + expect(spy).toHaveBeenNthCalledWith( + 1, + "Your bucket contains the following objects:\n" + ); + expect(spy).toHaveBeenNthCalledWith(2, " • foo\n"); + }); + + it("should log errors", async () => { + send.mockRejectedValue("foo"); + + const spy = vi.spyOn(console, "error"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); +}); diff --git a/javascriptv3/example_code/s3/tests/multipart-download.unit.test.js b/javascriptv3/example_code/s3/tests/multipart-download.unit.test.js new file mode 100644 index 00000000000..fb814e65088 --- /dev/null +++ b/javascriptv3/example_code/s3/tests/multipart-download.unit.test.js @@ -0,0 +1,62 @@ +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(async () => {}); + +vi.doMock("@aws-sdk/client-s3", async () => { + const actual = await vi.importActual("@aws-sdk/client-s3"); + return { + ...actual, + S3Client: class { + send = send; + }, + }; +}); + +import { + getObjectRange, + getRangeAndLength, + isComplete, +} from "../scenarios/multipart-download.js"; + +describe("multipart-download", async () => { + describe("getObjectRange", () => { + it("should call 'send' with the provided range", async () => { + await getObjectRange({ + bucket: "bucket", + key: "key", + start: 0, + end: 10, + }); + + expect(send).toHaveBeenCalledWith( + expect.objectContaining({ + input: expect.objectContaining({ + Range: "bytes=0-10", + Bucket: "bucket", + Key: "key", + }), + }) + ); + }); + }); + + describe("getRangeAndLength", () => { + it("should take a unitless http content-range and return the start, end, and length", () => { + expect(getRangeAndLength("0-10/100")).toEqual({ + start: 0, + end: 10, + length: 100, + }); + }); + }); + + describe("isComplete", () => { + it("should return true if the end byte is equal to the last byte", () => { + expect(isComplete({ start: 0, end: 10, length: 11 })).toBe(true); + }); + + it("should return false if the end byte is not equal to the last byte", () => { + expect(isComplete({ start: 0, end: 10, length: 10 })).toBe(false); + }); + }); +}); diff --git a/javascriptv3/example_code/s3/tests/package.json b/javascriptv3/example_code/s3/tests/package.json deleted file mode 100644 index 37fb1368578..00000000000 --- a/javascriptv3/example_code/s3/tests/package.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "name": "aws-sdk-v3-s3-examples", - "version": "1.0.0", - "main": "index.js", - "repository": "git@github.com/awsdocs/aws-doc-sdk-examples/tree/master/javascriptv3/example_code/s3.git", - "author": "Brian Murray ", - "license": "Apache 2.0", - "transform": {}, - "dependencies": { - "@aws-sdk/client-s3": "^3.32.0", - "@aws-sdk/node-http-handler": "^3.32.0" - }, - "devDependencies": { - "@babel/preset-env": "^7.14.4", - "@types/node": "^14.0.23", - "jest": "^26.6.3", - "regenerator-runtime": "^0.13.7" - }, - "scripts": { - "test": "jest" - } -} diff --git a/javascriptv3/example_code/s3/tests/put-bucket-acl.unit.test.js b/javascriptv3/example_code/s3/tests/put-bucket-acl.unit.test.js new file mode 100644 index 00000000000..67ac2f3d49b --- /dev/null +++ b/javascriptv3/example_code/s3/tests/put-bucket-acl.unit.test.js @@ -0,0 +1,42 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-s3", async () => { + const actual = await vi.importActual("@aws-sdk/client-s3"); + return { + ...actual, + S3Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/put-bucket-acl.js"; + +describe("put-bucket-acl", () => { + it("should log the response from the service", async () => { + send.mockResolvedValue("foo"); + + const spy = vi.spyOn(console, "log"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); + + it("should log errors", async () => { + send.mockRejectedValue("foo"); + + const spy = vi.spyOn(console, "error"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); +}); diff --git a/javascriptv3/example_code/s3/tests/put-bucket-cors.unit.test.js b/javascriptv3/example_code/s3/tests/put-bucket-cors.unit.test.js new file mode 100644 index 00000000000..023b02c43cc --- /dev/null +++ b/javascriptv3/example_code/s3/tests/put-bucket-cors.unit.test.js @@ -0,0 +1,42 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-s3", async () => { + const actual = await vi.importActual("@aws-sdk/client-s3"); + return { + ...actual, + S3Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/put-bucket-cors.js"; + +describe("put-bucket-cors", () => { + it("should log the response from the service", async () => { + send.mockResolvedValue("foo"); + + const spy = vi.spyOn(console, "log"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); + + it("should log errors", async () => { + send.mockRejectedValue("foo"); + + const spy = vi.spyOn(console, "error"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); +}); diff --git a/javascriptv3/example_code/s3/tests/put-bucket-policy.unit.test.js b/javascriptv3/example_code/s3/tests/put-bucket-policy.unit.test.js new file mode 100644 index 00000000000..948bcf5f1c1 --- /dev/null +++ b/javascriptv3/example_code/s3/tests/put-bucket-policy.unit.test.js @@ -0,0 +1,42 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-s3", async () => { + const actual = await vi.importActual("@aws-sdk/client-s3"); + return { + ...actual, + S3Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/put-bucket-policy.js"; + +describe("put-bucket-policy", () => { + it("should log the response from the service", async () => { + send.mockResolvedValue("foo"); + + const spy = vi.spyOn(console, "log"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); + + it("should log errors", async () => { + send.mockRejectedValue("foo"); + + const spy = vi.spyOn(console, "error"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); +}); diff --git a/javascriptv3/example_code/s3/tests/put-bucket-website.unit.test.js b/javascriptv3/example_code/s3/tests/put-bucket-website.unit.test.js new file mode 100644 index 00000000000..ffca5d0aa25 --- /dev/null +++ b/javascriptv3/example_code/s3/tests/put-bucket-website.unit.test.js @@ -0,0 +1,42 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-s3", async () => { + const actual = await vi.importActual("@aws-sdk/client-s3"); + return { + ...actual, + S3Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/put-bucket-website.js"; + +describe("put-bucket-website", () => { + it("should log the response from the service", async () => { + send.mockResolvedValue("foo"); + + const spy = vi.spyOn(console, "log"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); + + it("should log errors", async () => { + send.mockRejectedValue("foo"); + + const spy = vi.spyOn(console, "error"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); +}); diff --git a/javascriptv3/example_code/s3/tests/put-object.unit.test.js b/javascriptv3/example_code/s3/tests/put-object.unit.test.js new file mode 100644 index 00000000000..607c6abdefe --- /dev/null +++ b/javascriptv3/example_code/s3/tests/put-object.unit.test.js @@ -0,0 +1,42 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0 + */ + +import { describe, it, expect, vi } from "vitest"; + +const send = vi.fn(); + +vi.doMock("@aws-sdk/client-s3", async () => { + const actual = await vi.importActual("@aws-sdk/client-s3"); + return { + ...actual, + S3Client: class { + send = send; + }, + }; +}); + +import { main } from "../actions/put-object.js"; + +describe("put-object", () => { + it("should log the response from the service", async () => { + send.mockResolvedValue("foo"); + + const spy = vi.spyOn(console, "log"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); + + it("should log errors", async () => { + send.mockRejectedValue("foo"); + + const spy = vi.spyOn(console, "error"); + + await main(); + + expect(spy).toHaveBeenCalledWith("foo"); + }); +}); diff --git a/javascriptv3/example_code/s3/tests/s3_copyobject.test.js b/javascriptv3/example_code/s3/tests/s3_copyobject.test.js deleted file mode 100644 index 0815a746ed2..00000000000 --- a/javascriptv3/example_code/s3/tests/s3_copyobject.test.js +++ /dev/null @@ -1,15 +0,0 @@ -jest.mock("../src/libs/s3Client.js"); -jest.mock("@aws-sdk/client-s3"); - -// Get service clients module and commands. -import 'regenerator-runtime/runtime' -import { run, params } from "../src/s3_copyobject.js"; -import { s3Client } from "../src/libs/s3Client"; - -describe("@aws-sdk/client-s3 mock", () => { - it("should successfully mock S3 client", async () => { - s3Client.send.mockResolvedValue({ isMock: true }); - const response = await run(params); - expect(response.isMock).toEqual(true); - }); -}); diff --git a/javascriptv3/example_code/s3/tests/s3_createbucket.test.js b/javascriptv3/example_code/s3/tests/s3_createbucket.test.js deleted file mode 100644 index a3b784f5c17..00000000000 --- a/javascriptv3/example_code/s3/tests/s3_createbucket.test.js +++ /dev/null @@ -1,15 +0,0 @@ -jest.mock("../src/libs/s3Client.js"); -jest.mock("@aws-sdk/client-s3"); - -// Get service clients module and commands. -import 'regenerator-runtime/runtime' -import { run, bucketParams } from "../src/s3_createbucket.js"; -import { s3Client } from "../src/libs/s3Client"; - -describe("@aws-sdk/client-s3 mock", () => { - it("should successfully mock S3 client", async () => { - s3Client.send.mockResolvedValue({ isMock: true }); - const response = await run(bucketParams); - expect(response.isMock).toEqual(true); - }); -}); diff --git a/javascriptv3/example_code/s3/tests/s3_delete_all_objects.test.js b/javascriptv3/example_code/s3/tests/s3_delete_all_objects.test.js deleted file mode 100644 index ef80e5ec90d..00000000000 --- a/javascriptv3/example_code/s3/tests/s3_delete_all_objects.test.js +++ /dev/null @@ -1,15 +0,0 @@ -jest.mock("../src/libs/s3Client.js"); -jest.mock("@aws-sdk/client-s3"); - -// Get service clients module and commands. -import 'regenerator-runtime/runtime' -import { run, bucketParams } from "../src/s3_delete_all_objects.js"; -import { s3Client } from "../src/libs/s3Client"; - -describe("@aws-sdk/client-s3 mock", () => { - it("should successfully mock S3 client", async () => { - s3Client.send.mockResolvedValue({ isMock: true, Contents: [{ Key: 1 }] }); - const response = await run(bucketParams); - expect(response.isMock).toEqual(true); - }); -}); diff --git a/javascriptv3/example_code/s3/tests/s3_delete_multiple_objects.test.js b/javascriptv3/example_code/s3/tests/s3_delete_multiple_objects.test.js deleted file mode 100644 index 663a1b0ce6d..00000000000 --- a/javascriptv3/example_code/s3/tests/s3_delete_multiple_objects.test.js +++ /dev/null @@ -1,15 +0,0 @@ -jest.mock("../src/libs/s3Client.js"); -jest.mock("@aws-sdk/client-s3"); - -// Get service clients module and commands. -import 'regenerator-runtime/runtime' -import { run, bucketParams } from "../src/s3_delete_multiple_objects"; -import { s3Client } from "../src/libs/s3Client"; - -describe("@aws-sdk/client-s3 mock", () => { - it("should successfully mock S3 client", async () => { - s3Client.send.mockResolvedValue({ isMock: true }); - const response = await run(bucketParams); - expect(response.isMock).toEqual(true); - }); -}); diff --git a/javascriptv3/example_code/s3/tests/s3_delete_object.test.js b/javascriptv3/example_code/s3/tests/s3_delete_object.test.js deleted file mode 100644 index 503226b6d41..00000000000 --- a/javascriptv3/example_code/s3/tests/s3_delete_object.test.js +++ /dev/null @@ -1,15 +0,0 @@ -jest.mock("../src/libs/s3Client.js"); -jest.mock("@aws-sdk/client-s3"); - -// Get service clients module and commands. -import 'regenerator-runtime/runtime' -import { run, bucketParams } from "../src/s3_delete_object"; -import { s3Client } from "../src/libs/s3Client"; - -describe("@aws-sdk/client-s3 mock", () => { - it("should successfully mock S3 client", async () => { - s3Client.send.mockResolvedValue({ isMock: true }); - const response = await run(bucketParams); - expect(response.isMock).toEqual(true); - }); -}); diff --git a/javascriptv3/example_code/s3/tests/s3_deletebucket.test.js b/javascriptv3/example_code/s3/tests/s3_deletebucket.test.js deleted file mode 100644 index 020668fe64d..00000000000 --- a/javascriptv3/example_code/s3/tests/s3_deletebucket.test.js +++ /dev/null @@ -1,15 +0,0 @@ -jest.mock("../src/libs/s3Client.js"); -jest.mock("@aws-sdk/client-s3"); - -// Get service clients module and commands. -import 'regenerator-runtime/runtime' -import { run, bucketParams } from "../src/s3_deletebucket.js"; -import { s3Client } from "../src/libs/s3Client"; - -describe("@aws-sdk/client-s3 mock", () => { - it("should successfully mock S3 client", async () => { - s3Client.send.mockResolvedValue({ isMock: true }); - const response = await run(bucketParams); - expect(response.isMock).toEqual(true); - }); -}); diff --git a/javascriptv3/example_code/s3/tests/s3_deletebucketpolicy.test.js b/javascriptv3/example_code/s3/tests/s3_deletebucketpolicy.test.js deleted file mode 100644 index 2aee4e6863b..00000000000 --- a/javascriptv3/example_code/s3/tests/s3_deletebucketpolicy.test.js +++ /dev/null @@ -1,15 +0,0 @@ -jest.mock("../src/libs/s3Client.js"); -jest.mock("@aws-sdk/client-s3"); - -// Get service clients module and commands. -import 'regenerator-runtime/runtime' -import { run, bucketParams } from "../src/s3_deletebucketpolicy.js"; -import { s3Client } from "../src/libs/s3Client"; - -describe("@aws-sdk/client-s3 mock", () => { - it("should successfully mock S3 client", async () => { - s3Client.send.mockResolvedValue({ isMock: true }); - const response = await run(bucketParams); - expect(response.isMock).toEqual(true); - }); -}); diff --git a/javascriptv3/example_code/s3/tests/s3_deletebucketwebsite.test.js b/javascriptv3/example_code/s3/tests/s3_deletebucketwebsite.test.js deleted file mode 100644 index 4b6465853d5..00000000000 --- a/javascriptv3/example_code/s3/tests/s3_deletebucketwebsite.test.js +++ /dev/null @@ -1,15 +0,0 @@ -jest.mock("../src/libs/s3Client.js"); -jest.mock("@aws-sdk/client-s3"); - -// Get service clients module and commands. -import 'regenerator-runtime/runtime' -import { run, bucketParams } from "../src/s3_deletebucketwebsite.js"; -import { s3Client } from "../src/libs/s3Client"; - -describe("@aws-sdk/client-s3 mock", () => { - it("should successfully mock S3 client", async () => { - s3Client.send.mockResolvedValue({ isMock: true }); - const response = await run(bucketParams); - expect(response.isMock).toEqual(true); - }); -}); diff --git a/javascriptv3/example_code/s3/tests/s3_getbucketacl.test.js b/javascriptv3/example_code/s3/tests/s3_getbucketacl.test.js deleted file mode 100644 index 27ce0f5e2f1..00000000000 --- a/javascriptv3/example_code/s3/tests/s3_getbucketacl.test.js +++ /dev/null @@ -1,15 +0,0 @@ -jest.mock("../src/libs/s3Client.js"); -jest.mock("@aws-sdk/client-s3"); - -// Get service clients module and commands. -import 'regenerator-runtime/runtime' -import { run, bucketParams } from "../src/s3_getbucketacl.js"; -import { s3Client } from "../src/libs/s3Client"; - -describe("@aws-sdk/client-s3 mock", () => { - it("should successfully mock S3 client", async () => { - s3Client.send.mockResolvedValue({ isMock: true }); - const response = await run(bucketParams); - expect(response.isMock).toEqual(true); - }); -}); diff --git a/javascriptv3/example_code/s3/tests/s3_getbucketpolicy.test.js b/javascriptv3/example_code/s3/tests/s3_getbucketpolicy.test.js deleted file mode 100644 index 2793018e403..00000000000 --- a/javascriptv3/example_code/s3/tests/s3_getbucketpolicy.test.js +++ /dev/null @@ -1,15 +0,0 @@ -jest.mock("../src/libs/s3Client.js"); -jest.mock("@aws-sdk/client-s3"); - -// Get service clients module and commands. -import 'regenerator-runtime/runtime' -import { run, bucketParams } from "../src/s3_getbucketpolicy.js"; -import { s3Client } from "../src/libs/s3Client"; - -describe("@aws-sdk/client-s3 mock", () => { - it("should successfully mock S3 client", async () => { - s3Client.send.mockResolvedValue({ isMock: true }); - const response = await run(bucketParams); - expect(response.isMock).toEqual(true); - }); -}); diff --git a/javascriptv3/example_code/s3/tests/s3_getbucketwebsite.test.js b/javascriptv3/example_code/s3/tests/s3_getbucketwebsite.test.js deleted file mode 100644 index af659834800..00000000000 --- a/javascriptv3/example_code/s3/tests/s3_getbucketwebsite.test.js +++ /dev/null @@ -1,15 +0,0 @@ -jest.mock("../src/libs/s3Client.js"); -jest.mock("@aws-sdk/client-s3"); - -// Get service clients module and commands. -import 'regenerator-runtime/runtime' -import { run, bucketParams } from "../src/s3_getbucketwebsite.js"; -import { s3Client } from "../src/libs/s3Client"; - -describe("@aws-sdk/client-s3 mock", () => { - it("should successfully mock S3 client", async () => { - s3Client.send.mockResolvedValue({ isMock: true }); - const response = await run(bucketParams); - expect(response.isMock).toEqual(true); - }); -}); diff --git a/javascriptv3/example_code/s3/tests/s3_getcors.test.js b/javascriptv3/example_code/s3/tests/s3_getcors.test.js deleted file mode 100644 index 07164d95b53..00000000000 --- a/javascriptv3/example_code/s3/tests/s3_getcors.test.js +++ /dev/null @@ -1,15 +0,0 @@ -jest.mock("../src/libs/s3Client.js"); -jest.mock("@aws-sdk/client-s3"); - -// Get service clients module and commands. -import 'regenerator-runtime/runtime' -import { run, bucketParams } from "../src/s3_getcors.js"; -import { s3Client } from "../src/libs/s3Client"; - -describe("@aws-sdk/client-s3 mock", () => { - it("should successfully mock S3 client", async () => { - s3Client.send.mockResolvedValue({ isMock: true }); - const response = await run(bucketParams); - expect(response.isMock).toEqual(true); - }); -}); diff --git a/javascriptv3/example_code/s3/tests/s3_listbuckets.test.js b/javascriptv3/example_code/s3/tests/s3_listbuckets.test.js deleted file mode 100644 index 2ab90abcf5e..00000000000 --- a/javascriptv3/example_code/s3/tests/s3_listbuckets.test.js +++ /dev/null @@ -1,15 +0,0 @@ -jest.mock("../src/libs/s3Client.js"); -jest.mock("@aws-sdk/client-s3"); - -// Get service clients module and commands. -import 'regenerator-runtime/runtime' -import { run, bucketParams } from "../src/s3_listbuckets.js"; -import { s3Client } from "../src/libs/s3Client"; - -describe("@aws-sdk/client-s3 mock", () => { - it("should successfully mock S3 client", async () => { - s3Client.send.mockResolvedValue({ isMock: true }); - const response = await run(bucketParams); - expect(response.isMock).toEqual(true); - }); -}); diff --git a/javascriptv3/example_code/s3/tests/s3_listobjects.test.js b/javascriptv3/example_code/s3/tests/s3_listobjects.test.js deleted file mode 100644 index 90b144741eb..00000000000 --- a/javascriptv3/example_code/s3/tests/s3_listobjects.test.js +++ /dev/null @@ -1,15 +0,0 @@ -jest.mock("../src/libs/s3Client.js"); -jest.mock("@aws-sdk/client-s3"); - -// Get service clients module and commands. -import 'regenerator-runtime/runtime' -import { run, bucketParams } from "../src/s3_listobjects.js"; -import { s3Client } from "../src/libs/s3Client"; - -describe("@aws-sdk/client-s3 mock", () => { - it("should successfully mock S3 client", async () => { - s3Client.send.mockResolvedValue({ isMock: true }); - const response = await run(bucketParams); - expect(response.isMock).toEqual(true); - }); -}); diff --git a/javascriptv3/example_code/s3/tests/s3_multipartupload.test.js b/javascriptv3/example_code/s3/tests/s3_multipartupload.test.js deleted file mode 100644 index 8187a58852b..00000000000 --- a/javascriptv3/example_code/s3/tests/s3_multipartupload.test.js +++ /dev/null @@ -1,13 +0,0 @@ -/* - * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. - * SPDX-License-Identifier: Apache-2.0 - */ - -import { describe } from "@jest/globals"; -import { createString } from "../src/s3_multipartupload.js"; - -describe('createString', () => { - it('should create a string of the correct size', () => { - expect(createString(10).length).toEqual(10); - }); -}) \ No newline at end of file diff --git a/javascriptv3/example_code/s3/tests/s3_putbucketacl.test.js b/javascriptv3/example_code/s3/tests/s3_putbucketacl.test.js deleted file mode 100644 index ab1184c81cf..00000000000 --- a/javascriptv3/example_code/s3/tests/s3_putbucketacl.test.js +++ /dev/null @@ -1,15 +0,0 @@ -jest.mock("../src/libs/s3Client.js"); -jest.mock("@aws-sdk/client-s3"); - -// Get service clients module and commands. -import 'regenerator-runtime/runtime' -import { run, bucketParams } from "../src/s3_putbucketacl.js"; -import { s3Client } from "../src/libs/s3Client"; - -describe("@aws-sdk/client-s3 mock", () => { - it("should successfully mock S3 client", async () => { - s3Client.send.mockResolvedValue({ isMock: true }); - const response = await run(bucketParams); - expect(response.isMock).toEqual(true); - }); -}); diff --git a/javascriptv3/example_code/s3/tests/s3_putbucketpolicy.test.js b/javascriptv3/example_code/s3/tests/s3_putbucketpolicy.test.js deleted file mode 100644 index 2571fd0d4fc..00000000000 --- a/javascriptv3/example_code/s3/tests/s3_putbucketpolicy.test.js +++ /dev/null @@ -1,15 +0,0 @@ -jest.mock("../src/libs/s3Client.js"); -jest.mock("@aws-sdk/client-s3"); - -// Get service clients module and commands. -import 'regenerator-runtime/runtime' -import { run, bucketParams } from "../src/s3_putbucketpolicy.js"; -import { s3Client } from "../src/libs/s3Client"; - -describe("@aws-sdk/client-s3 mock", () => { - it("should successfully mock S3 client", async () => { - s3Client.send.mockResolvedValue({ isMock: true }); - const response = await run(bucketParams); - expect(response.isMock).toEqual(true); - }); -}); diff --git a/javascriptv3/example_code/s3/tests/s3_setbucketwebsite.test.js b/javascriptv3/example_code/s3/tests/s3_setbucketwebsite.test.js deleted file mode 100644 index f0d5c207abd..00000000000 --- a/javascriptv3/example_code/s3/tests/s3_setbucketwebsite.test.js +++ /dev/null @@ -1,15 +0,0 @@ -jest.mock("../src/libs/s3Client.js"); -jest.mock("@aws-sdk/client-s3"); - -// Get service clients module and commands. -import 'regenerator-runtime/runtime' -import { run, bucketParams } from "../src/s3_setbucketwebsite.js"; -import { s3Client } from "../src/libs/s3Client"; - -describe("@aws-sdk/client-s3 mock", () => { - it("should successfully mock S3 client", async () => { - s3Client.send.mockResolvedValue({ isMock: true }); - const response = await run(bucketParams); - expect(response.isMock).toEqual(true); - }); -}); diff --git a/javascriptv3/example_code/s3/tests/yarn.lock b/javascriptv3/example_code/s3/tests/yarn.lock deleted file mode 100644 index 0b9810a116a..00000000000 --- a/javascriptv3/example_code/s3/tests/yarn.lock +++ /dev/null @@ -1,5188 +0,0 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - - -"@ampproject/remapping@^2.1.0": - version "2.2.0" - resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.0.tgz#56c133824780de3174aed5ab6834f3026790154d" - integrity sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w== - dependencies: - "@jridgewell/gen-mapping" "^0.1.0" - "@jridgewell/trace-mapping" "^0.3.9" - -"@aws-crypto/crc32@2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/crc32/-/crc32-2.0.0.tgz#4ad432a3c03ec3087c5540ff6e41e6565d2dc153" - integrity sha512-TvE1r2CUueyXOuHdEigYjIZVesInd9KN+K/TFFNfkkxRThiNxO6i4ZqqAVMoEjAamZZ1AA8WXJkjCz7YShHPQA== - dependencies: - "@aws-crypto/util" "^2.0.0" - "@aws-sdk/types" "^3.1.0" - tslib "^1.11.1" - -"@aws-crypto/crc32c@2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/crc32c/-/crc32c-2.0.0.tgz#4235336ef78f169f6a05248906703b9b78da676e" - integrity sha512-vF0eMdMHx3O3MoOXUfBZry8Y4ZDtcuskjjKgJz8YfIDjLStxTZrYXk+kZqtl6A0uCmmiN/Eb/JbC/CndTV1MHg== - dependencies: - "@aws-crypto/util" "^2.0.0" - "@aws-sdk/types" "^3.1.0" - tslib "^1.11.1" - -"@aws-crypto/ie11-detection@^2.0.0": - version "2.0.2" - resolved "https://registry.yarnpkg.com/@aws-crypto/ie11-detection/-/ie11-detection-2.0.2.tgz#9c39f4a5558196636031a933ec1b4792de959d6a" - integrity sha512-5XDMQY98gMAf/WRTic5G++jfmS/VLM0rwpiOpaainKi4L0nqWMSB1SzsrEG5rjFZGYN6ZAefO+/Yta2dFM0kMw== - dependencies: - tslib "^1.11.1" - -"@aws-crypto/sha1-browser@2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/sha1-browser/-/sha1-browser-2.0.0.tgz#71e735df20ea1d38f59259c4b1a2e00ca74a0eea" - integrity sha512-3fIVRjPFY8EG5HWXR+ZJZMdWNRpwbxGzJ9IH9q93FpbgCH8u8GHRi46mZXp3cYD7gealmyqpm3ThZwLKJjWJhA== - dependencies: - "@aws-crypto/ie11-detection" "^2.0.0" - "@aws-crypto/supports-web-crypto" "^2.0.0" - "@aws-sdk/types" "^3.1.0" - "@aws-sdk/util-locate-window" "^3.0.0" - "@aws-sdk/util-utf8-browser" "^3.0.0" - tslib "^1.11.1" - -"@aws-crypto/sha256-browser@2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/sha256-browser/-/sha256-browser-2.0.0.tgz#741c9024df55ec59b51e5b1f5d806a4852699fb5" - integrity sha512-rYXOQ8BFOaqMEHJrLHul/25ckWH6GTJtdLSajhlqGMx0PmSueAuvboCuZCTqEKlxR8CQOwRarxYMZZSYlhRA1A== - dependencies: - "@aws-crypto/ie11-detection" "^2.0.0" - "@aws-crypto/sha256-js" "^2.0.0" - "@aws-crypto/supports-web-crypto" "^2.0.0" - "@aws-crypto/util" "^2.0.0" - "@aws-sdk/types" "^3.1.0" - "@aws-sdk/util-locate-window" "^3.0.0" - "@aws-sdk/util-utf8-browser" "^3.0.0" - tslib "^1.11.1" - -"@aws-crypto/sha256-js@2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/sha256-js/-/sha256-js-2.0.0.tgz#f1f936039bdebd0b9e2dd834d65afdc2aac4efcb" - integrity sha512-VZY+mCY4Nmrs5WGfitmNqXzaE873fcIZDu54cbaDaaamsaTOP1DBImV9F4pICc3EHjQXujyE8jig+PFCaew9ig== - dependencies: - "@aws-crypto/util" "^2.0.0" - "@aws-sdk/types" "^3.1.0" - tslib "^1.11.1" - -"@aws-crypto/sha256-js@^2.0.0": - version "2.0.2" - resolved "https://registry.yarnpkg.com/@aws-crypto/sha256-js/-/sha256-js-2.0.2.tgz#c81e5d378b8a74ff1671b58632779986e50f4c99" - integrity sha512-iXLdKH19qPmIC73fVCrHWCSYjN/sxaAvZ3jNNyw6FclmHyjLKg0f69WlC9KTnyElxCR5MO9SKaG00VwlJwyAkQ== - dependencies: - "@aws-crypto/util" "^2.0.2" - "@aws-sdk/types" "^3.110.0" - tslib "^1.11.1" - -"@aws-crypto/supports-web-crypto@^2.0.0": - version "2.0.2" - resolved "https://registry.yarnpkg.com/@aws-crypto/supports-web-crypto/-/supports-web-crypto-2.0.2.tgz#9f02aafad8789cac9c0ab5faaebb1ab8aa841338" - integrity sha512-6mbSsLHwZ99CTOOswvCRP3C+VCWnzBf+1SnbWxzzJ9lR0mA0JnY2JEAhp8rqmTE0GPFy88rrM27ffgp62oErMQ== - dependencies: - tslib "^1.11.1" - -"@aws-crypto/util@^2.0.0", "@aws-crypto/util@^2.0.2": - version "2.0.2" - resolved "https://registry.yarnpkg.com/@aws-crypto/util/-/util-2.0.2.tgz#adf5ff5dfbc7713082f897f1d01e551ce0edb9c0" - integrity sha512-Lgu5v/0e/BcrZ5m/IWqzPUf3UYFTy/PpeED+uc9SWUR1iZQL8XXbGQg10UfllwwBryO3hFF5dizK+78aoXC1eA== - dependencies: - "@aws-sdk/types" "^3.110.0" - "@aws-sdk/util-utf8-browser" "^3.0.0" - tslib "^1.11.1" - -"@aws-sdk/abort-controller@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/abort-controller/-/abort-controller-3.226.0.tgz#3adffb8ee5af57ddb154e8544a8eeec76ad32271" - integrity sha512-cJVzr1xxPBd08voknXvR0RLgtZKGKt6WyDpH/BaPCu3rfSqWCDZKzwqe940eqosjmKrxC6pUZNKASIqHOQ8xxQ== - dependencies: - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/chunked-blob-reader-native@3.208.0": - version "3.208.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/chunked-blob-reader-native/-/chunked-blob-reader-native-3.208.0.tgz#cdbd12c89a4f3ddd91bf707da8bb4af311487cc5" - integrity sha512-JeOZ95PW+fJ6bbuqPySYqLqHk1n4+4ueEEraJsiUrPBV0S1ZtyvOGHcnGztKUjr2PYNaiexmpWuvUve9K12HRA== - dependencies: - "@aws-sdk/util-base64" "3.208.0" - tslib "^2.3.1" - -"@aws-sdk/chunked-blob-reader@3.188.0": - version "3.188.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/chunked-blob-reader/-/chunked-blob-reader-3.188.0.tgz#18181b27511ab512e56b9f2cef30d2abbef639dc" - integrity sha512-zkPRFZZPL3eH+kH86LDYYXImiClA1/sW60zYOjse9Pgka+eDJlvBN6hcYxwDEKjcwATYiSRR1aVQHcfCinlGXg== - dependencies: - tslib "^2.3.1" - -"@aws-sdk/client-s3@^3.32.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-s3/-/client-s3-3.226.0.tgz#176284827f55c8d58dfe30c157769b245a306f9c" - integrity sha512-N8S0i5txBqlTY30IHaWgi15HUPzdWpQVX01zfYoHU80HmxKBRhqrefIrmCbn/121br0B+MysgpgdfiSfhyHkLw== - dependencies: - "@aws-crypto/sha1-browser" "2.0.0" - "@aws-crypto/sha256-browser" "2.0.0" - "@aws-crypto/sha256-js" "2.0.0" - "@aws-sdk/client-sts" "3.226.0" - "@aws-sdk/config-resolver" "3.226.0" - "@aws-sdk/credential-provider-node" "3.226.0" - "@aws-sdk/eventstream-serde-browser" "3.226.0" - "@aws-sdk/eventstream-serde-config-resolver" "3.226.0" - "@aws-sdk/eventstream-serde-node" "3.226.0" - "@aws-sdk/fetch-http-handler" "3.226.0" - "@aws-sdk/hash-blob-browser" "3.226.0" - "@aws-sdk/hash-node" "3.226.0" - "@aws-sdk/hash-stream-node" "3.226.0" - "@aws-sdk/invalid-dependency" "3.226.0" - "@aws-sdk/md5-js" "3.226.0" - "@aws-sdk/middleware-bucket-endpoint" "3.226.0" - "@aws-sdk/middleware-content-length" "3.226.0" - "@aws-sdk/middleware-endpoint" "3.226.0" - "@aws-sdk/middleware-expect-continue" "3.226.0" - "@aws-sdk/middleware-flexible-checksums" "3.226.0" - "@aws-sdk/middleware-host-header" "3.226.0" - "@aws-sdk/middleware-location-constraint" "3.226.0" - "@aws-sdk/middleware-logger" "3.226.0" - "@aws-sdk/middleware-recursion-detection" "3.226.0" - "@aws-sdk/middleware-retry" "3.226.0" - "@aws-sdk/middleware-sdk-s3" "3.226.0" - "@aws-sdk/middleware-serde" "3.226.0" - "@aws-sdk/middleware-signing" "3.226.0" - "@aws-sdk/middleware-ssec" "3.226.0" - "@aws-sdk/middleware-stack" "3.226.0" - "@aws-sdk/middleware-user-agent" "3.226.0" - "@aws-sdk/node-config-provider" "3.226.0" - "@aws-sdk/node-http-handler" "3.226.0" - "@aws-sdk/protocol-http" "3.226.0" - "@aws-sdk/signature-v4-multi-region" "3.226.0" - "@aws-sdk/smithy-client" "3.226.0" - "@aws-sdk/types" "3.226.0" - "@aws-sdk/url-parser" "3.226.0" - "@aws-sdk/util-base64" "3.208.0" - "@aws-sdk/util-body-length-browser" "3.188.0" - "@aws-sdk/util-body-length-node" "3.208.0" - "@aws-sdk/util-defaults-mode-browser" "3.226.0" - "@aws-sdk/util-defaults-mode-node" "3.226.0" - "@aws-sdk/util-endpoints" "3.226.0" - "@aws-sdk/util-stream-browser" "3.226.0" - "@aws-sdk/util-stream-node" "3.226.0" - "@aws-sdk/util-user-agent-browser" "3.226.0" - "@aws-sdk/util-user-agent-node" "3.226.0" - "@aws-sdk/util-utf8-browser" "3.188.0" - "@aws-sdk/util-utf8-node" "3.208.0" - "@aws-sdk/util-waiter" "3.226.0" - "@aws-sdk/xml-builder" "3.201.0" - fast-xml-parser "4.0.11" - tslib "^2.3.1" - -"@aws-sdk/client-sso-oidc@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.226.0.tgz#6e9566a41f34d918fd1658ba968a0d33401585bf" - integrity sha512-IKzAhL6RoPs7IZ/rJvekjedQ4oesazCO+Aqh9l2Xct+XY0MFBdh4amgg4t/8fjksfIzmJH48BZoNv5gVak6yRw== - dependencies: - "@aws-crypto/sha256-browser" "2.0.0" - "@aws-crypto/sha256-js" "2.0.0" - "@aws-sdk/config-resolver" "3.226.0" - "@aws-sdk/fetch-http-handler" "3.226.0" - "@aws-sdk/hash-node" "3.226.0" - "@aws-sdk/invalid-dependency" "3.226.0" - "@aws-sdk/middleware-content-length" "3.226.0" - "@aws-sdk/middleware-endpoint" "3.226.0" - "@aws-sdk/middleware-host-header" "3.226.0" - "@aws-sdk/middleware-logger" "3.226.0" - "@aws-sdk/middleware-recursion-detection" "3.226.0" - "@aws-sdk/middleware-retry" "3.226.0" - "@aws-sdk/middleware-serde" "3.226.0" - "@aws-sdk/middleware-stack" "3.226.0" - "@aws-sdk/middleware-user-agent" "3.226.0" - "@aws-sdk/node-config-provider" "3.226.0" - "@aws-sdk/node-http-handler" "3.226.0" - "@aws-sdk/protocol-http" "3.226.0" - "@aws-sdk/smithy-client" "3.226.0" - "@aws-sdk/types" "3.226.0" - "@aws-sdk/url-parser" "3.226.0" - "@aws-sdk/util-base64" "3.208.0" - "@aws-sdk/util-body-length-browser" "3.188.0" - "@aws-sdk/util-body-length-node" "3.208.0" - "@aws-sdk/util-defaults-mode-browser" "3.226.0" - "@aws-sdk/util-defaults-mode-node" "3.226.0" - "@aws-sdk/util-endpoints" "3.226.0" - "@aws-sdk/util-user-agent-browser" "3.226.0" - "@aws-sdk/util-user-agent-node" "3.226.0" - "@aws-sdk/util-utf8-browser" "3.188.0" - "@aws-sdk/util-utf8-node" "3.208.0" - tslib "^2.3.1" - -"@aws-sdk/client-sso@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-sso/-/client-sso-3.226.0.tgz#a7d5239e74ac9e050f91f261e6a8783893b4c95a" - integrity sha512-+Hl1YSLKrxPnQLijhWryI6uV8eKZIsUhvWlzFKx75kjxzjsC/jyk5zV59jnCu0SCCepXB8DKyLVa2WpH7iAHew== - dependencies: - "@aws-crypto/sha256-browser" "2.0.0" - "@aws-crypto/sha256-js" "2.0.0" - "@aws-sdk/config-resolver" "3.226.0" - "@aws-sdk/fetch-http-handler" "3.226.0" - "@aws-sdk/hash-node" "3.226.0" - "@aws-sdk/invalid-dependency" "3.226.0" - "@aws-sdk/middleware-content-length" "3.226.0" - "@aws-sdk/middleware-endpoint" "3.226.0" - "@aws-sdk/middleware-host-header" "3.226.0" - "@aws-sdk/middleware-logger" "3.226.0" - "@aws-sdk/middleware-recursion-detection" "3.226.0" - "@aws-sdk/middleware-retry" "3.226.0" - "@aws-sdk/middleware-serde" "3.226.0" - "@aws-sdk/middleware-stack" "3.226.0" - "@aws-sdk/middleware-user-agent" "3.226.0" - "@aws-sdk/node-config-provider" "3.226.0" - "@aws-sdk/node-http-handler" "3.226.0" - "@aws-sdk/protocol-http" "3.226.0" - "@aws-sdk/smithy-client" "3.226.0" - "@aws-sdk/types" "3.226.0" - "@aws-sdk/url-parser" "3.226.0" - "@aws-sdk/util-base64" "3.208.0" - "@aws-sdk/util-body-length-browser" "3.188.0" - "@aws-sdk/util-body-length-node" "3.208.0" - "@aws-sdk/util-defaults-mode-browser" "3.226.0" - "@aws-sdk/util-defaults-mode-node" "3.226.0" - "@aws-sdk/util-endpoints" "3.226.0" - "@aws-sdk/util-user-agent-browser" "3.226.0" - "@aws-sdk/util-user-agent-node" "3.226.0" - "@aws-sdk/util-utf8-browser" "3.188.0" - "@aws-sdk/util-utf8-node" "3.208.0" - tslib "^2.3.1" - -"@aws-sdk/client-sts@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-sts/-/client-sts-3.226.0.tgz#40b8e62152bbce2c44c607b80ccc1db280497e1f" - integrity sha512-ZBlqRVbnHvvbkN5g56+mXltNybHNzgV69+2ARubQ8ge9U2qF/LweCmGqZnZLWqdGXwaB9IOvz5ZW2npyJh1X/A== - dependencies: - "@aws-crypto/sha256-browser" "2.0.0" - "@aws-crypto/sha256-js" "2.0.0" - "@aws-sdk/config-resolver" "3.226.0" - "@aws-sdk/credential-provider-node" "3.226.0" - "@aws-sdk/fetch-http-handler" "3.226.0" - "@aws-sdk/hash-node" "3.226.0" - "@aws-sdk/invalid-dependency" "3.226.0" - "@aws-sdk/middleware-content-length" "3.226.0" - "@aws-sdk/middleware-endpoint" "3.226.0" - "@aws-sdk/middleware-host-header" "3.226.0" - "@aws-sdk/middleware-logger" "3.226.0" - "@aws-sdk/middleware-recursion-detection" "3.226.0" - "@aws-sdk/middleware-retry" "3.226.0" - "@aws-sdk/middleware-sdk-sts" "3.226.0" - "@aws-sdk/middleware-serde" "3.226.0" - "@aws-sdk/middleware-signing" "3.226.0" - "@aws-sdk/middleware-stack" "3.226.0" - "@aws-sdk/middleware-user-agent" "3.226.0" - "@aws-sdk/node-config-provider" "3.226.0" - "@aws-sdk/node-http-handler" "3.226.0" - "@aws-sdk/protocol-http" "3.226.0" - "@aws-sdk/smithy-client" "3.226.0" - "@aws-sdk/types" "3.226.0" - "@aws-sdk/url-parser" "3.226.0" - "@aws-sdk/util-base64" "3.208.0" - "@aws-sdk/util-body-length-browser" "3.188.0" - "@aws-sdk/util-body-length-node" "3.208.0" - "@aws-sdk/util-defaults-mode-browser" "3.226.0" - "@aws-sdk/util-defaults-mode-node" "3.226.0" - "@aws-sdk/util-endpoints" "3.226.0" - "@aws-sdk/util-user-agent-browser" "3.226.0" - "@aws-sdk/util-user-agent-node" "3.226.0" - "@aws-sdk/util-utf8-browser" "3.188.0" - "@aws-sdk/util-utf8-node" "3.208.0" - fast-xml-parser "4.0.11" - tslib "^2.3.1" - -"@aws-sdk/config-resolver@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/config-resolver/-/config-resolver-3.226.0.tgz#b4f19150cf08c9ed36ced3bdffdc64d89e6f3e5b" - integrity sha512-0UWXtfnTT0OtnRP8jJodc8V7xAnWSqsh4RCRyV5uu3Z2Tv+xyW91GKxO+gOXoUP0hHu0lvBM9lYiMJcJWZYLYw== - dependencies: - "@aws-sdk/signature-v4" "3.226.0" - "@aws-sdk/types" "3.226.0" - "@aws-sdk/util-config-provider" "3.208.0" - "@aws-sdk/util-middleware" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/credential-provider-env@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-env/-/credential-provider-env-3.226.0.tgz#0bcb89a9abc166b3a48f5c255b9fcabc4cb80daf" - integrity sha512-sd8uK1ojbXxaZXlthzw/VXZwCPUtU3PjObOfr3Evj7MPIM2IH8h29foOlggx939MdLQGboJf9gKvLlvKDWtJRA== - dependencies: - "@aws-sdk/property-provider" "3.226.0" - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/credential-provider-imds@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.226.0.tgz#0a4558449eb261412b0490ea1c3242eb91659759" - integrity sha512-//z/COQm2AjYFI1Lb0wKHTQSrvLFTyuKLFQGPJsKS7DPoxGOCKB7hmYerlbl01IDoCxTdyL//TyyPxbZEOQD5Q== - dependencies: - "@aws-sdk/node-config-provider" "3.226.0" - "@aws-sdk/property-provider" "3.226.0" - "@aws-sdk/types" "3.226.0" - "@aws-sdk/url-parser" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/credential-provider-ini@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.226.0.tgz#06ad59f5124044ef01413c7ad01119ef15566744" - integrity sha512-Sj7SGl53qmKkD7wvgU0MSTyj8ho6A3tKVbadTHljVz60jiauTEM97Z1DIai6U3oPFVteaKqx7npc8ozeK6mKNg== - dependencies: - "@aws-sdk/credential-provider-env" "3.226.0" - "@aws-sdk/credential-provider-imds" "3.226.0" - "@aws-sdk/credential-provider-sso" "3.226.0" - "@aws-sdk/credential-provider-web-identity" "3.226.0" - "@aws-sdk/property-provider" "3.226.0" - "@aws-sdk/shared-ini-file-loader" "3.226.0" - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/credential-provider-node@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-node/-/credential-provider-node-3.226.0.tgz#d81c4d8fbacf5ef9bbea6e0e2e15fb61039b5eb6" - integrity sha512-kuOeiVmlhSyMC1Eix0pqHmb4EmpbMHrTw+9ObZbQ2bRXy05Q9fLA6SVBcI01bI1KVh7Qqz9i8ojOY3A2zscjyA== - dependencies: - "@aws-sdk/credential-provider-env" "3.226.0" - "@aws-sdk/credential-provider-imds" "3.226.0" - "@aws-sdk/credential-provider-ini" "3.226.0" - "@aws-sdk/credential-provider-process" "3.226.0" - "@aws-sdk/credential-provider-sso" "3.226.0" - "@aws-sdk/credential-provider-web-identity" "3.226.0" - "@aws-sdk/property-provider" "3.226.0" - "@aws-sdk/shared-ini-file-loader" "3.226.0" - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/credential-provider-process@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-process/-/credential-provider-process-3.226.0.tgz#bcd73a6d31d1b3181917d56e54aacbee242b077f" - integrity sha512-iUDMdnrTvbvaCFhWwqyXrhvQ9+ojPqPqXhwZtY1X/Qaz+73S9gXBPJHZaZb2Ke0yKE1Ql3bJbKvmmxC/qLQMng== - dependencies: - "@aws-sdk/property-provider" "3.226.0" - "@aws-sdk/shared-ini-file-loader" "3.226.0" - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/credential-provider-sso@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.226.0.tgz#c8c91e0065153897e659afabd93df62e948058c5" - integrity sha512-QSBeyOIAus4/8u/DeAstE8w/zw+F7PQohdB8JFP/BPaCfc8uKue4UkqqvQWRfm4VSEnHeXt037MDopmCpd98Iw== - dependencies: - "@aws-sdk/client-sso" "3.226.0" - "@aws-sdk/property-provider" "3.226.0" - "@aws-sdk/shared-ini-file-loader" "3.226.0" - "@aws-sdk/token-providers" "3.226.0" - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/credential-provider-web-identity@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.226.0.tgz#2b7d20f93a40e2243c7e3857f54b103d19a946fb" - integrity sha512-CCpv847rLB0SFOHz2igvUMFAzeT2fD3YnY4C8jltuJoEkn0ITn1Hlgt13nTJ5BUuvyti2mvyXZHmNzhMIMrIlw== - dependencies: - "@aws-sdk/property-provider" "3.226.0" - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/eventstream-codec@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/eventstream-codec/-/eventstream-codec-3.226.0.tgz#1f54fb2c0bb321d2636d068ee1e969a8c07586ab" - integrity sha512-6uPtR8vSwz3fqoZk9hrb6qBYdp3PJ22+JxV5Wimdesvow4kJXSgDQXIxEkxbv6SxB9tNRB4uJHD84RetHEi15Q== - dependencies: - "@aws-crypto/crc32" "2.0.0" - "@aws-sdk/types" "3.226.0" - "@aws-sdk/util-hex-encoding" "3.201.0" - tslib "^2.3.1" - -"@aws-sdk/eventstream-serde-browser@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/eventstream-serde-browser/-/eventstream-serde-browser-3.226.0.tgz#a1b880952b5d5b367fcff57be7c00682d01cef00" - integrity sha512-otYC5aZE9eJUqAlKpy8w0rPDQ1eKGvZPtgxWXmFYSO2lDVGfI1nBBNmdZ4MdHqNuQ7ucsKMQYF8BFJ65K2tYPA== - dependencies: - "@aws-sdk/eventstream-serde-universal" "3.226.0" - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/eventstream-serde-config-resolver@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.226.0.tgz#07aa985fd8c7d417442bb48786a63bad63bb1a5a" - integrity sha512-A56Gypg+lyEfA5cna+EUH9XTrj0SvRG1gwNW7lrUzviN36SeA/LFTUIOEjxVML3Lowy+EPAcrSZ67h6aepoAig== - dependencies: - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/eventstream-serde-node@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/eventstream-serde-node/-/eventstream-serde-node-3.226.0.tgz#2f95e686ea51e452c1a3af4fa48242573e5ea3ad" - integrity sha512-KWLnKkKDzI9RNkiK6OiSYpG/XjZfue6Bsp/vRG+H5z3fbXdHv4X2+iW+Efu2Kvn7jsUyUv82TCl57DyJ/HKYhQ== - dependencies: - "@aws-sdk/eventstream-serde-universal" "3.226.0" - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/eventstream-serde-universal@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/eventstream-serde-universal/-/eventstream-serde-universal-3.226.0.tgz#f071c41b9706f129efad42c083a9ab5e2f2fc583" - integrity sha512-Q8viYM1Sv90/yIUqyWNeG1GEvyVlAI3GIrInQcCMC+xT59jS+IKGy2y7ojCvSWXnhf5/HMXKcmG092QsqeKy0Q== - dependencies: - "@aws-sdk/eventstream-codec" "3.226.0" - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/fetch-http-handler@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.226.0.tgz#350f78fc18fe9cb0a889ef4870838a8fcfa8855c" - integrity sha512-JewZPMNEBXfi1xVnRa7pVtK/zgZD8/lQ/YnD8pq79WuMa2cwyhDtr8oqCoqsPW+WJT5ScXoMtuHxN78l8eKWgg== - dependencies: - "@aws-sdk/protocol-http" "3.226.0" - "@aws-sdk/querystring-builder" "3.226.0" - "@aws-sdk/types" "3.226.0" - "@aws-sdk/util-base64" "3.208.0" - tslib "^2.3.1" - -"@aws-sdk/hash-blob-browser@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/hash-blob-browser/-/hash-blob-browser-3.226.0.tgz#00143ed30f9bd8b671327a94609db2403036654d" - integrity sha512-5DCvWE6L4xGoViEHyjcPFuUe1G2EtNx8TqswWaoaKgyasP/yuRm4H99Ra7rqIrjCcSTAGD9NVsUQvVVw1bGt9w== - dependencies: - "@aws-sdk/chunked-blob-reader" "3.188.0" - "@aws-sdk/chunked-blob-reader-native" "3.208.0" - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/hash-node@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/hash-node/-/hash-node-3.226.0.tgz#252d98bcbb1e13c8f26d9d416db03cf8cceac185" - integrity sha512-MdlJhJ9/Espwd0+gUXdZRsHuostB2WxEVAszWxobP0FTT9PnicqnfK7ExmW+DUAc0ywxtEbR3e0UND65rlSTVw== - dependencies: - "@aws-sdk/types" "3.226.0" - "@aws-sdk/util-buffer-from" "3.208.0" - tslib "^2.3.1" - -"@aws-sdk/hash-stream-node@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/hash-stream-node/-/hash-stream-node-3.226.0.tgz#cdf4c231fa1dd6006532afc370626702c80e4c91" - integrity sha512-cgNTGlF8SdHaQXtjEmuLXz2U8SLM2JDKtIVPku/lHTMsUsEn+fuv2C+h1f/hvd4aNw5t1zggym7sO1/h/rv56Q== - dependencies: - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/invalid-dependency@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/invalid-dependency/-/invalid-dependency-3.226.0.tgz#74586f60859ed1813985e3d642066cc46d2e9d40" - integrity sha512-QXOYFmap8g9QzRjumcRCIo2GEZkdCwd7ePQW0OABWPhKHzlJ74vvBxywjU3s39EEBEluWXtZ7Iufg6GxZM4ifw== - dependencies: - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/is-array-buffer@3.201.0": - version "3.201.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/is-array-buffer/-/is-array-buffer-3.201.0.tgz#06e557adc284fac2f26071c2944ae01f61b95854" - integrity sha512-UPez5qLh3dNgt0DYnPD/q0mVJY84rA17QE26hVNOW3fAji8W2wrwrxdacWOxyXvlxWsVRcKmr+lay1MDqpAMfg== - dependencies: - tslib "^2.3.1" - -"@aws-sdk/md5-js@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/md5-js/-/md5-js-3.226.0.tgz#1400f9af49233e2cae7f90c3c93013b4ce3e39f6" - integrity sha512-ENigJRNudqyh6xsch166SZ4gggHd3XzZJ8gkCU4CWPne04HcR3BkWSO774IuWooCHt8zkaEHKecPurRz6qR+Vw== - dependencies: - "@aws-sdk/types" "3.226.0" - "@aws-sdk/util-utf8-browser" "3.188.0" - "@aws-sdk/util-utf8-node" "3.208.0" - tslib "^2.3.1" - -"@aws-sdk/middleware-bucket-endpoint@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.226.0.tgz#830ec9fa591667b9e848b69504f79f86717e97e7" - integrity sha512-A1Vq5W2X7jgTfjqcKPmjoHohF0poP+9fxwL97fQMvzcwmjhtoCV3bLEpo6CGYx0pKPiSlRJXZkRwRPj2hDHDmA== - dependencies: - "@aws-sdk/protocol-http" "3.226.0" - "@aws-sdk/types" "3.226.0" - "@aws-sdk/util-arn-parser" "3.208.0" - "@aws-sdk/util-config-provider" "3.208.0" - tslib "^2.3.1" - -"@aws-sdk/middleware-content-length@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-content-length/-/middleware-content-length-3.226.0.tgz#6cc952049f6e3cdc3a3778c9dce9f2aee942b5fe" - integrity sha512-ksUzlHJN2JMuyavjA46a4sctvnrnITqt2tbGGWWrAuXY1mel2j+VbgnmJUiwHKUO6bTFBBeft5Vd1TSOb4JmiA== - dependencies: - "@aws-sdk/protocol-http" "3.226.0" - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/middleware-endpoint@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.226.0.tgz#d776480be4b5a9534c2805b7425be05497f840b7" - integrity sha512-EvLFafjtUxTT0AC9p3aBQu1/fjhWdIeK58jIXaNFONfZ3F8QbEYUPuF/SqZvJM6cWfOO9qwYKkRDbCSTYhprIg== - dependencies: - "@aws-sdk/middleware-serde" "3.226.0" - "@aws-sdk/protocol-http" "3.226.0" - "@aws-sdk/signature-v4" "3.226.0" - "@aws-sdk/types" "3.226.0" - "@aws-sdk/url-parser" "3.226.0" - "@aws-sdk/util-config-provider" "3.208.0" - "@aws-sdk/util-middleware" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/middleware-expect-continue@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.226.0.tgz#46a5b720ff896ce706ee4c01b0edcdb37bd8eaf4" - integrity sha512-YxvQKTV/eA9P8AgW0hXOgj5Qa+TSnNFfyOkfeP089aP3f6p92b1cESf33TEOKsddive2mHT5LRCN6MuPcgWWrA== - dependencies: - "@aws-sdk/protocol-http" "3.226.0" - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/middleware-flexible-checksums@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.226.0.tgz#01e2d983ffe855fb8c2b78d43cf81de26db32996" - integrity sha512-8A9Ot9A7794UP5tMGl2MnfTW/UM/jYy1wRWF9YkR/hPIcPb7OmE0hmlwIQGzb/7grxpYw66ETKf0WeH/41YfeQ== - dependencies: - "@aws-crypto/crc32" "2.0.0" - "@aws-crypto/crc32c" "2.0.0" - "@aws-sdk/is-array-buffer" "3.201.0" - "@aws-sdk/protocol-http" "3.226.0" - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/middleware-host-header@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-host-header/-/middleware-host-header-3.226.0.tgz#1e1ecb034929e0dbc532ae501fd93781438f9a24" - integrity sha512-haVkWVh6BUPwKgWwkL6sDvTkcZWvJjv8AgC8jiQuSl8GLZdzHTB8Qhi3IsfFta9HAuoLjxheWBE5Z/L0UrfhLA== - dependencies: - "@aws-sdk/protocol-http" "3.226.0" - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/middleware-location-constraint@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.226.0.tgz#c6c24047953294015342d704d787be8e05df49d3" - integrity sha512-qHiYaBYPc2R37KxG2uqsUUwh4usrQMHfGkrpTUnx5d4rGzM3mC+muPsTpSHnAL63K2/yJOHQJFjss3GGwV4SSA== - dependencies: - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/middleware-logger@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-logger/-/middleware-logger-3.226.0.tgz#37fd0e62f555befd526b03748c3aab60dcefecf3" - integrity sha512-m9gtLrrYnpN6yckcQ09rV7ExWOLMuq8mMPF/K3DbL/YL0TuILu9i2T1W+JuxSX+K9FMG2HrLAKivE/kMLr55xA== - dependencies: - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/middleware-recursion-detection@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.226.0.tgz#e149b9138e94d2fa70e7752ba6b1ccb537009706" - integrity sha512-mwRbdKEUeuNH5TEkyZ5FWxp6bL2UC1WbY+LDv6YjHxmSMKpAoOueEdtU34PqDOLrpXXxIGHDFmjeGeMfktyEcA== - dependencies: - "@aws-sdk/protocol-http" "3.226.0" - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/middleware-retry@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-retry/-/middleware-retry-3.226.0.tgz#d469d6c20984edcb58e4ca780ddf267f21558f99" - integrity sha512-uMn4dSkv9Na2uvt6K3HgTnVrCRAlGv1MBAtUDLXONqUv1L/Z1fp3CkFkLKQHKylfBwBhe6dXfYEo87i8LZFoqg== - dependencies: - "@aws-sdk/protocol-http" "3.226.0" - "@aws-sdk/service-error-classification" "3.226.0" - "@aws-sdk/types" "3.226.0" - "@aws-sdk/util-middleware" "3.226.0" - tslib "^2.3.1" - uuid "^8.3.2" - -"@aws-sdk/middleware-sdk-s3@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.226.0.tgz#10b47c44b654f0552c74ef665da6c07acf57e992" - integrity sha512-sOFLFCnlN3kPgSI8C9mq/X3o6Oy4lIk4jz5kuB11zfvsm+YlIlxL4s06FkYqHsGDBH9hmh8dEuOxQ+YktyyeoA== - dependencies: - "@aws-sdk/middleware-bucket-endpoint" "3.226.0" - "@aws-sdk/protocol-http" "3.226.0" - "@aws-sdk/types" "3.226.0" - "@aws-sdk/util-arn-parser" "3.208.0" - tslib "^2.3.1" - -"@aws-sdk/middleware-sdk-sts@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.226.0.tgz#e8a8cf42bba8963259546120cde1e408628863f9" - integrity sha512-NN9T/qoSD1kZvAT+VLny3NnlqgylYQcsgV3rvi/8lYzw/G/2s8VS6sm/VTWGGZhx08wZRv20MWzYu3bftcyqUg== - dependencies: - "@aws-sdk/middleware-signing" "3.226.0" - "@aws-sdk/property-provider" "3.226.0" - "@aws-sdk/protocol-http" "3.226.0" - "@aws-sdk/signature-v4" "3.226.0" - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/middleware-serde@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-serde/-/middleware-serde-3.226.0.tgz#c837ef33b34bec2af19a1c177a0c02a1ae20da5e" - integrity sha512-nPuOOAkSfx9TxzdKFx0X2bDlinOxGrqD7iof926K/AEflxGD1DBdcaDdjlYlPDW2CVE8LV/rAgbYuLxh/E/1VA== - dependencies: - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/middleware-signing@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-signing/-/middleware-signing-3.226.0.tgz#ebb1d142ac2767466f2e464bb7dba9837143b4d1" - integrity sha512-E6HmtPcl+IjYDDzi1xI2HpCbBq2avNWcjvCriMZWuTAtRVpnA6XDDGW5GY85IfS3A8G8vuWqEVPr8JcYUcjfew== - dependencies: - "@aws-sdk/property-provider" "3.226.0" - "@aws-sdk/protocol-http" "3.226.0" - "@aws-sdk/signature-v4" "3.226.0" - "@aws-sdk/types" "3.226.0" - "@aws-sdk/util-middleware" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/middleware-ssec@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-ssec/-/middleware-ssec-3.226.0.tgz#4f160aa6822e2af1b1b8a755ff0710aefb66abfb" - integrity sha512-DR97oWoLHiMdaUP/wu99HtzG7/ijvCrjZGDH37WBO1rxFtEti6L7T09wgHzwxMN8gtL8FJA7dU8IrffGSC9VmA== - dependencies: - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/middleware-stack@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-stack/-/middleware-stack-3.226.0.tgz#b0408370270188103987c457c758f9cf7651754f" - integrity sha512-85wF29LvPvpoed60fZGDYLwv1Zpd/cM0C22WSSFPw1SSJeqO4gtFYyCg2squfT3KI6kF43IIkOCJ+L7GtryPug== - dependencies: - tslib "^2.3.1" - -"@aws-sdk/middleware-user-agent@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.226.0.tgz#26653189f3e8da86514f77688a80d0ad445c0799" - integrity sha512-N1WnfzCW1Y5yWhVAphf8OPGTe8Df3vmV7/LdsoQfmpkCZgLZeK2o0xITkUQhRj1mbw7yp8tVFLFV3R2lMurdAQ== - dependencies: - "@aws-sdk/protocol-http" "3.226.0" - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/node-config-provider@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/node-config-provider/-/node-config-provider-3.226.0.tgz#a9e21512ef824142bb928a0b2f85b39a75b8964d" - integrity sha512-B8lQDqiRk7X5izFEUMXmi8CZLOKCTWQJU9HQf3ako+sF0gexo4nHN3jhoRWyLtcgC5S3on/2jxpAcqtm7kuY3w== - dependencies: - "@aws-sdk/property-provider" "3.226.0" - "@aws-sdk/shared-ini-file-loader" "3.226.0" - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/node-http-handler@3.226.0", "@aws-sdk/node-http-handler@^3.32.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/node-http-handler/-/node-http-handler-3.226.0.tgz#373886e949d214a99a3521bd6c141fa17b0e89fe" - integrity sha512-xQCddnZNMiPmjr3W7HYM+f5ir4VfxgJh37eqZwX6EZmyItFpNNeVzKUgA920ka1VPz/ZUYB+2OFGiX3LCLkkaA== - dependencies: - "@aws-sdk/abort-controller" "3.226.0" - "@aws-sdk/protocol-http" "3.226.0" - "@aws-sdk/querystring-builder" "3.226.0" - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/property-provider@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/property-provider/-/property-provider-3.226.0.tgz#ef0ff37c319dc37a52f08fa7544f861308a3bbd8" - integrity sha512-TsljjG+Sg0LmdgfiAlWohluWKnxB/k8xenjeozZfzOr5bHmNHtdbWv6BtNvD/R83hw7SFXxbJHlD5H4u9p2NFg== - dependencies: - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/protocol-http@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/protocol-http/-/protocol-http-3.226.0.tgz#0af7bdc331508e556b722aad0cb78eefa93466e3" - integrity sha512-zWkVqiTA9RXL6y0hhfZc9bcU4DX2NI6Hw9IhQmSPeM59mdbPjJlY4bLlMr5YxywqO3yQ/ylNoAfrEzrDjlOSRg== - dependencies: - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/querystring-builder@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/querystring-builder/-/querystring-builder-3.226.0.tgz#11cd751abeac66f1f9349225454bac3e39808926" - integrity sha512-LVurypuNeotO4lmirKXRC4NYrZRAyMJXuwO0f2a5ZAUJCjauwYrifKue6yCfU7bls7gut7nfcR6B99WBYpHs3g== - dependencies: - "@aws-sdk/types" "3.226.0" - "@aws-sdk/util-uri-escape" "3.201.0" - tslib "^2.3.1" - -"@aws-sdk/querystring-parser@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/querystring-parser/-/querystring-parser-3.226.0.tgz#ba6a26727c98d46c95180e6cdc463039c5e4740d" - integrity sha512-FzB+VrQ47KAFxiPt2YXrKZ8AOLZQqGTLCKHzx4bjxGmwgsjV8yIbtJiJhZLMcUQV4LtGeIY9ixIqQhGvnZHE4A== - dependencies: - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/service-error-classification@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/service-error-classification/-/service-error-classification-3.226.0.tgz#47cc6a6d5c7be5b0f6d054ca9375cc405c9d63f6" - integrity sha512-9R01dBpE8JILe2CTft7YN2tMufT2mMWMTqxmHwPSmOpsxHTj8hEII7GTfvpb95ThHwW7XMNhg7pbHLbrTJZCVA== - -"@aws-sdk/shared-ini-file-loader@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.226.0.tgz#d0ade86834b1803ce4b9dcab459e57e0376fd6cf" - integrity sha512-661VQefsARxVyyV2FX9V61V+nNgImk7aN2hYlFKla6BCwZfMng+dEtD0xVGyg1PfRw0qvEv5LQyxMVgHcUSevA== - dependencies: - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/signature-v4-multi-region@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.226.0.tgz#7f97056e66dde3ca07c72176994c12daaa517f94" - integrity sha512-QHxNuf9ynK208v7Y3imdsa3Cz8ynYV7ZOf3sBJdItuEtHN6uy/KxaOrtvpF8I5Hyn48Hc8z5miTSMujFKT7GEw== - dependencies: - "@aws-sdk/protocol-http" "3.226.0" - "@aws-sdk/signature-v4" "3.226.0" - "@aws-sdk/types" "3.226.0" - "@aws-sdk/util-arn-parser" "3.208.0" - tslib "^2.3.1" - -"@aws-sdk/signature-v4@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/signature-v4/-/signature-v4-3.226.0.tgz#100390b5c5b55a9b0abd05b06fceb36cfa0ecf98" - integrity sha512-/R5q5agdPd7HJB68XMzpxrNPk158EHUvkFkuRu5Qf3kkkHebEzWEBlWoVpUe6ss4rP9Tqcue6xPuaftEmhjpYw== - dependencies: - "@aws-sdk/is-array-buffer" "3.201.0" - "@aws-sdk/types" "3.226.0" - "@aws-sdk/util-hex-encoding" "3.201.0" - "@aws-sdk/util-middleware" "3.226.0" - "@aws-sdk/util-uri-escape" "3.201.0" - tslib "^2.3.1" - -"@aws-sdk/smithy-client@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/smithy-client/-/smithy-client-3.226.0.tgz#d6869ca3627ca33024616c0ec3f707981e080d59" - integrity sha512-BWr1FhWSUhkSBp0TLzliD5AQBjA2Jmo9FlOOt+cBwd9BKkSGlGj+HgATYJ83Sjjg2+J6qvEZBxB78LKVHhorBw== - dependencies: - "@aws-sdk/middleware-stack" "3.226.0" - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/token-providers@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/token-providers/-/token-providers-3.226.0.tgz#30bf8201bd5583ed7c61350be0c11d69f84ea332" - integrity sha512-3ouRt2i3ve8ivg54PxPhtOTcipzf6BoQsMw0EiO23yYKujhyeFH2IkxV4EYC687xFrUjheqJf8FWU/DD8EQ/ow== - dependencies: - "@aws-sdk/client-sso-oidc" "3.226.0" - "@aws-sdk/property-provider" "3.226.0" - "@aws-sdk/shared-ini-file-loader" "3.226.0" - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/types@3.226.0", "@aws-sdk/types@^3.1.0", "@aws-sdk/types@^3.110.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/types/-/types-3.226.0.tgz#3dba2ba223fbb8ac1ebc84de0e036ce69a81d469" - integrity sha512-MmmNHrWeO4man7wpOwrAhXlevqtOV9ZLcH4RhnG5LmRce0RFOApx24HoKENfFCcOyCm5LQBlsXCqi0dZWDWU0A== - dependencies: - tslib "^2.3.1" - -"@aws-sdk/url-parser@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/url-parser/-/url-parser-3.226.0.tgz#f53d1f868b27fe74aca091a799f2af56237b15a2" - integrity sha512-p5RLE0QWyP0OcTOLmFcLdVgUcUEzmEfmdrnOxyNzomcYb0p3vUagA5zfa1HVK2azsQJFBv28GfvMnba9bGhObg== - dependencies: - "@aws-sdk/querystring-parser" "3.226.0" - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/util-arn-parser@3.208.0": - version "3.208.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-arn-parser/-/util-arn-parser-3.208.0.tgz#56b6ae4699c3140bb27dcede5146876fef04e823" - integrity sha512-QV4af+kscova9dv4VuHOgH8wEr/IIYHDGcnyVtkUEqahCejWr1Kuk+SBK0xMwnZY5LSycOtQ8aeqHOn9qOjZtA== - dependencies: - tslib "^2.3.1" - -"@aws-sdk/util-base64@3.208.0": - version "3.208.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-base64/-/util-base64-3.208.0.tgz#36b430e5396251f761590f7c2f0c5c12193f353c" - integrity sha512-PQniZph5A6N7uuEOQi+1hnMz/FSOK/8kMFyFO+4DgA1dZ5pcKcn5wiFwHkcTb/BsgVqQa3Jx0VHNnvhlS8JyTg== - dependencies: - "@aws-sdk/util-buffer-from" "3.208.0" - tslib "^2.3.1" - -"@aws-sdk/util-body-length-browser@3.188.0": - version "3.188.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.188.0.tgz#e1d949318c10a621b38575a9ef01e39f9857ddb0" - integrity sha512-8VpnwFWXhnZ/iRSl9mTf+VKOX9wDE8QtN4bj9pBfxwf90H1X7E8T6NkiZD3k+HubYf2J94e7DbeHs7fuCPW5Qg== - dependencies: - tslib "^2.3.1" - -"@aws-sdk/util-body-length-node@3.208.0": - version "3.208.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-body-length-node/-/util-body-length-node-3.208.0.tgz#baabd1fa1206ff2bd4ce3785122d86eb3258dd20" - integrity sha512-3zj50e5g7t/MQf53SsuuSf0hEELzMtD8RX8C76f12OSRo2Bca4FLLYHe0TZbxcfQHom8/hOaeZEyTyMogMglqg== - dependencies: - tslib "^2.3.1" - -"@aws-sdk/util-buffer-from@3.208.0": - version "3.208.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-buffer-from/-/util-buffer-from-3.208.0.tgz#285e86f6dc9030148a4147d65239e75cb254a1b0" - integrity sha512-7L0XUixNEFcLUGPeBF35enCvB9Xl+K6SQsmbrPk1P3mlV9mguWSDQqbOBwY1Ir0OVbD6H/ZOQU7hI/9RtRI0Zw== - dependencies: - "@aws-sdk/is-array-buffer" "3.201.0" - tslib "^2.3.1" - -"@aws-sdk/util-config-provider@3.208.0": - version "3.208.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-config-provider/-/util-config-provider-3.208.0.tgz#c485fd83fbac051337e5f6be60ea3f9fa61c0139" - integrity sha512-DSRqwrERUsT34ug+anlMBIFooBEGwM8GejC7q00Y/9IPrQy50KnG5PW2NiTjuLKNi7pdEOlwTSEocJE15eDZIg== - dependencies: - tslib "^2.3.1" - -"@aws-sdk/util-defaults-mode-browser@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.226.0.tgz#f6f3092463533f33d95d0bdb17fc5c511ad2b072" - integrity sha512-chLx+6AeMSjuPsCVbI1B4Pg3jftjjcsuTsJucjo0DKBb1VSWqPCitmOILQVvKiA2Km8TSs3VcbUuOCyDExkzAg== - dependencies: - "@aws-sdk/property-provider" "3.226.0" - "@aws-sdk/types" "3.226.0" - bowser "^2.11.0" - tslib "^2.3.1" - -"@aws-sdk/util-defaults-mode-node@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.226.0.tgz#34115b6631d0d3a7d57c1c88875e74fb5f06972f" - integrity sha512-Zr0AEj6g8gqiOhr31Pa2tdOFdPQciaAUCg3Uj/eH0znNBdVoptCj67oCW/I5v4pY4ZLZtGhr3uuoxDJH2MB3yg== - dependencies: - "@aws-sdk/config-resolver" "3.226.0" - "@aws-sdk/credential-provider-imds" "3.226.0" - "@aws-sdk/node-config-provider" "3.226.0" - "@aws-sdk/property-provider" "3.226.0" - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/util-endpoints@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-endpoints/-/util-endpoints-3.226.0.tgz#3728b2e30f6f757ae862a0b7cf3991e75f252c3f" - integrity sha512-iqOkac/zLmyPBUJd7SLN0PeZMkOmlGgD5PHmmekTClOkce2eUjK9SNX1PzL73aXPoPTyhg9QGLH8uEZEQ8YUzg== - dependencies: - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/util-hex-encoding@3.201.0": - version "3.201.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.201.0.tgz#21d7ec319240ee68c33d938e71cb79830bea315d" - integrity sha512-7t1vR1pVxKx0motd3X9rI3m/xNp78p3sHtP5yo4NP4ARpxyJ0fokBomY8ScaH2D/B+U5o9ARxldJUdMqyBlJcA== - dependencies: - tslib "^2.3.1" - -"@aws-sdk/util-locate-window@^3.0.0": - version "3.208.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-locate-window/-/util-locate-window-3.208.0.tgz#0f598fc238a1256e4bcb64d01459f03a922dd4c3" - integrity sha512-iua1A2+P7JJEDHVgvXrRJSvsnzG7stYSGQnBVphIUlemwl6nN5D+QrgbjECtrbxRz8asYFHSzhdhECqN+tFiBg== - dependencies: - tslib "^2.3.1" - -"@aws-sdk/util-middleware@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-middleware/-/util-middleware-3.226.0.tgz#7069ae96e2e00f6bb82c722e073922fb2b051ca2" - integrity sha512-B96CQnwX4gRvQdaQkdUtqvDPkrptV5+va6FVeJOocU/DbSYMAScLxtR3peMS8cnlOT6nL1Eoa42OI9AfZz1VwQ== - dependencies: - tslib "^2.3.1" - -"@aws-sdk/util-stream-browser@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-stream-browser/-/util-stream-browser-3.226.0.tgz#a14ea5c118d448f01ed6103203404f466960e5fe" - integrity sha512-ZvjlA1ySaLd0DqUWTKmL7LsxfPhroAONpzsinaHmw9aZVL40s2cADU9eWgBdHTuAOeFklL7NP0cc6UiTFHKe8g== - dependencies: - "@aws-sdk/fetch-http-handler" "3.226.0" - "@aws-sdk/types" "3.226.0" - "@aws-sdk/util-base64" "3.208.0" - "@aws-sdk/util-hex-encoding" "3.201.0" - "@aws-sdk/util-utf8-browser" "3.188.0" - tslib "^2.3.1" - -"@aws-sdk/util-stream-node@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-stream-node/-/util-stream-node-3.226.0.tgz#7c568a947f47fea1f3b268b895b6e73235e29703" - integrity sha512-HADXiIgDGoXcCLSKuPnjCLENf0iC0lzqqnymZu9H2FoACZhJB7DvJ9LnP51Pvw9lfCu+yvLzbMqSPdbXtMbRWg== - dependencies: - "@aws-sdk/node-http-handler" "3.226.0" - "@aws-sdk/types" "3.226.0" - "@aws-sdk/util-buffer-from" "3.208.0" - tslib "^2.3.1" - -"@aws-sdk/util-uri-escape@3.201.0": - version "3.201.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-uri-escape/-/util-uri-escape-3.201.0.tgz#5e708d4cde001a4558ee616f889ceacfadd2ab03" - integrity sha512-TeTWbGx4LU2c5rx0obHeDFeO9HvwYwQtMh1yniBz00pQb6Qt6YVOETVQikRZ+XRQwEyCg/dA375UplIpiy54mA== - dependencies: - tslib "^2.3.1" - -"@aws-sdk/util-user-agent-browser@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.226.0.tgz#164bb2da8d6353133784e47f0a0ae463bc9ebb73" - integrity sha512-PhBIu2h6sPJPcv2I7ELfFizdl5pNiL4LfxrasMCYXQkJvVnoXztHA1x+CQbXIdtZOIlpjC+6BjDcE0uhnpvfcA== - dependencies: - "@aws-sdk/types" "3.226.0" - bowser "^2.11.0" - tslib "^2.3.1" - -"@aws-sdk/util-user-agent-node@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.226.0.tgz#7569460b9efc6bbd5295275c51357e480ff469c2" - integrity sha512-othPc5Dz/pkYkxH+nZPhc1Al0HndQT8zHD4e9h+EZ+8lkd8n+IsnLfTS/mSJWrfiC6UlNRVw55cItstmJyMe/A== - dependencies: - "@aws-sdk/node-config-provider" "3.226.0" - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/util-utf8-browser@3.188.0", "@aws-sdk/util-utf8-browser@^3.0.0": - version "3.188.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.188.0.tgz#484762bd600401350e148277731d6744a4a92225" - integrity sha512-jt627x0+jE+Ydr9NwkFstg3cUvgWh56qdaqAMDsqgRlKD21md/6G226z/Qxl7lb1VEW2LlmCx43ai/37Qwcj2Q== - dependencies: - tslib "^2.3.1" - -"@aws-sdk/util-utf8-node@3.208.0": - version "3.208.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-utf8-node/-/util-utf8-node-3.208.0.tgz#eba17de0f92f87b98481c2e2d0ceaa05c7994d67" - integrity sha512-jKY87Acv0yWBdFxx6bveagy5FYjz+dtV8IPT7ay1E2WPWH1czoIdMAkc8tSInK31T6CRnHWkLZ1qYwCbgRfERQ== - dependencies: - "@aws-sdk/util-buffer-from" "3.208.0" - tslib "^2.3.1" - -"@aws-sdk/util-waiter@3.226.0": - version "3.226.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-waiter/-/util-waiter-3.226.0.tgz#6715afd59748cbc610ddfbc5e21124b20a7e85ac" - integrity sha512-qYQMRxnu5k8qQihJXoIWMkBOj0+XkHHj/drLdbRnwL6ni6NcG8++cs9M3DSjIcxmxgF/7SLpDjn1H3sC7cYo4g== - dependencies: - "@aws-sdk/abort-controller" "3.226.0" - "@aws-sdk/types" "3.226.0" - tslib "^2.3.1" - -"@aws-sdk/xml-builder@3.201.0": - version "3.201.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/xml-builder/-/xml-builder-3.201.0.tgz#acf0869855460528114bec17f290b224fe19a3e2" - integrity sha512-brRdB1wwMgjWEnOQsv7zSUhIQuh7DEicrfslAqHop4S4FtSI3GQAShpQqgOpMTNFYcpaWKmE/Y1MJmNY7xLCnw== - dependencies: - tslib "^2.3.1" - -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.18.6.tgz#3b25d38c89600baa2dcc219edfa88a74eb2c427a" - integrity sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q== - dependencies: - "@babel/highlight" "^7.18.6" - -"@babel/compat-data@^7.17.7", "@babel/compat-data@^7.20.0", "@babel/compat-data@^7.20.1": - version "7.20.5" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.20.5.tgz#86f172690b093373a933223b4745deeb6049e733" - integrity sha512-KZXo2t10+/jxmkhNXc7pZTqRvSOIvVv/+lJwHS+B2rErwOyjuVRh60yVpb7liQ1U5t7lLJ1bz+t8tSypUZdm0g== - -"@babel/core@^7.1.0", "@babel/core@^7.12.3", "@babel/core@^7.7.5": - version "7.20.5" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.20.5.tgz#45e2114dc6cd4ab167f81daf7820e8fa1250d113" - integrity sha512-UdOWmk4pNWTm/4DlPUl/Pt4Gz4rcEMb7CY0Y3eJl5Yz1vI8ZJGmHWaVE55LoxRjdpx0z259GE9U5STA9atUinQ== - dependencies: - "@ampproject/remapping" "^2.1.0" - "@babel/code-frame" "^7.18.6" - "@babel/generator" "^7.20.5" - "@babel/helper-compilation-targets" "^7.20.0" - "@babel/helper-module-transforms" "^7.20.2" - "@babel/helpers" "^7.20.5" - "@babel/parser" "^7.20.5" - "@babel/template" "^7.18.10" - "@babel/traverse" "^7.20.5" - "@babel/types" "^7.20.5" - convert-source-map "^1.7.0" - debug "^4.1.0" - gensync "^1.0.0-beta.2" - json5 "^2.2.1" - semver "^6.3.0" - -"@babel/generator@^7.20.5": - version "7.20.5" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.20.5.tgz#cb25abee3178adf58d6814b68517c62bdbfdda95" - integrity sha512-jl7JY2Ykn9S0yj4DQP82sYvPU+T3g0HFcWTqDLqiuA9tGRNIj9VfbtXGAYTTkyNEnQk1jkMGOdYka8aG/lulCA== - dependencies: - "@babel/types" "^7.20.5" - "@jridgewell/gen-mapping" "^0.3.2" - jsesc "^2.5.1" - -"@babel/helper-annotate-as-pure@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz#eaa49f6f80d5a33f9a5dd2276e6d6e451be0a6bb" - integrity sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA== - dependencies: - "@babel/types" "^7.18.6" - -"@babel/helper-builder-binary-assignment-operator-visitor@^7.18.6": - version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz#acd4edfd7a566d1d51ea975dff38fd52906981bb" - integrity sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw== - dependencies: - "@babel/helper-explode-assignable-expression" "^7.18.6" - "@babel/types" "^7.18.9" - -"@babel/helper-compilation-targets@^7.17.7", "@babel/helper-compilation-targets@^7.18.9", "@babel/helper-compilation-targets@^7.20.0": - version "7.20.0" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.0.tgz#6bf5374d424e1b3922822f1d9bdaa43b1a139d0a" - integrity sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ== - dependencies: - "@babel/compat-data" "^7.20.0" - "@babel/helper-validator-option" "^7.18.6" - browserslist "^4.21.3" - semver "^6.3.0" - -"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.20.5": - version "7.20.5" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.20.5.tgz#327154eedfb12e977baa4ecc72e5806720a85a06" - integrity sha512-3RCdA/EmEaikrhayahwToF0fpweU/8o2p8vhc1c/1kftHOdTKuC65kik/TLc+qfbS8JKw4qqJbne4ovICDhmww== - dependencies: - "@babel/helper-annotate-as-pure" "^7.18.6" - "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-function-name" "^7.19.0" - "@babel/helper-member-expression-to-functions" "^7.18.9" - "@babel/helper-optimise-call-expression" "^7.18.6" - "@babel/helper-replace-supers" "^7.19.1" - "@babel/helper-split-export-declaration" "^7.18.6" - -"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.20.5": - version "7.20.5" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.20.5.tgz#5ea79b59962a09ec2acf20a963a01ab4d076ccca" - integrity sha512-m68B1lkg3XDGX5yCvGO0kPx3v9WIYLnzjKfPcQiwntEQa5ZeRkPmo2X/ISJc8qxWGfwUr+kvZAeEzAwLec2r2w== - dependencies: - "@babel/helper-annotate-as-pure" "^7.18.6" - regexpu-core "^5.2.1" - -"@babel/helper-define-polyfill-provider@^0.3.3": - version "0.3.3" - resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz#8612e55be5d51f0cd1f36b4a5a83924e89884b7a" - integrity sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww== - dependencies: - "@babel/helper-compilation-targets" "^7.17.7" - "@babel/helper-plugin-utils" "^7.16.7" - debug "^4.1.1" - lodash.debounce "^4.0.8" - resolve "^1.14.2" - semver "^6.1.2" - -"@babel/helper-environment-visitor@^7.18.9": - version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz#0c0cee9b35d2ca190478756865bb3528422f51be" - integrity sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg== - -"@babel/helper-explode-assignable-expression@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz#41f8228ef0a6f1a036b8dfdfec7ce94f9a6bc096" - integrity sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg== - dependencies: - "@babel/types" "^7.18.6" - -"@babel/helper-function-name@^7.18.9", "@babel/helper-function-name@^7.19.0": - version "7.19.0" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz#941574ed5390682e872e52d3f38ce9d1bef4648c" - integrity sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w== - dependencies: - "@babel/template" "^7.18.10" - "@babel/types" "^7.19.0" - -"@babel/helper-hoist-variables@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz#d4d2c8fb4baeaa5c68b99cc8245c56554f926678" - integrity sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q== - dependencies: - "@babel/types" "^7.18.6" - -"@babel/helper-member-expression-to-functions@^7.18.9": - version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz#1531661e8375af843ad37ac692c132841e2fd815" - integrity sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg== - dependencies: - "@babel/types" "^7.18.9" - -"@babel/helper-module-imports@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz#1e3ebdbbd08aad1437b428c50204db13c5a3ca6e" - integrity sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA== - dependencies: - "@babel/types" "^7.18.6" - -"@babel/helper-module-transforms@^7.18.6", "@babel/helper-module-transforms@^7.19.6", "@babel/helper-module-transforms@^7.20.2": - version "7.20.2" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.20.2.tgz#ac53da669501edd37e658602a21ba14c08748712" - integrity sha512-zvBKyJXRbmK07XhMuujYoJ48B5yvvmM6+wcpv6Ivj4Yg6qO7NOZOSnvZN9CRl1zz1Z4cKf8YejmCMh8clOoOeA== - dependencies: - "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-module-imports" "^7.18.6" - "@babel/helper-simple-access" "^7.20.2" - "@babel/helper-split-export-declaration" "^7.18.6" - "@babel/helper-validator-identifier" "^7.19.1" - "@babel/template" "^7.18.10" - "@babel/traverse" "^7.20.1" - "@babel/types" "^7.20.2" - -"@babel/helper-optimise-call-expression@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz#9369aa943ee7da47edab2cb4e838acf09d290ffe" - integrity sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA== - dependencies: - "@babel/types" "^7.18.6" - -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.16.7", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.18.9", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": - version "7.20.2" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz#d1b9000752b18d0877cff85a5c376ce5c3121629" - integrity sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ== - -"@babel/helper-remap-async-to-generator@^7.18.6", "@babel/helper-remap-async-to-generator@^7.18.9": - version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz#997458a0e3357080e54e1d79ec347f8a8cd28519" - integrity sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA== - dependencies: - "@babel/helper-annotate-as-pure" "^7.18.6" - "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-wrap-function" "^7.18.9" - "@babel/types" "^7.18.9" - -"@babel/helper-replace-supers@^7.18.6", "@babel/helper-replace-supers@^7.19.1": - version "7.19.1" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.19.1.tgz#e1592a9b4b368aa6bdb8784a711e0bcbf0612b78" - integrity sha512-T7ahH7wV0Hfs46SFh5Jz3s0B6+o8g3c+7TMxu7xKfmHikg7EAZ3I2Qk9LFhjxXq8sL7UkP5JflezNwoZa8WvWw== - dependencies: - "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-member-expression-to-functions" "^7.18.9" - "@babel/helper-optimise-call-expression" "^7.18.6" - "@babel/traverse" "^7.19.1" - "@babel/types" "^7.19.0" - -"@babel/helper-simple-access@^7.19.4", "@babel/helper-simple-access@^7.20.2": - version "7.20.2" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz#0ab452687fe0c2cfb1e2b9e0015de07fc2d62dd9" - integrity sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA== - dependencies: - "@babel/types" "^7.20.2" - -"@babel/helper-skip-transparent-expression-wrappers@^7.18.9": - version "7.20.0" - resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz#fbe4c52f60518cab8140d77101f0e63a8a230684" - integrity sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg== - dependencies: - "@babel/types" "^7.20.0" - -"@babel/helper-split-export-declaration@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz#7367949bc75b20c6d5a5d4a97bba2824ae8ef075" - integrity sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA== - dependencies: - "@babel/types" "^7.18.6" - -"@babel/helper-string-parser@^7.19.4": - version "7.19.4" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz#38d3acb654b4701a9b77fb0615a96f775c3a9e63" - integrity sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw== - -"@babel/helper-validator-identifier@^7.18.6", "@babel/helper-validator-identifier@^7.19.1": - version "7.19.1" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz#7eea834cf32901ffdc1a7ee555e2f9c27e249ca2" - integrity sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w== - -"@babel/helper-validator-option@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz#bf0d2b5a509b1f336099e4ff36e1a63aa5db4db8" - integrity sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw== - -"@babel/helper-wrap-function@^7.18.9": - version "7.20.5" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz#75e2d84d499a0ab3b31c33bcfe59d6b8a45f62e3" - integrity sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q== - dependencies: - "@babel/helper-function-name" "^7.19.0" - "@babel/template" "^7.18.10" - "@babel/traverse" "^7.20.5" - "@babel/types" "^7.20.5" - -"@babel/helpers@^7.20.5": - version "7.20.6" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.20.6.tgz#e64778046b70e04779dfbdf924e7ebb45992c763" - integrity sha512-Pf/OjgfgFRW5bApskEz5pvidpim7tEDPlFtKcNRXWmfHGn9IEI2W2flqRQXTFb7gIPTyK++N6rVHuwKut4XK6w== - dependencies: - "@babel/template" "^7.18.10" - "@babel/traverse" "^7.20.5" - "@babel/types" "^7.20.5" - -"@babel/highlight@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.18.6.tgz#81158601e93e2563795adcbfbdf5d64be3f2ecdf" - integrity sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g== - dependencies: - "@babel/helper-validator-identifier" "^7.18.6" - chalk "^2.0.0" - js-tokens "^4.0.0" - -"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.18.10", "@babel/parser@^7.20.5": - version "7.20.5" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.20.5.tgz#7f3c7335fe417665d929f34ae5dceae4c04015e8" - integrity sha512-r27t/cy/m9uKLXQNWWebeCUHgnAZq0CpG1OwKRxzJMP1vpSU4bSIK2hq+/cp0bQxetkXx38n09rNu8jVkcK/zA== - -"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz#da5b8f9a580acdfbe53494dba45ea389fb09a4d2" - integrity sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.18.9": - version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.18.9.tgz#a11af19aa373d68d561f08e0a57242350ed0ec50" - integrity sha512-AHrP9jadvH7qlOj6PINbgSuphjQUAK7AOT7DPjBo9EHoLhQTnnK5u45e1Hd4DbSQEO9nqPWtQ89r+XEOWFScKg== - dependencies: - "@babel/helper-plugin-utils" "^7.18.9" - "@babel/helper-skip-transparent-expression-wrappers" "^7.18.9" - "@babel/plugin-proposal-optional-chaining" "^7.18.9" - -"@babel/plugin-proposal-async-generator-functions@^7.20.1": - version "7.20.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.1.tgz#352f02baa5d69f4e7529bdac39aaa02d41146af9" - integrity sha512-Gh5rchzSwE4kC+o/6T8waD0WHEQIsDmjltY8WnWRXHUdH8axZhuH86Ov9M72YhJfDrZseQwuuWaaIT/TmePp3g== - dependencies: - "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-plugin-utils" "^7.19.0" - "@babel/helper-remap-async-to-generator" "^7.18.9" - "@babel/plugin-syntax-async-generators" "^7.8.4" - -"@babel/plugin-proposal-class-properties@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz#b110f59741895f7ec21a6fff696ec46265c446a3" - integrity sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-proposal-class-static-block@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.18.6.tgz#8aa81d403ab72d3962fc06c26e222dacfc9b9020" - integrity sha512-+I3oIiNxrCpup3Gi8n5IGMwj0gOCAjcJUSQEcotNnCCPMEnixawOQ+KeJPlgfjzx+FKQ1QSyZOWe7wmoJp7vhw== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/plugin-syntax-class-static-block" "^7.14.5" - -"@babel/plugin-proposal-dynamic-import@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz#72bcf8d408799f547d759298c3c27c7e7faa4d94" - integrity sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/plugin-syntax-dynamic-import" "^7.8.3" - -"@babel/plugin-proposal-export-namespace-from@^7.18.9": - version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz#5f7313ab348cdb19d590145f9247540e94761203" - integrity sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA== - dependencies: - "@babel/helper-plugin-utils" "^7.18.9" - "@babel/plugin-syntax-export-namespace-from" "^7.8.3" - -"@babel/plugin-proposal-json-strings@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz#7e8788c1811c393aff762817e7dbf1ebd0c05f0b" - integrity sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/plugin-syntax-json-strings" "^7.8.3" - -"@babel/plugin-proposal-logical-assignment-operators@^7.18.9": - version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.18.9.tgz#8148cbb350483bf6220af06fa6db3690e14b2e23" - integrity sha512-128YbMpjCrP35IOExw2Fq+x55LMP42DzhOhX2aNNIdI9avSWl2PI0yuBWarr3RYpZBSPtabfadkH2yeRiMD61Q== - dependencies: - "@babel/helper-plugin-utils" "^7.18.9" - "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" - -"@babel/plugin-proposal-nullish-coalescing-operator@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz#fdd940a99a740e577d6c753ab6fbb43fdb9467e1" - integrity sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" - -"@babel/plugin-proposal-numeric-separator@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz#899b14fbafe87f053d2c5ff05b36029c62e13c75" - integrity sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/plugin-syntax-numeric-separator" "^7.10.4" - -"@babel/plugin-proposal-object-rest-spread@^7.20.2": - version "7.20.2" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.2.tgz#a556f59d555f06961df1e572bb5eca864c84022d" - integrity sha512-Ks6uej9WFK+fvIMesSqbAto5dD8Dz4VuuFvGJFKgIGSkJuRGcrwGECPA1fDgQK3/DbExBJpEkTeYeB8geIFCSQ== - dependencies: - "@babel/compat-data" "^7.20.1" - "@babel/helper-compilation-targets" "^7.20.0" - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-transform-parameters" "^7.20.1" - -"@babel/plugin-proposal-optional-catch-binding@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz#f9400d0e6a3ea93ba9ef70b09e72dd6da638a2cb" - integrity sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" - -"@babel/plugin-proposal-optional-chaining@^7.18.9": - version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.18.9.tgz#e8e8fe0723f2563960e4bf5e9690933691915993" - integrity sha512-v5nwt4IqBXihxGsW2QmCWMDS3B3bzGIk/EQVZz2ei7f3NJl8NzAJVvUmpDW5q1CRNY+Beb/k58UAH1Km1N411w== - dependencies: - "@babel/helper-plugin-utils" "^7.18.9" - "@babel/helper-skip-transparent-expression-wrappers" "^7.18.9" - "@babel/plugin-syntax-optional-chaining" "^7.8.3" - -"@babel/plugin-proposal-private-methods@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz#5209de7d213457548a98436fa2882f52f4be6bea" - integrity sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-proposal-private-property-in-object@^7.18.6": - version "7.20.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.20.5.tgz#309c7668f2263f1c711aa399b5a9a6291eef6135" - integrity sha512-Vq7b9dUA12ByzB4EjQTPo25sFhY+08pQDBSZRtUAkj7lb7jahaHR5igera16QZ+3my1nYR4dKsNdYj5IjPHilQ== - dependencies: - "@babel/helper-annotate-as-pure" "^7.18.6" - "@babel/helper-create-class-features-plugin" "^7.20.5" - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/plugin-syntax-private-property-in-object" "^7.14.5" - -"@babel/plugin-proposal-unicode-property-regex@^7.18.6", "@babel/plugin-proposal-unicode-property-regex@^7.4.4": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz#af613d2cd5e643643b65cded64207b15c85cb78e" - integrity sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-syntax-async-generators@^7.8.4": - version "7.8.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" - integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-bigint@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea" - integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-class-properties@^7.12.13", "@babel/plugin-syntax-class-properties@^7.8.3": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" - integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - -"@babel/plugin-syntax-class-static-block@^7.14.5": - version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz#195df89b146b4b78b3bf897fd7a257c84659d406" - integrity sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw== - dependencies: - "@babel/helper-plugin-utils" "^7.14.5" - -"@babel/plugin-syntax-dynamic-import@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3" - integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-export-namespace-from@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz#028964a9ba80dbc094c915c487ad7c4e7a66465a" - integrity sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q== - dependencies: - "@babel/helper-plugin-utils" "^7.8.3" - -"@babel/plugin-syntax-import-assertions@^7.20.0": - version "7.20.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz#bb50e0d4bea0957235390641209394e87bdb9cc4" - integrity sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ== - dependencies: - "@babel/helper-plugin-utils" "^7.19.0" - -"@babel/plugin-syntax-import-meta@^7.8.3": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" - integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-syntax-json-strings@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" - integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-logical-assignment-operators@^7.10.4", "@babel/plugin-syntax-logical-assignment-operators@^7.8.3": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" - integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-syntax-nullish-coalescing-operator@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9" - integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-numeric-separator@^7.10.4", "@babel/plugin-syntax-numeric-separator@^7.8.3": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" - integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-syntax-object-rest-spread@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" - integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-optional-catch-binding@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1" - integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-optional-chaining@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a" - integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-private-property-in-object@^7.14.5": - version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz#0dc6671ec0ea22b6e94a1114f857970cd39de1ad" - integrity sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg== - dependencies: - "@babel/helper-plugin-utils" "^7.14.5" - -"@babel/plugin-syntax-top-level-await@^7.14.5", "@babel/plugin-syntax-top-level-await@^7.8.3": - version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c" - integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw== - dependencies: - "@babel/helper-plugin-utils" "^7.14.5" - -"@babel/plugin-transform-arrow-functions@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.18.6.tgz#19063fcf8771ec7b31d742339dac62433d0611fe" - integrity sha512-9S9X9RUefzrsHZmKMbDXxweEH+YlE8JJEuat9FdvW9Qh1cw7W64jELCtWNkPBPX5En45uy28KGvA/AySqUh8CQ== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-async-to-generator@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.18.6.tgz#ccda3d1ab9d5ced5265fdb13f1882d5476c71615" - integrity sha512-ARE5wZLKnTgPW7/1ftQmSi1CmkqqHo2DNmtztFhvgtOWSDfq0Cq9/9L+KnZNYSNrydBekhW3rwShduf59RoXag== - dependencies: - "@babel/helper-module-imports" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/helper-remap-async-to-generator" "^7.18.6" - -"@babel/plugin-transform-block-scoped-functions@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz#9187bf4ba302635b9d70d986ad70f038726216a8" - integrity sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-block-scoping@^7.20.2": - version "7.20.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.20.5.tgz#401215f9dc13dc5262940e2e527c9536b3d7f237" - integrity sha512-WvpEIW9Cbj9ApF3yJCjIEEf1EiNJLtXagOrL5LNWEZOo3jv8pmPoYTSNJQvqej8OavVlgOoOPw6/htGZro6IkA== - dependencies: - "@babel/helper-plugin-utils" "^7.20.2" - -"@babel/plugin-transform-classes@^7.20.2": - version "7.20.2" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.20.2.tgz#c0033cf1916ccf78202d04be4281d161f6709bb2" - integrity sha512-9rbPp0lCVVoagvtEyQKSo5L8oo0nQS/iif+lwlAz29MccX2642vWDlSZK+2T2buxbopotId2ld7zZAzRfz9j1g== - dependencies: - "@babel/helper-annotate-as-pure" "^7.18.6" - "@babel/helper-compilation-targets" "^7.20.0" - "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-function-name" "^7.19.0" - "@babel/helper-optimise-call-expression" "^7.18.6" - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/helper-replace-supers" "^7.19.1" - "@babel/helper-split-export-declaration" "^7.18.6" - globals "^11.1.0" - -"@babel/plugin-transform-computed-properties@^7.18.9": - version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.18.9.tgz#2357a8224d402dad623caf6259b611e56aec746e" - integrity sha512-+i0ZU1bCDymKakLxn5srGHrsAPRELC2WIbzwjLhHW9SIE1cPYkLCL0NlnXMZaM1vhfgA2+M7hySk42VBvrkBRw== - dependencies: - "@babel/helper-plugin-utils" "^7.18.9" - -"@babel/plugin-transform-destructuring@^7.20.2": - version "7.20.2" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.20.2.tgz#c23741cfa44ddd35f5e53896e88c75331b8b2792" - integrity sha512-mENM+ZHrvEgxLTBXUiQ621rRXZes3KWUv6NdQlrnr1TkWVw+hUjQBZuP2X32qKlrlG2BzgR95gkuCRSkJl8vIw== - dependencies: - "@babel/helper-plugin-utils" "^7.20.2" - -"@babel/plugin-transform-dotall-regex@^7.18.6", "@babel/plugin-transform-dotall-regex@^7.4.4": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz#b286b3e7aae6c7b861e45bed0a2fafd6b1a4fef8" - integrity sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-duplicate-keys@^7.18.9": - version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz#687f15ee3cdad6d85191eb2a372c4528eaa0ae0e" - integrity sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw== - dependencies: - "@babel/helper-plugin-utils" "^7.18.9" - -"@babel/plugin-transform-exponentiation-operator@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz#421c705f4521888c65e91fdd1af951bfefd4dacd" - integrity sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw== - dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-for-of@^7.18.8": - version "7.18.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.8.tgz#6ef8a50b244eb6a0bdbad0c7c61877e4e30097c1" - integrity sha512-yEfTRnjuskWYo0k1mHUqrVWaZwrdq8AYbfrpqULOJOaucGSp4mNMVps+YtA8byoevxS/urwU75vyhQIxcCgiBQ== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-function-name@^7.18.9": - version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz#cc354f8234e62968946c61a46d6365440fc764e0" - integrity sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ== - dependencies: - "@babel/helper-compilation-targets" "^7.18.9" - "@babel/helper-function-name" "^7.18.9" - "@babel/helper-plugin-utils" "^7.18.9" - -"@babel/plugin-transform-literals@^7.18.9": - version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz#72796fdbef80e56fba3c6a699d54f0de557444bc" - integrity sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg== - dependencies: - "@babel/helper-plugin-utils" "^7.18.9" - -"@babel/plugin-transform-member-expression-literals@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz#ac9fdc1a118620ac49b7e7a5d2dc177a1bfee88e" - integrity sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-modules-amd@^7.19.6": - version "7.19.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.19.6.tgz#aca391801ae55d19c4d8d2ebfeaa33df5f2a2cbd" - integrity sha512-uG3od2mXvAtIFQIh0xrpLH6r5fpSQN04gIVovl+ODLdUMANokxQLZnPBHcjmv3GxRjnqwLuHvppjjcelqUFZvg== - dependencies: - "@babel/helper-module-transforms" "^7.19.6" - "@babel/helper-plugin-utils" "^7.19.0" - -"@babel/plugin-transform-modules-commonjs@^7.19.6": - version "7.19.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.19.6.tgz#25b32feef24df8038fc1ec56038917eacb0b730c" - integrity sha512-8PIa1ym4XRTKuSsOUXqDG0YaOlEuTVvHMe5JCfgBMOtHvJKw/4NGovEGN33viISshG/rZNVrACiBmPQLvWN8xQ== - dependencies: - "@babel/helper-module-transforms" "^7.19.6" - "@babel/helper-plugin-utils" "^7.19.0" - "@babel/helper-simple-access" "^7.19.4" - -"@babel/plugin-transform-modules-systemjs@^7.19.6": - version "7.19.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.19.6.tgz#59e2a84064b5736a4471b1aa7b13d4431d327e0d" - integrity sha512-fqGLBepcc3kErfR9R3DnVpURmckXP7gj7bAlrTQyBxrigFqszZCkFkcoxzCp2v32XmwXLvbw+8Yq9/b+QqksjQ== - dependencies: - "@babel/helper-hoist-variables" "^7.18.6" - "@babel/helper-module-transforms" "^7.19.6" - "@babel/helper-plugin-utils" "^7.19.0" - "@babel/helper-validator-identifier" "^7.19.1" - -"@babel/plugin-transform-modules-umd@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz#81d3832d6034b75b54e62821ba58f28ed0aab4b9" - integrity sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ== - dependencies: - "@babel/helper-module-transforms" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-named-capturing-groups-regex@^7.19.1": - version "7.20.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.20.5.tgz#626298dd62ea51d452c3be58b285d23195ba69a8" - integrity sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.20.5" - "@babel/helper-plugin-utils" "^7.20.2" - -"@babel/plugin-transform-new-target@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz#d128f376ae200477f37c4ddfcc722a8a1b3246a8" - integrity sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-object-super@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz#fb3c6ccdd15939b6ff7939944b51971ddc35912c" - integrity sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/helper-replace-supers" "^7.18.6" - -"@babel/plugin-transform-parameters@^7.20.1": - version "7.20.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.20.5.tgz#f8f9186c681d10c3de7620c916156d893c8a019e" - integrity sha512-h7plkOmcndIUWXZFLgpbrh2+fXAi47zcUX7IrOQuZdLD0I0KvjJ6cvo3BEcAOsDOcZhVKGJqv07mkSqK0y2isQ== - dependencies: - "@babel/helper-plugin-utils" "^7.20.2" - -"@babel/plugin-transform-property-literals@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz#e22498903a483448e94e032e9bbb9c5ccbfc93a3" - integrity sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-regenerator@^7.18.6": - version "7.20.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.20.5.tgz#57cda588c7ffb7f4f8483cc83bdcea02a907f04d" - integrity sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ== - dependencies: - "@babel/helper-plugin-utils" "^7.20.2" - regenerator-transform "^0.15.1" - -"@babel/plugin-transform-reserved-words@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz#b1abd8ebf8edaa5f7fe6bbb8d2133d23b6a6f76a" - integrity sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-shorthand-properties@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz#6d6df7983d67b195289be24909e3f12a8f664dc9" - integrity sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-spread@^7.19.0": - version "7.19.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.19.0.tgz#dd60b4620c2fec806d60cfaae364ec2188d593b6" - integrity sha512-RsuMk7j6n+r752EtzyScnWkQyuJdli6LdO5Klv8Yx0OfPVTcQkIUfS8clx5e9yHXzlnhOZF3CbQ8C2uP5j074w== - dependencies: - "@babel/helper-plugin-utils" "^7.19.0" - "@babel/helper-skip-transparent-expression-wrappers" "^7.18.9" - -"@babel/plugin-transform-sticky-regex@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz#c6706eb2b1524028e317720339583ad0f444adcc" - integrity sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q== - dependencies: - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/plugin-transform-template-literals@^7.18.9": - version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz#04ec6f10acdaa81846689d63fae117dd9c243a5e" - integrity sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA== - dependencies: - "@babel/helper-plugin-utils" "^7.18.9" - -"@babel/plugin-transform-typeof-symbol@^7.18.9": - version "7.18.9" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz#c8cea68263e45addcd6afc9091429f80925762c0" - integrity sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw== - dependencies: - "@babel/helper-plugin-utils" "^7.18.9" - -"@babel/plugin-transform-unicode-escapes@^7.18.10": - version "7.18.10" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz#1ecfb0eda83d09bbcb77c09970c2dd55832aa246" - integrity sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ== - dependencies: - "@babel/helper-plugin-utils" "^7.18.9" - -"@babel/plugin-transform-unicode-regex@^7.18.6": - version "7.18.6" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz#194317225d8c201bbae103364ffe9e2cea36cdca" - integrity sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - -"@babel/preset-env@^7.14.4": - version "7.20.2" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.20.2.tgz#9b1642aa47bb9f43a86f9630011780dab7f86506" - integrity sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg== - dependencies: - "@babel/compat-data" "^7.20.1" - "@babel/helper-compilation-targets" "^7.20.0" - "@babel/helper-plugin-utils" "^7.20.2" - "@babel/helper-validator-option" "^7.18.6" - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.18.6" - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.18.9" - "@babel/plugin-proposal-async-generator-functions" "^7.20.1" - "@babel/plugin-proposal-class-properties" "^7.18.6" - "@babel/plugin-proposal-class-static-block" "^7.18.6" - "@babel/plugin-proposal-dynamic-import" "^7.18.6" - "@babel/plugin-proposal-export-namespace-from" "^7.18.9" - "@babel/plugin-proposal-json-strings" "^7.18.6" - "@babel/plugin-proposal-logical-assignment-operators" "^7.18.9" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.18.6" - "@babel/plugin-proposal-numeric-separator" "^7.18.6" - "@babel/plugin-proposal-object-rest-spread" "^7.20.2" - "@babel/plugin-proposal-optional-catch-binding" "^7.18.6" - "@babel/plugin-proposal-optional-chaining" "^7.18.9" - "@babel/plugin-proposal-private-methods" "^7.18.6" - "@babel/plugin-proposal-private-property-in-object" "^7.18.6" - "@babel/plugin-proposal-unicode-property-regex" "^7.18.6" - "@babel/plugin-syntax-async-generators" "^7.8.4" - "@babel/plugin-syntax-class-properties" "^7.12.13" - "@babel/plugin-syntax-class-static-block" "^7.14.5" - "@babel/plugin-syntax-dynamic-import" "^7.8.3" - "@babel/plugin-syntax-export-namespace-from" "^7.8.3" - "@babel/plugin-syntax-import-assertions" "^7.20.0" - "@babel/plugin-syntax-json-strings" "^7.8.3" - "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" - "@babel/plugin-syntax-numeric-separator" "^7.10.4" - "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" - "@babel/plugin-syntax-optional-chaining" "^7.8.3" - "@babel/plugin-syntax-private-property-in-object" "^7.14.5" - "@babel/plugin-syntax-top-level-await" "^7.14.5" - "@babel/plugin-transform-arrow-functions" "^7.18.6" - "@babel/plugin-transform-async-to-generator" "^7.18.6" - "@babel/plugin-transform-block-scoped-functions" "^7.18.6" - "@babel/plugin-transform-block-scoping" "^7.20.2" - "@babel/plugin-transform-classes" "^7.20.2" - "@babel/plugin-transform-computed-properties" "^7.18.9" - "@babel/plugin-transform-destructuring" "^7.20.2" - "@babel/plugin-transform-dotall-regex" "^7.18.6" - "@babel/plugin-transform-duplicate-keys" "^7.18.9" - "@babel/plugin-transform-exponentiation-operator" "^7.18.6" - "@babel/plugin-transform-for-of" "^7.18.8" - "@babel/plugin-transform-function-name" "^7.18.9" - "@babel/plugin-transform-literals" "^7.18.9" - "@babel/plugin-transform-member-expression-literals" "^7.18.6" - "@babel/plugin-transform-modules-amd" "^7.19.6" - "@babel/plugin-transform-modules-commonjs" "^7.19.6" - "@babel/plugin-transform-modules-systemjs" "^7.19.6" - "@babel/plugin-transform-modules-umd" "^7.18.6" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.19.1" - "@babel/plugin-transform-new-target" "^7.18.6" - "@babel/plugin-transform-object-super" "^7.18.6" - "@babel/plugin-transform-parameters" "^7.20.1" - "@babel/plugin-transform-property-literals" "^7.18.6" - "@babel/plugin-transform-regenerator" "^7.18.6" - "@babel/plugin-transform-reserved-words" "^7.18.6" - "@babel/plugin-transform-shorthand-properties" "^7.18.6" - "@babel/plugin-transform-spread" "^7.19.0" - "@babel/plugin-transform-sticky-regex" "^7.18.6" - "@babel/plugin-transform-template-literals" "^7.18.9" - "@babel/plugin-transform-typeof-symbol" "^7.18.9" - "@babel/plugin-transform-unicode-escapes" "^7.18.10" - "@babel/plugin-transform-unicode-regex" "^7.18.6" - "@babel/preset-modules" "^0.1.5" - "@babel/types" "^7.20.2" - babel-plugin-polyfill-corejs2 "^0.3.3" - babel-plugin-polyfill-corejs3 "^0.6.0" - babel-plugin-polyfill-regenerator "^0.4.1" - core-js-compat "^3.25.1" - semver "^6.3.0" - -"@babel/preset-modules@^0.1.5": - version "0.1.5" - resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.5.tgz#ef939d6e7f268827e1841638dc6ff95515e115d9" - integrity sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-proposal-unicode-property-regex" "^7.4.4" - "@babel/plugin-transform-dotall-regex" "^7.4.4" - "@babel/types" "^7.4.4" - esutils "^2.0.2" - -"@babel/runtime@^7.8.4": - version "7.20.6" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.20.6.tgz#facf4879bfed9b5326326273a64220f099b0fce3" - integrity sha512-Q+8MqP7TiHMWzSfwiJwXCjyf4GYA4Dgw3emg/7xmwsdLJOZUp+nMqcOwOzzYheuM1rhDu8FSj2l0aoMygEuXuA== - dependencies: - regenerator-runtime "^0.13.11" - -"@babel/template@^7.18.10", "@babel/template@^7.3.3": - version "7.18.10" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.18.10.tgz#6f9134835970d1dbf0835c0d100c9f38de0c5e71" - integrity sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA== - dependencies: - "@babel/code-frame" "^7.18.6" - "@babel/parser" "^7.18.10" - "@babel/types" "^7.18.10" - -"@babel/traverse@^7.1.0", "@babel/traverse@^7.19.1", "@babel/traverse@^7.20.1", "@babel/traverse@^7.20.5": - version "7.20.5" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.20.5.tgz#78eb244bea8270fdda1ef9af22a5d5e5b7e57133" - integrity sha512-WM5ZNN3JITQIq9tFZaw1ojLU3WgWdtkxnhM1AegMS+PvHjkM5IXjmYEGY7yukz5XS4sJyEf2VzWjI8uAavhxBQ== - dependencies: - "@babel/code-frame" "^7.18.6" - "@babel/generator" "^7.20.5" - "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-function-name" "^7.19.0" - "@babel/helper-hoist-variables" "^7.18.6" - "@babel/helper-split-export-declaration" "^7.18.6" - "@babel/parser" "^7.20.5" - "@babel/types" "^7.20.5" - debug "^4.1.0" - globals "^11.1.0" - -"@babel/types@^7.0.0", "@babel/types@^7.18.10", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.19.0", "@babel/types@^7.20.0", "@babel/types@^7.20.2", "@babel/types@^7.20.5", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": - version "7.20.5" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.20.5.tgz#e206ae370b5393d94dfd1d04cd687cace53efa84" - integrity sha512-c9fst/h2/dcF7H+MJKZ2T0KjEQ8hY/BNnDk/H3XY8C4Aw/eWQXWn/lWntHF9ooUBnGmEvbfGrTgLWc+um0YDUg== - dependencies: - "@babel/helper-string-parser" "^7.19.4" - "@babel/helper-validator-identifier" "^7.19.1" - to-fast-properties "^2.0.0" - -"@bcoe/v8-coverage@^0.2.3": - version "0.2.3" - resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" - integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== - -"@cnakazawa/watch@^1.0.3": - version "1.0.4" - resolved "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.4.tgz#f864ae85004d0fcab6f50be9141c4da368d1656a" - integrity sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ== - dependencies: - exec-sh "^0.3.2" - minimist "^1.2.0" - -"@istanbuljs/load-nyc-config@^1.0.0": - version "1.1.0" - resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" - integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ== - dependencies: - camelcase "^5.3.1" - find-up "^4.1.0" - get-package-type "^0.1.0" - js-yaml "^3.13.1" - resolve-from "^5.0.0" - -"@istanbuljs/schema@^0.1.2": - version "0.1.3" - resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" - integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== - -"@jest/console@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-26.6.2.tgz#4e04bc464014358b03ab4937805ee36a0aeb98f2" - integrity sha512-IY1R2i2aLsLr7Id3S6p2BA82GNWryt4oSvEXLAKc+L2zdi89dSkE8xC1C+0kpATG4JhBJREnQOH7/zmccM2B0g== - dependencies: - "@jest/types" "^26.6.2" - "@types/node" "*" - chalk "^4.0.0" - jest-message-util "^26.6.2" - jest-util "^26.6.2" - slash "^3.0.0" - -"@jest/core@^26.6.3": - version "26.6.3" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-26.6.3.tgz#7639fcb3833d748a4656ada54bde193051e45fad" - integrity sha512-xvV1kKbhfUqFVuZ8Cyo+JPpipAHHAV3kcDBftiduK8EICXmTFddryy3P7NfZt8Pv37rA9nEJBKCCkglCPt/Xjw== - dependencies: - "@jest/console" "^26.6.2" - "@jest/reporters" "^26.6.2" - "@jest/test-result" "^26.6.2" - "@jest/transform" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/node" "*" - ansi-escapes "^4.2.1" - chalk "^4.0.0" - exit "^0.1.2" - graceful-fs "^4.2.4" - jest-changed-files "^26.6.2" - jest-config "^26.6.3" - jest-haste-map "^26.6.2" - jest-message-util "^26.6.2" - jest-regex-util "^26.0.0" - jest-resolve "^26.6.2" - jest-resolve-dependencies "^26.6.3" - jest-runner "^26.6.3" - jest-runtime "^26.6.3" - jest-snapshot "^26.6.2" - jest-util "^26.6.2" - jest-validate "^26.6.2" - jest-watcher "^26.6.2" - micromatch "^4.0.2" - p-each-series "^2.1.0" - rimraf "^3.0.0" - slash "^3.0.0" - strip-ansi "^6.0.0" - -"@jest/environment@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-26.6.2.tgz#ba364cc72e221e79cc8f0a99555bf5d7577cf92c" - integrity sha512-nFy+fHl28zUrRsCeMB61VDThV1pVTtlEokBRgqPrcT1JNq4yRNIyTHfyht6PqtUvY9IsuLGTrbG8kPXjSZIZwA== - dependencies: - "@jest/fake-timers" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/node" "*" - jest-mock "^26.6.2" - -"@jest/fake-timers@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-26.6.2.tgz#459c329bcf70cee4af4d7e3f3e67848123535aad" - integrity sha512-14Uleatt7jdzefLPYM3KLcnUl1ZNikaKq34enpb5XG9i81JpppDb5muZvonvKyrl7ftEHkKS5L5/eB/kxJ+bvA== - dependencies: - "@jest/types" "^26.6.2" - "@sinonjs/fake-timers" "^6.0.1" - "@types/node" "*" - jest-message-util "^26.6.2" - jest-mock "^26.6.2" - jest-util "^26.6.2" - -"@jest/globals@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-26.6.2.tgz#5b613b78a1aa2655ae908eba638cc96a20df720a" - integrity sha512-85Ltnm7HlB/KesBUuALwQ68YTU72w9H2xW9FjZ1eL1U3lhtefjjl5c2MiUbpXt/i6LaPRvoOFJ22yCBSfQ0JIA== - dependencies: - "@jest/environment" "^26.6.2" - "@jest/types" "^26.6.2" - expect "^26.6.2" - -"@jest/reporters@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-26.6.2.tgz#1f518b99637a5f18307bd3ecf9275f6882a667f6" - integrity sha512-h2bW53APG4HvkOnVMo8q3QXa6pcaNt1HkwVsOPMBV6LD/q9oSpxNSYZQYkAnjdMjrJ86UuYeLo+aEZClV6opnw== - dependencies: - "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^26.6.2" - "@jest/test-result" "^26.6.2" - "@jest/transform" "^26.6.2" - "@jest/types" "^26.6.2" - chalk "^4.0.0" - collect-v8-coverage "^1.0.0" - exit "^0.1.2" - glob "^7.1.2" - graceful-fs "^4.2.4" - istanbul-lib-coverage "^3.0.0" - istanbul-lib-instrument "^4.0.3" - istanbul-lib-report "^3.0.0" - istanbul-lib-source-maps "^4.0.0" - istanbul-reports "^3.0.2" - jest-haste-map "^26.6.2" - jest-resolve "^26.6.2" - jest-util "^26.6.2" - jest-worker "^26.6.2" - slash "^3.0.0" - source-map "^0.6.0" - string-length "^4.0.1" - terminal-link "^2.0.0" - v8-to-istanbul "^7.0.0" - optionalDependencies: - node-notifier "^8.0.0" - -"@jest/source-map@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-26.6.2.tgz#29af5e1e2e324cafccc936f218309f54ab69d535" - integrity sha512-YwYcCwAnNmOVsZ8mr3GfnzdXDAl4LaenZP5z+G0c8bzC9/dugL8zRmxZzdoTl4IaS3CryS1uWnROLPFmb6lVvA== - dependencies: - callsites "^3.0.0" - graceful-fs "^4.2.4" - source-map "^0.6.0" - -"@jest/test-result@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-26.6.2.tgz#55da58b62df134576cc95476efa5f7949e3f5f18" - integrity sha512-5O7H5c/7YlojphYNrK02LlDIV2GNPYisKwHm2QTKjNZeEzezCbwYs9swJySv2UfPMyZ0VdsmMv7jIlD/IKYQpQ== - dependencies: - "@jest/console" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/istanbul-lib-coverage" "^2.0.0" - collect-v8-coverage "^1.0.0" - -"@jest/test-sequencer@^26.6.3": - version "26.6.3" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-26.6.3.tgz#98e8a45100863886d074205e8ffdc5a7eb582b17" - integrity sha512-YHlVIjP5nfEyjlrSr8t/YdNfU/1XEt7c5b4OxcXCjyRhjzLYu/rO69/WHPuYcbCWkz8kAeZVZp2N2+IOLLEPGw== - dependencies: - "@jest/test-result" "^26.6.2" - graceful-fs "^4.2.4" - jest-haste-map "^26.6.2" - jest-runner "^26.6.3" - jest-runtime "^26.6.3" - -"@jest/transform@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-26.6.2.tgz#5ac57c5fa1ad17b2aae83e73e45813894dcf2e4b" - integrity sha512-E9JjhUgNzvuQ+vVAL21vlyfy12gP0GhazGgJC4h6qUt1jSdUXGWJ1wfu/X7Sd8etSgxV4ovT1pb9v5D6QW4XgA== - dependencies: - "@babel/core" "^7.1.0" - "@jest/types" "^26.6.2" - babel-plugin-istanbul "^6.0.0" - chalk "^4.0.0" - convert-source-map "^1.4.0" - fast-json-stable-stringify "^2.0.0" - graceful-fs "^4.2.4" - jest-haste-map "^26.6.2" - jest-regex-util "^26.0.0" - jest-util "^26.6.2" - micromatch "^4.0.2" - pirates "^4.0.1" - slash "^3.0.0" - source-map "^0.6.1" - write-file-atomic "^3.0.0" - -"@jest/types@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.6.2.tgz#bef5a532030e1d88a2f5a6d933f84e97226ed48e" - integrity sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ== - dependencies: - "@types/istanbul-lib-coverage" "^2.0.0" - "@types/istanbul-reports" "^3.0.0" - "@types/node" "*" - "@types/yargs" "^15.0.0" - chalk "^4.0.0" - -"@jridgewell/gen-mapping@^0.1.0": - version "0.1.1" - resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz#e5d2e450306a9491e3bd77e323e38d7aff315996" - integrity sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w== - dependencies: - "@jridgewell/set-array" "^1.0.0" - "@jridgewell/sourcemap-codec" "^1.4.10" - -"@jridgewell/gen-mapping@^0.3.2": - version "0.3.2" - resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz#c1aedc61e853f2bb9f5dfe6d4442d3b565b253b9" - integrity sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A== - dependencies: - "@jridgewell/set-array" "^1.0.1" - "@jridgewell/sourcemap-codec" "^1.4.10" - "@jridgewell/trace-mapping" "^0.3.9" - -"@jridgewell/resolve-uri@3.1.0": - version "3.1.0" - resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78" - integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== - -"@jridgewell/set-array@^1.0.0", "@jridgewell/set-array@^1.0.1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" - integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== - -"@jridgewell/sourcemap-codec@1.4.14", "@jridgewell/sourcemap-codec@^1.4.10": - version "1.4.14" - resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24" - integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== - -"@jridgewell/trace-mapping@^0.3.9": - version "0.3.17" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz#793041277af9073b0951a7fe0f0d8c4c98c36985" - integrity sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g== - dependencies: - "@jridgewell/resolve-uri" "3.1.0" - "@jridgewell/sourcemap-codec" "1.4.14" - -"@sinonjs/commons@^1.7.0": - version "1.8.6" - resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.6.tgz#80c516a4dc264c2a69115e7578d62581ff455ed9" - integrity sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ== - dependencies: - type-detect "4.0.8" - -"@sinonjs/fake-timers@^6.0.1": - version "6.0.1" - resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz#293674fccb3262ac782c7aadfdeca86b10c75c40" - integrity sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA== - dependencies: - "@sinonjs/commons" "^1.7.0" - -"@tootallnate/once@1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" - integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== - -"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.7": - version "7.1.20" - resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.20.tgz#e168cdd612c92a2d335029ed62ac94c95b362359" - integrity sha512-PVb6Bg2QuscZ30FvOU7z4guG6c926D9YRvOxEaelzndpMsvP+YM74Q/dAFASpg2l6+XLalxSGxcq/lrgYWZtyQ== - dependencies: - "@babel/parser" "^7.1.0" - "@babel/types" "^7.0.0" - "@types/babel__generator" "*" - "@types/babel__template" "*" - "@types/babel__traverse" "*" - -"@types/babel__generator@*": - version "7.6.4" - resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.4.tgz#1f20ce4c5b1990b37900b63f050182d28c2439b7" - integrity sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg== - dependencies: - "@babel/types" "^7.0.0" - -"@types/babel__template@*": - version "7.4.1" - resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.1.tgz#3d1a48fd9d6c0edfd56f2ff578daed48f36c8969" - integrity sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g== - dependencies: - "@babel/parser" "^7.1.0" - "@babel/types" "^7.0.0" - -"@types/babel__traverse@*", "@types/babel__traverse@^7.0.4", "@types/babel__traverse@^7.0.6": - version "7.18.3" - resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.18.3.tgz#dfc508a85781e5698d5b33443416b6268c4b3e8d" - integrity sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w== - dependencies: - "@babel/types" "^7.3.0" - -"@types/graceful-fs@^4.1.2": - version "4.1.5" - resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz#21ffba0d98da4350db64891f92a9e5db3cdb4e15" - integrity sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw== - dependencies: - "@types/node" "*" - -"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": - version "2.0.4" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44" - integrity sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g== - -"@types/istanbul-lib-report@*": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#c14c24f18ea8190c118ee7562b7ff99a36552686" - integrity sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg== - dependencies: - "@types/istanbul-lib-coverage" "*" - -"@types/istanbul-reports@^3.0.0": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff" - integrity sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw== - dependencies: - "@types/istanbul-lib-report" "*" - -"@types/node@*": - version "18.11.13" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.11.13.tgz#dff34f226ec1ac0432ae3b136ec5552bd3b9c0fe" - integrity sha512-IASpMGVcWpUsx5xBOrxMj7Bl8lqfuTY7FKAnPmu5cHkfQVWF8GulWS1jbRqA934qZL35xh5xN/+Xe/i26Bod4w== - -"@types/node@^14.0.23": - version "14.18.34" - resolved "https://registry.yarnpkg.com/@types/node/-/node-14.18.34.tgz#cd2e6fa0dbfb08a62582a7b967558e73c32061ec" - integrity sha512-hcU9AIQVHmPnmjRK+XUUYlILlr9pQrsqSrwov/JK1pnf3GTQowVBhx54FbvM0AU/VXGH4i3+vgXS5EguR7fysA== - -"@types/normalize-package-data@^2.4.0": - version "2.4.1" - resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz#d3357479a0fdfdd5907fe67e17e0a85c906e1301" - integrity sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw== - -"@types/prettier@^2.0.0": - version "2.7.1" - resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.7.1.tgz#dfd20e2dc35f027cdd6c1908e80a5ddc7499670e" - integrity sha512-ri0UmynRRvZiiUJdiz38MmIblKK+oH30MztdBVR95dv/Ubw6neWSb8u1XpRb72L4qsZOhz+L+z9JD40SJmfWow== - -"@types/stack-utils@^2.0.0": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c" - integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw== - -"@types/yargs-parser@*": - version "21.0.0" - resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.0.tgz#0c60e537fa790f5f9472ed2776c2b71ec117351b" - integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA== - -"@types/yargs@^15.0.0": - version "15.0.14" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.14.tgz#26d821ddb89e70492160b66d10a0eb6df8f6fb06" - integrity sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ== - dependencies: - "@types/yargs-parser" "*" - -abab@^2.0.3, abab@^2.0.5: - version "2.0.6" - resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291" - integrity sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA== - -acorn-globals@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-6.0.0.tgz#46cdd39f0f8ff08a876619b55f5ac8a6dc770b45" - integrity sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg== - dependencies: - acorn "^7.1.1" - acorn-walk "^7.1.1" - -acorn-walk@^7.1.1: - version "7.2.0" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" - integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== - -acorn@^7.1.1: - version "7.4.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" - integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== - -acorn@^8.2.4: - version "8.8.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.1.tgz#0a3f9cbecc4ec3bea6f0a80b66ae8dd2da250b73" - integrity sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA== - -agent-base@6: - version "6.0.2" - resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" - integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== - dependencies: - debug "4" - -ansi-escapes@^4.2.1: - version "4.3.2" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" - integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== - dependencies: - type-fest "^0.21.3" - -ansi-regex@^5.0.0, ansi-regex@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" - integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== - -ansi-styles@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" - integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== - dependencies: - color-convert "^1.9.0" - -ansi-styles@^4.0.0, ansi-styles@^4.1.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" - integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== - dependencies: - color-convert "^2.0.1" - -anymatch@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" - integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== - dependencies: - micromatch "^3.1.4" - normalize-path "^2.1.1" - -anymatch@^3.0.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" - integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== - dependencies: - normalize-path "^3.0.0" - picomatch "^2.0.4" - -argparse@^1.0.7: - version "1.0.10" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" - integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== - dependencies: - sprintf-js "~1.0.2" - -arr-diff@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" - integrity sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA== - -arr-flatten@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" - integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== - -arr-union@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" - integrity sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q== - -array-unique@^0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" - integrity sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ== - -assign-symbols@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" - integrity sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw== - -asynckit@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" - integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== - -atob@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" - integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== - -babel-jest@^26.6.3: - version "26.6.3" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-26.6.3.tgz#d87d25cb0037577a0c89f82e5755c5d293c01056" - integrity sha512-pl4Q+GAVOHwvjrck6jKjvmGhnO3jHX/xuB9d27f+EJZ/6k+6nMuPjorrYp7s++bKKdANwzElBWnLWaObvTnaZA== - dependencies: - "@jest/transform" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/babel__core" "^7.1.7" - babel-plugin-istanbul "^6.0.0" - babel-preset-jest "^26.6.2" - chalk "^4.0.0" - graceful-fs "^4.2.4" - slash "^3.0.0" - -babel-plugin-istanbul@^6.0.0: - version "6.1.1" - resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73" - integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@istanbuljs/load-nyc-config" "^1.0.0" - "@istanbuljs/schema" "^0.1.2" - istanbul-lib-instrument "^5.0.4" - test-exclude "^6.0.0" - -babel-plugin-jest-hoist@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.6.2.tgz#8185bd030348d254c6d7dd974355e6a28b21e62d" - integrity sha512-PO9t0697lNTmcEHH69mdtYiOIkkOlj9fySqfO3K1eCcdISevLAE0xY59VLLUj0SoiPiTX/JU2CYFpILydUa5Lw== - dependencies: - "@babel/template" "^7.3.3" - "@babel/types" "^7.3.3" - "@types/babel__core" "^7.0.0" - "@types/babel__traverse" "^7.0.6" - -babel-plugin-polyfill-corejs2@^0.3.3: - version "0.3.3" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz#5d1bd3836d0a19e1b84bbf2d9640ccb6f951c122" - integrity sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q== - dependencies: - "@babel/compat-data" "^7.17.7" - "@babel/helper-define-polyfill-provider" "^0.3.3" - semver "^6.1.1" - -babel-plugin-polyfill-corejs3@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz#56ad88237137eade485a71b52f72dbed57c6230a" - integrity sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA== - dependencies: - "@babel/helper-define-polyfill-provider" "^0.3.3" - core-js-compat "^3.25.1" - -babel-plugin-polyfill-regenerator@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz#390f91c38d90473592ed43351e801a9d3e0fd747" - integrity sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw== - dependencies: - "@babel/helper-define-polyfill-provider" "^0.3.3" - -babel-preset-current-node-syntax@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b" - integrity sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ== - dependencies: - "@babel/plugin-syntax-async-generators" "^7.8.4" - "@babel/plugin-syntax-bigint" "^7.8.3" - "@babel/plugin-syntax-class-properties" "^7.8.3" - "@babel/plugin-syntax-import-meta" "^7.8.3" - "@babel/plugin-syntax-json-strings" "^7.8.3" - "@babel/plugin-syntax-logical-assignment-operators" "^7.8.3" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" - "@babel/plugin-syntax-numeric-separator" "^7.8.3" - "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" - "@babel/plugin-syntax-optional-chaining" "^7.8.3" - "@babel/plugin-syntax-top-level-await" "^7.8.3" - -babel-preset-jest@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-26.6.2.tgz#747872b1171df032252426586881d62d31798fee" - integrity sha512-YvdtlVm9t3k777c5NPQIv6cxFFFapys25HiUmuSgHwIZhfifweR5c5Sf5nwE3MAbfu327CYSvps8Yx6ANLyleQ== - dependencies: - babel-plugin-jest-hoist "^26.6.2" - babel-preset-current-node-syntax "^1.0.0" - -balanced-match@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" - integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== - -base@^0.11.1: - version "0.11.2" - resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" - integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== - dependencies: - cache-base "^1.0.1" - class-utils "^0.3.5" - component-emitter "^1.2.1" - define-property "^1.0.0" - isobject "^3.0.1" - mixin-deep "^1.2.0" - pascalcase "^0.1.1" - -bowser@^2.11.0: - version "2.11.0" - resolved "https://registry.yarnpkg.com/bowser/-/bowser-2.11.0.tgz#5ca3c35757a7aa5771500c70a73a9f91ef420a8f" - integrity sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA== - -brace-expansion@^1.1.7: - version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" - integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== - dependencies: - balanced-match "^1.0.0" - concat-map "0.0.1" - -braces@^2.3.1: - version "2.3.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" - integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== - dependencies: - arr-flatten "^1.1.0" - array-unique "^0.3.2" - extend-shallow "^2.0.1" - fill-range "^4.0.0" - isobject "^3.0.1" - repeat-element "^1.1.2" - snapdragon "^0.8.1" - snapdragon-node "^2.0.1" - split-string "^3.0.2" - to-regex "^3.0.1" - -braces@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" - integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== - dependencies: - fill-range "^7.0.1" - -browser-process-hrtime@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" - integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== - -browserslist@^4.21.3, browserslist@^4.21.4: - version "4.21.4" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.4.tgz#e7496bbc67b9e39dd0f98565feccdcb0d4ff6987" - integrity sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw== - dependencies: - caniuse-lite "^1.0.30001400" - electron-to-chromium "^1.4.251" - node-releases "^2.0.6" - update-browserslist-db "^1.0.9" - -bser@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" - integrity sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ== - dependencies: - node-int64 "^0.4.0" - -buffer-from@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" - integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== - -cache-base@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" - integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== - dependencies: - collection-visit "^1.0.0" - component-emitter "^1.2.1" - get-value "^2.0.6" - has-value "^1.0.0" - isobject "^3.0.1" - set-value "^2.0.0" - to-object-path "^0.3.0" - union-value "^1.0.0" - unset-value "^1.0.0" - -callsites@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" - integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== - -camelcase@^5.0.0, camelcase@^5.3.1: - version "5.3.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" - integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== - -camelcase@^6.0.0: - version "6.3.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" - integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== - -caniuse-lite@^1.0.30001400: - version "1.0.30001439" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001439.tgz#ab7371faeb4adff4b74dad1718a6fd122e45d9cb" - integrity sha512-1MgUzEkoMO6gKfXflStpYgZDlFM7M/ck/bgfVCACO5vnAf0fXoNVHdWtqGU+MYca+4bL9Z5bpOVmR33cWW9G2A== - -capture-exit@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-2.0.0.tgz#fb953bfaebeb781f62898239dabb426d08a509a4" - integrity sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g== - dependencies: - rsvp "^4.8.4" - -chalk@^2.0.0: - version "2.4.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" - integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - -chalk@^4.0.0: - version "4.1.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" - integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - -char-regex@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" - integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== - -ci-info@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" - integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== - -cjs-module-lexer@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-0.6.0.tgz#4186fcca0eae175970aee870b9fe2d6cf8d5655f" - integrity sha512-uc2Vix1frTfnuzxxu1Hp4ktSvM3QaI4oXl4ZUqL1wjTu/BGki9TrCWoqLTg/drR1KwAEarXuRFCG2Svr1GxPFw== - -class-utils@^0.3.5: - version "0.3.6" - resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" - integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== - dependencies: - arr-union "^3.1.0" - define-property "^0.2.5" - isobject "^3.0.0" - static-extend "^0.1.1" - -cliui@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-6.0.0.tgz#511d702c0c4e41ca156d7d0e96021f23e13225b1" - integrity sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ== - dependencies: - string-width "^4.2.0" - strip-ansi "^6.0.0" - wrap-ansi "^6.2.0" - -co@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" - integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ== - -collect-v8-coverage@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59" - integrity sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg== - -collection-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" - integrity sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw== - dependencies: - map-visit "^1.0.0" - object-visit "^1.0.0" - -color-convert@^1.9.0: - version "1.9.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" - integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== - dependencies: - color-name "1.1.3" - -color-convert@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" - integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== - dependencies: - color-name "~1.1.4" - -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== - -color-name@~1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" - integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== - -combined-stream@^1.0.8: - version "1.0.8" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" - integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== - dependencies: - delayed-stream "~1.0.0" - -component-emitter@^1.2.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" - integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== - -concat-map@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== - -convert-source-map@^1.4.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" - integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== - -copy-descriptor@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" - integrity sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw== - -core-js-compat@^3.25.1: - version "3.26.1" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.26.1.tgz#0e710b09ebf689d719545ac36e49041850f943df" - integrity sha512-622/KzTudvXCDLRw70iHW4KKs1aGpcRcowGWyYJr2DEBfRrd6hNJybxSWJFuZYD4ma86xhrwDDHxmDaIq4EA8A== - dependencies: - browserslist "^4.21.4" - -cross-spawn@^6.0.0: - version "6.0.5" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" - integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== - dependencies: - nice-try "^1.0.4" - path-key "^2.0.1" - semver "^5.5.0" - shebang-command "^1.2.0" - which "^1.2.9" - -cross-spawn@^7.0.0: - version "7.0.3" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" - integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== - dependencies: - path-key "^3.1.0" - shebang-command "^2.0.0" - which "^2.0.1" - -cssom@^0.4.4: - version "0.4.4" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10" - integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw== - -cssom@~0.3.6: - version "0.3.8" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" - integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== - -cssstyle@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852" - integrity sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A== - dependencies: - cssom "~0.3.6" - -data-urls@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" - integrity sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ== - dependencies: - abab "^2.0.3" - whatwg-mimetype "^2.3.0" - whatwg-url "^8.0.0" - -debug@4, debug@^4.1.0, debug@^4.1.1: - version "4.3.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" - integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== - dependencies: - ms "2.1.2" - -debug@^2.2.0, debug@^2.3.3: - version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== - dependencies: - ms "2.0.0" - -decamelize@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" - integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== - -decimal.js@^10.2.1: - version "10.4.3" - resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.3.tgz#1044092884d245d1b7f65725fa4ad4c6f781cc23" - integrity sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA== - -decode-uri-component@^0.2.0: - version "0.2.2" - resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9" - integrity sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ== - -deep-is@~0.1.3: - version "0.1.4" - resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" - integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== - -deepmerge@^4.2.2: - version "4.2.2" - resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955" - integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg== - -define-property@^0.2.5: - version "0.2.5" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" - integrity sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA== - dependencies: - is-descriptor "^0.1.0" - -define-property@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" - integrity sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA== - dependencies: - is-descriptor "^1.0.0" - -define-property@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" - integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== - dependencies: - is-descriptor "^1.0.2" - isobject "^3.0.1" - -delayed-stream@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" - integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== - -detect-newline@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" - integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== - -diff-sequences@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-26.6.2.tgz#48ba99157de1923412eed41db6b6d4aa9ca7c0b1" - integrity sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q== - -domexception@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304" - integrity sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg== - dependencies: - webidl-conversions "^5.0.0" - -electron-to-chromium@^1.4.251: - version "1.4.284" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz#61046d1e4cab3a25238f6bf7413795270f125592" - integrity sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA== - -emittery@^0.7.1: - version "0.7.2" - resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.7.2.tgz#25595908e13af0f5674ab419396e2fb394cdfa82" - integrity sha512-A8OG5SR/ij3SsJdWDJdkkSYUjQdCUx6APQXem0SaEePBSRg4eymGYwBkKo1Y6DU+af/Jn2dBQqDBvjnr9Vi8nQ== - -emoji-regex@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" - integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== - -end-of-stream@^1.1.0: - version "1.4.4" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" - integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== - dependencies: - once "^1.4.0" - -error-ex@^1.3.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" - integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== - dependencies: - is-arrayish "^0.2.1" - -escalade@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" - integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== - -escape-string-regexp@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== - -escape-string-regexp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" - integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== - -escodegen@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-2.0.0.tgz#5e32b12833e8aa8fa35e1bf0befa89380484c7dd" - integrity sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw== - dependencies: - esprima "^4.0.1" - estraverse "^5.2.0" - esutils "^2.0.2" - optionator "^0.8.1" - optionalDependencies: - source-map "~0.6.1" - -esprima@^4.0.0, esprima@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" - integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== - -estraverse@^5.2.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" - integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== - -esutils@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" - integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== - -exec-sh@^0.3.2: - version "0.3.6" - resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.3.6.tgz#ff264f9e325519a60cb5e273692943483cca63bc" - integrity sha512-nQn+hI3yp+oD0huYhKwvYI32+JFeq+XkNcD1GAo3Y/MjxsfVGmrrzrnzjWiNY6f+pUCP440fThsFh5gZrRAU/w== - -execa@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" - integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== - dependencies: - cross-spawn "^6.0.0" - get-stream "^4.0.0" - is-stream "^1.1.0" - npm-run-path "^2.0.0" - p-finally "^1.0.0" - signal-exit "^3.0.0" - strip-eof "^1.0.0" - -execa@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-4.1.0.tgz#4e5491ad1572f2f17a77d388c6c857135b22847a" - integrity sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA== - dependencies: - cross-spawn "^7.0.0" - get-stream "^5.0.0" - human-signals "^1.1.1" - is-stream "^2.0.0" - merge-stream "^2.0.0" - npm-run-path "^4.0.0" - onetime "^5.1.0" - signal-exit "^3.0.2" - strip-final-newline "^2.0.0" - -exit@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" - integrity sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ== - -expand-brackets@^2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" - integrity sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA== - dependencies: - debug "^2.3.3" - define-property "^0.2.5" - extend-shallow "^2.0.1" - posix-character-classes "^0.1.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -expect@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/expect/-/expect-26.6.2.tgz#c6b996bf26bf3fe18b67b2d0f51fc981ba934417" - integrity sha512-9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA== - dependencies: - "@jest/types" "^26.6.2" - ansi-styles "^4.0.0" - jest-get-type "^26.3.0" - jest-matcher-utils "^26.6.2" - jest-message-util "^26.6.2" - jest-regex-util "^26.0.0" - -extend-shallow@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" - integrity sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug== - dependencies: - is-extendable "^0.1.0" - -extend-shallow@^3.0.0, extend-shallow@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" - integrity sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q== - dependencies: - assign-symbols "^1.0.0" - is-extendable "^1.0.1" - -extglob@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" - integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== - dependencies: - array-unique "^0.3.2" - define-property "^1.0.0" - expand-brackets "^2.1.4" - extend-shallow "^2.0.1" - fragment-cache "^0.2.1" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -fast-json-stable-stringify@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" - integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== - -fast-levenshtein@~2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" - integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== - -fast-xml-parser@4.0.11: - version "4.0.11" - resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-4.0.11.tgz#42332a9aca544520631c8919e6ea871c0185a985" - integrity sha512-4aUg3aNRR/WjQAcpceODG1C3x3lFANXRo8+1biqfieHmg9pyMt7qB4lQV/Ta6sJCTbA5vfD8fnA8S54JATiFUA== - dependencies: - strnum "^1.0.5" - -fb-watchman@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.2.tgz#e9524ee6b5c77e9e5001af0f85f3adbb8623255c" - integrity sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA== - dependencies: - bser "2.1.1" - -fill-range@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" - integrity sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ== - dependencies: - extend-shallow "^2.0.1" - is-number "^3.0.0" - repeat-string "^1.6.1" - to-regex-range "^2.1.0" - -fill-range@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" - integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== - dependencies: - to-regex-range "^5.0.1" - -find-up@^4.0.0, find-up@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" - integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== - dependencies: - locate-path "^5.0.0" - path-exists "^4.0.0" - -for-in@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" - integrity sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ== - -form-data@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f" - integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.8" - mime-types "^2.1.12" - -fragment-cache@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" - integrity sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA== - dependencies: - map-cache "^0.2.2" - -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== - -fsevents@^2.1.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" - integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== - -function-bind@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" - integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== - -gensync@^1.0.0-beta.2: - version "1.0.0-beta.2" - resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" - integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== - -get-caller-file@^2.0.1: - version "2.0.5" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" - integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== - -get-package-type@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" - integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== - -get-stream@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" - integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== - dependencies: - pump "^3.0.0" - -get-stream@^5.0.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" - integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== - dependencies: - pump "^3.0.0" - -get-value@^2.0.3, get-value@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" - integrity sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA== - -glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4: - version "7.2.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" - integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.1.1" - once "^1.3.0" - path-is-absolute "^1.0.0" - -globals@^11.1.0: - version "11.12.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" - integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== - -graceful-fs@^4.2.4: - version "4.2.10" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" - integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== - -growly@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" - integrity sha512-+xGQY0YyAWCnqy7Cd++hc2JqMYzlm0dG30Jd0beaA64sROr8C4nt8Yc9V5Ro3avlSUDTN0ulqP/VBKi1/lLygw== - -has-flag@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" - integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== - -has-flag@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" - integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== - -has-value@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" - integrity sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q== - dependencies: - get-value "^2.0.3" - has-values "^0.1.4" - isobject "^2.0.0" - -has-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" - integrity sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw== - dependencies: - get-value "^2.0.6" - has-values "^1.0.0" - isobject "^3.0.0" - -has-values@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" - integrity sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ== - -has-values@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" - integrity sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ== - dependencies: - is-number "^3.0.0" - kind-of "^4.0.0" - -has@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" - integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== - dependencies: - function-bind "^1.1.1" - -hosted-git-info@^2.1.4: - version "2.8.9" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" - integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== - -html-encoding-sniffer@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz#42a6dc4fd33f00281176e8b23759ca4e4fa185f3" - integrity sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ== - dependencies: - whatwg-encoding "^1.0.5" - -html-escaper@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" - integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== - -http-proxy-agent@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" - integrity sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg== - dependencies: - "@tootallnate/once" "1" - agent-base "6" - debug "4" - -https-proxy-agent@^5.0.0: - version "5.0.1" - resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" - integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== - dependencies: - agent-base "6" - debug "4" - -human-signals@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" - integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== - -iconv-lite@0.4.24: - version "0.4.24" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" - integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== - dependencies: - safer-buffer ">= 2.1.2 < 3" - -import-local@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.1.0.tgz#b4479df8a5fd44f6cdce24070675676063c95cb4" - integrity sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg== - dependencies: - pkg-dir "^4.2.0" - resolve-cwd "^3.0.0" - -imurmurhash@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" - integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== - -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@2: - version "2.0.4" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" - integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== - -is-accessor-descriptor@^0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" - integrity sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A== - dependencies: - kind-of "^3.0.2" - -is-accessor-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" - integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== - dependencies: - kind-of "^6.0.0" - -is-arrayish@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" - integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== - -is-buffer@^1.1.5: - version "1.1.6" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" - integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== - -is-ci@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" - integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w== - dependencies: - ci-info "^2.0.0" - -is-core-module@^2.9.0: - version "2.11.0" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.11.0.tgz#ad4cb3e3863e814523c96f3f58d26cc570ff0144" - integrity sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw== - dependencies: - has "^1.0.3" - -is-data-descriptor@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" - integrity sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg== - dependencies: - kind-of "^3.0.2" - -is-data-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" - integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== - dependencies: - kind-of "^6.0.0" - -is-descriptor@^0.1.0: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" - integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== - dependencies: - is-accessor-descriptor "^0.1.6" - is-data-descriptor "^0.1.4" - kind-of "^5.0.0" - -is-descriptor@^1.0.0, is-descriptor@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" - integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== - dependencies: - is-accessor-descriptor "^1.0.0" - is-data-descriptor "^1.0.0" - kind-of "^6.0.2" - -is-docker@^2.0.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" - integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== - -is-extendable@^0.1.0, is-extendable@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" - integrity sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw== - -is-extendable@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" - integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== - dependencies: - is-plain-object "^2.0.4" - -is-fullwidth-code-point@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" - integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== - -is-generator-fn@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" - integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== - -is-number@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" - integrity sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg== - dependencies: - kind-of "^3.0.2" - -is-number@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" - integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== - -is-plain-object@^2.0.3, is-plain-object@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" - integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== - dependencies: - isobject "^3.0.1" - -is-potential-custom-element-name@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" - integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== - -is-stream@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" - integrity sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ== - -is-stream@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" - integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== - -is-typedarray@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" - integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA== - -is-windows@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" - integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== - -is-wsl@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" - integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== - dependencies: - is-docker "^2.0.0" - -isarray@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== - -isexe@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== - -isobject@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" - integrity sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA== - dependencies: - isarray "1.0.0" - -isobject@^3.0.0, isobject@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" - integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== - -istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" - integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== - -istanbul-lib-instrument@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz#873c6fff897450118222774696a3f28902d77c1d" - integrity sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ== - dependencies: - "@babel/core" "^7.7.5" - "@istanbuljs/schema" "^0.1.2" - istanbul-lib-coverage "^3.0.0" - semver "^6.3.0" - -istanbul-lib-instrument@^5.0.4: - version "5.2.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz#d10c8885c2125574e1c231cacadf955675e1ce3d" - integrity sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg== - dependencies: - "@babel/core" "^7.12.3" - "@babel/parser" "^7.14.7" - "@istanbuljs/schema" "^0.1.2" - istanbul-lib-coverage "^3.2.0" - semver "^6.3.0" - -istanbul-lib-report@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6" - integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw== - dependencies: - istanbul-lib-coverage "^3.0.0" - make-dir "^3.0.0" - supports-color "^7.1.0" - -istanbul-lib-source-maps@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551" - integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw== - dependencies: - debug "^4.1.1" - istanbul-lib-coverage "^3.0.0" - source-map "^0.6.1" - -istanbul-reports@^3.0.2: - version "3.1.5" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.5.tgz#cc9a6ab25cb25659810e4785ed9d9fb742578bae" - integrity sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w== - dependencies: - html-escaper "^2.0.0" - istanbul-lib-report "^3.0.0" - -jest-changed-files@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-26.6.2.tgz#f6198479e1cc66f22f9ae1e22acaa0b429c042d0" - integrity sha512-fDS7szLcY9sCtIip8Fjry9oGf3I2ht/QT21bAHm5Dmf0mD4X3ReNUf17y+bO6fR8WgbIZTlbyG1ak/53cbRzKQ== - dependencies: - "@jest/types" "^26.6.2" - execa "^4.0.0" - throat "^5.0.0" - -jest-cli@^26.6.3: - version "26.6.3" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-26.6.3.tgz#43117cfef24bc4cd691a174a8796a532e135e92a" - integrity sha512-GF9noBSa9t08pSyl3CY4frMrqp+aQXFGFkf5hEPbh/pIUFYWMK6ZLTfbmadxJVcJrdRoChlWQsA2VkJcDFK8hg== - dependencies: - "@jest/core" "^26.6.3" - "@jest/test-result" "^26.6.2" - "@jest/types" "^26.6.2" - chalk "^4.0.0" - exit "^0.1.2" - graceful-fs "^4.2.4" - import-local "^3.0.2" - is-ci "^2.0.0" - jest-config "^26.6.3" - jest-util "^26.6.2" - jest-validate "^26.6.2" - prompts "^2.0.1" - yargs "^15.4.1" - -jest-config@^26.6.3: - version "26.6.3" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-26.6.3.tgz#64f41444eef9eb03dc51d5c53b75c8c71f645349" - integrity sha512-t5qdIj/bCj2j7NFVHb2nFB4aUdfucDn3JRKgrZnplb8nieAirAzRSHP8uDEd+qV6ygzg9Pz4YG7UTJf94LPSyg== - dependencies: - "@babel/core" "^7.1.0" - "@jest/test-sequencer" "^26.6.3" - "@jest/types" "^26.6.2" - babel-jest "^26.6.3" - chalk "^4.0.0" - deepmerge "^4.2.2" - glob "^7.1.1" - graceful-fs "^4.2.4" - jest-environment-jsdom "^26.6.2" - jest-environment-node "^26.6.2" - jest-get-type "^26.3.0" - jest-jasmine2 "^26.6.3" - jest-regex-util "^26.0.0" - jest-resolve "^26.6.2" - jest-util "^26.6.2" - jest-validate "^26.6.2" - micromatch "^4.0.2" - pretty-format "^26.6.2" - -jest-diff@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-26.6.2.tgz#1aa7468b52c3a68d7d5c5fdcdfcd5e49bd164394" - integrity sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA== - dependencies: - chalk "^4.0.0" - diff-sequences "^26.6.2" - jest-get-type "^26.3.0" - pretty-format "^26.6.2" - -jest-docblock@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-26.0.0.tgz#3e2fa20899fc928cb13bd0ff68bd3711a36889b5" - integrity sha512-RDZ4Iz3QbtRWycd8bUEPxQsTlYazfYn/h5R65Fc6gOfwozFhoImx+affzky/FFBuqISPTqjXomoIGJVKBWoo0w== - dependencies: - detect-newline "^3.0.0" - -jest-each@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-26.6.2.tgz#02526438a77a67401c8a6382dfe5999952c167cb" - integrity sha512-Mer/f0KaATbjl8MCJ+0GEpNdqmnVmDYqCTJYTvoo7rqmRiDllmp2AYN+06F93nXcY3ur9ShIjS+CO/uD+BbH4A== - dependencies: - "@jest/types" "^26.6.2" - chalk "^4.0.0" - jest-get-type "^26.3.0" - jest-util "^26.6.2" - pretty-format "^26.6.2" - -jest-environment-jsdom@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-26.6.2.tgz#78d09fe9cf019a357009b9b7e1f101d23bd1da3e" - integrity sha512-jgPqCruTlt3Kwqg5/WVFyHIOJHsiAvhcp2qiR2QQstuG9yWox5+iHpU3ZrcBxW14T4fe5Z68jAfLRh7joCSP2Q== - dependencies: - "@jest/environment" "^26.6.2" - "@jest/fake-timers" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/node" "*" - jest-mock "^26.6.2" - jest-util "^26.6.2" - jsdom "^16.4.0" - -jest-environment-node@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-26.6.2.tgz#824e4c7fb4944646356f11ac75b229b0035f2b0c" - integrity sha512-zhtMio3Exty18dy8ee8eJ9kjnRyZC1N4C1Nt/VShN1apyXc8rWGtJ9lI7vqiWcyyXS4BVSEn9lxAM2D+07/Tag== - dependencies: - "@jest/environment" "^26.6.2" - "@jest/fake-timers" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/node" "*" - jest-mock "^26.6.2" - jest-util "^26.6.2" - -jest-get-type@^26.3.0: - version "26.3.0" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-26.3.0.tgz#e97dc3c3f53c2b406ca7afaed4493b1d099199e0" - integrity sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig== - -jest-haste-map@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-26.6.2.tgz#dd7e60fe7dc0e9f911a23d79c5ff7fb5c2cafeaa" - integrity sha512-easWIJXIw71B2RdR8kgqpjQrbMRWQBgiBwXYEhtGUTaX+doCjBheluShdDMeR8IMfJiTqH4+zfhtg29apJf/8w== - dependencies: - "@jest/types" "^26.6.2" - "@types/graceful-fs" "^4.1.2" - "@types/node" "*" - anymatch "^3.0.3" - fb-watchman "^2.0.0" - graceful-fs "^4.2.4" - jest-regex-util "^26.0.0" - jest-serializer "^26.6.2" - jest-util "^26.6.2" - jest-worker "^26.6.2" - micromatch "^4.0.2" - sane "^4.0.3" - walker "^1.0.7" - optionalDependencies: - fsevents "^2.1.2" - -jest-jasmine2@^26.6.3: - version "26.6.3" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-26.6.3.tgz#adc3cf915deacb5212c93b9f3547cd12958f2edd" - integrity sha512-kPKUrQtc8aYwBV7CqBg5pu+tmYXlvFlSFYn18ev4gPFtrRzB15N2gW/Roew3187q2w2eHuu0MU9TJz6w0/nPEg== - dependencies: - "@babel/traverse" "^7.1.0" - "@jest/environment" "^26.6.2" - "@jest/source-map" "^26.6.2" - "@jest/test-result" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/node" "*" - chalk "^4.0.0" - co "^4.6.0" - expect "^26.6.2" - is-generator-fn "^2.0.0" - jest-each "^26.6.2" - jest-matcher-utils "^26.6.2" - jest-message-util "^26.6.2" - jest-runtime "^26.6.3" - jest-snapshot "^26.6.2" - jest-util "^26.6.2" - pretty-format "^26.6.2" - throat "^5.0.0" - -jest-leak-detector@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-26.6.2.tgz#7717cf118b92238f2eba65054c8a0c9c653a91af" - integrity sha512-i4xlXpsVSMeKvg2cEKdfhh0H39qlJlP5Ex1yQxwF9ubahboQYMgTtz5oML35AVA3B4Eu+YsmwaiKVev9KCvLxg== - dependencies: - jest-get-type "^26.3.0" - pretty-format "^26.6.2" - -jest-matcher-utils@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz#8e6fd6e863c8b2d31ac6472eeb237bc595e53e7a" - integrity sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw== - dependencies: - chalk "^4.0.0" - jest-diff "^26.6.2" - jest-get-type "^26.3.0" - pretty-format "^26.6.2" - -jest-message-util@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-26.6.2.tgz#58173744ad6fc0506b5d21150b9be56ef001ca07" - integrity sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA== - dependencies: - "@babel/code-frame" "^7.0.0" - "@jest/types" "^26.6.2" - "@types/stack-utils" "^2.0.0" - chalk "^4.0.0" - graceful-fs "^4.2.4" - micromatch "^4.0.2" - pretty-format "^26.6.2" - slash "^3.0.0" - stack-utils "^2.0.2" - -jest-mock@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-26.6.2.tgz#d6cb712b041ed47fe0d9b6fc3474bc6543feb302" - integrity sha512-YyFjePHHp1LzpzYcmgqkJ0nm0gg/lJx2aZFzFy1S6eUqNjXsOqTK10zNRff2dNfssgokjkG65OlWNcIlgd3zew== - dependencies: - "@jest/types" "^26.6.2" - "@types/node" "*" - -jest-pnp-resolver@^1.2.2: - version "1.2.3" - resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz#930b1546164d4ad5937d5540e711d4d38d4cad2e" - integrity sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w== - -jest-regex-util@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-26.0.0.tgz#d25e7184b36e39fd466c3bc41be0971e821fee28" - integrity sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A== - -jest-resolve-dependencies@^26.6.3: - version "26.6.3" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-26.6.3.tgz#6680859ee5d22ee5dcd961fe4871f59f4c784fb6" - integrity sha512-pVwUjJkxbhe4RY8QEWzN3vns2kqyuldKpxlxJlzEYfKSvY6/bMvxoFrYYzUO1Gx28yKWN37qyV7rIoIp2h8fTg== - dependencies: - "@jest/types" "^26.6.2" - jest-regex-util "^26.0.0" - jest-snapshot "^26.6.2" - -jest-resolve@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-26.6.2.tgz#a3ab1517217f469b504f1b56603c5bb541fbb507" - integrity sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ== - dependencies: - "@jest/types" "^26.6.2" - chalk "^4.0.0" - graceful-fs "^4.2.4" - jest-pnp-resolver "^1.2.2" - jest-util "^26.6.2" - read-pkg-up "^7.0.1" - resolve "^1.18.1" - slash "^3.0.0" - -jest-runner@^26.6.3: - version "26.6.3" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-26.6.3.tgz#2d1fed3d46e10f233fd1dbd3bfaa3fe8924be159" - integrity sha512-atgKpRHnaA2OvByG/HpGA4g6CSPS/1LK0jK3gATJAoptC1ojltpmVlYC3TYgdmGp+GLuhzpH30Gvs36szSL2JQ== - dependencies: - "@jest/console" "^26.6.2" - "@jest/environment" "^26.6.2" - "@jest/test-result" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/node" "*" - chalk "^4.0.0" - emittery "^0.7.1" - exit "^0.1.2" - graceful-fs "^4.2.4" - jest-config "^26.6.3" - jest-docblock "^26.0.0" - jest-haste-map "^26.6.2" - jest-leak-detector "^26.6.2" - jest-message-util "^26.6.2" - jest-resolve "^26.6.2" - jest-runtime "^26.6.3" - jest-util "^26.6.2" - jest-worker "^26.6.2" - source-map-support "^0.5.6" - throat "^5.0.0" - -jest-runtime@^26.6.3: - version "26.6.3" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-26.6.3.tgz#4f64efbcfac398331b74b4b3c82d27d401b8fa2b" - integrity sha512-lrzyR3N8sacTAMeonbqpnSka1dHNux2uk0qqDXVkMv2c/A3wYnvQ4EXuI013Y6+gSKSCxdaczvf4HF0mVXHRdw== - dependencies: - "@jest/console" "^26.6.2" - "@jest/environment" "^26.6.2" - "@jest/fake-timers" "^26.6.2" - "@jest/globals" "^26.6.2" - "@jest/source-map" "^26.6.2" - "@jest/test-result" "^26.6.2" - "@jest/transform" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/yargs" "^15.0.0" - chalk "^4.0.0" - cjs-module-lexer "^0.6.0" - collect-v8-coverage "^1.0.0" - exit "^0.1.2" - glob "^7.1.3" - graceful-fs "^4.2.4" - jest-config "^26.6.3" - jest-haste-map "^26.6.2" - jest-message-util "^26.6.2" - jest-mock "^26.6.2" - jest-regex-util "^26.0.0" - jest-resolve "^26.6.2" - jest-snapshot "^26.6.2" - jest-util "^26.6.2" - jest-validate "^26.6.2" - slash "^3.0.0" - strip-bom "^4.0.0" - yargs "^15.4.1" - -jest-serializer@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-26.6.2.tgz#d139aafd46957d3a448f3a6cdabe2919ba0742d1" - integrity sha512-S5wqyz0DXnNJPd/xfIzZ5Xnp1HrJWBczg8mMfMpN78OJ5eDxXyf+Ygld9wX1DnUWbIbhM1YDY95NjR4CBXkb2g== - dependencies: - "@types/node" "*" - graceful-fs "^4.2.4" - -jest-snapshot@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-26.6.2.tgz#f3b0af1acb223316850bd14e1beea9837fb39c84" - integrity sha512-OLhxz05EzUtsAmOMzuupt1lHYXCNib0ECyuZ/PZOx9TrZcC8vL0x+DUG3TL+GLX3yHG45e6YGjIm0XwDc3q3og== - dependencies: - "@babel/types" "^7.0.0" - "@jest/types" "^26.6.2" - "@types/babel__traverse" "^7.0.4" - "@types/prettier" "^2.0.0" - chalk "^4.0.0" - expect "^26.6.2" - graceful-fs "^4.2.4" - jest-diff "^26.6.2" - jest-get-type "^26.3.0" - jest-haste-map "^26.6.2" - jest-matcher-utils "^26.6.2" - jest-message-util "^26.6.2" - jest-resolve "^26.6.2" - natural-compare "^1.4.0" - pretty-format "^26.6.2" - semver "^7.3.2" - -jest-util@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.6.2.tgz#907535dbe4d5a6cb4c47ac9b926f6af29576cbc1" - integrity sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q== - dependencies: - "@jest/types" "^26.6.2" - "@types/node" "*" - chalk "^4.0.0" - graceful-fs "^4.2.4" - is-ci "^2.0.0" - micromatch "^4.0.2" - -jest-validate@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-26.6.2.tgz#23d380971587150467342911c3d7b4ac57ab20ec" - integrity sha512-NEYZ9Aeyj0i5rQqbq+tpIOom0YS1u2MVu6+euBsvpgIme+FOfRmoC4R5p0JiAUpaFvFy24xgrpMknarR/93XjQ== - dependencies: - "@jest/types" "^26.6.2" - camelcase "^6.0.0" - chalk "^4.0.0" - jest-get-type "^26.3.0" - leven "^3.1.0" - pretty-format "^26.6.2" - -jest-watcher@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-26.6.2.tgz#a5b683b8f9d68dbcb1d7dae32172d2cca0592975" - integrity sha512-WKJob0P/Em2csiVthsI68p6aGKTIcsfjH9Gsx1f0A3Italz43e3ho0geSAVsmj09RWOELP1AZ/DXyJgOgDKxXQ== - dependencies: - "@jest/test-result" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/node" "*" - ansi-escapes "^4.2.1" - chalk "^4.0.0" - jest-util "^26.6.2" - string-length "^4.0.1" - -jest-worker@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed" - integrity sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ== - dependencies: - "@types/node" "*" - merge-stream "^2.0.0" - supports-color "^7.0.0" - -jest@^26.6.3: - version "26.6.3" - resolved "https://registry.yarnpkg.com/jest/-/jest-26.6.3.tgz#40e8fdbe48f00dfa1f0ce8121ca74b88ac9148ef" - integrity sha512-lGS5PXGAzR4RF7V5+XObhqz2KZIDUA1yD0DG6pBVmy10eh0ZIXQImRuzocsI/N2XZ1GrLFwTS27In2i2jlpq1Q== - dependencies: - "@jest/core" "^26.6.3" - import-local "^3.0.2" - jest-cli "^26.6.3" - -js-tokens@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" - integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== - -js-yaml@^3.13.1: - version "3.14.1" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" - integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== - dependencies: - argparse "^1.0.7" - esprima "^4.0.0" - -jsdom@^16.4.0: - version "16.7.0" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710" - integrity sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw== - dependencies: - abab "^2.0.5" - acorn "^8.2.4" - acorn-globals "^6.0.0" - cssom "^0.4.4" - cssstyle "^2.3.0" - data-urls "^2.0.0" - decimal.js "^10.2.1" - domexception "^2.0.1" - escodegen "^2.0.0" - form-data "^3.0.0" - html-encoding-sniffer "^2.0.1" - http-proxy-agent "^4.0.1" - https-proxy-agent "^5.0.0" - is-potential-custom-element-name "^1.0.1" - nwsapi "^2.2.0" - parse5 "6.0.1" - saxes "^5.0.1" - symbol-tree "^3.2.4" - tough-cookie "^4.0.0" - w3c-hr-time "^1.0.2" - w3c-xmlserializer "^2.0.0" - webidl-conversions "^6.1.0" - whatwg-encoding "^1.0.5" - whatwg-mimetype "^2.3.0" - whatwg-url "^8.5.0" - ws "^7.4.6" - xml-name-validator "^3.0.0" - -jsesc@^2.5.1: - version "2.5.2" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" - integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== - -jsesc@~0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" - integrity sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA== - -json-parse-even-better-errors@^2.3.0: - version "2.3.1" - resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" - integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== - -json5@^2.2.1: - version "2.2.3" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" - integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== - -kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: - version "3.2.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" - integrity sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ== - dependencies: - is-buffer "^1.1.5" - -kind-of@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" - integrity sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw== - dependencies: - is-buffer "^1.1.5" - -kind-of@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" - integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== - -kind-of@^6.0.0, kind-of@^6.0.2: - version "6.0.3" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" - integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== - -kleur@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" - integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== - -leven@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" - integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== - -levn@~0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" - integrity sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA== - dependencies: - prelude-ls "~1.1.2" - type-check "~0.3.2" - -lines-and-columns@^1.1.6: - version "1.2.4" - resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" - integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== - -locate-path@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" - integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== - dependencies: - p-locate "^4.1.0" - -lodash.debounce@^4.0.8: - version "4.0.8" - resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" - integrity sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow== - -lodash@^4.7.0: - version "4.17.21" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" - integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== - -lru-cache@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" - integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== - dependencies: - yallist "^4.0.0" - -make-dir@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" - integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== - dependencies: - semver "^6.0.0" - -makeerror@1.0.12: - version "1.0.12" - resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" - integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg== - dependencies: - tmpl "1.0.5" - -map-cache@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" - integrity sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg== - -map-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" - integrity sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w== - dependencies: - object-visit "^1.0.0" - -merge-stream@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" - integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== - -micromatch@^3.1.4: - version "3.1.10" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" - integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - braces "^2.3.1" - define-property "^2.0.2" - extend-shallow "^3.0.2" - extglob "^2.0.4" - fragment-cache "^0.2.1" - kind-of "^6.0.2" - nanomatch "^1.2.9" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.2" - -micromatch@^4.0.2: - version "4.0.5" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" - integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== - dependencies: - braces "^3.0.2" - picomatch "^2.3.1" - -mime-db@1.52.0: - version "1.52.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" - integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== - -mime-types@^2.1.12: - version "2.1.35" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" - integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== - dependencies: - mime-db "1.52.0" - -mimic-fn@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" - integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== - -minimatch@^3.0.4, minimatch@^3.1.1: - version "3.1.2" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" - integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== - dependencies: - brace-expansion "^1.1.7" - -minimist@^1.1.1, minimist@^1.2.0: - version "1.2.7" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.7.tgz#daa1c4d91f507390437c6a8bc01078e7000c4d18" - integrity sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g== - -mixin-deep@^1.2.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" - integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== - dependencies: - for-in "^1.0.2" - is-extendable "^1.0.1" - -ms@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" - integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== - -ms@2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" - integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== - -nanomatch@^1.2.9: - version "1.2.13" - resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" - integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - define-property "^2.0.2" - extend-shallow "^3.0.2" - fragment-cache "^0.2.1" - is-windows "^1.0.2" - kind-of "^6.0.2" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -natural-compare@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" - integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== - -nice-try@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" - integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== - -node-int64@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" - integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== - -node-notifier@^8.0.0: - version "8.0.2" - resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-8.0.2.tgz#f3167a38ef0d2c8a866a83e318c1ba0efeb702c5" - integrity sha512-oJP/9NAdd9+x2Q+rfphB2RJCHjod70RcRLjosiPMMu5gjIfwVnOUGq2nbTjTUbmy0DJ/tFIVT30+Qe3nzl4TJg== - dependencies: - growly "^1.3.0" - is-wsl "^2.2.0" - semver "^7.3.2" - shellwords "^0.1.1" - uuid "^8.3.0" - which "^2.0.2" - -node-releases@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.6.tgz#8a7088c63a55e493845683ebf3c828d8c51c5503" - integrity sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg== - -normalize-package-data@^2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" - integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== - dependencies: - hosted-git-info "^2.1.4" - resolve "^1.10.0" - semver "2 || 3 || 4 || 5" - validate-npm-package-license "^3.0.1" - -normalize-path@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" - integrity sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w== - dependencies: - remove-trailing-separator "^1.0.1" - -normalize-path@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" - integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== - -npm-run-path@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" - integrity sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw== - dependencies: - path-key "^2.0.0" - -npm-run-path@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" - integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== - dependencies: - path-key "^3.0.0" - -nwsapi@^2.2.0: - version "2.2.2" - resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.2.tgz#e5418863e7905df67d51ec95938d67bf801f0bb0" - integrity sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw== - -object-copy@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" - integrity sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ== - dependencies: - copy-descriptor "^0.1.0" - define-property "^0.2.5" - kind-of "^3.0.3" - -object-visit@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" - integrity sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA== - dependencies: - isobject "^3.0.0" - -object.pick@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" - integrity sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ== - dependencies: - isobject "^3.0.1" - -once@^1.3.0, once@^1.3.1, once@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== - dependencies: - wrappy "1" - -onetime@^5.1.0: - version "5.1.2" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" - integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== - dependencies: - mimic-fn "^2.1.0" - -optionator@^0.8.1: - version "0.8.3" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" - integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== - dependencies: - deep-is "~0.1.3" - fast-levenshtein "~2.0.6" - levn "~0.3.0" - prelude-ls "~1.1.2" - type-check "~0.3.2" - word-wrap "~1.2.3" - -p-each-series@^2.1.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/p-each-series/-/p-each-series-2.2.0.tgz#105ab0357ce72b202a8a8b94933672657b5e2a9a" - integrity sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA== - -p-finally@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" - integrity sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow== - -p-limit@^2.2.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" - integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== - dependencies: - p-try "^2.0.0" - -p-locate@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" - integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== - dependencies: - p-limit "^2.2.0" - -p-try@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" - integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== - -parse-json@^5.0.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" - integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== - dependencies: - "@babel/code-frame" "^7.0.0" - error-ex "^1.3.1" - json-parse-even-better-errors "^2.3.0" - lines-and-columns "^1.1.6" - -parse5@6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" - integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== - -pascalcase@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" - integrity sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw== - -path-exists@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" - integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== - -path-is-absolute@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== - -path-key@^2.0.0, path-key@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" - integrity sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw== - -path-key@^3.0.0, path-key@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" - integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== - -path-parse@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" - integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== - -picocolors@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" - integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== - -picomatch@^2.0.4, picomatch@^2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" - integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== - -pirates@^4.0.1: - version "4.0.5" - resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b" - integrity sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ== - -pkg-dir@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" - integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== - dependencies: - find-up "^4.0.0" - -posix-character-classes@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" - integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== - -prelude-ls@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" - integrity sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w== - -pretty-format@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.6.2.tgz#e35c2705f14cb7fe2fe94fa078345b444120fc93" - integrity sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg== - dependencies: - "@jest/types" "^26.6.2" - ansi-regex "^5.0.0" - ansi-styles "^4.0.0" - react-is "^17.0.1" - -prompts@^2.0.1: - version "2.4.2" - resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" - integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q== - dependencies: - kleur "^3.0.3" - sisteransi "^1.0.5" - -psl@^1.1.33: - version "1.9.0" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7" - integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag== - -pump@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" - integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - -punycode@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" - integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== - -querystringify@^2.1.1: - version "2.2.0" - resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6" - integrity sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ== - -react-is@^17.0.1: - version "17.0.2" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" - integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== - -read-pkg-up@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" - integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg== - dependencies: - find-up "^4.1.0" - read-pkg "^5.2.0" - type-fest "^0.8.1" - -read-pkg@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" - integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg== - dependencies: - "@types/normalize-package-data" "^2.4.0" - normalize-package-data "^2.5.0" - parse-json "^5.0.0" - type-fest "^0.6.0" - -regenerate-unicode-properties@^10.1.0: - version "10.1.0" - resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz#7c3192cab6dd24e21cb4461e5ddd7dd24fa8374c" - integrity sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ== - dependencies: - regenerate "^1.4.2" - -regenerate@^1.4.2: - version "1.4.2" - resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" - integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== - -regenerator-runtime@^0.13.11, regenerator-runtime@^0.13.7: - version "0.13.11" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9" - integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg== - -regenerator-transform@^0.15.1: - version "0.15.1" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.15.1.tgz#f6c4e99fc1b4591f780db2586328e4d9a9d8dc56" - integrity sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg== - dependencies: - "@babel/runtime" "^7.8.4" - -regex-not@^1.0.0, regex-not@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" - integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== - dependencies: - extend-shallow "^3.0.2" - safe-regex "^1.1.0" - -regexpu-core@^5.2.1: - version "5.2.2" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-5.2.2.tgz#3e4e5d12103b64748711c3aad69934d7718e75fc" - integrity sha512-T0+1Zp2wjF/juXMrMxHxidqGYn8U4R+zleSJhX9tQ1PUsS8a9UtYfbsF9LdiVgNX3kiX8RNaKM42nfSgvFJjmw== - dependencies: - regenerate "^1.4.2" - regenerate-unicode-properties "^10.1.0" - regjsgen "^0.7.1" - regjsparser "^0.9.1" - unicode-match-property-ecmascript "^2.0.0" - unicode-match-property-value-ecmascript "^2.1.0" - -regjsgen@^0.7.1: - version "0.7.1" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.7.1.tgz#ee5ef30e18d3f09b7c369b76e7c2373ed25546f6" - integrity sha512-RAt+8H2ZEzHeYWxZ3H2z6tF18zyyOnlcdaafLrm21Bguj7uZy6ULibiAFdXEtKQY4Sy7wDTwDiOazasMLc4KPA== - -regjsparser@^0.9.1: - version "0.9.1" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.9.1.tgz#272d05aa10c7c1f67095b1ff0addae8442fc5709" - integrity sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ== - dependencies: - jsesc "~0.5.0" - -remove-trailing-separator@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" - integrity sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw== - -repeat-element@^1.1.2: - version "1.1.4" - resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.4.tgz#be681520847ab58c7568ac75fbfad28ed42d39e9" - integrity sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ== - -repeat-string@^1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" - integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w== - -require-directory@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== - -require-main-filename@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" - integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== - -requires-port@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" - integrity sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ== - -resolve-cwd@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" - integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg== - dependencies: - resolve-from "^5.0.0" - -resolve-from@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" - integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== - -resolve-url@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" - integrity sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg== - -resolve@^1.10.0, resolve@^1.14.2, resolve@^1.18.1: - version "1.22.1" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177" - integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw== - dependencies: - is-core-module "^2.9.0" - path-parse "^1.0.7" - supports-preserve-symlinks-flag "^1.0.0" - -ret@~0.1.10: - version "0.1.15" - resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" - integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== - -rimraf@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" - integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== - dependencies: - glob "^7.1.3" - -rsvp@^4.8.4: - version "4.8.5" - resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-4.8.5.tgz#c8f155311d167f68f21e168df71ec5b083113734" - integrity sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA== - -safe-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" - integrity sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg== - dependencies: - ret "~0.1.10" - -"safer-buffer@>= 2.1.2 < 3": - version "2.1.2" - resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" - integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== - -sane@^4.0.3: - version "4.1.0" - resolved "https://registry.yarnpkg.com/sane/-/sane-4.1.0.tgz#ed881fd922733a6c461bc189dc2b6c006f3ffded" - integrity sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA== - dependencies: - "@cnakazawa/watch" "^1.0.3" - anymatch "^2.0.0" - capture-exit "^2.0.0" - exec-sh "^0.3.2" - execa "^1.0.0" - fb-watchman "^2.0.0" - micromatch "^3.1.4" - minimist "^1.1.1" - walker "~1.0.5" - -saxes@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/saxes/-/saxes-5.0.1.tgz#eebab953fa3b7608dbe94e5dadb15c888fa6696d" - integrity sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw== - dependencies: - xmlchars "^2.2.0" - -"semver@2 || 3 || 4 || 5", semver@^5.5.0: - version "5.7.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" - integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== - -semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.3.0: - version "6.3.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" - integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== - -semver@^7.3.2: - version "7.3.8" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.8.tgz#07a78feafb3f7b32347d725e33de7e2a2df67798" - integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A== - dependencies: - lru-cache "^6.0.0" - -set-blocking@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" - integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== - -set-value@^2.0.0, set-value@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" - integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.3" - split-string "^3.0.1" - -shebang-command@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" - integrity sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg== - dependencies: - shebang-regex "^1.0.0" - -shebang-command@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" - integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== - dependencies: - shebang-regex "^3.0.0" - -shebang-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" - integrity sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ== - -shebang-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" - integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== - -shellwords@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" - integrity sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww== - -signal-exit@^3.0.0, signal-exit@^3.0.2: - version "3.0.7" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" - integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== - -sisteransi@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" - integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== - -slash@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" - integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== - -snapdragon-node@^2.0.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" - integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== - dependencies: - define-property "^1.0.0" - isobject "^3.0.0" - snapdragon-util "^3.0.1" - -snapdragon-util@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" - integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== - dependencies: - kind-of "^3.2.0" - -snapdragon@^0.8.1: - version "0.8.2" - resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" - integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== - dependencies: - base "^0.11.1" - debug "^2.2.0" - define-property "^0.2.5" - extend-shallow "^2.0.1" - map-cache "^0.2.2" - source-map "^0.5.6" - source-map-resolve "^0.5.0" - use "^3.1.0" - -source-map-resolve@^0.5.0: - version "0.5.3" - resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" - integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw== - dependencies: - atob "^2.1.2" - decode-uri-component "^0.2.0" - resolve-url "^0.2.1" - source-map-url "^0.4.0" - urix "^0.1.0" - -source-map-support@^0.5.6: - version "0.5.21" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" - integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== - dependencies: - buffer-from "^1.0.0" - source-map "^0.6.0" - -source-map-url@^0.4.0: - version "0.4.1" - resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56" - integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== - -source-map@^0.5.6: - version "0.5.7" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" - integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== - -source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" - integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== - -source-map@^0.7.3: - version "0.7.4" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.4.tgz#a9bbe705c9d8846f4e08ff6765acf0f1b0898656" - integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA== - -spdx-correct@^3.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" - integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w== - dependencies: - spdx-expression-parse "^3.0.0" - spdx-license-ids "^3.0.0" - -spdx-exceptions@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" - integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== - -spdx-expression-parse@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" - integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== - dependencies: - spdx-exceptions "^2.1.0" - spdx-license-ids "^3.0.0" - -spdx-license-ids@^3.0.0: - version "3.0.12" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz#69077835abe2710b65f03969898b6637b505a779" - integrity sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA== - -split-string@^3.0.1, split-string@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" - integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== - dependencies: - extend-shallow "^3.0.0" - -sprintf-js@~1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" - integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== - -stack-utils@^2.0.2: - version "2.0.6" - resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f" - integrity sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ== - dependencies: - escape-string-regexp "^2.0.0" - -static-extend@^0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" - integrity sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g== - dependencies: - define-property "^0.2.5" - object-copy "^0.1.0" - -string-length@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a" - integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ== - dependencies: - char-regex "^1.0.2" - strip-ansi "^6.0.0" - -string-width@^4.1.0, string-width@^4.2.0: - version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" - integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.1" - -strip-ansi@^6.0.0, strip-ansi@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" - integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== - dependencies: - ansi-regex "^5.0.1" - -strip-bom@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" - integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== - -strip-eof@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" - integrity sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q== - -strip-final-newline@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" - integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== - -strnum@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/strnum/-/strnum-1.0.5.tgz#5c4e829fe15ad4ff0d20c3db5ac97b73c9b072db" - integrity sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA== - -supports-color@^5.3.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" - integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== - dependencies: - has-flag "^3.0.0" - -supports-color@^7.0.0, supports-color@^7.1.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" - integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== - dependencies: - has-flag "^4.0.0" - -supports-hyperlinks@^2.0.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz#3943544347c1ff90b15effb03fc14ae45ec10624" - integrity sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA== - dependencies: - has-flag "^4.0.0" - supports-color "^7.0.0" - -supports-preserve-symlinks-flag@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" - integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== - -symbol-tree@^3.2.4: - version "3.2.4" - resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" - integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== - -terminal-link@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994" - integrity sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ== - dependencies: - ansi-escapes "^4.2.1" - supports-hyperlinks "^2.0.0" - -test-exclude@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" - integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== - dependencies: - "@istanbuljs/schema" "^0.1.2" - glob "^7.1.4" - minimatch "^3.0.4" - -throat@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/throat/-/throat-5.0.0.tgz#c5199235803aad18754a667d659b5e72ce16764b" - integrity sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA== - -tmpl@1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" - integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== - -to-fast-properties@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" - integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== - -to-object-path@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" - integrity sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg== - dependencies: - kind-of "^3.0.2" - -to-regex-range@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" - integrity sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg== - dependencies: - is-number "^3.0.0" - repeat-string "^1.6.1" - -to-regex-range@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" - integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== - dependencies: - is-number "^7.0.0" - -to-regex@^3.0.1, to-regex@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" - integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== - dependencies: - define-property "^2.0.2" - extend-shallow "^3.0.2" - regex-not "^1.0.2" - safe-regex "^1.1.0" - -tough-cookie@^4.0.0: - version "4.1.2" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.2.tgz#e53e84b85f24e0b65dd526f46628db6c85f6b874" - integrity sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ== - dependencies: - psl "^1.1.33" - punycode "^2.1.1" - universalify "^0.2.0" - url-parse "^1.5.3" - -tr46@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240" - integrity sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw== - dependencies: - punycode "^2.1.1" - -tslib@^1.11.1: - version "1.14.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" - integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== - -tslib@^2.3.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.1.tgz#0d0bfbaac2880b91e22df0768e55be9753a5b17e" - integrity sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA== - -type-check@~0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" - integrity sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg== - dependencies: - prelude-ls "~1.1.2" - -type-detect@4.0.8: - version "4.0.8" - resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" - integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== - -type-fest@^0.21.3: - version "0.21.3" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" - integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== - -type-fest@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b" - integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg== - -type-fest@^0.8.1: - version "0.8.1" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" - integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== - -typedarray-to-buffer@^3.1.5: - version "3.1.5" - resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" - integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== - dependencies: - is-typedarray "^1.0.0" - -unicode-canonical-property-names-ecmascript@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz#301acdc525631670d39f6146e0e77ff6bbdebddc" - integrity sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ== - -unicode-match-property-ecmascript@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz#54fd16e0ecb167cf04cf1f756bdcc92eba7976c3" - integrity sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q== - dependencies: - unicode-canonical-property-names-ecmascript "^2.0.0" - unicode-property-aliases-ecmascript "^2.0.0" - -unicode-match-property-value-ecmascript@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz#cb5fffdcd16a05124f5a4b0bf7c3770208acbbe0" - integrity sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA== - -unicode-property-aliases-ecmascript@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz#43d41e3be698bd493ef911077c9b131f827e8ccd" - integrity sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w== - -union-value@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" - integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== - dependencies: - arr-union "^3.1.0" - get-value "^2.0.6" - is-extendable "^0.1.1" - set-value "^2.0.1" - -universalify@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" - integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== - -unset-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" - integrity sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ== - dependencies: - has-value "^0.3.1" - isobject "^3.0.0" - -update-browserslist-db@^1.0.9: - version "1.0.10" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz#0f54b876545726f17d00cd9a2561e6dade943ff3" - integrity sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ== - dependencies: - escalade "^3.1.1" - picocolors "^1.0.0" - -urix@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" - integrity sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg== - -url-parse@^1.5.3: - version "1.5.10" - resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.10.tgz#9d3c2f736c1d75dd3bd2be507dcc111f1e2ea9c1" - integrity sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ== - dependencies: - querystringify "^2.1.1" - requires-port "^1.0.0" - -use@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" - integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== - -uuid@^8.3.0, uuid@^8.3.2: - version "8.3.2" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" - integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== - -v8-to-istanbul@^7.0.0: - version "7.1.2" - resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-7.1.2.tgz#30898d1a7fa0c84d225a2c1434fb958f290883c1" - integrity sha512-TxNb7YEUwkLXCQYeudi6lgQ/SZrzNO4kMdlqVxaZPUIUjCv6iSSypUQX70kNBSERpQ8fk48+d61FXk+tgqcWow== - dependencies: - "@types/istanbul-lib-coverage" "^2.0.1" - convert-source-map "^1.6.0" - source-map "^0.7.3" - -validate-npm-package-license@^3.0.1: - version "3.0.4" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" - integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== - dependencies: - spdx-correct "^3.0.0" - spdx-expression-parse "^3.0.0" - -w3c-hr-time@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd" - integrity sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ== - dependencies: - browser-process-hrtime "^1.0.0" - -w3c-xmlserializer@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz#3e7104a05b75146cc60f564380b7f683acf1020a" - integrity sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA== - dependencies: - xml-name-validator "^3.0.0" - -walker@^1.0.7, walker@~1.0.5: - version "1.0.8" - resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" - integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== - dependencies: - makeerror "1.0.12" - -webidl-conversions@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" - integrity sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA== - -webidl-conversions@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" - integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w== - -whatwg-encoding@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" - integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== - dependencies: - iconv-lite "0.4.24" - -whatwg-mimetype@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" - integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== - -whatwg-url@^8.0.0, whatwg-url@^8.5.0: - version "8.7.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77" - integrity sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg== - dependencies: - lodash "^4.7.0" - tr46 "^2.1.0" - webidl-conversions "^6.1.0" - -which-module@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" - integrity sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q== - -which@^1.2.9: - version "1.3.1" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" - integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== - dependencies: - isexe "^2.0.0" - -which@^2.0.1, which@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" - integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== - dependencies: - isexe "^2.0.0" - -word-wrap@~1.2.3: - version "1.2.3" - resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" - integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== - -wrap-ansi@^6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" - integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - -wrappy@1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== - -write-file-atomic@^3.0.0: - version "3.0.3" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" - integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== - dependencies: - imurmurhash "^0.1.4" - is-typedarray "^1.0.0" - signal-exit "^3.0.2" - typedarray-to-buffer "^3.1.5" - -ws@^7.4.6: - version "7.5.9" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591" - integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q== - -xml-name-validator@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" - integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== - -xmlchars@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" - integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== - -y18n@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz#b5f259c82cd6e336921efd7bfd8bf560de9eeedf" - integrity sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ== - -yallist@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" - integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== - -yargs-parser@^18.1.2: - version "18.1.3" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz#be68c4975c6b2abf469236b0c870362fab09a7b0" - integrity sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ== - dependencies: - camelcase "^5.0.0" - decamelize "^1.2.0" - -yargs@^15.4.1: - version "15.4.1" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-15.4.1.tgz#0d87a16de01aee9d8bec2bfbf74f67851730f4f8" - integrity sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A== - dependencies: - cliui "^6.0.0" - decamelize "^1.2.0" - find-up "^4.1.0" - get-caller-file "^2.0.1" - require-directory "^2.1.1" - require-main-filename "^2.0.0" - set-blocking "^2.0.0" - string-width "^4.2.0" - which-module "^2.0.0" - y18n "^4.0.0" - yargs-parser "^18.1.2" diff --git a/javascriptv3/package-lock.json b/javascriptv3/package-lock.json index 2bd8b2644e8..8891adbc1f5 100644 --- a/javascriptv3/package-lock.json +++ b/javascriptv3/package-lock.json @@ -14,7 +14,8 @@ "example_code/libs", "example_code/sts", "example_code/support", - "example_code/ec2" + "example_code/ec2", + "example_code/s3" ], "devDependencies": { "lerna": "^6.3.0" @@ -1433,214 +1434,490 @@ "uuid": "dist/bin/uuid" } }, - "example_code/sts": { - "name": "example-javascriptv3-sts", + "example_code/s3": { + "name": "example-javascriptv3-s3", "version": "1.0.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/client-sts": "^3.254.0" + "@aws-crypto/sha256-browser": "^4.0.0", + "@aws-sdk/client-s3": "^3.272.0", + "@aws-sdk/credential-providers": "^3.276.0", + "@aws-sdk/hash-node": "^3.272.0", + "@aws-sdk/protocol-http": "^3.272.0", + "@aws-sdk/s3-request-presigner": "^3.276.0", + "@aws-sdk/url-parser": "^3.272.0", + "@aws-sdk/util-format-url": "^3.272.0", + "libs": "*" + }, + "devDependencies": { + "vitest": "^0.28.5" } }, - "example_code/sts/node_modules/@aws-crypto/ie11-detection": { + "example_code/s3/node_modules/@aws-crypto/crc32": { "version": "3.0.0", - "license": "Apache-2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/crc32/-/crc32-3.0.0.tgz", + "integrity": "sha512-IzSgsrxUcsrejQbPVilIKy16kAT52EwB6zSaI+M3xxIhKh5+aldEyvI+z6erM7TCLB2BJsFrtHjp6/4/sr+3dA==", "dependencies": { + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", "tslib": "^1.11.1" } }, - "example_code/sts/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "example_code/s3/node_modules/@aws-crypto/crc32/node_modules/tslib": { "version": "1.14.1", - "license": "0BSD" + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, - "example_code/sts/node_modules/@aws-crypto/sha256-browser": { - "version": "3.0.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-crypto/ie11-detection": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-4.0.0.tgz", + "integrity": "sha512-0zM8cbr1sEwjuTwx846nDvD1w0/rDcL4FsEPGwkX+CtJr5G0/ccxpmYAWPYOgAkD+qTyXwSgRBlHOBFS0dXXfw==", "dependencies": { - "@aws-crypto/ie11-detection": "^3.0.0", - "@aws-crypto/sha256-js": "^3.0.0", - "@aws-crypto/supports-web-crypto": "^3.0.0", - "@aws-crypto/util": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "example_code/s3/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "example_code/s3/node_modules/@aws-crypto/sha256-browser": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-4.0.0.tgz", + "integrity": "sha512-9UIcHXJhUac5m5W07y1iWMGZzfvosekm+OPRRIgS1Mdo7OEUgtRRLmP0aY29eubNyj3TqoB9I4Q5NckD1Ge/8Q==", + "dependencies": { + "@aws-crypto/ie11-detection": "^4.0.0", + "@aws-crypto/sha256-js": "^4.0.0", + "@aws-crypto/supports-web-crypto": "^4.0.0", + "@aws-crypto/util": "^4.0.0", "@aws-sdk/types": "^3.222.0", "@aws-sdk/util-locate-window": "^3.0.0", "@aws-sdk/util-utf8-browser": "^3.0.0", "tslib": "^1.11.1" } }, - "example_code/sts/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "example_code/s3/node_modules/@aws-crypto/sha256-browser/node_modules/@aws-crypto/sha256-js": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-4.0.0.tgz", + "integrity": "sha512-MHGJyjE7TX9aaqXj7zk2ppnFUOhaDs5sP+HtNS0evOxn72c+5njUmyJmpGd7TfyoDznZlHMmdo/xGUdu2NIjNQ==", + "dependencies": { + "@aws-crypto/util": "^4.0.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^1.11.1" + } + }, + "example_code/s3/node_modules/@aws-crypto/sha256-browser/node_modules/@aws-crypto/util": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-4.0.0.tgz", + "integrity": "sha512-2EnmPy2gsFZ6m8bwUQN4jq+IyXV3quHAcwPOS6ZA3k+geujiqI8aRokO2kFJe+idJ/P3v4qWI186rVMo0+zLDQ==", + "dependencies": { + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "example_code/s3/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { "version": "1.14.1", - "license": "0BSD" + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, - "example_code/sts/node_modules/@aws-crypto/sha256-js": { + "example_code/s3/node_modules/@aws-crypto/sha256-js": { "version": "3.0.0", - "license": "Apache-2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-3.0.0.tgz", + "integrity": "sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==", "dependencies": { "@aws-crypto/util": "^3.0.0", "@aws-sdk/types": "^3.222.0", "tslib": "^1.11.1" } }, - "example_code/sts/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "example_code/s3/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { "version": "1.14.1", - "license": "0BSD" + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, - "example_code/sts/node_modules/@aws-crypto/supports-web-crypto": { - "version": "3.0.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-crypto/supports-web-crypto": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-4.0.0.tgz", + "integrity": "sha512-F+fpeuMgDCUgV/0gPLjERcwV94L8xapfGP0xzyADeCfyKDcJV8nKrG+HVlcQXV3UztEsUS/sjfJzBTPe/ukEUA==", "dependencies": { "tslib": "^1.11.1" } }, - "example_code/sts/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "example_code/s3/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { "version": "1.14.1", - "license": "0BSD" + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, - "example_code/sts/node_modules/@aws-crypto/util": { + "example_code/s3/node_modules/@aws-crypto/util": { "version": "3.0.0", - "license": "Apache-2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz", + "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==", "dependencies": { "@aws-sdk/types": "^3.222.0", "@aws-sdk/util-utf8-browser": "^3.0.0", "tslib": "^1.11.1" } }, - "example_code/sts/node_modules/@aws-crypto/util/node_modules/tslib": { + "example_code/s3/node_modules/@aws-crypto/util/node_modules/tslib": { "version": "1.14.1", - "license": "0BSD" + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, - "example_code/sts/node_modules/@aws-sdk/abort-controller": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/abort-controller": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.272.0.tgz", + "integrity": "sha512-s2TV3phapcTwZNr4qLxbfuQuE9ZMP4RoJdkvRRCkKdm6jslsWLJf2Zlcxti/23hOlINUMYv2iXE2pftIgWGdpg==", "dependencies": { - "@aws-sdk/types": "3.254.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/client-sso": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/chunked-blob-reader": { + "version": "3.188.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/chunked-blob-reader/-/chunked-blob-reader-3.188.0.tgz", + "integrity": "sha512-zkPRFZZPL3eH+kH86LDYYXImiClA1/sW60zYOjse9Pgka+eDJlvBN6hcYxwDEKjcwATYiSRR1aVQHcfCinlGXg==", "dependencies": { + "tslib": "^2.3.1" + } + }, + "example_code/s3/node_modules/@aws-sdk/chunked-blob-reader-native": { + "version": "3.208.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/chunked-blob-reader-native/-/chunked-blob-reader-native-3.208.0.tgz", + "integrity": "sha512-JeOZ95PW+fJ6bbuqPySYqLqHk1n4+4ueEEraJsiUrPBV0S1ZtyvOGHcnGztKUjr2PYNaiexmpWuvUve9K12HRA==", + "dependencies": { + "@aws-sdk/util-base64": "3.208.0", + "tslib": "^2.3.1" + } + }, + "example_code/s3/node_modules/@aws-sdk/client-s3": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.272.0.tgz", + "integrity": "sha512-KxlVhTHfmcm3HlAP5+vY1cuQt60AaYOISp1ccYOPsww7Ly7fbDnbov0AV9bcwlLLVcfZFWQYJqH+Gvk2SpyXFQ==", + "dependencies": { + "@aws-crypto/sha1-browser": "3.0.0", "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.254.0", - "@aws-sdk/fetch-http-handler": "3.254.0", - "@aws-sdk/hash-node": "3.254.0", - "@aws-sdk/invalid-dependency": "3.254.0", - "@aws-sdk/middleware-content-length": "3.254.0", - "@aws-sdk/middleware-endpoint": "3.254.0", - "@aws-sdk/middleware-host-header": "3.254.0", - "@aws-sdk/middleware-logger": "3.254.0", - "@aws-sdk/middleware-recursion-detection": "3.254.0", - "@aws-sdk/middleware-retry": "3.254.0", - "@aws-sdk/middleware-serde": "3.254.0", - "@aws-sdk/middleware-stack": "3.254.0", - "@aws-sdk/middleware-user-agent": "3.254.0", - "@aws-sdk/node-config-provider": "3.254.0", - "@aws-sdk/node-http-handler": "3.254.0", - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/smithy-client": "3.254.0", - "@aws-sdk/types": "3.254.0", - "@aws-sdk/url-parser": "3.254.0", + "@aws-sdk/client-sts": "3.272.0", + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/credential-provider-node": "3.272.0", + "@aws-sdk/eventstream-serde-browser": "3.272.0", + "@aws-sdk/eventstream-serde-config-resolver": "3.272.0", + "@aws-sdk/eventstream-serde-node": "3.272.0", + "@aws-sdk/fetch-http-handler": "3.272.0", + "@aws-sdk/hash-blob-browser": "3.272.0", + "@aws-sdk/hash-node": "3.272.0", + "@aws-sdk/hash-stream-node": "3.272.0", + "@aws-sdk/invalid-dependency": "3.272.0", + "@aws-sdk/md5-js": "3.272.0", + "@aws-sdk/middleware-bucket-endpoint": "3.272.0", + "@aws-sdk/middleware-content-length": "3.272.0", + "@aws-sdk/middleware-endpoint": "3.272.0", + "@aws-sdk/middleware-expect-continue": "3.272.0", + "@aws-sdk/middleware-flexible-checksums": "3.272.0", + "@aws-sdk/middleware-host-header": "3.272.0", + "@aws-sdk/middleware-location-constraint": "3.272.0", + "@aws-sdk/middleware-logger": "3.272.0", + "@aws-sdk/middleware-recursion-detection": "3.272.0", + "@aws-sdk/middleware-retry": "3.272.0", + "@aws-sdk/middleware-sdk-s3": "3.272.0", + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/middleware-signing": "3.272.0", + "@aws-sdk/middleware-ssec": "3.272.0", + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/middleware-user-agent": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/node-http-handler": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/signature-v4-multi-region": "3.272.0", + "@aws-sdk/smithy-client": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", "@aws-sdk/util-base64": "3.208.0", "@aws-sdk/util-body-length-browser": "3.188.0", "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.254.0", - "@aws-sdk/util-defaults-mode-node": "3.254.0", - "@aws-sdk/util-endpoints": "3.254.0", - "@aws-sdk/util-retry": "3.254.0", - "@aws-sdk/util-user-agent-browser": "3.254.0", - "@aws-sdk/util-user-agent-node": "3.254.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.272.0", + "@aws-sdk/util-defaults-mode-node": "3.272.0", + "@aws-sdk/util-endpoints": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", + "@aws-sdk/util-stream-browser": "3.272.0", + "@aws-sdk/util-stream-node": "3.272.0", + "@aws-sdk/util-user-agent-browser": "3.272.0", + "@aws-sdk/util-user-agent-node": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", + "@aws-sdk/util-waiter": "3.272.0", + "@aws-sdk/xml-builder": "3.201.0", + "fast-xml-parser": "4.0.11", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/client-sso-oidc": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/ie11-detection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz", + "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==", + "dependencies": { + "tslib": "^1.11.1" + } + }, + "example_code/s3/node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "example_code/s3/node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/sha256-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz", + "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==", + "dependencies": { + "@aws-crypto/ie11-detection": "^3.0.0", + "@aws-crypto/sha256-js": "^3.0.0", + "@aws-crypto/supports-web-crypto": "^3.0.0", + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "example_code/s3/node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "example_code/s3/node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/supports-web-crypto": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz", + "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==", + "dependencies": { + "tslib": "^1.11.1" + } + }, + "example_code/s3/node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "example_code/s3/node_modules/@aws-sdk/client-sso": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.272.0.tgz", + "integrity": "sha512-xn9a0IGONwQIARmngThoRhF1lLGjHAD67sUaShgIMaIMc6ipVYN6alWG1VuUpoUQ6iiwMEt0CHdfCyLyUV/fTA==", "dependencies": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.254.0", - "@aws-sdk/fetch-http-handler": "3.254.0", - "@aws-sdk/hash-node": "3.254.0", - "@aws-sdk/invalid-dependency": "3.254.0", - "@aws-sdk/middleware-content-length": "3.254.0", - "@aws-sdk/middleware-endpoint": "3.254.0", - "@aws-sdk/middleware-host-header": "3.254.0", - "@aws-sdk/middleware-logger": "3.254.0", - "@aws-sdk/middleware-recursion-detection": "3.254.0", - "@aws-sdk/middleware-retry": "3.254.0", - "@aws-sdk/middleware-serde": "3.254.0", - "@aws-sdk/middleware-stack": "3.254.0", - "@aws-sdk/middleware-user-agent": "3.254.0", - "@aws-sdk/node-config-provider": "3.254.0", - "@aws-sdk/node-http-handler": "3.254.0", - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/smithy-client": "3.254.0", - "@aws-sdk/types": "3.254.0", - "@aws-sdk/url-parser": "3.254.0", + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/fetch-http-handler": "3.272.0", + "@aws-sdk/hash-node": "3.272.0", + "@aws-sdk/invalid-dependency": "3.272.0", + "@aws-sdk/middleware-content-length": "3.272.0", + "@aws-sdk/middleware-endpoint": "3.272.0", + "@aws-sdk/middleware-host-header": "3.272.0", + "@aws-sdk/middleware-logger": "3.272.0", + "@aws-sdk/middleware-recursion-detection": "3.272.0", + "@aws-sdk/middleware-retry": "3.272.0", + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/middleware-user-agent": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/node-http-handler": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/smithy-client": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", "@aws-sdk/util-base64": "3.208.0", "@aws-sdk/util-body-length-browser": "3.188.0", "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.254.0", - "@aws-sdk/util-defaults-mode-node": "3.254.0", - "@aws-sdk/util-endpoints": "3.254.0", - "@aws-sdk/util-retry": "3.254.0", - "@aws-sdk/util-user-agent-browser": "3.254.0", - "@aws-sdk/util-user-agent-node": "3.254.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.272.0", + "@aws-sdk/util-defaults-mode-node": "3.272.0", + "@aws-sdk/util-endpoints": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", + "@aws-sdk/util-user-agent-browser": "3.272.0", + "@aws-sdk/util-user-agent-node": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/client-sts": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.272.0.tgz", + "integrity": "sha512-ECcXu3xoa1yggnGKMTh29eWNHiF/wC6r5Uqbla22eOOosyh0+Z6lkJ3JUSLOUKCkBXA4Cs/tJL9UDFBrKbSlvA==", "dependencies": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.254.0", - "@aws-sdk/credential-provider-node": "3.254.0", - "@aws-sdk/fetch-http-handler": "3.254.0", - "@aws-sdk/hash-node": "3.254.0", - "@aws-sdk/invalid-dependency": "3.254.0", - "@aws-sdk/middleware-content-length": "3.254.0", - "@aws-sdk/middleware-endpoint": "3.254.0", - "@aws-sdk/middleware-host-header": "3.254.0", - "@aws-sdk/middleware-logger": "3.254.0", - "@aws-sdk/middleware-recursion-detection": "3.254.0", - "@aws-sdk/middleware-retry": "3.254.0", - "@aws-sdk/middleware-sdk-sts": "3.254.0", - "@aws-sdk/middleware-serde": "3.254.0", - "@aws-sdk/middleware-signing": "3.254.0", - "@aws-sdk/middleware-stack": "3.254.0", - "@aws-sdk/middleware-user-agent": "3.254.0", - "@aws-sdk/node-config-provider": "3.254.0", - "@aws-sdk/node-http-handler": "3.254.0", - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/smithy-client": "3.254.0", - "@aws-sdk/types": "3.254.0", - "@aws-sdk/url-parser": "3.254.0", + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/fetch-http-handler": "3.272.0", + "@aws-sdk/hash-node": "3.272.0", + "@aws-sdk/invalid-dependency": "3.272.0", + "@aws-sdk/middleware-content-length": "3.272.0", + "@aws-sdk/middleware-endpoint": "3.272.0", + "@aws-sdk/middleware-host-header": "3.272.0", + "@aws-sdk/middleware-logger": "3.272.0", + "@aws-sdk/middleware-recursion-detection": "3.272.0", + "@aws-sdk/middleware-retry": "3.272.0", + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/middleware-user-agent": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/node-http-handler": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/smithy-client": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", "@aws-sdk/util-base64": "3.208.0", "@aws-sdk/util-body-length-browser": "3.188.0", "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.254.0", - "@aws-sdk/util-defaults-mode-node": "3.254.0", - "@aws-sdk/util-endpoints": "3.254.0", - "@aws-sdk/util-retry": "3.254.0", - "@aws-sdk/util-user-agent-browser": "3.254.0", - "@aws-sdk/util-user-agent-node": "3.254.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.272.0", + "@aws-sdk/util-defaults-mode-node": "3.272.0", + "@aws-sdk/util-endpoints": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", + "@aws-sdk/util-user-agent-browser": "3.272.0", + "@aws-sdk/util-user-agent-node": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "example_code/s3/node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-crypto/ie11-detection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz", + "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==", + "dependencies": { + "tslib": "^1.11.1" + } + }, + "example_code/s3/node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "example_code/s3/node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-crypto/sha256-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz", + "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==", + "dependencies": { + "@aws-crypto/ie11-detection": "^3.0.0", + "@aws-crypto/sha256-js": "^3.0.0", + "@aws-crypto/supports-web-crypto": "^3.0.0", + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "example_code/s3/node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "example_code/s3/node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-crypto/supports-web-crypto": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz", + "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==", + "dependencies": { + "tslib": "^1.11.1" + } + }, + "example_code/s3/node_modules/@aws-sdk/client-sso-oidc/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "example_code/s3/node_modules/@aws-sdk/client-sso/node_modules/@aws-crypto/ie11-detection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz", + "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==", + "dependencies": { + "tslib": "^1.11.1" + } + }, + "example_code/s3/node_modules/@aws-sdk/client-sso/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "example_code/s3/node_modules/@aws-sdk/client-sso/node_modules/@aws-crypto/sha256-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz", + "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==", + "dependencies": { + "@aws-crypto/ie11-detection": "^3.0.0", + "@aws-crypto/sha256-js": "^3.0.0", + "@aws-crypto/supports-web-crypto": "^3.0.0", + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "example_code/s3/node_modules/@aws-sdk/client-sso/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "example_code/s3/node_modules/@aws-sdk/client-sso/node_modules/@aws-crypto/supports-web-crypto": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz", + "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==", + "dependencies": { + "tslib": "^1.11.1" + } + }, + "example_code/s3/node_modules/@aws-sdk/client-sso/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "example_code/s3/node_modules/@aws-sdk/client-sts": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.272.0.tgz", + "integrity": "sha512-kigxCxURp3WupufGaL/LABMb7UQfzAQkKcj9royizL3ItJ0vw5kW/JFrPje5IW1mfLgdPF7PI9ShOjE0fCLTqA==", + "dependencies": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/credential-provider-node": "3.272.0", + "@aws-sdk/fetch-http-handler": "3.272.0", + "@aws-sdk/hash-node": "3.272.0", + "@aws-sdk/invalid-dependency": "3.272.0", + "@aws-sdk/middleware-content-length": "3.272.0", + "@aws-sdk/middleware-endpoint": "3.272.0", + "@aws-sdk/middleware-host-header": "3.272.0", + "@aws-sdk/middleware-logger": "3.272.0", + "@aws-sdk/middleware-recursion-detection": "3.272.0", + "@aws-sdk/middleware-retry": "3.272.0", + "@aws-sdk/middleware-sdk-sts": "3.272.0", + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/middleware-signing": "3.272.0", + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/middleware-user-agent": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/node-http-handler": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/smithy-client": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.272.0", + "@aws-sdk/util-defaults-mode-node": "3.272.0", + "@aws-sdk/util-endpoints": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", + "@aws-sdk/util-user-agent-browser": "3.272.0", + "@aws-sdk/util-user-agent-node": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", "fast-xml-parser": "4.0.11", "tslib": "^2.3.1" }, @@ -1648,834 +1925,885 @@ "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/config-resolver": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/client-sts/node_modules/@aws-crypto/ie11-detection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz", + "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==", "dependencies": { - "@aws-sdk/signature-v4": "3.254.0", - "@aws-sdk/types": "3.254.0", + "tslib": "^1.11.1" + } + }, + "example_code/s3/node_modules/@aws-sdk/client-sts/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "example_code/s3/node_modules/@aws-sdk/client-sts/node_modules/@aws-crypto/sha256-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz", + "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==", + "dependencies": { + "@aws-crypto/ie11-detection": "^3.0.0", + "@aws-crypto/sha256-js": "^3.0.0", + "@aws-crypto/supports-web-crypto": "^3.0.0", + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "example_code/s3/node_modules/@aws-sdk/client-sts/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "example_code/s3/node_modules/@aws-sdk/client-sts/node_modules/@aws-crypto/supports-web-crypto": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz", + "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==", + "dependencies": { + "tslib": "^1.11.1" + } + }, + "example_code/s3/node_modules/@aws-sdk/client-sts/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "example_code/s3/node_modules/@aws-sdk/config-resolver": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.272.0.tgz", + "integrity": "sha512-Dr4CffRVNsOp3LRNdpvcH6XuSgXOSLblWliCy/5I86cNl567KVMxujVx6uPrdTXYs2h1rt3MNl6jQGnAiJeTbw==", + "dependencies": { + "@aws-sdk/signature-v4": "3.272.0", + "@aws-sdk/types": "3.272.0", "@aws-sdk/util-config-provider": "3.208.0", - "@aws-sdk/util-middleware": "3.254.0", + "@aws-sdk/util-middleware": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/credential-provider-env": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/credential-provider-env": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.272.0.tgz", + "integrity": "sha512-QI65NbLnKLYHyTYhXaaUrq6eVsCCrMUb05WDA7+TJkWkjXesovpjc8vUKgFiLSxmgKmb2uOhHNcDyObKMrYQFw==", "dependencies": { - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/credential-provider-imds": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/credential-provider-imds": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.272.0.tgz", + "integrity": "sha512-wwAfVY1jTFQEfxVfdYD5r5ieYGl+0g4nhekVxNMqE8E1JeRDd18OqiwAflzpgBIqxfqvCUkf+vl5JYyacMkNAQ==", "dependencies": { - "@aws-sdk/node-config-provider": "3.254.0", - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/types": "3.254.0", - "@aws-sdk/url-parser": "3.254.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.272.0.tgz", + "integrity": "sha512-iE3CDzK5NcupHYjfYjBdY1JCy8NLEoRUsboEjG0i0gy3S3jVpDeVHX1dLVcL/slBFj6GiM7SoNV/UfKnJf3Gaw==", "dependencies": { - "@aws-sdk/credential-provider-env": "3.254.0", - "@aws-sdk/credential-provider-imds": "3.254.0", - "@aws-sdk/credential-provider-process": "3.254.0", - "@aws-sdk/credential-provider-sso": "3.254.0", - "@aws-sdk/credential-provider-web-identity": "3.254.0", - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/shared-ini-file-loader": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/credential-provider-env": "3.272.0", + "@aws-sdk/credential-provider-imds": "3.272.0", + "@aws-sdk/credential-provider-process": "3.272.0", + "@aws-sdk/credential-provider-sso": "3.272.0", + "@aws-sdk/credential-provider-web-identity": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/credential-provider-node": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/credential-provider-node": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.272.0.tgz", + "integrity": "sha512-FI8uvwM1IxiRSvbkdKv8DZG5vxU3ezaseTaB1fHWTxEUFb0pWIoHX9oeOKer9Fj31SOZTCNAaYFURbSRuZlm/w==", "dependencies": { - "@aws-sdk/credential-provider-env": "3.254.0", - "@aws-sdk/credential-provider-imds": "3.254.0", - "@aws-sdk/credential-provider-ini": "3.254.0", - "@aws-sdk/credential-provider-process": "3.254.0", - "@aws-sdk/credential-provider-sso": "3.254.0", - "@aws-sdk/credential-provider-web-identity": "3.254.0", - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/shared-ini-file-loader": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/credential-provider-env": "3.272.0", + "@aws-sdk/credential-provider-imds": "3.272.0", + "@aws-sdk/credential-provider-ini": "3.272.0", + "@aws-sdk/credential-provider-process": "3.272.0", + "@aws-sdk/credential-provider-sso": "3.272.0", + "@aws-sdk/credential-provider-web-identity": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/credential-provider-process": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/credential-provider-process": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.272.0.tgz", + "integrity": "sha512-hiCAjWWm2PeBFp5cjkxqyam/XADjiS+e7GzwC34TbZn3LisS0uoweLojj9tD11NnnUhyhbLteUvu5+rotOLwrg==", "dependencies": { - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/shared-ini-file-loader": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.272.0.tgz", + "integrity": "sha512-hwYaulyiU/7chKKFecxCeo0ls6Dxs7h+5EtoYcJJGvfpvCncyOZF35t00OAsCd3Wo7HkhhgfpGdb6dmvCNQAZQ==", "dependencies": { - "@aws-sdk/client-sso": "3.254.0", - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/shared-ini-file-loader": "3.254.0", - "@aws-sdk/token-providers": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/client-sso": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/token-providers": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.272.0.tgz", + "integrity": "sha512-ImrHMkcgneGa/HadHAQXPwOrX26sAKuB8qlMxZF/ZCM2B55u8deY+ZVkVuraeKb7YsahMGehPFOfRAF6mvFI5Q==", "dependencies": { - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/fetch-http-handler": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/eventstream-codec": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/eventstream-codec/-/eventstream-codec-3.272.0.tgz", + "integrity": "sha512-HYMzglDnqUhvx3u9MdzZ/OjLuavaaH9zF9XMXRuv7bdsN9AAi3/0he0FEx84ZXNXSAZCebLwXJYf0ZrN6g37QA==", "dependencies": { - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/querystring-builder": "3.254.0", - "@aws-sdk/types": "3.254.0", - "@aws-sdk/util-base64": "3.208.0", + "@aws-crypto/crc32": "3.0.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-hex-encoding": "3.201.0", "tslib": "^2.3.1" } }, - "example_code/sts/node_modules/@aws-sdk/hash-node": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/eventstream-serde-browser": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/eventstream-serde-browser/-/eventstream-serde-browser-3.272.0.tgz", + "integrity": "sha512-mE1+mevS+KVKpnTLi5FytsBwAK1kWZ92ERtAiElp58SKE1OpfSg8lEY8VI6JKGlueN540Qq3LeIgA2/HJOcK/w==", "dependencies": { - "@aws-sdk/types": "3.254.0", - "@aws-sdk/util-buffer-from": "3.208.0", - "@aws-sdk/util-utf8": "3.254.0", + "@aws-sdk/eventstream-serde-universal": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/invalid-dependency": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/eventstream-serde-config-resolver": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.272.0.tgz", + "integrity": "sha512-e47BhGBvx+me53cvYx+47ml5KNDj7XoTth80krHlyLrimFELE1ij4tHSKR/XzilKKH1uIWmJQdlAi29129ZX5w==", "dependencies": { - "@aws-sdk/types": "3.254.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/middleware-content-length": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/eventstream-serde-node": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/eventstream-serde-node/-/eventstream-serde-node-3.272.0.tgz", + "integrity": "sha512-uto8y4FoZugWnczM1TKwv6oV2Po2Jgrp+W1Ws3baRQ4Lan+QpFx3Tps1N5rNzQ+7Uz0xT1BhbSNPAkKs22/jtg==", "dependencies": { - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/eventstream-serde-universal": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/middleware-endpoint": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/eventstream-serde-universal": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/eventstream-serde-universal/-/eventstream-serde-universal-3.272.0.tgz", + "integrity": "sha512-E9jlt8tzDcEMoNlgv3+01jGPJPHmbmw2NsajZhB4axVMpEy247JV6qvCZe+5R+EGy96t0pfsO2naViEB4Va47g==", "dependencies": { - "@aws-sdk/middleware-serde": "3.254.0", - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/signature-v4": "3.254.0", - "@aws-sdk/types": "3.254.0", - "@aws-sdk/url-parser": "3.254.0", - "@aws-sdk/util-config-provider": "3.208.0", - "@aws-sdk/util-middleware": "3.254.0", + "@aws-sdk/eventstream-codec": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/middleware-host-header": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/fetch-http-handler": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.272.0.tgz", + "integrity": "sha512-1Qhm9e0RbS1Xf4CZqUbQyUMkDLd7GrsRXWIvm9b86/vgeV8/WnjO3CMue9D51nYgcyQORhYXv6uVjAYCWbUExA==", "dependencies": { - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/querystring-builder": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-base64": "3.208.0", "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/middleware-logger": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/hash-blob-browser": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-blob-browser/-/hash-blob-browser-3.272.0.tgz", + "integrity": "sha512-IRCIMG42fXcdD92C8Sb0CQI8D/msxDwHGAIqP94iGhVEnKX2egyx5J8lmPY4gEky5UzyMMaH7cayBv89ZMEBmQ==", "dependencies": { - "@aws-sdk/types": "3.254.0", + "@aws-sdk/chunked-blob-reader": "3.188.0", + "@aws-sdk/chunked-blob-reader-native": "3.208.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "example_code/s3/node_modules/@aws-sdk/hash-node": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.272.0.tgz", + "integrity": "sha512-40dwND+iAm3VtPHPZu7/+CIdVJFk2s0cWZt1lOiMPMSXycSYJ45wMk7Lly3uoqRx0uWfFK5iT2OCv+fJi5jTng==", + "dependencies": { + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-buffer-from": "3.208.0", + "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/hash-stream-node": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-stream-node/-/hash-stream-node-3.272.0.tgz", + "integrity": "sha512-mWwQWdfVYoR6PXRLkHP6pC1cghZMg0ULuOAm70EtTO2YXiyLlMIDb+VD4RRbjh3hNkzh+y/W47wSUJthGBM1kg==", "dependencies": { - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/middleware-retry": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/invalid-dependency": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.272.0.tgz", + "integrity": "sha512-ysW6wbjl1Y78txHUQ/Tldj2Rg1BI7rpMO9B9xAF6yAX3mQ7t6SUPQG/ewOGvH2208NBIl3qP5e/hDf0Q6r/1iw==", "dependencies": { - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/service-error-classification": "3.254.0", - "@aws-sdk/types": "3.254.0", - "@aws-sdk/util-middleware": "3.254.0", - "@aws-sdk/util-retry": "3.254.0", - "tslib": "^2.3.1", - "uuid": "^8.3.2" + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "example_code/s3/node_modules/@aws-sdk/md5-js": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/md5-js/-/md5-js-3.272.0.tgz", + "integrity": "sha512-/GK32mgAarhn/F0xCeBKbYfLRof3tOCNrg8mAGNz9Di8E1/qMOnX/OXUGag0lsvNZ6DTjdjln29t4e8iKmOVqA==", + "dependencies": { + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + } + }, + "example_code/s3/node_modules/@aws-sdk/middleware-bucket-endpoint": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.272.0.tgz", + "integrity": "sha512-523T6JXfjsY9uSgMusa6myCccRv2TWyUSjzMx/0aUHfHRacJSunfPtSNX1kfYxXWn/ByWhaieHFBPehVI6wg1A==", + "dependencies": { + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-arn-parser": "3.208.0", + "@aws-sdk/util-config-provider": "3.208.0", + "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/middleware-sdk-sts": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/middleware-content-length": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.272.0.tgz", + "integrity": "sha512-sAbDZSTNmLX+UTGwlUHJBWy0QGQkiClpHwVFXACon+aG0ySLNeRKEVYs6NCPYldw4cj6hveLUn50cX44ukHErw==", "dependencies": { - "@aws-sdk/middleware-signing": "3.254.0", - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/signature-v4": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/middleware-serde": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/middleware-endpoint": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.272.0.tgz", + "integrity": "sha512-Dk3JVjj7SxxoUKv3xGiOeBksvPtFhTDrVW75XJ98Ymv8gJH5L1sq4hIeJAHRKogGiRFq2J73mnZSlM9FVXEylg==", "dependencies": { - "@aws-sdk/types": "3.254.0", + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/signature-v4": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/middleware-signing": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/middleware-expect-continue": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.272.0.tgz", + "integrity": "sha512-TNx61LCZUKp/yZqcb38qb4tU3lbhKaI9zn2FQ+fpKzUSTI3H6E5aw42wHaq2LEacYlyK3b5Wg1R0sKR+vsUutw==", "dependencies": { - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/signature-v4": "3.254.0", - "@aws-sdk/types": "3.254.0", - "@aws-sdk/util-middleware": "3.254.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/middleware-stack": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/middleware-host-header": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.272.0.tgz", + "integrity": "sha512-Q8K7bMMFZnioUXpxn57HIt4p+I63XaNAawMLIZ5B4F2piyukbQeM9q2XVKMGwqLvijHR8CyP5nHrtKqVuINogQ==", "dependencies": { + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/middleware-location-constraint": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.272.0.tgz", + "integrity": "sha512-tROQ1DM9djxfXmXPTT0XietrUt6y6QEHShPI9rQMstjXYiaHBVXRveuRLcLAKwl4nXIrgmnIU7ygyj2ZyD8gcA==", "dependencies": { - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/node-config-provider": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/middleware-logger": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.272.0.tgz", + "integrity": "sha512-u2SQ0hWrFwxbxxYMG5uMEgf01pQY5jauK/LYWgGIvuCmFgiyRQQP3oN7kkmsxnS9MWmNmhbyQguX2NY02s5e9w==", "dependencies": { - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/shared-ini-file-loader": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/node-http-handler": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.272.0.tgz", + "integrity": "sha512-Gp/eKWeUWVNiiBdmUM2qLkBv+VLSJKoWAO+aKmyxxwjjmWhE0FrfA1NQ1a3g+NGMhRbAfQdaYswRAKsul70ISg==", "dependencies": { - "@aws-sdk/abort-controller": "3.254.0", - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/querystring-builder": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/property-provider": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/middleware-retry": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.272.0.tgz", + "integrity": "sha512-pCGvHM7C76VbO/dFerH+Vwf7tGv7j+e+eGrvhQ35mRghCtfIou/WMfTZlD1TNee93crrAQQVZKjtW3dMB3WCzg==", "dependencies": { - "@aws-sdk/types": "3.254.0", - "tslib": "^2.3.1" + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/service-error-classification": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-middleware": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", + "tslib": "^2.3.1", + "uuid": "^8.3.2" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/protocol-http": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/middleware-sdk-s3": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.272.0.tgz", + "integrity": "sha512-uMvoLePkyP54b9BckMELlDnFh0SGPAfTkBwiH/FC79K7noGLA5A4KgqKObtB9LPYHkPfm1WLqIgdaE6gS1BlFQ==", "dependencies": { - "@aws-sdk/types": "3.254.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-arn-parser": "3.208.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/querystring-builder": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/middleware-sdk-sts": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.272.0.tgz", + "integrity": "sha512-VvYPg7LrDIjUOWueSzo2wBzcNG7dw+cmzV6zAKaLxf0RC5jeAP4hE0OzDiiZfDrjNghEzgq/V+0NO+LewqYL9Q==", "dependencies": { - "@aws-sdk/types": "3.254.0", - "@aws-sdk/util-uri-escape": "3.201.0", + "@aws-sdk/middleware-signing": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/signature-v4": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/querystring-parser": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/middleware-serde": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.272.0.tgz", + "integrity": "sha512-kW1uOxgPSwtXPB5rm3QLdWomu42lkYpQL94tM1BjyFOWmBLO2lQhk5a7Dw6HkTozT9a+vxtscLChRa6KZe61Hw==", "dependencies": { - "@aws-sdk/types": "3.254.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/service-error-classification": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/middleware-signing": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.272.0.tgz", + "integrity": "sha512-4LChFK4VAR91X+dupqM8fQqYhFGE0G4Bf9rQlVTgGSbi2KUOmpqXzH0/WKE228nKuEhmH8+Qd2VPSAE2JcyAUA==", + "dependencies": { + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/signature-v4": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-middleware": "3.272.0", + "tslib": "^2.3.1" + }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/shared-ini-file-loader": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/middleware-ssec": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.272.0.tgz", + "integrity": "sha512-WDPcNPkscTmJUzdAvfx8p+YuUn2YR9ocmZA7yYUJ5kA94MyGH6Rbjp8tleWwQvah/HweeCQrYUzJk9wsH64LPA==", "dependencies": { - "@aws-sdk/types": "3.254.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/signature-v4": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/middleware-stack": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.272.0.tgz", + "integrity": "sha512-jhwhknnPBGhfXAGV5GXUWfEhDFoP/DN8MPCO2yC5OAxyp6oVJ8lTPLkZYMTW5VL0c0eG44dXpF4Ib01V+PlDrQ==", "dependencies": { - "@aws-sdk/is-array-buffer": "3.201.0", - "@aws-sdk/types": "3.254.0", - "@aws-sdk/util-hex-encoding": "3.201.0", - "@aws-sdk/util-middleware": "3.254.0", - "@aws-sdk/util-uri-escape": "3.201.0", - "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/smithy-client": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.272.0.tgz", + "integrity": "sha512-Qy7/0fsDJxY5l0bEk7WKDfqb4Os/sCAgFR2zEvrhDtbkhYPf72ysvg/nRUTncmCbo8tOok4SJii2myk8KMfjjw==", "dependencies": { - "@aws-sdk/middleware-stack": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/token-providers": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/node-config-provider": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.272.0.tgz", + "integrity": "sha512-YYCIBh9g1EQo7hm2l22HX5Yr9RoPQ2RCvhzKvF1n1e8t1QH4iObQrYUtqHG4khcm64Cft8C5MwZmgzHbya5Z6Q==", "dependencies": { - "@aws-sdk/client-sso-oidc": "3.254.0", - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/shared-ini-file-loader": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/types": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/node-http-handler": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.272.0.tgz", + "integrity": "sha512-VrW9PjhhngeyYp4yGYPe5S0vgZH6NwU3Po9xAgayUeE37Inr7LS1YteFMHdpgsUUeNXnh7d06CXqHo1XjtqOKA==", "dependencies": { + "@aws-sdk/abort-controller": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/querystring-builder": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/url-parser": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/property-provider": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.272.0.tgz", + "integrity": "sha512-V1pZTaH5eqpAt8O8CzbItHhOtzIfFuWymvwZFkAtwKuaHpnl7jjrTouV482zoq8AD/fF+VVSshwBKYA7bhidIw==", "dependencies": { - "@aws-sdk/querystring-parser": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/util-defaults-mode-browser": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/protocol-http": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.272.0.tgz", + "integrity": "sha512-4JQ54v5Yn08jspNDeHo45CaSn1CvTJqS1Ywgr79eU6jBExtguOWv6LNtwVSBD9X37v88iqaxt8iu1Z3pZZAJeg==", "dependencies": { - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/types": "3.254.0", - "bowser": "^2.11.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/util-defaults-mode-node": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/querystring-builder": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.272.0.tgz", + "integrity": "sha512-ndo++7GkdCj5tBXE6rGcITpSpZS4PfyV38wntGYAlj9liL1omk3bLZRY6uzqqkJpVHqbg2fD7O2qHNItzZgqhw==", "dependencies": { - "@aws-sdk/config-resolver": "3.254.0", - "@aws-sdk/credential-provider-imds": "3.254.0", - "@aws-sdk/node-config-provider": "3.254.0", - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-uri-escape": "3.201.0", "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/util-endpoints": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/querystring-parser": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.272.0.tgz", + "integrity": "sha512-5oS4/9n6N1LZW9tI3qq/0GnCuWoOXRgcHVB+AJLRBvDbEe+GI+C/xK1tKLsfpDNgsQJHc4IPQoIt4megyZ/1+A==", "dependencies": { - "@aws-sdk/types": "3.254.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/util-middleware": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/s3-request-presigner": { + "version": "3.276.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/s3-request-presigner/-/s3-request-presigner-3.276.0.tgz", + "integrity": "sha512-xRp+1eiErM8ys3IIjasxeS8kWAPnwO0byNB26i5htppJ2AgzH11mIuipjhhbzcHB+7EO3JiVxHJB+NSFmHdLaw==", "dependencies": { + "@aws-sdk/middleware-endpoint": "3.272.0", + "@aws-sdk/middleware-sdk-s3": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/signature-v4-multi-region": "3.272.0", + "@aws-sdk/smithy-client": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-create-request": "3.272.0", + "@aws-sdk/util-format-url": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/util-retry": { - "version": "3.254.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/service-error-classification": "3.254.0", - "tslib": "^2.3.1" - }, + "example_code/s3/node_modules/@aws-sdk/service-error-classification": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.272.0.tgz", + "integrity": "sha512-REoltM1LK9byyIufLqx9znhSolPcHQgVHIA2S0zu5sdt5qER4OubkLAXuo4MBbisUTmh8VOOvIyUb5ijZCXq1w==", "engines": { - "node": ">= 14.0.0" + "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/shared-ini-file-loader": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.272.0.tgz", + "integrity": "sha512-lzFPohp5sy2XvwFjZIzLVCRpC0i5cwBiaXmFzXYQZJm6FSCszHO4ax+m9yrtlyVFF/2YPWl+/bzNthy4aJtseA==", "dependencies": { - "@aws-sdk/types": "3.254.0", - "bowser": "^2.11.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "example_code/sts/node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.254.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/signature-v4": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.272.0.tgz", + "integrity": "sha512-pWxnHG1NqJWMwlhJ6NHNiUikOL00DHROmxah6krJPMPq4I3am2KY2Rs/8ouWhnEXKaHAv4EQhSALJ+7Mq5S4/A==", "dependencies": { - "@aws-sdk/node-config-provider": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/is-array-buffer": "3.201.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-hex-encoding": "3.201.0", + "@aws-sdk/util-middleware": "3.272.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" - }, - "peerDependencies": { - "aws-crt": ">=1.0.0" - }, - "peerDependenciesMeta": { - "aws-crt": { - "optional": true - } } }, - "example_code/support": { - "name": "example-javascriptv3-support", - "version": "1.0.0", - "license": "Apache-2.0", + "example_code/s3/node_modules/@aws-sdk/smithy-client": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.272.0.tgz", + "integrity": "sha512-pvdleJ3kaRvyRw2pIZnqL85ZlWBOZrPKmR9I69GCvlyrfdjRBhbSjIEZ+sdhZudw0vdHxq25AGoLUXhofVLf5Q==", "dependencies": { - "@aws-sdk/client-support": "^3.245.0", - "inquirer": "^9.1.4", - "libs": "*" + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" }, - "devDependencies": { - "vitest": "^0.27.0" + "engines": { + "node": ">=14.0.0" } }, - "example_code/support/node_modules/ansi-escapes": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-6.0.0.tgz", - "integrity": "sha512-IG23inYII3dWlU2EyiAiGj6Bwal5GzsgPMwjYGvc1HPE2dgbj4ZB5ToWBKSquKw74nB3TIuOwaI6/jSULzfgrw==", + "example_code/s3/node_modules/@aws-sdk/token-providers": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.272.0.tgz", + "integrity": "sha512-0GISJ4IKN2rXvbSddB775VjBGSKhYIGQnAdMqbvxi9LB6pSvVxcH9aIL28G0spiuL+dy3yGQZ8RlJPAyP9JW9A==", "dependencies": { - "type-fest": "^3.0.0" + "@aws-sdk/client-sso-oidc": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=14.0.0" } }, - "example_code/support/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "engines": { - "node": ">=12" + "example_code/s3/node_modules/@aws-sdk/types": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.272.0.tgz", + "integrity": "sha512-MmmL6vxMGP5Bsi+4wRx4mxYlU/LX6M0noOXrDh/x5FfG7/4ZOar/nDxqDadhJtNM88cuWVHZWY59P54JzkGWmA==", + "dependencies": { + "tslib": "^2.3.1" }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "example_code/support/node_modules/ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": ">=14.0.0" } }, - "example_code/support/node_modules/bl": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-5.1.0.tgz", - "integrity": "sha512-tv1ZJHLfTDnXE6tMHv73YgSJaWR2AFuPwMntBe7XL/GBFHnT0CLnsHMogfk5+GzCDC5ZWarSCYaIGATZt9dNsQ==", + "example_code/s3/node_modules/@aws-sdk/url-parser": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.272.0.tgz", + "integrity": "sha512-vX/Tx02PlnQ/Kgtf5TnrNDHPNbY+amLZjW0Z1d9vzAvSZhQ4i9Y18yxoRDIaDTCNVRDjdhV8iuctW+05PB5JtQ==", "dependencies": { - "buffer": "^6.0.3", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" + "@aws-sdk/querystring-parser": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" } }, - "example_code/support/node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], + "example_code/s3/node_modules/@aws-sdk/util-arn-parser": { + "version": "3.208.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.208.0.tgz", + "integrity": "sha512-QV4af+kscova9dv4VuHOgH8wEr/IIYHDGcnyVtkUEqahCejWr1Kuk+SBK0xMwnZY5LSycOtQ8aeqHOn9qOjZtA==", "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, - "example_code/support/node_modules/chalk": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz", - "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==", - "engines": { - "node": "^12.17.0 || ^14.13 || >=16.0.0" + "tslib": "^2.3.1" }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "engines": { + "node": ">=14.0.0" } }, - "example_code/support/node_modules/cli-cursor": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-4.0.0.tgz", - "integrity": "sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==", + "example_code/s3/node_modules/@aws-sdk/util-create-request": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-create-request/-/util-create-request-3.272.0.tgz", + "integrity": "sha512-0+t4+tp6uu9uagnxklyvGFKi19cbSK/77q77AQ8iou2H1aBAGVckIB4xN1d6cCwDPkL/3YmLdpwG0txTzbWBVg==", "dependencies": { - "restore-cursor": "^4.0.0" + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/smithy-client": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=14.0.0" } }, - "example_code/support/node_modules/cli-width": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-4.0.0.tgz", - "integrity": "sha512-ZksGS2xpa/bYkNzN3BAw1wEjsLV/ZKOf/CCrJ/QOBsxx6fOARIkwTutxp1XIOIohi6HKmOFjMoK/XaqDVUpEEw==", + "example_code/s3/node_modules/@aws-sdk/util-defaults-mode-browser": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.272.0.tgz", + "integrity": "sha512-W8ZVJSZRuUBg8l0JEZzUc+9fKlthVp/cdE+pFeF8ArhZelOLCiaeCrMaZAeJusaFzIpa6cmOYQAjtSMVyrwRtg==", + "dependencies": { + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + }, "engines": { - "node": ">= 12" + "node": ">= 10.0.0" } }, - "example_code/support/node_modules/emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" - }, - "example_code/support/node_modules/escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", - "engines": { - "node": ">=12" + "example_code/s3/node_modules/@aws-sdk/util-defaults-mode-node": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.272.0.tgz", + "integrity": "sha512-U0NTcbMw6KFk7uz/avBmfxQSTREEiX6JDMH68oN/3ux4AICd2I4jHyxnloSWGuiER1FxZf1dEJ8ZTwy8Ibl21Q==", + "dependencies": { + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/credential-provider-imds": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">= 10.0.0" } }, - "example_code/support/node_modules/figures": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-5.0.0.tgz", - "integrity": "sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==", + "example_code/s3/node_modules/@aws-sdk/util-endpoints": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.272.0.tgz", + "integrity": "sha512-c4MPUaJt2G6gGpoiwIOqDfUa98c1J63RpYvf/spQEKOtC/tF5Gfqlxuq8FnAl5lHnrqj1B9ZXLLxFhHtDR0IiQ==", "dependencies": { - "escape-string-regexp": "^5.0.0", - "is-unicode-supported": "^1.2.0" + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=14.0.0" } }, - "example_code/support/node_modules/inquirer": { - "version": "9.1.4", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-9.1.4.tgz", - "integrity": "sha512-9hiJxE5gkK/cM2d1mTEnuurGTAoHebbkX0BYl3h7iEg7FYfuNIom+nDfBCSWtvSnoSrWCeBxqqBZu26xdlJlXA==", + "example_code/s3/node_modules/@aws-sdk/util-format-url": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-format-url/-/util-format-url-3.272.0.tgz", + "integrity": "sha512-ZvYRnzDOjyR7UEZtCicDcV80nuk148IaBJfnzacVdsB3eu+rCcqZDCuGao/jKGNZGroMHmL8b4Tskwc4vZlDDw==", "dependencies": { - "ansi-escapes": "^6.0.0", - "chalk": "^5.1.2", - "cli-cursor": "^4.0.0", - "cli-width": "^4.0.0", - "external-editor": "^3.0.3", - "figures": "^5.0.0", - "lodash": "^4.17.21", - "mute-stream": "0.0.8", - "ora": "^6.1.2", - "run-async": "^2.4.0", - "rxjs": "^7.5.7", - "string-width": "^5.1.2", - "strip-ansi": "^7.0.1", - "through": "^2.3.6", - "wrap-ansi": "^8.0.1" + "@aws-sdk/querystring-builder": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=12.0.0" + "node": ">=14.0.0" } }, - "example_code/support/node_modules/is-interactive": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-2.0.0.tgz", - "integrity": "sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==", - "engines": { - "node": ">=12" + "example_code/s3/node_modules/@aws-sdk/util-middleware": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.272.0.tgz", + "integrity": "sha512-Abw8m30arbwxqmeMMha5J11ESpHUNmCeSqSzE8/C4B8jZQtHY4kq7f+upzcNIQ11lsd+uzBEzNG3+dDRi0XOJQ==", + "dependencies": { + "tslib": "^2.3.1" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "example_code/support/node_modules/is-unicode-supported": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", - "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==", "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=14.0.0" } }, - "example_code/support/node_modules/log-symbols": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-5.1.0.tgz", - "integrity": "sha512-l0x2DvrW294C9uDCoQe1VSU4gf529FkSZ6leBl4TiqZH/e+0R7hSfHQBNut2mNygDgHwvYHfFLn6Oxb3VWj2rA==", + "example_code/s3/node_modules/@aws-sdk/util-retry": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-retry/-/util-retry-3.272.0.tgz", + "integrity": "sha512-Ngha5414LR4gRHURVKC9ZYXsEJhMkm+SJ+44wlzOhavglfdcKKPUsibz5cKY1jpUV7oKECwaxHWpBB8r6h+hOg==", "dependencies": { - "chalk": "^5.0.0", - "is-unicode-supported": "^1.1.0" + "@aws-sdk/service-error-classification": "3.272.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 14.0.0" } }, - "example_code/support/node_modules/ora": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/ora/-/ora-6.1.2.tgz", - "integrity": "sha512-EJQ3NiP5Xo94wJXIzAyOtSb0QEIAUu7m8t6UZ9krbz0vAJqr92JpcK/lEXg91q6B9pEGqrykkd2EQplnifDSBw==", + "example_code/s3/node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.272.0.tgz", + "integrity": "sha512-Lp5QX5bH6uuwBlIdr7w7OAcAI50ttyskb++yUr9i+SPvj6RI2dsfIBaK4mDg1qUdM5LeUdvIyqwj3XHjFKAAvA==", "dependencies": { - "bl": "^5.0.0", - "chalk": "^5.0.0", - "cli-cursor": "^4.0.0", - "cli-spinners": "^2.6.1", - "is-interactive": "^2.0.0", - "is-unicode-supported": "^1.1.0", - "log-symbols": "^5.1.0", - "strip-ansi": "^7.0.1", - "wcwidth": "^1.0.1" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "@aws-sdk/types": "3.272.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" } }, - "example_code/support/node_modules/restore-cursor": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-4.0.0.tgz", - "integrity": "sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==", + "example_code/s3/node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.272.0.tgz", + "integrity": "sha512-ljK+R3l+Q1LIHrcR+Knhk0rmcSkfFadZ8V+crEGpABf/QUQRg7NkZMsoe814tfBO5F7tMxo8wwwSdaVNNHtoRA==", "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=14.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "aws-crt": ">=1.0.0" + }, + "peerDependenciesMeta": { + "aws-crt": { + "optional": true + } } }, - "example_code/support/node_modules/string-width": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "example_code/s3/node_modules/@aws-sdk/util-waiter": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-waiter/-/util-waiter-3.272.0.tgz", + "integrity": "sha512-N25/XsJ2wkPh1EgkFyb/GRgfHDityScfD49Hk1AwJWpfetzgkcEtWdeW4IuPymXlSKhrm5L+SBw49USxo9kBag==", "dependencies": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" + "@aws-sdk/abort-controller": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=14.0.0" } }, - "example_code/support/node_modules/strip-ansi": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", - "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "example_code/s3/node_modules/@aws-sdk/xml-builder": { + "version": "3.201.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.201.0.tgz", + "integrity": "sha512-brRdB1wwMgjWEnOQsv7zSUhIQuh7DEicrfslAqHop4S4FtSI3GQAShpQqgOpMTNFYcpaWKmE/Y1MJmNY7xLCnw==", "dependencies": { - "ansi-regex": "^6.0.1" + "tslib": "^2.3.1" }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" + "node": ">=14.0.0" } }, - "example_code/support/node_modules/type-fest": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.5.3.tgz", - "integrity": "sha512-V2+og4j/rWReWvaFrse3s9g2xvUv/K9Azm/xo6CjIuq7oeGqsoimC7+9/A3tfvNcbQf8RPSVj/HV81fB4DJrjA==", - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "example_code/s3/node_modules/pathe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.0.tgz", + "integrity": "sha512-ODbEPR0KKHqECXW1GoxdDb+AZvULmXjVPy4rt+pGo2+TnjJTIPJQSVS6N63n8T2Ip+syHhbn52OewKicV0373w==", + "dev": true }, - "example_code/support/node_modules/vite-node": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-0.27.3.tgz", - "integrity": "sha512-eyJYOO64o5HIp8poc4bJX+ZNBwMZeI3f6/JdiUmJgW02Mt7LnoCtDMRVmLaY9S05SIsjGe339ZK4uo2wQ+bF9g==", + "example_code/s3/node_modules/vite-node": { + "version": "0.28.5", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-0.28.5.tgz", + "integrity": "sha512-LmXb9saMGlrMZbXTvOveJKwMTBTNUH66c8rJnQ0ZPNX+myPEol64+szRzXtV5ORb0Hb/91yq+/D3oERoyAt6LA==", "dev": true, "dependencies": { "cac": "^6.7.14", "debug": "^4.3.4", "mlly": "^1.1.0", - "pathe": "^0.2.0", + "pathe": "^1.1.0", "picocolors": "^1.0.0", "source-map": "^0.6.1", "source-map-support": "^0.5.21", @@ -2491,30 +2819,35 @@ "url": "https://github.com/sponsors/antfu" } }, - "example_code/support/node_modules/vitest": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/vitest/-/vitest-0.27.3.tgz", - "integrity": "sha512-Ld3UVgRVhJUtqvQ3dW89GxiApFAgBsWJZBCWzK+gA3w2yG68csXlGZZ4WDJURf+8ecNfgrScga6xY+8YSOpiMg==", + "example_code/s3/node_modules/vitest": { + "version": "0.28.5", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-0.28.5.tgz", + "integrity": "sha512-pyCQ+wcAOX7mKMcBNkzDwEHRGqQvHUl0XnoHR+3Pb1hytAHISgSxv9h0gUiSiYtISXUU3rMrKiKzFYDrI6ZIHA==", "dev": true, "dependencies": { "@types/chai": "^4.3.4", "@types/chai-subset": "^1.3.3", "@types/node": "*", + "@vitest/expect": "0.28.5", + "@vitest/runner": "0.28.5", + "@vitest/spy": "0.28.5", + "@vitest/utils": "0.28.5", "acorn": "^8.8.1", "acorn-walk": "^8.2.0", "cac": "^6.7.14", "chai": "^4.3.7", "debug": "^4.3.4", "local-pkg": "^0.4.2", + "pathe": "^1.1.0", "picocolors": "^1.0.0", "source-map": "^0.6.1", "std-env": "^3.3.1", "strip-literal": "^1.0.0", "tinybench": "^2.3.1", - "tinypool": "^0.3.0", + "tinypool": "^0.3.1", "tinyspy": "^1.0.2", "vite": "^3.0.0 || ^4.0.0", - "vite-node": "0.27.3", + "vite-node": "0.28.5", "why-is-node-running": "^2.2.2" }, "bin": { @@ -2551,497 +2884,98 @@ } } }, - "example_code/support/node_modules/wrap-ansi": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", - "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "example_code/sts": { + "name": "example-javascriptv3-sts", + "version": "1.0.0", + "license": "Apache-2.0", "dependencies": { - "ansi-styles": "^6.1.0", - "string-width": "^5.0.1", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + "@aws-sdk/client-sts": "^3.254.0" } }, - "node_modules/@ampproject/remapping": { - "version": "2.2.0", + "example_code/sts/node_modules/@aws-crypto/ie11-detection": { + "version": "3.0.0", "license": "Apache-2.0", - "peer": true, "dependencies": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" + "tslib": "^1.11.1" } }, - "node_modules/@aws-amplify/analytics": { - "version": "5.2.30", + "example_code/sts/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "example_code/sts/node_modules/@aws-crypto/sha256-browser": { + "version": "3.0.0", "license": "Apache-2.0", "dependencies": { - "@aws-amplify/cache": "4.0.65", - "@aws-amplify/core": "4.7.14", - "@aws-sdk/client-firehose": "3.6.1", - "@aws-sdk/client-kinesis": "3.6.1", - "@aws-sdk/client-personalize-events": "3.6.1", - "@aws-sdk/client-pinpoint": "3.6.1", - "@aws-sdk/util-utf8-browser": "3.6.1", - "lodash": "^4.17.20", - "uuid": "^3.2.1" + "@aws-crypto/ie11-detection": "^3.0.0", + "@aws-crypto/sha256-js": "^3.0.0", + "@aws-crypto/supports-web-crypto": "^3.0.0", + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" } }, - "node_modules/@aws-amplify/analytics/node_modules/@aws-sdk/util-utf8-browser": { - "version": "3.6.1", + "example_code/sts/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "example_code/sts/node_modules/@aws-crypto/sha256-js": { + "version": "3.0.0", "license": "Apache-2.0", "dependencies": { - "tslib": "^1.8.0" + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^1.11.1" } }, - "node_modules/@aws-amplify/analytics/node_modules/tslib": { + "example_code/sts/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-amplify/analytics/node_modules/uuid": { - "version": "3.4.0", - "license": "MIT", - "bin": { - "uuid": "bin/uuid" + "example_code/sts/node_modules/@aws-crypto/supports-web-crypto": { + "version": "3.0.0", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.11.1" } }, - "node_modules/@aws-amplify/api": { - "version": "4.0.63", - "license": "Apache-2.0", - "dependencies": { - "@aws-amplify/api-graphql": "2.3.27", - "@aws-amplify/api-rest": "2.0.63" - } - }, - "node_modules/@aws-amplify/api-graphql": { - "version": "2.3.27", - "license": "Apache-2.0", - "dependencies": { - "@aws-amplify/api-rest": "2.0.63", - "@aws-amplify/auth": "4.6.16", - "@aws-amplify/cache": "4.0.65", - "@aws-amplify/core": "4.7.14", - "@aws-amplify/pubsub": "4.5.13", - "graphql": "15.8.0", - "uuid": "^3.2.1", - "zen-observable-ts": "0.8.19" - } - }, - "node_modules/@aws-amplify/api-graphql/node_modules/uuid": { - "version": "3.4.0", - "license": "MIT", - "bin": { - "uuid": "bin/uuid" - } - }, - "node_modules/@aws-amplify/api-rest": { - "version": "2.0.63", - "license": "Apache-2.0", - "dependencies": { - "@aws-amplify/core": "4.7.14", - "axios": "0.26.0" - } - }, - "node_modules/@aws-amplify/auth": { - "version": "4.6.16", - "license": "Apache-2.0", - "dependencies": { - "@aws-amplify/cache": "4.0.65", - "@aws-amplify/core": "4.7.14", - "amazon-cognito-identity-js": "5.2.14", - "crypto-js": "^4.1.1" - } - }, - "node_modules/@aws-amplify/cache": { - "version": "4.0.65", - "license": "Apache-2.0", - "dependencies": { - "@aws-amplify/core": "4.7.14" - } - }, - "node_modules/@aws-amplify/core": { - "version": "4.7.14", - "license": "Apache-2.0", - "dependencies": { - "@aws-crypto/sha256-js": "1.0.0-alpha.0", - "@aws-sdk/client-cloudwatch-logs": "3.6.1", - "@aws-sdk/client-cognito-identity": "3.6.1", - "@aws-sdk/credential-provider-cognito-identity": "3.6.1", - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-hex-encoding": "3.6.1", - "universal-cookie": "^4.0.4", - "zen-observable-ts": "0.8.19" - } - }, - "node_modules/@aws-amplify/core/node_modules/@aws-crypto/sha256-js": { - "version": "1.0.0-alpha.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/types": "^1.0.0-alpha.0", - "@aws-sdk/util-utf8-browser": "^1.0.0-alpha.0", - "tslib": "^1.9.3" - } - }, - "node_modules/@aws-amplify/core/node_modules/@aws-crypto/sha256-js/node_modules/@aws-sdk/types": { - "version": "1.0.0-rc.10", - "license": "Apache-2.0", - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/@aws-amplify/core/node_modules/@aws-sdk/types": { - "version": "3.6.1", - "license": "Apache-2.0", - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/@aws-amplify/core/node_modules/@aws-sdk/util-hex-encoding": { - "version": "3.6.1", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/@aws-amplify/core/node_modules/@aws-sdk/util-utf8-browser": { - "version": "1.0.0-rc.8", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^1.8.0" - } - }, - "node_modules/@aws-amplify/core/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-amplify/datastore": { - "version": "3.14.6", - "license": "Apache-2.0", - "dependencies": { - "@aws-amplify/api": "4.0.63", - "@aws-amplify/auth": "4.6.16", - "@aws-amplify/core": "4.7.14", - "@aws-amplify/pubsub": "4.5.13", - "amazon-cognito-identity-js": "5.2.14", - "idb": "5.0.6", - "immer": "9.0.6", - "ulid": "2.3.0", - "uuid": "3.3.2", - "zen-observable-ts": "0.8.19", - "zen-push": "0.2.1" - } - }, - "node_modules/@aws-amplify/datastore/node_modules/uuid": { - "version": "3.3.2", - "license": "MIT", - "bin": { - "uuid": "bin/uuid" - } - }, - "node_modules/@aws-amplify/geo": { - "version": "1.3.26", - "license": "Apache-2.0", - "dependencies": { - "@aws-amplify/core": "4.7.14", - "@aws-sdk/client-location": "3.186.0", - "@turf/boolean-clockwise": "6.5.0", - "camelcase-keys": "6.2.2" - } - }, - "node_modules/@aws-amplify/interactions": { - "version": "4.1.11", - "license": "Apache-2.0", - "dependencies": { - "@aws-amplify/core": "4.7.14", - "@aws-sdk/client-lex-runtime-service": "3.186.0", - "@aws-sdk/client-lex-runtime-v2": "3.186.0", - "base-64": "1.0.0", - "fflate": "0.7.3", - "pako": "2.0.4" - } - }, - "node_modules/@aws-amplify/predictions": { - "version": "4.0.63", - "license": "Apache-2.0", - "dependencies": { - "@aws-amplify/core": "4.7.14", - "@aws-amplify/storage": "4.5.16", - "@aws-sdk/client-comprehend": "3.6.1", - "@aws-sdk/client-polly": "3.6.1", - "@aws-sdk/client-rekognition": "3.6.1", - "@aws-sdk/client-textract": "3.6.1", - "@aws-sdk/client-translate": "3.6.1", - "@aws-sdk/eventstream-marshaller": "3.6.1", - "@aws-sdk/util-utf8-node": "3.6.1", - "uuid": "^3.2.1" - } - }, - "node_modules/@aws-amplify/predictions/node_modules/@aws-sdk/is-array-buffer": { - "version": "3.6.1", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/@aws-amplify/predictions/node_modules/@aws-sdk/util-buffer-from": { - "version": "3.6.1", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/is-array-buffer": "3.6.1", - "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/@aws-amplify/predictions/node_modules/@aws-sdk/util-utf8-node": { - "version": "3.6.1", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/util-buffer-from": "3.6.1", - "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/@aws-amplify/predictions/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-amplify/predictions/node_modules/uuid": { - "version": "3.4.0", - "license": "MIT", - "bin": { - "uuid": "bin/uuid" - } - }, - "node_modules/@aws-amplify/pubsub": { - "version": "4.5.13", - "license": "Apache-2.0", - "dependencies": { - "@aws-amplify/auth": "4.6.16", - "@aws-amplify/cache": "4.0.65", - "@aws-amplify/core": "4.7.14", - "graphql": "15.8.0", - "paho-mqtt": "^1.1.0", - "uuid": "^3.2.1", - "zen-observable-ts": "0.8.19" - } - }, - "node_modules/@aws-amplify/pubsub/node_modules/uuid": { - "version": "3.4.0", - "license": "MIT", - "bin": { - "uuid": "bin/uuid" - } - }, - "node_modules/@aws-amplify/storage": { - "version": "4.5.16", - "license": "Apache-2.0", - "dependencies": { - "@aws-amplify/core": "4.7.14", - "@aws-sdk/client-s3": "3.6.1", - "@aws-sdk/s3-request-presigner": "3.6.1", - "@aws-sdk/util-create-request": "3.6.1", - "@aws-sdk/util-format-url": "3.6.1", - "axios": "0.26.0", - "events": "^3.1.0" - } - }, - "node_modules/@aws-amplify/ui": { - "version": "2.0.7", - "license": "Apache-2.0" - }, - "node_modules/@aws-amplify/xr": { - "version": "3.0.63", - "license": "Apache-2.0", - "dependencies": { - "@aws-amplify/core": "4.7.14" - } - }, - "node_modules/@aws-crypto/crc32": { - "version": "2.0.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-crypto/util": "^2.0.0", - "@aws-sdk/types": "^3.1.0", - "tslib": "^1.11.1" - } - }, - "node_modules/@aws-crypto/crc32/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-crypto/ie11-detection": { - "version": "2.0.2", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^1.11.1" - } - }, - "node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-crypto/sha256-browser": { - "version": "2.0.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-crypto/ie11-detection": "^2.0.0", - "@aws-crypto/sha256-js": "^2.0.0", - "@aws-crypto/supports-web-crypto": "^2.0.0", - "@aws-crypto/util": "^2.0.0", - "@aws-sdk/types": "^3.1.0", - "@aws-sdk/util-locate-window": "^3.0.0", - "@aws-sdk/util-utf8-browser": "^3.0.0", - "tslib": "^1.11.1" - } - }, - "node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-crypto/sha256-js": { - "version": "2.0.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-crypto/util": "^2.0.0", - "@aws-sdk/types": "^3.1.0", - "tslib": "^1.11.1" - } - }, - "node_modules/@aws-crypto/sha256-js/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-crypto/supports-web-crypto": { - "version": "2.0.2", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^1.11.1" - } - }, - "node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "example_code/sts/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-crypto/util": { - "version": "2.0.2", + "example_code/sts/node_modules/@aws-crypto/util": { + "version": "3.0.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "^3.110.0", + "@aws-sdk/types": "^3.222.0", "@aws-sdk/util-utf8-browser": "^3.0.0", "tslib": "^1.11.1" } }, - "node_modules/@aws-crypto/util/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/abort-controller": { - "version": "3.226.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/types": "3.226.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/chunked-blob-reader": { - "version": "3.6.1", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^1.8.0" - } - }, - "node_modules/@aws-sdk/chunked-blob-reader-native": { - "version": "3.6.1", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/util-base64-browser": "3.6.1", - "tslib": "^1.8.0" - } - }, - "node_modules/@aws-sdk/chunked-blob-reader-native/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/chunked-blob-reader/node_modules/tslib": { + "example_code/sts/node_modules/@aws-crypto/util/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-cloudwatch": { - "version": "3.245.0", + "example_code/sts/node_modules/@aws-sdk/abort-controller": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/client-sts": "3.245.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/credential-provider-node": "3.245.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-signing": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.245.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "@aws-sdk/util-waiter": "3.226.0", - "fast-xml-parser": "4.0.11", + "@aws-sdk/types": "3.254.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events": { + "example_code/sts/node_modules/@aws-sdk/client-sso": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sts": "3.254.0", "@aws-sdk/config-resolver": "3.254.0", - "@aws-sdk/credential-provider-node": "3.254.0", "@aws-sdk/fetch-http-handler": "3.254.0", "@aws-sdk/hash-node": "3.254.0", "@aws-sdk/invalid-dependency": "3.254.0", @@ -3052,7 +2986,6 @@ "@aws-sdk/middleware-recursion-detection": "3.254.0", "@aws-sdk/middleware-retry": "3.254.0", "@aws-sdk/middleware-serde": "3.254.0", - "@aws-sdk/middleware-signing": "3.254.0", "@aws-sdk/middleware-stack": "3.254.0", "@aws-sdk/middleware-user-agent": "3.254.0", "@aws-sdk/node-config-provider": "3.254.0", @@ -3078,84 +3011,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-crypto/ie11-detection": { - "version": "3.0.0", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^1.11.1" - } - }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-crypto/sha256-browser": { - "version": "3.0.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-crypto/ie11-detection": "^3.0.0", - "@aws-crypto/sha256-js": "^3.0.0", - "@aws-crypto/supports-web-crypto": "^3.0.0", - "@aws-crypto/util": "^3.0.0", - "@aws-sdk/types": "^3.222.0", - "@aws-sdk/util-locate-window": "^3.0.0", - "@aws-sdk/util-utf8-browser": "^3.0.0", - "tslib": "^1.11.1" - } - }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-crypto/sha256-js": { - "version": "3.0.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-crypto/util": "^3.0.0", - "@aws-sdk/types": "^3.222.0", - "tslib": "^1.11.1" - } - }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-crypto/supports-web-crypto": { - "version": "3.0.0", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^1.11.1" - } - }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-crypto/util": { - "version": "3.0.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/types": "^3.222.0", - "@aws-sdk/util-utf8-browser": "^3.0.0", - "tslib": "^1.11.1" - } - }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-crypto/util/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/abort-controller": { - "version": "3.254.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/types": "3.254.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/client-sso": { + "example_code/sts/node_modules/@aws-sdk/client-sso-oidc": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3197,13 +3053,14 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/client-sso-oidc": { + "example_code/sts/node_modules/@aws-sdk/client-sts": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", "@aws-sdk/config-resolver": "3.254.0", + "@aws-sdk/credential-provider-node": "3.254.0", "@aws-sdk/fetch-http-handler": "3.254.0", "@aws-sdk/hash-node": "3.254.0", "@aws-sdk/invalid-dependency": "3.254.0", @@ -3213,7 +3070,9 @@ "@aws-sdk/middleware-logger": "3.254.0", "@aws-sdk/middleware-recursion-detection": "3.254.0", "@aws-sdk/middleware-retry": "3.254.0", + "@aws-sdk/middleware-sdk-sts": "3.254.0", "@aws-sdk/middleware-serde": "3.254.0", + "@aws-sdk/middleware-signing": "3.254.0", "@aws-sdk/middleware-stack": "3.254.0", "@aws-sdk/middleware-user-agent": "3.254.0", "@aws-sdk/node-config-provider": "3.254.0", @@ -3233,59 +3092,14 @@ "@aws-sdk/util-user-agent-node": "3.254.0", "@aws-sdk/util-utf8-browser": "3.188.0", "@aws-sdk/util-utf8-node": "3.208.0", + "fast-xml-parser": "4.0.11", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/client-sts": { - "version": "3.254.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.254.0", - "@aws-sdk/credential-provider-node": "3.254.0", - "@aws-sdk/fetch-http-handler": "3.254.0", - "@aws-sdk/hash-node": "3.254.0", - "@aws-sdk/invalid-dependency": "3.254.0", - "@aws-sdk/middleware-content-length": "3.254.0", - "@aws-sdk/middleware-endpoint": "3.254.0", - "@aws-sdk/middleware-host-header": "3.254.0", - "@aws-sdk/middleware-logger": "3.254.0", - "@aws-sdk/middleware-recursion-detection": "3.254.0", - "@aws-sdk/middleware-retry": "3.254.0", - "@aws-sdk/middleware-sdk-sts": "3.254.0", - "@aws-sdk/middleware-serde": "3.254.0", - "@aws-sdk/middleware-signing": "3.254.0", - "@aws-sdk/middleware-stack": "3.254.0", - "@aws-sdk/middleware-user-agent": "3.254.0", - "@aws-sdk/node-config-provider": "3.254.0", - "@aws-sdk/node-http-handler": "3.254.0", - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/smithy-client": "3.254.0", - "@aws-sdk/types": "3.254.0", - "@aws-sdk/url-parser": "3.254.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.254.0", - "@aws-sdk/util-defaults-mode-node": "3.254.0", - "@aws-sdk/util-endpoints": "3.254.0", - "@aws-sdk/util-retry": "3.254.0", - "@aws-sdk/util-user-agent-browser": "3.254.0", - "@aws-sdk/util-user-agent-node": "3.254.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "fast-xml-parser": "4.0.11", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/config-resolver": { + "example_code/sts/node_modules/@aws-sdk/config-resolver": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3299,7 +3113,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/credential-provider-env": { + "example_code/sts/node_modules/@aws-sdk/credential-provider-env": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3311,7 +3125,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/credential-provider-imds": { + "example_code/sts/node_modules/@aws-sdk/credential-provider-imds": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3325,7 +3139,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/credential-provider-ini": { + "example_code/sts/node_modules/@aws-sdk/credential-provider-ini": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3343,7 +3157,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/credential-provider-node": { + "example_code/sts/node_modules/@aws-sdk/credential-provider-node": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3362,7 +3176,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/credential-provider-process": { + "example_code/sts/node_modules/@aws-sdk/credential-provider-process": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3375,7 +3189,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/credential-provider-sso": { + "example_code/sts/node_modules/@aws-sdk/credential-provider-sso": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3390,7 +3204,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/credential-provider-web-identity": { + "example_code/sts/node_modules/@aws-sdk/credential-provider-web-identity": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3402,7 +3216,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/fetch-http-handler": { + "example_code/sts/node_modules/@aws-sdk/fetch-http-handler": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3413,7 +3227,7 @@ "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/hash-node": { + "example_code/sts/node_modules/@aws-sdk/hash-node": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3426,7 +3240,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/invalid-dependency": { + "example_code/sts/node_modules/@aws-sdk/invalid-dependency": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3434,7 +3248,7 @@ "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/middleware-content-length": { + "example_code/sts/node_modules/@aws-sdk/middleware-content-length": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3446,7 +3260,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/middleware-endpoint": { + "example_code/sts/node_modules/@aws-sdk/middleware-endpoint": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3463,7 +3277,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/middleware-host-header": { + "example_code/sts/node_modules/@aws-sdk/middleware-host-header": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3475,7 +3289,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/middleware-logger": { + "example_code/sts/node_modules/@aws-sdk/middleware-logger": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3486,7 +3300,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/middleware-recursion-detection": { + "example_code/sts/node_modules/@aws-sdk/middleware-recursion-detection": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3498,7 +3312,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/middleware-retry": { + "example_code/sts/node_modules/@aws-sdk/middleware-retry": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3514,7 +3328,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/middleware-sdk-sts": { + "example_code/sts/node_modules/@aws-sdk/middleware-sdk-sts": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3529,7 +3343,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/middleware-serde": { + "example_code/sts/node_modules/@aws-sdk/middleware-serde": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3540,7 +3354,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/middleware-signing": { + "example_code/sts/node_modules/@aws-sdk/middleware-signing": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3555,7 +3369,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/middleware-stack": { + "example_code/sts/node_modules/@aws-sdk/middleware-stack": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3565,7 +3379,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/middleware-user-agent": { + "example_code/sts/node_modules/@aws-sdk/middleware-user-agent": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3577,7 +3391,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/node-config-provider": { + "example_code/sts/node_modules/@aws-sdk/node-config-provider": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3590,7 +3404,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/node-http-handler": { + "example_code/sts/node_modules/@aws-sdk/node-http-handler": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3604,7 +3418,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/property-provider": { + "example_code/sts/node_modules/@aws-sdk/property-provider": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3615,7 +3429,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/protocol-http": { + "example_code/sts/node_modules/@aws-sdk/protocol-http": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3626,7 +3440,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/querystring-builder": { + "example_code/sts/node_modules/@aws-sdk/querystring-builder": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3638,7 +3452,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/querystring-parser": { + "example_code/sts/node_modules/@aws-sdk/querystring-parser": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3649,14 +3463,14 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/service-error-classification": { + "example_code/sts/node_modules/@aws-sdk/service-error-classification": { "version": "3.254.0", "license": "Apache-2.0", "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/shared-ini-file-loader": { + "example_code/sts/node_modules/@aws-sdk/shared-ini-file-loader": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3667,7 +3481,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/signature-v4": { + "example_code/sts/node_modules/@aws-sdk/signature-v4": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3683,7 +3497,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/smithy-client": { + "example_code/sts/node_modules/@aws-sdk/smithy-client": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3695,7 +3509,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/token-providers": { + "example_code/sts/node_modules/@aws-sdk/token-providers": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3709,7 +3523,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/types": { + "example_code/sts/node_modules/@aws-sdk/types": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3719,7 +3533,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/url-parser": { + "example_code/sts/node_modules/@aws-sdk/url-parser": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3728,7 +3542,7 @@ "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/util-defaults-mode-browser": { + "example_code/sts/node_modules/@aws-sdk/util-defaults-mode-browser": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3741,7 +3555,7 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/util-defaults-mode-node": { + "example_code/sts/node_modules/@aws-sdk/util-defaults-mode-node": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3756,7 +3570,7 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/util-endpoints": { + "example_code/sts/node_modules/@aws-sdk/util-endpoints": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3767,7 +3581,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/util-middleware": { + "example_code/sts/node_modules/@aws-sdk/util-middleware": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3777,7 +3591,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/util-retry": { + "example_code/sts/node_modules/@aws-sdk/util-retry": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3788,7 +3602,7 @@ "node": ">= 14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/util-user-agent-browser": { + "example_code/sts/node_modules/@aws-sdk/util-user-agent-browser": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3797,7 +3611,7 @@ "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/util-user-agent-node": { + "example_code/sts/node_modules/@aws-sdk/util-user-agent-node": { "version": "3.254.0", "license": "Apache-2.0", "dependencies": { @@ -3817,519 +3631,530 @@ } } }, - "node_modules/@aws-sdk/client-cloudwatch-logs": { - "version": "3.6.1", + "example_code/support": { + "name": "example-javascriptv3-support", + "version": "1.0.0", "license": "Apache-2.0", "dependencies": { - "@aws-crypto/sha256-browser": "^1.0.0", - "@aws-crypto/sha256-js": "^1.0.0", - "@aws-sdk/config-resolver": "3.6.1", - "@aws-sdk/credential-provider-node": "3.6.1", - "@aws-sdk/fetch-http-handler": "3.6.1", - "@aws-sdk/hash-node": "3.6.1", - "@aws-sdk/invalid-dependency": "3.6.1", - "@aws-sdk/middleware-content-length": "3.6.1", - "@aws-sdk/middleware-host-header": "3.6.1", - "@aws-sdk/middleware-logger": "3.6.1", - "@aws-sdk/middleware-retry": "3.6.1", - "@aws-sdk/middleware-serde": "3.6.1", - "@aws-sdk/middleware-signing": "3.6.1", - "@aws-sdk/middleware-stack": "3.6.1", - "@aws-sdk/middleware-user-agent": "3.6.1", - "@aws-sdk/node-config-provider": "3.6.1", - "@aws-sdk/node-http-handler": "3.6.1", - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/smithy-client": "3.6.1", - "@aws-sdk/types": "3.6.1", - "@aws-sdk/url-parser": "3.6.1", - "@aws-sdk/url-parser-native": "3.6.1", - "@aws-sdk/util-base64-browser": "3.6.1", - "@aws-sdk/util-base64-node": "3.6.1", - "@aws-sdk/util-body-length-browser": "3.6.1", - "@aws-sdk/util-body-length-node": "3.6.1", - "@aws-sdk/util-user-agent-browser": "3.6.1", - "@aws-sdk/util-user-agent-node": "3.6.1", - "@aws-sdk/util-utf8-browser": "3.6.1", - "@aws-sdk/util-utf8-node": "3.6.1", - "tslib": "^2.0.0" + "@aws-sdk/client-support": "^3.245.0", + "inquirer": "^9.1.4", + "libs": "*" }, - "engines": { - "node": ">=10.0.0" + "devDependencies": { + "vitest": "^0.27.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-crypto/ie11-detection": { - "version": "1.0.0", - "license": "Apache-2.0", + "example_code/support/node_modules/ansi-escapes": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-6.0.0.tgz", + "integrity": "sha512-IG23inYII3dWlU2EyiAiGj6Bwal5GzsgPMwjYGvc1HPE2dgbj4ZB5ToWBKSquKw74nB3TIuOwaI6/jSULzfgrw==", "dependencies": { - "tslib": "^1.11.1" + "type-fest": "^3.0.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-crypto/sha256-browser": { - "version": "1.2.2", - "license": "Apache-2.0", - "dependencies": { - "@aws-crypto/ie11-detection": "^1.0.0", - "@aws-crypto/sha256-js": "^1.2.2", - "@aws-crypto/supports-web-crypto": "^1.0.0", - "@aws-crypto/util": "^1.2.2", - "@aws-sdk/types": "^3.1.0", - "@aws-sdk/util-locate-window": "^3.0.0", - "tslib": "^1.11.1" + "example_code/support/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-crypto/sha256-js": { - "version": "1.2.2", - "license": "Apache-2.0", - "dependencies": { - "@aws-crypto/util": "^1.2.2", - "@aws-sdk/types": "^3.1.0", - "tslib": "^1.11.1" + "example_code/support/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-crypto/supports-web-crypto": { - "version": "1.0.0", - "license": "Apache-2.0", + "example_code/support/node_modules/bl": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-5.1.0.tgz", + "integrity": "sha512-tv1ZJHLfTDnXE6tMHv73YgSJaWR2AFuPwMntBe7XL/GBFHnT0CLnsHMogfk5+GzCDC5ZWarSCYaIGATZt9dNsQ==", "dependencies": { - "tslib": "^1.11.1" + "buffer": "^6.0.3", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-crypto/util": { - "version": "1.2.2", - "license": "Apache-2.0", + "example_code/support/node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "dependencies": { - "@aws-sdk/types": "^3.1.0", - "@aws-sdk/util-utf8-browser": "^3.0.0", - "tslib": "^1.11.1" + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-crypto/util/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "example_code/support/node_modules/chalk": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.2.0.tgz", + "integrity": "sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==", + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/abort-controller": { - "version": "3.6.1", - "license": "Apache-2.0", + "example_code/support/node_modules/cli-cursor": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-4.0.0.tgz", + "integrity": "sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "restore-cursor": "^4.0.0" }, "engines": { - "node": ">= 10.0.0" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/config-resolver": { - "version": "3.6.1", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/signature-v4": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" - }, + "example_code/support/node_modules/cli-width": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-4.0.0.tgz", + "integrity": "sha512-ZksGS2xpa/bYkNzN3BAw1wEjsLV/ZKOf/CCrJ/QOBsxx6fOARIkwTutxp1XIOIohi6HKmOFjMoK/XaqDVUpEEw==", "engines": { - "node": ">= 10.0.0" + "node": ">= 12" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "example_code/support/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/credential-provider-env": { - "version": "3.6.1", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" - }, + "example_code/support/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", "engines": { - "node": ">= 10.0.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/credential-provider-imds": { - "version": "3.6.1", - "license": "Apache-2.0", + "example_code/support/node_modules/figures": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-5.0.0.tgz", + "integrity": "sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==", "dependencies": { - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "escape-string-regexp": "^5.0.0", + "is-unicode-supported": "^1.2.0" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.6.1", - "license": "Apache-2.0", + "example_code/support/node_modules/inquirer": { + "version": "9.1.4", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-9.1.4.tgz", + "integrity": "sha512-9hiJxE5gkK/cM2d1mTEnuurGTAoHebbkX0BYl3h7iEg7FYfuNIom+nDfBCSWtvSnoSrWCeBxqqBZu26xdlJlXA==", "dependencies": { - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/shared-ini-file-loader": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "ansi-escapes": "^6.0.0", + "chalk": "^5.1.2", + "cli-cursor": "^4.0.0", + "cli-width": "^4.0.0", + "external-editor": "^3.0.3", + "figures": "^5.0.0", + "lodash": "^4.17.21", + "mute-stream": "0.0.8", + "ora": "^6.1.2", + "run-async": "^2.4.0", + "rxjs": "^7.5.7", + "string-width": "^5.1.2", + "strip-ansi": "^7.0.1", + "through": "^2.3.6", + "wrap-ansi": "^8.0.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=12.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "example_code/support/node_modules/is-interactive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-2.0.0.tgz", + "integrity": "sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/credential-provider-node": { - "version": "3.6.1", - "license": "Apache-2.0", + "example_code/support/node_modules/is-unicode-supported": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", + "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "example_code/support/node_modules/log-symbols": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-5.1.0.tgz", + "integrity": "sha512-l0x2DvrW294C9uDCoQe1VSU4gf529FkSZ6leBl4TiqZH/e+0R7hSfHQBNut2mNygDgHwvYHfFLn6Oxb3VWj2rA==", "dependencies": { - "@aws-sdk/credential-provider-env": "3.6.1", - "@aws-sdk/credential-provider-imds": "3.6.1", - "@aws-sdk/credential-provider-ini": "3.6.1", - "@aws-sdk/credential-provider-process": "3.6.1", - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/shared-ini-file-loader": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "chalk": "^5.0.0", + "is-unicode-supported": "^1.1.0" }, "engines": { - "node": ">=10.0.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/credential-provider-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/credential-provider-process": { - "version": "3.6.1", - "license": "Apache-2.0", + "example_code/support/node_modules/ora": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/ora/-/ora-6.1.2.tgz", + "integrity": "sha512-EJQ3NiP5Xo94wJXIzAyOtSb0QEIAUu7m8t6UZ9krbz0vAJqr92JpcK/lEXg91q6B9pEGqrykkd2EQplnifDSBw==", "dependencies": { - "@aws-sdk/credential-provider-ini": "3.6.1", - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/shared-ini-file-loader": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "bl": "^5.0.0", + "chalk": "^5.0.0", + "cli-cursor": "^4.0.0", + "cli-spinners": "^2.6.1", + "is-interactive": "^2.0.0", + "is-unicode-supported": "^1.1.0", + "log-symbols": "^5.1.0", + "strip-ansi": "^7.0.1", + "wcwidth": "^1.0.1" }, "engines": { - "node": ">= 10.0.0" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/credential-provider-process/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/fetch-http-handler": { - "version": "3.6.1", - "license": "Apache-2.0", + "example_code/support/node_modules/restore-cursor": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-4.0.0.tgz", + "integrity": "sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/querystring-builder": "3.6.1", - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-base64-browser": "3.6.1", - "tslib": "^1.8.0" + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/fetch-http-handler/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/hash-node": { - "version": "3.6.1", - "license": "Apache-2.0", + "example_code/support/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", "dependencies": { - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-buffer-from": "3.6.1", - "tslib": "^1.8.0" + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/hash-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/invalid-dependency": { - "version": "3.6.1", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" - } - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/invalid-dependency/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/is-array-buffer": { - "version": "3.6.1", - "license": "Apache-2.0", + "example_code/support/node_modules/strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", "dependencies": { - "tslib": "^1.8.0" + "ansi-regex": "^6.0.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/is-array-buffer/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "example_code/support/node_modules/type-fest": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.5.3.tgz", + "integrity": "sha512-V2+og4j/rWReWvaFrse3s9g2xvUv/K9Azm/xo6CjIuq7oeGqsoimC7+9/A3tfvNcbQf8RPSVj/HV81fB4DJrjA==", + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-content-length": { - "version": "3.6.1", - "license": "Apache-2.0", + "example_code/support/node_modules/vite-node": { + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-0.27.3.tgz", + "integrity": "sha512-eyJYOO64o5HIp8poc4bJX+ZNBwMZeI3f6/JdiUmJgW02Mt7LnoCtDMRVmLaY9S05SIsjGe339ZK4uo2wQ+bF9g==", + "dev": true, "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "cac": "^6.7.14", + "debug": "^4.3.4", + "mlly": "^1.1.0", + "pathe": "^0.2.0", + "picocolors": "^1.0.0", + "source-map": "^0.6.1", + "source-map-support": "^0.5.21", + "vite": "^3.0.0 || ^4.0.0" + }, + "bin": { + "vite-node": "vite-node.mjs" }, "engines": { - "node": ">= 10.0.0" + "node": ">=v14.16.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-content-length/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-host-header": { - "version": "3.6.1", - "license": "Apache-2.0", + "example_code/support/node_modules/vitest": { + "version": "0.27.3", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-0.27.3.tgz", + "integrity": "sha512-Ld3UVgRVhJUtqvQ3dW89GxiApFAgBsWJZBCWzK+gA3w2yG68csXlGZZ4WDJURf+8ecNfgrScga6xY+8YSOpiMg==", + "dev": true, "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@types/chai": "^4.3.4", + "@types/chai-subset": "^1.3.3", + "@types/node": "*", + "acorn": "^8.8.1", + "acorn-walk": "^8.2.0", + "cac": "^6.7.14", + "chai": "^4.3.7", + "debug": "^4.3.4", + "local-pkg": "^0.4.2", + "picocolors": "^1.0.0", + "source-map": "^0.6.1", + "std-env": "^3.3.1", + "strip-literal": "^1.0.0", + "tinybench": "^2.3.1", + "tinypool": "^0.3.0", + "tinyspy": "^1.0.2", + "vite": "^3.0.0 || ^4.0.0", + "vite-node": "0.27.3", + "why-is-node-running": "^2.2.2" + }, + "bin": { + "vitest": "vitest.mjs" }, "engines": { - "node": ">= 10.0.0" + "node": ">=v14.16.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@edge-runtime/vm": "*", + "@vitest/browser": "*", + "@vitest/ui": "*", + "happy-dom": "*", + "jsdom": "*" + }, + "peerDependenciesMeta": { + "@edge-runtime/vm": { + "optional": true + }, + "@vitest/browser": { + "optional": true + }, + "@vitest/ui": { + "optional": true + }, + "happy-dom": { + "optional": true + }, + "jsdom": { + "optional": true + } } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-host-header/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-logger": { - "version": "3.6.1", - "license": "Apache-2.0", + "example_code/support/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-logger/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-retry": { - "version": "3.6.1", + "node_modules/@ampproject/remapping": { + "version": "2.2.0", "license": "Apache-2.0", + "peer": true, "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/service-error-classification": "3.6.1", - "@aws-sdk/types": "3.6.1", - "react-native-get-random-values": "^1.4.0", - "tslib": "^1.8.0", - "uuid": "^3.0.0" + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" }, "engines": { - "node": ">= 10.0.0" + "node": ">=6.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-retry/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-serde": { - "version": "3.6.1", + "node_modules/@aws-amplify/analytics": { + "version": "5.2.30", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" + "@aws-amplify/cache": "4.0.65", + "@aws-amplify/core": "4.7.14", + "@aws-sdk/client-firehose": "3.6.1", + "@aws-sdk/client-kinesis": "3.6.1", + "@aws-sdk/client-personalize-events": "3.6.1", + "@aws-sdk/client-pinpoint": "3.6.1", + "@aws-sdk/util-utf8-browser": "3.6.1", + "lodash": "^4.17.20", + "uuid": "^3.2.1" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-serde/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-signing": { + "node_modules/@aws-amplify/analytics/node_modules/@aws-sdk/util-utf8-browser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/signature-v4": "3.6.1", - "@aws-sdk/types": "3.6.1", "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-signing/node_modules/tslib": { + "node_modules/@aws-amplify/analytics/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-stack": { - "version": "3.6.1", + "node_modules/@aws-amplify/analytics/node_modules/uuid": { + "version": "3.4.0", + "license": "MIT", + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/@aws-amplify/api": { + "version": "4.0.63", "license": "Apache-2.0", "dependencies": { - "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" + "@aws-amplify/api-graphql": "2.3.27", + "@aws-amplify/api-rest": "2.0.63" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-stack/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.6.1", + "node_modules/@aws-amplify/api-graphql": { + "version": "2.3.27", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" + "@aws-amplify/api-rest": "2.0.63", + "@aws-amplify/auth": "4.6.16", + "@aws-amplify/cache": "4.0.65", + "@aws-amplify/core": "4.7.14", + "@aws-amplify/pubsub": "4.5.13", + "graphql": "15.8.0", + "uuid": "^3.2.1", + "zen-observable-ts": "0.8.19" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-user-agent/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-amplify/api-graphql/node_modules/uuid": { + "version": "3.4.0", + "license": "MIT", + "bin": { + "uuid": "bin/uuid" + } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/node-config-provider": { - "version": "3.6.1", + "node_modules/@aws-amplify/api-rest": { + "version": "2.0.63", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/shared-ini-file-loader": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" + "@aws-amplify/core": "4.7.14", + "axios": "0.26.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/node-config-provider/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/node-http-handler": { - "version": "3.6.1", + "node_modules/@aws-amplify/auth": { + "version": "4.6.16", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/abort-controller": "3.6.1", - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/querystring-builder": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" + "@aws-amplify/cache": "4.0.65", + "@aws-amplify/core": "4.7.14", + "amazon-cognito-identity-js": "5.2.14", + "crypto-js": "^4.1.1" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/node-http-handler/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/property-provider": { - "version": "3.6.1", + "node_modules/@aws-amplify/cache": { + "version": "4.0.65", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" + "@aws-amplify/core": "4.7.14" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/property-provider/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/protocol-http": { - "version": "3.6.1", + "node_modules/@aws-amplify/core": { + "version": "4.7.14", "license": "Apache-2.0", "dependencies": { + "@aws-crypto/sha256-js": "1.0.0-alpha.0", + "@aws-sdk/client-cloudwatch-logs": "3.6.1", + "@aws-sdk/client-cognito-identity": "3.6.1", + "@aws-sdk/credential-provider-cognito-identity": "3.6.1", "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" + "@aws-sdk/util-hex-encoding": "3.6.1", + "universal-cookie": "^4.0.4", + "zen-observable-ts": "0.8.19" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/protocol-http/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/querystring-builder": { - "version": "3.6.1", + "node_modules/@aws-amplify/core/node_modules/@aws-crypto/sha256-js": { + "version": "1.0.0-alpha.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-uri-escape": "3.6.1", - "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" + "@aws-sdk/types": "^1.0.0-alpha.0", + "@aws-sdk/util-utf8-browser": "^1.0.0-alpha.0", + "tslib": "^1.9.3" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/querystring-parser": { - "version": "3.6.1", + "node_modules/@aws-amplify/core/node_modules/@aws-crypto/sha256-js/node_modules/@aws-sdk/types": { + "version": "1.0.0-rc.10", "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" - }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/service-error-classification": { + "node_modules/@aws-amplify/core/node_modules/@aws-sdk/types": { "version": "3.6.1", "license": "Apache-2.0", "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/shared-ini-file-loader": { + "node_modules/@aws-amplify/core/node_modules/@aws-sdk/util-hex-encoding": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -4339,76 +4164,80 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/signature-v4": { - "version": "3.6.1", + "node_modules/@aws-amplify/core/node_modules/@aws-sdk/util-utf8-browser": { + "version": "1.0.0-rc.8", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/is-array-buffer": "3.6.1", - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-hex-encoding": "3.6.1", - "@aws-sdk/util-uri-escape": "3.6.1", "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { + "node_modules/@aws-amplify/core/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/smithy-client": { - "version": "3.6.1", + "node_modules/@aws-amplify/datastore": { + "version": "3.14.6", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-stack": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" + "@aws-amplify/api": "4.0.63", + "@aws-amplify/auth": "4.6.16", + "@aws-amplify/core": "4.7.14", + "@aws-amplify/pubsub": "4.5.13", + "amazon-cognito-identity-js": "5.2.14", + "idb": "5.0.6", + "immer": "9.0.6", + "ulid": "2.3.0", + "uuid": "3.3.2", + "zen-observable-ts": "0.8.19", + "zen-push": "0.2.1" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-amplify/datastore/node_modules/uuid": { + "version": "3.3.2", + "license": "MIT", + "bin": { + "uuid": "bin/uuid" + } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/types": { - "version": "3.6.1", + "node_modules/@aws-amplify/geo": { + "version": "1.3.26", "license": "Apache-2.0", - "engines": { - "node": ">= 10.0.0" + "dependencies": { + "@aws-amplify/core": "4.7.14", + "@aws-sdk/client-location": "3.186.0", + "@turf/boolean-clockwise": "6.5.0", + "camelcase-keys": "6.2.2" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/url-parser": { - "version": "3.6.1", + "node_modules/@aws-amplify/interactions": { + "version": "4.1.11", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/querystring-parser": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-amplify/core": "4.7.14", + "@aws-sdk/client-lex-runtime-service": "3.186.0", + "@aws-sdk/client-lex-runtime-v2": "3.186.0", + "base-64": "1.0.0", + "fflate": "0.7.3", + "pako": "2.0.4" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/url-parser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-body-length-browser": { - "version": "3.6.1", + "node_modules/@aws-amplify/predictions": { + "version": "4.0.63", "license": "Apache-2.0", "dependencies": { - "tslib": "^1.8.0" + "@aws-amplify/core": "4.7.14", + "@aws-amplify/storage": "4.5.16", + "@aws-sdk/client-comprehend": "3.6.1", + "@aws-sdk/client-polly": "3.6.1", + "@aws-sdk/client-rekognition": "3.6.1", + "@aws-sdk/client-textract": "3.6.1", + "@aws-sdk/client-translate": "3.6.1", + "@aws-sdk/eventstream-marshaller": "3.6.1", + "@aws-sdk/util-utf8-node": "3.6.1", + "uuid": "^3.2.1" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-body-length-node": { + "node_modules/@aws-amplify/predictions/node_modules/@aws-sdk/is-array-buffer": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -4418,11 +4247,7 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-buffer-from": { + "node_modules/@aws-amplify/predictions/node_modules/@aws-sdk/util-buffer-from": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -4433,289 +4258,225 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-hex-encoding": { + "node_modules/@aws-amplify/predictions/node_modules/@aws-sdk/util-utf8-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { + "@aws-sdk/util-buffer-from": "3.6.1", "tslib": "^1.8.0" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { + "node_modules/@aws-amplify/predictions/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-uri-escape": { - "version": "3.6.1", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" + "node_modules/@aws-amplify/predictions/node_modules/uuid": { + "version": "3.4.0", + "license": "MIT", + "bin": { + "uuid": "bin/uuid" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.6.1", + "node_modules/@aws-amplify/pubsub": { + "version": "4.5.13", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", - "bowser": "^2.11.0", - "tslib": "^1.8.0" + "@aws-amplify/auth": "4.6.16", + "@aws-amplify/cache": "4.0.65", + "@aws-amplify/core": "4.7.14", + "graphql": "15.8.0", + "paho-mqtt": "^1.1.0", + "uuid": "^3.2.1", + "zen-observable-ts": "0.8.19" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-amplify/pubsub/node_modules/uuid": { + "version": "3.4.0", + "license": "MIT", + "bin": { + "uuid": "bin/uuid" + } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.6.1", + "node_modules/@aws-amplify/storage": { + "version": "4.5.16", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/node-config-provider": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" + "@aws-amplify/core": "4.7.14", + "@aws-sdk/client-s3": "3.6.1", + "@aws-sdk/s3-request-presigner": "3.6.1", + "@aws-sdk/util-create-request": "3.6.1", + "@aws-sdk/util-format-url": "3.6.1", + "axios": "0.26.0", + "events": "^3.1.0" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-amplify/ui": { + "version": "2.0.7", + "license": "Apache-2.0" }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-utf8-browser": { - "version": "3.6.1", + "node_modules/@aws-amplify/xr": { + "version": "3.0.63", "license": "Apache-2.0", "dependencies": { - "tslib": "^1.8.0" + "@aws-amplify/core": "4.7.14" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { + "node_modules/@aws-crypto/crc32": { + "version": "2.0.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/util": "^2.0.0", + "@aws-sdk/types": "^3.1.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/crc32/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-utf8-node": { - "version": "3.6.1", + "node_modules/@aws-crypto/crc32c": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/crc32c/-/crc32c-3.0.0.tgz", + "integrity": "sha512-ENNPPManmnVJ4BTXlOjAgD7URidbAznURqD0KvfREyc4o20DPYdEldU1f5cQ7Jbj0CJJSPaMIk/9ZshdB3210w==", + "dependencies": { + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/crc32c/node_modules/@aws-crypto/util": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz", + "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==", + "dependencies": { + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/crc32c/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-crypto/ie11-detection": { + "version": "2.0.2", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/util-buffer-from": "3.6.1", - "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" + "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { + "node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid": { - "version": "3.4.0", - "license": "MIT", - "bin": { - "uuid": "bin/uuid" + "node_modules/@aws-crypto/sha1-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha1-browser/-/sha1-browser-3.0.0.tgz", + "integrity": "sha512-NJth5c997GLHs6nOYTzFKTbYdMNA6/1XlKVgnZoaZcQ7z7UJlOgj2JdbHE8tiYLS3fzXNCguct77SPGat2raSw==", + "dependencies": { + "@aws-crypto/ie11-detection": "^3.0.0", + "@aws-crypto/supports-web-crypto": "^3.0.0", + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-cloudwatch/node_modules/@aws-sdk/client-sso": { - "version": "3.245.0", - "license": "Apache-2.0", + "node_modules/@aws-crypto/sha1-browser/node_modules/@aws-crypto/ie11-detection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz", + "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==", "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.245.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" + "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-cloudwatch/node_modules/@aws-sdk/client-sso-oidc": { - "version": "3.245.0", - "license": "Apache-2.0", + "node_modules/@aws-crypto/sha1-browser/node_modules/@aws-crypto/supports-web-crypto": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz", + "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==", "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.245.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" + "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-cloudwatch/node_modules/@aws-sdk/client-sts": { - "version": "3.245.0", + "node_modules/@aws-crypto/sha1-browser/node_modules/@aws-crypto/util": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz", + "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==", + "dependencies": { + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/sha1-browser/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-crypto/sha256-browser": { + "version": "2.0.0", "license": "Apache-2.0", "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/credential-provider-node": "3.245.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-sdk-sts": "3.226.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-signing": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.245.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "fast-xml-parser": "4.0.11", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" + "@aws-crypto/ie11-detection": "^2.0.0", + "@aws-crypto/sha256-js": "^2.0.0", + "@aws-crypto/supports-web-crypto": "^2.0.0", + "@aws-crypto/util": "^2.0.0", + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-cloudwatch/node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.245.0", + "node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-crypto/sha256-js": { + "version": "2.0.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/credential-provider-env": "3.226.0", - "@aws-sdk/credential-provider-imds": "3.226.0", - "@aws-sdk/credential-provider-process": "3.226.0", - "@aws-sdk/credential-provider-sso": "3.245.0", - "@aws-sdk/credential-provider-web-identity": "3.226.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/types": "3.226.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" + "@aws-crypto/util": "^2.0.0", + "@aws-sdk/types": "^3.1.0", + "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-cloudwatch/node_modules/@aws-sdk/credential-provider-node": { - "version": "3.245.0", + "node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-crypto/supports-web-crypto": { + "version": "2.0.2", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/credential-provider-env": "3.226.0", - "@aws-sdk/credential-provider-imds": "3.226.0", - "@aws-sdk/credential-provider-ini": "3.245.0", - "@aws-sdk/credential-provider-process": "3.226.0", - "@aws-sdk/credential-provider-sso": "3.245.0", - "@aws-sdk/credential-provider-web-identity": "3.226.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/types": "3.226.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" + "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-cloudwatch/node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.245.0", + "node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-crypto/util": { + "version": "2.0.2", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/client-sso": "3.245.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/token-providers": "3.245.0", - "@aws-sdk/types": "3.226.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" + "@aws-sdk/types": "^3.110.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-cloudwatch/node_modules/@aws-sdk/token-providers": { - "version": "3.245.0", + "node_modules/@aws-crypto/util/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/abort-controller": { + "version": "3.226.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/client-sso-oidc": "3.245.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", "@aws-sdk/types": "3.226.0", "tslib": "^2.3.1" }, @@ -4723,66 +4484,38 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cloudwatch/node_modules/@aws-sdk/util-endpoints": { - "version": "3.245.0", + "node_modules/@aws-sdk/chunked-blob-reader": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.226.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" + "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-cognito-identity": { + "node_modules/@aws-sdk/chunked-blob-reader-native": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-crypto/sha256-browser": "^1.0.0", - "@aws-crypto/sha256-js": "^1.0.0", - "@aws-sdk/config-resolver": "3.6.1", - "@aws-sdk/credential-provider-node": "3.6.1", - "@aws-sdk/fetch-http-handler": "3.6.1", - "@aws-sdk/hash-node": "3.6.1", - "@aws-sdk/invalid-dependency": "3.6.1", - "@aws-sdk/middleware-content-length": "3.6.1", - "@aws-sdk/middleware-host-header": "3.6.1", - "@aws-sdk/middleware-logger": "3.6.1", - "@aws-sdk/middleware-retry": "3.6.1", - "@aws-sdk/middleware-serde": "3.6.1", - "@aws-sdk/middleware-signing": "3.6.1", - "@aws-sdk/middleware-stack": "3.6.1", - "@aws-sdk/middleware-user-agent": "3.6.1", - "@aws-sdk/node-config-provider": "3.6.1", - "@aws-sdk/node-http-handler": "3.6.1", - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/smithy-client": "3.6.1", - "@aws-sdk/types": "3.6.1", - "@aws-sdk/url-parser": "3.6.1", - "@aws-sdk/url-parser-native": "3.6.1", "@aws-sdk/util-base64-browser": "3.6.1", - "@aws-sdk/util-base64-node": "3.6.1", - "@aws-sdk/util-body-length-browser": "3.6.1", - "@aws-sdk/util-body-length-node": "3.6.1", - "@aws-sdk/util-user-agent-browser": "3.6.1", - "@aws-sdk/util-user-agent-node": "3.6.1", - "@aws-sdk/util-utf8-browser": "3.6.1", - "@aws-sdk/util-utf8-node": "3.6.1", - "tslib": "^2.0.0" - }, - "engines": { - "node": ">=10.0.0" + "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-cognito-identity-provider": { - "version": "3.238.0", + "node_modules/@aws-sdk/chunked-blob-reader-native/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/chunked-blob-reader/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cloudwatch": { + "version": "3.245.0", "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "2.0.0", "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/client-sts": "3.238.0", + "@aws-sdk/client-sts": "3.245.0", "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/credential-provider-node": "3.238.0", + "@aws-sdk/credential-provider-node": "3.245.0", "@aws-sdk/fetch-http-handler": "3.226.0", "@aws-sdk/hash-node": "3.226.0", "@aws-sdk/invalid-dependency": "3.226.0", @@ -4807,689 +4540,805 @@ "@aws-sdk/util-body-length-node": "3.208.0", "@aws-sdk/util-defaults-mode-browser": "3.234.0", "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.226.0", + "@aws-sdk/util-endpoints": "3.245.0", "@aws-sdk/util-retry": "3.229.0", "@aws-sdk/util-user-agent-browser": "3.226.0", "@aws-sdk/util-user-agent-node": "3.226.0", "@aws-sdk/util-utf8-browser": "3.188.0", "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/util-waiter": "3.226.0", + "fast-xml-parser": "4.0.11", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-crypto/ie11-detection": { - "version": "1.0.0", + "node_modules/@aws-sdk/client-cloudwatch-events": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "tslib": "^1.11.1" + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/client-sts": "3.254.0", + "@aws-sdk/config-resolver": "3.254.0", + "@aws-sdk/credential-provider-node": "3.254.0", + "@aws-sdk/fetch-http-handler": "3.254.0", + "@aws-sdk/hash-node": "3.254.0", + "@aws-sdk/invalid-dependency": "3.254.0", + "@aws-sdk/middleware-content-length": "3.254.0", + "@aws-sdk/middleware-endpoint": "3.254.0", + "@aws-sdk/middleware-host-header": "3.254.0", + "@aws-sdk/middleware-logger": "3.254.0", + "@aws-sdk/middleware-recursion-detection": "3.254.0", + "@aws-sdk/middleware-retry": "3.254.0", + "@aws-sdk/middleware-serde": "3.254.0", + "@aws-sdk/middleware-signing": "3.254.0", + "@aws-sdk/middleware-stack": "3.254.0", + "@aws-sdk/middleware-user-agent": "3.254.0", + "@aws-sdk/node-config-provider": "3.254.0", + "@aws-sdk/node-http-handler": "3.254.0", + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/smithy-client": "3.254.0", + "@aws-sdk/types": "3.254.0", + "@aws-sdk/url-parser": "3.254.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.254.0", + "@aws-sdk/util-defaults-mode-node": "3.254.0", + "@aws-sdk/util-endpoints": "3.254.0", + "@aws-sdk/util-retry": "3.254.0", + "@aws-sdk/util-user-agent-browser": "3.254.0", + "@aws-sdk/util-user-agent-node": "3.254.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-crypto/sha256-browser": { - "version": "1.2.2", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-crypto/ie11-detection": { + "version": "3.0.0", "license": "Apache-2.0", "dependencies": { - "@aws-crypto/ie11-detection": "^1.0.0", - "@aws-crypto/sha256-js": "^1.2.2", - "@aws-crypto/supports-web-crypto": "^1.0.0", - "@aws-crypto/util": "^1.2.2", - "@aws-sdk/types": "^3.1.0", - "@aws-sdk/util-locate-window": "^3.0.0", "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-crypto/sha256-js": { - "version": "1.2.2", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-crypto/sha256-browser": { + "version": "3.0.0", "license": "Apache-2.0", "dependencies": { - "@aws-crypto/util": "^1.2.2", - "@aws-sdk/types": "^3.1.0", + "@aws-crypto/ie11-detection": "^3.0.0", + "@aws-crypto/sha256-js": "^3.0.0", + "@aws-crypto/supports-web-crypto": "^3.0.0", + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-crypto/supports-web-crypto": { - "version": "1.0.0", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-crypto/sha256-js": { + "version": "3.0.0", "license": "Apache-2.0", "dependencies": { + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-crypto/util": { - "version": "1.2.2", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-crypto/supports-web-crypto": { + "version": "3.0.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "^3.1.0", - "@aws-sdk/util-utf8-browser": "^3.0.0", "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-crypto/util/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/abort-controller": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-crypto/util": { + "version": "3.0.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-crypto/util/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/config-resolver": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/abort-controller": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/signature-v4": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/credential-provider-env": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/client-sso": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.254.0", + "@aws-sdk/fetch-http-handler": "3.254.0", + "@aws-sdk/hash-node": "3.254.0", + "@aws-sdk/invalid-dependency": "3.254.0", + "@aws-sdk/middleware-content-length": "3.254.0", + "@aws-sdk/middleware-endpoint": "3.254.0", + "@aws-sdk/middleware-host-header": "3.254.0", + "@aws-sdk/middleware-logger": "3.254.0", + "@aws-sdk/middleware-recursion-detection": "3.254.0", + "@aws-sdk/middleware-retry": "3.254.0", + "@aws-sdk/middleware-serde": "3.254.0", + "@aws-sdk/middleware-stack": "3.254.0", + "@aws-sdk/middleware-user-agent": "3.254.0", + "@aws-sdk/node-config-provider": "3.254.0", + "@aws-sdk/node-http-handler": "3.254.0", + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/smithy-client": "3.254.0", + "@aws-sdk/types": "3.254.0", + "@aws-sdk/url-parser": "3.254.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.254.0", + "@aws-sdk/util-defaults-mode-node": "3.254.0", + "@aws-sdk/util-endpoints": "3.254.0", + "@aws-sdk/util-retry": "3.254.0", + "@aws-sdk/util-user-agent-browser": "3.254.0", + "@aws-sdk/util-user-agent-node": "3.254.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/credential-provider-imds": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.254.0", + "@aws-sdk/fetch-http-handler": "3.254.0", + "@aws-sdk/hash-node": "3.254.0", + "@aws-sdk/invalid-dependency": "3.254.0", + "@aws-sdk/middleware-content-length": "3.254.0", + "@aws-sdk/middleware-endpoint": "3.254.0", + "@aws-sdk/middleware-host-header": "3.254.0", + "@aws-sdk/middleware-logger": "3.254.0", + "@aws-sdk/middleware-recursion-detection": "3.254.0", + "@aws-sdk/middleware-retry": "3.254.0", + "@aws-sdk/middleware-serde": "3.254.0", + "@aws-sdk/middleware-stack": "3.254.0", + "@aws-sdk/middleware-user-agent": "3.254.0", + "@aws-sdk/node-config-provider": "3.254.0", + "@aws-sdk/node-http-handler": "3.254.0", + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/smithy-client": "3.254.0", + "@aws-sdk/types": "3.254.0", + "@aws-sdk/url-parser": "3.254.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.254.0", + "@aws-sdk/util-defaults-mode-node": "3.254.0", + "@aws-sdk/util-endpoints": "3.254.0", + "@aws-sdk/util-retry": "3.254.0", + "@aws-sdk/util-user-agent-browser": "3.254.0", + "@aws-sdk/util-user-agent-node": "3.254.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/client-sts": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/shared-ini-file-loader": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.254.0", + "@aws-sdk/credential-provider-node": "3.254.0", + "@aws-sdk/fetch-http-handler": "3.254.0", + "@aws-sdk/hash-node": "3.254.0", + "@aws-sdk/invalid-dependency": "3.254.0", + "@aws-sdk/middleware-content-length": "3.254.0", + "@aws-sdk/middleware-endpoint": "3.254.0", + "@aws-sdk/middleware-host-header": "3.254.0", + "@aws-sdk/middleware-logger": "3.254.0", + "@aws-sdk/middleware-recursion-detection": "3.254.0", + "@aws-sdk/middleware-retry": "3.254.0", + "@aws-sdk/middleware-sdk-sts": "3.254.0", + "@aws-sdk/middleware-serde": "3.254.0", + "@aws-sdk/middleware-signing": "3.254.0", + "@aws-sdk/middleware-stack": "3.254.0", + "@aws-sdk/middleware-user-agent": "3.254.0", + "@aws-sdk/node-config-provider": "3.254.0", + "@aws-sdk/node-http-handler": "3.254.0", + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/smithy-client": "3.254.0", + "@aws-sdk/types": "3.254.0", + "@aws-sdk/url-parser": "3.254.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.254.0", + "@aws-sdk/util-defaults-mode-node": "3.254.0", + "@aws-sdk/util-endpoints": "3.254.0", + "@aws-sdk/util-retry": "3.254.0", + "@aws-sdk/util-user-agent-browser": "3.254.0", + "@aws-sdk/util-user-agent-node": "3.254.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "fast-xml-parser": "4.0.11", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/credential-provider-node": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/config-resolver": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/credential-provider-env": "3.6.1", - "@aws-sdk/credential-provider-imds": "3.6.1", - "@aws-sdk/credential-provider-ini": "3.6.1", - "@aws-sdk/credential-provider-process": "3.6.1", - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/shared-ini-file-loader": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/signature-v4": "3.254.0", + "@aws-sdk/types": "3.254.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/credential-provider-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/credential-provider-process": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/credential-provider-env": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/credential-provider-ini": "3.6.1", - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/shared-ini-file-loader": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/credential-provider-process/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/fetch-http-handler": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/credential-provider-imds": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/querystring-builder": "3.6.1", - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-base64-browser": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/node-config-provider": "3.254.0", + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/types": "3.254.0", + "@aws-sdk/url-parser": "3.254.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/fetch-http-handler/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/hash-node": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-buffer-from": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/credential-provider-env": "3.254.0", + "@aws-sdk/credential-provider-imds": "3.254.0", + "@aws-sdk/credential-provider-process": "3.254.0", + "@aws-sdk/credential-provider-sso": "3.254.0", + "@aws-sdk/credential-provider-web-identity": "3.254.0", + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/shared-ini-file-loader": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/hash-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/invalid-dependency": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/credential-provider-node": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/credential-provider-env": "3.254.0", + "@aws-sdk/credential-provider-imds": "3.254.0", + "@aws-sdk/credential-provider-ini": "3.254.0", + "@aws-sdk/credential-provider-process": "3.254.0", + "@aws-sdk/credential-provider-sso": "3.254.0", + "@aws-sdk/credential-provider-web-identity": "3.254.0", + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/shared-ini-file-loader": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/invalid-dependency/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/is-array-buffer": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/credential-provider-process": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/shared-ini-file-loader": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/is-array-buffer/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-content-length": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/client-sso": "3.254.0", + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/shared-ini-file-loader": "3.254.0", + "@aws-sdk/token-providers": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-content-length/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-host-header": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-host-header/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/fetch-http-handler": { + "version": "3.254.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/querystring-builder": "3.254.0", + "@aws-sdk/types": "3.254.0", + "@aws-sdk/util-base64": "3.208.0", + "tslib": "^2.3.1" + } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-logger": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/hash-node": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.254.0", + "@aws-sdk/util-buffer-from": "3.208.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-logger/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/invalid-dependency": { + "version": "3.254.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-retry": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/middleware-content-length": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/service-error-classification": "3.6.1", - "@aws-sdk/types": "3.6.1", - "react-native-get-random-values": "^1.4.0", - "tslib": "^1.8.0", - "uuid": "^3.0.0" + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-retry/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-serde": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/middleware-endpoint": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/middleware-serde": "3.254.0", + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/signature-v4": "3.254.0", + "@aws-sdk/types": "3.254.0", + "@aws-sdk/url-parser": "3.254.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-serde/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-signing": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/middleware-host-header": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/signature-v4": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-signing/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-stack": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/middleware-logger": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-stack/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-user-agent/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/node-config-provider": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/middleware-retry": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/shared-ini-file-loader": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/service-error-classification": "3.254.0", + "@aws-sdk/types": "3.254.0", + "@aws-sdk/util-middleware": "3.254.0", + "@aws-sdk/util-retry": "3.254.0", + "tslib": "^2.3.1", + "uuid": "^8.3.2" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/node-config-provider/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/node-http-handler": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/middleware-sdk-sts": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/abort-controller": "3.6.1", - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/querystring-builder": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/middleware-signing": "3.254.0", + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/signature-v4": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/node-http-handler/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/property-provider": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/middleware-serde": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/property-provider/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/protocol-http": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/middleware-signing": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/signature-v4": "3.254.0", + "@aws-sdk/types": "3.254.0", + "@aws-sdk/util-middleware": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/protocol-http/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/querystring-builder": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/middleware-stack": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-uri-escape": "3.6.1", - "tslib": "^1.8.0" + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/querystring-parser": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/service-error-classification": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/node-config-provider": { + "version": "3.254.0", "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/shared-ini-file-loader": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/shared-ini-file-loader": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/node-http-handler": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/abort-controller": "3.254.0", + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/querystring-builder": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/signature-v4": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/property-provider": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/is-array-buffer": "3.6.1", - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-hex-encoding": "3.6.1", - "@aws-sdk/util-uri-escape": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/smithy-client": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/protocol-http": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-stack": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/types": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/querystring-builder": { + "version": "3.254.0", "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "3.254.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" + }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/url-parser": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/querystring-parser": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/querystring-parser": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/url-parser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/service-error-classification": { + "version": "3.254.0", + "license": "Apache-2.0", + "engines": { + "node": ">=14.0.0" + } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-body-length-browser": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/shared-ini-file-loader": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-body-length-node": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/signature-v4": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/is-array-buffer": "3.201.0", + "@aws-sdk/types": "3.254.0", + "@aws-sdk/util-hex-encoding": "3.201.0", + "@aws-sdk/util-middleware": "3.254.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-buffer-from": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/smithy-client": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/is-array-buffer": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/middleware-stack": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-hex-encoding": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/token-providers": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/client-sso-oidc": "3.254.0", + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/shared-ini-file-loader": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-uri-escape": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/types": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "tslib": "^1.8.0" + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/url-parser": { + "version": "3.254.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/querystring-parser": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/util-defaults-mode-browser": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/types": "3.254.0", "bowser": "^2.11.0", - "tslib": "^1.8.0" + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/util-defaults-mode-node": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/node-config-provider": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/config-resolver": "3.254.0", + "@aws-sdk/credential-provider-imds": "3.254.0", + "@aws-sdk/node-config-provider": "3.254.0", + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-utf8-browser": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/util-endpoints": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/util-middleware": { + "version": "3.254.0", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-utf8-node": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/util-retry": { + "version": "3.254.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/util-buffer-from": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/service-error-classification": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 14.0.0" } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.254.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "3.254.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + } }, - "node_modules/@aws-sdk/client-cognito-identity/node_modules/uuid": { - "version": "3.4.0", - "license": "MIT", - "bin": { - "uuid": "bin/uuid" + "node_modules/@aws-sdk/client-cloudwatch-events/node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.254.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/node-config-provider": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "aws-crt": ">=1.0.0" + }, + "peerDependenciesMeta": { + "aws-crt": { + "optional": true + } } }, - "node_modules/@aws-sdk/client-comprehend": { + "node_modules/@aws-sdk/client-cloudwatch-logs": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5523,25 +5372,24 @@ "@aws-sdk/util-user-agent-node": "3.6.1", "@aws-sdk/util-utf8-browser": "3.6.1", "@aws-sdk/util-utf8-node": "3.6.1", - "tslib": "^2.0.0", - "uuid": "^3.0.0" + "tslib": "^2.0.0" }, "engines": { "node": ">=10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-crypto/ie11-detection": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-crypto/ie11-detection": { "version": "1.0.0", "license": "Apache-2.0", "dependencies": { "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-crypto/sha256-browser": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-crypto/sha256-browser": { "version": "1.2.2", "license": "Apache-2.0", "dependencies": { @@ -5554,11 +5402,11 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-crypto/sha256-js": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-crypto/sha256-js": { "version": "1.2.2", "license": "Apache-2.0", "dependencies": { @@ -5567,22 +5415,22 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-crypto/supports-web-crypto": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-crypto/supports-web-crypto": { "version": "1.0.0", "license": "Apache-2.0", "dependencies": { "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-crypto/util": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-crypto/util": { "version": "1.2.2", "license": "Apache-2.0", "dependencies": { @@ -5591,11 +5439,11 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-crypto/util/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-crypto/util/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/abort-controller": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/abort-controller": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5606,11 +5454,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/config-resolver": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/config-resolver": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5622,11 +5470,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/credential-provider-env": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/credential-provider-env": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5638,11 +5486,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/credential-provider-imds": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/credential-provider-imds": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5654,11 +5502,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/credential-provider-ini": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/credential-provider-ini": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5671,11 +5519,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/credential-provider-node": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/credential-provider-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5692,11 +5540,11 @@ "node": ">=10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/credential-provider-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/credential-provider-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/credential-provider-process": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/credential-provider-process": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5710,11 +5558,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/credential-provider-process/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/credential-provider-process/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/fetch-http-handler": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/fetch-http-handler": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5725,11 +5573,11 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/fetch-http-handler/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/fetch-http-handler/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/hash-node": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/hash-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5741,11 +5589,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/hash-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/hash-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/invalid-dependency": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/invalid-dependency": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5753,11 +5601,11 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/invalid-dependency/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/invalid-dependency/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/is-array-buffer": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/is-array-buffer": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5767,11 +5615,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/is-array-buffer/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/is-array-buffer/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-content-length": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-content-length": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5783,11 +5631,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-content-length/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-content-length/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-host-header": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-host-header": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5799,11 +5647,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-host-header/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-host-header/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-logger": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-logger": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5814,11 +5662,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-logger/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-logger/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-retry": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-retry": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5833,11 +5681,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-retry/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-retry/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-serde": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-serde": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5848,11 +5696,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-serde/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-serde/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-signing": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-signing": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5865,11 +5713,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-signing/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-signing/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-stack": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-stack": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5879,11 +5727,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-stack/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-stack/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-user-agent": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-user-agent": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5895,11 +5743,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-user-agent/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/middleware-user-agent/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/node-config-provider": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/node-config-provider": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5912,11 +5760,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/node-config-provider/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/node-config-provider/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/node-http-handler": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/node-http-handler": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5930,11 +5778,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/node-http-handler/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/node-http-handler/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/property-provider": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/property-provider": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5945,11 +5793,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/property-provider/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/property-provider/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/protocol-http": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/protocol-http": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5960,11 +5808,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/protocol-http/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/protocol-http/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/querystring-builder": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/querystring-builder": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5976,11 +5824,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/querystring-parser": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/querystring-parser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -5991,18 +5839,18 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/service-error-classification": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/service-error-classification": { "version": "3.6.1", "license": "Apache-2.0", "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/shared-ini-file-loader": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/shared-ini-file-loader": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -6012,11 +5860,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/signature-v4": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/signature-v4": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -6030,11 +5878,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/smithy-client": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/smithy-client": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -6046,18 +5894,18 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/types": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/types": { "version": "3.6.1", "license": "Apache-2.0", "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/url-parser": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/url-parser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -6066,22 +5914,22 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/url-parser/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/url-parser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-body-length-browser": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-body-length-browser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-body-length-node": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-body-length-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -6091,11 +5939,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-buffer-from": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-buffer-from": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -6106,11 +5954,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-hex-encoding": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-hex-encoding": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -6120,11 +5968,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-uri-escape": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-uri-escape": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -6134,11 +5982,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-user-agent-browser": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-user-agent-browser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -6147,11 +5995,11 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-user-agent-node": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-user-agent-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -6163,22 +6011,22 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-utf8-browser": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-utf8-browser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-utf8-node": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-utf8-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -6189,872 +6037,980 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-comprehend/node_modules/uuid": { + "node_modules/@aws-sdk/client-cloudwatch-logs/node_modules/uuid": { "version": "3.4.0", "license": "MIT", "bin": { "uuid": "bin/uuid" } }, - "node_modules/@aws-sdk/client-ec2": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-ec2/-/client-ec2-3.266.1.tgz", - "integrity": "sha512-1T1CUAQwGDA5YFhX5F2hYDs8cGgML2uC1QEkoggfOI3py+R6Pkcopu/Azlj8W8fv8x4IcGNVyVgsMeQ7uqvoLQ==", + "node_modules/@aws-sdk/client-cloudwatch/node_modules/@aws-sdk/client-sso": { + "version": "3.245.0", + "license": "Apache-2.0", "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sts": "3.266.1", - "@aws-sdk/config-resolver": "3.266.1", - "@aws-sdk/credential-provider-node": "3.266.1", - "@aws-sdk/fetch-http-handler": "3.266.1", - "@aws-sdk/hash-node": "3.266.1", - "@aws-sdk/invalid-dependency": "3.266.1", - "@aws-sdk/middleware-content-length": "3.266.1", - "@aws-sdk/middleware-endpoint": "3.266.1", - "@aws-sdk/middleware-host-header": "3.266.1", - "@aws-sdk/middleware-logger": "3.266.1", - "@aws-sdk/middleware-recursion-detection": "3.266.1", - "@aws-sdk/middleware-retry": "3.266.1", - "@aws-sdk/middleware-sdk-ec2": "3.266.1", - "@aws-sdk/middleware-serde": "3.266.1", - "@aws-sdk/middleware-signing": "3.266.1", - "@aws-sdk/middleware-stack": "3.266.1", - "@aws-sdk/middleware-user-agent": "3.266.1", - "@aws-sdk/node-config-provider": "3.266.1", - "@aws-sdk/node-http-handler": "3.266.1", - "@aws-sdk/protocol-http": "3.266.1", - "@aws-sdk/smithy-client": "3.266.1", - "@aws-sdk/types": "3.266.1", - "@aws-sdk/url-parser": "3.266.1", + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", "@aws-sdk/util-base64": "3.208.0", "@aws-sdk/util-body-length-browser": "3.188.0", "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.266.1", - "@aws-sdk/util-defaults-mode-node": "3.266.1", - "@aws-sdk/util-endpoints": "3.266.1", - "@aws-sdk/util-retry": "3.266.1", - "@aws-sdk/util-user-agent-browser": "3.266.1", - "@aws-sdk/util-user-agent-node": "3.266.1", - "@aws-sdk/util-utf8": "3.254.0", - "@aws-sdk/util-waiter": "3.266.1", - "fast-xml-parser": "4.0.11", - "tslib": "^2.3.1", - "uuid": "^8.3.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/ie11-detection": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz", - "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==", - "dependencies": { - "tslib": "^1.11.1" - } - }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/sha256-browser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz", - "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==", - "dependencies": { - "@aws-crypto/ie11-detection": "^3.0.0", - "@aws-crypto/sha256-js": "^3.0.0", - "@aws-crypto/supports-web-crypto": "^3.0.0", - "@aws-crypto/util": "^3.0.0", - "@aws-sdk/types": "^3.222.0", - "@aws-sdk/util-locate-window": "^3.0.0", - "@aws-sdk/util-utf8-browser": "^3.0.0", - "tslib": "^1.11.1" - } - }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/sha256-js": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-3.0.0.tgz", - "integrity": "sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==", - "dependencies": { - "@aws-crypto/util": "^3.0.0", - "@aws-sdk/types": "^3.222.0", - "tslib": "^1.11.1" - } - }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/supports-web-crypto": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz", - "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==", - "dependencies": { - "tslib": "^1.11.1" - } - }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/util": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz", - "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==", - "dependencies": { - "@aws-sdk/types": "^3.222.0", - "@aws-sdk/util-utf8-browser": "^3.0.0", - "tslib": "^1.11.1" - } - }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/util/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/abort-controller": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.266.1.tgz", - "integrity": "sha512-6tG6dAgMMKh86U2kgo58J6pyC2pSEAtm1bXnhYOuuXBjFgieNvikwjoj//zzciudmp1qTu5Wh99u8LBLmYofFg==", - "dependencies": { - "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.245.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/client-sso": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.266.1.tgz", - "integrity": "sha512-mgrRfNSa7sJyBgAuMvRE5W2izHYl1n0tpxjLZ8rP+AoOp0GrZLpuj9T2XhmVwyR4ibVBNFKdr8nUHWekF4HA+w==", + "node_modules/@aws-sdk/client-cloudwatch/node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.245.0", + "license": "Apache-2.0", "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.266.1", - "@aws-sdk/fetch-http-handler": "3.266.1", - "@aws-sdk/hash-node": "3.266.1", - "@aws-sdk/invalid-dependency": "3.266.1", - "@aws-sdk/middleware-content-length": "3.266.1", - "@aws-sdk/middleware-endpoint": "3.266.1", - "@aws-sdk/middleware-host-header": "3.266.1", - "@aws-sdk/middleware-logger": "3.266.1", - "@aws-sdk/middleware-recursion-detection": "3.266.1", - "@aws-sdk/middleware-retry": "3.266.1", - "@aws-sdk/middleware-serde": "3.266.1", - "@aws-sdk/middleware-stack": "3.266.1", - "@aws-sdk/middleware-user-agent": "3.266.1", - "@aws-sdk/node-config-provider": "3.266.1", - "@aws-sdk/node-http-handler": "3.266.1", - "@aws-sdk/protocol-http": "3.266.1", - "@aws-sdk/smithy-client": "3.266.1", - "@aws-sdk/types": "3.266.1", - "@aws-sdk/url-parser": "3.266.1", + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", "@aws-sdk/util-base64": "3.208.0", "@aws-sdk/util-body-length-browser": "3.188.0", "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.266.1", - "@aws-sdk/util-defaults-mode-node": "3.266.1", - "@aws-sdk/util-endpoints": "3.266.1", - "@aws-sdk/util-retry": "3.266.1", - "@aws-sdk/util-user-agent-browser": "3.266.1", - "@aws-sdk/util-user-agent-node": "3.266.1", - "@aws-sdk/util-utf8": "3.254.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.245.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/client-sso-oidc": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.266.1.tgz", - "integrity": "sha512-eErpowPr6etcZH25v8JfJNdSPr+jet98cFWhsCN8GSxVNkyZci6aZnx6pBsTQCQn7L/zx8i4QZuOo5LYXdzF6A==", + "node_modules/@aws-sdk/client-cloudwatch/node_modules/@aws-sdk/client-sts": { + "version": "3.245.0", + "license": "Apache-2.0", "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.266.1", - "@aws-sdk/fetch-http-handler": "3.266.1", - "@aws-sdk/hash-node": "3.266.1", - "@aws-sdk/invalid-dependency": "3.266.1", - "@aws-sdk/middleware-content-length": "3.266.1", - "@aws-sdk/middleware-endpoint": "3.266.1", - "@aws-sdk/middleware-host-header": "3.266.1", - "@aws-sdk/middleware-logger": "3.266.1", - "@aws-sdk/middleware-recursion-detection": "3.266.1", - "@aws-sdk/middleware-retry": "3.266.1", - "@aws-sdk/middleware-serde": "3.266.1", - "@aws-sdk/middleware-stack": "3.266.1", - "@aws-sdk/middleware-user-agent": "3.266.1", - "@aws-sdk/node-config-provider": "3.266.1", - "@aws-sdk/node-http-handler": "3.266.1", - "@aws-sdk/protocol-http": "3.266.1", - "@aws-sdk/smithy-client": "3.266.1", - "@aws-sdk/types": "3.266.1", - "@aws-sdk/url-parser": "3.266.1", + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/credential-provider-node": "3.245.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-sdk-sts": "3.226.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-signing": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", "@aws-sdk/util-base64": "3.208.0", "@aws-sdk/util-body-length-browser": "3.188.0", "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.266.1", - "@aws-sdk/util-defaults-mode-node": "3.266.1", - "@aws-sdk/util-endpoints": "3.266.1", - "@aws-sdk/util-retry": "3.266.1", - "@aws-sdk/util-user-agent-browser": "3.266.1", - "@aws-sdk/util-user-agent-node": "3.266.1", - "@aws-sdk/util-utf8": "3.254.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.245.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "fast-xml-parser": "4.0.11", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/client-sts": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.266.1.tgz", - "integrity": "sha512-P1hIyJkzojIG5NHuW2u/oae36KUvTB2q4nSIWuU4BrUPDeBoHg+5+zRRavtfK88aLRohwYDumRdLegT6sQNt0g==", + "node_modules/@aws-sdk/client-cloudwatch/node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.245.0", + "license": "Apache-2.0", "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.266.1", - "@aws-sdk/credential-provider-node": "3.266.1", - "@aws-sdk/fetch-http-handler": "3.266.1", - "@aws-sdk/hash-node": "3.266.1", - "@aws-sdk/invalid-dependency": "3.266.1", - "@aws-sdk/middleware-content-length": "3.266.1", - "@aws-sdk/middleware-endpoint": "3.266.1", - "@aws-sdk/middleware-host-header": "3.266.1", - "@aws-sdk/middleware-logger": "3.266.1", - "@aws-sdk/middleware-recursion-detection": "3.266.1", - "@aws-sdk/middleware-retry": "3.266.1", - "@aws-sdk/middleware-sdk-sts": "3.266.1", - "@aws-sdk/middleware-serde": "3.266.1", - "@aws-sdk/middleware-signing": "3.266.1", - "@aws-sdk/middleware-stack": "3.266.1", - "@aws-sdk/middleware-user-agent": "3.266.1", - "@aws-sdk/node-config-provider": "3.266.1", - "@aws-sdk/node-http-handler": "3.266.1", - "@aws-sdk/protocol-http": "3.266.1", - "@aws-sdk/smithy-client": "3.266.1", - "@aws-sdk/types": "3.266.1", - "@aws-sdk/url-parser": "3.266.1", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.266.1", - "@aws-sdk/util-defaults-mode-node": "3.266.1", - "@aws-sdk/util-endpoints": "3.266.1", - "@aws-sdk/util-retry": "3.266.1", - "@aws-sdk/util-user-agent-browser": "3.266.1", - "@aws-sdk/util-user-agent-node": "3.266.1", - "@aws-sdk/util-utf8": "3.254.0", - "fast-xml-parser": "4.0.11", + "@aws-sdk/credential-provider-env": "3.226.0", + "@aws-sdk/credential-provider-imds": "3.226.0", + "@aws-sdk/credential-provider-process": "3.226.0", + "@aws-sdk/credential-provider-sso": "3.245.0", + "@aws-sdk/credential-provider-web-identity": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/config-resolver": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.266.1.tgz", - "integrity": "sha512-MqMVki/y40Ot7XWJnziYuO35zqww3JbpH9jzCRCf8vtOE9u6C8VpuiG/OHIR9WQj63Yhcr+7fohmN3kGFnNWFg==", + "node_modules/@aws-sdk/client-cloudwatch/node_modules/@aws-sdk/credential-provider-node": { + "version": "3.245.0", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/signature-v4": "3.266.1", - "@aws-sdk/types": "3.266.1", - "@aws-sdk/util-config-provider": "3.208.0", - "@aws-sdk/util-middleware": "3.266.1", + "@aws-sdk/credential-provider-env": "3.226.0", + "@aws-sdk/credential-provider-imds": "3.226.0", + "@aws-sdk/credential-provider-ini": "3.245.0", + "@aws-sdk/credential-provider-process": "3.226.0", + "@aws-sdk/credential-provider-sso": "3.245.0", + "@aws-sdk/credential-provider-web-identity": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-env": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.266.1.tgz", - "integrity": "sha512-RPq9/FV7fOv14P5DxpqpcwuCa7P6ijUrN1vhpiYaWMQNJSsJK8cIsPECI3xQ1z+oPZ5/1qA++0RpTLqIhq/ifg==", + "node_modules/@aws-sdk/client-cloudwatch/node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.245.0", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.266.1", - "@aws-sdk/types": "3.266.1", + "@aws-sdk/client-sso": "3.245.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/token-providers": "3.245.0", + "@aws-sdk/types": "3.226.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-imds": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.266.1.tgz", - "integrity": "sha512-pTJnJtKaR0JWVqyt9XgHiqlK+3GnZfd3cuKGv9IsYxumVzladm7gNKiNFw0A2KsDj9jhrCRRZwEsH9ooDzZ/Ow==", + "node_modules/@aws-sdk/client-cloudwatch/node_modules/@aws-sdk/token-providers": { + "version": "3.245.0", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/node-config-provider": "3.266.1", - "@aws-sdk/property-provider": "3.266.1", - "@aws-sdk/types": "3.266.1", - "@aws-sdk/url-parser": "3.266.1", + "@aws-sdk/client-sso-oidc": "3.245.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.266.1.tgz", - "integrity": "sha512-N52GNeHRJufEx+V0mWfwe5cV3ukHong75uRAB0IeapJwj+kKwxxLH1dKOUaGjd/ALx6/hsISoUE/6jm/Qf/DsA==", + "node_modules/@aws-sdk/client-cloudwatch/node_modules/@aws-sdk/util-endpoints": { + "version": "3.245.0", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/credential-provider-env": "3.266.1", - "@aws-sdk/credential-provider-imds": "3.266.1", - "@aws-sdk/credential-provider-process": "3.266.1", - "@aws-sdk/credential-provider-sso": "3.266.1", - "@aws-sdk/credential-provider-web-identity": "3.266.1", - "@aws-sdk/property-provider": "3.266.1", - "@aws-sdk/shared-ini-file-loader": "3.266.1", - "@aws-sdk/types": "3.266.1", + "@aws-sdk/types": "3.226.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-node": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.266.1.tgz", - "integrity": "sha512-6/iTi/zugdvuyQDmEakYn01kiFKUArL+rIYwcMf20YguXNml6G4HVWJGbX2JklY6ovnznU5ENw6+ftzBAiw/PA==", + "node_modules/@aws-sdk/client-cognito-identity": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/credential-provider-env": "3.266.1", - "@aws-sdk/credential-provider-imds": "3.266.1", - "@aws-sdk/credential-provider-ini": "3.266.1", - "@aws-sdk/credential-provider-process": "3.266.1", - "@aws-sdk/credential-provider-sso": "3.266.1", - "@aws-sdk/credential-provider-web-identity": "3.266.1", - "@aws-sdk/property-provider": "3.266.1", - "@aws-sdk/shared-ini-file-loader": "3.266.1", - "@aws-sdk/types": "3.266.1", - "tslib": "^2.3.1" + "@aws-crypto/sha256-browser": "^1.0.0", + "@aws-crypto/sha256-js": "^1.0.0", + "@aws-sdk/config-resolver": "3.6.1", + "@aws-sdk/credential-provider-node": "3.6.1", + "@aws-sdk/fetch-http-handler": "3.6.1", + "@aws-sdk/hash-node": "3.6.1", + "@aws-sdk/invalid-dependency": "3.6.1", + "@aws-sdk/middleware-content-length": "3.6.1", + "@aws-sdk/middleware-host-header": "3.6.1", + "@aws-sdk/middleware-logger": "3.6.1", + "@aws-sdk/middleware-retry": "3.6.1", + "@aws-sdk/middleware-serde": "3.6.1", + "@aws-sdk/middleware-signing": "3.6.1", + "@aws-sdk/middleware-stack": "3.6.1", + "@aws-sdk/middleware-user-agent": "3.6.1", + "@aws-sdk/node-config-provider": "3.6.1", + "@aws-sdk/node-http-handler": "3.6.1", + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/smithy-client": "3.6.1", + "@aws-sdk/types": "3.6.1", + "@aws-sdk/url-parser": "3.6.1", + "@aws-sdk/url-parser-native": "3.6.1", + "@aws-sdk/util-base64-browser": "3.6.1", + "@aws-sdk/util-base64-node": "3.6.1", + "@aws-sdk/util-body-length-browser": "3.6.1", + "@aws-sdk/util-body-length-node": "3.6.1", + "@aws-sdk/util-user-agent-browser": "3.6.1", + "@aws-sdk/util-user-agent-node": "3.6.1", + "@aws-sdk/util-utf8-browser": "3.6.1", + "@aws-sdk/util-utf8-node": "3.6.1", + "tslib": "^2.0.0" }, "engines": { - "node": ">=14.0.0" + "node": ">=10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-process": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.266.1.tgz", - "integrity": "sha512-4V/7zVnaZo1IP4Is09dlwd2CkltlUdgbX4NUIb+QxZ/BlY7Ws47xyCjjyJhVVCe+y184M58bG4+HR5dHnrBfSA==", + "node_modules/@aws-sdk/client-cognito-identity-provider": { + "version": "3.238.0", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.266.1", - "@aws-sdk/shared-ini-file-loader": "3.266.1", - "@aws-sdk/types": "3.266.1", + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/client-sts": "3.238.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/credential-provider-node": "3.238.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-signing": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.226.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.266.1.tgz", - "integrity": "sha512-d9hcV7XV1Gh0Dkt8kADsSoB/hZPlbuTp/Vzbj0HMO7hlGxFGcTrGN1UoQc11UAp4kKeF3i2ZQlMsch0d/2gK3w==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-crypto/ie11-detection": { + "version": "1.0.0", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/client-sso": "3.266.1", - "@aws-sdk/property-provider": "3.266.1", - "@aws-sdk/shared-ini-file-loader": "3.266.1", - "@aws-sdk/token-providers": "3.266.1", - "@aws-sdk/types": "3.266.1", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" + "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.266.1.tgz", - "integrity": "sha512-JIktczlqxIc+Gqc/99e7pPzNSgUjYX23fA2dmLt1bHRPH15p8S1Kv73lvqsgLF5EKP1H/UXDu+jVWDklYM6fVA==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-crypto/sha256-browser": { + "version": "1.2.2", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.266.1", - "@aws-sdk/types": "3.266.1", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" + "@aws-crypto/ie11-detection": "^1.0.0", + "@aws-crypto/sha256-js": "^1.2.2", + "@aws-crypto/supports-web-crypto": "^1.0.0", + "@aws-crypto/util": "^1.2.2", + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/fetch-http-handler": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.266.1.tgz", - "integrity": "sha512-tyVMLBrJF1weMUqLU81lhuHES5QtFg7RmSysYM8mndePwBl81iQjLF5D7M8CU3aVzXY3TNU3rZBrm5xEK3xK1w==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-crypto/sha256-js": { + "version": "1.2.2", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.266.1", - "@aws-sdk/querystring-builder": "3.266.1", - "@aws-sdk/types": "3.266.1", - "@aws-sdk/util-base64": "3.208.0", - "tslib": "^2.3.1" + "@aws-crypto/util": "^1.2.2", + "@aws-sdk/types": "^3.1.0", + "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/hash-node": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.266.1.tgz", - "integrity": "sha512-2DbuY/AmtF4ORJVEAdzHfbM1p8w9ThRlu4BGdI7DXpO6/o1kgRBvNEbZc6MZkg7D2bI7TT6bI83u7AAbbMUMng==", - "dependencies": { - "@aws-sdk/types": "3.266.1", - "@aws-sdk/util-buffer-from": "3.208.0", - "@aws-sdk/util-utf8": "3.254.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" - } + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/invalid-dependency": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.266.1.tgz", - "integrity": "sha512-rGc2Bv10eEVQW2Zwrd4/I2QBj5MOhl8qr1NA3UCHJa2501Z97/jn2BGZoX+Cc+iE55so66GKmqMYpibqdtDARw==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-crypto/supports-web-crypto": { + "version": "1.0.0", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.266.1", - "tslib": "^2.3.1" + "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-content-length": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.266.1.tgz", - "integrity": "sha512-Clq14Fr9WkiSg59jnIelL2F5D81HAhdE1MCZIAEEjN1ZK6bEM2kECnNT9CKJjDsuPvhdkrVGv9rjUSANWHLETw==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-crypto/util": { + "version": "1.2.2", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.266.1", - "@aws-sdk/types": "3.266.1", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-endpoint": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.266.1.tgz", - "integrity": "sha512-EVnzd51U/Jhz9x68jFwqHjU4KPsLIXfuS1PSNV598OT04WLQXerBx/fvZh17Y4Dmmu6hf/JUWI9PI5To+oC3mQ==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-crypto/util/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/abort-controller": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-serde": "3.266.1", - "@aws-sdk/protocol-http": "3.266.1", - "@aws-sdk/signature-v4": "3.266.1", - "@aws-sdk/types": "3.266.1", - "@aws-sdk/url-parser": "3.266.1", - "@aws-sdk/util-config-provider": "3.208.0", - "@aws-sdk/util-middleware": "3.266.1", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-host-header": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.266.1.tgz", - "integrity": "sha512-3FSD8EkxOGV4O2iKgBnAwvj3PG/lABzcqmX6hABnsIusXAlUV5umh39FteipLcjnMXB04cLgmcgcG2o3cSA3tQ==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/config-resolver": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.266.1", - "@aws-sdk/types": "3.266.1", - "tslib": "^2.3.1" + "@aws-sdk/signature-v4": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-logger": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.266.1.tgz", - "integrity": "sha512-FbD9Hqt994PyDm7OTG8PbIuB6Mv9vYhqOM2RhqC1UGtprDmk084/cEv9Sp+qY33lFPxjZstKneQK6FhAfozIAQ==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/credential-provider-env": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.266.1", - "tslib": "^2.3.1" + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.266.1.tgz", - "integrity": "sha512-rgRxdgrLOD20zIFrjFW7Bu3s4MXC1KLDbqJY6sMpc5D8mmQlxfaQiSnCQrjgUxbW0Ni+rXiatlW2q2MwCUAPzw==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/credential-provider-imds": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.266.1", - "@aws-sdk/types": "3.266.1", - "tslib": "^2.3.1" + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-retry": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.266.1.tgz", - "integrity": "sha512-xBiKAjAP1j8SbKhF28bk1g2iZoiVMI7XV/x5d0g6igsvI4RiqzywTsiLi2VVsYPCY6bwbn0Zgt93Mej/MFfn5w==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.266.1", - "@aws-sdk/service-error-classification": "3.266.1", - "@aws-sdk/types": "3.266.1", - "@aws-sdk/util-middleware": "3.266.1", - "@aws-sdk/util-retry": "3.266.1", - "tslib": "^2.3.1", - "uuid": "^8.3.2" + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/shared-ini-file-loader": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-sdk-sts": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.266.1.tgz", - "integrity": "sha512-lM9t+S+PjmJ/xhoP9e/sIUS2bZyuEbobHo6a9WPk0UcdiqDWBIp+8MlTRDafKZtlN36gPDk5+qM9tXcI6P5YCA==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/credential-provider-node": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-signing": "3.266.1", - "@aws-sdk/property-provider": "3.266.1", - "@aws-sdk/protocol-http": "3.266.1", - "@aws-sdk/signature-v4": "3.266.1", - "@aws-sdk/types": "3.266.1", - "tslib": "^2.3.1" + "@aws-sdk/credential-provider-env": "3.6.1", + "@aws-sdk/credential-provider-imds": "3.6.1", + "@aws-sdk/credential-provider-ini": "3.6.1", + "@aws-sdk/credential-provider-process": "3.6.1", + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/shared-ini-file-loader": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">=10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-serde": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.266.1.tgz", - "integrity": "sha512-UFJ4BlRG/MUOJq5afHohkDsMDPAkbuXGCkhTz93MGxbACEOJYoEvsaMjpLft88wu4D11GY1Y2PVFkfxJUYWDXA==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/credential-provider-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/credential-provider-process": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.266.1", - "tslib": "^2.3.1" + "@aws-sdk/credential-provider-ini": "3.6.1", + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/shared-ini-file-loader": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-signing": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.266.1.tgz", - "integrity": "sha512-PbVwt7xSP3xlT5x4Xdj7+2T1PgCW00bh5QrCJi2wo3dEN9UowU/IVGzGSv4/OJItLZWe4puGb1WtA+LKeWA40w==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/credential-provider-process/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/fetch-http-handler": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.266.1", - "@aws-sdk/protocol-http": "3.266.1", - "@aws-sdk/signature-v4": "3.266.1", - "@aws-sdk/types": "3.266.1", - "@aws-sdk/util-middleware": "3.266.1", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/querystring-builder": "3.6.1", + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-base64-browser": "3.6.1", + "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-stack": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.266.1.tgz", - "integrity": "sha512-liqq541u1eCDe+TCDOSrOcH6kAB6Dn1R8pbtJ23hP3fYM5/8W3V0f6VcywALVL9Pam+mkYmodWeDRQK8ieLEOg==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/fetch-http-handler/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/hash-node": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-buffer-from": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.266.1.tgz", - "integrity": "sha512-yoHQSP3OngZnLWeuqMrYkOifMD8FUZxyXoUO9iHPytxns1Gri/4Gn/1raNWMqdrSIlBKPorKzCEu24DX5klf0w==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/hash-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/invalid-dependency": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.266.1", - "@aws-sdk/types": "3.266.1", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/node-config-provider": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.266.1.tgz", - "integrity": "sha512-cDDuj64nGskZNJQdwglIRqTazfZt0f8pooT1ZJrFoydLfMmR9yi6orizQ7C0i1vMkY02HxgwqJiwXuJ73gmaqA==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/invalid-dependency/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/is-array-buffer": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.266.1", - "@aws-sdk/shared-ini-file-loader": "3.266.1", - "@aws-sdk/types": "3.266.1", - "tslib": "^2.3.1" + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/node-http-handler": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.266.1.tgz", - "integrity": "sha512-oa1cDeD+fwGFg8xMfNUZ95xAE0dxiXaTdJwSqOzCVIBz/auahHrcfXey+Oynw1zUjv8ijOH9z/SXYrqfwlZosw==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/is-array-buffer/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-content-length": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/abort-controller": "3.266.1", - "@aws-sdk/protocol-http": "3.266.1", - "@aws-sdk/querystring-builder": "3.266.1", - "@aws-sdk/types": "3.266.1", - "tslib": "^2.3.1" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/property-provider": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.266.1.tgz", - "integrity": "sha512-1ZRWqc4sNFGDRZ0Tl4WaukU9jR4ghB84QEQOqc48cJIoDiwOAP9UBJTNBJXCVllmPWGNgx4/lfWJoaFcvwsrzw==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-content-length/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-host-header": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.266.1", - "tslib": "^2.3.1" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/protocol-http": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.266.1.tgz", - "integrity": "sha512-8Z1Yfkf59of1R9qRSPmDKIHDo0n5YNCh1FrRLmCRqjjiZ4Ed7FJV/W6YYnJ6VbPcVv1WK6FvwzrGPM2gg4P48Q==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-host-header/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-logger": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.266.1", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/querystring-builder": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.266.1.tgz", - "integrity": "sha512-D1LoDv3A+c6YIYq6F2T5m8V0C14vQAarSoT6romVIIYCDuMK4R5BwB1NLFRco1dczyAYmqScxdV2C26+xjXJfw==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-logger/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-retry": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.266.1", - "@aws-sdk/util-uri-escape": "3.201.0", - "tslib": "^2.3.1" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/service-error-classification": "3.6.1", + "@aws-sdk/types": "3.6.1", + "react-native-get-random-values": "^1.4.0", + "tslib": "^1.8.0", + "uuid": "^3.0.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/querystring-parser": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.266.1.tgz", - "integrity": "sha512-Ck8Ahluj+/eK4FcX8IlbO7DA1MNWdnh1rKjc1qx/ZWh71G/FdZ8Sse33N+Ed/z9v7H8W695dprRT6CuRlqyAbw==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-retry/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-serde": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.266.1", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/service-error-classification": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.266.1.tgz", - "integrity": "sha512-c2EvUvn9XLaDjKozCcYlO4cbtbJzBgx6EuhW1eLsMGLY3EobVRo1hGT0PtRmWQNnoW0BXv6oi/8NLOV6x37fxA==", - "engines": { - "node": ">=14.0.0" - } + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-serde/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/shared-ini-file-loader": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.266.1.tgz", - "integrity": "sha512-yV8GY1Cgbc6pl0SRRQtx3PPcZpqYvKf/h1pz0FgkMBPHwOhp7zJYUkYmu3yvXulfORNsM5ro7wnKa0kxb5ljmg==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-signing": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.266.1", - "tslib": "^2.3.1" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/signature-v4": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/signature-v4": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.266.1.tgz", - "integrity": "sha512-kiHHA3voQKz4QYLKbR/3hKkY2n62MuGewYctvtQsh1069U/OI7FVceIE5hZnrlC5XX4jiNoF1lKdyRhXmK5GMQ==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-signing/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-stack": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/is-array-buffer": "3.201.0", - "@aws-sdk/types": "3.266.1", - "@aws-sdk/util-hex-encoding": "3.201.0", - "@aws-sdk/util-middleware": "3.266.1", - "@aws-sdk/util-uri-escape": "3.201.0", - "@aws-sdk/util-utf8": "3.254.0", - "tslib": "^2.3.1" + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/smithy-client": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.266.1.tgz", - "integrity": "sha512-fg/+JzHeYPS0poVckSiaE/h1eWf5+u2Cs8/zh/4bAvVPqSA3Gg/yBrtvP+HxKLoSo+ObuPb9aXXkeCKPke6ktA==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-stack/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-stack": "3.266.1", - "@aws-sdk/types": "3.266.1", - "tslib": "^2.3.1" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/token-providers": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.266.1.tgz", - "integrity": "sha512-N+qiLQvPvel9dFdEoffRG4Mcp2p82OMyUvS12P5iYWqPCDuPzU72rYT2PmVFKINmflqEySjsKo8vIaWx7Kl4pQ==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/middleware-user-agent/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/node-config-provider": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/client-sso-oidc": "3.266.1", - "@aws-sdk/property-provider": "3.266.1", - "@aws-sdk/shared-ini-file-loader": "3.266.1", - "@aws-sdk/types": "3.266.1", - "tslib": "^2.3.1" + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/shared-ini-file-loader": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/types": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.266.1.tgz", - "integrity": "sha512-OVg3CjHKT3/Ws33jx3TUYYkbFOv/CLb9m3P4gZQDvgKPsOagp96LOsG8ZWdcVZCvSorAUqSb5kuc1utsjJxDTw==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/node-config-provider/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/node-http-handler": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "tslib": "^2.3.1" + "@aws-sdk/abort-controller": "3.6.1", + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/querystring-builder": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/url-parser": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.266.1.tgz", - "integrity": "sha512-7IBZ8TjTWafug26CnNpz6cdrLU0TZ0G7N9LNfqjM/+69KI/Ragvv2Lsm4jhSv2uMx5OEzwlVYIEYaKMnAUiRLQ==", - "dependencies": { - "@aws-sdk/querystring-parser": "3.266.1", - "@aws-sdk/types": "3.266.1", - "tslib": "^2.3.1" - } + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/node-http-handler/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-defaults-mode-browser": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.266.1.tgz", - "integrity": "sha512-4arGHXzTwLIPlNb3a2v7i2fpKFBLQfFygUDT1E6VCAbNpvPVJk+/w0foFs0Zc8BQsPQsC+ZKe20pFw0hnHZJGw==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/property-provider": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.266.1", - "@aws-sdk/types": "3.266.1", - "bowser": "^2.11.0", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-defaults-mode-node": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.266.1.tgz", - "integrity": "sha512-EOo2pPtvJUd9vkwRAptBIeF4P5zHeHcvCcCw6ZuP7bLvaUNHxepKAy4iesaB4aqqRgVn6AdV7w489HnTxa8Kpw==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/property-provider/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/protocol-http": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/config-resolver": "3.266.1", - "@aws-sdk/credential-provider-imds": "3.266.1", - "@aws-sdk/node-config-provider": "3.266.1", - "@aws-sdk/property-provider": "3.266.1", - "@aws-sdk/types": "3.266.1", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-endpoints": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.266.1.tgz", - "integrity": "sha512-w2VjoAIvfw2gau+cVQ5vahfy5CqQJrNOnSXbH6kjpd8RVQ0wOWBDVKb8tUwF4ROD1zovx0jT9d7bsYdMyo3HJw==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/protocol-http/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/querystring-builder": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.266.1", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-uri-escape": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-middleware": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.266.1.tgz", - "integrity": "sha512-iZq+lq80byWZMsdII4OS7CdhgGeuBXBPd//iFWq4YmGts5W1QI1FLIFcsOuUnZtQMiaAuvLXtEO8ZrfaKTFKgw==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/querystring-parser": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-retry": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-retry/-/util-retry-3.266.1.tgz", - "integrity": "sha512-mQZshXR31iM9eV+x50pdmIFuDAjd8wDrxJ/kDnwR0H9NaeIQ3SKcNFTs0PPqtu/JUX0vb4wvm2KjIkUyO2iijg==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/service-error-classification": { + "version": "3.6.1", + "license": "Apache-2.0", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/shared-ini-file-loader": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/service-error-classification": "3.266.1", - "tslib": "^2.3.1" + "tslib": "^1.8.0" }, "engines": { - "node": ">= 14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.266.1.tgz", - "integrity": "sha512-zT5Sc0rNLOhBC+RhFF0FRE2y+CIf50rJZLkxRXoVRXJeFVSKPyhk3AKqe2Q6FE+yQsTV2FlwSDI98SxgaDORkQ==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/signature-v4": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.266.1", - "bowser": "^2.11.0", - "tslib": "^2.3.1" + "@aws-sdk/is-array-buffer": "3.6.1", + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-hex-encoding": "3.6.1", + "@aws-sdk/util-uri-escape": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.266.1.tgz", - "integrity": "sha512-o8uYR38GxaKj95acC0tIxM2K0vANVMpEpgpWcW+QTvVc4Vm4im0SBD7BvgXbQV2VW8X28ZNddVbCK7pHHEJrtg==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/smithy-client": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/node-config-provider": "3.266.1", - "@aws-sdk/types": "3.266.1", - "tslib": "^2.3.1" + "@aws-sdk/middleware-stack": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/types": { + "version": "3.6.1", + "license": "Apache-2.0", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/url-parser": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/querystring-parser": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + } + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/url-parser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-body-length-browser": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.8.0" + } + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-body-length-node": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.8.0" }, - "peerDependencies": { - "aws-crt": ">=1.0.0" + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-buffer-from": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/is-array-buffer": "3.6.1", + "tslib": "^1.8.0" }, - "peerDependenciesMeta": { - "aws-crt": { - "optional": true - } + "engines": { + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-waiter": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-waiter/-/util-waiter-3.266.1.tgz", - "integrity": "sha512-g3uzVouAs6LfYU7vZEy4BIEIiCXSAjZnGV4RjTagfxZRpNtAriFn29Zys4nA/cBHxUkOS3XTzbt5eTBwEdK/FA==", + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-hex-encoding": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/abort-controller": "3.266.1", - "@aws-sdk/types": "3.266.1", - "tslib": "^2.3.1" + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose": { + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-uri-escape": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "3.6.1", + "bowser": "^2.11.0", + "tslib": "^1.8.0" + } + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/node-config-provider": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-utf8-browser": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.8.0" + } + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-utf8-node": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/util-buffer-from": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-cognito-identity/node_modules/uuid": { + "version": "3.4.0", + "license": "MIT", + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/@aws-sdk/client-comprehend": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7088,24 +7044,25 @@ "@aws-sdk/util-user-agent-node": "3.6.1", "@aws-sdk/util-utf8-browser": "3.6.1", "@aws-sdk/util-utf8-node": "3.6.1", - "tslib": "^2.0.0" + "tslib": "^2.0.0", + "uuid": "^3.0.0" }, "engines": { "node": ">=10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/ie11-detection": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-crypto/ie11-detection": { "version": "1.0.0", "license": "Apache-2.0", "dependencies": { "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/sha256-browser": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-crypto/sha256-browser": { "version": "1.2.2", "license": "Apache-2.0", "dependencies": { @@ -7118,11 +7075,11 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/sha256-js": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-crypto/sha256-js": { "version": "1.2.2", "license": "Apache-2.0", "dependencies": { @@ -7131,22 +7088,22 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/supports-web-crypto": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-crypto/supports-web-crypto": { "version": "1.0.0", "license": "Apache-2.0", "dependencies": { "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/util": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-crypto/util": { "version": "1.2.2", "license": "Apache-2.0", "dependencies": { @@ -7155,11 +7112,11 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/util/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-crypto/util/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/abort-controller": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/abort-controller": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7170,11 +7127,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/config-resolver": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/config-resolver": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7186,11 +7143,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-env": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/credential-provider-env": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7202,11 +7159,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-imds": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/credential-provider-imds": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7218,11 +7175,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-ini": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/credential-provider-ini": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7235,11 +7192,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-node": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/credential-provider-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7256,11 +7213,11 @@ "node": ">=10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/credential-provider-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-process": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/credential-provider-process": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7274,11 +7231,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-process/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/credential-provider-process/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/fetch-http-handler": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/fetch-http-handler": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7289,11 +7246,11 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/fetch-http-handler/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/fetch-http-handler/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/hash-node": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/hash-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7305,11 +7262,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/hash-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/hash-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/invalid-dependency": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/invalid-dependency": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7317,11 +7274,11 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/invalid-dependency/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/invalid-dependency/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/is-array-buffer": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/is-array-buffer": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7331,11 +7288,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/is-array-buffer/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/is-array-buffer/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-content-length": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-content-length": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7347,11 +7304,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-content-length/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-content-length/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-host-header": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-host-header": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7363,11 +7320,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-host-header/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-host-header/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-logger": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-logger": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7378,11 +7335,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-logger/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-logger/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-retry": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-retry": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7397,11 +7354,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-retry/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-retry/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-serde": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-serde": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7412,11 +7369,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-serde/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-serde/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-signing": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-signing": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7429,11 +7386,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-signing/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-signing/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-stack": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-stack": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7443,11 +7400,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-stack/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-stack/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-user-agent": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-user-agent": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7459,11 +7416,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-user-agent/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/middleware-user-agent/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/node-config-provider": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/node-config-provider": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7476,11 +7433,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/node-config-provider/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/node-config-provider/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/node-http-handler": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/node-http-handler": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7494,11 +7451,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/node-http-handler/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/node-http-handler/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/property-provider": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/property-provider": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7509,11 +7466,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/property-provider/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/property-provider/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/protocol-http": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/protocol-http": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7524,11 +7481,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/protocol-http/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/protocol-http/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/querystring-builder": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/querystring-builder": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7540,11 +7497,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/querystring-parser": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/querystring-parser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7555,18 +7512,18 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/service-error-classification": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/service-error-classification": { "version": "3.6.1", "license": "Apache-2.0", "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/shared-ini-file-loader": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/shared-ini-file-loader": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7576,11 +7533,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/signature-v4": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/signature-v4": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7594,11 +7551,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/smithy-client": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/smithy-client": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7610,18 +7567,18 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/types": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/types": { "version": "3.6.1", "license": "Apache-2.0", "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/url-parser": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/url-parser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7630,22 +7587,22 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/url-parser/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/url-parser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-body-length-browser": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-body-length-browser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-body-length-node": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-body-length-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7655,11 +7612,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-buffer-from": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-buffer-from": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7670,11 +7627,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-hex-encoding": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-hex-encoding": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7684,11 +7641,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-uri-escape": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-uri-escape": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7698,11 +7655,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-user-agent-browser": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-user-agent-browser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7711,11 +7668,11 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-user-agent-node": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-user-agent-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7727,22 +7684,22 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-utf8-browser": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-utf8-browser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-utf8-node": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-utf8-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -7753,187 +7710,277 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-comprehend/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-firehose/node_modules/uuid": { + "node_modules/@aws-sdk/client-comprehend/node_modules/uuid": { "version": "3.4.0", "license": "MIT", "bin": { "uuid": "bin/uuid" } }, - "node_modules/@aws-sdk/client-iam": { - "version": "3.241.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-ec2/-/client-ec2-3.266.1.tgz", + "integrity": "sha512-1T1CUAQwGDA5YFhX5F2hYDs8cGgML2uC1QEkoggfOI3py+R6Pkcopu/Azlj8W8fv8x4IcGNVyVgsMeQ7uqvoLQ==", "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/client-sts": "3.241.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/credential-provider-node": "3.241.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-signing": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/client-sts": "3.266.1", + "@aws-sdk/config-resolver": "3.266.1", + "@aws-sdk/credential-provider-node": "3.266.1", + "@aws-sdk/fetch-http-handler": "3.266.1", + "@aws-sdk/hash-node": "3.266.1", + "@aws-sdk/invalid-dependency": "3.266.1", + "@aws-sdk/middleware-content-length": "3.266.1", + "@aws-sdk/middleware-endpoint": "3.266.1", + "@aws-sdk/middleware-host-header": "3.266.1", + "@aws-sdk/middleware-logger": "3.266.1", + "@aws-sdk/middleware-recursion-detection": "3.266.1", + "@aws-sdk/middleware-retry": "3.266.1", + "@aws-sdk/middleware-sdk-ec2": "3.266.1", + "@aws-sdk/middleware-serde": "3.266.1", + "@aws-sdk/middleware-signing": "3.266.1", + "@aws-sdk/middleware-stack": "3.266.1", + "@aws-sdk/middleware-user-agent": "3.266.1", + "@aws-sdk/node-config-provider": "3.266.1", + "@aws-sdk/node-http-handler": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/smithy-client": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/url-parser": "3.266.1", "@aws-sdk/util-base64": "3.208.0", "@aws-sdk/util-body-length-browser": "3.188.0", "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.241.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "@aws-sdk/util-waiter": "3.226.0", - "fast-xml-parser": "4.0.11", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" + "@aws-sdk/util-defaults-mode-browser": "3.266.1", + "@aws-sdk/util-defaults-mode-node": "3.266.1", + "@aws-sdk/util-endpoints": "3.266.1", + "@aws-sdk/util-retry": "3.266.1", + "@aws-sdk/util-user-agent-browser": "3.266.1", + "@aws-sdk/util-user-agent-node": "3.266.1", + "@aws-sdk/util-utf8": "3.254.0", + "@aws-sdk/util-waiter": "3.266.1", + "fast-xml-parser": "4.0.11", + "tslib": "^2.3.1", + "uuid": "^8.3.2" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-iam/node_modules/@aws-sdk/client-sso": { - "version": "3.241.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/ie11-detection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz", + "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==", "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/sha256-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz", + "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==", + "dependencies": { + "@aws-crypto/ie11-detection": "^3.0.0", + "@aws-crypto/sha256-js": "^3.0.0", + "@aws-crypto/supports-web-crypto": "^3.0.0", + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/sha256-js": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-3.0.0.tgz", + "integrity": "sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==", + "dependencies": { + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/supports-web-crypto": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz", + "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==", + "dependencies": { + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/util": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz", + "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==", + "dependencies": { + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-crypto/util/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/abort-controller": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.266.1.tgz", + "integrity": "sha512-6tG6dAgMMKh86U2kgo58J6pyC2pSEAtm1bXnhYOuuXBjFgieNvikwjoj//zzciudmp1qTu5Wh99u8LBLmYofFg==", + "dependencies": { + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/client-sso": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.266.1.tgz", + "integrity": "sha512-mgrRfNSa7sJyBgAuMvRE5W2izHYl1n0tpxjLZ8rP+AoOp0GrZLpuj9T2XhmVwyR4ibVBNFKdr8nUHWekF4HA+w==", + "dependencies": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.266.1", + "@aws-sdk/fetch-http-handler": "3.266.1", + "@aws-sdk/hash-node": "3.266.1", + "@aws-sdk/invalid-dependency": "3.266.1", + "@aws-sdk/middleware-content-length": "3.266.1", + "@aws-sdk/middleware-endpoint": "3.266.1", + "@aws-sdk/middleware-host-header": "3.266.1", + "@aws-sdk/middleware-logger": "3.266.1", + "@aws-sdk/middleware-recursion-detection": "3.266.1", + "@aws-sdk/middleware-retry": "3.266.1", + "@aws-sdk/middleware-serde": "3.266.1", + "@aws-sdk/middleware-stack": "3.266.1", + "@aws-sdk/middleware-user-agent": "3.266.1", + "@aws-sdk/node-config-provider": "3.266.1", + "@aws-sdk/node-http-handler": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/smithy-client": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/url-parser": "3.266.1", "@aws-sdk/util-base64": "3.208.0", "@aws-sdk/util-body-length-browser": "3.188.0", "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.241.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.266.1", + "@aws-sdk/util-defaults-mode-node": "3.266.1", + "@aws-sdk/util-endpoints": "3.266.1", + "@aws-sdk/util-retry": "3.266.1", + "@aws-sdk/util-user-agent-browser": "3.266.1", + "@aws-sdk/util-user-agent-node": "3.266.1", + "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-iam/node_modules/@aws-sdk/client-sso-oidc": { - "version": "3.241.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.266.1.tgz", + "integrity": "sha512-eErpowPr6etcZH25v8JfJNdSPr+jet98cFWhsCN8GSxVNkyZci6aZnx6pBsTQCQn7L/zx8i4QZuOo5LYXdzF6A==", "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.266.1", + "@aws-sdk/fetch-http-handler": "3.266.1", + "@aws-sdk/hash-node": "3.266.1", + "@aws-sdk/invalid-dependency": "3.266.1", + "@aws-sdk/middleware-content-length": "3.266.1", + "@aws-sdk/middleware-endpoint": "3.266.1", + "@aws-sdk/middleware-host-header": "3.266.1", + "@aws-sdk/middleware-logger": "3.266.1", + "@aws-sdk/middleware-recursion-detection": "3.266.1", + "@aws-sdk/middleware-retry": "3.266.1", + "@aws-sdk/middleware-serde": "3.266.1", + "@aws-sdk/middleware-stack": "3.266.1", + "@aws-sdk/middleware-user-agent": "3.266.1", + "@aws-sdk/node-config-provider": "3.266.1", + "@aws-sdk/node-http-handler": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/smithy-client": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/url-parser": "3.266.1", "@aws-sdk/util-base64": "3.208.0", "@aws-sdk/util-body-length-browser": "3.188.0", "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.241.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.266.1", + "@aws-sdk/util-defaults-mode-node": "3.266.1", + "@aws-sdk/util-endpoints": "3.266.1", + "@aws-sdk/util-retry": "3.266.1", + "@aws-sdk/util-user-agent-browser": "3.266.1", + "@aws-sdk/util-user-agent-node": "3.266.1", + "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-iam/node_modules/@aws-sdk/client-sts": { - "version": "3.241.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/client-sts": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.266.1.tgz", + "integrity": "sha512-P1hIyJkzojIG5NHuW2u/oae36KUvTB2q4nSIWuU4BrUPDeBoHg+5+zRRavtfK88aLRohwYDumRdLegT6sQNt0g==", "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/credential-provider-node": "3.241.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-sdk-sts": "3.226.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-signing": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.266.1", + "@aws-sdk/credential-provider-node": "3.266.1", + "@aws-sdk/fetch-http-handler": "3.266.1", + "@aws-sdk/hash-node": "3.266.1", + "@aws-sdk/invalid-dependency": "3.266.1", + "@aws-sdk/middleware-content-length": "3.266.1", + "@aws-sdk/middleware-endpoint": "3.266.1", + "@aws-sdk/middleware-host-header": "3.266.1", + "@aws-sdk/middleware-logger": "3.266.1", + "@aws-sdk/middleware-recursion-detection": "3.266.1", + "@aws-sdk/middleware-retry": "3.266.1", + "@aws-sdk/middleware-sdk-sts": "3.266.1", + "@aws-sdk/middleware-serde": "3.266.1", + "@aws-sdk/middleware-signing": "3.266.1", + "@aws-sdk/middleware-stack": "3.266.1", + "@aws-sdk/middleware-user-agent": "3.266.1", + "@aws-sdk/node-config-provider": "3.266.1", + "@aws-sdk/node-http-handler": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/smithy-client": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/url-parser": "3.266.1", "@aws-sdk/util-base64": "3.208.0", "@aws-sdk/util-body-length-browser": "3.188.0", "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.241.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.266.1", + "@aws-sdk/util-defaults-mode-node": "3.266.1", + "@aws-sdk/util-endpoints": "3.266.1", + "@aws-sdk/util-retry": "3.266.1", + "@aws-sdk/util-user-agent-browser": "3.266.1", + "@aws-sdk/util-user-agent-node": "3.266.1", + "@aws-sdk/util-utf8": "3.254.0", "fast-xml-parser": "4.0.11", "tslib": "^2.3.1" }, @@ -7941,578 +7988,699 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-iam/node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.241.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/config-resolver": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.266.1.tgz", + "integrity": "sha512-MqMVki/y40Ot7XWJnziYuO35zqww3JbpH9jzCRCf8vtOE9u6C8VpuiG/OHIR9WQj63Yhcr+7fohmN3kGFnNWFg==", "dependencies": { - "@aws-sdk/credential-provider-env": "3.226.0", - "@aws-sdk/credential-provider-imds": "3.226.0", - "@aws-sdk/credential-provider-process": "3.226.0", - "@aws-sdk/credential-provider-sso": "3.241.0", - "@aws-sdk/credential-provider-web-identity": "3.226.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/types": "3.226.0", + "@aws-sdk/signature-v4": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.266.1", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-iam/node_modules/@aws-sdk/credential-provider-node": { - "version": "3.241.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-env": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.266.1.tgz", + "integrity": "sha512-RPq9/FV7fOv14P5DxpqpcwuCa7P6ijUrN1vhpiYaWMQNJSsJK8cIsPECI3xQ1z+oPZ5/1qA++0RpTLqIhq/ifg==", "dependencies": { - "@aws-sdk/credential-provider-env": "3.226.0", - "@aws-sdk/credential-provider-imds": "3.226.0", - "@aws-sdk/credential-provider-ini": "3.241.0", - "@aws-sdk/credential-provider-process": "3.226.0", - "@aws-sdk/credential-provider-sso": "3.241.0", - "@aws-sdk/credential-provider-web-identity": "3.226.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/types": "3.226.0", + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/types": "3.266.1", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-iam/node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.241.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-imds": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.266.1.tgz", + "integrity": "sha512-pTJnJtKaR0JWVqyt9XgHiqlK+3GnZfd3cuKGv9IsYxumVzladm7gNKiNFw0A2KsDj9jhrCRRZwEsH9ooDzZ/Ow==", "dependencies": { - "@aws-sdk/client-sso": "3.241.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/token-providers": "3.241.0", - "@aws-sdk/types": "3.226.0", + "@aws-sdk/node-config-provider": "3.266.1", + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/url-parser": "3.266.1", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-iam/node_modules/@aws-sdk/token-providers": { - "version": "3.241.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.266.1.tgz", + "integrity": "sha512-N52GNeHRJufEx+V0mWfwe5cV3ukHong75uRAB0IeapJwj+kKwxxLH1dKOUaGjd/ALx6/hsISoUE/6jm/Qf/DsA==", "dependencies": { - "@aws-sdk/client-sso-oidc": "3.241.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/types": "3.226.0", + "@aws-sdk/credential-provider-env": "3.266.1", + "@aws-sdk/credential-provider-imds": "3.266.1", + "@aws-sdk/credential-provider-process": "3.266.1", + "@aws-sdk/credential-provider-sso": "3.266.1", + "@aws-sdk/credential-provider-web-identity": "3.266.1", + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/shared-ini-file-loader": "3.266.1", + "@aws-sdk/types": "3.266.1", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-iam/node_modules/@aws-sdk/util-endpoints": { - "version": "3.241.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-node": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.266.1.tgz", + "integrity": "sha512-6/iTi/zugdvuyQDmEakYn01kiFKUArL+rIYwcMf20YguXNml6G4HVWJGbX2JklY6ovnznU5ENw6+ftzBAiw/PA==", "dependencies": { - "@aws-sdk/types": "3.226.0", + "@aws-sdk/credential-provider-env": "3.266.1", + "@aws-sdk/credential-provider-imds": "3.266.1", + "@aws-sdk/credential-provider-ini": "3.266.1", + "@aws-sdk/credential-provider-process": "3.266.1", + "@aws-sdk/credential-provider-sso": "3.266.1", + "@aws-sdk/credential-provider-web-identity": "3.266.1", + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/shared-ini-file-loader": "3.266.1", + "@aws-sdk/types": "3.266.1", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-process": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.266.1.tgz", + "integrity": "sha512-4V/7zVnaZo1IP4Is09dlwd2CkltlUdgbX4NUIb+QxZ/BlY7Ws47xyCjjyJhVVCe+y184M58bG4+HR5dHnrBfSA==", "dependencies": { - "@aws-crypto/sha256-browser": "^1.0.0", - "@aws-crypto/sha256-js": "^1.0.0", - "@aws-sdk/config-resolver": "3.6.1", - "@aws-sdk/credential-provider-node": "3.6.1", - "@aws-sdk/eventstream-serde-browser": "3.6.1", - "@aws-sdk/eventstream-serde-config-resolver": "3.6.1", - "@aws-sdk/eventstream-serde-node": "3.6.1", - "@aws-sdk/fetch-http-handler": "3.6.1", - "@aws-sdk/hash-node": "3.6.1", - "@aws-sdk/invalid-dependency": "3.6.1", - "@aws-sdk/middleware-content-length": "3.6.1", - "@aws-sdk/middleware-host-header": "3.6.1", - "@aws-sdk/middleware-logger": "3.6.1", - "@aws-sdk/middleware-retry": "3.6.1", - "@aws-sdk/middleware-serde": "3.6.1", - "@aws-sdk/middleware-signing": "3.6.1", - "@aws-sdk/middleware-stack": "3.6.1", - "@aws-sdk/middleware-user-agent": "3.6.1", - "@aws-sdk/node-config-provider": "3.6.1", - "@aws-sdk/node-http-handler": "3.6.1", - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/smithy-client": "3.6.1", - "@aws-sdk/types": "3.6.1", - "@aws-sdk/url-parser": "3.6.1", - "@aws-sdk/url-parser-native": "3.6.1", - "@aws-sdk/util-base64-browser": "3.6.1", - "@aws-sdk/util-base64-node": "3.6.1", - "@aws-sdk/util-body-length-browser": "3.6.1", - "@aws-sdk/util-body-length-node": "3.6.1", - "@aws-sdk/util-user-agent-browser": "3.6.1", - "@aws-sdk/util-user-agent-node": "3.6.1", - "@aws-sdk/util-utf8-browser": "3.6.1", - "@aws-sdk/util-utf8-node": "3.6.1", - "@aws-sdk/util-waiter": "3.6.1", - "tslib": "^2.0.0" + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/shared-ini-file-loader": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">=10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-crypto/ie11-detection": { - "version": "1.0.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.266.1.tgz", + "integrity": "sha512-d9hcV7XV1Gh0Dkt8kADsSoB/hZPlbuTp/Vzbj0HMO7hlGxFGcTrGN1UoQc11UAp4kKeF3i2ZQlMsch0d/2gK3w==", "dependencies": { - "tslib": "^1.11.1" + "@aws-sdk/client-sso": "3.266.1", + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/shared-ini-file-loader": "3.266.1", + "@aws-sdk/token-providers": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-crypto/sha256-browser": { - "version": "1.2.2", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.266.1.tgz", + "integrity": "sha512-JIktczlqxIc+Gqc/99e7pPzNSgUjYX23fA2dmLt1bHRPH15p8S1Kv73lvqsgLF5EKP1H/UXDu+jVWDklYM6fVA==", "dependencies": { - "@aws-crypto/ie11-detection": "^1.0.0", - "@aws-crypto/sha256-js": "^1.2.2", - "@aws-crypto/supports-web-crypto": "^1.0.0", - "@aws-crypto/util": "^1.2.2", - "@aws-sdk/types": "^3.1.0", - "@aws-sdk/util-locate-window": "^3.0.0", - "tslib": "^1.11.1" + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-crypto/sha256-js": { - "version": "1.2.2", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/fetch-http-handler": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.266.1.tgz", + "integrity": "sha512-tyVMLBrJF1weMUqLU81lhuHES5QtFg7RmSysYM8mndePwBl81iQjLF5D7M8CU3aVzXY3TNU3rZBrm5xEK3xK1w==", "dependencies": { - "@aws-crypto/util": "^1.2.2", - "@aws-sdk/types": "^3.1.0", - "tslib": "^1.11.1" + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/querystring-builder": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-base64": "3.208.0", + "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-crypto/supports-web-crypto": { - "version": "1.0.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/hash-node": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.266.1.tgz", + "integrity": "sha512-2DbuY/AmtF4ORJVEAdzHfbM1p8w9ThRlu4BGdI7DXpO6/o1kgRBvNEbZc6MZkg7D2bI7TT6bI83u7AAbbMUMng==", "dependencies": { - "tslib": "^1.11.1" - } - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-buffer-from": "3.208.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-crypto/util": { - "version": "1.2.2", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/invalid-dependency": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.266.1.tgz", + "integrity": "sha512-rGc2Bv10eEVQW2Zwrd4/I2QBj5MOhl8qr1NA3UCHJa2501Z97/jn2BGZoX+Cc+iE55so66GKmqMYpibqdtDARw==", "dependencies": { - "@aws-sdk/types": "^3.1.0", - "@aws-sdk/util-utf8-browser": "^3.0.0", - "tslib": "^1.11.1" + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-crypto/util/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/abort-controller": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-content-length": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.266.1.tgz", + "integrity": "sha512-Clq14Fr9WkiSg59jnIelL2F5D81HAhdE1MCZIAEEjN1ZK6bEM2kECnNT9CKJjDsuPvhdkrVGv9rjUSANWHLETw==", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/config-resolver": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-endpoint": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.266.1.tgz", + "integrity": "sha512-EVnzd51U/Jhz9x68jFwqHjU4KPsLIXfuS1PSNV598OT04WLQXerBx/fvZh17Y4Dmmu6hf/JUWI9PI5To+oC3mQ==", "dependencies": { - "@aws-sdk/signature-v4": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/middleware-serde": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/signature-v4": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/url-parser": "3.266.1", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/credential-provider-env": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-host-header": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.266.1.tgz", + "integrity": "sha512-3FSD8EkxOGV4O2iKgBnAwvj3PG/lABzcqmX6hABnsIusXAlUV5umh39FteipLcjnMXB04cLgmcgcG2o3cSA3tQ==", "dependencies": { - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/credential-provider-imds": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-logger": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.266.1.tgz", + "integrity": "sha512-FbD9Hqt994PyDm7OTG8PbIuB6Mv9vYhqOM2RhqC1UGtprDmk084/cEv9Sp+qY33lFPxjZstKneQK6FhAfozIAQ==", "dependencies": { - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.266.1.tgz", + "integrity": "sha512-rgRxdgrLOD20zIFrjFW7Bu3s4MXC1KLDbqJY6sMpc5D8mmQlxfaQiSnCQrjgUxbW0Ni+rXiatlW2q2MwCUAPzw==", "dependencies": { - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/shared-ini-file-loader": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/credential-provider-node": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-retry": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.266.1.tgz", + "integrity": "sha512-xBiKAjAP1j8SbKhF28bk1g2iZoiVMI7XV/x5d0g6igsvI4RiqzywTsiLi2VVsYPCY6bwbn0Zgt93Mej/MFfn5w==", "dependencies": { - "@aws-sdk/credential-provider-env": "3.6.1", - "@aws-sdk/credential-provider-imds": "3.6.1", - "@aws-sdk/credential-provider-ini": "3.6.1", - "@aws-sdk/credential-provider-process": "3.6.1", - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/shared-ini-file-loader": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/service-error-classification": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-middleware": "3.266.1", + "@aws-sdk/util-retry": "3.266.1", + "tslib": "^2.3.1", + "uuid": "^8.3.2" }, "engines": { - "node": ">=10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/credential-provider-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/credential-provider-process": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-sdk-sts": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.266.1.tgz", + "integrity": "sha512-lM9t+S+PjmJ/xhoP9e/sIUS2bZyuEbobHo6a9WPk0UcdiqDWBIp+8MlTRDafKZtlN36gPDk5+qM9tXcI6P5YCA==", "dependencies": { - "@aws-sdk/credential-provider-ini": "3.6.1", - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/shared-ini-file-loader": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/middleware-signing": "3.266.1", + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/signature-v4": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/credential-provider-process/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/fetch-http-handler": { - "version": "3.6.1", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/querystring-builder": "3.6.1", - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-base64-browser": "3.6.1", - "tslib": "^1.8.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/fetch-http-handler/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/hash-node": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-serde": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.266.1.tgz", + "integrity": "sha512-UFJ4BlRG/MUOJq5afHohkDsMDPAkbuXGCkhTz93MGxbACEOJYoEvsaMjpLft88wu4D11GY1Y2PVFkfxJUYWDXA==", "dependencies": { - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-buffer-from": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/hash-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/invalid-dependency": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-signing": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.266.1.tgz", + "integrity": "sha512-PbVwt7xSP3xlT5x4Xdj7+2T1PgCW00bh5QrCJi2wo3dEN9UowU/IVGzGSv4/OJItLZWe4puGb1WtA+LKeWA40w==", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/signature-v4": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-middleware": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/invalid-dependency/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/is-array-buffer": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-stack": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.266.1.tgz", + "integrity": "sha512-liqq541u1eCDe+TCDOSrOcH6kAB6Dn1R8pbtJ23hP3fYM5/8W3V0f6VcywALVL9Pam+mkYmodWeDRQK8ieLEOg==", "dependencies": { - "tslib": "^1.8.0" + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/is-array-buffer/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-content-length": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.266.1.tgz", + "integrity": "sha512-yoHQSP3OngZnLWeuqMrYkOifMD8FUZxyXoUO9iHPytxns1Gri/4Gn/1raNWMqdrSIlBKPorKzCEu24DX5klf0w==", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-content-length/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-host-header": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/node-config-provider": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.266.1.tgz", + "integrity": "sha512-cDDuj64nGskZNJQdwglIRqTazfZt0f8pooT1ZJrFoydLfMmR9yi6orizQ7C0i1vMkY02HxgwqJiwXuJ73gmaqA==", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/shared-ini-file-loader": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-host-header/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-logger": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/node-http-handler": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.266.1.tgz", + "integrity": "sha512-oa1cDeD+fwGFg8xMfNUZ95xAE0dxiXaTdJwSqOzCVIBz/auahHrcfXey+Oynw1zUjv8ijOH9z/SXYrqfwlZosw==", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/abort-controller": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/querystring-builder": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-logger/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-retry": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/property-provider": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.266.1.tgz", + "integrity": "sha512-1ZRWqc4sNFGDRZ0Tl4WaukU9jR4ghB84QEQOqc48cJIoDiwOAP9UBJTNBJXCVllmPWGNgx4/lfWJoaFcvwsrzw==", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/service-error-classification": "3.6.1", - "@aws-sdk/types": "3.6.1", - "react-native-get-random-values": "^1.4.0", - "tslib": "^1.8.0", - "uuid": "^3.0.0" + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-retry/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-serde": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/protocol-http": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.266.1.tgz", + "integrity": "sha512-8Z1Yfkf59of1R9qRSPmDKIHDo0n5YNCh1FrRLmCRqjjiZ4Ed7FJV/W6YYnJ6VbPcVv1WK6FvwzrGPM2gg4P48Q==", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-serde/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-signing": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/querystring-builder": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.266.1.tgz", + "integrity": "sha512-D1LoDv3A+c6YIYq6F2T5m8V0C14vQAarSoT6romVIIYCDuMK4R5BwB1NLFRco1dczyAYmqScxdV2C26+xjXJfw==", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/signature-v4": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-signing/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-stack": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/querystring-parser": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.266.1.tgz", + "integrity": "sha512-Ck8Ahluj+/eK4FcX8IlbO7DA1MNWdnh1rKjc1qx/ZWh71G/FdZ8Sse33N+Ed/z9v7H8W695dprRT6CuRlqyAbw==", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-stack/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/service-error-classification": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.266.1.tgz", + "integrity": "sha512-c2EvUvn9XLaDjKozCcYlO4cbtbJzBgx6EuhW1eLsMGLY3EobVRo1hGT0PtRmWQNnoW0BXv6oi/8NLOV6x37fxA==", + "engines": { + "node": ">=14.0.0" + } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/shared-ini-file-loader": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.266.1.tgz", + "integrity": "sha512-yV8GY1Cgbc6pl0SRRQtx3PPcZpqYvKf/h1pz0FgkMBPHwOhp7zJYUkYmu3yvXulfORNsM5ro7wnKa0kxb5ljmg==", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-user-agent/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/node-config-provider": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/signature-v4": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.266.1.tgz", + "integrity": "sha512-kiHHA3voQKz4QYLKbR/3hKkY2n62MuGewYctvtQsh1069U/OI7FVceIE5hZnrlC5XX4jiNoF1lKdyRhXmK5GMQ==", "dependencies": { - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/shared-ini-file-loader": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/is-array-buffer": "3.201.0", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-hex-encoding": "3.201.0", + "@aws-sdk/util-middleware": "3.266.1", + "@aws-sdk/util-uri-escape": "3.201.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/node-config-provider/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/node-http-handler": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/smithy-client": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.266.1.tgz", + "integrity": "sha512-fg/+JzHeYPS0poVckSiaE/h1eWf5+u2Cs8/zh/4bAvVPqSA3Gg/yBrtvP+HxKLoSo+ObuPb9aXXkeCKPke6ktA==", "dependencies": { - "@aws-sdk/abort-controller": "3.6.1", - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/querystring-builder": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/middleware-stack": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/node-http-handler/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/property-provider": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/token-providers": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.266.1.tgz", + "integrity": "sha512-N+qiLQvPvel9dFdEoffRG4Mcp2p82OMyUvS12P5iYWqPCDuPzU72rYT2PmVFKINmflqEySjsKo8vIaWx7Kl4pQ==", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/client-sso-oidc": "3.266.1", + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/shared-ini-file-loader": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/property-provider/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/protocol-http": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/types": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.266.1.tgz", + "integrity": "sha512-OVg3CjHKT3/Ws33jx3TUYYkbFOv/CLb9m3P4gZQDvgKPsOagp96LOsG8ZWdcVZCvSorAUqSb5kuc1utsjJxDTw==", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/protocol-http/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/url-parser": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.266.1.tgz", + "integrity": "sha512-7IBZ8TjTWafug26CnNpz6cdrLU0TZ0G7N9LNfqjM/+69KI/Ragvv2Lsm4jhSv2uMx5OEzwlVYIEYaKMnAUiRLQ==", + "dependencies": { + "@aws-sdk/querystring-parser": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/querystring-builder": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-defaults-mode-browser": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.266.1.tgz", + "integrity": "sha512-4arGHXzTwLIPlNb3a2v7i2fpKFBLQfFygUDT1E6VCAbNpvPVJk+/w0foFs0Zc8BQsPQsC+ZKe20pFw0hnHZJGw==", "dependencies": { - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-uri-escape": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/types": "3.266.1", + "bowser": "^2.11.0", + "tslib": "^2.3.1" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/querystring-parser": { + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-defaults-mode-node": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.266.1.tgz", + "integrity": "sha512-EOo2pPtvJUd9vkwRAptBIeF4P5zHeHcvCcCw6ZuP7bLvaUNHxepKAy4iesaB4aqqRgVn6AdV7w489HnTxa8Kpw==", + "dependencies": { + "@aws-sdk/config-resolver": "3.266.1", + "@aws-sdk/credential-provider-imds": "3.266.1", + "@aws-sdk/node-config-provider": "3.266.1", + "@aws-sdk/property-provider": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-endpoints": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.266.1.tgz", + "integrity": "sha512-w2VjoAIvfw2gau+cVQ5vahfy5CqQJrNOnSXbH6kjpd8RVQ0wOWBDVKb8tUwF4ROD1zovx0jT9d7bsYdMyo3HJw==", + "dependencies": { + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-middleware": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.266.1.tgz", + "integrity": "sha512-iZq+lq80byWZMsdII4OS7CdhgGeuBXBPd//iFWq4YmGts5W1QI1FLIFcsOuUnZtQMiaAuvLXtEO8ZrfaKTFKgw==", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-retry": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-retry/-/util-retry-3.266.1.tgz", + "integrity": "sha512-mQZshXR31iM9eV+x50pdmIFuDAjd8wDrxJ/kDnwR0H9NaeIQ3SKcNFTs0PPqtu/JUX0vb4wvm2KjIkUyO2iijg==", + "dependencies": { + "@aws-sdk/service-error-classification": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.266.1.tgz", + "integrity": "sha512-zT5Sc0rNLOhBC+RhFF0FRE2y+CIf50rJZLkxRXoVRXJeFVSKPyhk3AKqe2Q6FE+yQsTV2FlwSDI98SxgaDORkQ==", + "dependencies": { + "@aws-sdk/types": "3.266.1", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.266.1.tgz", + "integrity": "sha512-o8uYR38GxaKj95acC0tIxM2K0vANVMpEpgpWcW+QTvVc4Vm4im0SBD7BvgXbQV2VW8X28ZNddVbCK7pHHEJrtg==", + "dependencies": { + "@aws-sdk/node-config-provider": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "aws-crt": ">=1.0.0" + }, + "peerDependenciesMeta": { + "aws-crt": { + "optional": true + } + } + }, + "node_modules/@aws-sdk/client-ec2/node_modules/@aws-sdk/util-waiter": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-waiter/-/util-waiter-3.266.1.tgz", + "integrity": "sha512-g3uzVouAs6LfYU7vZEy4BIEIiCXSAjZnGV4RjTagfxZRpNtAriFn29Zys4nA/cBHxUkOS3XTzbt5eTBwEdK/FA==", + "dependencies": { + "@aws-sdk/abort-controller": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-firehose": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/sha256-browser": "^1.0.0", + "@aws-crypto/sha256-js": "^1.0.0", + "@aws-sdk/config-resolver": "3.6.1", + "@aws-sdk/credential-provider-node": "3.6.1", + "@aws-sdk/fetch-http-handler": "3.6.1", + "@aws-sdk/hash-node": "3.6.1", + "@aws-sdk/invalid-dependency": "3.6.1", + "@aws-sdk/middleware-content-length": "3.6.1", + "@aws-sdk/middleware-host-header": "3.6.1", + "@aws-sdk/middleware-logger": "3.6.1", + "@aws-sdk/middleware-retry": "3.6.1", + "@aws-sdk/middleware-serde": "3.6.1", + "@aws-sdk/middleware-signing": "3.6.1", + "@aws-sdk/middleware-stack": "3.6.1", + "@aws-sdk/middleware-user-agent": "3.6.1", + "@aws-sdk/node-config-provider": "3.6.1", + "@aws-sdk/node-http-handler": "3.6.1", + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/smithy-client": "3.6.1", + "@aws-sdk/types": "3.6.1", + "@aws-sdk/url-parser": "3.6.1", + "@aws-sdk/url-parser-native": "3.6.1", + "@aws-sdk/util-base64-browser": "3.6.1", + "@aws-sdk/util-base64-node": "3.6.1", + "@aws-sdk/util-body-length-browser": "3.6.1", + "@aws-sdk/util-body-length-node": "3.6.1", + "@aws-sdk/util-user-agent-browser": "3.6.1", + "@aws-sdk/util-user-agent-node": "3.6.1", + "@aws-sdk/util-utf8-browser": "3.6.1", + "@aws-sdk/util-utf8-node": "3.6.1", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/ie11-detection": { + "version": "1.0.0", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/sha256-browser": { + "version": "1.2.2", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/ie11-detection": "^1.0.0", + "@aws-crypto/sha256-js": "^1.2.2", + "@aws-crypto/supports-web-crypto": "^1.0.0", + "@aws-crypto/util": "^1.2.2", + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/sha256-js": { + "version": "1.2.2", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/util": "^1.2.2", + "@aws-sdk/types": "^3.1.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/supports-web-crypto": { + "version": "1.0.0", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/util": { + "version": "1.2.2", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-crypto/util/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/abort-controller": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -8523,54 +8691,64 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/service-error-classification": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/config-resolver": { "version": "3.6.1", "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/signature-v4": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/shared-ini-file-loader": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-env": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/types": "3.6.1", "tslib": "^1.8.0" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/signature-v4": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-imds": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/is-array-buffer": "3.6.1", + "@aws-sdk/property-provider": "3.6.1", "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-hex-encoding": "3.6.1", - "@aws-sdk/util-uri-escape": "3.6.1", "tslib": "^1.8.0" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/smithy-client": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-ini": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-stack": "3.6.1", + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/shared-ini-file-loader": "3.6.1", "@aws-sdk/types": "3.6.1", "tslib": "^1.8.0" }, @@ -8578,71 +8756,93 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/types": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-node": { "version": "3.6.1", "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/credential-provider-env": "3.6.1", + "@aws-sdk/credential-provider-imds": "3.6.1", + "@aws-sdk/credential-provider-ini": "3.6.1", + "@aws-sdk/credential-provider-process": "3.6.1", + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/shared-ini-file-loader": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + }, "engines": { - "node": ">= 10.0.0" + "node": ">=10.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/url-parser": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-process": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/querystring-parser": "3.6.1", + "@aws-sdk/credential-provider-ini": "3.6.1", + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/shared-ini-file-loader": "3.6.1", "@aws-sdk/types": "3.6.1", "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/url-parser/node_modules/tslib": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/credential-provider-process/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-body-length-browser": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/fetch-http-handler": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/querystring-builder": "3.6.1", + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-base64-browser": "3.6.1", "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/fetch-http-handler/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-body-length-node": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/hash-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-buffer-from": "3.6.1", "tslib": "^1.8.0" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/hash-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-buffer-from": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/invalid-dependency": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/is-array-buffer": "3.6.1", + "@aws-sdk/types": "3.6.1", "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/invalid-dependency/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-hex-encoding": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/is-array-buffer": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -8652,42 +8852,46 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/is-array-buffer/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-uri-escape": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-content-length": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/types": "3.6.1", "tslib": "^1.8.0" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-content-length/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-user-agent-browser": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-host-header": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { + "@aws-sdk/protocol-http": "3.6.1", "@aws-sdk/types": "3.6.1", - "bowser": "^2.11.0", "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-host-header/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-user-agent-node": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-logger": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/node-config-provider": "3.6.1", "@aws-sdk/types": "3.6.1", "tslib": "^1.8.0" }, @@ -8695,41 +8899,50 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-logger/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-utf8-browser": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-retry": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/service-error-classification": "3.6.1", + "@aws-sdk/types": "3.6.1", + "react-native-get-random-values": "^1.4.0", + "tslib": "^1.8.0", + "uuid": "^3.0.0" + }, + "engines": { + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-retry/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-utf8-node": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-serde": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/util-buffer-from": "3.6.1", + "@aws-sdk/types": "3.6.1", "tslib": "^1.8.0" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-serde/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-waiter": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-signing": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/abort-controller": "3.6.1", + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/signature-v4": "3.6.1", "@aws-sdk/types": "3.6.1", "tslib": "^1.8.0" }, @@ -8737,159 +8950,484 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-waiter/node_modules/tslib": { + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-signing/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-kinesis/node_modules/uuid": { - "version": "3.4.0", - "license": "MIT", - "bin": { - "uuid": "bin/uuid" + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-stack": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lambda": { - "version": "3.241.0", + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-stack/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/client-sts": "3.241.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/credential-provider-node": "3.241.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-signing": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.241.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "@aws-sdk/util-waiter": "3.226.0", - "tslib": "^2.3.1" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/client-sso": { - "version": "3.241.0", + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/middleware-user-agent/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/node-config-provider": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.241.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "tslib": "^2.3.1" + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/shared-ini-file-loader": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/client-sso-oidc": { - "version": "3.241.0", + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/node-config-provider/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/node-http-handler": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.241.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "tslib": "^2.3.1" + "@aws-sdk/abort-controller": "3.6.1", + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/querystring-builder": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/client-sts": { - "version": "3.241.0", + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/node-http-handler/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/property-provider": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/credential-provider-node": "3.241.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/property-provider/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/protocol-http": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/protocol-http/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/querystring-builder": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-uri-escape": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/querystring-parser": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/service-error-classification": { + "version": "3.6.1", + "license": "Apache-2.0", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/shared-ini-file-loader": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/signature-v4": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/is-array-buffer": "3.6.1", + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-hex-encoding": "3.6.1", + "@aws-sdk/util-uri-escape": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/smithy-client": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/middleware-stack": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/types": { + "version": "3.6.1", + "license": "Apache-2.0", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/url-parser": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/querystring-parser": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/url-parser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-body-length-browser": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.8.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-body-length-node": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-buffer-from": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/is-array-buffer": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-hex-encoding": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-uri-escape": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "3.6.1", + "bowser": "^2.11.0", + "tslib": "^1.8.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/node-config-provider": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-utf8-browser": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.8.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-utf8-node": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/util-buffer-from": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-firehose/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-firehose/node_modules/uuid": { + "version": "3.4.0", + "license": "MIT", + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/@aws-sdk/client-iam": { + "version": "3.241.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/client-sts": "3.241.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/credential-provider-node": "3.241.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-signing": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.241.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/util-waiter": "3.226.0", + "fast-xml-parser": "4.0.11", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-iam/node_modules/@aws-sdk/client-sso": { + "version": "3.241.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.241.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-iam/node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.241.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.241.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-iam/node_modules/@aws-sdk/client-sts": { + "version": "3.241.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/credential-provider-node": "3.241.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", "@aws-sdk/middleware-endpoint": "3.226.0", "@aws-sdk/middleware-host-header": "3.226.0", "@aws-sdk/middleware-logger": "3.226.0", @@ -8924,7 +9462,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/credential-provider-ini": { + "node_modules/@aws-sdk/client-iam/node_modules/@aws-sdk/credential-provider-ini": { "version": "3.241.0", "license": "Apache-2.0", "dependencies": { @@ -8942,7 +9480,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/credential-provider-node": { + "node_modules/@aws-sdk/client-iam/node_modules/@aws-sdk/credential-provider-node": { "version": "3.241.0", "license": "Apache-2.0", "dependencies": { @@ -8961,7 +9499,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/credential-provider-sso": { + "node_modules/@aws-sdk/client-iam/node_modules/@aws-sdk/credential-provider-sso": { "version": "3.241.0", "license": "Apache-2.0", "dependencies": { @@ -8976,7 +9514,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/token-providers": { + "node_modules/@aws-sdk/client-iam/node_modules/@aws-sdk/token-providers": { "version": "3.241.0", "license": "Apache-2.0", "dependencies": { @@ -8990,7 +9528,7 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/util-endpoints": { + "node_modules/@aws-sdk/client-iam/node_modules/@aws-sdk/util-endpoints": { "version": "3.241.0", "license": "Apache-2.0", "dependencies": { @@ -9001,732 +9539,990 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/client-sts": "3.186.0", - "@aws-sdk/config-resolver": "3.186.0", - "@aws-sdk/credential-provider-node": "3.186.0", - "@aws-sdk/fetch-http-handler": "3.186.0", - "@aws-sdk/hash-node": "3.186.0", - "@aws-sdk/invalid-dependency": "3.186.0", - "@aws-sdk/middleware-content-length": "3.186.0", - "@aws-sdk/middleware-host-header": "3.186.0", - "@aws-sdk/middleware-logger": "3.186.0", - "@aws-sdk/middleware-recursion-detection": "3.186.0", - "@aws-sdk/middleware-retry": "3.186.0", - "@aws-sdk/middleware-serde": "3.186.0", - "@aws-sdk/middleware-signing": "3.186.0", - "@aws-sdk/middleware-stack": "3.186.0", - "@aws-sdk/middleware-user-agent": "3.186.0", - "@aws-sdk/node-config-provider": "3.186.0", - "@aws-sdk/node-http-handler": "3.186.0", - "@aws-sdk/protocol-http": "3.186.0", - "@aws-sdk/smithy-client": "3.186.0", - "@aws-sdk/types": "3.186.0", - "@aws-sdk/url-parser": "3.186.0", - "@aws-sdk/util-base64-browser": "3.186.0", - "@aws-sdk/util-base64-node": "3.186.0", - "@aws-sdk/util-body-length-browser": "3.186.0", - "@aws-sdk/util-body-length-node": "3.186.0", - "@aws-sdk/util-defaults-mode-browser": "3.186.0", - "@aws-sdk/util-defaults-mode-node": "3.186.0", - "@aws-sdk/util-user-agent-browser": "3.186.0", - "@aws-sdk/util-user-agent-node": "3.186.0", - "@aws-sdk/util-utf8-browser": "3.186.0", - "@aws-sdk/util-utf8-node": "3.186.0", - "tslib": "^2.3.1" + "@aws-crypto/sha256-browser": "^1.0.0", + "@aws-crypto/sha256-js": "^1.0.0", + "@aws-sdk/config-resolver": "3.6.1", + "@aws-sdk/credential-provider-node": "3.6.1", + "@aws-sdk/eventstream-serde-browser": "3.6.1", + "@aws-sdk/eventstream-serde-config-resolver": "3.6.1", + "@aws-sdk/eventstream-serde-node": "3.6.1", + "@aws-sdk/fetch-http-handler": "3.6.1", + "@aws-sdk/hash-node": "3.6.1", + "@aws-sdk/invalid-dependency": "3.6.1", + "@aws-sdk/middleware-content-length": "3.6.1", + "@aws-sdk/middleware-host-header": "3.6.1", + "@aws-sdk/middleware-logger": "3.6.1", + "@aws-sdk/middleware-retry": "3.6.1", + "@aws-sdk/middleware-serde": "3.6.1", + "@aws-sdk/middleware-signing": "3.6.1", + "@aws-sdk/middleware-stack": "3.6.1", + "@aws-sdk/middleware-user-agent": "3.6.1", + "@aws-sdk/node-config-provider": "3.6.1", + "@aws-sdk/node-http-handler": "3.6.1", + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/smithy-client": "3.6.1", + "@aws-sdk/types": "3.6.1", + "@aws-sdk/url-parser": "3.6.1", + "@aws-sdk/url-parser-native": "3.6.1", + "@aws-sdk/util-base64-browser": "3.6.1", + "@aws-sdk/util-base64-node": "3.6.1", + "@aws-sdk/util-body-length-browser": "3.6.1", + "@aws-sdk/util-body-length-node": "3.6.1", + "@aws-sdk/util-user-agent-browser": "3.6.1", + "@aws-sdk/util-user-agent-node": "3.6.1", + "@aws-sdk/util-utf8-browser": "3.6.1", + "@aws-sdk/util-utf8-node": "3.6.1", + "@aws-sdk/util-waiter": "3.6.1", + "tslib": "^2.0.0" }, "engines": { - "node": ">=12.0.0" + "node": ">=10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/abort-controller": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-crypto/ie11-detection": { + "version": "1.0.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">= 12.0.0" + "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/client-sso": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-crypto/sha256-browser": { + "version": "1.2.2", "license": "Apache-2.0", "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.186.0", - "@aws-sdk/fetch-http-handler": "3.186.0", - "@aws-sdk/hash-node": "3.186.0", - "@aws-sdk/invalid-dependency": "3.186.0", - "@aws-sdk/middleware-content-length": "3.186.0", - "@aws-sdk/middleware-host-header": "3.186.0", - "@aws-sdk/middleware-logger": "3.186.0", - "@aws-sdk/middleware-recursion-detection": "3.186.0", - "@aws-sdk/middleware-retry": "3.186.0", - "@aws-sdk/middleware-serde": "3.186.0", - "@aws-sdk/middleware-stack": "3.186.0", - "@aws-sdk/middleware-user-agent": "3.186.0", - "@aws-sdk/node-config-provider": "3.186.0", - "@aws-sdk/node-http-handler": "3.186.0", - "@aws-sdk/protocol-http": "3.186.0", - "@aws-sdk/smithy-client": "3.186.0", - "@aws-sdk/types": "3.186.0", - "@aws-sdk/url-parser": "3.186.0", - "@aws-sdk/util-base64-browser": "3.186.0", - "@aws-sdk/util-base64-node": "3.186.0", - "@aws-sdk/util-body-length-browser": "3.186.0", - "@aws-sdk/util-body-length-node": "3.186.0", - "@aws-sdk/util-defaults-mode-browser": "3.186.0", - "@aws-sdk/util-defaults-mode-node": "3.186.0", - "@aws-sdk/util-user-agent-browser": "3.186.0", - "@aws-sdk/util-user-agent-node": "3.186.0", - "@aws-sdk/util-utf8-browser": "3.186.0", - "@aws-sdk/util-utf8-node": "3.186.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=12.0.0" + "@aws-crypto/ie11-detection": "^1.0.0", + "@aws-crypto/sha256-js": "^1.2.2", + "@aws-crypto/supports-web-crypto": "^1.0.0", + "@aws-crypto/util": "^1.2.2", + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/client-sts": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-crypto/sha256-js": { + "version": "1.2.2", "license": "Apache-2.0", "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.186.0", - "@aws-sdk/credential-provider-node": "3.186.0", - "@aws-sdk/fetch-http-handler": "3.186.0", - "@aws-sdk/hash-node": "3.186.0", - "@aws-sdk/invalid-dependency": "3.186.0", - "@aws-sdk/middleware-content-length": "3.186.0", - "@aws-sdk/middleware-host-header": "3.186.0", - "@aws-sdk/middleware-logger": "3.186.0", - "@aws-sdk/middleware-recursion-detection": "3.186.0", - "@aws-sdk/middleware-retry": "3.186.0", - "@aws-sdk/middleware-sdk-sts": "3.186.0", - "@aws-sdk/middleware-serde": "3.186.0", - "@aws-sdk/middleware-signing": "3.186.0", - "@aws-sdk/middleware-stack": "3.186.0", - "@aws-sdk/middleware-user-agent": "3.186.0", - "@aws-sdk/node-config-provider": "3.186.0", - "@aws-sdk/node-http-handler": "3.186.0", - "@aws-sdk/protocol-http": "3.186.0", - "@aws-sdk/smithy-client": "3.186.0", - "@aws-sdk/types": "3.186.0", - "@aws-sdk/url-parser": "3.186.0", - "@aws-sdk/util-base64-browser": "3.186.0", - "@aws-sdk/util-base64-node": "3.186.0", - "@aws-sdk/util-body-length-browser": "3.186.0", - "@aws-sdk/util-body-length-node": "3.186.0", - "@aws-sdk/util-defaults-mode-browser": "3.186.0", - "@aws-sdk/util-defaults-mode-node": "3.186.0", - "@aws-sdk/util-user-agent-browser": "3.186.0", - "@aws-sdk/util-user-agent-node": "3.186.0", - "@aws-sdk/util-utf8-browser": "3.186.0", - "@aws-sdk/util-utf8-node": "3.186.0", - "entities": "2.2.0", - "fast-xml-parser": "3.19.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=12.0.0" + "@aws-crypto/util": "^1.2.2", + "@aws-sdk/types": "^3.1.0", + "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/config-resolver": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-crypto/supports-web-crypto": { + "version": "1.0.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/signature-v4": "3.186.0", - "@aws-sdk/types": "3.186.0", - "@aws-sdk/util-config-provider": "3.186.0", - "@aws-sdk/util-middleware": "3.186.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">= 12.0.0" + "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/credential-provider-env": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-crypto/util": { + "version": "1.2.2", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.186.0", - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-crypto/util/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/abort-controller": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/credential-provider-imds": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/config-resolver": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/node-config-provider": "3.186.0", - "@aws-sdk/property-provider": "3.186.0", - "@aws-sdk/types": "3.186.0", - "@aws-sdk/url-parser": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/signature-v4": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/credential-provider-env": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/credential-provider-env": "3.186.0", - "@aws-sdk/credential-provider-imds": "3.186.0", - "@aws-sdk/credential-provider-sso": "3.186.0", - "@aws-sdk/credential-provider-web-identity": "3.186.0", - "@aws-sdk/property-provider": "3.186.0", - "@aws-sdk/shared-ini-file-loader": "3.186.0", - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/credential-provider-node": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/credential-provider-imds": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/credential-provider-env": "3.186.0", - "@aws-sdk/credential-provider-imds": "3.186.0", - "@aws-sdk/credential-provider-ini": "3.186.0", - "@aws-sdk/credential-provider-process": "3.186.0", - "@aws-sdk/credential-provider-sso": "3.186.0", - "@aws-sdk/credential-provider-web-identity": "3.186.0", - "@aws-sdk/property-provider": "3.186.0", - "@aws-sdk/shared-ini-file-loader": "3.186.0", - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/credential-provider-process": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.186.0", - "@aws-sdk/shared-ini-file-loader": "3.186.0", - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/shared-ini-file-loader": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/credential-provider-node": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/client-sso": "3.186.0", - "@aws-sdk/property-provider": "3.186.0", - "@aws-sdk/shared-ini-file-loader": "3.186.0", - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/credential-provider-env": "3.6.1", + "@aws-sdk/credential-provider-imds": "3.6.1", + "@aws-sdk/credential-provider-ini": "3.6.1", + "@aws-sdk/credential-provider-process": "3.6.1", + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/shared-ini-file-loader": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">=10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/credential-provider-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/credential-provider-process": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.186.0", - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/credential-provider-ini": "3.6.1", + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/shared-ini-file-loader": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/fetch-http-handler": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/credential-provider-process/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/fetch-http-handler": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.186.0", - "@aws-sdk/querystring-builder": "3.186.0", - "@aws-sdk/types": "3.186.0", - "@aws-sdk/util-base64-browser": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/querystring-builder": "3.6.1", + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-base64-browser": "3.6.1", + "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/hash-node": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/fetch-http-handler/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/hash-node": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.186.0", - "@aws-sdk/util-buffer-from": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-buffer-from": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/invalid-dependency": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/hash-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/invalid-dependency": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/is-array-buffer": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/invalid-dependency/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/is-array-buffer": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "tslib": "^2.3.1" + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/middleware-content-length": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/is-array-buffer/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-content-length": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.186.0", - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/middleware-host-header": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-content-length/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-host-header": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.186.0", - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/middleware-logger": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-host-header/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-logger": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-logger/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-retry": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.186.0", - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/service-error-classification": "3.6.1", + "@aws-sdk/types": "3.6.1", + "react-native-get-random-values": "^1.4.0", + "tslib": "^1.8.0", + "uuid": "^3.0.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/middleware-retry": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-retry/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-serde": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.186.0", - "@aws-sdk/service-error-classification": "3.186.0", - "@aws-sdk/types": "3.186.0", - "@aws-sdk/util-middleware": "3.186.0", - "tslib": "^2.3.1", - "uuid": "^8.3.2" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/middleware-sdk-sts": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-serde/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-signing": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-signing": "3.186.0", - "@aws-sdk/property-provider": "3.186.0", - "@aws-sdk/protocol-http": "3.186.0", - "@aws-sdk/signature-v4": "3.186.0", - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/signature-v4": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/middleware-serde": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-signing/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-stack": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/middleware-signing": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-stack/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.186.0", - "@aws-sdk/protocol-http": "3.186.0", - "@aws-sdk/signature-v4": "3.186.0", - "@aws-sdk/types": "3.186.0", - "@aws-sdk/util-middleware": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/middleware-stack": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/middleware-user-agent/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/node-config-provider": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "tslib": "^2.3.1" + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/shared-ini-file-loader": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/node-config-provider/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/node-http-handler": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.186.0", - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/abort-controller": "3.6.1", + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/querystring-builder": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/node-config-provider": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/node-http-handler/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/property-provider": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.186.0", - "@aws-sdk/shared-ini-file-loader": "3.186.0", - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/node-http-handler": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/property-provider/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/protocol-http": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/abort-controller": "3.186.0", - "@aws-sdk/protocol-http": "3.186.0", - "@aws-sdk/querystring-builder": "3.186.0", - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/property-provider": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/protocol-http/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/querystring-builder": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-uri-escape": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/protocol-http": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/querystring-parser": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/querystring-builder": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/service-error-classification": { + "version": "3.6.1", "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/types": "3.186.0", - "@aws-sdk/util-uri-escape": "3.186.0", - "tslib": "^2.3.1" - }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/querystring-parser": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/shared-ini-file-loader": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/service-error-classification": { - "version": "3.186.0", - "license": "Apache-2.0", - "engines": { - "node": ">= 12.0.0" - } + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/shared-ini-file-loader": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/signature-v4": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/is-array-buffer": "3.6.1", + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-hex-encoding": "3.6.1", + "@aws-sdk/util-uri-escape": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/signature-v4": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/smithy-client": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/is-array-buffer": "3.186.0", - "@aws-sdk/types": "3.186.0", - "@aws-sdk/util-hex-encoding": "3.186.0", - "@aws-sdk/util-middleware": "3.186.0", - "@aws-sdk/util-uri-escape": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/middleware-stack": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/smithy-client": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/types": { + "version": "3.6.1", "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/middleware-stack": "3.186.0", - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" - }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/types": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/url-parser": { + "version": "3.6.1", "license": "Apache-2.0", - "engines": { - "node": ">= 12.0.0" + "dependencies": { + "@aws-sdk/querystring-parser": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/url-parser": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/url-parser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-body-length-browser": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/querystring-parser": "3.186.0", - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" + "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-base64-browser": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-body-length-node": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "tslib": "^2.3.1" + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-base64-node": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-buffer-from": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/util-buffer-from": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/is-array-buffer": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-body-length-browser": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-hex-encoding": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "tslib": "^2.3.1" + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-body-length-node": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-uri-escape": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "tslib": "^2.3.1" + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-buffer-from": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/is-array-buffer": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "bowser": "^2.11.0", + "tslib": "^1.8.0" + } + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/node-config-provider": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-config-provider": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-utf8-browser": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "tslib": "^2.3.1" + "tslib": "^1.8.0" + } + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-utf8-node": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/util-buffer-from": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-defaults-mode-browser": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-waiter": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.186.0", - "@aws-sdk/types": "3.186.0", - "bowser": "^2.11.0", - "tslib": "^2.3.1" + "@aws-sdk/abort-controller": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-defaults-mode-node": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-kinesis/node_modules/@aws-sdk/util-waiter/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-kinesis/node_modules/uuid": { + "version": "3.4.0", + "license": "MIT", + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/@aws-sdk/client-lambda": { + "version": "3.241.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/config-resolver": "3.186.0", - "@aws-sdk/credential-provider-imds": "3.186.0", - "@aws-sdk/node-config-provider": "3.186.0", - "@aws-sdk/property-provider": "3.186.0", - "@aws-sdk/types": "3.186.0", + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/client-sts": "3.241.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/credential-provider-node": "3.241.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-signing": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.241.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/util-waiter": "3.226.0", "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-hex-encoding": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/client-sso": { + "version": "3.241.0", "license": "Apache-2.0", "dependencies": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.241.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", "tslib": "^2.3.1" }, "engines": { - "node": ">= 12.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-middleware": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.241.0", "license": "Apache-2.0", "dependencies": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.241.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", "tslib": "^2.3.1" }, "engines": { - "node": ">= 12.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-uri-escape": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/client-sts": { + "version": "3.241.0", "license": "Apache-2.0", "dependencies": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/credential-provider-node": "3.241.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-sdk-sts": "3.226.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-signing": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.241.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "fast-xml-parser": "4.0.11", "tslib": "^2.3.1" }, "engines": { - "node": ">= 12.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.241.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.186.0", - "bowser": "^2.11.0", + "@aws-sdk/credential-provider-env": "3.226.0", + "@aws-sdk/credential-provider-imds": "3.226.0", + "@aws-sdk/credential-provider-process": "3.226.0", + "@aws-sdk/credential-provider-sso": "3.241.0", + "@aws-sdk/credential-provider-web-identity": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/credential-provider-node": { + "version": "3.241.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/node-config-provider": "3.186.0", - "@aws-sdk/types": "3.186.0", + "@aws-sdk/credential-provider-env": "3.226.0", + "@aws-sdk/credential-provider-imds": "3.226.0", + "@aws-sdk/credential-provider-ini": "3.241.0", + "@aws-sdk/credential-provider-process": "3.226.0", + "@aws-sdk/credential-provider-sso": "3.241.0", + "@aws-sdk/credential-provider-web-identity": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", "tslib": "^2.3.1" }, "engines": { - "node": ">= 12.0.0" - }, - "peerDependencies": { - "aws-crt": ">=1.0.0" - }, - "peerDependenciesMeta": { - "aws-crt": { - "optional": true - } + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-utf8-browser": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.241.0", "license": "Apache-2.0", "dependencies": { + "@aws-sdk/client-sso": "3.241.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/token-providers": "3.241.0", + "@aws-sdk/types": "3.226.0", "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-utf8-node": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/token-providers": { + "version": "3.241.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/util-buffer-from": "3.186.0", + "@aws-sdk/client-sso-oidc": "3.241.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", "tslib": "^2.3.1" }, "engines": { - "node": ">= 12.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/fast-xml-parser": { - "version": "3.19.0", - "license": "MIT", - "bin": { - "xml2js": "cli.js" + "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/util-endpoints": { + "version": "3.241.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" }, - "funding": { - "type": "paypal", - "url": "https://paypal.me/naturalintelligence" + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2": { + "node_modules/@aws-sdk/client-lex-runtime-service": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -9735,15 +10531,10 @@ "@aws-sdk/client-sts": "3.186.0", "@aws-sdk/config-resolver": "3.186.0", "@aws-sdk/credential-provider-node": "3.186.0", - "@aws-sdk/eventstream-handler-node": "3.186.0", - "@aws-sdk/eventstream-serde-browser": "3.186.0", - "@aws-sdk/eventstream-serde-config-resolver": "3.186.0", - "@aws-sdk/eventstream-serde-node": "3.186.0", "@aws-sdk/fetch-http-handler": "3.186.0", "@aws-sdk/hash-node": "3.186.0", "@aws-sdk/invalid-dependency": "3.186.0", "@aws-sdk/middleware-content-length": "3.186.0", - "@aws-sdk/middleware-eventstream": "3.186.0", "@aws-sdk/middleware-host-header": "3.186.0", "@aws-sdk/middleware-logger": "3.186.0", "@aws-sdk/middleware-recursion-detection": "3.186.0", @@ -9774,7 +10565,7 @@ "node": ">=12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/abort-controller": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/abort-controller": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -9785,7 +10576,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/client-sso": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/client-sso": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -9825,7 +10616,7 @@ "node": ">=12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/client-sts": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/client-sts": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -9870,7 +10661,7 @@ "node": ">=12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/config-resolver": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/config-resolver": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -9884,7 +10675,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/credential-provider-env": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/credential-provider-env": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -9896,7 +10687,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/credential-provider-imds": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/credential-provider-imds": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -9910,7 +10701,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/credential-provider-ini": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/credential-provider-ini": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -9927,7 +10718,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/credential-provider-node": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/credential-provider-node": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -9946,7 +10737,7 @@ "node": ">=12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/credential-provider-process": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/credential-provider-process": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -9959,7 +10750,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/credential-provider-sso": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/credential-provider-sso": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -9973,7 +10764,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/credential-provider-web-identity": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/credential-provider-web-identity": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -9985,54 +10776,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/eventstream-serde-browser": { - "version": "3.186.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/eventstream-serde-universal": "3.186.0", - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">= 12.0.0" - } - }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/eventstream-serde-config-resolver": { - "version": "3.186.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">= 12.0.0" - } - }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/eventstream-serde-node": { - "version": "3.186.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/eventstream-serde-universal": "3.186.0", - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">= 12.0.0" - } - }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/eventstream-serde-universal": { - "version": "3.186.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/eventstream-codec": "3.186.0", - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">= 12.0.0" - } - }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/fetch-http-handler": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/fetch-http-handler": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10043,7 +10787,7 @@ "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/hash-node": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/hash-node": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10055,7 +10799,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/invalid-dependency": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/invalid-dependency": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10063,7 +10807,7 @@ "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/is-array-buffer": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/is-array-buffer": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10073,7 +10817,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/middleware-content-length": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/middleware-content-length": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10085,7 +10829,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/middleware-host-header": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/middleware-host-header": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10097,7 +10841,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/middleware-logger": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/middleware-logger": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10108,7 +10852,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/middleware-recursion-detection": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/middleware-recursion-detection": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10120,7 +10864,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/middleware-retry": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/middleware-retry": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10135,7 +10879,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/middleware-sdk-sts": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/middleware-sdk-sts": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10150,7 +10894,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/middleware-serde": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/middleware-serde": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10161,7 +10905,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/middleware-signing": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/middleware-signing": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10176,7 +10920,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/middleware-stack": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/middleware-stack": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10186,7 +10930,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/middleware-user-agent": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/middleware-user-agent": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10198,7 +10942,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/node-config-provider": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/node-config-provider": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10211,7 +10955,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/node-http-handler": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/node-http-handler": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10225,7 +10969,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/property-provider": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/property-provider": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10236,7 +10980,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/protocol-http": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/protocol-http": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10247,7 +10991,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/querystring-builder": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/querystring-builder": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10259,7 +11003,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/querystring-parser": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/querystring-parser": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10270,14 +11014,14 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/service-error-classification": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/service-error-classification": { "version": "3.186.0", "license": "Apache-2.0", "engines": { "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/shared-ini-file-loader": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/shared-ini-file-loader": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10288,7 +11032,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/signature-v4": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/signature-v4": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10303,7 +11047,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/smithy-client": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/smithy-client": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10315,14 +11059,14 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/types": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/types": { "version": "3.186.0", "license": "Apache-2.0", "engines": { "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/url-parser": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/url-parser": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10331,14 +11075,14 @@ "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-base64-browser": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-base64-browser": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-base64-node": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-base64-node": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10349,14 +11093,14 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-body-length-browser": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-body-length-browser": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-body-length-node": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-body-length-node": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10366,7 +11110,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-buffer-from": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-buffer-from": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10377,7 +11121,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-config-provider": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-config-provider": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10387,7 +11131,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-defaults-mode-browser": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-defaults-mode-browser": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10400,7 +11144,7 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-defaults-mode-node": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-defaults-mode-node": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10415,7 +11159,7 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-hex-encoding": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-hex-encoding": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10425,7 +11169,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-middleware": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-middleware": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10435,7 +11179,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-uri-escape": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-uri-escape": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10445,7 +11189,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-user-agent-browser": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-user-agent-browser": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10454,7 +11198,7 @@ "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-user-agent-node": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-user-agent-node": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10474,14 +11218,14 @@ } } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-utf8-browser": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-utf8-browser": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-utf8-node": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/@aws-sdk/util-utf8-node": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10492,7 +11236,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/fast-xml-parser": { + "node_modules/@aws-sdk/client-lex-runtime-service/node_modules/fast-xml-parser": { "version": "3.19.0", "license": "MIT", "bin": { @@ -10503,7 +11247,7 @@ "url": "https://paypal.me/naturalintelligence" } }, - "node_modules/@aws-sdk/client-location": { + "node_modules/@aws-sdk/client-lex-runtime-v2": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10512,10 +11256,15 @@ "@aws-sdk/client-sts": "3.186.0", "@aws-sdk/config-resolver": "3.186.0", "@aws-sdk/credential-provider-node": "3.186.0", + "@aws-sdk/eventstream-handler-node": "3.186.0", + "@aws-sdk/eventstream-serde-browser": "3.186.0", + "@aws-sdk/eventstream-serde-config-resolver": "3.186.0", + "@aws-sdk/eventstream-serde-node": "3.186.0", "@aws-sdk/fetch-http-handler": "3.186.0", "@aws-sdk/hash-node": "3.186.0", "@aws-sdk/invalid-dependency": "3.186.0", "@aws-sdk/middleware-content-length": "3.186.0", + "@aws-sdk/middleware-eventstream": "3.186.0", "@aws-sdk/middleware-host-header": "3.186.0", "@aws-sdk/middleware-logger": "3.186.0", "@aws-sdk/middleware-recursion-detection": "3.186.0", @@ -10546,7 +11295,7 @@ "node": ">=12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/abort-controller": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/abort-controller": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10557,7 +11306,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/client-sso": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/client-sso": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10597,7 +11346,7 @@ "node": ">=12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/client-sts": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/client-sts": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10642,7 +11391,7 @@ "node": ">=12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/config-resolver": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/config-resolver": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10656,7 +11405,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/credential-provider-env": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/credential-provider-env": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10668,7 +11417,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/credential-provider-imds": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/credential-provider-imds": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10682,7 +11431,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/credential-provider-ini": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/credential-provider-ini": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10699,7 +11448,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/credential-provider-node": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/credential-provider-node": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10718,7 +11467,7 @@ "node": ">=12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/credential-provider-process": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/credential-provider-process": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10731,7 +11480,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/credential-provider-sso": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/credential-provider-sso": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10745,7 +11494,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/credential-provider-web-identity": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/credential-provider-web-identity": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10757,7 +11506,54 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/fetch-http-handler": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/eventstream-serde-browser": { + "version": "3.186.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/eventstream-serde-universal": "3.186.0", + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/eventstream-serde-config-resolver": { + "version": "3.186.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/eventstream-serde-node": { + "version": "3.186.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/eventstream-serde-universal": "3.186.0", + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/eventstream-serde-universal": { + "version": "3.186.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/eventstream-codec": "3.186.0", + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/fetch-http-handler": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10768,7 +11564,7 @@ "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/hash-node": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/hash-node": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10780,7 +11576,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/invalid-dependency": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/invalid-dependency": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10788,7 +11584,7 @@ "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/is-array-buffer": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/is-array-buffer": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10798,7 +11594,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/middleware-content-length": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/middleware-content-length": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10810,7 +11606,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/middleware-host-header": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/middleware-host-header": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10822,7 +11618,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/middleware-logger": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/middleware-logger": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10833,7 +11629,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/middleware-recursion-detection": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/middleware-recursion-detection": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10845,7 +11641,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/middleware-retry": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/middleware-retry": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10860,7 +11656,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/middleware-sdk-sts": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/middleware-sdk-sts": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10875,7 +11671,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/middleware-serde": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/middleware-serde": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10886,7 +11682,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/middleware-signing": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/middleware-signing": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10901,7 +11697,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/middleware-stack": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/middleware-stack": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10911,7 +11707,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/middleware-user-agent": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/middleware-user-agent": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10923,7 +11719,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/node-config-provider": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/node-config-provider": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10936,7 +11732,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/node-http-handler": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/node-http-handler": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10950,7 +11746,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/property-provider": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/property-provider": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10961,7 +11757,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/protocol-http": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/protocol-http": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10972,7 +11768,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/querystring-builder": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/querystring-builder": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10984,7 +11780,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/querystring-parser": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/querystring-parser": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -10995,14 +11791,14 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/service-error-classification": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/service-error-classification": { "version": "3.186.0", "license": "Apache-2.0", "engines": { "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/shared-ini-file-loader": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/shared-ini-file-loader": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -11013,7 +11809,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/signature-v4": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/signature-v4": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -11028,7 +11824,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/smithy-client": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/smithy-client": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -11040,14 +11836,14 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/types": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/types": { "version": "3.186.0", "license": "Apache-2.0", "engines": { "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/url-parser": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/url-parser": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -11056,14 +11852,14 @@ "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-base64-browser": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-base64-browser": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-base64-node": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-base64-node": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -11074,14 +11870,14 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-body-length-browser": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-body-length-browser": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-body-length-node": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-body-length-node": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -11091,7 +11887,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-buffer-from": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-buffer-from": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -11102,7 +11898,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-config-provider": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-config-provider": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -11112,7 +11908,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-defaults-mode-browser": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-defaults-mode-browser": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -11125,7 +11921,7 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-defaults-mode-node": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-defaults-mode-node": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -11140,7 +11936,7 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-hex-encoding": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-hex-encoding": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -11150,7 +11946,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-middleware": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-middleware": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -11160,7 +11956,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-uri-escape": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-uri-escape": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -11170,7 +11966,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-user-agent-browser": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-user-agent-browser": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -11179,7 +11975,7 @@ "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-user-agent-node": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-user-agent-node": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -11199,14 +11995,14 @@ } } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-utf8-browser": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-utf8-browser": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-utf8-node": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/@aws-sdk/util-utf8-node": { "version": "3.186.0", "license": "Apache-2.0", "dependencies": { @@ -11217,7 +12013,7 @@ "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-location/node_modules/fast-xml-parser": { + "node_modules/@aws-sdk/client-lex-runtime-v2/node_modules/fast-xml-parser": { "version": "3.19.0", "license": "MIT", "bin": { @@ -11228,717 +12024,732 @@ "url": "https://paypal.me/naturalintelligence" } }, - "node_modules/@aws-sdk/client-personalize-events": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-crypto/sha256-browser": "^1.0.0", - "@aws-crypto/sha256-js": "^1.0.0", - "@aws-sdk/config-resolver": "3.6.1", - "@aws-sdk/credential-provider-node": "3.6.1", - "@aws-sdk/fetch-http-handler": "3.6.1", - "@aws-sdk/hash-node": "3.6.1", - "@aws-sdk/invalid-dependency": "3.6.1", - "@aws-sdk/middleware-content-length": "3.6.1", - "@aws-sdk/middleware-host-header": "3.6.1", - "@aws-sdk/middleware-logger": "3.6.1", - "@aws-sdk/middleware-retry": "3.6.1", - "@aws-sdk/middleware-serde": "3.6.1", - "@aws-sdk/middleware-signing": "3.6.1", - "@aws-sdk/middleware-stack": "3.6.1", - "@aws-sdk/middleware-user-agent": "3.6.1", - "@aws-sdk/node-config-provider": "3.6.1", - "@aws-sdk/node-http-handler": "3.6.1", - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/smithy-client": "3.6.1", - "@aws-sdk/types": "3.6.1", - "@aws-sdk/url-parser": "3.6.1", - "@aws-sdk/url-parser-native": "3.6.1", - "@aws-sdk/util-base64-browser": "3.6.1", - "@aws-sdk/util-base64-node": "3.6.1", - "@aws-sdk/util-body-length-browser": "3.6.1", - "@aws-sdk/util-body-length-node": "3.6.1", - "@aws-sdk/util-user-agent-browser": "3.6.1", - "@aws-sdk/util-user-agent-node": "3.6.1", - "@aws-sdk/util-utf8-browser": "3.6.1", - "@aws-sdk/util-utf8-node": "3.6.1", - "tslib": "^2.0.0" + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/client-sts": "3.186.0", + "@aws-sdk/config-resolver": "3.186.0", + "@aws-sdk/credential-provider-node": "3.186.0", + "@aws-sdk/fetch-http-handler": "3.186.0", + "@aws-sdk/hash-node": "3.186.0", + "@aws-sdk/invalid-dependency": "3.186.0", + "@aws-sdk/middleware-content-length": "3.186.0", + "@aws-sdk/middleware-host-header": "3.186.0", + "@aws-sdk/middleware-logger": "3.186.0", + "@aws-sdk/middleware-recursion-detection": "3.186.0", + "@aws-sdk/middleware-retry": "3.186.0", + "@aws-sdk/middleware-serde": "3.186.0", + "@aws-sdk/middleware-signing": "3.186.0", + "@aws-sdk/middleware-stack": "3.186.0", + "@aws-sdk/middleware-user-agent": "3.186.0", + "@aws-sdk/node-config-provider": "3.186.0", + "@aws-sdk/node-http-handler": "3.186.0", + "@aws-sdk/protocol-http": "3.186.0", + "@aws-sdk/smithy-client": "3.186.0", + "@aws-sdk/types": "3.186.0", + "@aws-sdk/url-parser": "3.186.0", + "@aws-sdk/util-base64-browser": "3.186.0", + "@aws-sdk/util-base64-node": "3.186.0", + "@aws-sdk/util-body-length-browser": "3.186.0", + "@aws-sdk/util-body-length-node": "3.186.0", + "@aws-sdk/util-defaults-mode-browser": "3.186.0", + "@aws-sdk/util-defaults-mode-node": "3.186.0", + "@aws-sdk/util-user-agent-browser": "3.186.0", + "@aws-sdk/util-user-agent-node": "3.186.0", + "@aws-sdk/util-utf8-browser": "3.186.0", + "@aws-sdk/util-utf8-node": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=10.0.0" + "node": ">=12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-crypto/ie11-detection": { - "version": "1.0.0", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/abort-controller": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "tslib": "^1.11.1" + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-crypto/sha256-browser": { - "version": "1.2.2", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/client-sso": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-crypto/ie11-detection": "^1.0.0", - "@aws-crypto/sha256-js": "^1.2.2", - "@aws-crypto/supports-web-crypto": "^1.0.0", - "@aws-crypto/util": "^1.2.2", - "@aws-sdk/types": "^3.1.0", - "@aws-sdk/util-locate-window": "^3.0.0", - "tslib": "^1.11.1" + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.186.0", + "@aws-sdk/fetch-http-handler": "3.186.0", + "@aws-sdk/hash-node": "3.186.0", + "@aws-sdk/invalid-dependency": "3.186.0", + "@aws-sdk/middleware-content-length": "3.186.0", + "@aws-sdk/middleware-host-header": "3.186.0", + "@aws-sdk/middleware-logger": "3.186.0", + "@aws-sdk/middleware-recursion-detection": "3.186.0", + "@aws-sdk/middleware-retry": "3.186.0", + "@aws-sdk/middleware-serde": "3.186.0", + "@aws-sdk/middleware-stack": "3.186.0", + "@aws-sdk/middleware-user-agent": "3.186.0", + "@aws-sdk/node-config-provider": "3.186.0", + "@aws-sdk/node-http-handler": "3.186.0", + "@aws-sdk/protocol-http": "3.186.0", + "@aws-sdk/smithy-client": "3.186.0", + "@aws-sdk/types": "3.186.0", + "@aws-sdk/url-parser": "3.186.0", + "@aws-sdk/util-base64-browser": "3.186.0", + "@aws-sdk/util-base64-node": "3.186.0", + "@aws-sdk/util-body-length-browser": "3.186.0", + "@aws-sdk/util-body-length-node": "3.186.0", + "@aws-sdk/util-defaults-mode-browser": "3.186.0", + "@aws-sdk/util-defaults-mode-node": "3.186.0", + "@aws-sdk/util-user-agent-browser": "3.186.0", + "@aws-sdk/util-user-agent-node": "3.186.0", + "@aws-sdk/util-utf8-browser": "3.186.0", + "@aws-sdk/util-utf8-node": "3.186.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-crypto/sha256-js": { - "version": "1.2.2", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/client-sts": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-crypto/util": "^1.2.2", - "@aws-sdk/types": "^3.1.0", - "tslib": "^1.11.1" + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.186.0", + "@aws-sdk/credential-provider-node": "3.186.0", + "@aws-sdk/fetch-http-handler": "3.186.0", + "@aws-sdk/hash-node": "3.186.0", + "@aws-sdk/invalid-dependency": "3.186.0", + "@aws-sdk/middleware-content-length": "3.186.0", + "@aws-sdk/middleware-host-header": "3.186.0", + "@aws-sdk/middleware-logger": "3.186.0", + "@aws-sdk/middleware-recursion-detection": "3.186.0", + "@aws-sdk/middleware-retry": "3.186.0", + "@aws-sdk/middleware-sdk-sts": "3.186.0", + "@aws-sdk/middleware-serde": "3.186.0", + "@aws-sdk/middleware-signing": "3.186.0", + "@aws-sdk/middleware-stack": "3.186.0", + "@aws-sdk/middleware-user-agent": "3.186.0", + "@aws-sdk/node-config-provider": "3.186.0", + "@aws-sdk/node-http-handler": "3.186.0", + "@aws-sdk/protocol-http": "3.186.0", + "@aws-sdk/smithy-client": "3.186.0", + "@aws-sdk/types": "3.186.0", + "@aws-sdk/url-parser": "3.186.0", + "@aws-sdk/util-base64-browser": "3.186.0", + "@aws-sdk/util-base64-node": "3.186.0", + "@aws-sdk/util-body-length-browser": "3.186.0", + "@aws-sdk/util-body-length-node": "3.186.0", + "@aws-sdk/util-defaults-mode-browser": "3.186.0", + "@aws-sdk/util-defaults-mode-node": "3.186.0", + "@aws-sdk/util-user-agent-browser": "3.186.0", + "@aws-sdk/util-user-agent-node": "3.186.0", + "@aws-sdk/util-utf8-browser": "3.186.0", + "@aws-sdk/util-utf8-node": "3.186.0", + "entities": "2.2.0", + "fast-xml-parser": "3.19.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-crypto/supports-web-crypto": { - "version": "1.0.0", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/config-resolver": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "tslib": "^1.11.1" + "@aws-sdk/signature-v4": "3.186.0", + "@aws-sdk/types": "3.186.0", + "@aws-sdk/util-config-provider": "3.186.0", + "@aws-sdk/util-middleware": "3.186.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-crypto/util": { - "version": "1.2.2", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/credential-provider-env": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "^3.1.0", - "@aws-sdk/util-utf8-browser": "^3.0.0", - "tslib": "^1.11.1" + "@aws-sdk/property-provider": "3.186.0", + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-crypto/util/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/abort-controller": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/credential-provider-imds": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/node-config-provider": "3.186.0", + "@aws-sdk/property-provider": "3.186.0", + "@aws-sdk/types": "3.186.0", + "@aws-sdk/url-parser": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/config-resolver": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/signature-v4": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/credential-provider-env": "3.186.0", + "@aws-sdk/credential-provider-imds": "3.186.0", + "@aws-sdk/credential-provider-sso": "3.186.0", + "@aws-sdk/credential-provider-web-identity": "3.186.0", + "@aws-sdk/property-provider": "3.186.0", + "@aws-sdk/shared-ini-file-loader": "3.186.0", + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/credential-provider-env": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/credential-provider-node": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/credential-provider-env": "3.186.0", + "@aws-sdk/credential-provider-imds": "3.186.0", + "@aws-sdk/credential-provider-ini": "3.186.0", + "@aws-sdk/credential-provider-process": "3.186.0", + "@aws-sdk/credential-provider-sso": "3.186.0", + "@aws-sdk/credential-provider-web-identity": "3.186.0", + "@aws-sdk/property-provider": "3.186.0", + "@aws-sdk/shared-ini-file-loader": "3.186.0", + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/credential-provider-imds": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/credential-provider-process": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/property-provider": "3.186.0", + "@aws-sdk/shared-ini-file-loader": "3.186.0", + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/shared-ini-file-loader": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/client-sso": "3.186.0", + "@aws-sdk/property-provider": "3.186.0", + "@aws-sdk/shared-ini-file-loader": "3.186.0", + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/credential-provider-node": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/credential-provider-env": "3.6.1", - "@aws-sdk/credential-provider-imds": "3.6.1", - "@aws-sdk/credential-provider-ini": "3.6.1", - "@aws-sdk/credential-provider-process": "3.6.1", - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/shared-ini-file-loader": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/property-provider": "3.186.0", + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/credential-provider-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/fetch-http-handler": { + "version": "3.186.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/protocol-http": "3.186.0", + "@aws-sdk/querystring-builder": "3.186.0", + "@aws-sdk/types": "3.186.0", + "@aws-sdk/util-base64-browser": "3.186.0", + "tslib": "^2.3.1" + } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/credential-provider-process": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/hash-node": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/credential-provider-ini": "3.6.1", - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/shared-ini-file-loader": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.186.0", + "@aws-sdk/util-buffer-from": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/credential-provider-process/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/fetch-http-handler": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/invalid-dependency": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/querystring-builder": "3.6.1", - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-base64-browser": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/fetch-http-handler/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/hash-node": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/is-array-buffer": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-buffer-from": "3.6.1", - "tslib": "^1.8.0" + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/hash-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/invalid-dependency": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/middleware-content-length": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/protocol-http": "3.186.0", + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/invalid-dependency/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/is-array-buffer": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/middleware-host-header": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/protocol-http": "3.186.0", + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/is-array-buffer/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-content-length": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/middleware-logger": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-content-length/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-host-header": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/protocol-http": "3.186.0", + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-host-header/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-logger": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/middleware-retry": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/protocol-http": "3.186.0", + "@aws-sdk/service-error-classification": "3.186.0", + "@aws-sdk/types": "3.186.0", + "@aws-sdk/util-middleware": "3.186.0", + "tslib": "^2.3.1", + "uuid": "^8.3.2" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-logger/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-retry": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/middleware-sdk-sts": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/service-error-classification": "3.6.1", - "@aws-sdk/types": "3.6.1", - "react-native-get-random-values": "^1.4.0", - "tslib": "^1.8.0", - "uuid": "^3.0.0" + "@aws-sdk/middleware-signing": "3.186.0", + "@aws-sdk/property-provider": "3.186.0", + "@aws-sdk/protocol-http": "3.186.0", + "@aws-sdk/signature-v4": "3.186.0", + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-retry/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-serde": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/middleware-serde": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-serde/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-signing": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/middleware-signing": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/signature-v4": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/property-provider": "3.186.0", + "@aws-sdk/protocol-http": "3.186.0", + "@aws-sdk/signature-v4": "3.186.0", + "@aws-sdk/types": "3.186.0", + "@aws-sdk/util-middleware": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-signing/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-stack": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/middleware-stack": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "tslib": "^1.8.0" + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-stack/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/protocol-http": "3.186.0", + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-user-agent/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/node-config-provider": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/node-config-provider": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/shared-ini-file-loader": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/property-provider": "3.186.0", + "@aws-sdk/shared-ini-file-loader": "3.186.0", + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/node-config-provider/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/node-http-handler": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/node-http-handler": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/abort-controller": "3.6.1", - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/querystring-builder": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/abort-controller": "3.186.0", + "@aws-sdk/protocol-http": "3.186.0", + "@aws-sdk/querystring-builder": "3.186.0", + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/node-http-handler/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/property-provider": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/property-provider": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/property-provider/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/protocol-http": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/protocol-http": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/protocol-http/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/querystring-builder": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/querystring-builder": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-uri-escape": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.186.0", + "@aws-sdk/util-uri-escape": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/querystring-parser": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/querystring-parser": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/service-error-classification": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/service-error-classification": { + "version": "3.186.0", "license": "Apache-2.0", "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/shared-ini-file-loader": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/shared-ini-file-loader": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/signature-v4": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/signature-v4": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/is-array-buffer": "3.6.1", - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-hex-encoding": "3.6.1", - "@aws-sdk/util-uri-escape": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/is-array-buffer": "3.186.0", + "@aws-sdk/types": "3.186.0", + "@aws-sdk/util-hex-encoding": "3.186.0", + "@aws-sdk/util-middleware": "3.186.0", + "@aws-sdk/util-uri-escape": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/smithy-client": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/smithy-client": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-stack": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/middleware-stack": "3.186.0", + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/types": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/types": { + "version": "3.186.0", "license": "Apache-2.0", "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/url-parser": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/url-parser": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/querystring-parser": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/querystring-parser": "3.186.0", + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/url-parser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-base64-browser": { + "version": "3.186.0", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.3.1" + } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-body-length-browser": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-base64-node": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/util-buffer-from": "3.186.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-body-length-browser": { + "version": "3.186.0", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.3.1" + } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-body-length-node": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-body-length-node": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "tslib": "^1.8.0" + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-buffer-from": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-buffer-from": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/is-array-buffer": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/is-array-buffer": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-config-provider": { + "version": "3.186.0", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-hex-encoding": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-defaults-mode-browser": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/property-provider": "3.186.0", + "@aws-sdk/types": "3.186.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-uri-escape": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-defaults-mode-node": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/config-resolver": "3.186.0", + "@aws-sdk/credential-provider-imds": "3.186.0", + "@aws-sdk/node-config-provider": "3.186.0", + "@aws-sdk/property-provider": "3.186.0", + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-hex-encoding": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", - "bowser": "^2.11.0", - "tslib": "^1.8.0" + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-middleware": { + "version": "3.186.0", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-uri-escape": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/node-config-provider": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.186.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "3.186.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-utf8-browser": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/node-config-provider": "3.186.0", + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.0.0" + }, + "peerDependencies": { + "aws-crt": ">=1.0.0" + }, + "peerDependenciesMeta": { + "aws-crt": { + "optional": true + } } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-utf8-browser": { + "version": "3.186.0", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.3.1" + } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-utf8-node": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-location/node_modules/@aws-sdk/util-utf8-node": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/util-buffer-from": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/util-buffer-from": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-personalize-events/node_modules/uuid": { - "version": "3.4.0", + "node_modules/@aws-sdk/client-location/node_modules/fast-xml-parser": { + "version": "3.19.0", "license": "MIT", "bin": { - "uuid": "bin/uuid" + "xml2js": "cli.js" + }, + "funding": { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" } }, - "node_modules/@aws-sdk/client-pinpoint": { + "node_modules/@aws-sdk/client-personalize-events": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -11978,18 +12789,18 @@ "node": ">=10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-crypto/ie11-detection": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-crypto/ie11-detection": { "version": "1.0.0", "license": "Apache-2.0", "dependencies": { "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-crypto/sha256-browser": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-crypto/sha256-browser": { "version": "1.2.2", "license": "Apache-2.0", "dependencies": { @@ -12002,11 +12813,11 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-crypto/sha256-js": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-crypto/sha256-js": { "version": "1.2.2", "license": "Apache-2.0", "dependencies": { @@ -12015,22 +12826,22 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-crypto/supports-web-crypto": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-crypto/supports-web-crypto": { "version": "1.0.0", "license": "Apache-2.0", "dependencies": { "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-crypto/util": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-crypto/util": { "version": "1.2.2", "license": "Apache-2.0", "dependencies": { @@ -12039,11 +12850,11 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-crypto/util/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-crypto/util/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/abort-controller": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/abort-controller": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12054,11 +12865,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/config-resolver": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/config-resolver": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12070,11 +12881,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/credential-provider-env": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/credential-provider-env": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12086,11 +12897,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/credential-provider-imds": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/credential-provider-imds": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12102,11 +12913,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/credential-provider-ini": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/credential-provider-ini": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12119,11 +12930,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/credential-provider-node": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/credential-provider-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12140,11 +12951,11 @@ "node": ">=10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/credential-provider-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/credential-provider-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/credential-provider-process": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/credential-provider-process": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12158,11 +12969,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/credential-provider-process/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/credential-provider-process/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/fetch-http-handler": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/fetch-http-handler": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12173,11 +12984,11 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/fetch-http-handler/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/fetch-http-handler/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/hash-node": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/hash-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12189,11 +13000,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/hash-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/hash-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/invalid-dependency": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/invalid-dependency": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12201,11 +13012,11 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/invalid-dependency/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/invalid-dependency/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/is-array-buffer": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/is-array-buffer": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12215,11 +13026,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/is-array-buffer/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/is-array-buffer/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-content-length": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-content-length": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12231,11 +13042,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-content-length/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-content-length/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-host-header": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-host-header": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12247,11 +13058,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-host-header/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-host-header/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-logger": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-logger": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12262,11 +13073,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-logger/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-logger/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-retry": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-retry": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12281,11 +13092,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-retry/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-retry/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-serde": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-serde": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12296,11 +13107,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-serde/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-serde/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-signing": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-signing": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12313,11 +13124,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-signing/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-signing/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-stack": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-stack": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12327,11 +13138,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-stack/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-stack/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-user-agent": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-user-agent": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12343,11 +13154,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-user-agent/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/middleware-user-agent/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/node-config-provider": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/node-config-provider": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12360,11 +13171,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/node-config-provider/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/node-config-provider/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/node-http-handler": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/node-http-handler": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12378,11 +13189,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/node-http-handler/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/node-http-handler/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/property-provider": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/property-provider": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12393,11 +13204,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/property-provider/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/property-provider/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/protocol-http": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/protocol-http": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12408,11 +13219,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/protocol-http/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/protocol-http/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/querystring-builder": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/querystring-builder": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12424,11 +13235,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/querystring-parser": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/querystring-parser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12439,18 +13250,18 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/service-error-classification": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/service-error-classification": { "version": "3.6.1", "license": "Apache-2.0", "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/shared-ini-file-loader": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/shared-ini-file-loader": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12460,11 +13271,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/signature-v4": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/signature-v4": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12478,11 +13289,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/smithy-client": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/smithy-client": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12494,18 +13305,18 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/types": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/types": { "version": "3.6.1", "license": "Apache-2.0", "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/url-parser": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/url-parser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12514,22 +13325,22 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/url-parser/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/url-parser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-body-length-browser": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-body-length-browser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-body-length-node": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-body-length-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12539,11 +13350,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-buffer-from": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-buffer-from": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12554,11 +13365,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-hex-encoding": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-hex-encoding": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12568,11 +13379,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-uri-escape": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-uri-escape": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12582,11 +13393,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-user-agent-browser": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-user-agent-browser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12595,11 +13406,11 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-user-agent-node": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-user-agent-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12611,22 +13422,22 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-utf8-browser": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-utf8-browser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-utf8-node": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-utf8-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12637,18 +13448,18 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-pinpoint/node_modules/uuid": { + "node_modules/@aws-sdk/client-personalize-events/node_modules/uuid": { "version": "3.4.0", "license": "MIT", "bin": { "uuid": "bin/uuid" } }, - "node_modules/@aws-sdk/client-polly": { + "node_modules/@aws-sdk/client-pinpoint": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12688,18 +13499,18 @@ "node": ">=10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-crypto/ie11-detection": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-crypto/ie11-detection": { "version": "1.0.0", "license": "Apache-2.0", "dependencies": { "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-crypto/sha256-browser": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-crypto/sha256-browser": { "version": "1.2.2", "license": "Apache-2.0", "dependencies": { @@ -12712,11 +13523,11 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-crypto/sha256-js": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-crypto/sha256-js": { "version": "1.2.2", "license": "Apache-2.0", "dependencies": { @@ -12725,22 +13536,22 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-crypto/supports-web-crypto": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-crypto/supports-web-crypto": { "version": "1.0.0", "license": "Apache-2.0", "dependencies": { "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-crypto/util": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-crypto/util": { "version": "1.2.2", "license": "Apache-2.0", "dependencies": { @@ -12749,11 +13560,11 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-crypto/util/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-crypto/util/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/abort-controller": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/abort-controller": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12764,11 +13575,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/config-resolver": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/config-resolver": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12780,11 +13591,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/credential-provider-env": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/credential-provider-env": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12796,11 +13607,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/credential-provider-imds": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/credential-provider-imds": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12812,11 +13623,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/credential-provider-ini": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/credential-provider-ini": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12829,11 +13640,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/credential-provider-node": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/credential-provider-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12850,11 +13661,11 @@ "node": ">=10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/credential-provider-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/credential-provider-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/credential-provider-process": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/credential-provider-process": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12868,11 +13679,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/credential-provider-process/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/credential-provider-process/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/fetch-http-handler": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/fetch-http-handler": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12883,11 +13694,11 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/fetch-http-handler/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/fetch-http-handler/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/hash-node": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/hash-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12899,11 +13710,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/hash-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/hash-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/invalid-dependency": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/invalid-dependency": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12911,11 +13722,11 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/invalid-dependency/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/invalid-dependency/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/is-array-buffer": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/is-array-buffer": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12925,11 +13736,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/is-array-buffer/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/is-array-buffer/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-content-length": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-content-length": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12941,11 +13752,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-content-length/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-content-length/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-host-header": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-host-header": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12957,11 +13768,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-host-header/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-host-header/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-logger": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-logger": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12972,11 +13783,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-logger/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-logger/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-retry": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-retry": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -12991,11 +13802,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-retry/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-retry/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-serde": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-serde": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13006,11 +13817,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-serde/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-serde/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-signing": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-signing": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13023,11 +13834,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-signing/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-signing/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-stack": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-stack": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13037,11 +13848,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-stack/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-stack/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-user-agent": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-user-agent": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13053,11 +13864,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-user-agent/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/middleware-user-agent/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/node-config-provider": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/node-config-provider": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13070,11 +13881,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/node-config-provider/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/node-config-provider/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/node-http-handler": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/node-http-handler": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13088,11 +13899,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/node-http-handler/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/node-http-handler/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/property-provider": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/property-provider": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13103,11 +13914,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/property-provider/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/property-provider/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/protocol-http": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/protocol-http": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13118,11 +13929,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/protocol-http/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/protocol-http/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/querystring-builder": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/querystring-builder": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13134,11 +13945,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/querystring-parser": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/querystring-parser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13149,18 +13960,18 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/service-error-classification": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/service-error-classification": { "version": "3.6.1", "license": "Apache-2.0", "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/shared-ini-file-loader": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/shared-ini-file-loader": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13170,11 +13981,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/signature-v4": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/signature-v4": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13188,11 +13999,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/smithy-client": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/smithy-client": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13204,18 +14015,18 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/types": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/types": { "version": "3.6.1", "license": "Apache-2.0", "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/url-parser": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/url-parser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13224,22 +14035,22 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/url-parser/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/url-parser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-body-length-browser": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-body-length-browser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-body-length-node": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-body-length-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13249,11 +14060,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-buffer-from": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-buffer-from": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13264,11 +14075,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-hex-encoding": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-hex-encoding": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13278,11 +14089,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-uri-escape": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-uri-escape": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13292,11 +14103,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-user-agent-browser": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-user-agent-browser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13305,11 +14116,11 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-user-agent-node": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-user-agent-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13321,22 +14132,22 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-utf8-browser": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-utf8-browser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-utf8-node": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-utf8-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13347,18 +14158,18 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-polly/node_modules/uuid": { + "node_modules/@aws-sdk/client-pinpoint/node_modules/uuid": { "version": "3.4.0", "license": "MIT", "bin": { "uuid": "bin/uuid" } }, - "node_modules/@aws-sdk/client-rekognition": { + "node_modules/@aws-sdk/client-polly": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13392,25 +14203,24 @@ "@aws-sdk/util-user-agent-node": "3.6.1", "@aws-sdk/util-utf8-browser": "3.6.1", "@aws-sdk/util-utf8-node": "3.6.1", - "@aws-sdk/util-waiter": "3.6.1", "tslib": "^2.0.0" }, "engines": { "node": ">=10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-crypto/ie11-detection": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-crypto/ie11-detection": { "version": "1.0.0", "license": "Apache-2.0", "dependencies": { "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-crypto/sha256-browser": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-crypto/sha256-browser": { "version": "1.2.2", "license": "Apache-2.0", "dependencies": { @@ -13423,11 +14233,11 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-crypto/sha256-js": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-crypto/sha256-js": { "version": "1.2.2", "license": "Apache-2.0", "dependencies": { @@ -13436,22 +14246,22 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-crypto/supports-web-crypto": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-crypto/supports-web-crypto": { "version": "1.0.0", "license": "Apache-2.0", "dependencies": { "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-crypto/util": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-crypto/util": { "version": "1.2.2", "license": "Apache-2.0", "dependencies": { @@ -13460,11 +14270,11 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-crypto/util/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-crypto/util/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/abort-controller": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/abort-controller": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13475,11 +14285,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/config-resolver": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/config-resolver": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13491,11 +14301,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/credential-provider-env": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/credential-provider-env": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13507,11 +14317,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/credential-provider-imds": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/credential-provider-imds": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13523,11 +14333,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/credential-provider-ini": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/credential-provider-ini": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13540,11 +14350,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/credential-provider-node": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/credential-provider-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13561,11 +14371,11 @@ "node": ">=10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/credential-provider-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/credential-provider-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/credential-provider-process": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/credential-provider-process": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13579,11 +14389,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/credential-provider-process/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/credential-provider-process/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/fetch-http-handler": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/fetch-http-handler": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13594,11 +14404,11 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/fetch-http-handler/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/fetch-http-handler/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/hash-node": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/hash-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13610,11 +14420,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/hash-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/hash-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/invalid-dependency": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/invalid-dependency": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13622,11 +14432,11 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/invalid-dependency/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/invalid-dependency/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/is-array-buffer": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/is-array-buffer": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13636,11 +14446,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/is-array-buffer/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/is-array-buffer/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-content-length": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-content-length": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13652,11 +14462,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-content-length/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-content-length/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-host-header": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-host-header": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13668,11 +14478,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-host-header/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-host-header/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-logger": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-logger": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13683,11 +14493,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-logger/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-logger/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-retry": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-retry": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13702,11 +14512,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-retry/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-retry/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-serde": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-serde": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13717,11 +14527,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-serde/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-serde/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-signing": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-signing": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13734,11 +14544,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-signing/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-signing/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-stack": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-stack": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13748,11 +14558,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-stack/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-stack/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-user-agent": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-user-agent": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13764,11 +14574,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-user-agent/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/middleware-user-agent/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/node-config-provider": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/node-config-provider": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13781,11 +14591,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/node-config-provider/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/node-config-provider/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/node-http-handler": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/node-http-handler": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13799,11 +14609,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/node-http-handler/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/node-http-handler/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/property-provider": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/property-provider": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13814,11 +14624,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/property-provider/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/property-provider/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/protocol-http": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/protocol-http": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13829,11 +14639,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/protocol-http/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/protocol-http/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/querystring-builder": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/querystring-builder": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13845,11 +14655,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/querystring-parser": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/querystring-parser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13860,18 +14670,18 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/service-error-classification": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/service-error-classification": { "version": "3.6.1", "license": "Apache-2.0", "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/shared-ini-file-loader": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/shared-ini-file-loader": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13881,11 +14691,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/signature-v4": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/signature-v4": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13899,11 +14709,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/smithy-client": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/smithy-client": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13915,18 +14725,18 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/types": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/types": { "version": "3.6.1", "license": "Apache-2.0", "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/url-parser": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/url-parser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13935,22 +14745,22 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/url-parser/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/url-parser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-body-length-browser": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-body-length-browser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-body-length-node": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-body-length-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13960,11 +14770,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-buffer-from": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-buffer-from": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13975,11 +14785,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-hex-encoding": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-hex-encoding": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -13989,11 +14799,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-uri-escape": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-uri-escape": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14003,11 +14813,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-user-agent-browser": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-user-agent-browser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14016,11 +14826,11 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-user-agent-node": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-user-agent-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14032,22 +14842,22 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-utf8-browser": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-utf8-browser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-utf8-node": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-utf8-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14058,34 +14868,18 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-waiter": { - "version": "3.6.1", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/abort-controller": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-waiter/node_modules/tslib": { + "node_modules/@aws-sdk/client-polly/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-rekognition/node_modules/uuid": { + "node_modules/@aws-sdk/client-polly/node_modules/uuid": { "version": "3.4.0", "license": "MIT", "bin": { "uuid": "bin/uuid" } }, - "node_modules/@aws-sdk/client-s3": { + "node_modules/@aws-sdk/client-rekognition": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14093,27 +14887,15 @@ "@aws-crypto/sha256-js": "^1.0.0", "@aws-sdk/config-resolver": "3.6.1", "@aws-sdk/credential-provider-node": "3.6.1", - "@aws-sdk/eventstream-serde-browser": "3.6.1", - "@aws-sdk/eventstream-serde-config-resolver": "3.6.1", - "@aws-sdk/eventstream-serde-node": "3.6.1", "@aws-sdk/fetch-http-handler": "3.6.1", - "@aws-sdk/hash-blob-browser": "3.6.1", "@aws-sdk/hash-node": "3.6.1", - "@aws-sdk/hash-stream-node": "3.6.1", "@aws-sdk/invalid-dependency": "3.6.1", - "@aws-sdk/md5-js": "3.6.1", - "@aws-sdk/middleware-apply-body-checksum": "3.6.1", - "@aws-sdk/middleware-bucket-endpoint": "3.6.1", "@aws-sdk/middleware-content-length": "3.6.1", - "@aws-sdk/middleware-expect-continue": "3.6.1", "@aws-sdk/middleware-host-header": "3.6.1", - "@aws-sdk/middleware-location-constraint": "3.6.1", "@aws-sdk/middleware-logger": "3.6.1", "@aws-sdk/middleware-retry": "3.6.1", - "@aws-sdk/middleware-sdk-s3": "3.6.1", "@aws-sdk/middleware-serde": "3.6.1", "@aws-sdk/middleware-signing": "3.6.1", - "@aws-sdk/middleware-ssec": "3.6.1", "@aws-sdk/middleware-stack": "3.6.1", "@aws-sdk/middleware-user-agent": "3.6.1", "@aws-sdk/node-config-provider": "3.6.1", @@ -14132,26 +14914,24 @@ "@aws-sdk/util-utf8-browser": "3.6.1", "@aws-sdk/util-utf8-node": "3.6.1", "@aws-sdk/util-waiter": "3.6.1", - "@aws-sdk/xml-builder": "3.6.1", - "fast-xml-parser": "^3.16.0", "tslib": "^2.0.0" }, "engines": { "node": ">=10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/ie11-detection": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-crypto/ie11-detection": { "version": "1.0.0", "license": "Apache-2.0", "dependencies": { "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/sha256-browser": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-crypto/sha256-browser": { "version": "1.2.2", "license": "Apache-2.0", "dependencies": { @@ -14164,11 +14944,11 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/sha256-js": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-crypto/sha256-js": { "version": "1.2.2", "license": "Apache-2.0", "dependencies": { @@ -14177,22 +14957,22 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/supports-web-crypto": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-crypto/supports-web-crypto": { "version": "1.0.0", "license": "Apache-2.0", "dependencies": { "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/util": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-crypto/util": { "version": "1.2.2", "license": "Apache-2.0", "dependencies": { @@ -14201,11 +14981,11 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/util/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-crypto/util/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/abort-controller": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/abort-controller": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14216,11 +14996,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/config-resolver": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/config-resolver": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14232,11 +15012,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-env": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/credential-provider-env": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14248,11 +15028,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-imds": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/credential-provider-imds": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14264,11 +15044,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-ini": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/credential-provider-ini": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14281,11 +15061,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-node": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/credential-provider-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14302,11 +15082,11 @@ "node": ">=10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/credential-provider-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-process": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/credential-provider-process": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14320,11 +15100,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-process/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/credential-provider-process/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/fetch-http-handler": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/fetch-http-handler": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14335,11 +15115,11 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/fetch-http-handler/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/fetch-http-handler/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/hash-node": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/hash-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14351,11 +15131,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/hash-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/hash-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/invalid-dependency": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/invalid-dependency": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14363,11 +15143,11 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/invalid-dependency/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/invalid-dependency/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/is-array-buffer": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/is-array-buffer": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14377,11 +15157,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/is-array-buffer/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/is-array-buffer/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-content-length": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-content-length": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14393,11 +15173,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-content-length/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-content-length/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-host-header": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-host-header": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14409,11 +15189,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-host-header/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-host-header/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-logger": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-logger": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14424,11 +15204,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-logger/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-logger/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-retry": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-retry": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14443,11 +15223,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-retry/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-retry/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-serde": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-serde": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14458,11 +15238,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-serde/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-serde/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-signing": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-signing": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14475,11 +15255,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-signing/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-signing/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-stack": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-stack": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14489,11 +15269,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-stack/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-stack/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-user-agent": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-user-agent": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14505,11 +15285,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-user-agent/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/middleware-user-agent/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/node-config-provider": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/node-config-provider": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14522,11 +15302,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/node-config-provider/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/node-config-provider/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/node-http-handler": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/node-http-handler": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14540,11 +15320,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/node-http-handler/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/node-http-handler/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/property-provider": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/property-provider": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14555,11 +15335,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/property-provider/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/property-provider/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/protocol-http": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/protocol-http": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14570,11 +15350,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/protocol-http/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/protocol-http/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/querystring-builder": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/querystring-builder": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14586,11 +15366,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/querystring-parser": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/querystring-parser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14601,18 +15381,18 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/service-error-classification": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/service-error-classification": { "version": "3.6.1", "license": "Apache-2.0", "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/shared-ini-file-loader": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/shared-ini-file-loader": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14622,11 +15402,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/signature-v4": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/signature-v4": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14640,11 +15420,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/smithy-client": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/smithy-client": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14656,18 +15436,18 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/types": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/types": { "version": "3.6.1", "license": "Apache-2.0", "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/url-parser": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/url-parser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14676,22 +15456,22 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/url-parser/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/url-parser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-body-length-browser": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-body-length-browser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-body-length-node": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-body-length-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14701,11 +15481,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-buffer-from": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-buffer-from": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14716,11 +15496,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-hex-encoding": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-hex-encoding": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14730,11 +15510,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-uri-escape": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-uri-escape": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14744,11 +15524,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-user-agent-browser": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-user-agent-browser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14757,11 +15537,11 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-user-agent-node": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-user-agent-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14773,22 +15553,22 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-utf8-browser": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-utf8-browser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-utf8-node": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-utf8-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14799,11 +15579,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-waiter": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-waiter": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -14815,1020 +15595,779 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-waiter/node_modules/tslib": { + "node_modules/@aws-sdk/client-rekognition/node_modules/@aws-sdk/util-waiter/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-s3/node_modules/fast-xml-parser": { - "version": "3.21.1", - "license": "MIT", - "dependencies": { - "strnum": "^1.0.4" - }, - "bin": { - "xml2js": "cli.js" - }, - "funding": { - "type": "paypal", - "url": "https://paypal.me/naturalintelligence" - } - }, - "node_modules/@aws-sdk/client-s3/node_modules/uuid": { + "node_modules/@aws-sdk/client-rekognition/node_modules/uuid": { "version": "3.4.0", "license": "MIT", "bin": { "uuid": "bin/uuid" } }, - "node_modules/@aws-sdk/client-ses": { - "version": "3.238.0", + "node_modules/@aws-sdk/client-s3": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/client-sts": "3.238.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/credential-provider-node": "3.238.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-signing": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.226.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "@aws-sdk/util-waiter": "3.226.0", - "fast-xml-parser": "4.0.11", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/client-ssm": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-ssm/-/client-ssm-3.271.0.tgz", - "integrity": "sha512-ylDxFxXDAq82kie9q1Df8vejxN0tQHlrdROY/CRiU7xo9mhV0x6O8p3w/y+E65Y/BsdN1Q95yz9KrGQaUcmo7A==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sts": "3.271.0", - "@aws-sdk/config-resolver": "3.271.0", - "@aws-sdk/credential-provider-node": "3.271.0", - "@aws-sdk/fetch-http-handler": "3.271.0", - "@aws-sdk/hash-node": "3.271.0", - "@aws-sdk/invalid-dependency": "3.271.0", - "@aws-sdk/middleware-content-length": "3.271.0", - "@aws-sdk/middleware-endpoint": "3.271.0", - "@aws-sdk/middleware-host-header": "3.271.0", - "@aws-sdk/middleware-logger": "3.271.0", - "@aws-sdk/middleware-recursion-detection": "3.271.0", - "@aws-sdk/middleware-retry": "3.271.0", - "@aws-sdk/middleware-serde": "3.271.0", - "@aws-sdk/middleware-signing": "3.271.0", - "@aws-sdk/middleware-stack": "3.271.0", - "@aws-sdk/middleware-user-agent": "3.271.0", - "@aws-sdk/node-config-provider": "3.271.0", - "@aws-sdk/node-http-handler": "3.271.0", - "@aws-sdk/protocol-http": "3.271.0", - "@aws-sdk/smithy-client": "3.271.0", - "@aws-sdk/types": "3.271.0", - "@aws-sdk/url-parser": "3.271.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.271.0", - "@aws-sdk/util-defaults-mode-node": "3.271.0", - "@aws-sdk/util-endpoints": "3.271.0", - "@aws-sdk/util-retry": "3.271.0", - "@aws-sdk/util-user-agent-browser": "3.271.0", - "@aws-sdk/util-user-agent-node": "3.271.0", - "@aws-sdk/util-utf8": "3.254.0", - "@aws-sdk/util-waiter": "3.271.0", - "tslib": "^2.3.1", - "uuid": "^8.3.2" + "@aws-crypto/sha256-browser": "^1.0.0", + "@aws-crypto/sha256-js": "^1.0.0", + "@aws-sdk/config-resolver": "3.6.1", + "@aws-sdk/credential-provider-node": "3.6.1", + "@aws-sdk/eventstream-serde-browser": "3.6.1", + "@aws-sdk/eventstream-serde-config-resolver": "3.6.1", + "@aws-sdk/eventstream-serde-node": "3.6.1", + "@aws-sdk/fetch-http-handler": "3.6.1", + "@aws-sdk/hash-blob-browser": "3.6.1", + "@aws-sdk/hash-node": "3.6.1", + "@aws-sdk/hash-stream-node": "3.6.1", + "@aws-sdk/invalid-dependency": "3.6.1", + "@aws-sdk/md5-js": "3.6.1", + "@aws-sdk/middleware-apply-body-checksum": "3.6.1", + "@aws-sdk/middleware-bucket-endpoint": "3.6.1", + "@aws-sdk/middleware-content-length": "3.6.1", + "@aws-sdk/middleware-expect-continue": "3.6.1", + "@aws-sdk/middleware-host-header": "3.6.1", + "@aws-sdk/middleware-location-constraint": "3.6.1", + "@aws-sdk/middleware-logger": "3.6.1", + "@aws-sdk/middleware-retry": "3.6.1", + "@aws-sdk/middleware-sdk-s3": "3.6.1", + "@aws-sdk/middleware-serde": "3.6.1", + "@aws-sdk/middleware-signing": "3.6.1", + "@aws-sdk/middleware-ssec": "3.6.1", + "@aws-sdk/middleware-stack": "3.6.1", + "@aws-sdk/middleware-user-agent": "3.6.1", + "@aws-sdk/node-config-provider": "3.6.1", + "@aws-sdk/node-http-handler": "3.6.1", + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/smithy-client": "3.6.1", + "@aws-sdk/types": "3.6.1", + "@aws-sdk/url-parser": "3.6.1", + "@aws-sdk/url-parser-native": "3.6.1", + "@aws-sdk/util-base64-browser": "3.6.1", + "@aws-sdk/util-base64-node": "3.6.1", + "@aws-sdk/util-body-length-browser": "3.6.1", + "@aws-sdk/util-body-length-node": "3.6.1", + "@aws-sdk/util-user-agent-browser": "3.6.1", + "@aws-sdk/util-user-agent-node": "3.6.1", + "@aws-sdk/util-utf8-browser": "3.6.1", + "@aws-sdk/util-utf8-node": "3.6.1", + "@aws-sdk/util-waiter": "3.6.1", + "@aws-sdk/xml-builder": "3.6.1", + "fast-xml-parser": "^3.16.0", + "tslib": "^2.0.0" }, "engines": { - "node": ">=14.0.0" + "node": ">=10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/ie11-detection": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz", - "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/ie11-detection": { + "version": "1.0.0", + "license": "Apache-2.0", "dependencies": { "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + "license": "0BSD" }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/sha256-browser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz", - "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/sha256-browser": { + "version": "1.2.2", + "license": "Apache-2.0", "dependencies": { - "@aws-crypto/ie11-detection": "^3.0.0", - "@aws-crypto/sha256-js": "^3.0.0", - "@aws-crypto/supports-web-crypto": "^3.0.0", - "@aws-crypto/util": "^3.0.0", - "@aws-sdk/types": "^3.222.0", + "@aws-crypto/ie11-detection": "^1.0.0", + "@aws-crypto/sha256-js": "^1.2.2", + "@aws-crypto/supports-web-crypto": "^1.0.0", + "@aws-crypto/util": "^1.2.2", + "@aws-sdk/types": "^3.1.0", "@aws-sdk/util-locate-window": "^3.0.0", - "@aws-sdk/util-utf8-browser": "^3.0.0", "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + "license": "0BSD" }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/sha256-js": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-3.0.0.tgz", - "integrity": "sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/sha256-js": { + "version": "1.2.2", + "license": "Apache-2.0", "dependencies": { - "@aws-crypto/util": "^3.0.0", - "@aws-sdk/types": "^3.222.0", + "@aws-crypto/util": "^1.2.2", + "@aws-sdk/types": "^3.1.0", "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + "license": "0BSD" }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/supports-web-crypto": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz", - "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/supports-web-crypto": { + "version": "1.0.0", + "license": "Apache-2.0", "dependencies": { "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + "license": "0BSD" }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/util": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz", - "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/util": { + "version": "1.2.2", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "^3.222.0", + "@aws-sdk/types": "^3.1.0", "@aws-sdk/util-utf8-browser": "^3.0.0", "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/util/node_modules/tslib": { + "node_modules/@aws-sdk/client-s3/node_modules/@aws-crypto/util/node_modules/tslib": { "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + "license": "0BSD" }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/abort-controller": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.271.0.tgz", - "integrity": "sha512-sP4RvP0fvmMySS6hV/EKMrTJ9KVMH85rn1EKvmJ3nBTKRKiR8GQUS/vX+dhLYu+3jRs2P6cY2zjGzpaOcII91w==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/abort-controller": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/client-sso": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.271.0.tgz", - "integrity": "sha512-auWPqok8yJ2UOQfNrvfLNmvf0tRAbekaZRvZZ2TzTKTKd7yz6V7Y5+AdRnp01FHoOQ+8A7MHTXtp7h7i9qltKw==", - "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.271.0", - "@aws-sdk/fetch-http-handler": "3.271.0", - "@aws-sdk/hash-node": "3.271.0", - "@aws-sdk/invalid-dependency": "3.271.0", - "@aws-sdk/middleware-content-length": "3.271.0", - "@aws-sdk/middleware-endpoint": "3.271.0", - "@aws-sdk/middleware-host-header": "3.271.0", - "@aws-sdk/middleware-logger": "3.271.0", - "@aws-sdk/middleware-recursion-detection": "3.271.0", - "@aws-sdk/middleware-retry": "3.271.0", - "@aws-sdk/middleware-serde": "3.271.0", - "@aws-sdk/middleware-stack": "3.271.0", - "@aws-sdk/middleware-user-agent": "3.271.0", - "@aws-sdk/node-config-provider": "3.271.0", - "@aws-sdk/node-http-handler": "3.271.0", - "@aws-sdk/protocol-http": "3.271.0", - "@aws-sdk/smithy-client": "3.271.0", - "@aws-sdk/types": "3.271.0", - "@aws-sdk/url-parser": "3.271.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.271.0", - "@aws-sdk/util-defaults-mode-node": "3.271.0", - "@aws-sdk/util-endpoints": "3.271.0", - "@aws-sdk/util-retry": "3.271.0", - "@aws-sdk/util-user-agent-browser": "3.271.0", - "@aws-sdk/util-user-agent-node": "3.271.0", - "@aws-sdk/util-utf8": "3.254.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" - } + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/client-sso-oidc": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.271.0.tgz", - "integrity": "sha512-pYN8r0slDbP0v2q0SyLKihE2PPfbsF/hH7+11w6OpAMvSGvfm+m8R5rB49Szy3bkDudR0MhLpD6D76yoy9ckrQ==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/config-resolver": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.271.0", - "@aws-sdk/fetch-http-handler": "3.271.0", - "@aws-sdk/hash-node": "3.271.0", - "@aws-sdk/invalid-dependency": "3.271.0", - "@aws-sdk/middleware-content-length": "3.271.0", - "@aws-sdk/middleware-endpoint": "3.271.0", - "@aws-sdk/middleware-host-header": "3.271.0", - "@aws-sdk/middleware-logger": "3.271.0", - "@aws-sdk/middleware-recursion-detection": "3.271.0", - "@aws-sdk/middleware-retry": "3.271.0", - "@aws-sdk/middleware-serde": "3.271.0", - "@aws-sdk/middleware-stack": "3.271.0", - "@aws-sdk/middleware-user-agent": "3.271.0", - "@aws-sdk/node-config-provider": "3.271.0", - "@aws-sdk/node-http-handler": "3.271.0", - "@aws-sdk/protocol-http": "3.271.0", - "@aws-sdk/smithy-client": "3.271.0", - "@aws-sdk/types": "3.271.0", - "@aws-sdk/url-parser": "3.271.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.271.0", - "@aws-sdk/util-defaults-mode-node": "3.271.0", - "@aws-sdk/util-endpoints": "3.271.0", - "@aws-sdk/util-retry": "3.271.0", - "@aws-sdk/util-user-agent-browser": "3.271.0", - "@aws-sdk/util-user-agent-node": "3.271.0", - "@aws-sdk/util-utf8": "3.254.0", - "tslib": "^2.3.1" + "@aws-sdk/signature-v4": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/client-sts": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.271.0.tgz", - "integrity": "sha512-dsLGj1Q3EdqLYNjm0WpeK07wv8Xed6R+tCf+x4KMWOAVAnz72XuoZNWDI2NvACubAniEhpFycMmf39Y6NCAkLg==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-env": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-crypto/sha256-browser": "3.0.0", - "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.271.0", - "@aws-sdk/credential-provider-node": "3.271.0", - "@aws-sdk/fetch-http-handler": "3.271.0", - "@aws-sdk/hash-node": "3.271.0", - "@aws-sdk/invalid-dependency": "3.271.0", - "@aws-sdk/middleware-content-length": "3.271.0", - "@aws-sdk/middleware-endpoint": "3.271.0", - "@aws-sdk/middleware-host-header": "3.271.0", - "@aws-sdk/middleware-logger": "3.271.0", - "@aws-sdk/middleware-recursion-detection": "3.271.0", - "@aws-sdk/middleware-retry": "3.271.0", - "@aws-sdk/middleware-sdk-sts": "3.271.0", - "@aws-sdk/middleware-serde": "3.271.0", - "@aws-sdk/middleware-signing": "3.271.0", - "@aws-sdk/middleware-stack": "3.271.0", - "@aws-sdk/middleware-user-agent": "3.271.0", - "@aws-sdk/node-config-provider": "3.271.0", - "@aws-sdk/node-http-handler": "3.271.0", - "@aws-sdk/protocol-http": "3.271.0", - "@aws-sdk/smithy-client": "3.271.0", - "@aws-sdk/types": "3.271.0", - "@aws-sdk/url-parser": "3.271.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.271.0", - "@aws-sdk/util-defaults-mode-node": "3.271.0", - "@aws-sdk/util-endpoints": "3.271.0", - "@aws-sdk/util-retry": "3.271.0", - "@aws-sdk/util-user-agent-browser": "3.271.0", - "@aws-sdk/util-user-agent-node": "3.271.0", - "@aws-sdk/util-utf8": "3.254.0", - "fast-xml-parser": "4.0.11", - "tslib": "^2.3.1" + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/config-resolver": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.271.0.tgz", - "integrity": "sha512-WNtUjOa9ufKK4+o58YHosjU9J8v494Fb10tHFqD4OspFWLxBKzSJ+r6xpQRcVPucxsmocGJ2QhIiNYo8OySKkA==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-imds": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/signature-v4": "3.271.0", - "@aws-sdk/types": "3.271.0", - "@aws-sdk/util-config-provider": "3.208.0", - "@aws-sdk/util-middleware": "3.271.0", - "tslib": "^2.3.1" + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/credential-provider-env": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.271.0.tgz", - "integrity": "sha512-lKZGcDYe8us2Ep7/AjhLyMMTq0NuVt+M+L1eedBGRuGkx/Hrvn4qwlIvSXZhiodoQVa+Wr1zIah3Z06U0dTaZA==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.271.0", - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/shared-ini-file-loader": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/credential-provider-imds": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.271.0.tgz", - "integrity": "sha512-u3KsjtGBo1SA9HQAVxfA7zHWirlrdKsqsMpnp4eOtixZLoz1e2EytrR5XZem2HND0lzjrUrEPGDPp5OpDtcHxw==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-node": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/node-config-provider": "3.271.0", - "@aws-sdk/property-provider": "3.271.0", - "@aws-sdk/types": "3.271.0", - "@aws-sdk/url-parser": "3.271.0", - "tslib": "^2.3.1" + "@aws-sdk/credential-provider-env": "3.6.1", + "@aws-sdk/credential-provider-imds": "3.6.1", + "@aws-sdk/credential-provider-ini": "3.6.1", + "@aws-sdk/credential-provider-process": "3.6.1", + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/shared-ini-file-loader": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">=10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.271.0.tgz", - "integrity": "sha512-zIclMwXbJeNev74+0tbxLpEO2Js7AhqvR2Msiytz05kOXRyk61NMEavtKRp1YxD2KMptONnvNlbWbNW2rrRDnw==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-process": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/credential-provider-env": "3.271.0", - "@aws-sdk/credential-provider-imds": "3.271.0", - "@aws-sdk/credential-provider-process": "3.271.0", - "@aws-sdk/credential-provider-sso": "3.271.0", - "@aws-sdk/credential-provider-web-identity": "3.271.0", - "@aws-sdk/property-provider": "3.271.0", - "@aws-sdk/shared-ini-file-loader": "3.271.0", - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" + "@aws-sdk/credential-provider-ini": "3.6.1", + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/shared-ini-file-loader": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/credential-provider-node": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.271.0.tgz", - "integrity": "sha512-hfdJ+8QM5xXEm4mF4AfIy6T1fVb2zTaUVm5PfPDHtkggVM1L+QSywEkZ2lUqQZMLbbatJqVLy2EMA91k5kjVrA==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-process/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/fetch-http-handler": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/credential-provider-env": "3.271.0", - "@aws-sdk/credential-provider-imds": "3.271.0", - "@aws-sdk/credential-provider-ini": "3.271.0", - "@aws-sdk/credential-provider-process": "3.271.0", - "@aws-sdk/credential-provider-sso": "3.271.0", - "@aws-sdk/credential-provider-web-identity": "3.271.0", - "@aws-sdk/property-provider": "3.271.0", - "@aws-sdk/shared-ini-file-loader": "3.271.0", - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/querystring-builder": "3.6.1", + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-base64-browser": "3.6.1", + "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/credential-provider-process": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.271.0.tgz", - "integrity": "sha512-Q1HIZYTUYLVe0cNc3HbtFOFzgo3A6PHcmT62T8XClAhFRhkOsJ/KWUybjm8col49/1uqIjKA20E7P7f5Qnn2TQ==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/fetch-http-handler/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/hash-node": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.271.0", - "@aws-sdk/shared-ini-file-loader": "3.271.0", - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-buffer-from": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.271.0.tgz", - "integrity": "sha512-TIvsv4xXTME6UsH7g05IzVDCLujaMmgv45A0KcAyM/J/HvFQ9IBOBdyKGU5zIawPvCWXiqQqZs/kDchdB2sjXA==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/hash-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/invalid-dependency": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/client-sso": "3.271.0", - "@aws-sdk/property-provider": "3.271.0", - "@aws-sdk/shared-ini-file-loader": "3.271.0", - "@aws-sdk/token-providers": "3.271.0", - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.271.0.tgz", - "integrity": "sha512-GD1mg7fMA3ESl0jdzH/+keZHV9Fue/iaGMIWNCUm7M9dOJo0JZbDNzSaMtxZnuA6xtkvw3FiLH6ZxPt0V+7wmg==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/invalid-dependency/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/is-array-buffer": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.271.0", - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/fetch-http-handler": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.271.0.tgz", - "integrity": "sha512-yc0YgKioACFcfs7RPtVHRlpsyYJNdEHkqiWtnRSXG0vuZHAkfvwzchrDK4bizMblnmEV/xbl495ZqDlVbQ0c9A==", - "dependencies": { - "@aws-sdk/protocol-http": "3.271.0", - "@aws-sdk/querystring-builder": "3.271.0", - "@aws-sdk/types": "3.271.0", - "@aws-sdk/util-base64": "3.208.0", - "tslib": "^2.3.1" - } + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/is-array-buffer/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/hash-node": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.271.0.tgz", - "integrity": "sha512-VamRhkGo2uaVe7KhQhdTqpp9y5JKSFNE3yCUZf/o6lGwL9BgBpBiVqzwCePtas7hAphAaOYvefIwx0XLaCeQ1w==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-content-length": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.271.0", - "@aws-sdk/util-buffer-from": "3.208.0", - "@aws-sdk/util-utf8": "3.254.0", - "tslib": "^2.3.1" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/invalid-dependency": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.271.0.tgz", - "integrity": "sha512-ZN8JmN/t+4UTHkQ6wdod2KKLfJcewLS3D/0iZLnvvOzLlymhcHp9QY8t//RObF+WxnlWeCAvZttoMl/a2MLpYQ==", - "dependencies": { - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" - } + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-content-length/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-content-length": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.271.0.tgz", - "integrity": "sha512-bmfqCvjFcowa6jLltJIkGHNXY599Fu9ROoMtYjQiD2ixWHmUpS0I/VivcxXL3uES2qhehxYXyJFyCt7aqRQqcA==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-host-header": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.271.0", - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-endpoint": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.271.0.tgz", - "integrity": "sha512-pibhIe57e68NAfDUY5c7d9zo6WfNwgfclwtrK0nV3OXw9psNeCLGLC1YbzsTun49tm0ICSmkHgmqfsXAVe4HWA==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-host-header/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-logger": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-serde": "3.271.0", - "@aws-sdk/protocol-http": "3.271.0", - "@aws-sdk/signature-v4": "3.271.0", - "@aws-sdk/types": "3.271.0", - "@aws-sdk/url-parser": "3.271.0", - "@aws-sdk/util-config-provider": "3.208.0", - "@aws-sdk/util-middleware": "3.271.0", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-host-header": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.271.0.tgz", - "integrity": "sha512-sp75WZDzDui/Wr3GnQH/db4DXgVdOpKdRQddDsRuULzri8HeJlhMW+JCP+sP0kQmkO06Dagxv1tSmENUxFhPaQ==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-logger/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-retry": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.271.0", - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/service-error-classification": "3.6.1", + "@aws-sdk/types": "3.6.1", + "react-native-get-random-values": "^1.4.0", + "tslib": "^1.8.0", + "uuid": "^3.0.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-logger": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.271.0.tgz", - "integrity": "sha512-mB/vayfsuc20PySSpbbQ56CPER/RAZF5oGkwGuwFI3bY+VwRun0MOnx3yHj7Ja2DN1ZEOH1Hzrb0eUgREozmHw==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-retry/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-serde": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.271.0.tgz", - "integrity": "sha512-prrS/YL3GdLODqVBSgxvpUfo9aPBLB3Km5wNBdbhjjN0rI1RqjD+0LquVgaz6C1VU/I8cYbnxrFYtQVcdgnWpg==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-serde/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-signing": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.271.0", - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/signature-v4": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-retry": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.271.0.tgz", - "integrity": "sha512-yCBXmxbFGT/4czTi+e4z7lV0nbMWctvvzOtl1ssBiG0LagijIhK4KUp0KTnqDJ+yBqxMpd7wNJ1B0NdS0re6Fw==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-signing/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-stack": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.271.0", - "@aws-sdk/service-error-classification": "3.271.0", - "@aws-sdk/types": "3.271.0", - "@aws-sdk/util-middleware": "3.271.0", - "@aws-sdk/util-retry": "3.271.0", - "tslib": "^2.3.1", - "uuid": "^8.3.2" + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-sdk-sts": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.271.0.tgz", - "integrity": "sha512-/h8+PAx+85M+tSL/kl1lWVgHrrodmDRuQuDLXC7ufE6C1JRxRBkWMTOg6S3ZeuKo1Va/8RcAKf7jtkGdIBD5HQ==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-stack/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-signing": "3.271.0", - "@aws-sdk/property-provider": "3.271.0", - "@aws-sdk/protocol-http": "3.271.0", - "@aws-sdk/signature-v4": "3.271.0", - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-serde": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.271.0.tgz", - "integrity": "sha512-louPEKEZP2TtTavMwg4k6IJjEbXC6xV05Wtb4I+ZKzjupoTG80nmLtgPU7rnvweej3D69aeSQETfPoq1N4u4mg==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-user-agent/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/node-config-provider": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/shared-ini-file-loader": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-signing": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.271.0.tgz", - "integrity": "sha512-jCxbt6sehnmV6we2uu0rY5McREJQ9WGQ3HCtjG1qSxm1vJkROX40IUvq7uvwPi3FquqIv2pCc64vLuDdhfs6OA==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/node-config-provider/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/node-http-handler": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.271.0", - "@aws-sdk/protocol-http": "3.271.0", - "@aws-sdk/signature-v4": "3.271.0", - "@aws-sdk/types": "3.271.0", - "@aws-sdk/util-middleware": "3.271.0", - "tslib": "^2.3.1" + "@aws-sdk/abort-controller": "3.6.1", + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/querystring-builder": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-stack": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.271.0.tgz", - "integrity": "sha512-ojbvxVdJRzvHx1SiXTX8z5qtsX/86+puqqmhTNQTed0/sp856rJVHrE+59qrOa8tNX+dHih5nzmjZ2OvhP+duA==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/node-http-handler/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/property-provider": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.271.0.tgz", - "integrity": "sha512-VnoY5DfdkSorT/bM91FPwHduzkRFBTi/MyU/J08xPkuAQfu2CmvIBr8W15XN1ysAZbZVyDir7NeE9MNG6Q/soA==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/property-provider/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/protocol-http": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.271.0", - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/node-config-provider": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.271.0.tgz", - "integrity": "sha512-PbEQ7GRO9/oXXrxIMPkOsL1lKzi3FzMizFj1tLjSkN+lvUaRt2w9Yrb+P3G7Wr2VyniI8QwpAPnebQ+5Rg7yig==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/protocol-http/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/querystring-builder": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.271.0", - "@aws-sdk/shared-ini-file-loader": "3.271.0", - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-uri-escape": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/node-http-handler": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.271.0.tgz", - "integrity": "sha512-r/wLPLUo3HeWHumvnYxP4LvMz1cKpVO7XVognt5caeDakS2CDiFN3NiCO2PFxOGoWCyMDKcroKtIdXETcgrEbQ==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/querystring-parser": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/abort-controller": "3.271.0", - "@aws-sdk/protocol-http": "3.271.0", - "@aws-sdk/querystring-builder": "3.271.0", - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/property-provider": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.271.0.tgz", - "integrity": "sha512-y95eWGs2tbCESZZVqNWbDXOL43y18bZSS0mfac2n7srOfeuVh+4+8Zdhsnz/NW3Ao61+k1IxKCFnX0iKfJSu2Q==", - "dependencies": { - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" - }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/service-error-classification": { + "version": "3.6.1", + "license": "Apache-2.0", "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/protocol-http": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.271.0.tgz", - "integrity": "sha512-WWyS/M+A0NoEBBLbgO1qG7oxEGWvhjsFJgX0Yzz38mKIjW8G/31X9ylaCQoGFSOTn6GXBRqc/i0P86os+wL45Q==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/shared-ini-file-loader": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/querystring-builder": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.271.0.tgz", - "integrity": "sha512-2FKaoeOgCyn2eShq4hZrEBQ9euHYMvh0aFwWrjQgXjUWJmV4Q+/+eob/sEDeeYvkMW45T5aIG7D+hbVowgWZAQ==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/signature-v4": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.271.0", - "@aws-sdk/util-uri-escape": "3.201.0", - "tslib": "^2.3.1" + "@aws-sdk/is-array-buffer": "3.6.1", + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-hex-encoding": "3.6.1", + "@aws-sdk/util-uri-escape": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/querystring-parser": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.271.0.tgz", - "integrity": "sha512-SGcxf+gaSMMST806zQxETEoe3ENWkncQh+cpDNDRo/oS582PMd7tIOAxP9JJdLJGp9UkIdSkTLWXDjzk9Zt02w==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/smithy-client": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" + "@aws-sdk/middleware-stack": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/service-error-classification": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.271.0.tgz", - "integrity": "sha512-yTnxoeCa4uMRfpaaq6oG1h1a01vXQ2al+D0DyX+D5sw7u6RyZOaxxUEbyfEPTN+JtRw+M+zcdlvto3swIwRqoQ==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/types": { + "version": "3.6.1", + "license": "Apache-2.0", "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/shared-ini-file-loader": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.271.0.tgz", - "integrity": "sha512-PR1Hco+r1sH7WlqxaO3Vvl6a8I5juvwVjwjjorbI3EVsxQgEcyCjy1ZVnpCAxY1Xam7ne5nAWO6Y6LtfY4JJ5g==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/url-parser": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" + "@aws-sdk/querystring-parser": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/signature-v4": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.271.0.tgz", - "integrity": "sha512-OzS+h0MGqzukJSrPqVi08pWDGZkq8U/yXf2LfCkQz58Rv/pbCuDIIN7Oab6IwnVPQV7KoCsegYL3e6BpOp1qpA==", - "dependencies": { - "@aws-sdk/is-array-buffer": "3.201.0", - "@aws-sdk/types": "3.271.0", - "@aws-sdk/util-hex-encoding": "3.201.0", - "@aws-sdk/util-middleware": "3.271.0", - "@aws-sdk/util-uri-escape": "3.201.0", - "@aws-sdk/util-utf8": "3.254.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" - } + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/url-parser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/smithy-client": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.271.0.tgz", - "integrity": "sha512-8wqNArFoLx2hy2kT5jV7JsaZ4jIqI535K1WXBCkzVLKNMv6RVYCBN57I5+C5sgVtHCZwy9RLzRHJIGLEIKIfBg==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-body-length-browser": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-stack": "3.271.0", - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" + "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/token-providers": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.271.0.tgz", - "integrity": "sha512-tCh3Pw7VuSGT6yg8n7IeNc25IT8cjPS9Q0YKzjN8rPBZW5iI8/kJyZ7kQBj52JD8WrEYCoxG4hnDvawe1e1lAA==", - "dependencies": { - "@aws-sdk/client-sso-oidc": "3.271.0", - "@aws-sdk/property-provider": "3.271.0", - "@aws-sdk/shared-ini-file-loader": "3.271.0", - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" - } + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/types": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.271.0.tgz", - "integrity": "sha512-w4oNKEaBul7eh2IM97c89xaH9Ti8+e+u/Rc1ZkgNtpnfOpDUU2t3ugJ91ihGH+xtASQCWJTopTDfX5CuKsQQtQ==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-body-length-node": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "tslib": "^2.3.1" + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/url-parser": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.271.0.tgz", - "integrity": "sha512-HuL38pnLaZX4zjlsm9sZfyiPvEK9gFl9viX7wpBJcF50+KgRcj1rasYCy8AfWlCEtL7A214xEutFwGqLfTyDag==", - "dependencies": { - "@aws-sdk/querystring-parser": "3.271.0", - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" - } + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/util-defaults-mode-browser": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.271.0.tgz", - "integrity": "sha512-zyCIT/4PKiBxblZLKcMTNCllKcPhLuE08lIv1fGaqgIZzULFaAGjd/lpTO1q7I2hOt5oFL/4uzTFDrG8g5HJAg==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-buffer-from": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.271.0", - "@aws-sdk/types": "3.271.0", - "bowser": "^2.11.0", - "tslib": "^2.3.1" + "@aws-sdk/is-array-buffer": "3.6.1", + "tslib": "^1.8.0" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/util-defaults-mode-node": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.271.0.tgz", - "integrity": "sha512-QqruC9fkrraoWxrzG7EFX/pOkoLblV2YPsvPHR37DzKSssnsQxOPbiAF95Qw2zocsDrpDuxJEe2RM800vunIsw==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-hex-encoding": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/config-resolver": "3.271.0", - "@aws-sdk/credential-provider-imds": "3.271.0", - "@aws-sdk/node-config-provider": "3.271.0", - "@aws-sdk/property-provider": "3.271.0", - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" + "tslib": "^1.8.0" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/util-endpoints": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.271.0.tgz", - "integrity": "sha512-qr+IWZB0Th+TcarjTW5ZakkbKxBNKlLsnFiw3j+gECDA5raUEyTB3w6tRH0nhPFNzN6cM5P8arKlpm3R7f002Q==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-uri-escape": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/util-middleware": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.271.0.tgz", - "integrity": "sha512-qE+t+JKygIPtXvik1Dy9B2dQx8pJ5NFPms/uFi9kOexCJy8mWd4FApK+sCwT5TGWte+tY2Fg7fcTs5g7ufcsKw==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" + "@aws-sdk/types": "3.6.1", + "bowser": "^2.11.0", + "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/util-retry": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-retry/-/util-retry-3.271.0.tgz", - "integrity": "sha512-tO3nHBtAlBSppM37AJNc/rUwLNypPvkDC7av2cyuCDTaH4OHLd/RqZUtvMtSXJKjxR4v8RiyiQvRVE65u0Ermw==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/service-error-classification": "3.271.0", - "tslib": "^2.3.1" + "@aws-sdk/node-config-provider": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.271.0.tgz", - "integrity": "sha512-nFU4flPzzkG6c46ZKroXtQc6D8g/8ei3nUYJF2Poc+3UD/GiuKASWR+ymALN7Zc2YfR95LcVCNdcm1rDI1WLXA==", - "dependencies": { - "@aws-sdk/types": "3.271.0", - "bowser": "^2.11.0", - "tslib": "^2.3.1" - } + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.271.0.tgz", - "integrity": "sha512-okLJbQ1iBmAH+OdqDd6AmINUAQdLnhi+D9rvp4ZoE5DIhgbzFIuUK6SByB7Rl/9XE76wzkHfRhZJYPyD1cPkQA==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-utf8-browser": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/node-config-provider": "3.271.0", - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "aws-crt": ">=1.0.0" - }, - "peerDependenciesMeta": { - "aws-crt": { - "optional": true - } + "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/util-waiter": { - "version": "3.271.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-waiter/-/util-waiter-3.271.0.tgz", - "integrity": "sha512-xpafmsE7xnP25NK9l/ove1NKlimtxZ9MAve+bNXCs0wX1E2dJJm/dAPRrlfcHHbb1fMOXJG9kqKLJAFtVjsOVQ==", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-utf8-node": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/abort-controller": "3.271.0", - "@aws-sdk/types": "3.271.0", - "tslib": "^2.3.1" + "@aws-sdk/util-buffer-from": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-sso": { - "version": "3.238.0", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-waiter": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.226.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "tslib": "^2.3.1" + "@aws-sdk/abort-controller": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-sso-oidc": { - "version": "3.238.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-waiter/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-s3/node_modules/fast-xml-parser": { + "version": "3.21.1", + "license": "MIT", "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.226.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "tslib": "^2.3.1" + "strnum": "^1.0.4" }, - "engines": { - "node": ">=14.0.0" + "bin": { + "xml2js": "cli.js" + }, + "funding": { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" } }, - "node_modules/@aws-sdk/client-sts": { + "node_modules/@aws-sdk/client-s3/node_modules/uuid": { + "version": "3.4.0", + "license": "MIT", + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/@aws-sdk/client-ses": { "version": "3.238.0", "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "2.0.0", "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/client-sts": "3.238.0", "@aws-sdk/config-resolver": "3.234.0", "@aws-sdk/credential-provider-node": "3.238.0", "@aws-sdk/fetch-http-handler": "3.226.0", @@ -15840,7 +16379,6 @@ "@aws-sdk/middleware-logger": "3.226.0", "@aws-sdk/middleware-recursion-detection": "3.226.0", "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-sdk-sts": "3.226.0", "@aws-sdk/middleware-serde": "3.226.0", "@aws-sdk/middleware-signing": "3.226.0", "@aws-sdk/middleware-stack": "3.226.0", @@ -15862,6 +16400,7 @@ "@aws-sdk/util-user-agent-node": "3.226.0", "@aws-sdk/util-utf8-browser": "3.188.0", "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/util-waiter": "3.226.0", "fast-xml-parser": "4.0.11", "tslib": "^2.3.1" }, @@ -15869,53 +16408,54 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-support/-/client-support-3.257.0.tgz", - "integrity": "sha512-cPcioIVbdqfsoRywHxHTUGHFumKyvXpVztRtDkKz/5mUY1OWBueRRwuNCV3HtuNww9Pregc32/x+fPQf9U9H/A==", + "node_modules/@aws-sdk/client-ssm": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-ssm/-/client-ssm-3.271.0.tgz", + "integrity": "sha512-ylDxFxXDAq82kie9q1Df8vejxN0tQHlrdROY/CRiU7xo9mhV0x6O8p3w/y+E65Y/BsdN1Q95yz9KrGQaUcmo7A==", "dependencies": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sts": "3.257.0", - "@aws-sdk/config-resolver": "3.257.0", - "@aws-sdk/credential-provider-node": "3.257.0", - "@aws-sdk/fetch-http-handler": "3.257.0", - "@aws-sdk/hash-node": "3.257.0", - "@aws-sdk/invalid-dependency": "3.257.0", - "@aws-sdk/middleware-content-length": "3.257.0", - "@aws-sdk/middleware-endpoint": "3.257.0", - "@aws-sdk/middleware-host-header": "3.257.0", - "@aws-sdk/middleware-logger": "3.257.0", - "@aws-sdk/middleware-recursion-detection": "3.257.0", - "@aws-sdk/middleware-retry": "3.257.0", - "@aws-sdk/middleware-serde": "3.257.0", - "@aws-sdk/middleware-signing": "3.257.0", - "@aws-sdk/middleware-stack": "3.257.0", - "@aws-sdk/middleware-user-agent": "3.257.0", - "@aws-sdk/node-config-provider": "3.257.0", - "@aws-sdk/node-http-handler": "3.257.0", - "@aws-sdk/protocol-http": "3.257.0", - "@aws-sdk/smithy-client": "3.257.0", - "@aws-sdk/types": "3.257.0", - "@aws-sdk/url-parser": "3.257.0", + "@aws-sdk/client-sts": "3.271.0", + "@aws-sdk/config-resolver": "3.271.0", + "@aws-sdk/credential-provider-node": "3.271.0", + "@aws-sdk/fetch-http-handler": "3.271.0", + "@aws-sdk/hash-node": "3.271.0", + "@aws-sdk/invalid-dependency": "3.271.0", + "@aws-sdk/middleware-content-length": "3.271.0", + "@aws-sdk/middleware-endpoint": "3.271.0", + "@aws-sdk/middleware-host-header": "3.271.0", + "@aws-sdk/middleware-logger": "3.271.0", + "@aws-sdk/middleware-recursion-detection": "3.271.0", + "@aws-sdk/middleware-retry": "3.271.0", + "@aws-sdk/middleware-serde": "3.271.0", + "@aws-sdk/middleware-signing": "3.271.0", + "@aws-sdk/middleware-stack": "3.271.0", + "@aws-sdk/middleware-user-agent": "3.271.0", + "@aws-sdk/node-config-provider": "3.271.0", + "@aws-sdk/node-http-handler": "3.271.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/smithy-client": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/url-parser": "3.271.0", "@aws-sdk/util-base64": "3.208.0", "@aws-sdk/util-body-length-browser": "3.188.0", "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.257.0", - "@aws-sdk/util-defaults-mode-node": "3.257.0", - "@aws-sdk/util-endpoints": "3.257.0", - "@aws-sdk/util-retry": "3.257.0", - "@aws-sdk/util-user-agent-browser": "3.257.0", - "@aws-sdk/util-user-agent-node": "3.257.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "tslib": "^2.3.1" + "@aws-sdk/util-defaults-mode-browser": "3.271.0", + "@aws-sdk/util-defaults-mode-node": "3.271.0", + "@aws-sdk/util-endpoints": "3.271.0", + "@aws-sdk/util-retry": "3.271.0", + "@aws-sdk/util-user-agent-browser": "3.271.0", + "@aws-sdk/util-user-agent-node": "3.271.0", + "@aws-sdk/util-utf8": "3.254.0", + "@aws-sdk/util-waiter": "3.271.0", + "tslib": "^2.3.1", + "uuid": "^8.3.2" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-crypto/ie11-detection": { + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/ie11-detection": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz", "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==", @@ -15923,12 +16463,12 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-crypto/sha256-browser": { + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/sha256-browser": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz", "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==", @@ -15943,12 +16483,12 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-crypto/sha256-js": { + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/sha256-js": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-3.0.0.tgz", "integrity": "sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==", @@ -15958,12 +16498,12 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-crypto/supports-web-crypto": { + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/supports-web-crypto": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz", "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==", @@ -15971,12 +16511,12 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-crypto/util": { + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/util": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz", "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==", @@ -15986,149 +16526,146 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-crypto/util/node_modules/tslib": { + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-crypto/util/node_modules/tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/abort-controller": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.257.0.tgz", - "integrity": "sha512-ekWy391lOerS0ZECdhp/c+X7AToJIpfNrCPjuj3bKr+GMQYckGsYsdbm6AUD4sxBmfvuaQmVniSXWovaxwcFcQ==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/abort-controller": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.271.0.tgz", + "integrity": "sha512-sP4RvP0fvmMySS6hV/EKMrTJ9KVMH85rn1EKvmJ3nBTKRKiR8GQUS/vX+dhLYu+3jRs2P6cY2zjGzpaOcII91w==", "dependencies": { - "@aws-sdk/types": "3.257.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/client-sso": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.257.0.tgz", - "integrity": "sha512-sD0yTTctLbjDoSV3hJem+xz9BzusmkkU/4Fts9gEs4C5NjS0YrfPAvQWE++yRzPLPR/dMhDFVCOs7voTzUhUWQ==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/client-sso": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.271.0.tgz", + "integrity": "sha512-auWPqok8yJ2UOQfNrvfLNmvf0tRAbekaZRvZZ2TzTKTKd7yz6V7Y5+AdRnp01FHoOQ+8A7MHTXtp7h7i9qltKw==", "dependencies": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.257.0", - "@aws-sdk/fetch-http-handler": "3.257.0", - "@aws-sdk/hash-node": "3.257.0", - "@aws-sdk/invalid-dependency": "3.257.0", - "@aws-sdk/middleware-content-length": "3.257.0", - "@aws-sdk/middleware-endpoint": "3.257.0", - "@aws-sdk/middleware-host-header": "3.257.0", - "@aws-sdk/middleware-logger": "3.257.0", - "@aws-sdk/middleware-recursion-detection": "3.257.0", - "@aws-sdk/middleware-retry": "3.257.0", - "@aws-sdk/middleware-serde": "3.257.0", - "@aws-sdk/middleware-stack": "3.257.0", - "@aws-sdk/middleware-user-agent": "3.257.0", - "@aws-sdk/node-config-provider": "3.257.0", - "@aws-sdk/node-http-handler": "3.257.0", - "@aws-sdk/protocol-http": "3.257.0", - "@aws-sdk/smithy-client": "3.257.0", - "@aws-sdk/types": "3.257.0", - "@aws-sdk/url-parser": "3.257.0", + "@aws-sdk/config-resolver": "3.271.0", + "@aws-sdk/fetch-http-handler": "3.271.0", + "@aws-sdk/hash-node": "3.271.0", + "@aws-sdk/invalid-dependency": "3.271.0", + "@aws-sdk/middleware-content-length": "3.271.0", + "@aws-sdk/middleware-endpoint": "3.271.0", + "@aws-sdk/middleware-host-header": "3.271.0", + "@aws-sdk/middleware-logger": "3.271.0", + "@aws-sdk/middleware-recursion-detection": "3.271.0", + "@aws-sdk/middleware-retry": "3.271.0", + "@aws-sdk/middleware-serde": "3.271.0", + "@aws-sdk/middleware-stack": "3.271.0", + "@aws-sdk/middleware-user-agent": "3.271.0", + "@aws-sdk/node-config-provider": "3.271.0", + "@aws-sdk/node-http-handler": "3.271.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/smithy-client": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/url-parser": "3.271.0", "@aws-sdk/util-base64": "3.208.0", "@aws-sdk/util-body-length-browser": "3.188.0", "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.257.0", - "@aws-sdk/util-defaults-mode-node": "3.257.0", - "@aws-sdk/util-endpoints": "3.257.0", - "@aws-sdk/util-retry": "3.257.0", - "@aws-sdk/util-user-agent-browser": "3.257.0", - "@aws-sdk/util-user-agent-node": "3.257.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.271.0", + "@aws-sdk/util-defaults-mode-node": "3.271.0", + "@aws-sdk/util-endpoints": "3.271.0", + "@aws-sdk/util-retry": "3.271.0", + "@aws-sdk/util-user-agent-browser": "3.271.0", + "@aws-sdk/util-user-agent-node": "3.271.0", + "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/client-sso-oidc": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.257.0.tgz", - "integrity": "sha512-yXf53Zc7DYt/4j7xGXgWaDVhE/XMDLoid5l8bOb4aDJN6kxgl5bXV/sH3DwND/fA09EQHU1W+9oe/8InVqsliw==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.271.0.tgz", + "integrity": "sha512-pYN8r0slDbP0v2q0SyLKihE2PPfbsF/hH7+11w6OpAMvSGvfm+m8R5rB49Szy3bkDudR0MhLpD6D76yoy9ckrQ==", "dependencies": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.257.0", - "@aws-sdk/fetch-http-handler": "3.257.0", - "@aws-sdk/hash-node": "3.257.0", - "@aws-sdk/invalid-dependency": "3.257.0", - "@aws-sdk/middleware-content-length": "3.257.0", - "@aws-sdk/middleware-endpoint": "3.257.0", - "@aws-sdk/middleware-host-header": "3.257.0", - "@aws-sdk/middleware-logger": "3.257.0", - "@aws-sdk/middleware-recursion-detection": "3.257.0", - "@aws-sdk/middleware-retry": "3.257.0", - "@aws-sdk/middleware-serde": "3.257.0", - "@aws-sdk/middleware-stack": "3.257.0", - "@aws-sdk/middleware-user-agent": "3.257.0", - "@aws-sdk/node-config-provider": "3.257.0", - "@aws-sdk/node-http-handler": "3.257.0", - "@aws-sdk/protocol-http": "3.257.0", - "@aws-sdk/smithy-client": "3.257.0", - "@aws-sdk/types": "3.257.0", - "@aws-sdk/url-parser": "3.257.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.257.0", - "@aws-sdk/util-defaults-mode-node": "3.257.0", - "@aws-sdk/util-endpoints": "3.257.0", - "@aws-sdk/util-retry": "3.257.0", - "@aws-sdk/util-user-agent-browser": "3.257.0", - "@aws-sdk/util-user-agent-node": "3.257.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/config-resolver": "3.271.0", + "@aws-sdk/fetch-http-handler": "3.271.0", + "@aws-sdk/hash-node": "3.271.0", + "@aws-sdk/invalid-dependency": "3.271.0", + "@aws-sdk/middleware-content-length": "3.271.0", + "@aws-sdk/middleware-endpoint": "3.271.0", + "@aws-sdk/middleware-host-header": "3.271.0", + "@aws-sdk/middleware-logger": "3.271.0", + "@aws-sdk/middleware-recursion-detection": "3.271.0", + "@aws-sdk/middleware-retry": "3.271.0", + "@aws-sdk/middleware-serde": "3.271.0", + "@aws-sdk/middleware-stack": "3.271.0", + "@aws-sdk/middleware-user-agent": "3.271.0", + "@aws-sdk/node-config-provider": "3.271.0", + "@aws-sdk/node-http-handler": "3.271.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/smithy-client": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/url-parser": "3.271.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.271.0", + "@aws-sdk/util-defaults-mode-node": "3.271.0", + "@aws-sdk/util-endpoints": "3.271.0", + "@aws-sdk/util-retry": "3.271.0", + "@aws-sdk/util-user-agent-browser": "3.271.0", + "@aws-sdk/util-user-agent-node": "3.271.0", + "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/client-sts": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.257.0.tgz", - "integrity": "sha512-AVNngoDGACR7xs9wTU7hrZSvMfNOGvWP/B/ieA0au3H3KDucjCZzBd3j2vYkR6Cph9dY7YkpU2Gtzn+JXD0b1g==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/client-sts": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.271.0.tgz", + "integrity": "sha512-dsLGj1Q3EdqLYNjm0WpeK07wv8Xed6R+tCf+x4KMWOAVAnz72XuoZNWDI2NvACubAniEhpFycMmf39Y6NCAkLg==", "dependencies": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.257.0", - "@aws-sdk/credential-provider-node": "3.257.0", - "@aws-sdk/fetch-http-handler": "3.257.0", - "@aws-sdk/hash-node": "3.257.0", - "@aws-sdk/invalid-dependency": "3.257.0", - "@aws-sdk/middleware-content-length": "3.257.0", - "@aws-sdk/middleware-endpoint": "3.257.0", - "@aws-sdk/middleware-host-header": "3.257.0", - "@aws-sdk/middleware-logger": "3.257.0", - "@aws-sdk/middleware-recursion-detection": "3.257.0", - "@aws-sdk/middleware-retry": "3.257.0", - "@aws-sdk/middleware-sdk-sts": "3.257.0", - "@aws-sdk/middleware-serde": "3.257.0", - "@aws-sdk/middleware-signing": "3.257.0", - "@aws-sdk/middleware-stack": "3.257.0", - "@aws-sdk/middleware-user-agent": "3.257.0", - "@aws-sdk/node-config-provider": "3.257.0", - "@aws-sdk/node-http-handler": "3.257.0", - "@aws-sdk/protocol-http": "3.257.0", - "@aws-sdk/smithy-client": "3.257.0", - "@aws-sdk/types": "3.257.0", - "@aws-sdk/url-parser": "3.257.0", + "@aws-sdk/config-resolver": "3.271.0", + "@aws-sdk/credential-provider-node": "3.271.0", + "@aws-sdk/fetch-http-handler": "3.271.0", + "@aws-sdk/hash-node": "3.271.0", + "@aws-sdk/invalid-dependency": "3.271.0", + "@aws-sdk/middleware-content-length": "3.271.0", + "@aws-sdk/middleware-endpoint": "3.271.0", + "@aws-sdk/middleware-host-header": "3.271.0", + "@aws-sdk/middleware-logger": "3.271.0", + "@aws-sdk/middleware-recursion-detection": "3.271.0", + "@aws-sdk/middleware-retry": "3.271.0", + "@aws-sdk/middleware-sdk-sts": "3.271.0", + "@aws-sdk/middleware-serde": "3.271.0", + "@aws-sdk/middleware-signing": "3.271.0", + "@aws-sdk/middleware-stack": "3.271.0", + "@aws-sdk/middleware-user-agent": "3.271.0", + "@aws-sdk/node-config-provider": "3.271.0", + "@aws-sdk/node-http-handler": "3.271.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/smithy-client": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/url-parser": "3.271.0", "@aws-sdk/util-base64": "3.208.0", "@aws-sdk/util-body-length-browser": "3.188.0", "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.257.0", - "@aws-sdk/util-defaults-mode-node": "3.257.0", - "@aws-sdk/util-endpoints": "3.257.0", - "@aws-sdk/util-retry": "3.257.0", - "@aws-sdk/util-user-agent-browser": "3.257.0", - "@aws-sdk/util-user-agent-node": "3.257.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.271.0", + "@aws-sdk/util-defaults-mode-node": "3.271.0", + "@aws-sdk/util-endpoints": "3.271.0", + "@aws-sdk/util-retry": "3.271.0", + "@aws-sdk/util-user-agent-browser": "3.271.0", + "@aws-sdk/util-user-agent-node": "3.271.0", + "@aws-sdk/util-utf8": "3.254.0", "fast-xml-parser": "4.0.11", "tslib": "^2.3.1" }, @@ -16136,149 +16673,149 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/config-resolver": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.257.0.tgz", - "integrity": "sha512-jChjr8ayaXoAcUgrRr+JRIJ6bPtEoS+/xW9khpHOmrEX+uBJ7xLPfdS4e6nmxAQpbem9AsUVvf57DXhSh5/nLg==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/config-resolver": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.271.0.tgz", + "integrity": "sha512-WNtUjOa9ufKK4+o58YHosjU9J8v494Fb10tHFqD4OspFWLxBKzSJ+r6xpQRcVPucxsmocGJ2QhIiNYo8OySKkA==", "dependencies": { - "@aws-sdk/signature-v4": "3.257.0", - "@aws-sdk/types": "3.257.0", + "@aws-sdk/signature-v4": "3.271.0", + "@aws-sdk/types": "3.271.0", "@aws-sdk/util-config-provider": "3.208.0", - "@aws-sdk/util-middleware": "3.257.0", + "@aws-sdk/util-middleware": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/credential-provider-env": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.257.0.tgz", - "integrity": "sha512-GsmBi5Di6hk1JAi1iB6/LCY8o+GmlCvJoB7wuoVmXI3VxRVwptUVjuj8EtJbIrVGrF9dSuIRPCzUoSuzEzYGlg==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/credential-provider-env": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.271.0.tgz", + "integrity": "sha512-lKZGcDYe8us2Ep7/AjhLyMMTq0NuVt+M+L1eedBGRuGkx/Hrvn4qwlIvSXZhiodoQVa+Wr1zIah3Z06U0dTaZA==", "dependencies": { - "@aws-sdk/property-provider": "3.257.0", - "@aws-sdk/types": "3.257.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/credential-provider-imds": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.257.0.tgz", - "integrity": "sha512-UrxYkHWndy6s/bZZWH2poIyqdISTbILGTcK9tT8cFaUUrNIEFXiVESZMNNaagy0Dyy9wr80ndumxRkutYga9VA==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/credential-provider-imds": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.271.0.tgz", + "integrity": "sha512-u3KsjtGBo1SA9HQAVxfA7zHWirlrdKsqsMpnp4eOtixZLoz1e2EytrR5XZem2HND0lzjrUrEPGDPp5OpDtcHxw==", "dependencies": { - "@aws-sdk/node-config-provider": "3.257.0", - "@aws-sdk/property-provider": "3.257.0", - "@aws-sdk/types": "3.257.0", - "@aws-sdk/url-parser": "3.257.0", + "@aws-sdk/node-config-provider": "3.271.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/url-parser": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.257.0.tgz", - "integrity": "sha512-69jW9/Os2zGBATQR8Urde+IlzicgJPCO/gAWpm4AYJYT5LSGc0pOuZflSXq+ZfKy3jcSoN0yOFxkoMnmZb8pzg==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.271.0.tgz", + "integrity": "sha512-zIclMwXbJeNev74+0tbxLpEO2Js7AhqvR2Msiytz05kOXRyk61NMEavtKRp1YxD2KMptONnvNlbWbNW2rrRDnw==", "dependencies": { - "@aws-sdk/credential-provider-env": "3.257.0", - "@aws-sdk/credential-provider-imds": "3.257.0", - "@aws-sdk/credential-provider-process": "3.257.0", - "@aws-sdk/credential-provider-sso": "3.257.0", - "@aws-sdk/credential-provider-web-identity": "3.257.0", - "@aws-sdk/property-provider": "3.257.0", - "@aws-sdk/shared-ini-file-loader": "3.257.0", - "@aws-sdk/types": "3.257.0", + "@aws-sdk/credential-provider-env": "3.271.0", + "@aws-sdk/credential-provider-imds": "3.271.0", + "@aws-sdk/credential-provider-process": "3.271.0", + "@aws-sdk/credential-provider-sso": "3.271.0", + "@aws-sdk/credential-provider-web-identity": "3.271.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/shared-ini-file-loader": "3.271.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/credential-provider-node": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.257.0.tgz", - "integrity": "sha512-yXVNOml/w4ipWiRgLWUphGwISqJQRPjALgTsRa0O+CzpaEc/0HRqM8I78VzCzjsb+QE4EP7MZej6tkEAZYgTlg==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/credential-provider-node": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.271.0.tgz", + "integrity": "sha512-hfdJ+8QM5xXEm4mF4AfIy6T1fVb2zTaUVm5PfPDHtkggVM1L+QSywEkZ2lUqQZMLbbatJqVLy2EMA91k5kjVrA==", "dependencies": { - "@aws-sdk/credential-provider-env": "3.257.0", - "@aws-sdk/credential-provider-imds": "3.257.0", - "@aws-sdk/credential-provider-ini": "3.257.0", - "@aws-sdk/credential-provider-process": "3.257.0", - "@aws-sdk/credential-provider-sso": "3.257.0", - "@aws-sdk/credential-provider-web-identity": "3.257.0", - "@aws-sdk/property-provider": "3.257.0", - "@aws-sdk/shared-ini-file-loader": "3.257.0", - "@aws-sdk/types": "3.257.0", + "@aws-sdk/credential-provider-env": "3.271.0", + "@aws-sdk/credential-provider-imds": "3.271.0", + "@aws-sdk/credential-provider-ini": "3.271.0", + "@aws-sdk/credential-provider-process": "3.271.0", + "@aws-sdk/credential-provider-sso": "3.271.0", + "@aws-sdk/credential-provider-web-identity": "3.271.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/shared-ini-file-loader": "3.271.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/credential-provider-process": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.257.0.tgz", - "integrity": "sha512-xK8uYeNXaclaBCGrLi4z2pxPRngqLf5BM5jg2fn57zqvlL9V5gJF972FehrVBL0bfp1/laG0ZJtD2K2sapyWAw==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/credential-provider-process": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.271.0.tgz", + "integrity": "sha512-Q1HIZYTUYLVe0cNc3HbtFOFzgo3A6PHcmT62T8XClAhFRhkOsJ/KWUybjm8col49/1uqIjKA20E7P7f5Qnn2TQ==", "dependencies": { - "@aws-sdk/property-provider": "3.257.0", - "@aws-sdk/shared-ini-file-loader": "3.257.0", - "@aws-sdk/types": "3.257.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/shared-ini-file-loader": "3.271.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.257.0.tgz", - "integrity": "sha512-I/1TQm6WruqxTTPH+Wo2o+YCLenEY0bWq97EQn+d8Cp0N7cNJUDt8BHF22dQtUzd7bvSspVK5M4qCZKAh3fhOg==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.271.0.tgz", + "integrity": "sha512-TIvsv4xXTME6UsH7g05IzVDCLujaMmgv45A0KcAyM/J/HvFQ9IBOBdyKGU5zIawPvCWXiqQqZs/kDchdB2sjXA==", "dependencies": { - "@aws-sdk/client-sso": "3.257.0", - "@aws-sdk/property-provider": "3.257.0", - "@aws-sdk/shared-ini-file-loader": "3.257.0", - "@aws-sdk/token-providers": "3.257.0", - "@aws-sdk/types": "3.257.0", + "@aws-sdk/client-sso": "3.271.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/shared-ini-file-loader": "3.271.0", + "@aws-sdk/token-providers": "3.271.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.257.0.tgz", - "integrity": "sha512-Cm0uvRv4JuIbD0Kp3W0J/vwjADIyCx8HoZi5yg+QIi5nilocuTQ3ajvLeuPVSvFvdy+yaxSc5FxNXquWt7Mngw==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.271.0.tgz", + "integrity": "sha512-GD1mg7fMA3ESl0jdzH/+keZHV9Fue/iaGMIWNCUm7M9dOJo0JZbDNzSaMtxZnuA6xtkvw3FiLH6ZxPt0V+7wmg==", "dependencies": { - "@aws-sdk/property-provider": "3.257.0", - "@aws-sdk/types": "3.257.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/fetch-http-handler": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.257.0.tgz", - "integrity": "sha512-zOF+RzQ+wfF7tq7tGUdPcqUTh3+k2f8KCVJE07A8kCopVq4nBu4NH6Eq29Tjpwdya3YlKvE+kFssuQRRRRex+Q==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/fetch-http-handler": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.271.0.tgz", + "integrity": "sha512-yc0YgKioACFcfs7RPtVHRlpsyYJNdEHkqiWtnRSXG0vuZHAkfvwzchrDK4bizMblnmEV/xbl495ZqDlVbQ0c9A==", "dependencies": { - "@aws-sdk/protocol-http": "3.257.0", - "@aws-sdk/querystring-builder": "3.257.0", - "@aws-sdk/types": "3.257.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/querystring-builder": "3.271.0", + "@aws-sdk/types": "3.271.0", "@aws-sdk/util-base64": "3.208.0", "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/hash-node": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.257.0.tgz", - "integrity": "sha512-W/USUuea5Ep3OJ2U7Ve8/5KN1YsDun2WzOFUxc1PyxXP5pW6OgC15/op0e+bmWPG851clvp5S8ZuroUr3aKi3Q==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/hash-node": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.271.0.tgz", + "integrity": "sha512-VamRhkGo2uaVe7KhQhdTqpp9y5JKSFNE3yCUZf/o6lGwL9BgBpBiVqzwCePtas7hAphAaOYvefIwx0XLaCeQ1w==", "dependencies": { - "@aws-sdk/types": "3.257.0", + "@aws-sdk/types": "3.271.0", "@aws-sdk/util-buffer-from": "3.208.0", "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" @@ -16287,94 +16824,94 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/invalid-dependency": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.257.0.tgz", - "integrity": "sha512-T68SAPRNMEhpke0wlxURgogL7q0B8dfqZsSeS20BVR/lksJxLse9+pbmCDxiu1RrXoEIsEwl5rbLN+Hw8BFFYw==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/invalid-dependency": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.271.0.tgz", + "integrity": "sha512-ZN8JmN/t+4UTHkQ6wdod2KKLfJcewLS3D/0iZLnvvOzLlymhcHp9QY8t//RObF+WxnlWeCAvZttoMl/a2MLpYQ==", "dependencies": { - "@aws-sdk/types": "3.257.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/middleware-content-length": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.257.0.tgz", - "integrity": "sha512-yiawbV2azm6QnMY1L2ypG8PDRdjOcEIvFmT0T7y0F49rfbKJOu21j1ONAoCkLrINK6kMqcD5JSQLVCoURxiTxQ==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-content-length": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.271.0.tgz", + "integrity": "sha512-bmfqCvjFcowa6jLltJIkGHNXY599Fu9ROoMtYjQiD2ixWHmUpS0I/VivcxXL3uES2qhehxYXyJFyCt7aqRQqcA==", "dependencies": { - "@aws-sdk/protocol-http": "3.257.0", - "@aws-sdk/types": "3.257.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/middleware-endpoint": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.257.0.tgz", - "integrity": "sha512-RQNQe/jeVuWZtXXfcOm+e3qMFICY6ERsXUrbt0rjHgvajZCklcrRJgxJSCwrcS7Le3nl9azFPMAMj9L7uSK28g==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-endpoint": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.271.0.tgz", + "integrity": "sha512-pibhIe57e68NAfDUY5c7d9zo6WfNwgfclwtrK0nV3OXw9psNeCLGLC1YbzsTun49tm0ICSmkHgmqfsXAVe4HWA==", "dependencies": { - "@aws-sdk/middleware-serde": "3.257.0", - "@aws-sdk/protocol-http": "3.257.0", - "@aws-sdk/signature-v4": "3.257.0", - "@aws-sdk/types": "3.257.0", - "@aws-sdk/url-parser": "3.257.0", + "@aws-sdk/middleware-serde": "3.271.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/signature-v4": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/url-parser": "3.271.0", "@aws-sdk/util-config-provider": "3.208.0", - "@aws-sdk/util-middleware": "3.257.0", + "@aws-sdk/util-middleware": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/middleware-host-header": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.257.0.tgz", - "integrity": "sha512-gEi9AJdJfRfU8Qr6HK1hfhxTzyV3Giq4B/h7um99hIFAT/GCg9xiPvAOKPo6UeuiKEv3b7RpSL4s6cBvnJMJBA==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-host-header": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.271.0.tgz", + "integrity": "sha512-sp75WZDzDui/Wr3GnQH/db4DXgVdOpKdRQddDsRuULzri8HeJlhMW+JCP+sP0kQmkO06Dagxv1tSmENUxFhPaQ==", "dependencies": { - "@aws-sdk/protocol-http": "3.257.0", - "@aws-sdk/types": "3.257.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/middleware-logger": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.257.0.tgz", - "integrity": "sha512-8RDXW/VbMKBsXDfcCLmROZcWKyrekyiPa3J1aIaBy0tq9o4xpGoXw/lwwIrNVvISAFslb57rteup34bfn6ta6w==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-logger": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.271.0.tgz", + "integrity": "sha512-mB/vayfsuc20PySSpbbQ56CPER/RAZF5oGkwGuwFI3bY+VwRun0MOnx3yHj7Ja2DN1ZEOH1Hzrb0eUgREozmHw==", "dependencies": { - "@aws-sdk/types": "3.257.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.257.0.tgz", - "integrity": "sha512-rUCih6zHh8k9Edf5N5Er4s508FYbwLM0MWTD2axzlj9TjLqEQ9OKED3wHaLffXSDzodd3oTAfJCLPbWQyoZ3ZQ==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.271.0.tgz", + "integrity": "sha512-prrS/YL3GdLODqVBSgxvpUfo9aPBLB3Km5wNBdbhjjN0rI1RqjD+0LquVgaz6C1VU/I8cYbnxrFYtQVcdgnWpg==", "dependencies": { - "@aws-sdk/protocol-http": "3.257.0", - "@aws-sdk/types": "3.257.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/middleware-retry": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.257.0.tgz", - "integrity": "sha512-vDOy4PbSRW2gtgoJZ+yvgyxdlTwbZGpuv/rA2+XYxURmhPMzpmqs4o1DR37LG8O41WouI1rPzA7E+Ffo+iNWjw==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-retry": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.271.0.tgz", + "integrity": "sha512-yCBXmxbFGT/4czTi+e4z7lV0nbMWctvvzOtl1ssBiG0LagijIhK4KUp0KTnqDJ+yBqxMpd7wNJ1B0NdS0re6Fw==", "dependencies": { - "@aws-sdk/protocol-http": "3.257.0", - "@aws-sdk/service-error-classification": "3.257.0", - "@aws-sdk/types": "3.257.0", - "@aws-sdk/util-middleware": "3.257.0", - "@aws-sdk/util-retry": "3.257.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/service-error-classification": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/util-middleware": "3.271.0", + "@aws-sdk/util-retry": "3.271.0", "tslib": "^2.3.1", "uuid": "^8.3.2" }, @@ -16382,54 +16919,54 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/middleware-sdk-sts": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.257.0.tgz", - "integrity": "sha512-d6IJCLRi3O2tm4AFK60WNhIwmMmspj1WzKR1q1TaoPzoREPG2xg+Am18wZBRkCyYuRPPrbizmkvAmAJiUolMAw==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-sdk-sts": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.271.0.tgz", + "integrity": "sha512-/h8+PAx+85M+tSL/kl1lWVgHrrodmDRuQuDLXC7ufE6C1JRxRBkWMTOg6S3ZeuKo1Va/8RcAKf7jtkGdIBD5HQ==", "dependencies": { - "@aws-sdk/middleware-signing": "3.257.0", - "@aws-sdk/property-provider": "3.257.0", - "@aws-sdk/protocol-http": "3.257.0", - "@aws-sdk/signature-v4": "3.257.0", - "@aws-sdk/types": "3.257.0", + "@aws-sdk/middleware-signing": "3.271.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/signature-v4": "3.271.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/middleware-serde": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.257.0.tgz", - "integrity": "sha512-/JasfXPWFq24mnCrx9fxW/ISBSp07RJwhsF14qzm8Qy3Z0z470C+QRM6otTwAkYuuVt1wuLjja5agq3Jtzq7dQ==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-serde": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.271.0.tgz", + "integrity": "sha512-louPEKEZP2TtTavMwg4k6IJjEbXC6xV05Wtb4I+ZKzjupoTG80nmLtgPU7rnvweej3D69aeSQETfPoq1N4u4mg==", "dependencies": { - "@aws-sdk/types": "3.257.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/middleware-signing": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.257.0.tgz", - "integrity": "sha512-hCH3D83LHmm6nqmtNrGTWZCVjsQXrGHIXbd17/qrw7aPFvcAhsiiCncGFP+XsUXEKa2ZqcSNMUyPrx69ofNRZQ==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-signing": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.271.0.tgz", + "integrity": "sha512-jCxbt6sehnmV6we2uu0rY5McREJQ9WGQ3HCtjG1qSxm1vJkROX40IUvq7uvwPi3FquqIv2pCc64vLuDdhfs6OA==", "dependencies": { - "@aws-sdk/property-provider": "3.257.0", - "@aws-sdk/protocol-http": "3.257.0", - "@aws-sdk/signature-v4": "3.257.0", - "@aws-sdk/types": "3.257.0", - "@aws-sdk/util-middleware": "3.257.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/signature-v4": "3.271.0", + "@aws-sdk/types": "3.271.0", + "@aws-sdk/util-middleware": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/middleware-stack": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.257.0.tgz", - "integrity": "sha512-awg2F0SvwACBaw4HIObK8pQGfSqAc4Vy+YFzWSfZNVC35oRO6RsRdKHVU99lRC0LrT2Ptmfghl2DMPSrRDbvlQ==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-stack": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.271.0.tgz", + "integrity": "sha512-ojbvxVdJRzvHx1SiXTX8z5qtsX/86+puqqmhTNQTed0/sp856rJVHrE+59qrOa8tNX+dHih5nzmjZ2OvhP+duA==", "dependencies": { "tslib": "^2.3.1" }, @@ -16437,78 +16974,78 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.257.0.tgz", - "integrity": "sha512-37rt75LZyD0UWpbcFuxEGqwF3DZKSixQPl7AsDe6q3KtrO5gGQB+diH5vbY0txNNYyv5IK9WMwvY73mVmoWRmw==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.271.0.tgz", + "integrity": "sha512-VnoY5DfdkSorT/bM91FPwHduzkRFBTi/MyU/J08xPkuAQfu2CmvIBr8W15XN1ysAZbZVyDir7NeE9MNG6Q/soA==", "dependencies": { - "@aws-sdk/protocol-http": "3.257.0", - "@aws-sdk/types": "3.257.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/node-config-provider": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.257.0.tgz", - "integrity": "sha512-IfGF7+cU0PyB7RpHlgc445ZAUZDWn4ij2HTB6N+xULwFw2TxnyQ2tvo3Gp5caW9VlJ3eXE9wFrynv+JXUIH7Bg==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/node-config-provider": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.271.0.tgz", + "integrity": "sha512-PbEQ7GRO9/oXXrxIMPkOsL1lKzi3FzMizFj1tLjSkN+lvUaRt2w9Yrb+P3G7Wr2VyniI8QwpAPnebQ+5Rg7yig==", "dependencies": { - "@aws-sdk/property-provider": "3.257.0", - "@aws-sdk/shared-ini-file-loader": "3.257.0", - "@aws-sdk/types": "3.257.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/shared-ini-file-loader": "3.271.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/node-http-handler": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.257.0.tgz", - "integrity": "sha512-8KnWHVVwaGKyTlkTU9BSOAiSovNDoagxemU2l10QqBbzUCVpljCUMUkABEGRJ1yoQCl6DJ7RtNkAyZ8Ne/E15A==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/node-http-handler": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.271.0.tgz", + "integrity": "sha512-r/wLPLUo3HeWHumvnYxP4LvMz1cKpVO7XVognt5caeDakS2CDiFN3NiCO2PFxOGoWCyMDKcroKtIdXETcgrEbQ==", "dependencies": { - "@aws-sdk/abort-controller": "3.257.0", - "@aws-sdk/protocol-http": "3.257.0", - "@aws-sdk/querystring-builder": "3.257.0", - "@aws-sdk/types": "3.257.0", + "@aws-sdk/abort-controller": "3.271.0", + "@aws-sdk/protocol-http": "3.271.0", + "@aws-sdk/querystring-builder": "3.271.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/property-provider": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.257.0.tgz", - "integrity": "sha512-3rUbRAcF0GZ5PhDiXhS4yREfZ5hOEtvYEa9S/19OdM5eoypOaLU5XnFcCKfnccSP8SkdgpJujzxOMRWNWadlAQ==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/property-provider": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.271.0.tgz", + "integrity": "sha512-y95eWGs2tbCESZZVqNWbDXOL43y18bZSS0mfac2n7srOfeuVh+4+8Zdhsnz/NW3Ao61+k1IxKCFnX0iKfJSu2Q==", "dependencies": { - "@aws-sdk/types": "3.257.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/protocol-http": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.257.0.tgz", - "integrity": "sha512-xt7LGOgZIvbLS3418AYQLacOqx+mo5j4mPiIMz7f6AaUg+/fBUgESVsncKDqxbEJVwwCXSka8Ca0cntJmoeMSw==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/protocol-http": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.271.0.tgz", + "integrity": "sha512-WWyS/M+A0NoEBBLbgO1qG7oxEGWvhjsFJgX0Yzz38mKIjW8G/31X9ylaCQoGFSOTn6GXBRqc/i0P86os+wL45Q==", "dependencies": { - "@aws-sdk/types": "3.257.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/querystring-builder": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.257.0.tgz", - "integrity": "sha512-mZHWLP7XIkzx1GIXO5WfX/iJ+aY9TWs02RE9FkdL2+by0HEMR65L3brQTbU1mIBJ7BjaPwYH24dljUOSABX7yg==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/querystring-builder": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.271.0.tgz", + "integrity": "sha512-2FKaoeOgCyn2eShq4hZrEBQ9euHYMvh0aFwWrjQgXjUWJmV4Q+/+eob/sEDeeYvkMW45T5aIG7D+hbVowgWZAQ==", "dependencies": { - "@aws-sdk/types": "3.257.0", + "@aws-sdk/types": "3.271.0", "@aws-sdk/util-uri-escape": "3.201.0", "tslib": "^2.3.1" }, @@ -16516,47 +17053,47 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/querystring-parser": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.257.0.tgz", - "integrity": "sha512-UDrE1dEwWrWT8dG2VCrGYrPxCWOkZ1fPTPkjpkR4KZEdQDZBqU5gYZF2xPj8Nz7pjQVHFuW2wFm3XYEk56GEjg==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/querystring-parser": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.271.0.tgz", + "integrity": "sha512-SGcxf+gaSMMST806zQxETEoe3ENWkncQh+cpDNDRo/oS582PMd7tIOAxP9JJdLJGp9UkIdSkTLWXDjzk9Zt02w==", "dependencies": { - "@aws-sdk/types": "3.257.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/service-error-classification": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.257.0.tgz", - "integrity": "sha512-FAyR0XsueGkkqDtkP03cTJQk52NdQ9sZelLynmmlGPUP75LApRPvFe1riKrou6+LsDbwVNVffj6mbDfIcOhaOw==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/service-error-classification": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.271.0.tgz", + "integrity": "sha512-yTnxoeCa4uMRfpaaq6oG1h1a01vXQ2al+D0DyX+D5sw7u6RyZOaxxUEbyfEPTN+JtRw+M+zcdlvto3swIwRqoQ==", "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/shared-ini-file-loader": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.257.0.tgz", - "integrity": "sha512-HNjC1+Wx3xHiJc+CP14GhIdVhfQGSjroAsWseRxAhONocA9Fl1ZX4hx7+sA5c9nOoMVOovi6ivJ/6lCRPTDRrQ==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/shared-ini-file-loader": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.271.0.tgz", + "integrity": "sha512-PR1Hco+r1sH7WlqxaO3Vvl6a8I5juvwVjwjjorbI3EVsxQgEcyCjy1ZVnpCAxY1Xam7ne5nAWO6Y6LtfY4JJ5g==", "dependencies": { - "@aws-sdk/types": "3.257.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/signature-v4": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.257.0.tgz", - "integrity": "sha512-aLQQN59X/D0+ShzPD3Anj5ntdMA/RFeNLOUCDyDvremViGi6yxUS98usQ/8bG5Rq0sW2GGMdbFUFmrDvqdiqEQ==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/signature-v4": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.271.0.tgz", + "integrity": "sha512-OzS+h0MGqzukJSrPqVi08pWDGZkq8U/yXf2LfCkQz58Rv/pbCuDIIN7Oab6IwnVPQV7KoCsegYL3e6BpOp1qpA==", "dependencies": { "@aws-sdk/is-array-buffer": "3.201.0", - "@aws-sdk/types": "3.257.0", + "@aws-sdk/types": "3.271.0", "@aws-sdk/util-hex-encoding": "3.201.0", - "@aws-sdk/util-middleware": "3.257.0", + "@aws-sdk/util-middleware": "3.271.0", "@aws-sdk/util-uri-escape": "3.201.0", "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" @@ -16565,38 +17102,38 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/smithy-client": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.257.0.tgz", - "integrity": "sha512-Vy/en+llpslHG6WZ2yuN+On6u7p2hROEURwAST/lpReAwBETjbsxylkWvP8maeGKQ54u9uC6lIZAOJut2I3INw==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/smithy-client": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.271.0.tgz", + "integrity": "sha512-8wqNArFoLx2hy2kT5jV7JsaZ4jIqI535K1WXBCkzVLKNMv6RVYCBN57I5+C5sgVtHCZwy9RLzRHJIGLEIKIfBg==", "dependencies": { - "@aws-sdk/middleware-stack": "3.257.0", - "@aws-sdk/types": "3.257.0", + "@aws-sdk/middleware-stack": "3.271.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/token-providers": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.257.0.tgz", - "integrity": "sha512-Ysd1dpWiI2oBOrJpkSJkgPsY0dwMtavIBzF3d5JYN1HCl14Aqc2jcNqBjD+7nEeL6CHXcFeyB7jmCDqiuP0V3A==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/token-providers": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.271.0.tgz", + "integrity": "sha512-tCh3Pw7VuSGT6yg8n7IeNc25IT8cjPS9Q0YKzjN8rPBZW5iI8/kJyZ7kQBj52JD8WrEYCoxG4hnDvawe1e1lAA==", "dependencies": { - "@aws-sdk/client-sso-oidc": "3.257.0", - "@aws-sdk/property-provider": "3.257.0", - "@aws-sdk/shared-ini-file-loader": "3.257.0", - "@aws-sdk/types": "3.257.0", + "@aws-sdk/client-sso-oidc": "3.271.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/shared-ini-file-loader": "3.271.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/types": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.257.0.tgz", - "integrity": "sha512-LmqXuBQBGeaGi/3Rp7XiEX1B5IPO2UUfBVvu0wwGqVsmstT0SbOVDZGPmxygACbm64n+PRx3uTSDefRfoiWYZg==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/types": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.271.0.tgz", + "integrity": "sha512-w4oNKEaBul7eh2IM97c89xaH9Ti8+e+u/Rc1ZkgNtpnfOpDUU2t3ugJ91ihGH+xtASQCWJTopTDfX5CuKsQQtQ==", "dependencies": { "tslib": "^2.3.1" }, @@ -16604,23 +17141,23 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/url-parser": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.257.0.tgz", - "integrity": "sha512-Qe/AcFe/NFZHa6cN2afXEQn9ehXxh57dWGdRjfjd2lQqNV4WW1R2pl2Tm1ZJ1dwuCNLJi4NHLMk8lrD3QQ8rdg==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/url-parser": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.271.0.tgz", + "integrity": "sha512-HuL38pnLaZX4zjlsm9sZfyiPvEK9gFl9viX7wpBJcF50+KgRcj1rasYCy8AfWlCEtL7A214xEutFwGqLfTyDag==", "dependencies": { - "@aws-sdk/querystring-parser": "3.257.0", - "@aws-sdk/types": "3.257.0", + "@aws-sdk/querystring-parser": "3.271.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/util-defaults-mode-browser": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.257.0.tgz", - "integrity": "sha512-nkfK+MNacVd3Px/fcAvU0hDeh+r7d+RLLt3sJ5Zc0gGd+i3OQEP58V8QzR9PYMvUvSvGQP16fQVQHSbRZtuWyQ==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/util-defaults-mode-browser": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.271.0.tgz", + "integrity": "sha512-zyCIT/4PKiBxblZLKcMTNCllKcPhLuE08lIv1fGaqgIZzULFaAGjd/lpTO1q7I2hOt5oFL/4uzTFDrG8g5HJAg==", "dependencies": { - "@aws-sdk/property-provider": "3.257.0", - "@aws-sdk/types": "3.257.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/types": "3.271.0", "bowser": "^2.11.0", "tslib": "^2.3.1" }, @@ -16628,38 +17165,38 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/util-defaults-mode-node": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.257.0.tgz", - "integrity": "sha512-qsIb7aPbGFcKbBGoAQmlzv1gMcscgbpfrRh4rgNqkJXVbJ52Ql6+vXXfBmlWaBho0fcsNh5XnYu1fzdCuu+N7g==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/util-defaults-mode-node": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.271.0.tgz", + "integrity": "sha512-QqruC9fkrraoWxrzG7EFX/pOkoLblV2YPsvPHR37DzKSssnsQxOPbiAF95Qw2zocsDrpDuxJEe2RM800vunIsw==", "dependencies": { - "@aws-sdk/config-resolver": "3.257.0", - "@aws-sdk/credential-provider-imds": "3.257.0", - "@aws-sdk/node-config-provider": "3.257.0", - "@aws-sdk/property-provider": "3.257.0", - "@aws-sdk/types": "3.257.0", + "@aws-sdk/config-resolver": "3.271.0", + "@aws-sdk/credential-provider-imds": "3.271.0", + "@aws-sdk/node-config-provider": "3.271.0", + "@aws-sdk/property-provider": "3.271.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/util-endpoints": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.257.0.tgz", - "integrity": "sha512-3bvmRn5XGYzPPWjLuvHBKdJOb+fijnb8Ungu9bfXnTYFsng/ndHUWeHC22O/p8w3OWoRYUIMaZHxdxe27BFozg==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/util-endpoints": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.271.0.tgz", + "integrity": "sha512-qr+IWZB0Th+TcarjTW5ZakkbKxBNKlLsnFiw3j+gECDA5raUEyTB3w6tRH0nhPFNzN6cM5P8arKlpm3R7f002Q==", "dependencies": { - "@aws-sdk/types": "3.257.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/util-middleware": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.257.0.tgz", - "integrity": "sha512-F9ieon8B8eGVs5tyZtAIG3DZEObDvujkspho0qRbUTHUosM0ylJLsMU800fmC/uRHLRrZvb/RSp59+kNDwSAMw==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/util-middleware": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.271.0.tgz", + "integrity": "sha512-qE+t+JKygIPtXvik1Dy9B2dQx8pJ5NFPms/uFi9kOexCJy8mWd4FApK+sCwT5TGWte+tY2Fg7fcTs5g7ufcsKw==", "dependencies": { "tslib": "^2.3.1" }, @@ -16667,35 +17204,35 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/util-retry": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-retry/-/util-retry-3.257.0.tgz", - "integrity": "sha512-l9TOsOAYtZxwW3q5fQKW4rsD9t2HVaBfQ4zBamHkNTfB4vBVvCnz4oxkvSvA2MlxCA6am+K1K/oj917Tpqk53g==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/util-retry": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-retry/-/util-retry-3.271.0.tgz", + "integrity": "sha512-tO3nHBtAlBSppM37AJNc/rUwLNypPvkDC7av2cyuCDTaH4OHLd/RqZUtvMtSXJKjxR4v8RiyiQvRVE65u0Ermw==", "dependencies": { - "@aws-sdk/service-error-classification": "3.257.0", + "@aws-sdk/service-error-classification": "3.271.0", "tslib": "^2.3.1" }, "engines": { "node": ">= 14.0.0" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.257.0.tgz", - "integrity": "sha512-YdavWK6/8Cw6mypEgysGGX/dT9p9qnzFbnN5PQsUY+JJk2Nx8fKFydjGiQ+6rWPeW17RAv9mmbboh9uPVWxVlw==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.271.0.tgz", + "integrity": "sha512-nFU4flPzzkG6c46ZKroXtQc6D8g/8ei3nUYJF2Poc+3UD/GiuKASWR+ymALN7Zc2YfR95LcVCNdcm1rDI1WLXA==", "dependencies": { - "@aws-sdk/types": "3.257.0", + "@aws-sdk/types": "3.271.0", "bowser": "^2.11.0", "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.257.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.257.0.tgz", - "integrity": "sha512-fOHh80kiVomUkABmOv3ZxB/SNLnOPAja7uhQmGWfKHXBkcxTVfWO2KBs5vzU5qhVZA0c1zVEvZPcBdRsonnhlw==", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.271.0.tgz", + "integrity": "sha512-okLJbQ1iBmAH+OdqDd6AmINUAQdLnhi+D9rvp4ZoE5DIhgbzFIuUK6SByB7Rl/9XE76wzkHfRhZJYPyD1cPkQA==", "dependencies": { - "@aws-sdk/node-config-provider": "3.257.0", - "@aws-sdk/types": "3.257.0", + "@aws-sdk/node-config-provider": "3.271.0", + "@aws-sdk/types": "3.271.0", "tslib": "^2.3.1" }, "engines": { @@ -16710,717 +17247,991 @@ } } }, - "node_modules/@aws-sdk/client-textract": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-ssm/node_modules/@aws-sdk/util-waiter": { + "version": "3.271.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-waiter/-/util-waiter-3.271.0.tgz", + "integrity": "sha512-xpafmsE7xnP25NK9l/ove1NKlimtxZ9MAve+bNXCs0wX1E2dJJm/dAPRrlfcHHbb1fMOXJG9kqKLJAFtVjsOVQ==", "dependencies": { - "@aws-crypto/sha256-browser": "^1.0.0", - "@aws-crypto/sha256-js": "^1.0.0", - "@aws-sdk/config-resolver": "3.6.1", - "@aws-sdk/credential-provider-node": "3.6.1", - "@aws-sdk/fetch-http-handler": "3.6.1", - "@aws-sdk/hash-node": "3.6.1", - "@aws-sdk/invalid-dependency": "3.6.1", - "@aws-sdk/middleware-content-length": "3.6.1", - "@aws-sdk/middleware-host-header": "3.6.1", - "@aws-sdk/middleware-logger": "3.6.1", - "@aws-sdk/middleware-retry": "3.6.1", - "@aws-sdk/middleware-serde": "3.6.1", - "@aws-sdk/middleware-signing": "3.6.1", - "@aws-sdk/middleware-stack": "3.6.1", - "@aws-sdk/middleware-user-agent": "3.6.1", - "@aws-sdk/node-config-provider": "3.6.1", - "@aws-sdk/node-http-handler": "3.6.1", - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/smithy-client": "3.6.1", - "@aws-sdk/types": "3.6.1", - "@aws-sdk/url-parser": "3.6.1", - "@aws-sdk/url-parser-native": "3.6.1", - "@aws-sdk/util-base64-browser": "3.6.1", - "@aws-sdk/util-base64-node": "3.6.1", - "@aws-sdk/util-body-length-browser": "3.6.1", - "@aws-sdk/util-body-length-node": "3.6.1", - "@aws-sdk/util-user-agent-browser": "3.6.1", - "@aws-sdk/util-user-agent-node": "3.6.1", - "@aws-sdk/util-utf8-browser": "3.6.1", - "@aws-sdk/util-utf8-node": "3.6.1", - "tslib": "^2.0.0" + "@aws-sdk/abort-controller": "3.271.0", + "@aws-sdk/types": "3.271.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-crypto/ie11-detection": { - "version": "1.0.0", + "node_modules/@aws-sdk/client-sso": { + "version": "3.238.0", "license": "Apache-2.0", "dependencies": { - "tslib": "^1.11.1" + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.226.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.238.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.226.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-crypto/sha256-browser": { - "version": "1.2.2", + "node_modules/@aws-sdk/client-sts": { + "version": "3.238.0", "license": "Apache-2.0", "dependencies": { - "@aws-crypto/ie11-detection": "^1.0.0", - "@aws-crypto/sha256-js": "^1.2.2", - "@aws-crypto/supports-web-crypto": "^1.0.0", - "@aws-crypto/util": "^1.2.2", - "@aws-sdk/types": "^3.1.0", - "@aws-sdk/util-locate-window": "^3.0.0", - "tslib": "^1.11.1" + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/credential-provider-node": "3.238.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-sdk-sts": "3.226.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-signing": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.226.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "fast-xml-parser": "4.0.11", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-support": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-support/-/client-support-3.257.0.tgz", + "integrity": "sha512-cPcioIVbdqfsoRywHxHTUGHFumKyvXpVztRtDkKz/5mUY1OWBueRRwuNCV3HtuNww9Pregc32/x+fPQf9U9H/A==", + "dependencies": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/client-sts": "3.257.0", + "@aws-sdk/config-resolver": "3.257.0", + "@aws-sdk/credential-provider-node": "3.257.0", + "@aws-sdk/fetch-http-handler": "3.257.0", + "@aws-sdk/hash-node": "3.257.0", + "@aws-sdk/invalid-dependency": "3.257.0", + "@aws-sdk/middleware-content-length": "3.257.0", + "@aws-sdk/middleware-endpoint": "3.257.0", + "@aws-sdk/middleware-host-header": "3.257.0", + "@aws-sdk/middleware-logger": "3.257.0", + "@aws-sdk/middleware-recursion-detection": "3.257.0", + "@aws-sdk/middleware-retry": "3.257.0", + "@aws-sdk/middleware-serde": "3.257.0", + "@aws-sdk/middleware-signing": "3.257.0", + "@aws-sdk/middleware-stack": "3.257.0", + "@aws-sdk/middleware-user-agent": "3.257.0", + "@aws-sdk/node-config-provider": "3.257.0", + "@aws-sdk/node-http-handler": "3.257.0", + "@aws-sdk/protocol-http": "3.257.0", + "@aws-sdk/smithy-client": "3.257.0", + "@aws-sdk/types": "3.257.0", + "@aws-sdk/url-parser": "3.257.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.257.0", + "@aws-sdk/util-defaults-mode-node": "3.257.0", + "@aws-sdk/util-endpoints": "3.257.0", + "@aws-sdk/util-retry": "3.257.0", + "@aws-sdk/util-user-agent-browser": "3.257.0", + "@aws-sdk/util-user-agent-node": "3.257.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-crypto/sha256-js": { - "version": "1.2.2", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-crypto/ie11-detection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz", + "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==", "dependencies": { - "@aws-crypto/util": "^1.2.2", - "@aws-sdk/types": "^3.1.0", "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "node_modules/@aws-sdk/client-support/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { "version": "1.14.1", - "license": "0BSD" + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-crypto/supports-web-crypto": { - "version": "1.0.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-crypto/sha256-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz", + "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==", "dependencies": { + "@aws-crypto/ie11-detection": "^3.0.0", + "@aws-crypto/sha256-js": "^3.0.0", + "@aws-crypto/supports-web-crypto": "^3.0.0", + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "node_modules/@aws-sdk/client-support/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { "version": "1.14.1", - "license": "0BSD" + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-crypto/util": { - "version": "1.2.2", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-crypto/sha256-js": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-3.0.0.tgz", + "integrity": "sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==", "dependencies": { - "@aws-sdk/types": "^3.1.0", - "@aws-sdk/util-utf8-browser": "^3.0.0", + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-crypto/util/node_modules/tslib": { + "node_modules/@aws-sdk/client-support/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { "version": "1.14.1", - "license": "0BSD" + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/abort-controller": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-crypto/supports-web-crypto": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz", + "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" + "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { + "node_modules/@aws-sdk/client-support/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { "version": "1.14.1", - "license": "0BSD" + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/config-resolver": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-crypto/util": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz", + "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==", "dependencies": { - "@aws-sdk/signature-v4": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { + "node_modules/@aws-sdk/client-support/node_modules/@aws-crypto/util/node_modules/tslib": { "version": "1.14.1", - "license": "0BSD" + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/credential-provider-env": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/abort-controller": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.257.0.tgz", + "integrity": "sha512-ekWy391lOerS0ZECdhp/c+X7AToJIpfNrCPjuj3bKr+GMQYckGsYsdbm6AUD4sxBmfvuaQmVniSXWovaxwcFcQ==", "dependencies": { - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/credential-provider-imds": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/client-sso": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.257.0.tgz", + "integrity": "sha512-sD0yTTctLbjDoSV3hJem+xz9BzusmkkU/4Fts9gEs4C5NjS0YrfPAvQWE++yRzPLPR/dMhDFVCOs7voTzUhUWQ==", "dependencies": { - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.257.0", + "@aws-sdk/fetch-http-handler": "3.257.0", + "@aws-sdk/hash-node": "3.257.0", + "@aws-sdk/invalid-dependency": "3.257.0", + "@aws-sdk/middleware-content-length": "3.257.0", + "@aws-sdk/middleware-endpoint": "3.257.0", + "@aws-sdk/middleware-host-header": "3.257.0", + "@aws-sdk/middleware-logger": "3.257.0", + "@aws-sdk/middleware-recursion-detection": "3.257.0", + "@aws-sdk/middleware-retry": "3.257.0", + "@aws-sdk/middleware-serde": "3.257.0", + "@aws-sdk/middleware-stack": "3.257.0", + "@aws-sdk/middleware-user-agent": "3.257.0", + "@aws-sdk/node-config-provider": "3.257.0", + "@aws-sdk/node-http-handler": "3.257.0", + "@aws-sdk/protocol-http": "3.257.0", + "@aws-sdk/smithy-client": "3.257.0", + "@aws-sdk/types": "3.257.0", + "@aws-sdk/url-parser": "3.257.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.257.0", + "@aws-sdk/util-defaults-mode-node": "3.257.0", + "@aws-sdk/util-endpoints": "3.257.0", + "@aws-sdk/util-retry": "3.257.0", + "@aws-sdk/util-user-agent-browser": "3.257.0", + "@aws-sdk/util-user-agent-node": "3.257.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.257.0.tgz", + "integrity": "sha512-yXf53Zc7DYt/4j7xGXgWaDVhE/XMDLoid5l8bOb4aDJN6kxgl5bXV/sH3DwND/fA09EQHU1W+9oe/8InVqsliw==", "dependencies": { - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/shared-ini-file-loader": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.257.0", + "@aws-sdk/fetch-http-handler": "3.257.0", + "@aws-sdk/hash-node": "3.257.0", + "@aws-sdk/invalid-dependency": "3.257.0", + "@aws-sdk/middleware-content-length": "3.257.0", + "@aws-sdk/middleware-endpoint": "3.257.0", + "@aws-sdk/middleware-host-header": "3.257.0", + "@aws-sdk/middleware-logger": "3.257.0", + "@aws-sdk/middleware-recursion-detection": "3.257.0", + "@aws-sdk/middleware-retry": "3.257.0", + "@aws-sdk/middleware-serde": "3.257.0", + "@aws-sdk/middleware-stack": "3.257.0", + "@aws-sdk/middleware-user-agent": "3.257.0", + "@aws-sdk/node-config-provider": "3.257.0", + "@aws-sdk/node-http-handler": "3.257.0", + "@aws-sdk/protocol-http": "3.257.0", + "@aws-sdk/smithy-client": "3.257.0", + "@aws-sdk/types": "3.257.0", + "@aws-sdk/url-parser": "3.257.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.257.0", + "@aws-sdk/util-defaults-mode-node": "3.257.0", + "@aws-sdk/util-endpoints": "3.257.0", + "@aws-sdk/util-retry": "3.257.0", + "@aws-sdk/util-user-agent-browser": "3.257.0", + "@aws-sdk/util-user-agent-node": "3.257.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/credential-provider-node": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/client-sts": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.257.0.tgz", + "integrity": "sha512-AVNngoDGACR7xs9wTU7hrZSvMfNOGvWP/B/ieA0au3H3KDucjCZzBd3j2vYkR6Cph9dY7YkpU2Gtzn+JXD0b1g==", "dependencies": { - "@aws-sdk/credential-provider-env": "3.6.1", - "@aws-sdk/credential-provider-imds": "3.6.1", - "@aws-sdk/credential-provider-ini": "3.6.1", - "@aws-sdk/credential-provider-process": "3.6.1", - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/shared-ini-file-loader": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.257.0", + "@aws-sdk/credential-provider-node": "3.257.0", + "@aws-sdk/fetch-http-handler": "3.257.0", + "@aws-sdk/hash-node": "3.257.0", + "@aws-sdk/invalid-dependency": "3.257.0", + "@aws-sdk/middleware-content-length": "3.257.0", + "@aws-sdk/middleware-endpoint": "3.257.0", + "@aws-sdk/middleware-host-header": "3.257.0", + "@aws-sdk/middleware-logger": "3.257.0", + "@aws-sdk/middleware-recursion-detection": "3.257.0", + "@aws-sdk/middleware-retry": "3.257.0", + "@aws-sdk/middleware-sdk-sts": "3.257.0", + "@aws-sdk/middleware-serde": "3.257.0", + "@aws-sdk/middleware-signing": "3.257.0", + "@aws-sdk/middleware-stack": "3.257.0", + "@aws-sdk/middleware-user-agent": "3.257.0", + "@aws-sdk/node-config-provider": "3.257.0", + "@aws-sdk/node-http-handler": "3.257.0", + "@aws-sdk/protocol-http": "3.257.0", + "@aws-sdk/smithy-client": "3.257.0", + "@aws-sdk/types": "3.257.0", + "@aws-sdk/url-parser": "3.257.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.257.0", + "@aws-sdk/util-defaults-mode-node": "3.257.0", + "@aws-sdk/util-endpoints": "3.257.0", + "@aws-sdk/util-retry": "3.257.0", + "@aws-sdk/util-user-agent-browser": "3.257.0", + "@aws-sdk/util-user-agent-node": "3.257.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "fast-xml-parser": "4.0.11", + "tslib": "^2.3.1" }, "engines": { - "node": ">=10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/credential-provider-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/credential-provider-process": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/config-resolver": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.257.0.tgz", + "integrity": "sha512-jChjr8ayaXoAcUgrRr+JRIJ6bPtEoS+/xW9khpHOmrEX+uBJ7xLPfdS4e6nmxAQpbem9AsUVvf57DXhSh5/nLg==", "dependencies": { - "@aws-sdk/credential-provider-ini": "3.6.1", - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/shared-ini-file-loader": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/signature-v4": "3.257.0", + "@aws-sdk/types": "3.257.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.257.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/credential-provider-process/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/fetch-http-handler": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/credential-provider-env": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.257.0.tgz", + "integrity": "sha512-GsmBi5Di6hk1JAi1iB6/LCY8o+GmlCvJoB7wuoVmXI3VxRVwptUVjuj8EtJbIrVGrF9dSuIRPCzUoSuzEzYGlg==", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/querystring-builder": "3.6.1", - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-base64-browser": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/property-provider": "3.257.0", + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/fetch-http-handler/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/hash-node": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/credential-provider-imds": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.257.0.tgz", + "integrity": "sha512-UrxYkHWndy6s/bZZWH2poIyqdISTbILGTcK9tT8cFaUUrNIEFXiVESZMNNaagy0Dyy9wr80ndumxRkutYga9VA==", "dependencies": { - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-buffer-from": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/node-config-provider": "3.257.0", + "@aws-sdk/property-provider": "3.257.0", + "@aws-sdk/types": "3.257.0", + "@aws-sdk/url-parser": "3.257.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/hash-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/invalid-dependency": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.257.0.tgz", + "integrity": "sha512-69jW9/Os2zGBATQR8Urde+IlzicgJPCO/gAWpm4AYJYT5LSGc0pOuZflSXq+ZfKy3jcSoN0yOFxkoMnmZb8pzg==", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/credential-provider-env": "3.257.0", + "@aws-sdk/credential-provider-imds": "3.257.0", + "@aws-sdk/credential-provider-process": "3.257.0", + "@aws-sdk/credential-provider-sso": "3.257.0", + "@aws-sdk/credential-provider-web-identity": "3.257.0", + "@aws-sdk/property-provider": "3.257.0", + "@aws-sdk/shared-ini-file-loader": "3.257.0", + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/invalid-dependency/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/is-array-buffer": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/credential-provider-node": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.257.0.tgz", + "integrity": "sha512-yXVNOml/w4ipWiRgLWUphGwISqJQRPjALgTsRa0O+CzpaEc/0HRqM8I78VzCzjsb+QE4EP7MZej6tkEAZYgTlg==", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/credential-provider-env": "3.257.0", + "@aws-sdk/credential-provider-imds": "3.257.0", + "@aws-sdk/credential-provider-ini": "3.257.0", + "@aws-sdk/credential-provider-process": "3.257.0", + "@aws-sdk/credential-provider-sso": "3.257.0", + "@aws-sdk/credential-provider-web-identity": "3.257.0", + "@aws-sdk/property-provider": "3.257.0", + "@aws-sdk/shared-ini-file-loader": "3.257.0", + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/is-array-buffer/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-content-length": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/credential-provider-process": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.257.0.tgz", + "integrity": "sha512-xK8uYeNXaclaBCGrLi4z2pxPRngqLf5BM5jg2fn57zqvlL9V5gJF972FehrVBL0bfp1/laG0ZJtD2K2sapyWAw==", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/property-provider": "3.257.0", + "@aws-sdk/shared-ini-file-loader": "3.257.0", + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-content-length/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-host-header": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.257.0.tgz", + "integrity": "sha512-I/1TQm6WruqxTTPH+Wo2o+YCLenEY0bWq97EQn+d8Cp0N7cNJUDt8BHF22dQtUzd7bvSspVK5M4qCZKAh3fhOg==", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/client-sso": "3.257.0", + "@aws-sdk/property-provider": "3.257.0", + "@aws-sdk/shared-ini-file-loader": "3.257.0", + "@aws-sdk/token-providers": "3.257.0", + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-host-header/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-logger": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.257.0.tgz", + "integrity": "sha512-Cm0uvRv4JuIbD0Kp3W0J/vwjADIyCx8HoZi5yg+QIi5nilocuTQ3ajvLeuPVSvFvdy+yaxSc5FxNXquWt7Mngw==", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/property-provider": "3.257.0", + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-logger/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/fetch-http-handler": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.257.0.tgz", + "integrity": "sha512-zOF+RzQ+wfF7tq7tGUdPcqUTh3+k2f8KCVJE07A8kCopVq4nBu4NH6Eq29Tjpwdya3YlKvE+kFssuQRRRRex+Q==", + "dependencies": { + "@aws-sdk/protocol-http": "3.257.0", + "@aws-sdk/querystring-builder": "3.257.0", + "@aws-sdk/types": "3.257.0", + "@aws-sdk/util-base64": "3.208.0", + "tslib": "^2.3.1" + } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-retry": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/hash-node": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.257.0.tgz", + "integrity": "sha512-W/USUuea5Ep3OJ2U7Ve8/5KN1YsDun2WzOFUxc1PyxXP5pW6OgC15/op0e+bmWPG851clvp5S8ZuroUr3aKi3Q==", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/service-error-classification": "3.6.1", - "@aws-sdk/types": "3.6.1", - "react-native-get-random-values": "^1.4.0", - "tslib": "^1.8.0", - "uuid": "^3.0.0" + "@aws-sdk/types": "3.257.0", + "@aws-sdk/util-buffer-from": "3.208.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-retry/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/invalid-dependency": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.257.0.tgz", + "integrity": "sha512-T68SAPRNMEhpke0wlxURgogL7q0B8dfqZsSeS20BVR/lksJxLse9+pbmCDxiu1RrXoEIsEwl5rbLN+Hw8BFFYw==", + "dependencies": { + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" + } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-serde": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/middleware-content-length": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.257.0.tgz", + "integrity": "sha512-yiawbV2azm6QnMY1L2ypG8PDRdjOcEIvFmT0T7y0F49rfbKJOu21j1ONAoCkLrINK6kMqcD5JSQLVCoURxiTxQ==", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/protocol-http": "3.257.0", + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-serde/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-signing": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/middleware-endpoint": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.257.0.tgz", + "integrity": "sha512-RQNQe/jeVuWZtXXfcOm+e3qMFICY6ERsXUrbt0rjHgvajZCklcrRJgxJSCwrcS7Le3nl9azFPMAMj9L7uSK28g==", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/signature-v4": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/middleware-serde": "3.257.0", + "@aws-sdk/protocol-http": "3.257.0", + "@aws-sdk/signature-v4": "3.257.0", + "@aws-sdk/types": "3.257.0", + "@aws-sdk/url-parser": "3.257.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.257.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-signing/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-stack": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/middleware-host-header": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.257.0.tgz", + "integrity": "sha512-gEi9AJdJfRfU8Qr6HK1hfhxTzyV3Giq4B/h7um99hIFAT/GCg9xiPvAOKPo6UeuiKEv3b7RpSL4s6cBvnJMJBA==", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/protocol-http": "3.257.0", + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-stack/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/middleware-logger": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.257.0.tgz", + "integrity": "sha512-8RDXW/VbMKBsXDfcCLmROZcWKyrekyiPa3J1aIaBy0tq9o4xpGoXw/lwwIrNVvISAFslb57rteup34bfn6ta6w==", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-user-agent/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/node-config-provider": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.257.0.tgz", + "integrity": "sha512-rUCih6zHh8k9Edf5N5Er4s508FYbwLM0MWTD2axzlj9TjLqEQ9OKED3wHaLffXSDzodd3oTAfJCLPbWQyoZ3ZQ==", "dependencies": { - "@aws-sdk/property-provider": "3.6.1", - "@aws-sdk/shared-ini-file-loader": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/protocol-http": "3.257.0", + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/node-config-provider/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/node-http-handler": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/middleware-retry": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.257.0.tgz", + "integrity": "sha512-vDOy4PbSRW2gtgoJZ+yvgyxdlTwbZGpuv/rA2+XYxURmhPMzpmqs4o1DR37LG8O41WouI1rPzA7E+Ffo+iNWjw==", "dependencies": { - "@aws-sdk/abort-controller": "3.6.1", - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/querystring-builder": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/protocol-http": "3.257.0", + "@aws-sdk/service-error-classification": "3.257.0", + "@aws-sdk/types": "3.257.0", + "@aws-sdk/util-middleware": "3.257.0", + "@aws-sdk/util-retry": "3.257.0", + "tslib": "^2.3.1", + "uuid": "^8.3.2" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/node-http-handler/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/property-provider": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/middleware-sdk-sts": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.257.0.tgz", + "integrity": "sha512-d6IJCLRi3O2tm4AFK60WNhIwmMmspj1WzKR1q1TaoPzoREPG2xg+Am18wZBRkCyYuRPPrbizmkvAmAJiUolMAw==", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/middleware-signing": "3.257.0", + "@aws-sdk/property-provider": "3.257.0", + "@aws-sdk/protocol-http": "3.257.0", + "@aws-sdk/signature-v4": "3.257.0", + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/property-provider/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/protocol-http": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/middleware-serde": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.257.0.tgz", + "integrity": "sha512-/JasfXPWFq24mnCrx9fxW/ISBSp07RJwhsF14qzm8Qy3Z0z470C+QRM6otTwAkYuuVt1wuLjja5agq3Jtzq7dQ==", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/protocol-http/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/querystring-builder": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/middleware-signing": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.257.0.tgz", + "integrity": "sha512-hCH3D83LHmm6nqmtNrGTWZCVjsQXrGHIXbd17/qrw7aPFvcAhsiiCncGFP+XsUXEKa2ZqcSNMUyPrx69ofNRZQ==", "dependencies": { - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-uri-escape": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/property-provider": "3.257.0", + "@aws-sdk/protocol-http": "3.257.0", + "@aws-sdk/signature-v4": "3.257.0", + "@aws-sdk/types": "3.257.0", + "@aws-sdk/util-middleware": "3.257.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/querystring-parser": { - "version": "3.6.1", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/middleware-stack": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.257.0.tgz", + "integrity": "sha512-awg2F0SvwACBaw4HIObK8pQGfSqAc4Vy+YFzWSfZNVC35oRO6RsRdKHVU99lRC0LrT2Ptmfghl2DMPSrRDbvlQ==", + "dependencies": { + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/service-error-classification": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.257.0.tgz", + "integrity": "sha512-37rt75LZyD0UWpbcFuxEGqwF3DZKSixQPl7AsDe6q3KtrO5gGQB+diH5vbY0txNNYyv5IK9WMwvY73mVmoWRmw==", + "dependencies": { + "@aws-sdk/protocol-http": "3.257.0", + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" + }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/shared-ini-file-loader": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/node-config-provider": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.257.0.tgz", + "integrity": "sha512-IfGF7+cU0PyB7RpHlgc445ZAUZDWn4ij2HTB6N+xULwFw2TxnyQ2tvo3Gp5caW9VlJ3eXE9wFrynv+JXUIH7Bg==", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/property-provider": "3.257.0", + "@aws-sdk/shared-ini-file-loader": "3.257.0", + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/signature-v4": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/node-http-handler": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.257.0.tgz", + "integrity": "sha512-8KnWHVVwaGKyTlkTU9BSOAiSovNDoagxemU2l10QqBbzUCVpljCUMUkABEGRJ1yoQCl6DJ7RtNkAyZ8Ne/E15A==", "dependencies": { - "@aws-sdk/is-array-buffer": "3.6.1", - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-hex-encoding": "3.6.1", - "@aws-sdk/util-uri-escape": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/abort-controller": "3.257.0", + "@aws-sdk/protocol-http": "3.257.0", + "@aws-sdk/querystring-builder": "3.257.0", + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/smithy-client": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/property-provider": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.257.0.tgz", + "integrity": "sha512-3rUbRAcF0GZ5PhDiXhS4yREfZ5hOEtvYEa9S/19OdM5eoypOaLU5XnFcCKfnccSP8SkdgpJujzxOMRWNWadlAQ==", "dependencies": { - "@aws-sdk/middleware-stack": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/types": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/protocol-http": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.257.0.tgz", + "integrity": "sha512-xt7LGOgZIvbLS3418AYQLacOqx+mo5j4mPiIMz7f6AaUg+/fBUgESVsncKDqxbEJVwwCXSka8Ca0cntJmoeMSw==", + "dependencies": { + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" + }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/url-parser": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/querystring-builder": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.257.0.tgz", + "integrity": "sha512-mZHWLP7XIkzx1GIXO5WfX/iJ+aY9TWs02RE9FkdL2+by0HEMR65L3brQTbU1mIBJ7BjaPwYH24dljUOSABX7yg==", "dependencies": { - "@aws-sdk/querystring-parser": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.257.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/url-parser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-body-length-browser": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/querystring-parser": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.257.0.tgz", + "integrity": "sha512-UDrE1dEwWrWT8dG2VCrGYrPxCWOkZ1fPTPkjpkR4KZEdQDZBqU5gYZF2xPj8Nz7pjQVHFuW2wFm3XYEk56GEjg==", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/service-error-classification": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.257.0.tgz", + "integrity": "sha512-FAyR0XsueGkkqDtkP03cTJQk52NdQ9sZelLynmmlGPUP75LApRPvFe1riKrou6+LsDbwVNVffj6mbDfIcOhaOw==", + "engines": { + "node": ">=14.0.0" + } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-body-length-node": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/shared-ini-file-loader": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.257.0.tgz", + "integrity": "sha512-HNjC1+Wx3xHiJc+CP14GhIdVhfQGSjroAsWseRxAhONocA9Fl1ZX4hx7+sA5c9nOoMVOovi6ivJ/6lCRPTDRrQ==", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-buffer-from": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/signature-v4": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.257.0.tgz", + "integrity": "sha512-aLQQN59X/D0+ShzPD3Anj5ntdMA/RFeNLOUCDyDvremViGi6yxUS98usQ/8bG5Rq0sW2GGMdbFUFmrDvqdiqEQ==", "dependencies": { - "@aws-sdk/is-array-buffer": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/is-array-buffer": "3.201.0", + "@aws-sdk/types": "3.257.0", + "@aws-sdk/util-hex-encoding": "3.201.0", + "@aws-sdk/util-middleware": "3.257.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-hex-encoding": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/smithy-client": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.257.0.tgz", + "integrity": "sha512-Vy/en+llpslHG6WZ2yuN+On6u7p2hROEURwAST/lpReAwBETjbsxylkWvP8maeGKQ54u9uC6lIZAOJut2I3INw==", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/middleware-stack": "3.257.0", + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/token-providers": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.257.0.tgz", + "integrity": "sha512-Ysd1dpWiI2oBOrJpkSJkgPsY0dwMtavIBzF3d5JYN1HCl14Aqc2jcNqBjD+7nEeL6CHXcFeyB7jmCDqiuP0V3A==", + "dependencies": { + "@aws-sdk/client-sso-oidc": "3.257.0", + "@aws-sdk/property-provider": "3.257.0", + "@aws-sdk/shared-ini-file-loader": "3.257.0", + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-uri-escape": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/types": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.257.0.tgz", + "integrity": "sha512-LmqXuBQBGeaGi/3Rp7XiEX1B5IPO2UUfBVvu0wwGqVsmstT0SbOVDZGPmxygACbm64n+PRx3uTSDefRfoiWYZg==", "dependencies": { - "tslib": "^1.8.0" + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/url-parser": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.257.0.tgz", + "integrity": "sha512-Qe/AcFe/NFZHa6cN2afXEQn9ehXxh57dWGdRjfjd2lQqNV4WW1R2pl2Tm1ZJ1dwuCNLJi4NHLMk8lrD3QQ8rdg==", + "dependencies": { + "@aws-sdk/querystring-parser": "3.257.0", + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" + } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/util-defaults-mode-browser": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.257.0.tgz", + "integrity": "sha512-nkfK+MNacVd3Px/fcAvU0hDeh+r7d+RLLt3sJ5Zc0gGd+i3OQEP58V8QzR9PYMvUvSvGQP16fQVQHSbRZtuWyQ==", "dependencies": { - "@aws-sdk/types": "3.6.1", + "@aws-sdk/property-provider": "3.257.0", + "@aws-sdk/types": "3.257.0", "bowser": "^2.11.0", - "tslib": "^1.8.0" + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/util-defaults-mode-node": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.257.0.tgz", + "integrity": "sha512-qsIb7aPbGFcKbBGoAQmlzv1gMcscgbpfrRh4rgNqkJXVbJ52Ql6+vXXfBmlWaBho0fcsNh5XnYu1fzdCuu+N7g==", "dependencies": { - "@aws-sdk/node-config-provider": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/config-resolver": "3.257.0", + "@aws-sdk/credential-provider-imds": "3.257.0", + "@aws-sdk/node-config-provider": "3.257.0", + "@aws-sdk/property-provider": "3.257.0", + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-utf8-browser": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/util-endpoints": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.257.0.tgz", + "integrity": "sha512-3bvmRn5XGYzPPWjLuvHBKdJOb+fijnb8Ungu9bfXnTYFsng/ndHUWeHC22O/p8w3OWoRYUIMaZHxdxe27BFozg==", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/util-middleware": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.257.0.tgz", + "integrity": "sha512-F9ieon8B8eGVs5tyZtAIG3DZEObDvujkspho0qRbUTHUosM0ylJLsMU800fmC/uRHLRrZvb/RSp59+kNDwSAMw==", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-utf8-node": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/util-retry": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-retry/-/util-retry-3.257.0.tgz", + "integrity": "sha512-l9TOsOAYtZxwW3q5fQKW4rsD9t2HVaBfQ4zBamHkNTfB4vBVvCnz4oxkvSvA2MlxCA6am+K1K/oj917Tpqk53g==", "dependencies": { - "@aws-sdk/util-buffer-from": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/service-error-classification": "3.257.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">= 14.0.0" } }, - "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.257.0.tgz", + "integrity": "sha512-YdavWK6/8Cw6mypEgysGGX/dT9p9qnzFbnN5PQsUY+JJk2Nx8fKFydjGiQ+6rWPeW17RAv9mmbboh9uPVWxVlw==", + "dependencies": { + "@aws-sdk/types": "3.257.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + } }, - "node_modules/@aws-sdk/client-textract/node_modules/uuid": { - "version": "3.4.0", - "license": "MIT", - "bin": { - "uuid": "bin/uuid" + "node_modules/@aws-sdk/client-support/node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.257.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.257.0.tgz", + "integrity": "sha512-fOHh80kiVomUkABmOv3ZxB/SNLnOPAja7uhQmGWfKHXBkcxTVfWO2KBs5vzU5qhVZA0c1zVEvZPcBdRsonnhlw==", + "dependencies": { + "@aws-sdk/node-config-provider": "3.257.0", + "@aws-sdk/types": "3.257.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "aws-crt": ">=1.0.0" + }, + "peerDependenciesMeta": { + "aws-crt": { + "optional": true + } } }, - "node_modules/@aws-sdk/client-translate": { + "node_modules/@aws-sdk/client-textract": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17454,25 +18265,24 @@ "@aws-sdk/util-user-agent-node": "3.6.1", "@aws-sdk/util-utf8-browser": "3.6.1", "@aws-sdk/util-utf8-node": "3.6.1", - "tslib": "^2.0.0", - "uuid": "^3.0.0" + "tslib": "^2.0.0" }, "engines": { "node": ">=10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-crypto/ie11-detection": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-crypto/ie11-detection": { "version": "1.0.0", "license": "Apache-2.0", "dependencies": { "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-crypto/sha256-browser": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-crypto/sha256-browser": { "version": "1.2.2", "license": "Apache-2.0", "dependencies": { @@ -17485,11 +18295,11 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-crypto/sha256-js": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-crypto/sha256-js": { "version": "1.2.2", "license": "Apache-2.0", "dependencies": { @@ -17498,22 +18308,22 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-crypto/supports-web-crypto": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-crypto/supports-web-crypto": { "version": "1.0.0", "license": "Apache-2.0", "dependencies": { "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-crypto/util": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-crypto/util": { "version": "1.2.2", "license": "Apache-2.0", "dependencies": { @@ -17522,11 +18332,11 @@ "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-crypto/util/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-crypto/util/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/abort-controller": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/abort-controller": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17537,11 +18347,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/config-resolver": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/config-resolver": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17553,11 +18363,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/credential-provider-env": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/credential-provider-env": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17569,11 +18379,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/credential-provider-imds": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/credential-provider-imds": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17585,11 +18395,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/credential-provider-ini": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/credential-provider-ini": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17602,11 +18412,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/credential-provider-node": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/credential-provider-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17623,11 +18433,11 @@ "node": ">=10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/credential-provider-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/credential-provider-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/credential-provider-process": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/credential-provider-process": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17641,11 +18451,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/credential-provider-process/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/credential-provider-process/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/fetch-http-handler": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/fetch-http-handler": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17656,11 +18466,11 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/fetch-http-handler/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/fetch-http-handler/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/hash-node": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/hash-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17672,11 +18482,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/hash-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/hash-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/invalid-dependency": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/invalid-dependency": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17684,11 +18494,11 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/invalid-dependency/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/invalid-dependency/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/is-array-buffer": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/is-array-buffer": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17698,11 +18508,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/is-array-buffer/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/is-array-buffer/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-content-length": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-content-length": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17714,11 +18524,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-content-length/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-content-length/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-host-header": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-host-header": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17730,11 +18540,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-host-header/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-host-header/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-logger": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-logger": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17745,11 +18555,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-logger/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-logger/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-retry": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-retry": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17764,11 +18574,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-retry/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-retry/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-serde": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-serde": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17779,11 +18589,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-serde/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-serde/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-signing": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-signing": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17796,11 +18606,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-signing/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-signing/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-stack": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-stack": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17810,11 +18620,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-stack/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-stack/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-user-agent": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-user-agent": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17826,11 +18636,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-user-agent/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/middleware-user-agent/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/node-config-provider": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/node-config-provider": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17843,11 +18653,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/node-config-provider/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/node-config-provider/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/node-http-handler": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/node-http-handler": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17861,11 +18671,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/node-http-handler/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/node-http-handler/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/property-provider": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/property-provider": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17876,11 +18686,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/property-provider/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/property-provider/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/protocol-http": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/protocol-http": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17891,11 +18701,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/protocol-http/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/protocol-http/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/querystring-builder": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/querystring-builder": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17907,11 +18717,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/querystring-parser": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/querystring-parser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17922,18 +18732,18 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/service-error-classification": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/service-error-classification": { "version": "3.6.1", "license": "Apache-2.0", "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/shared-ini-file-loader": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/shared-ini-file-loader": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17943,11 +18753,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/signature-v4": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/signature-v4": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17961,11 +18771,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/smithy-client": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/smithy-client": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17977,18 +18787,18 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/types": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/types": { "version": "3.6.1", "license": "Apache-2.0", "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/url-parser": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/url-parser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -17997,22 +18807,22 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/url-parser/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/url-parser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-body-length-browser": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-body-length-browser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-body-length-node": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-body-length-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -18022,11 +18832,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-buffer-from": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-buffer-from": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -18037,11 +18847,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-hex-encoding": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-hex-encoding": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -18051,11 +18861,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-uri-escape": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-uri-escape": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -18065,11 +18875,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-user-agent-browser": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-user-agent-browser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -18078,11 +18888,11 @@ "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-user-agent-node": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-user-agent-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -18094,22 +18904,22 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-utf8-browser": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-utf8-browser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-utf8-node": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-utf8-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -18120,270 +18930,175 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-textract/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/client-translate/node_modules/uuid": { + "node_modules/@aws-sdk/client-textract/node_modules/uuid": { "version": "3.4.0", "license": "MIT", "bin": { "uuid": "bin/uuid" } }, - "node_modules/@aws-sdk/config-resolver": { - "version": "3.234.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/signature-v4": "3.226.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/util-config-provider": "3.208.0", - "@aws-sdk/util-middleware": "3.226.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/credential-provider-cognito-identity": { + "node_modules/@aws-sdk/client-translate": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/client-cognito-identity": "3.6.1", - "@aws-sdk/property-provider": "3.6.1", + "@aws-crypto/sha256-browser": "^1.0.0", + "@aws-crypto/sha256-js": "^1.0.0", + "@aws-sdk/config-resolver": "3.6.1", + "@aws-sdk/credential-provider-node": "3.6.1", + "@aws-sdk/fetch-http-handler": "3.6.1", + "@aws-sdk/hash-node": "3.6.1", + "@aws-sdk/invalid-dependency": "3.6.1", + "@aws-sdk/middleware-content-length": "3.6.1", + "@aws-sdk/middleware-host-header": "3.6.1", + "@aws-sdk/middleware-logger": "3.6.1", + "@aws-sdk/middleware-retry": "3.6.1", + "@aws-sdk/middleware-serde": "3.6.1", + "@aws-sdk/middleware-signing": "3.6.1", + "@aws-sdk/middleware-stack": "3.6.1", + "@aws-sdk/middleware-user-agent": "3.6.1", + "@aws-sdk/node-config-provider": "3.6.1", + "@aws-sdk/node-http-handler": "3.6.1", + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/smithy-client": "3.6.1", "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/url-parser": "3.6.1", + "@aws-sdk/url-parser-native": "3.6.1", + "@aws-sdk/util-base64-browser": "3.6.1", + "@aws-sdk/util-base64-node": "3.6.1", + "@aws-sdk/util-body-length-browser": "3.6.1", + "@aws-sdk/util-body-length-node": "3.6.1", + "@aws-sdk/util-user-agent-browser": "3.6.1", + "@aws-sdk/util-user-agent-node": "3.6.1", + "@aws-sdk/util-utf8-browser": "3.6.1", + "@aws-sdk/util-utf8-node": "3.6.1", + "tslib": "^2.0.0", + "uuid": "^3.0.0" }, "engines": { - "node": ">= 10.0.0" + "node": ">=10.0.0" } }, - "node_modules/@aws-sdk/credential-provider-cognito-identity/node_modules/@aws-sdk/property-provider": { - "version": "3.6.1", + "node_modules/@aws-sdk/client-translate/node_modules/@aws-crypto/ie11-detection": { + "version": "1.0.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/@aws-sdk/credential-provider-cognito-identity/node_modules/@aws-sdk/types": { - "version": "3.6.1", - "license": "Apache-2.0", - "engines": { - "node": ">= 10.0.0" + "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/credential-provider-cognito-identity/node_modules/tslib": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/credential-provider-env": { - "version": "3.226.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/types": "3.226.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-sdk/credential-provider-imds": { - "version": "3.226.0", + "node_modules/@aws-sdk/client-translate/node_modules/@aws-crypto/sha256-browser": { + "version": "1.2.2", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" + "@aws-crypto/ie11-detection": "^1.0.0", + "@aws-crypto/sha256-js": "^1.2.2", + "@aws-crypto/supports-web-crypto": "^1.0.0", + "@aws-crypto/util": "^1.2.2", + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.238.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/credential-provider-env": "3.226.0", - "@aws-sdk/credential-provider-imds": "3.226.0", - "@aws-sdk/credential-provider-process": "3.226.0", - "@aws-sdk/credential-provider-sso": "3.238.0", - "@aws-sdk/credential-provider-web-identity": "3.226.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/types": "3.226.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" - } + "node_modules/@aws-sdk/client-translate/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" }, - "node_modules/@aws-sdk/credential-provider-node": { - "version": "3.238.0", + "node_modules/@aws-sdk/client-translate/node_modules/@aws-crypto/sha256-js": { + "version": "1.2.2", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/credential-provider-env": "3.226.0", - "@aws-sdk/credential-provider-imds": "3.226.0", - "@aws-sdk/credential-provider-ini": "3.238.0", - "@aws-sdk/credential-provider-process": "3.226.0", - "@aws-sdk/credential-provider-sso": "3.238.0", - "@aws-sdk/credential-provider-web-identity": "3.226.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/types": "3.226.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" + "@aws-crypto/util": "^1.2.2", + "@aws-sdk/types": "^3.1.0", + "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/credential-provider-process": { - "version": "3.226.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/types": "3.226.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" - } + "node_modules/@aws-sdk/client-translate/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" }, - "node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.238.0", + "node_modules/@aws-sdk/client-translate/node_modules/@aws-crypto/supports-web-crypto": { + "version": "1.0.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/client-sso": "3.238.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/token-providers": "3.238.0", - "@aws-sdk/types": "3.226.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" + "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.226.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/types": "3.226.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" - } + "node_modules/@aws-sdk/client-translate/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" }, - "node_modules/@aws-sdk/eventstream-codec": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-translate/node_modules/@aws-crypto/util": { + "version": "1.2.2", "license": "Apache-2.0", "dependencies": { - "@aws-crypto/crc32": "2.0.0", - "@aws-sdk/types": "3.186.0", - "@aws-sdk/util-hex-encoding": "3.186.0", - "tslib": "^2.3.1" - } - }, - "node_modules/@aws-sdk/eventstream-codec/node_modules/@aws-sdk/types": { - "version": "3.186.0", - "license": "Apache-2.0", - "engines": { - "node": ">= 12.0.0" + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" } }, - "node_modules/@aws-sdk/eventstream-codec/node_modules/@aws-sdk/util-hex-encoding": { - "version": "3.186.0", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.3.1" - }, - "engines": { - "node": ">= 12.0.0" - } + "node_modules/@aws-sdk/client-translate/node_modules/@aws-crypto/util/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" }, - "node_modules/@aws-sdk/eventstream-handler-node": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/abort-controller": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/eventstream-codec": "3.186.0", - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/eventstream-handler-node/node_modules/@aws-sdk/types": { - "version": "3.186.0", - "license": "Apache-2.0", - "engines": { - "node": ">= 12.0.0" - } + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/abort-controller/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" }, - "node_modules/@aws-sdk/eventstream-marshaller": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/config-resolver": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-crypto/crc32": "^1.0.0", + "@aws-sdk/signature-v4": "3.6.1", "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-hex-encoding": "3.6.1", "tslib": "^1.8.0" - } - }, - "node_modules/@aws-sdk/eventstream-marshaller/node_modules/@aws-crypto/crc32": { - "version": "1.2.2", - "license": "Apache-2.0", - "dependencies": { - "@aws-crypto/util": "^1.2.2", - "@aws-sdk/types": "^3.1.0", - "tslib": "^1.11.1" - } - }, - "node_modules/@aws-sdk/eventstream-marshaller/node_modules/@aws-crypto/util": { - "version": "1.2.2", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/types": "^3.1.0", - "@aws-sdk/util-utf8-browser": "^3.0.0", - "tslib": "^1.11.1" - } - }, - "node_modules/@aws-sdk/eventstream-marshaller/node_modules/@aws-sdk/types": { - "version": "3.6.1", - "license": "Apache-2.0", + }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/eventstream-marshaller/node_modules/@aws-sdk/util-hex-encoding": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/config-resolver/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/credential-provider-env": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/types": "3.6.1", "tslib": "^1.8.0" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/eventstream-marshaller/node_modules/tslib": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/credential-provider-env/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/eventstream-serde-browser": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/credential-provider-imds": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/eventstream-marshaller": "3.6.1", - "@aws-sdk/eventstream-serde-universal": "3.6.1", + "@aws-sdk/property-provider": "3.6.1", "@aws-sdk/types": "3.6.1", "tslib": "^1.8.0" }, @@ -18391,21 +19106,16 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/eventstream-serde-browser/node_modules/@aws-sdk/types": { - "version": "3.6.1", - "license": "Apache-2.0", - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/@aws-sdk/eventstream-serde-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/credential-provider-imds/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/eventstream-serde-config-resolver": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/credential-provider-ini": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/shared-ini-file-loader": "3.6.1", "@aws-sdk/types": "3.6.1", "tslib": "^1.8.0" }, @@ -18413,23 +19123,38 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/eventstream-serde-config-resolver/node_modules/@aws-sdk/types": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/credential-provider-ini/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/credential-provider-node": { "version": "3.6.1", "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/credential-provider-env": "3.6.1", + "@aws-sdk/credential-provider-imds": "3.6.1", + "@aws-sdk/credential-provider-ini": "3.6.1", + "@aws-sdk/credential-provider-process": "3.6.1", + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/shared-ini-file-loader": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + }, "engines": { - "node": ">= 10.0.0" + "node": ">=10.0.0" } }, - "node_modules/@aws-sdk/eventstream-serde-config-resolver/node_modules/tslib": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/credential-provider-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/eventstream-serde-node": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/credential-provider-process": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/eventstream-marshaller": "3.6.1", - "@aws-sdk/eventstream-serde-universal": "3.6.1", + "@aws-sdk/credential-provider-ini": "3.6.1", + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/shared-ini-file-loader": "3.6.1", "@aws-sdk/types": "3.6.1", "tslib": "^1.8.0" }, @@ -18437,88 +19162,88 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/eventstream-serde-node/node_modules/@aws-sdk/types": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/credential-provider-process/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/fetch-http-handler": { "version": "3.6.1", "license": "Apache-2.0", - "engines": { - "node": ">= 10.0.0" + "dependencies": { + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/querystring-builder": "3.6.1", + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-base64-browser": "3.6.1", + "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/eventstream-serde-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/fetch-http-handler/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/eventstream-serde-universal": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/hash-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/eventstream-marshaller": "3.6.1", "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-buffer-from": "3.6.1", "tslib": "^1.8.0" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/eventstream-serde-universal/node_modules/@aws-sdk/types": { - "version": "3.6.1", - "license": "Apache-2.0", - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/@aws-sdk/eventstream-serde-universal/node_modules/tslib": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/hash-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/fetch-http-handler": { - "version": "3.226.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/querystring-builder": "3.226.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/util-base64": "3.208.0", - "tslib": "^2.3.1" - } - }, - "node_modules/@aws-sdk/hash-blob-browser": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/invalid-dependency": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/chunked-blob-reader": "3.6.1", - "@aws-sdk/chunked-blob-reader-native": "3.6.1", "@aws-sdk/types": "3.6.1", "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/hash-blob-browser/node_modules/@aws-sdk/types": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/invalid-dependency/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/is-array-buffer": { "version": "3.6.1", "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.8.0" + }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/hash-blob-browser/node_modules/tslib": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/is-array-buffer/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/hash-node": { - "version": "3.226.0", + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-content-length": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.226.0", - "@aws-sdk/util-buffer-from": "3.208.0", - "tslib": "^2.3.1" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/hash-stream-node": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-content-length/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-host-header": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { + "@aws-sdk/protocol-http": "3.6.1", "@aws-sdk/types": "3.6.1", "tslib": "^1.8.0" }, @@ -18526,68 +19251,65 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/hash-stream-node/node_modules/@aws-sdk/types": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-host-header/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-logger": { "version": "3.6.1", "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/hash-stream-node/node_modules/tslib": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-logger/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/invalid-dependency": { - "version": "3.226.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/types": "3.226.0", - "tslib": "^2.3.1" - } - }, - "node_modules/@aws-sdk/is-array-buffer": { - "version": "3.201.0", + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-retry": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "tslib": "^2.3.1" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/service-error-classification": "3.6.1", + "@aws-sdk/types": "3.6.1", + "react-native-get-random-values": "^1.4.0", + "tslib": "^1.8.0", + "uuid": "^3.0.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/md5-js": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-retry/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-serde": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-utf8-browser": "3.6.1", "tslib": "^1.8.0" - } - }, - "node_modules/@aws-sdk/md5-js/node_modules/@aws-sdk/types": { - "version": "3.6.1", - "license": "Apache-2.0", + }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/md5-js/node_modules/@aws-sdk/util-utf8-browser": { - "version": "3.6.1", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^1.8.0" - } - }, - "node_modules/@aws-sdk/md5-js/node_modules/tslib": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-serde/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/middleware-apply-body-checksum": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-signing": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/is-array-buffer": "3.6.1", "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/signature-v4": "3.6.1", "@aws-sdk/types": "3.6.1", "tslib": "^1.8.0" }, @@ -18595,7 +19317,11 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/middleware-apply-body-checksum/node_modules/@aws-sdk/is-array-buffer": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-signing/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-stack": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -18605,10 +19331,15 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/middleware-apply-body-checksum/node_modules/@aws-sdk/protocol-http": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-stack/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-user-agent": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { + "@aws-sdk/protocol-http": "3.6.1", "@aws-sdk/types": "3.6.1", "tslib": "^1.8.0" }, @@ -18616,31 +19347,46 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/middleware-apply-body-checksum/node_modules/@aws-sdk/types": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/middleware-user-agent/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/node-config-provider": { "version": "3.6.1", "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/property-provider": "3.6.1", + "@aws-sdk/shared-ini-file-loader": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/middleware-apply-body-checksum/node_modules/tslib": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/node-config-provider/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/middleware-bucket-endpoint": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/node-http-handler": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { + "@aws-sdk/abort-controller": "3.6.1", "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/querystring-builder": "3.6.1", "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-arn-parser": "3.6.1", "tslib": "^1.8.0" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/middleware-bucket-endpoint/node_modules/@aws-sdk/protocol-http": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/node-http-handler/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/property-provider": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -18651,127 +19397,217 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/middleware-bucket-endpoint/node_modules/@aws-sdk/types": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/property-provider/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/protocol-http": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/middleware-bucket-endpoint/node_modules/tslib": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/protocol-http/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/middleware-content-length": { - "version": "3.226.0", + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/querystring-builder": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/types": "3.226.0", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-uri-escape": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/middleware-endpoint": { - "version": "3.226.0", + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/querystring-builder/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/querystring-parser": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/signature-v4": "3.226.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", - "@aws-sdk/util-config-provider": "3.208.0", - "@aws-sdk/util-middleware": "3.226.0", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/middleware-eventstream": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/querystring-parser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/service-error-classification": { + "version": "3.6.1", + "license": "Apache-2.0", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/shared-ini-file-loader": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.186.0", - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/middleware-eventstream/node_modules/@aws-sdk/protocol-http": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/shared-ini-file-loader/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/signature-v4": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.186.0", - "tslib": "^2.3.1" + "@aws-sdk/is-array-buffer": "3.6.1", + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-hex-encoding": "3.6.1", + "@aws-sdk/util-uri-escape": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/middleware-eventstream/node_modules/@aws-sdk/types": { - "version": "3.186.0", + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/signature-v4/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/smithy-client": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/middleware-stack": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/smithy-client/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/types": { + "version": "3.6.1", "license": "Apache-2.0", "engines": { - "node": ">= 12.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/middleware-expect-continue": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/url-parser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-header-default": "3.6.1", - "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/querystring-parser": "3.6.1", "@aws-sdk/types": "3.6.1", "tslib": "^1.8.0" + } + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/url-parser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-body-length-browser": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.8.0" + } + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-body-length-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-body-length-node": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.8.0" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/middleware-expect-continue/node_modules/@aws-sdk/protocol-http": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-body-length-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-buffer-from": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.6.1", + "@aws-sdk/is-array-buffer": "3.6.1", "tslib": "^1.8.0" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/middleware-expect-continue/node_modules/@aws-sdk/types": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-buffer-from/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-hex-encoding": { "version": "3.6.1", "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.8.0" + }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/middleware-expect-continue/node_modules/tslib": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-hex-encoding/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/middleware-header-default": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-uri-escape": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/types": "3.6.1", "tslib": "^1.8.0" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/middleware-header-default/node_modules/@aws-sdk/protocol-http": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-uri-escape/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "3.6.1", + "bowser": "^2.11.0", + "tslib": "^1.8.0" + } + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-user-agent-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-user-agent-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { + "@aws-sdk/node-config-provider": "3.6.1", "@aws-sdk/types": "3.6.1", "tslib": "^1.8.0" }, @@ -18779,33 +19615,63 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/middleware-header-default/node_modules/@aws-sdk/types": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-user-agent-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-utf8-browser": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.8.0" + } + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-utf8-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-utf8-node": { "version": "3.6.1", "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/util-buffer-from": "3.6.1", + "tslib": "^1.8.0" + }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/middleware-header-default/node_modules/tslib": { + "node_modules/@aws-sdk/client-translate/node_modules/@aws-sdk/util-utf8-node/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/middleware-host-header": { - "version": "3.226.0", + "node_modules/@aws-sdk/client-translate/node_modules/uuid": { + "version": "3.4.0", + "license": "MIT", + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/@aws-sdk/config-resolver": { + "version": "3.234.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/signature-v4": "3.226.0", "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.226.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/middleware-location-constraint": { + "node_modules/@aws-sdk/credential-provider-cognito-identity": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { + "@aws-sdk/client-cognito-identity": "3.6.1", + "@aws-sdk/property-provider": "3.6.1", "@aws-sdk/types": "3.6.1", "tslib": "^1.8.0" }, @@ -18813,21 +19679,33 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/middleware-location-constraint/node_modules/@aws-sdk/types": { + "node_modules/@aws-sdk/credential-provider-cognito-identity/node_modules/@aws-sdk/property-provider": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-cognito-identity/node_modules/@aws-sdk/types": { "version": "3.6.1", "license": "Apache-2.0", "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/middleware-location-constraint/node_modules/tslib": { + "node_modules/@aws-sdk/credential-provider-cognito-identity/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/middleware-logger": { + "node_modules/@aws-sdk/credential-provider-env": { "version": "3.226.0", "license": "Apache-2.0", "dependencies": { + "@aws-sdk/property-provider": "3.226.0", "@aws-sdk/types": "3.226.0", "tslib": "^2.3.1" }, @@ -18835,127 +19713,248 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/middleware-recursion-detection": { + "node_modules/@aws-sdk/credential-provider-imds": { "version": "3.226.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/middleware-retry": { - "version": "3.235.0", + "node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.238.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/service-error-classification": "3.229.0", + "@aws-sdk/credential-provider-env": "3.226.0", + "@aws-sdk/credential-provider-imds": "3.226.0", + "@aws-sdk/credential-provider-process": "3.226.0", + "@aws-sdk/credential-provider-sso": "3.238.0", + "@aws-sdk/credential-provider-web-identity": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", "@aws-sdk/types": "3.226.0", - "@aws-sdk/util-middleware": "3.226.0", - "@aws-sdk/util-retry": "3.229.0", - "tslib": "^2.3.1", - "uuid": "^8.3.2" + "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/middleware-sdk-ec2": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-ec2/-/middleware-sdk-ec2-3.266.1.tgz", - "integrity": "sha512-Fymif8a8B9yfKtHeCqwHhbPIYVbLdkXGvgsVzE4R7aXwwKj8tzwDyXw+RArwg1C4FAPn+qS9KARY+oFScLcPjA==", + "node_modules/@aws-sdk/credential-provider-node": { + "version": "3.238.0", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-endpoint": "3.266.1", - "@aws-sdk/protocol-http": "3.266.1", - "@aws-sdk/signature-v4": "3.266.1", - "@aws-sdk/types": "3.266.1", - "@aws-sdk/util-format-url": "3.266.1", + "@aws-sdk/credential-provider-env": "3.226.0", + "@aws-sdk/credential-provider-imds": "3.226.0", + "@aws-sdk/credential-provider-ini": "3.238.0", + "@aws-sdk/credential-provider-process": "3.226.0", + "@aws-sdk/credential-provider-sso": "3.238.0", + "@aws-sdk/credential-provider-web-identity": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/middleware-endpoint": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.266.1.tgz", - "integrity": "sha512-EVnzd51U/Jhz9x68jFwqHjU4KPsLIXfuS1PSNV598OT04WLQXerBx/fvZh17Y4Dmmu6hf/JUWI9PI5To+oC3mQ==", + "node_modules/@aws-sdk/credential-provider-process": { + "version": "3.226.0", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-serde": "3.266.1", - "@aws-sdk/protocol-http": "3.266.1", - "@aws-sdk/signature-v4": "3.266.1", - "@aws-sdk/types": "3.266.1", - "@aws-sdk/url-parser": "3.266.1", - "@aws-sdk/util-config-provider": "3.208.0", - "@aws-sdk/util-middleware": "3.266.1", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/middleware-serde": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.266.1.tgz", - "integrity": "sha512-UFJ4BlRG/MUOJq5afHohkDsMDPAkbuXGCkhTz93MGxbACEOJYoEvsaMjpLft88wu4D11GY1Y2PVFkfxJUYWDXA==", + "node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.238.0", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.266.1", + "@aws-sdk/client-sso": "3.238.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/token-providers": "3.238.0", + "@aws-sdk/types": "3.226.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/protocol-http": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.266.1.tgz", - "integrity": "sha512-8Z1Yfkf59of1R9qRSPmDKIHDo0n5YNCh1FrRLmCRqjjiZ4Ed7FJV/W6YYnJ6VbPcVv1WK6FvwzrGPM2gg4P48Q==", + "node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.226.0", + "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.266.1", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/types": "3.226.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/querystring-builder": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.266.1.tgz", - "integrity": "sha512-D1LoDv3A+c6YIYq6F2T5m8V0C14vQAarSoT6romVIIYCDuMK4R5BwB1NLFRco1dczyAYmqScxdV2C26+xjXJfw==", + "node_modules/@aws-sdk/credential-providers": { + "version": "3.276.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.276.0.tgz", + "integrity": "sha512-pgKP0dRMP48eDfXIcGENKzi6CIA7IVUAqFdWLY1bonq7DGSLveBvD7hkxu1ZXVp6HlucLiGtncgGrRKBmtK6Jg==", "dependencies": { - "@aws-sdk/types": "3.266.1", - "@aws-sdk/util-uri-escape": "3.201.0", + "@aws-sdk/client-cognito-identity": "3.276.0", + "@aws-sdk/client-sso": "3.272.0", + "@aws-sdk/client-sts": "3.276.0", + "@aws-sdk/credential-provider-cognito-identity": "3.276.0", + "@aws-sdk/credential-provider-env": "3.272.0", + "@aws-sdk/credential-provider-imds": "3.272.0", + "@aws-sdk/credential-provider-ini": "3.272.0", + "@aws-sdk/credential-provider-node": "3.272.0", + "@aws-sdk/credential-provider-process": "3.272.0", + "@aws-sdk/credential-provider-sso": "3.272.0", + "@aws-sdk/credential-provider-web-identity": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/querystring-parser": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.266.1.tgz", - "integrity": "sha512-Ck8Ahluj+/eK4FcX8IlbO7DA1MNWdnh1rKjc1qx/ZWh71G/FdZ8Sse33N+Ed/z9v7H8W695dprRT6CuRlqyAbw==", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-crypto/ie11-detection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz", + "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==", "dependencies": { - "@aws-sdk/types": "3.266.1", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-crypto/sha256-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz", + "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==", + "dependencies": { + "@aws-crypto/ie11-detection": "^3.0.0", + "@aws-crypto/sha256-js": "^3.0.0", + "@aws-crypto/supports-web-crypto": "^3.0.0", + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-crypto/sha256-js": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-3.0.0.tgz", + "integrity": "sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==", + "dependencies": { + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-crypto/supports-web-crypto": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz", + "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==", + "dependencies": { + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-crypto/util": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz", + "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==", + "dependencies": { + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-crypto/util/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/abort-controller": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.272.0.tgz", + "integrity": "sha512-s2TV3phapcTwZNr4qLxbfuQuE9ZMP4RoJdkvRRCkKdm6jslsWLJf2Zlcxti/23hOlINUMYv2iXE2pftIgWGdpg==", + "dependencies": { + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/signature-v4": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.266.1.tgz", - "integrity": "sha512-kiHHA3voQKz4QYLKbR/3hKkY2n62MuGewYctvtQsh1069U/OI7FVceIE5hZnrlC5XX4jiNoF1lKdyRhXmK5GMQ==", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/client-cognito-identity": { + "version": "3.276.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.276.0.tgz", + "integrity": "sha512-haFxr8QKNxoRLIWyawc4EfEN6ep4yrWv5e5KWzbulJaw6QwLKmTCLyv09mScbk1FUgpn1MaIy2mJiijiu2RJJQ==", "dependencies": { - "@aws-sdk/is-array-buffer": "3.201.0", - "@aws-sdk/types": "3.266.1", - "@aws-sdk/util-hex-encoding": "3.201.0", - "@aws-sdk/util-middleware": "3.266.1", - "@aws-sdk/util-uri-escape": "3.201.0", + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/client-sts": "3.276.0", + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/credential-provider-node": "3.272.0", + "@aws-sdk/fetch-http-handler": "3.272.0", + "@aws-sdk/hash-node": "3.272.0", + "@aws-sdk/invalid-dependency": "3.272.0", + "@aws-sdk/middleware-content-length": "3.272.0", + "@aws-sdk/middleware-endpoint": "3.272.0", + "@aws-sdk/middleware-host-header": "3.272.0", + "@aws-sdk/middleware-logger": "3.272.0", + "@aws-sdk/middleware-recursion-detection": "3.272.0", + "@aws-sdk/middleware-retry": "3.272.0", + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/middleware-signing": "3.272.0", + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/middleware-user-agent": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/node-http-handler": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/smithy-client": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.272.0", + "@aws-sdk/util-defaults-mode-node": "3.272.0", + "@aws-sdk/util-endpoints": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", + "@aws-sdk/util-user-agent-browser": "3.272.0", + "@aws-sdk/util-user-agent-node": "3.272.0", "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" }, @@ -18963,409 +19962,611 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/types": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.266.1.tgz", - "integrity": "sha512-OVg3CjHKT3/Ws33jx3TUYYkbFOv/CLb9m3P4gZQDvgKPsOagp96LOsG8ZWdcVZCvSorAUqSb5kuc1utsjJxDTw==", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/client-sso": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.272.0.tgz", + "integrity": "sha512-xn9a0IGONwQIARmngThoRhF1lLGjHAD67sUaShgIMaIMc6ipVYN6alWG1VuUpoUQ6iiwMEt0CHdfCyLyUV/fTA==", "dependencies": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/fetch-http-handler": "3.272.0", + "@aws-sdk/hash-node": "3.272.0", + "@aws-sdk/invalid-dependency": "3.272.0", + "@aws-sdk/middleware-content-length": "3.272.0", + "@aws-sdk/middleware-endpoint": "3.272.0", + "@aws-sdk/middleware-host-header": "3.272.0", + "@aws-sdk/middleware-logger": "3.272.0", + "@aws-sdk/middleware-recursion-detection": "3.272.0", + "@aws-sdk/middleware-retry": "3.272.0", + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/middleware-user-agent": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/node-http-handler": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/smithy-client": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.272.0", + "@aws-sdk/util-defaults-mode-node": "3.272.0", + "@aws-sdk/util-endpoints": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", + "@aws-sdk/util-user-agent-browser": "3.272.0", + "@aws-sdk/util-user-agent-node": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/url-parser": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.266.1.tgz", - "integrity": "sha512-7IBZ8TjTWafug26CnNpz6cdrLU0TZ0G7N9LNfqjM/+69KI/Ragvv2Lsm4jhSv2uMx5OEzwlVYIEYaKMnAUiRLQ==", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.272.0.tgz", + "integrity": "sha512-ECcXu3xoa1yggnGKMTh29eWNHiF/wC6r5Uqbla22eOOosyh0+Z6lkJ3JUSLOUKCkBXA4Cs/tJL9UDFBrKbSlvA==", "dependencies": { - "@aws-sdk/querystring-parser": "3.266.1", - "@aws-sdk/types": "3.266.1", + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/fetch-http-handler": "3.272.0", + "@aws-sdk/hash-node": "3.272.0", + "@aws-sdk/invalid-dependency": "3.272.0", + "@aws-sdk/middleware-content-length": "3.272.0", + "@aws-sdk/middleware-endpoint": "3.272.0", + "@aws-sdk/middleware-host-header": "3.272.0", + "@aws-sdk/middleware-logger": "3.272.0", + "@aws-sdk/middleware-recursion-detection": "3.272.0", + "@aws-sdk/middleware-retry": "3.272.0", + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/middleware-user-agent": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/node-http-handler": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/smithy-client": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.272.0", + "@aws-sdk/util-defaults-mode-node": "3.272.0", + "@aws-sdk/util-endpoints": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", + "@aws-sdk/util-user-agent-browser": "3.272.0", + "@aws-sdk/util-user-agent-node": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/util-format-url": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-format-url/-/util-format-url-3.266.1.tgz", - "integrity": "sha512-hCOgeAv1Oc4vK9VIkvbruchXXTxutFgLYFvqt43q5Tnu2jXyWinnIsenKS0PszUxuccmqy/fDcoYQWAqRML1fQ==", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/client-sts": { + "version": "3.276.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.276.0.tgz", + "integrity": "sha512-J6FR4tYa/WdDdwWAKhw/mXQXKWUaZZQpMiyFEbFPQyURSWu3u17nv97NUdvVOgCth48H6Wb6a4ksssYy4K9tFQ==", "dependencies": { - "@aws-sdk/querystring-builder": "3.266.1", - "@aws-sdk/types": "3.266.1", + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/credential-provider-node": "3.272.0", + "@aws-sdk/fetch-http-handler": "3.272.0", + "@aws-sdk/hash-node": "3.272.0", + "@aws-sdk/invalid-dependency": "3.272.0", + "@aws-sdk/middleware-content-length": "3.272.0", + "@aws-sdk/middleware-endpoint": "3.272.0", + "@aws-sdk/middleware-host-header": "3.272.0", + "@aws-sdk/middleware-logger": "3.272.0", + "@aws-sdk/middleware-recursion-detection": "3.272.0", + "@aws-sdk/middleware-retry": "3.272.0", + "@aws-sdk/middleware-sdk-sts": "3.272.0", + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/middleware-signing": "3.272.0", + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/middleware-user-agent": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/node-http-handler": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/smithy-client": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.272.0", + "@aws-sdk/util-defaults-mode-node": "3.272.0", + "@aws-sdk/util-endpoints": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", + "@aws-sdk/util-user-agent-browser": "3.272.0", + "@aws-sdk/util-user-agent-node": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", + "fast-xml-parser": "4.1.2", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/util-middleware": { - "version": "3.266.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.266.1.tgz", - "integrity": "sha512-iZq+lq80byWZMsdII4OS7CdhgGeuBXBPd//iFWq4YmGts5W1QI1FLIFcsOuUnZtQMiaAuvLXtEO8ZrfaKTFKgw==", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/config-resolver": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.272.0.tgz", + "integrity": "sha512-Dr4CffRVNsOp3LRNdpvcH6XuSgXOSLblWliCy/5I86cNl567KVMxujVx6uPrdTXYs2h1rt3MNl6jQGnAiJeTbw==", "dependencies": { + "@aws-sdk/signature-v4": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/middleware-sdk-s3": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/credential-provider-cognito-identity": { + "version": "3.276.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.276.0.tgz", + "integrity": "sha512-LaIQNt2F+XWvX031MzYNoHWuqjpyomsdI+1y6KaeC/9z51Y+usmB/ay1jYK/kUmXl/NcBmZR5gPELZu7P6WtaQ==", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-arn-parser": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/client-cognito-identity": "3.276.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@aws-sdk/protocol-http": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/credential-provider-env": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.272.0.tgz", + "integrity": "sha512-QI65NbLnKLYHyTYhXaaUrq6eVsCCrMUb05WDA7+TJkWkjXesovpjc8vUKgFiLSxmgKmb2uOhHNcDyObKMrYQFw==", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@aws-sdk/types": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/credential-provider-imds": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.272.0.tgz", + "integrity": "sha512-wwAfVY1jTFQEfxVfdYD5r5ieYGl+0g4nhekVxNMqE8E1JeRDd18OqiwAflzpgBIqxfqvCUkf+vl5JYyacMkNAQ==", + "dependencies": { + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", + "tslib": "^2.3.1" + }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/middleware-sdk-sts": { - "version": "3.226.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.272.0.tgz", + "integrity": "sha512-iE3CDzK5NcupHYjfYjBdY1JCy8NLEoRUsboEjG0i0gy3S3jVpDeVHX1dLVcL/slBFj6GiM7SoNV/UfKnJf3Gaw==", "dependencies": { - "@aws-sdk/middleware-signing": "3.226.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/signature-v4": "3.226.0", - "@aws-sdk/types": "3.226.0", + "@aws-sdk/credential-provider-env": "3.272.0", + "@aws-sdk/credential-provider-imds": "3.272.0", + "@aws-sdk/credential-provider-process": "3.272.0", + "@aws-sdk/credential-provider-sso": "3.272.0", + "@aws-sdk/credential-provider-web-identity": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/middleware-serde": { - "version": "3.226.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/credential-provider-node": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.272.0.tgz", + "integrity": "sha512-FI8uvwM1IxiRSvbkdKv8DZG5vxU3ezaseTaB1fHWTxEUFb0pWIoHX9oeOKer9Fj31SOZTCNAaYFURbSRuZlm/w==", "dependencies": { - "@aws-sdk/types": "3.226.0", + "@aws-sdk/credential-provider-env": "3.272.0", + "@aws-sdk/credential-provider-imds": "3.272.0", + "@aws-sdk/credential-provider-ini": "3.272.0", + "@aws-sdk/credential-provider-process": "3.272.0", + "@aws-sdk/credential-provider-sso": "3.272.0", + "@aws-sdk/credential-provider-web-identity": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/middleware-signing": { - "version": "3.226.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/credential-provider-process": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.272.0.tgz", + "integrity": "sha512-hiCAjWWm2PeBFp5cjkxqyam/XADjiS+e7GzwC34TbZn3LisS0uoweLojj9tD11NnnUhyhbLteUvu5+rotOLwrg==", "dependencies": { - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/signature-v4": "3.226.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/util-middleware": "3.226.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/middleware-ssec": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.272.0.tgz", + "integrity": "sha512-hwYaulyiU/7chKKFecxCeo0ls6Dxs7h+5EtoYcJJGvfpvCncyOZF35t00OAsCd3Wo7HkhhgfpGdb6dmvCNQAZQ==", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/client-sso": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/token-providers": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/middleware-ssec/node_modules/@aws-sdk/types": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.272.0.tgz", + "integrity": "sha512-ImrHMkcgneGa/HadHAQXPwOrX26sAKuB8qlMxZF/ZCM2B55u8deY+ZVkVuraeKb7YsahMGehPFOfRAF6mvFI5Q==", + "dependencies": { + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/middleware-ssec/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/fetch-http-handler": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.272.0.tgz", + "integrity": "sha512-1Qhm9e0RbS1Xf4CZqUbQyUMkDLd7GrsRXWIvm9b86/vgeV8/WnjO3CMue9D51nYgcyQORhYXv6uVjAYCWbUExA==", + "dependencies": { + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/querystring-builder": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-base64": "3.208.0", + "tslib": "^2.3.1" + } }, - "node_modules/@aws-sdk/middleware-stack": { - "version": "3.226.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/hash-node": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.272.0.tgz", + "integrity": "sha512-40dwND+iAm3VtPHPZu7/+CIdVJFk2s0cWZt1lOiMPMSXycSYJ45wMk7Lly3uoqRx0uWfFK5iT2OCv+fJi5jTng==", "dependencies": { + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-buffer-from": "3.208.0", + "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.226.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/invalid-dependency": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.272.0.tgz", + "integrity": "sha512-ysW6wbjl1Y78txHUQ/Tldj2Rg1BI7rpMO9B9xAF6yAX3mQ7t6SUPQG/ewOGvH2208NBIl3qP5e/hDf0Q6r/1iw==", "dependencies": { - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/types": "3.226.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/middleware-content-length": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.272.0.tgz", + "integrity": "sha512-sAbDZSTNmLX+UTGwlUHJBWy0QGQkiClpHwVFXACon+aG0ySLNeRKEVYs6NCPYldw4cj6hveLUn50cX44ukHErw==", + "dependencies": { + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/node-config-provider": { - "version": "3.226.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/middleware-endpoint": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.272.0.tgz", + "integrity": "sha512-Dk3JVjj7SxxoUKv3xGiOeBksvPtFhTDrVW75XJ98Ymv8gJH5L1sq4hIeJAHRKogGiRFq2J73mnZSlM9FVXEylg==", "dependencies": { - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/types": "3.226.0", + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/signature-v4": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/node-http-handler": { - "version": "3.226.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/middleware-host-header": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.272.0.tgz", + "integrity": "sha512-Q8K7bMMFZnioUXpxn57HIt4p+I63XaNAawMLIZ5B4F2piyukbQeM9q2XVKMGwqLvijHR8CyP5nHrtKqVuINogQ==", "dependencies": { - "@aws-sdk/abort-controller": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/querystring-builder": "3.226.0", - "@aws-sdk/types": "3.226.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/property-provider": { - "version": "3.226.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/middleware-logger": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.272.0.tgz", + "integrity": "sha512-u2SQ0hWrFwxbxxYMG5uMEgf01pQY5jauK/LYWgGIvuCmFgiyRQQP3oN7kkmsxnS9MWmNmhbyQguX2NY02s5e9w==", "dependencies": { - "@aws-sdk/types": "3.226.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/protocol-http": { - "version": "3.226.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.272.0.tgz", + "integrity": "sha512-Gp/eKWeUWVNiiBdmUM2qLkBv+VLSJKoWAO+aKmyxxwjjmWhE0FrfA1NQ1a3g+NGMhRbAfQdaYswRAKsul70ISg==", "dependencies": { - "@aws-sdk/types": "3.226.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/querystring-builder": { - "version": "3.226.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/middleware-retry": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.272.0.tgz", + "integrity": "sha512-pCGvHM7C76VbO/dFerH+Vwf7tGv7j+e+eGrvhQ35mRghCtfIou/WMfTZlD1TNee93crrAQQVZKjtW3dMB3WCzg==", "dependencies": { - "@aws-sdk/types": "3.226.0", - "@aws-sdk/util-uri-escape": "3.201.0", - "tslib": "^2.3.1" + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/service-error-classification": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-middleware": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", + "tslib": "^2.3.1", + "uuid": "^8.3.2" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/querystring-parser": { - "version": "3.226.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/middleware-sdk-sts": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.272.0.tgz", + "integrity": "sha512-VvYPg7LrDIjUOWueSzo2wBzcNG7dw+cmzV6zAKaLxf0RC5jeAP4hE0OzDiiZfDrjNghEzgq/V+0NO+LewqYL9Q==", "dependencies": { - "@aws-sdk/types": "3.226.0", + "@aws-sdk/middleware-signing": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/signature-v4": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/s3-request-presigner": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/middleware-serde": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.272.0.tgz", + "integrity": "sha512-kW1uOxgPSwtXPB5rm3QLdWomu42lkYpQL94tM1BjyFOWmBLO2lQhk5a7Dw6HkTozT9a+vxtscLChRa6KZe61Hw==", "dependencies": { - "@aws-sdk/protocol-http": "3.6.1", - "@aws-sdk/signature-v4": "3.6.1", - "@aws-sdk/smithy-client": "3.6.1", - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-create-request": "3.6.1", - "@aws-sdk/util-format-url": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/s3-request-presigner/node_modules/@aws-sdk/is-array-buffer": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/middleware-signing": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.272.0.tgz", + "integrity": "sha512-4LChFK4VAR91X+dupqM8fQqYhFGE0G4Bf9rQlVTgGSbi2KUOmpqXzH0/WKE228nKuEhmH8+Qd2VPSAE2JcyAUA==", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/signature-v4": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-middleware": "3.272.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/s3-request-presigner/node_modules/@aws-sdk/middleware-stack": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/middleware-stack": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.272.0.tgz", + "integrity": "sha512-jhwhknnPBGhfXAGV5GXUWfEhDFoP/DN8MPCO2yC5OAxyp6oVJ8lTPLkZYMTW5VL0c0eG44dXpF4Ib01V+PlDrQ==", "dependencies": { - "tslib": "^1.8.0" + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/s3-request-presigner/node_modules/@aws-sdk/protocol-http": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.272.0.tgz", + "integrity": "sha512-Qy7/0fsDJxY5l0bEk7WKDfqb4Os/sCAgFR2zEvrhDtbkhYPf72ysvg/nRUTncmCbo8tOok4SJii2myk8KMfjjw==", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/s3-request-presigner/node_modules/@aws-sdk/signature-v4": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/node-config-provider": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.272.0.tgz", + "integrity": "sha512-YYCIBh9g1EQo7hm2l22HX5Yr9RoPQ2RCvhzKvF1n1e8t1QH4iObQrYUtqHG4khcm64Cft8C5MwZmgzHbya5Z6Q==", "dependencies": { - "@aws-sdk/is-array-buffer": "3.6.1", - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-hex-encoding": "3.6.1", - "@aws-sdk/util-uri-escape": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/s3-request-presigner/node_modules/@aws-sdk/smithy-client": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/node-http-handler": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.272.0.tgz", + "integrity": "sha512-VrW9PjhhngeyYp4yGYPe5S0vgZH6NwU3Po9xAgayUeE37Inr7LS1YteFMHdpgsUUeNXnh7d06CXqHo1XjtqOKA==", "dependencies": { - "@aws-sdk/middleware-stack": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/abort-controller": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/querystring-builder": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/s3-request-presigner/node_modules/@aws-sdk/types": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/property-provider": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.272.0.tgz", + "integrity": "sha512-V1pZTaH5eqpAt8O8CzbItHhOtzIfFuWymvwZFkAtwKuaHpnl7jjrTouV482zoq8AD/fF+VVSshwBKYA7bhidIw==", + "dependencies": { + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/s3-request-presigner/node_modules/@aws-sdk/util-hex-encoding": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/protocol-http": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.272.0.tgz", + "integrity": "sha512-4JQ54v5Yn08jspNDeHo45CaSn1CvTJqS1Ywgr79eU6jBExtguOWv6LNtwVSBD9X37v88iqaxt8iu1Z3pZZAJeg==", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/s3-request-presigner/node_modules/@aws-sdk/util-uri-escape": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/querystring-builder": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.272.0.tgz", + "integrity": "sha512-ndo++7GkdCj5tBXE6rGcITpSpZS4PfyV38wntGYAlj9liL1omk3bLZRY6uzqqkJpVHqbg2fD7O2qHNItzZgqhw==", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/s3-request-presigner/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/querystring-parser": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.272.0.tgz", + "integrity": "sha512-5oS4/9n6N1LZW9tI3qq/0GnCuWoOXRgcHVB+AJLRBvDbEe+GI+C/xK1tKLsfpDNgsQJHc4IPQoIt4megyZ/1+A==", + "dependencies": { + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } }, - "node_modules/@aws-sdk/service-error-classification": { - "version": "3.229.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/service-error-classification": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.272.0.tgz", + "integrity": "sha512-REoltM1LK9byyIufLqx9znhSolPcHQgVHIA2S0zu5sdt5qER4OubkLAXuo4MBbisUTmh8VOOvIyUb5ijZCXq1w==", "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/shared-ini-file-loader": { - "version": "3.226.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/shared-ini-file-loader": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.272.0.tgz", + "integrity": "sha512-lzFPohp5sy2XvwFjZIzLVCRpC0i5cwBiaXmFzXYQZJm6FSCszHO4ax+m9yrtlyVFF/2YPWl+/bzNthy4aJtseA==", "dependencies": { - "@aws-sdk/types": "3.226.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/signature-v4": { - "version": "3.226.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/signature-v4": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.272.0.tgz", + "integrity": "sha512-pWxnHG1NqJWMwlhJ6NHNiUikOL00DHROmxah6krJPMPq4I3am2KY2Rs/8ouWhnEXKaHAv4EQhSALJ+7Mq5S4/A==", "dependencies": { "@aws-sdk/is-array-buffer": "3.201.0", - "@aws-sdk/types": "3.226.0", + "@aws-sdk/types": "3.272.0", "@aws-sdk/util-hex-encoding": "3.201.0", - "@aws-sdk/util-middleware": "3.226.0", + "@aws-sdk/util-middleware": "3.272.0", "@aws-sdk/util-uri-escape": "3.201.0", + "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/smithy-client": { - "version": "3.234.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/smithy-client": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.272.0.tgz", + "integrity": "sha512-pvdleJ3kaRvyRw2pIZnqL85ZlWBOZrPKmR9I69GCvlyrfdjRBhbSjIEZ+sdhZudw0vdHxq25AGoLUXhofVLf5Q==", "dependencies": { - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/types": "3.226.0", + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/token-providers": { - "version": "3.238.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/token-providers": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.272.0.tgz", + "integrity": "sha512-0GISJ4IKN2rXvbSddB775VjBGSKhYIGQnAdMqbvxi9LB6pSvVxcH9aIL28G0spiuL+dy3yGQZ8RlJPAyP9JW9A==", "dependencies": { - "@aws-sdk/client-sso-oidc": "3.238.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/types": "3.226.0", + "@aws-sdk/client-sso-oidc": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/types": { - "version": "3.226.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/types": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.272.0.tgz", + "integrity": "sha512-MmmL6vxMGP5Bsi+4wRx4mxYlU/LX6M0noOXrDh/x5FfG7/4ZOar/nDxqDadhJtNM88cuWVHZWY59P54JzkGWmA==", "dependencies": { "tslib": "^2.3.1" }, @@ -19373,174 +20574,209 @@ "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/url-parser": { - "version": "3.226.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/url-parser": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.272.0.tgz", + "integrity": "sha512-vX/Tx02PlnQ/Kgtf5TnrNDHPNbY+amLZjW0Z1d9vzAvSZhQ4i9Y18yxoRDIaDTCNVRDjdhV8iuctW+05PB5JtQ==", "dependencies": { - "@aws-sdk/querystring-parser": "3.226.0", - "@aws-sdk/types": "3.226.0", + "@aws-sdk/querystring-parser": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/url-parser-native": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/util-defaults-mode-browser": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.272.0.tgz", + "integrity": "sha512-W8ZVJSZRuUBg8l0JEZzUc+9fKlthVp/cdE+pFeF8ArhZelOLCiaeCrMaZAeJusaFzIpa6cmOYQAjtSMVyrwRtg==", "dependencies": { - "@aws-sdk/querystring-parser": "3.6.1", - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0", - "url": "^0.11.0" + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/url-parser-native/node_modules/@aws-sdk/querystring-parser": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/util-defaults-mode-node": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.272.0.tgz", + "integrity": "sha512-U0NTcbMw6KFk7uz/avBmfxQSTREEiX6JDMH68oN/3ux4AICd2I4jHyxnloSWGuiER1FxZf1dEJ8ZTwy8Ibl21Q==", "dependencies": { - "@aws-sdk/types": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/credential-provider-imds": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/url-parser-native/node_modules/@aws-sdk/types": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/util-endpoints": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.272.0.tgz", + "integrity": "sha512-c4MPUaJt2G6gGpoiwIOqDfUa98c1J63RpYvf/spQEKOtC/tF5Gfqlxuq8FnAl5lHnrqj1B9ZXLLxFhHtDR0IiQ==", + "dependencies": { + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/url-parser-native/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/util-arn-parser": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/util-middleware": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.272.0.tgz", + "integrity": "sha512-Abw8m30arbwxqmeMMha5J11ESpHUNmCeSqSzE8/C4B8jZQtHY4kq7f+upzcNIQ11lsd+uzBEzNG3+dDRi0XOJQ==", "dependencies": { - "tslib": "^1.8.0" + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/util-arn-parser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/util-base64": { - "version": "3.208.0", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/util-retry": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-retry/-/util-retry-3.272.0.tgz", + "integrity": "sha512-Ngha5414LR4gRHURVKC9ZYXsEJhMkm+SJ+44wlzOhavglfdcKKPUsibz5cKY1jpUV7oKECwaxHWpBB8r6h+hOg==", "dependencies": { - "@aws-sdk/util-buffer-from": "3.208.0", + "@aws-sdk/service-error-classification": "3.272.0", "tslib": "^2.3.1" }, "engines": { - "node": ">=14.0.0" + "node": ">= 14.0.0" } }, - "node_modules/@aws-sdk/util-base64-browser": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.272.0.tgz", + "integrity": "sha512-Lp5QX5bH6uuwBlIdr7w7OAcAI50ttyskb++yUr9i+SPvj6RI2dsfIBaK4mDg1qUdM5LeUdvIyqwj3XHjFKAAvA==", "dependencies": { - "tslib": "^1.8.0" + "@aws-sdk/types": "3.272.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/util-base64-browser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/util-base64-node": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.272.0.tgz", + "integrity": "sha512-ljK+R3l+Q1LIHrcR+Knhk0rmcSkfFadZ8V+crEGpABf/QUQRg7NkZMsoe814tfBO5F7tMxo8wwwSdaVNNHtoRA==", "dependencies": { - "@aws-sdk/util-buffer-from": "3.6.1", - "tslib": "^1.8.0" + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=14.0.0" + }, + "peerDependencies": { + "aws-crt": ">=1.0.0" + }, + "peerDependenciesMeta": { + "aws-crt": { + "optional": true + } } }, - "node_modules/@aws-sdk/util-base64-node/node_modules/@aws-sdk/is-array-buffer": { - "version": "3.6.1", - "license": "Apache-2.0", + "node_modules/@aws-sdk/credential-providers/node_modules/fast-xml-parser": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.1.2.tgz", + "integrity": "sha512-CDYeykkle1LiA/uqQyNwYpFbyF6Axec6YapmpUP+/RHWIoR1zKjocdvNaTsxCxZzQ6v9MLXaSYm9Qq0thv0DHg==", "dependencies": { - "tslib": "^1.8.0" + "strnum": "^1.0.5" }, - "engines": { - "node": ">= 10.0.0" + "bin": { + "fxparser": "src/cli/cli.js" + }, + "funding": { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" } }, - "node_modules/@aws-sdk/util-base64-node/node_modules/@aws-sdk/util-buffer-from": { - "version": "3.6.1", + "node_modules/@aws-sdk/eventstream-codec": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/is-array-buffer": "3.6.1", - "tslib": "^1.8.0" - }, - "engines": { - "node": ">= 10.0.0" + "@aws-crypto/crc32": "2.0.0", + "@aws-sdk/types": "3.186.0", + "@aws-sdk/util-hex-encoding": "3.186.0", + "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/util-base64-node/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" - }, - "node_modules/@aws-sdk/util-body-length-browser": { - "version": "3.188.0", + "node_modules/@aws-sdk/eventstream-codec/node_modules/@aws-sdk/types": { + "version": "3.186.0", "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.3.1" + "engines": { + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/util-body-length-node": { - "version": "3.208.0", + "node_modules/@aws-sdk/eventstream-codec/node_modules/@aws-sdk/util-hex-encoding": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { "tslib": "^2.3.1" }, "engines": { - "node": ">=14.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/util-buffer-from": { - "version": "3.208.0", + "node_modules/@aws-sdk/eventstream-handler-node": { + "version": "3.186.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/is-array-buffer": "3.201.0", + "@aws-sdk/eventstream-codec": "3.186.0", + "@aws-sdk/types": "3.186.0", "tslib": "^2.3.1" }, "engines": { - "node": ">=14.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/util-config-provider": { - "version": "3.208.0", + "node_modules/@aws-sdk/eventstream-handler-node/node_modules/@aws-sdk/types": { + "version": "3.186.0", "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.3.1" - }, "engines": { - "node": ">=14.0.0" + "node": ">= 12.0.0" } }, - "node_modules/@aws-sdk/util-create-request": { + "node_modules/@aws-sdk/eventstream-marshaller": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-stack": "3.6.1", - "@aws-sdk/smithy-client": "3.6.1", + "@aws-crypto/crc32": "^1.0.0", "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-hex-encoding": "3.6.1", "tslib": "^1.8.0" - }, + } + }, + "node_modules/@aws-sdk/eventstream-marshaller/node_modules/@aws-crypto/crc32": { + "version": "1.2.2", + "license": "Apache-2.0", + "dependencies": { + "@aws-crypto/util": "^1.2.2", + "@aws-sdk/types": "^3.1.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/eventstream-marshaller/node_modules/@aws-crypto/util": { + "version": "1.2.2", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-sdk/eventstream-marshaller/node_modules/@aws-sdk/types": { + "version": "3.6.1", + "license": "Apache-2.0", "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/util-create-request/node_modules/@aws-sdk/middleware-stack": { + "node_modules/@aws-sdk/eventstream-marshaller/node_modules/@aws-sdk/util-hex-encoding": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { @@ -19550,11 +20786,16 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/util-create-request/node_modules/@aws-sdk/smithy-client": { + "node_modules/@aws-sdk/eventstream-marshaller/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/eventstream-serde-browser": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-stack": "3.6.1", + "@aws-sdk/eventstream-marshaller": "3.6.1", + "@aws-sdk/eventstream-serde-universal": "3.6.1", "@aws-sdk/types": "3.6.1", "tslib": "^1.8.0" }, @@ -19562,61 +20803,45 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/util-create-request/node_modules/@aws-sdk/types": { + "node_modules/@aws-sdk/eventstream-serde-browser/node_modules/@aws-sdk/types": { "version": "3.6.1", "license": "Apache-2.0", "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/util-create-request/node_modules/tslib": { + "node_modules/@aws-sdk/eventstream-serde-browser/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/util-defaults-mode-browser": { - "version": "3.234.0", + "node_modules/@aws-sdk/eventstream-serde-config-resolver": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/types": "3.226.0", - "bowser": "^2.11.0", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/util-defaults-mode-node": { - "version": "3.234.0", + "node_modules/@aws-sdk/eventstream-serde-config-resolver/node_modules/@aws-sdk/types": { + "version": "3.6.1", "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/credential-provider-imds": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/types": "3.226.0", - "tslib": "^2.3.1" - }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/util-endpoints": { - "version": "3.226.0", - "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/types": "3.226.0", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" - } + "node_modules/@aws-sdk/eventstream-serde-config-resolver/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" }, - "node_modules/@aws-sdk/util-format-url": { + "node_modules/@aws-sdk/eventstream-serde-node": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/querystring-builder": "3.6.1", + "@aws-sdk/eventstream-marshaller": "3.6.1", + "@aws-sdk/eventstream-serde-universal": "3.6.1", "@aws-sdk/types": "3.6.1", "tslib": "^1.8.0" }, @@ -19624,3225 +20849,3593 @@ "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/util-format-url/node_modules/@aws-sdk/querystring-builder": { + "node_modules/@aws-sdk/eventstream-serde-node/node_modules/@aws-sdk/types": { "version": "3.6.1", "license": "Apache-2.0", - "dependencies": { - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-uri-escape": "3.6.1", - "tslib": "^1.8.0" - }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/util-format-url/node_modules/@aws-sdk/types": { + "node_modules/@aws-sdk/eventstream-serde-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/eventstream-serde-universal": { "version": "3.6.1", "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/eventstream-marshaller": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/util-format-url/node_modules/@aws-sdk/util-uri-escape": { + "node_modules/@aws-sdk/eventstream-serde-universal/node_modules/@aws-sdk/types": { "version": "3.6.1", "license": "Apache-2.0", - "dependencies": { - "tslib": "^1.8.0" - }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/util-format-url/node_modules/tslib": { + "node_modules/@aws-sdk/eventstream-serde-universal/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@aws-sdk/util-hex-encoding": { - "version": "3.201.0", + "node_modules/@aws-sdk/fetch-http-handler": { + "version": "3.226.0", "license": "Apache-2.0", "dependencies": { + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/querystring-builder": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/util-locate-window": { - "version": "3.208.0", + "node_modules/@aws-sdk/hash-blob-browser": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "tslib": "^2.3.1" - }, + "@aws-sdk/chunked-blob-reader": "3.6.1", + "@aws-sdk/chunked-blob-reader-native": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + } + }, + "node_modules/@aws-sdk/hash-blob-browser/node_modules/@aws-sdk/types": { + "version": "3.6.1", + "license": "Apache-2.0", "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/util-middleware": { + "node_modules/@aws-sdk/hash-blob-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/hash-node": { "version": "3.226.0", "license": "Apache-2.0", "dependencies": { + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-buffer-from": "3.208.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" } }, - "node_modules/@aws-sdk/util-retry": { - "version": "3.229.0", + "node_modules/@aws-sdk/hash-stream-node": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/service-error-classification": "3.229.0", - "tslib": "^2.3.1" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">= 14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/util-uri-escape": { - "version": "3.201.0", + "node_modules/@aws-sdk/hash-stream-node/node_modules/@aws-sdk/types": { + "version": "3.6.1", "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.3.1" - }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/util-user-agent-browser": { + "node_modules/@aws-sdk/hash-stream-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/invalid-dependency": { "version": "3.226.0", "license": "Apache-2.0", "dependencies": { "@aws-sdk/types": "3.226.0", - "bowser": "^2.11.0", "tslib": "^2.3.1" } }, - "node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.226.0", + "node_modules/@aws-sdk/is-array-buffer": { + "version": "3.201.0", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/types": "3.226.0", "tslib": "^2.3.1" }, "engines": { "node": ">=14.0.0" - }, - "peerDependencies": { - "aws-crt": ">=1.0.0" - }, - "peerDependenciesMeta": { - "aws-crt": { - "optional": true - } } }, - "node_modules/@aws-sdk/util-utf8": { - "version": "3.254.0", + "node_modules/@aws-sdk/md5-js": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/util-buffer-from": "3.208.0", - "tslib": "^2.3.1" - }, + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-utf8-browser": "3.6.1", + "tslib": "^1.8.0" + } + }, + "node_modules/@aws-sdk/md5-js/node_modules/@aws-sdk/types": { + "version": "3.6.1", + "license": "Apache-2.0", "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/util-utf8-browser": { - "version": "3.188.0", + "node_modules/@aws-sdk/md5-js/node_modules/@aws-sdk/util-utf8-browser": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "tslib": "^2.3.1" + "tslib": "^1.8.0" } }, - "node_modules/@aws-sdk/util-utf8-node": { - "version": "3.208.0", + "node_modules/@aws-sdk/md5-js/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/middleware-apply-body-checksum": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/util-buffer-from": "3.208.0", - "tslib": "^2.3.1" + "@aws-sdk/is-array-buffer": "3.6.1", + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/util-waiter": { - "version": "3.226.0", + "node_modules/@aws-sdk/middleware-apply-body-checksum/node_modules/@aws-sdk/is-array-buffer": { + "version": "3.6.1", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/abort-controller": "3.226.0", - "@aws-sdk/types": "3.226.0", - "tslib": "^2.3.1" + "tslib": "^1.8.0" }, "engines": { - "node": ">=14.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/xml-builder": { + "node_modules/@aws-sdk/middleware-apply-body-checksum/node_modules/@aws-sdk/protocol-http": { "version": "3.6.1", "license": "Apache-2.0", "dependencies": { + "@aws-sdk/types": "3.6.1", "tslib": "^1.8.0" }, "engines": { "node": ">= 10.0.0" } }, - "node_modules/@aws-sdk/xml-builder/node_modules/tslib": { + "node_modules/@aws-sdk/middleware-apply-body-checksum/node_modules/@aws-sdk/types": { + "version": "3.6.1", + "license": "Apache-2.0", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/middleware-apply-body-checksum/node_modules/tslib": { "version": "1.14.1", "license": "0BSD" }, - "node_modules/@babel/code-frame": { - "version": "7.18.6", - "license": "MIT", + "node_modules/@aws-sdk/middleware-bucket-endpoint": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/highlight": "^7.18.6" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-arn-parser": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=6.9.0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/compat-data": { - "version": "7.20.10", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-bucket-endpoint/node_modules/@aws-sdk/protocol-http": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" + }, "engines": { - "node": ">=6.9.0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/core": { - "version": "7.20.7", - "license": "MIT", - "peer": true, - "dependencies": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.7", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-module-transforms": "^7.20.7", - "@babel/helpers": "^7.20.7", - "@babel/parser": "^7.20.7", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.7", - "@babel/types": "^7.20.7", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.1", - "semver": "^6.3.0" - }, + "node_modules/@aws-sdk/middleware-bucket-endpoint/node_modules/@aws-sdk/types": { + "version": "3.6.1", + "license": "Apache-2.0", "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" + "node": ">= 10.0.0" } }, - "node_modules/@babel/generator": { - "version": "7.20.7", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-bucket-endpoint/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/middleware-content-length": { + "version": "3.226.0", + "license": "Apache-2.0", "dependencies": { - "@babel/types": "^7.20.7", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" + "node": ">=14.0.0" } }, - "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-endpoint": { + "version": "3.226.0", + "license": "Apache-2.0", "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/signature-v4": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.226.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.0.0" + "node": ">=14.0.0" } }, - "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.18.6", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-eventstream": { + "version": "3.186.0", + "license": "Apache-2.0", "dependencies": { - "@babel/types": "^7.18.6" + "@aws-sdk/protocol-http": "3.186.0", + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" + "node": ">= 12.0.0" } }, - "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.18.9", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-eventstream/node_modules/@aws-sdk/protocol-http": { + "version": "3.186.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-explode-assignable-expression": "^7.18.6", - "@babel/types": "^7.18.9" + "@aws-sdk/types": "3.186.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" + "node": ">= 12.0.0" } }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.20.7", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-eventstream/node_modules/@aws-sdk/types": { + "version": "3.186.0", + "license": "Apache-2.0", + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/@aws-sdk/middleware-expect-continue": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/compat-data": "^7.20.5", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.21.3", - "lru-cache": "^5.1.1", - "semver": "^6.3.0" + "@aws-sdk/middleware-header-default": "3.6.1", + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.20.7", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-expect-continue/node_modules/@aws-sdk/protocol-http": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.19.0", - "@babel/helper-member-expression-to-functions": "^7.20.7", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-replace-supers": "^7.20.7", - "@babel/helper-split-export-declaration": "^7.18.6" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/helper-create-regexp-features-plugin": { - "version": "7.20.5", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-expect-continue/node_modules/@aws-sdk/types": { + "version": "3.6.1", + "license": "Apache-2.0", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/middleware-expect-continue/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/middleware-flexible-checksums": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.272.0.tgz", + "integrity": "sha512-dc/tMiYM4wTZpjXf2PSQCFD4SQI5wyVwY5SoBgcB3W2XLq1SzXahiDnnUSn2EzDTKPIrmQmYyDFRpFEPo0sP/g==", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "regexpu-core": "^5.2.1" + "@aws-crypto/crc32": "3.0.0", + "@aws-crypto/crc32c": "3.0.0", + "@aws-sdk/is-array-buffer": "3.201.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "node": ">=14.0.0" } }, - "node_modules/@babel/helper-define-polyfill-provider": { - "version": "0.3.3", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-flexible-checksums/node_modules/@aws-crypto/crc32": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/crc32/-/crc32-3.0.0.tgz", + "integrity": "sha512-IzSgsrxUcsrejQbPVilIKy16kAT52EwB6zSaI+M3xxIhKh5+aldEyvI+z6erM7TCLB2BJsFrtHjp6/4/sr+3dA==", "dependencies": { - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-plugin-utils": "^7.16.7", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2", - "semver": "^6.1.2" - }, - "peerDependencies": { - "@babel/core": "^7.4.0-0" + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^1.11.1" } }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.18.9", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6.9.0" + "node_modules/@aws-sdk/middleware-flexible-checksums/node_modules/@aws-crypto/crc32/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-sdk/middleware-flexible-checksums/node_modules/@aws-crypto/util": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz", + "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==", + "dependencies": { + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" } }, - "node_modules/@babel/helper-explode-assignable-expression": { - "version": "7.18.6", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-flexible-checksums/node_modules/@aws-crypto/util/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-sdk/middleware-flexible-checksums/node_modules/@aws-sdk/protocol-http": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.272.0.tgz", + "integrity": "sha512-4JQ54v5Yn08jspNDeHo45CaSn1CvTJqS1Ywgr79eU6jBExtguOWv6LNtwVSBD9X37v88iqaxt8iu1Z3pZZAJeg==", "dependencies": { - "@babel/types": "^7.18.6" + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" + "node": ">=14.0.0" } }, - "node_modules/@babel/helper-function-name": { - "version": "7.19.0", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-flexible-checksums/node_modules/@aws-sdk/types": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.272.0.tgz", + "integrity": "sha512-MmmL6vxMGP5Bsi+4wRx4mxYlU/LX6M0noOXrDh/x5FfG7/4ZOar/nDxqDadhJtNM88cuWVHZWY59P54JzkGWmA==", "dependencies": { - "@babel/template": "^7.18.10", - "@babel/types": "^7.19.0" + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" + "node": ">=14.0.0" } }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.18.6", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-header-default": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/types": "^7.18.6" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=6.9.0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.20.7", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-header-default/node_modules/@aws-sdk/protocol-http": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/types": "^7.20.7" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=6.9.0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/helper-module-imports": { - "version": "7.18.6", - "license": "MIT", - "peer": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, + "node_modules/@aws-sdk/middleware-header-default/node_modules/@aws-sdk/types": { + "version": "3.6.1", + "license": "Apache-2.0", "engines": { - "node": ">=6.9.0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.20.11", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-header-default/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/middleware-host-header": { + "version": "3.226.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.20.2", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.10", - "@babel/types": "^7.20.7" + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" + "node": ">=14.0.0" } }, - "node_modules/@babel/helper-optimise-call-expression": { - "version": "7.18.6", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-location-constraint": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/types": "^7.18.6" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=6.9.0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.20.2", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-location-constraint/node_modules/@aws-sdk/types": { + "version": "3.6.1", + "license": "Apache-2.0", "engines": { - "node": ">=6.9.0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/helper-remap-async-to-generator": { - "version": "7.18.9", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-location-constraint/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/middleware-logger": { + "version": "3.226.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-wrap-function": "^7.18.9", - "@babel/types": "^7.18.9" + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "node": ">=14.0.0" } }, - "node_modules/@babel/helper-replace-supers": { - "version": "7.20.7", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.226.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.20.7", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.7", - "@babel/types": "^7.20.7" + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" + "node": ">=14.0.0" } }, - "node_modules/@babel/helper-simple-access": { - "version": "7.20.2", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-retry": { + "version": "3.235.0", + "license": "Apache-2.0", "dependencies": { - "@babel/types": "^7.20.2" + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/service-error-classification": "3.229.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-middleware": "3.226.0", + "@aws-sdk/util-retry": "3.229.0", + "tslib": "^2.3.1", + "uuid": "^8.3.2" }, "engines": { - "node": ">=6.9.0" + "node": ">=14.0.0" } }, - "node_modules/@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.20.0", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-sdk-ec2": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-ec2/-/middleware-sdk-ec2-3.266.1.tgz", + "integrity": "sha512-Fymif8a8B9yfKtHeCqwHhbPIYVbLdkXGvgsVzE4R7aXwwKj8tzwDyXw+RArwg1C4FAPn+qS9KARY+oFScLcPjA==", "dependencies": { - "@babel/types": "^7.20.0" + "@aws-sdk/middleware-endpoint": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/signature-v4": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-format-url": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" + "node": ">=14.0.0" } }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.18.6", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/middleware-endpoint": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.266.1.tgz", + "integrity": "sha512-EVnzd51U/Jhz9x68jFwqHjU4KPsLIXfuS1PSNV598OT04WLQXerBx/fvZh17Y4Dmmu6hf/JUWI9PI5To+oC3mQ==", "dependencies": { - "@babel/types": "^7.18.6" + "@aws-sdk/middleware-serde": "3.266.1", + "@aws-sdk/protocol-http": "3.266.1", + "@aws-sdk/signature-v4": "3.266.1", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/url-parser": "3.266.1", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" + "node": ">=14.0.0" } }, - "node_modules/@babel/helper-string-parser": { - "version": "7.19.4", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/middleware-serde": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.266.1.tgz", + "integrity": "sha512-UFJ4BlRG/MUOJq5afHohkDsMDPAkbuXGCkhTz93MGxbACEOJYoEvsaMjpLft88wu4D11GY1Y2PVFkfxJUYWDXA==", + "dependencies": { + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, "engines": { - "node": ">=6.9.0" + "node": ">=14.0.0" } }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.19.1", - "license": "MIT", + "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/protocol-http": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.266.1.tgz", + "integrity": "sha512-8Z1Yfkf59of1R9qRSPmDKIHDo0n5YNCh1FrRLmCRqjjiZ4Ed7FJV/W6YYnJ6VbPcVv1WK6FvwzrGPM2gg4P48Q==", + "dependencies": { + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" + }, "engines": { - "node": ">=6.9.0" + "node": ">=14.0.0" } }, - "node_modules/@babel/helper-validator-option": { - "version": "7.18.6", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-wrap-function": { - "version": "7.20.5", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/querystring-builder": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.266.1.tgz", + "integrity": "sha512-D1LoDv3A+c6YIYq6F2T5m8V0C14vQAarSoT6romVIIYCDuMK4R5BwB1NLFRco1dczyAYmqScxdV2C26+xjXJfw==", "dependencies": { - "@babel/helper-function-name": "^7.19.0", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.5", - "@babel/types": "^7.20.5" + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" + "node": ">=14.0.0" } }, - "node_modules/@babel/helpers": { - "version": "7.20.7", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/querystring-parser": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.266.1.tgz", + "integrity": "sha512-Ck8Ahluj+/eK4FcX8IlbO7DA1MNWdnh1rKjc1qx/ZWh71G/FdZ8Sse33N+Ed/z9v7H8W695dprRT6CuRlqyAbw==", "dependencies": { - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.7", - "@babel/types": "^7.20.7" + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" + "node": ">=14.0.0" } }, - "node_modules/@babel/highlight": { - "version": "7.18.6", - "license": "MIT", + "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/signature-v4": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.266.1.tgz", + "integrity": "sha512-kiHHA3voQKz4QYLKbR/3hKkY2n62MuGewYctvtQsh1069U/OI7FVceIE5hZnrlC5XX4jiNoF1lKdyRhXmK5GMQ==", "dependencies": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" + "@aws-sdk/is-array-buffer": "3.201.0", + "@aws-sdk/types": "3.266.1", + "@aws-sdk/util-hex-encoding": "3.201.0", + "@aws-sdk/util-middleware": "3.266.1", + "@aws-sdk/util-uri-escape": "3.201.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" + "node": ">=14.0.0" } }, - "node_modules/@babel/parser": { - "version": "7.20.7", - "license": "MIT", - "peer": true, - "bin": { - "parser": "bin/babel-parser.js" + "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/types": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.266.1.tgz", + "integrity": "sha512-OVg3CjHKT3/Ws33jx3TUYYkbFOv/CLb9m3P4gZQDvgKPsOagp96LOsG8ZWdcVZCvSorAUqSb5kuc1utsjJxDTw==", + "dependencies": { + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.0.0" + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.18.6", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/url-parser": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.266.1.tgz", + "integrity": "sha512-7IBZ8TjTWafug26CnNpz6cdrLU0TZ0G7N9LNfqjM/+69KI/Ragvv2Lsm4jhSv2uMx5OEzwlVYIEYaKMnAUiRLQ==", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "@aws-sdk/querystring-parser": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" } }, - "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.20.7", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/util-format-url": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-format-url/-/util-format-url-3.266.1.tgz", + "integrity": "sha512-hCOgeAv1Oc4vK9VIkvbruchXXTxutFgLYFvqt43q5Tnu2jXyWinnIsenKS0PszUxuccmqy/fDcoYQWAqRML1fQ==", "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/plugin-proposal-optional-chaining": "^7.20.7" + "@aws-sdk/querystring-builder": "3.266.1", + "@aws-sdk/types": "3.266.1", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.13.0" + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-proposal-async-generator-functions": { - "version": "7.20.7", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-sdk-ec2/node_modules/@aws-sdk/util-middleware": { + "version": "3.266.1", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.266.1.tgz", + "integrity": "sha512-iZq+lq80byWZMsdII4OS7CdhgGeuBXBPd//iFWq4YmGts5W1QI1FLIFcsOuUnZtQMiaAuvLXtEO8ZrfaKTFKgw==", "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-remap-async-to-generator": "^7.18.9", - "@babel/plugin-syntax-async-generators": "^7.8.4" + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-proposal-class-properties": { - "version": "7.18.6", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-sdk-s3": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-arn-parser": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-proposal-class-static-block": { - "version": "7.20.7", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@aws-sdk/protocol-http": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.20.7", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-class-static-block": "^7.14.5" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.12.0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-proposal-dynamic-import": { - "version": "7.18.6", - "license": "MIT", - "peer": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" - }, + "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@aws-sdk/types": { + "version": "3.6.1", + "license": "Apache-2.0", "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-proposal-export-default-from": { - "version": "7.18.10", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/middleware-sdk-sts": { + "version": "3.226.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-export-default-from": "^7.18.6" + "@aws-sdk/middleware-signing": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/signature-v4": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-proposal-export-namespace-from": { - "version": "7.18.9", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-serde": { + "version": "3.226.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-proposal-json-strings": { - "version": "7.18.6", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-signing": { + "version": "3.226.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-json-strings": "^7.8.3" + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/signature-v4": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-middleware": "3.226.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.20.7", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-ssec": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.18.6", - "license": "MIT", - "peer": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" - }, + "node_modules/@aws-sdk/middleware-ssec/node_modules/@aws-sdk/types": { + "version": "3.6.1", + "license": "Apache-2.0", "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-proposal-numeric-separator": { - "version": "7.18.6", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-ssec/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/middleware-stack": { + "version": "3.226.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-proposal-object-rest-spread": { - "version": "7.20.7", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.226.0", + "license": "Apache-2.0", "dependencies": { - "@babel/compat-data": "^7.20.5", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.20.7" + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-proposal-optional-catch-binding": { - "version": "7.18.6", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/node-config-provider": { + "version": "3.226.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-proposal-optional-chaining": { - "version": "7.20.7", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/node-http-handler": { + "version": "3.226.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" + "@aws-sdk/abort-controller": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/querystring-builder": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-proposal-private-methods": { - "version": "7.18.6", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/property-provider": { + "version": "3.226.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-proposal-private-property-in-object": { - "version": "7.20.5", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/protocol-http": { + "version": "3.226.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-create-class-features-plugin": "^7.20.5", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-proposal-unicode-property-regex": { - "version": "7.18.6", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/querystring-builder": { + "version": "3.226.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/querystring-parser": { + "version": "3.226.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/s3-request-presigner": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.12.13" + "@aws-sdk/protocol-http": "3.6.1", + "@aws-sdk/signature-v4": "3.6.1", + "@aws-sdk/smithy-client": "3.6.1", + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-create-request": "3.6.1", + "@aws-sdk/util-format-url": "3.6.1", + "tslib": "^1.8.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-syntax-class-static-block": { - "version": "7.14.5", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/s3-request-presigner/node_modules/@aws-sdk/is-array-buffer": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "tslib": "^1.8.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/s3-request-presigner/node_modules/@aws-sdk/middleware-stack": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" + "tslib": "^1.8.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-syntax-export-default-from": { - "version": "7.18.6", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/s3-request-presigner/node_modules/@aws-sdk/protocol-http": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-syntax-export-namespace-from": { - "version": "7.8.3", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/s3-request-presigner/node_modules/@aws-sdk/signature-v4": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.8.3" + "@aws-sdk/is-array-buffer": "3.6.1", + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-hex-encoding": "3.6.1", + "@aws-sdk/util-uri-escape": "3.6.1", + "tslib": "^1.8.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-syntax-flow": { - "version": "7.18.6", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/s3-request-presigner/node_modules/@aws-sdk/smithy-client": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" + "@aws-sdk/middleware-stack": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-syntax-import-assertions": { - "version": "7.20.0", - "license": "MIT", - "peer": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.19.0" - }, + "node_modules/@aws-sdk/s3-request-presigner/node_modules/@aws-sdk/types": { + "version": "3.6.1", + "license": "Apache-2.0", "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/s3-request-presigner/node_modules/@aws-sdk/util-hex-encoding": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" + "tslib": "^1.8.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-syntax-jsx": { - "version": "7.18.6", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/s3-request-presigner/node_modules/@aws-sdk/util-uri-escape": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" + "tslib": "^1.8.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "license": "MIT", - "peer": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } + "node_modules/@aws-sdk/s3-request-presigner/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" }, - "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "license": "MIT", - "peer": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node_modules/@aws-sdk/service-error-classification": { + "version": "3.229.0", + "license": "Apache-2.0", + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/shared-ini-file-loader": { + "version": "3.226.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/signature-v4": { + "version": "3.226.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" + "@aws-sdk/is-array-buffer": "3.201.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-hex-encoding": "3.201.0", + "@aws-sdk/util-middleware": "3.226.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/signature-v4-multi-region": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.272.0.tgz", + "integrity": "sha512-nir/ICA3saE303tS+DuJ803Uocn/d3hOpOl5DqI9RDjaZxbTXwv9uHP+by8sdyyfwCE8TFaYWoiSW5rLI+Qt0g==", "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/signature-v4": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-arn-parser": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@aws-sdk/signature-v4-crt": "^3.118.0" + }, + "peerDependenciesMeta": { + "@aws-sdk/signature-v4-crt": { + "optional": true + } } }, - "node_modules/@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/signature-v4-multi-region/node_modules/@aws-sdk/protocol-http": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.272.0.tgz", + "integrity": "sha512-4JQ54v5Yn08jspNDeHo45CaSn1CvTJqS1Ywgr79eU6jBExtguOWv6LNtwVSBD9X37v88iqaxt8iu1Z3pZZAJeg==", "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-syntax-private-property-in-object": { - "version": "7.14.5", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/signature-v4-multi-region/node_modules/@aws-sdk/signature-v4": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.272.0.tgz", + "integrity": "sha512-pWxnHG1NqJWMwlhJ6NHNiUikOL00DHROmxah6krJPMPq4I3am2KY2Rs/8ouWhnEXKaHAv4EQhSALJ+7Mq5S4/A==", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "@aws-sdk/is-array-buffer": "3.201.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-hex-encoding": "3.201.0", + "@aws-sdk/util-middleware": "3.272.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/signature-v4-multi-region/node_modules/@aws-sdk/types": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.272.0.tgz", + "integrity": "sha512-MmmL6vxMGP5Bsi+4wRx4mxYlU/LX6M0noOXrDh/x5FfG7/4ZOar/nDxqDadhJtNM88cuWVHZWY59P54JzkGWmA==", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-syntax-typescript": { - "version": "7.20.0", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/signature-v4-multi-region/node_modules/@aws-sdk/util-arn-parser": { + "version": "3.208.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.208.0.tgz", + "integrity": "sha512-QV4af+kscova9dv4VuHOgH8wEr/IIYHDGcnyVtkUEqahCejWr1Kuk+SBK0xMwnZY5LSycOtQ8aeqHOn9qOjZtA==", "dependencies": { - "@babel/helper-plugin-utils": "^7.19.0" + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-transform-arrow-functions": { - "version": "7.20.7", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/signature-v4-multi-region/node_modules/@aws-sdk/util-middleware": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.272.0.tgz", + "integrity": "sha512-Abw8m30arbwxqmeMMha5J11ESpHUNmCeSqSzE8/C4B8jZQtHY4kq7f+upzcNIQ11lsd+uzBEzNG3+dDRi0XOJQ==", "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-transform-async-to-generator": { - "version": "7.20.7", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/smithy-client": { + "version": "3.234.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-remap-async-to-generator": "^7.18.9" + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-transform-block-scoped-functions": { - "version": "7.18.6", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/token-providers": { + "version": "3.238.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" + "@aws-sdk/client-sso-oidc": "3.238.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-transform-block-scoping": { - "version": "7.20.11", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/types": { + "version": "3.226.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-transform-classes": { - "version": "7.20.7", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/url-parser": { + "version": "3.226.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.19.0", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-replace-supers": "^7.20.7", - "@babel/helper-split-export-declaration": "^7.18.6", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@aws-sdk/querystring-parser": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" } }, - "node_modules/@babel/plugin-transform-computed-properties": { - "version": "7.20.7", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/url-parser-native": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/template": "^7.20.7" + "@aws-sdk/querystring-parser": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0", + "url": "^0.11.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-transform-destructuring": { - "version": "7.20.7", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/url-parser-native/node_modules/@aws-sdk/querystring-parser": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-transform-dotall-regex": { - "version": "7.18.6", - "license": "MIT", - "peer": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, + "node_modules/@aws-sdk/url-parser-native/node_modules/@aws-sdk/types": { + "version": "3.6.1", + "license": "Apache-2.0", "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-transform-duplicate-keys": { - "version": "7.18.9", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/url-parser-native/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/util-arn-parser": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" + "tslib": "^1.8.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-transform-exponentiation-operator": { - "version": "7.18.6", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/util-arn-parser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/util-base64": { + "version": "3.208.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "@aws-sdk/util-buffer-from": "3.208.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-transform-flow-strip-types": { - "version": "7.19.0", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/util-base64-browser": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.19.0", - "@babel/plugin-syntax-flow": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "tslib": "^1.8.0" } }, - "node_modules/@babel/plugin-transform-for-of": { - "version": "7.18.8", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/util-base64-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/util-base64-node": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" + "@aws-sdk/util-buffer-from": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-transform-function-name": { - "version": "7.18.9", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/util-base64-node/node_modules/@aws-sdk/is-array-buffer": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9" + "tslib": "^1.8.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-transform-literals": { - "version": "7.18.9", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/util-base64-node/node_modules/@aws-sdk/util-buffer-from": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" + "@aws-sdk/is-array-buffer": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-transform-member-expression-literals": { - "version": "7.18.6", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/util-base64-node/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/util-body-length-browser": { + "version": "3.188.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "tslib": "^2.3.1" } }, - "node_modules/@babel/plugin-transform-modules-amd": { - "version": "7.20.11", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/util-body-length-node": { + "version": "3.208.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helper-plugin-utils": "^7.20.2" + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.20.11", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/util-buffer-from": { + "version": "3.208.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-simple-access": "^7.20.2" + "@aws-sdk/is-array-buffer": "3.201.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-transform-modules-systemjs": { - "version": "7.20.11", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/util-config-provider": { + "version": "3.208.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-validator-identifier": "^7.19.1" + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=14.0.0" } }, - "node_modules/@babel/plugin-transform-modules-umd": { - "version": "7.18.6", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/util-create-request": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "@aws-sdk/middleware-stack": "3.6.1", + "@aws-sdk/smithy-client": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.20.5", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/util-create-request/node_modules/@aws-sdk/middleware-stack": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.20.5", - "@babel/helper-plugin-utils": "^7.20.2" + "tslib": "^1.8.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-transform-new-target": { - "version": "7.18.6", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/util-create-request/node_modules/@aws-sdk/smithy-client": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" + "@aws-sdk/middleware-stack": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-transform-object-super": { - "version": "7.18.6", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/util-create-request/node_modules/@aws-sdk/types": { + "version": "3.6.1", + "license": "Apache-2.0", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/util-create-request/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/util-defaults-mode-browser": { + "version": "3.234.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.6" + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/types": "3.226.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/util-defaults-mode-node": { + "version": "3.234.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/credential-provider-imds": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-transform-parameters": { - "version": "7.20.7", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/util-endpoints": { + "version": "3.226.0", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" }, "engines": { - "node": ">=6.9.0" + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-format-url": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/querystring-builder": "3.6.1", + "@aws-sdk/types": "3.6.1", + "tslib": "^1.8.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">= 10.0.0" } }, - "node_modules/@babel/plugin-transform-property-literals": { - "version": "7.18.6", - "license": "MIT", - "peer": true, + "node_modules/@aws-sdk/util-format-url/node_modules/@aws-sdk/querystring-builder": { + "version": "3.6.1", + "license": "Apache-2.0", "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-uri-escape": "3.6.1", + "tslib": "^1.8.0" }, "engines": { - "node": ">=6.9.0" + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/util-format-url/node_modules/@aws-sdk/types": { + "version": "3.6.1", + "license": "Apache-2.0", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/util-format-url/node_modules/@aws-sdk/util-uri-escape": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/util-format-url/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@aws-sdk/util-hex-encoding": { + "version": "3.201.0", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-locate-window": { + "version": "3.208.0", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-middleware": { + "version": "3.226.0", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-retry": { + "version": "3.229.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/service-error-classification": "3.229.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@aws-sdk/util-stream-browser": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-stream-browser/-/util-stream-browser-3.272.0.tgz", + "integrity": "sha512-vD514YffKxBjV/erjUNgkXcb/mzXAz3uk/KUFMXsodo3cA4Z8WxL4P0p1O09FVuJlNa0gZ8mhFPNzNOekh31GA==", + "dependencies": { + "@aws-sdk/fetch-http-handler": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-hex-encoding": "3.201.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/util-stream-browser/node_modules/@aws-sdk/fetch-http-handler": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.272.0.tgz", + "integrity": "sha512-1Qhm9e0RbS1Xf4CZqUbQyUMkDLd7GrsRXWIvm9b86/vgeV8/WnjO3CMue9D51nYgcyQORhYXv6uVjAYCWbUExA==", + "dependencies": { + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/querystring-builder": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-base64": "3.208.0", + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/util-stream-browser/node_modules/@aws-sdk/protocol-http": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.272.0.tgz", + "integrity": "sha512-4JQ54v5Yn08jspNDeHo45CaSn1CvTJqS1Ywgr79eU6jBExtguOWv6LNtwVSBD9X37v88iqaxt8iu1Z3pZZAJeg==", + "dependencies": { + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-stream-browser/node_modules/@aws-sdk/querystring-builder": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.272.0.tgz", + "integrity": "sha512-ndo++7GkdCj5tBXE6rGcITpSpZS4PfyV38wntGYAlj9liL1omk3bLZRY6uzqqkJpVHqbg2fD7O2qHNItzZgqhw==", + "dependencies": { + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-stream-browser/node_modules/@aws-sdk/types": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.272.0.tgz", + "integrity": "sha512-MmmL6vxMGP5Bsi+4wRx4mxYlU/LX6M0noOXrDh/x5FfG7/4ZOar/nDxqDadhJtNM88cuWVHZWY59P54JzkGWmA==", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-stream-node": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-stream-node/-/util-stream-node-3.272.0.tgz", + "integrity": "sha512-s7dGeM1ImzihqBKgrpaeZokLnPUk3H4Et5oiM+t+TpRxotXTecJPyuD0p76HRgO8KSXfVT5Nxw/FoHXqj1fiMg==", + "dependencies": { + "@aws-sdk/node-http-handler": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-buffer-from": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-stream-node/node_modules/@aws-sdk/abort-controller": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.272.0.tgz", + "integrity": "sha512-s2TV3phapcTwZNr4qLxbfuQuE9ZMP4RoJdkvRRCkKdm6jslsWLJf2Zlcxti/23hOlINUMYv2iXE2pftIgWGdpg==", + "dependencies": { + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-stream-node/node_modules/@aws-sdk/node-http-handler": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.272.0.tgz", + "integrity": "sha512-VrW9PjhhngeyYp4yGYPe5S0vgZH6NwU3Po9xAgayUeE37Inr7LS1YteFMHdpgsUUeNXnh7d06CXqHo1XjtqOKA==", + "dependencies": { + "@aws-sdk/abort-controller": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/querystring-builder": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-stream-node/node_modules/@aws-sdk/protocol-http": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.272.0.tgz", + "integrity": "sha512-4JQ54v5Yn08jspNDeHo45CaSn1CvTJqS1Ywgr79eU6jBExtguOWv6LNtwVSBD9X37v88iqaxt8iu1Z3pZZAJeg==", + "dependencies": { + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-stream-node/node_modules/@aws-sdk/querystring-builder": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.272.0.tgz", + "integrity": "sha512-ndo++7GkdCj5tBXE6rGcITpSpZS4PfyV38wntGYAlj9liL1omk3bLZRY6uzqqkJpVHqbg2fD7O2qHNItzZgqhw==", + "dependencies": { + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-stream-node/node_modules/@aws-sdk/types": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.272.0.tgz", + "integrity": "sha512-MmmL6vxMGP5Bsi+4wRx4mxYlU/LX6M0noOXrDh/x5FfG7/4ZOar/nDxqDadhJtNM88cuWVHZWY59P54JzkGWmA==", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-uri-escape": { + "version": "3.201.0", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.226.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/types": "3.226.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.226.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "aws-crt": ">=1.0.0" + }, + "peerDependenciesMeta": { + "aws-crt": { + "optional": true + } } }, - "node_modules/@babel/plugin-transform-react-display-name": { + "node_modules/@aws-sdk/util-utf8": { + "version": "3.254.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/util-buffer-from": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-utf8-browser": { + "version": "3.188.0", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/util-utf8-node": { + "version": "3.208.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/util-buffer-from": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-waiter": { + "version": "3.226.0", + "license": "Apache-2.0", + "dependencies": { + "@aws-sdk/abort-controller": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/xml-builder": { + "version": "3.6.1", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.8.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/xml-builder/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@babel/code-frame": { "version": "7.18.6", "license": "MIT", - "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/highlight": "^7.18.6" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-react-jsx": { + "node_modules/@babel/compat-data": { + "version": "7.20.10", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { "version": "7.20.7", "license": "MIT", "peer": true, "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-jsx": "^7.18.6", - "@babel/types": "^7.20.7" + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.7", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-module-transforms": "^7.20.7", + "@babel/helpers": "^7.20.7", + "@babel/parser": "^7.20.7", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.7", + "@babel/types": "^7.20.7", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.1", + "semver": "^6.3.0" }, "engines": { "node": ">=6.9.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" } }, - "node_modules/@babel/plugin-transform-react-jsx-self": { - "version": "7.18.6", + "node_modules/@babel/generator": { + "version": "7.20.7", "license": "MIT", "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/types": "^7.20.7", + "@jridgewell/gen-mapping": "^0.3.2", + "jsesc": "^2.5.1" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-react-jsx-source": { - "version": "7.19.6", + "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", "license": "MIT", "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.19.0" + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=6.0.0" } }, - "node_modules/@babel/plugin-transform-regenerator": { - "version": "7.20.5", + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.18.6", "license": "MIT", "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "regenerator-transform": "^0.15.1" + "@babel/types": "^7.18.6" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-reserved-words": { - "version": "7.18.6", + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.18.9", "license": "MIT", "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/helper-explode-assignable-expression": "^7.18.6", + "@babel/types": "^7.18.9" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-runtime": { - "version": "7.19.6", + "node_modules/@babel/helper-compilation-targets": { + "version": "7.20.7", "license": "MIT", "peer": true, "dependencies": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.19.0", - "babel-plugin-polyfill-corejs2": "^0.3.3", - "babel-plugin-polyfill-corejs3": "^0.6.0", - "babel-plugin-polyfill-regenerator": "^0.4.1", + "@babel/compat-data": "^7.20.5", + "@babel/helper-validator-option": "^7.18.6", + "browserslist": "^4.21.3", + "lru-cache": "^5.1.1", "semver": "^6.3.0" }, "engines": { "node": ">=6.9.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/plugin-transform-shorthand-properties": { - "version": "7.18.6", + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.20.7", "license": "MIT", "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-member-expression-to-functions": "^7.20.7", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-replace-supers": "^7.20.7", + "@babel/helper-split-export-declaration": "^7.18.6" }, "engines": { "node": ">=6.9.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/plugin-transform-spread": { - "version": "7.20.7", + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.20.5", "license": "MIT", "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0" + "@babel/helper-annotate-as-pure": "^7.18.6", + "regexpu-core": "^5.2.1" }, "engines": { "node": ">=6.9.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/plugin-transform-sticky-regex": { - "version": "7.18.6", + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.3.3", "license": "MIT", "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" + "@babel/helper-compilation-targets": "^7.17.7", + "@babel/helper-plugin-utils": "^7.16.7", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@babel/core": "^7.4.0-0" } }, - "node_modules/@babel/plugin-transform-template-literals": { + "node_modules/@babel/helper-environment-visitor": { "version": "7.18.9", "license": "MIT", "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-explode-assignable-expression": { + "version": "7.18.6", + "license": "MIT", + "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" + "@babel/types": "^7.18.6" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-typeof-symbol": { - "version": "7.18.9", + "node_modules/@babel/helper-function-name": { + "version": "7.19.0", "license": "MIT", "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" + "@babel/template": "^7.18.10", + "@babel/types": "^7.19.0" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-typescript": { - "version": "7.20.7", + "node_modules/@babel/helper-hoist-variables": { + "version": "7.18.6", "license": "MIT", "peer": true, "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.20.7", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-typescript": "^7.20.0" + "@babel/types": "^7.18.6" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-unicode-escapes": { - "version": "7.18.10", + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.20.7", "license": "MIT", "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" + "@babel/types": "^7.20.7" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-unicode-regex": { + "node_modules/@babel/helper-module-imports": { "version": "7.18.6", "license": "MIT", "peer": true, "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/types": "^7.18.6" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/preset-env": { - "version": "7.20.2", + "node_modules/@babel/helper-module-transforms": { + "version": "7.20.11", "license": "MIT", "peer": true, "dependencies": { - "@babel/compat-data": "^7.20.1", - "@babel/helper-compilation-targets": "^7.20.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-validator-option": "^7.18.6", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9", - "@babel/plugin-proposal-async-generator-functions": "^7.20.1", - "@babel/plugin-proposal-class-properties": "^7.18.6", - "@babel/plugin-proposal-class-static-block": "^7.18.6", - "@babel/plugin-proposal-dynamic-import": "^7.18.6", - "@babel/plugin-proposal-export-namespace-from": "^7.18.9", - "@babel/plugin-proposal-json-strings": "^7.18.6", - "@babel/plugin-proposal-logical-assignment-operators": "^7.18.9", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", - "@babel/plugin-proposal-numeric-separator": "^7.18.6", - "@babel/plugin-proposal-object-rest-spread": "^7.20.2", - "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", - "@babel/plugin-proposal-optional-chaining": "^7.18.9", - "@babel/plugin-proposal-private-methods": "^7.18.6", - "@babel/plugin-proposal-private-property-in-object": "^7.18.6", - "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-import-assertions": "^7.20.0", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-transform-arrow-functions": "^7.18.6", - "@babel/plugin-transform-async-to-generator": "^7.18.6", - "@babel/plugin-transform-block-scoped-functions": "^7.18.6", - "@babel/plugin-transform-block-scoping": "^7.20.2", - "@babel/plugin-transform-classes": "^7.20.2", - "@babel/plugin-transform-computed-properties": "^7.18.9", - "@babel/plugin-transform-destructuring": "^7.20.2", - "@babel/plugin-transform-dotall-regex": "^7.18.6", - "@babel/plugin-transform-duplicate-keys": "^7.18.9", - "@babel/plugin-transform-exponentiation-operator": "^7.18.6", - "@babel/plugin-transform-for-of": "^7.18.8", - "@babel/plugin-transform-function-name": "^7.18.9", - "@babel/plugin-transform-literals": "^7.18.9", - "@babel/plugin-transform-member-expression-literals": "^7.18.6", - "@babel/plugin-transform-modules-amd": "^7.19.6", - "@babel/plugin-transform-modules-commonjs": "^7.19.6", - "@babel/plugin-transform-modules-systemjs": "^7.19.6", - "@babel/plugin-transform-modules-umd": "^7.18.6", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.19.1", - "@babel/plugin-transform-new-target": "^7.18.6", - "@babel/plugin-transform-object-super": "^7.18.6", - "@babel/plugin-transform-parameters": "^7.20.1", - "@babel/plugin-transform-property-literals": "^7.18.6", - "@babel/plugin-transform-regenerator": "^7.18.6", - "@babel/plugin-transform-reserved-words": "^7.18.6", - "@babel/plugin-transform-shorthand-properties": "^7.18.6", - "@babel/plugin-transform-spread": "^7.19.0", - "@babel/plugin-transform-sticky-regex": "^7.18.6", - "@babel/plugin-transform-template-literals": "^7.18.9", - "@babel/plugin-transform-typeof-symbol": "^7.18.9", - "@babel/plugin-transform-unicode-escapes": "^7.18.10", - "@babel/plugin-transform-unicode-regex": "^7.18.6", - "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.20.2", - "babel-plugin-polyfill-corejs2": "^0.3.3", - "babel-plugin-polyfill-corejs3": "^0.6.0", - "babel-plugin-polyfill-regenerator": "^0.4.1", - "core-js-compat": "^3.25.1", - "semver": "^6.3.0" + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.10", + "@babel/types": "^7.20.7" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/preset-flow": { + "node_modules/@babel/helper-optimise-call-expression": { "version": "7.18.6", "license": "MIT", "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-validator-option": "^7.18.6", - "@babel/plugin-transform-flow-strip-types": "^7.18.6" + "@babel/types": "^7.18.6" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/preset-modules": { - "version": "0.1.5", + "node_modules/@babel/helper-plugin-utils": { + "version": "7.20.2", "license": "MIT", "peer": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@babel/preset-typescript": { - "version": "7.18.6", + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.18.9", "license": "MIT", "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-validator-option": "^7.18.6", - "@babel/plugin-transform-typescript": "^7.18.6" + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-wrap-function": "^7.18.9", + "@babel/types": "^7.18.9" }, "engines": { "node": ">=6.9.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/register": { - "version": "7.18.9", + "node_modules/@babel/helper-replace-supers": { + "version": "7.20.7", "license": "MIT", "peer": true, "dependencies": { - "clone-deep": "^4.0.1", - "find-cache-dir": "^2.0.0", - "make-dir": "^2.1.0", - "pirates": "^4.0.5", - "source-map-support": "^0.5.16" + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-member-expression-to-functions": "^7.20.7", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.7", + "@babel/types": "^7.20.7" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/register/node_modules/make-dir": { - "version": "2.1.0", + "node_modules/@babel/helper-simple-access": { + "version": "7.20.2", "license": "MIT", "peer": true, "dependencies": { - "pify": "^4.0.1", - "semver": "^5.6.0" + "@babel/types": "^7.20.2" }, "engines": { - "node": ">=6" + "node": ">=6.9.0" } }, - "node_modules/@babel/register/node_modules/pify": { - "version": "4.0.1", + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.20.0", "license": "MIT", "peer": true, + "dependencies": { + "@babel/types": "^7.20.0" + }, "engines": { - "node": ">=6" + "node": ">=6.9.0" } }, - "node_modules/@babel/register/node_modules/semver": { - "version": "5.7.1", - "license": "ISC", + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.18.6", + "license": "MIT", "peer": true, - "bin": { - "semver": "bin/semver" + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@babel/runtime": { - "version": "7.20.7", + "node_modules/@babel/helper-string-parser": { + "version": "7.19.4", "license": "MIT", "peer": true, - "dependencies": { - "regenerator-runtime": "^0.13.11" - }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/template": { - "version": "7.20.7", + "node_modules/@babel/helper-validator-identifier": { + "version": "7.19.1", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.18.6", "license": "MIT", "peer": true, - "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7" - }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/traverse": { - "version": "7.20.10", + "node_modules/@babel/helper-wrap-function": { + "version": "7.20.5", "license": "MIT", "peer": true, "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.7", - "@babel/helper-environment-visitor": "^7.18.9", "@babel/helper-function-name": "^7.19.0", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "debug": "^4.1.0", - "globals": "^11.1.0" + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.5", + "@babel/types": "^7.20.5" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/types": { + "node_modules/@babel/helpers": { "version": "7.20.7", "license": "MIT", "peer": true, "dependencies": { - "@babel/helper-string-parser": "^7.19.4", - "@babel/helper-validator-identifier": "^7.19.1", - "to-fast-properties": "^2.0.0" + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.7", + "@babel/types": "^7.20.7" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@esbuild/darwin-arm64": { - "version": "0.16.13", - "cpu": [ - "arm64" - ], - "dev": true, + "node_modules/@babel/highlight": { + "version": "7.18.6", "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], + "dependencies": { + "@babel/helper-validator-identifier": "^7.18.6", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, "engines": { - "node": ">=12" + "node": ">=6.9.0" } }, - "node_modules/@gar/promisify": { - "version": "1.1.3", - "dev": true, - "license": "MIT" - }, - "node_modules/@hapi/hoek": { - "version": "9.3.0", - "license": "BSD-3-Clause", - "peer": true - }, - "node_modules/@hapi/topo": { - "version": "5.1.0", - "license": "BSD-3-Clause", + "node_modules/@babel/parser": { + "version": "7.20.7", + "license": "MIT", "peer": true, - "dependencies": { - "@hapi/hoek": "^9.0.0" + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" } }, - "node_modules/@hutson/parse-repository-url": { - "version": "3.0.2", - "dev": true, - "license": "Apache-2.0", + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.18.6", + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@isaacs/string-locale-compare": { - "version": "1.1.0", - "dev": true, - "license": "ISC" - }, - "node_modules/@jest/create-cache-key-function": { - "version": "27.5.1", + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.20.7", "license": "MIT", "peer": true, "dependencies": { - "@jest/types": "^27.5.1" + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/plugin-proposal-optional-chaining": "^7.20.7" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" } }, - "node_modules/@jest/create-cache-key-function/node_modules/@jest/types": { - "version": "27.5.1", + "node_modules/@babel/plugin-proposal-async-generator-functions": { + "version": "7.20.7", "license": "MIT", "peer": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-remap-async-to-generator": "^7.18.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/create-cache-key-function/node_modules/@types/yargs": { - "version": "16.0.4", + "node_modules/@babel/plugin-proposal-class-properties": { + "version": "7.18.6", "license": "MIT", "peer": true, "dependencies": { - "@types/yargs-parser": "*" + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/create-cache-key-function/node_modules/ansi-styles": { - "version": "4.3.0", + "node_modules/@babel/plugin-proposal-class-static-block": { + "version": "7.20.7", "license": "MIT", "peer": true, "dependencies": { - "color-convert": "^2.0.1" + "@babel/helper-create-class-features-plugin": "^7.20.7", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-class-static-block": "^7.14.5" }, "engines": { - "node": ">=8" + "node": ">=6.9.0" }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "peerDependencies": { + "@babel/core": "^7.12.0" } }, - "node_modules/@jest/create-cache-key-function/node_modules/chalk": { - "version": "4.1.2", + "node_modules/@babel/plugin-proposal-dynamic-import": { + "version": "7.18.6", "license": "MIT", "peer": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" }, "engines": { - "node": ">=10" + "node": ">=6.9.0" }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/create-cache-key-function/node_modules/color-convert": { - "version": "2.0.1", + "node_modules/@babel/plugin-proposal-export-default-from": { + "version": "7.18.10", "license": "MIT", "peer": true, "dependencies": { - "color-name": "~1.1.4" + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/plugin-syntax-export-default-from": "^7.18.6" }, "engines": { - "node": ">=7.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/create-cache-key-function/node_modules/color-name": { - "version": "1.1.4", - "license": "MIT", - "peer": true - }, - "node_modules/@jest/create-cache-key-function/node_modules/has-flag": { - "version": "4.0.0", + "node_modules/@babel/plugin-proposal-export-namespace-from": { + "version": "7.18.9", "license": "MIT", "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jest/create-cache-key-function/node_modules/supports-color": { - "version": "7.2.0", + "node_modules/@babel/plugin-proposal-json-strings": { + "version": "7.18.6", "license": "MIT", "peer": true, "dependencies": { - "has-flag": "^4.0.0" + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-json-strings": "^7.8.3" }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.1.1", + "node_modules/@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.20.7", "license": "MIT", "peer": true, "dependencies": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" }, "engines": { - "node": ">=6.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.0", + "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.18.6", "license": "MIT", "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, "engines": { - "node": ">=6.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", + "node_modules/@babel/plugin-proposal-numeric-separator": { + "version": "7.18.6", "license": "MIT", "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, "engines": { - "node": ">=6.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "license": "MIT", - "peer": true - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.17", + "node_modules/@babel/plugin-proposal-object-rest-spread": { + "version": "7.20.7", "license": "MIT", "peer": true, "dependencies": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" + "@babel/compat-data": "^7.20.5", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/add": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-proposal-optional-catch-binding": { + "version": "7.18.6", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/bootstrap": "6.3.0", - "@lerna/command": "6.3.0", - "@lerna/filter-options": "6.3.0", - "@lerna/npm-conf": "6.3.0", - "@lerna/validation-error": "6.3.0", - "dedent": "^0.7.0", - "npm-package-arg": "8.1.1", - "p-map": "^4.0.0", - "pacote": "^13.6.1", - "semver": "^7.3.4" + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/add/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", + "node_modules/@babel/plugin-proposal-optional-chaining": { + "version": "7.20.7", + "license": "MIT", + "peer": true, "dependencies": { - "yallist": "^4.0.0" + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" }, "engines": { - "node": ">=10" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/add/node_modules/semver": { - "version": "7.3.8", - "dev": true, - "license": "ISC", + "node_modules/@babel/plugin-proposal-private-methods": { + "version": "7.18.6", + "license": "MIT", + "peer": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" }, "engines": { - "node": ">=10" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/add/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/@lerna/bootstrap": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.20.5", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/command": "6.3.0", - "@lerna/filter-options": "6.3.0", - "@lerna/has-npm-version": "6.3.0", - "@lerna/npm-install": "6.3.0", - "@lerna/package-graph": "6.3.0", - "@lerna/pulse-till-done": "6.3.0", - "@lerna/rimraf-dir": "6.3.0", - "@lerna/run-lifecycle": "6.3.0", - "@lerna/run-topologically": "6.3.0", - "@lerna/symlink-binary": "6.3.0", - "@lerna/symlink-dependencies": "6.3.0", - "@lerna/validation-error": "6.3.0", - "@npmcli/arborist": "5.3.0", - "dedent": "^0.7.0", - "get-port": "^5.1.1", - "multimatch": "^5.0.0", - "npm-package-arg": "8.1.1", - "npmlog": "^6.0.2", - "p-map": "^4.0.0", - "p-map-series": "^2.1.0", - "p-waterfall": "^2.1.1", - "semver": "^7.3.4" + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-create-class-features-plugin": "^7.20.5", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/bootstrap/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", + "node_modules/@babel/plugin-proposal-unicode-property-regex": { + "version": "7.18.6", + "license": "MIT", + "peer": true, "dependencies": { - "yallist": "^4.0.0" + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" }, "engines": { - "node": ">=10" + "node": ">=4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/bootstrap/node_modules/semver": { - "version": "7.3.8", - "dev": true, - "license": "ISC", + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "license": "MIT", + "peer": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "@babel/helper-plugin-utils": "^7.8.0" }, - "engines": { - "node": ">=10" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/bootstrap/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/@lerna/changed": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/collect-updates": "6.3.0", - "@lerna/command": "6.3.0", - "@lerna/listable": "6.3.0", - "@lerna/output": "6.3.0" + "@babel/helper-plugin-utils": "^7.12.13" }, - "engines": { - "node": "^14.15.0 || >=16.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/check-working-tree": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/collect-uncommitted": "6.3.0", - "@lerna/describe-ref": "6.3.0", - "@lerna/validation-error": "6.3.0" + "@babel/helper-plugin-utils": "^7.14.5" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/child-process": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", "license": "MIT", + "peer": true, "dependencies": { - "chalk": "^4.1.0", - "execa": "^5.0.0", - "strong-log-transformer": "^2.1.0" + "@babel/helper-plugin-utils": "^7.8.0" }, - "engines": { - "node": "^14.15.0 || >=16.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/child-process/node_modules/ansi-styles": { - "version": "4.3.0", - "dev": true, + "node_modules/@babel/plugin-syntax-export-default-from": { + "version": "7.18.6", "license": "MIT", + "peer": true, "dependencies": { - "color-convert": "^2.0.1" + "@babel/helper-plugin-utils": "^7.18.6" }, "engines": { - "node": ">=8" + "node": ">=6.9.0" }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/child-process/node_modules/chalk": { - "version": "4.1.2", - "dev": true, + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", "license": "MIT", + "peer": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" + "@babel/helper-plugin-utils": "^7.8.3" }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/child-process/node_modules/color-convert": { - "version": "2.0.1", - "dev": true, + "node_modules/@babel/plugin-syntax-flow": { + "version": "7.18.6", "license": "MIT", + "peer": true, "dependencies": { - "color-name": "~1.1.4" + "@babel/helper-plugin-utils": "^7.18.6" }, "engines": { - "node": ">=7.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/child-process/node_modules/color-name": { - "version": "1.1.4", - "dev": true, - "license": "MIT" - }, - "node_modules/@lerna/child-process/node_modules/has-flag": { - "version": "4.0.0", - "dev": true, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.20.0", "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.19.0" + }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/child-process/node_modules/supports-color": { - "version": "7.2.0", - "dev": true, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", "license": "MIT", + "peer": true, "dependencies": { - "has-flag": "^4.0.0" + "@babel/helper-plugin-utils": "^7.8.0" }, - "engines": { - "node": ">=8" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/clean": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.18.6", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/command": "6.3.0", - "@lerna/filter-options": "6.3.0", - "@lerna/prompt": "6.3.0", - "@lerna/pulse-till-done": "6.3.0", - "@lerna/rimraf-dir": "6.3.0", - "p-map": "^4.0.0", - "p-map-series": "^2.1.0", - "p-waterfall": "^2.1.1" + "@babel/helper-plugin-utils": "^7.18.6" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/cli": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/global-options": "6.3.0", - "dedent": "^0.7.0", - "npmlog": "^6.0.2", - "yargs": "^16.2.0" + "@babel/helper-plugin-utils": "^7.10.4" }, - "engines": { - "node": "^14.15.0 || >=16.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/collect-uncommitted": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/child-process": "6.3.0", - "chalk": "^4.1.0", - "npmlog": "^6.0.2" + "@babel/helper-plugin-utils": "^7.8.0" }, - "engines": { - "node": "^14.15.0 || >=16.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/collect-uncommitted/node_modules/ansi-styles": { - "version": "4.3.0", - "dev": true, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", "license": "MIT", + "peer": true, "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" + "@babel/helper-plugin-utils": "^7.10.4" }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/collect-uncommitted/node_modules/chalk": { - "version": "4.1.2", - "dev": true, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", "license": "MIT", + "peer": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" + "@babel/helper-plugin-utils": "^7.8.0" }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/collect-uncommitted/node_modules/color-convert": { - "version": "2.0.1", - "dev": true, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", "license": "MIT", + "peer": true, "dependencies": { - "color-name": "~1.1.4" + "@babel/helper-plugin-utils": "^7.8.0" }, - "engines": { - "node": ">=7.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/collect-uncommitted/node_modules/color-name": { - "version": "1.1.4", - "dev": true, - "license": "MIT" - }, - "node_modules/@lerna/collect-uncommitted/node_modules/has-flag": { - "version": "4.0.0", - "dev": true, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", "license": "MIT", - "engines": { - "node": ">=8" + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/collect-uncommitted/node_modules/supports-color": { - "version": "7.2.0", - "dev": true, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", "license": "MIT", + "peer": true, "dependencies": { - "has-flag": "^4.0.0" + "@babel/helper-plugin-utils": "^7.14.5" }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/collect-updates": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/child-process": "6.3.0", - "@lerna/describe-ref": "6.3.0", - "minimatch": "^3.0.4", - "npmlog": "^6.0.2", - "slash": "^3.0.0" + "@babel/helper-plugin-utils": "^7.14.5" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/command": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.20.0", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/child-process": "6.3.0", - "@lerna/package-graph": "6.3.0", - "@lerna/project": "6.3.0", - "@lerna/validation-error": "6.3.0", - "@lerna/write-log-file": "6.3.0", - "clone-deep": "^4.0.1", - "dedent": "^0.7.0", - "execa": "^5.0.0", - "is-ci": "^2.0.0", - "npmlog": "^6.0.2" + "@babel/helper-plugin-utils": "^7.19.0" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/conventional-commits": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.20.7", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/validation-error": "6.3.0", - "conventional-changelog-angular": "^5.0.12", - "conventional-changelog-core": "^4.2.4", - "conventional-recommended-bump": "^6.1.0", - "fs-extra": "^9.1.0", - "get-stream": "^6.0.0", - "npm-package-arg": "8.1.1", - "npmlog": "^6.0.2", - "pify": "^5.0.0", - "semver": "^7.3.4" + "@babel/helper-plugin-utils": "^7.20.2" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/conventional-commits/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.20.7", + "license": "MIT", + "peer": true, "dependencies": { - "yallist": "^4.0.0" + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-remap-async-to-generator": "^7.18.9" }, "engines": { - "node": ">=10" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/conventional-commits/node_modules/semver": { - "version": "7.3.8", - "dev": true, - "license": "ISC", + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.18.6", + "license": "MIT", + "peer": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "@babel/helper-plugin-utils": "^7.18.6" }, "engines": { - "node": ">=10" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/conventional-commits/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/@lerna/create": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.20.11", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/child-process": "6.3.0", - "@lerna/command": "6.3.0", - "@lerna/npm-conf": "6.3.0", - "@lerna/validation-error": "6.3.0", - "dedent": "^0.7.0", - "fs-extra": "^9.1.0", - "init-package-json": "^3.0.2", - "npm-package-arg": "8.1.1", - "p-reduce": "^2.1.0", - "pacote": "^13.6.1", - "pify": "^5.0.0", - "semver": "^7.3.4", - "slash": "^3.0.0", - "validate-npm-package-license": "^3.0.4", - "validate-npm-package-name": "^4.0.0", - "yargs-parser": "20.2.4" + "@babel/helper-plugin-utils": "^7.20.2" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/create-symlink": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.20.7", "license": "MIT", + "peer": true, "dependencies": { - "cmd-shim": "^5.0.0", - "fs-extra": "^9.1.0", - "npmlog": "^6.0.2" + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-replace-supers": "^7.20.7", + "@babel/helper-split-export-declaration": "^7.18.6", + "globals": "^11.1.0" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/create/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.20.7", + "license": "MIT", + "peer": true, "dependencies": { - "yallist": "^4.0.0" + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/template": "^7.20.7" }, "engines": { - "node": ">=10" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/create/node_modules/semver": { - "version": "7.3.8", - "dev": true, - "license": "ISC", + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.20.7", + "license": "MIT", + "peer": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "@babel/helper-plugin-utils": "^7.20.2" }, "engines": { - "node": ">=10" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/create/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/@lerna/describe-ref": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.18.6", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/child-process": "6.3.0", - "npmlog": "^6.0.2" + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/diff": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.18.9", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/child-process": "6.3.0", - "@lerna/command": "6.3.0", - "@lerna/validation-error": "6.3.0", - "npmlog": "^6.0.2" + "@babel/helper-plugin-utils": "^7.18.9" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/exec": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.18.6", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/child-process": "6.3.0", - "@lerna/command": "6.3.0", - "@lerna/filter-options": "6.3.0", - "@lerna/profiler": "6.3.0", - "@lerna/run-topologically": "6.3.0", - "@lerna/validation-error": "6.3.0", - "p-map": "^4.0.0" + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/filter-options": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-flow-strip-types": { + "version": "7.19.0", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/collect-updates": "6.3.0", - "@lerna/filter-packages": "6.3.0", - "dedent": "^0.7.0", - "npmlog": "^6.0.2" + "@babel/helper-plugin-utils": "^7.19.0", + "@babel/plugin-syntax-flow": "^7.18.6" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/filter-packages": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.18.8", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/validation-error": "6.3.0", - "multimatch": "^5.0.0", - "npmlog": "^6.0.2" + "@babel/helper-plugin-utils": "^7.18.6" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/get-npm-exec-opts": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.18.9", "license": "MIT", + "peer": true, "dependencies": { - "npmlog": "^6.0.2" + "@babel/helper-compilation-targets": "^7.18.9", + "@babel/helper-function-name": "^7.18.9", + "@babel/helper-plugin-utils": "^7.18.9" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/get-packed": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.18.9", "license": "MIT", + "peer": true, "dependencies": { - "fs-extra": "^9.1.0", - "ssri": "^9.0.1", - "tar": "^6.1.0" + "@babel/helper-plugin-utils": "^7.18.9" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/github-client": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.18.6", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/child-process": "6.3.0", - "@octokit/plugin-enterprise-rest": "^6.0.1", - "@octokit/rest": "^19.0.3", - "git-url-parse": "^13.1.0", - "npmlog": "^6.0.2" + "@babel/helper-plugin-utils": "^7.18.6" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/gitlab-client": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.20.11", "license": "MIT", + "peer": true, "dependencies": { - "node-fetch": "^2.6.1", - "npmlog": "^6.0.2" + "@babel/helper-module-transforms": "^7.20.11", + "@babel/helper-plugin-utils": "^7.20.2" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/global-options": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.20.11", "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.20.11", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-simple-access": "^7.20.2" + }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/has-npm-version": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.20.11", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/child-process": "6.3.0", - "semver": "^7.3.4" + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-module-transforms": "^7.20.11", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-validator-identifier": "^7.19.1" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/has-npm-version/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.18.6", + "license": "MIT", + "peer": true, "dependencies": { - "yallist": "^4.0.0" + "@babel/helper-module-transforms": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" }, "engines": { - "node": ">=10" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/has-npm-version/node_modules/semver": { - "version": "7.3.8", - "dev": true, - "license": "ISC", + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.20.5", + "license": "MIT", + "peer": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "@babel/helper-create-regexp-features-plugin": "^7.20.5", + "@babel/helper-plugin-utils": "^7.20.2" }, "engines": { - "node": ">=10" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@lerna/has-npm-version/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/@lerna/import": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.18.6", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/child-process": "6.3.0", - "@lerna/command": "6.3.0", - "@lerna/prompt": "6.3.0", - "@lerna/pulse-till-done": "6.3.0", - "@lerna/validation-error": "6.3.0", - "dedent": "^0.7.0", - "fs-extra": "^9.1.0", - "p-map-series": "^2.1.0" + "@babel/helper-plugin-utils": "^7.18.6" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/info": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.18.6", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/command": "6.3.0", - "@lerna/output": "6.3.0", - "envinfo": "^7.7.4" + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-replace-supers": "^7.18.6" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/init": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.20.7", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/child-process": "6.3.0", - "@lerna/command": "6.3.0", - "@lerna/project": "6.3.0", - "fs-extra": "^9.1.0", - "p-map": "^4.0.0", - "write-json-file": "^4.3.0" + "@babel/helper-plugin-utils": "^7.20.2" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/link": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.18.6", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/command": "6.3.0", - "@lerna/package-graph": "6.3.0", - "@lerna/symlink-dependencies": "6.3.0", - "@lerna/validation-error": "6.3.0", - "p-map": "^4.0.0", - "slash": "^3.0.0" + "@babel/helper-plugin-utils": "^7.18.6" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/list": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-react-display-name": { + "version": "7.18.6", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/command": "6.3.0", - "@lerna/filter-options": "6.3.0", - "@lerna/listable": "6.3.0", - "@lerna/output": "6.3.0" + "@babel/helper-plugin-utils": "^7.18.6" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/listable": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-react-jsx": { + "version": "7.20.7", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/query-graph": "6.3.0", - "chalk": "^4.1.0", - "columnify": "^1.6.0" + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-jsx": "^7.18.6", + "@babel/types": "^7.20.7" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/listable/node_modules/ansi-styles": { - "version": "4.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-react-jsx-self": { + "version": "7.18.6", "license": "MIT", + "peer": true, "dependencies": { - "color-convert": "^2.0.1" + "@babel/helper-plugin-utils": "^7.18.6" }, "engines": { - "node": ">=8" + "node": ">=6.9.0" }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/listable/node_modules/chalk": { - "version": "4.1.2", - "dev": true, + "node_modules/@babel/plugin-transform-react-jsx-source": { + "version": "7.19.6", "license": "MIT", + "peer": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "@babel/helper-plugin-utils": "^7.19.0" }, "engines": { - "node": ">=10" + "node": ">=6.9.0" }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/listable/node_modules/color-convert": { - "version": "2.0.1", - "dev": true, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.20.5", "license": "MIT", + "peer": true, "dependencies": { - "color-name": "~1.1.4" + "@babel/helper-plugin-utils": "^7.20.2", + "regenerator-transform": "^0.15.1" }, "engines": { - "node": ">=7.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/listable/node_modules/color-name": { - "version": "1.1.4", - "dev": true, - "license": "MIT" - }, - "node_modules/@lerna/listable/node_modules/has-flag": { - "version": "4.0.0", - "dev": true, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.18.6", "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/listable/node_modules/supports-color": { - "version": "7.2.0", - "dev": true, + "node_modules/@babel/plugin-transform-runtime": { + "version": "7.19.6", "license": "MIT", + "peer": true, "dependencies": { - "has-flag": "^4.0.0" + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.19.0", + "babel-plugin-polyfill-corejs2": "^0.3.3", + "babel-plugin-polyfill-corejs3": "^0.6.0", + "babel-plugin-polyfill-regenerator": "^0.4.1", + "semver": "^6.3.0" }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/log-packed": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.18.6", "license": "MIT", + "peer": true, "dependencies": { - "byte-size": "^7.0.0", - "columnify": "^1.6.0", - "has-unicode": "^2.0.1", - "npmlog": "^6.0.2" + "@babel/helper-plugin-utils": "^7.18.6" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/npm-conf": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.20.7", "license": "MIT", + "peer": true, "dependencies": { - "config-chain": "^1.1.12", - "pify": "^5.0.0" + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/npm-dist-tag": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.18.6", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/otplease": "6.3.0", - "npm-package-arg": "8.1.1", - "npm-registry-fetch": "^13.3.0", - "npmlog": "^6.0.2" + "@babel/helper-plugin-utils": "^7.18.6" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/npm-install": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.18.9", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/child-process": "6.3.0", - "@lerna/get-npm-exec-opts": "6.3.0", - "fs-extra": "^9.1.0", - "npm-package-arg": "8.1.1", - "npmlog": "^6.0.2", - "signal-exit": "^3.0.3", - "write-pkg": "^4.0.0" + "@babel/helper-plugin-utils": "^7.18.9" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/npm-publish": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.18.9", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/otplease": "6.3.0", - "@lerna/run-lifecycle": "6.3.0", - "fs-extra": "^9.1.0", - "libnpmpublish": "^6.0.4", - "npm-package-arg": "8.1.1", - "npmlog": "^6.0.2", - "pify": "^5.0.0", - "read-package-json": "^5.0.1" + "@babel/helper-plugin-utils": "^7.18.9" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/npm-run-script": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-typescript": { + "version": "7.20.7", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/child-process": "6.3.0", - "@lerna/get-npm-exec-opts": "6.3.0", - "npmlog": "^6.0.2" + "@babel/helper-create-class-features-plugin": "^7.20.7", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-typescript": "^7.20.0" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/otplease": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.18.10", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/prompt": "6.3.0" + "@babel/helper-plugin-utils": "^7.18.9" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/output": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.18.6", "license": "MIT", + "peer": true, "dependencies": { - "npmlog": "^6.0.2" + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/pack-directory": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/preset-env": { + "version": "7.20.2", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/get-packed": "6.3.0", - "@lerna/package": "6.3.0", - "@lerna/run-lifecycle": "6.3.0", - "@lerna/temp-write": "6.3.0", - "npm-packlist": "^5.1.1", - "npmlog": "^6.0.2", - "tar": "^6.1.0" + "@babel/compat-data": "^7.20.1", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-async-generator-functions": "^7.20.1", + "@babel/plugin-proposal-class-properties": "^7.18.6", + "@babel/plugin-proposal-class-static-block": "^7.18.6", + "@babel/plugin-proposal-dynamic-import": "^7.18.6", + "@babel/plugin-proposal-export-namespace-from": "^7.18.9", + "@babel/plugin-proposal-json-strings": "^7.18.6", + "@babel/plugin-proposal-logical-assignment-operators": "^7.18.9", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", + "@babel/plugin-proposal-numeric-separator": "^7.18.6", + "@babel/plugin-proposal-object-rest-spread": "^7.20.2", + "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", + "@babel/plugin-proposal-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-private-methods": "^7.18.6", + "@babel/plugin-proposal-private-property-in-object": "^7.18.6", + "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.20.0", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.18.6", + "@babel/plugin-transform-async-to-generator": "^7.18.6", + "@babel/plugin-transform-block-scoped-functions": "^7.18.6", + "@babel/plugin-transform-block-scoping": "^7.20.2", + "@babel/plugin-transform-classes": "^7.20.2", + "@babel/plugin-transform-computed-properties": "^7.18.9", + "@babel/plugin-transform-destructuring": "^7.20.2", + "@babel/plugin-transform-dotall-regex": "^7.18.6", + "@babel/plugin-transform-duplicate-keys": "^7.18.9", + "@babel/plugin-transform-exponentiation-operator": "^7.18.6", + "@babel/plugin-transform-for-of": "^7.18.8", + "@babel/plugin-transform-function-name": "^7.18.9", + "@babel/plugin-transform-literals": "^7.18.9", + "@babel/plugin-transform-member-expression-literals": "^7.18.6", + "@babel/plugin-transform-modules-amd": "^7.19.6", + "@babel/plugin-transform-modules-commonjs": "^7.19.6", + "@babel/plugin-transform-modules-systemjs": "^7.19.6", + "@babel/plugin-transform-modules-umd": "^7.18.6", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.19.1", + "@babel/plugin-transform-new-target": "^7.18.6", + "@babel/plugin-transform-object-super": "^7.18.6", + "@babel/plugin-transform-parameters": "^7.20.1", + "@babel/plugin-transform-property-literals": "^7.18.6", + "@babel/plugin-transform-regenerator": "^7.18.6", + "@babel/plugin-transform-reserved-words": "^7.18.6", + "@babel/plugin-transform-shorthand-properties": "^7.18.6", + "@babel/plugin-transform-spread": "^7.19.0", + "@babel/plugin-transform-sticky-regex": "^7.18.6", + "@babel/plugin-transform-template-literals": "^7.18.9", + "@babel/plugin-transform-typeof-symbol": "^7.18.9", + "@babel/plugin-transform-unicode-escapes": "^7.18.10", + "@babel/plugin-transform-unicode-regex": "^7.18.6", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.20.2", + "babel-plugin-polyfill-corejs2": "^0.3.3", + "babel-plugin-polyfill-corejs3": "^0.6.0", + "babel-plugin-polyfill-regenerator": "^0.4.1", + "core-js-compat": "^3.25.1", + "semver": "^6.3.0" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/package": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/preset-flow": { + "version": "7.18.6", "license": "MIT", + "peer": true, "dependencies": { - "load-json-file": "^6.2.0", - "npm-package-arg": "8.1.1", - "write-pkg": "^4.0.0" + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-transform-flow-strip-types": "^7.18.6" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/package-graph": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/preset-modules": { + "version": "0.1.5", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/prerelease-id-from-version": "6.3.0", - "@lerna/validation-error": "6.3.0", - "npm-package-arg": "8.1.1", - "npmlog": "^6.0.2", - "semver": "^7.3.4" + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-typescript": { + "version": "7.18.6", + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-transform-typescript": "^7.18.6" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/package-graph/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", + "node_modules/@babel/register": { + "version": "7.18.9", + "license": "MIT", + "peer": true, "dependencies": { - "yallist": "^4.0.0" + "clone-deep": "^4.0.1", + "find-cache-dir": "^2.0.0", + "make-dir": "^2.1.0", + "pirates": "^4.0.5", + "source-map-support": "^0.5.16" }, "engines": { - "node": ">=10" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@lerna/package-graph/node_modules/semver": { - "version": "7.3.8", - "dev": true, - "license": "ISC", + "node_modules/@babel/register/node_modules/make-dir": { + "version": "2.1.0", + "license": "MIT", + "peer": true, "dependencies": { - "lru-cache": "^6.0.0" + "pify": "^4.0.1", + "semver": "^5.6.0" }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@babel/register/node_modules/pify": { + "version": "4.0.1", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@babel/register/node_modules/semver": { + "version": "5.7.1", + "license": "ISC", + "peer": true, "bin": { - "semver": "bin/semver.js" + "semver": "bin/semver" + } + }, + "node_modules/@babel/runtime": { + "version": "7.20.7", + "license": "MIT", + "peer": true, + "dependencies": { + "regenerator-runtime": "^0.13.11" }, "engines": { - "node": ">=10" + "node": ">=6.9.0" } }, - "node_modules/@lerna/package-graph/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" + "node_modules/@babel/template": { + "version": "7.20.7", + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + } }, - "node_modules/@lerna/prerelease-id-from-version": { - "version": "6.3.0", - "dev": true, + "node_modules/@babel/traverse": { + "version": "7.20.10", "license": "MIT", + "peer": true, "dependencies": { - "semver": "^7.3.4" + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.7", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "debug": "^4.1.0", + "globals": "^11.1.0" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.9.0" } }, - "node_modules/@lerna/prerelease-id-from-version/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", + "node_modules/@babel/types": { + "version": "7.20.7", + "license": "MIT", + "peer": true, "dependencies": { - "yallist": "^4.0.0" + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "to-fast-properties": "^2.0.0" }, "engines": { - "node": ">=10" + "node": ">=6.9.0" } }, - "node_modules/@lerna/prerelease-id-from-version/node_modules/semver": { - "version": "7.3.8", + "node_modules/@esbuild/darwin-arm64": { + "version": "0.16.13", + "cpu": [ + "arm64" + ], "dev": true, - "license": "ISC", + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@gar/promisify": { + "version": "1.1.3", + "dev": true, + "license": "MIT" + }, + "node_modules/@hapi/hoek": { + "version": "9.3.0", + "license": "BSD-3-Clause", + "peer": true + }, + "node_modules/@hapi/topo": { + "version": "5.1.0", + "license": "BSD-3-Clause", + "peer": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, + "@hapi/hoek": "^9.0.0" + } + }, + "node_modules/@hutson/parse-repository-url": { + "version": "3.0.2", + "dev": true, + "license": "Apache-2.0", "engines": { - "node": ">=10" + "node": ">=6.9.0" } }, - "node_modules/@lerna/prerelease-id-from-version/node_modules/yallist": { - "version": "4.0.0", + "node_modules/@isaacs/string-locale-compare": { + "version": "1.1.0", "dev": true, "license": "ISC" }, - "node_modules/@lerna/profiler": { - "version": "6.3.0", - "dev": true, + "node_modules/@jest/create-cache-key-function": { + "version": "27.5.1", "license": "MIT", + "peer": true, "dependencies": { - "fs-extra": "^9.1.0", - "npmlog": "^6.0.2", - "upath": "^2.0.1" + "@jest/types": "^27.5.1" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@lerna/project": { - "version": "6.3.0", - "dev": true, + "node_modules/@jest/create-cache-key-function/node_modules/@jest/types": { + "version": "27.5.1", "license": "MIT", + "peer": true, "dependencies": { - "@lerna/package": "6.3.0", - "@lerna/validation-error": "6.3.0", - "cosmiconfig": "^7.0.0", - "dedent": "^0.7.0", - "dot-prop": "^6.0.1", - "glob-parent": "^5.1.1", - "globby": "^11.0.2", - "js-yaml": "^4.1.0", - "load-json-file": "^6.2.0", - "npmlog": "^6.0.2", - "p-map": "^4.0.0", - "resolve-from": "^5.0.0", - "write-json-file": "^4.3.0" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/@lerna/project/node_modules/argparse": { + "node_modules/@jest/create-cache-key-function/node_modules/@types/yargs": { + "version": "16.0.4", + "license": "MIT", + "peer": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@jest/create-cache-key-function/node_modules/ansi-styles": { + "version": "4.3.0", + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/create-cache-key-function/node_modules/chalk": { + "version": "4.1.2", + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/create-cache-key-function/node_modules/color-convert": { "version": "2.0.1", - "dev": true, - "license": "Python-2.0" + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } }, - "node_modules/@lerna/project/node_modules/js-yaml": { - "version": "4.1.0", - "dev": true, + "node_modules/@jest/create-cache-key-function/node_modules/color-name": { + "version": "1.1.4", + "license": "MIT", + "peer": true + }, + "node_modules/@jest/create-cache-key-function/node_modules/has-flag": { + "version": "4.0.0", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/create-cache-key-function/node_modules/supports-color": { + "version": "7.2.0", "license": "MIT", + "peer": true, "dependencies": { - "argparse": "^2.0.1" + "has-flag": "^4.0.0" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": ">=8" } }, - "node_modules/@lerna/prompt": { - "version": "6.3.0", - "dev": true, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.1.1", "license": "MIT", + "peer": true, "dependencies": { - "inquirer": "^8.2.4", - "npmlog": "^6.0.2" + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=6.0.0" } }, - "node_modules/@lerna/publish": { + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "license": "MIT", + "peer": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.17", + "license": "MIT", + "peer": true, + "dependencies": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, + "node_modules/@lerna/add": { "version": "6.3.0", "dev": true, "license": "MIT", "dependencies": { - "@lerna/check-working-tree": "6.3.0", - "@lerna/child-process": "6.3.0", - "@lerna/collect-updates": "6.3.0", + "@lerna/bootstrap": "6.3.0", "@lerna/command": "6.3.0", - "@lerna/describe-ref": "6.3.0", - "@lerna/log-packed": "6.3.0", + "@lerna/filter-options": "6.3.0", "@lerna/npm-conf": "6.3.0", - "@lerna/npm-dist-tag": "6.3.0", - "@lerna/npm-publish": "6.3.0", - "@lerna/otplease": "6.3.0", - "@lerna/output": "6.3.0", - "@lerna/pack-directory": "6.3.0", - "@lerna/prerelease-id-from-version": "6.3.0", - "@lerna/prompt": "6.3.0", - "@lerna/pulse-till-done": "6.3.0", - "@lerna/run-lifecycle": "6.3.0", - "@lerna/run-topologically": "6.3.0", "@lerna/validation-error": "6.3.0", - "@lerna/version": "6.3.0", - "fs-extra": "^9.1.0", - "libnpmaccess": "^6.0.3", + "dedent": "^0.7.0", "npm-package-arg": "8.1.1", - "npm-registry-fetch": "^13.3.0", - "npmlog": "^6.0.2", "p-map": "^4.0.0", - "p-pipe": "^3.1.0", "pacote": "^13.6.1", "semver": "^7.3.4" }, @@ -22850,7 +24443,7 @@ "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@lerna/publish/node_modules/lru-cache": { + "node_modules/@lerna/add/node_modules/lru-cache": { "version": "6.0.0", "dev": true, "license": "ISC", @@ -22861,7 +24454,7 @@ "node": ">=10" } }, - "node_modules/@lerna/publish/node_modules/semver": { + "node_modules/@lerna/add/node_modules/semver": { "version": "7.3.8", "dev": true, "license": "ISC", @@ -22875,205 +24468,223 @@ "node": ">=10" } }, - "node_modules/@lerna/publish/node_modules/yallist": { + "node_modules/@lerna/add/node_modules/yallist": { "version": "4.0.0", "dev": true, "license": "ISC" }, - "node_modules/@lerna/pulse-till-done": { + "node_modules/@lerna/bootstrap": { "version": "6.3.0", "dev": true, "license": "MIT", "dependencies": { - "npmlog": "^6.0.2" - }, - "engines": { + "@lerna/command": "6.3.0", + "@lerna/filter-options": "6.3.0", + "@lerna/has-npm-version": "6.3.0", + "@lerna/npm-install": "6.3.0", + "@lerna/package-graph": "6.3.0", + "@lerna/pulse-till-done": "6.3.0", + "@lerna/rimraf-dir": "6.3.0", + "@lerna/run-lifecycle": "6.3.0", + "@lerna/run-topologically": "6.3.0", + "@lerna/symlink-binary": "6.3.0", + "@lerna/symlink-dependencies": "6.3.0", + "@lerna/validation-error": "6.3.0", + "@npmcli/arborist": "5.3.0", + "dedent": "^0.7.0", + "get-port": "^5.1.1", + "multimatch": "^5.0.0", + "npm-package-arg": "8.1.1", + "npmlog": "^6.0.2", + "p-map": "^4.0.0", + "p-map-series": "^2.1.0", + "p-waterfall": "^2.1.1", + "semver": "^7.3.4" + }, + "engines": { "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@lerna/query-graph": { - "version": "6.3.0", + "node_modules/@lerna/bootstrap/node_modules/lru-cache": { + "version": "6.0.0", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "@lerna/package-graph": "6.3.0" + "yallist": "^4.0.0" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=10" } }, - "node_modules/@lerna/resolve-symlink": { - "version": "6.3.0", + "node_modules/@lerna/bootstrap/node_modules/semver": { + "version": "7.3.8", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "fs-extra": "^9.1.0", - "npmlog": "^6.0.2", - "read-cmd-shim": "^3.0.0" + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=10" } }, - "node_modules/@lerna/rimraf-dir": { + "node_modules/@lerna/bootstrap/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/@lerna/changed": { "version": "6.3.0", "dev": true, "license": "MIT", "dependencies": { - "@lerna/child-process": "6.3.0", - "npmlog": "^6.0.2", - "path-exists": "^4.0.0", - "rimraf": "^3.0.2" + "@lerna/collect-updates": "6.3.0", + "@lerna/command": "6.3.0", + "@lerna/listable": "6.3.0", + "@lerna/output": "6.3.0" }, "engines": { "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@lerna/run": { + "node_modules/@lerna/check-working-tree": { "version": "6.3.0", "dev": true, "license": "MIT", "dependencies": { - "@lerna/command": "6.3.0", - "@lerna/filter-options": "6.3.0", - "@lerna/npm-run-script": "6.3.0", - "@lerna/output": "6.3.0", - "@lerna/profiler": "6.3.0", - "@lerna/run-topologically": "6.3.0", - "@lerna/timer": "6.3.0", - "@lerna/validation-error": "6.3.0", - "fs-extra": "^9.1.0", - "p-map": "^4.0.0" + "@lerna/collect-uncommitted": "6.3.0", + "@lerna/describe-ref": "6.3.0", + "@lerna/validation-error": "6.3.0" }, "engines": { "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@lerna/run-lifecycle": { + "node_modules/@lerna/child-process": { "version": "6.3.0", "dev": true, "license": "MIT", "dependencies": { - "@lerna/npm-conf": "6.3.0", - "@npmcli/run-script": "^4.1.7", - "npmlog": "^6.0.2", - "p-queue": "^6.6.2" + "chalk": "^4.1.0", + "execa": "^5.0.0", + "strong-log-transformer": "^2.1.0" }, "engines": { "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@lerna/run-topologically": { - "version": "6.3.0", + "node_modules/@lerna/child-process/node_modules/ansi-styles": { + "version": "4.3.0", "dev": true, "license": "MIT", "dependencies": { - "@lerna/query-graph": "6.3.0", - "p-queue": "^6.6.2" + "color-convert": "^2.0.1" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@lerna/symlink-binary": { - "version": "6.3.0", + "node_modules/@lerna/child-process/node_modules/chalk": { + "version": "4.1.2", "dev": true, "license": "MIT", "dependencies": { - "@lerna/create-symlink": "6.3.0", - "@lerna/package": "6.3.0", - "fs-extra": "^9.1.0", - "p-map": "^4.0.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@lerna/symlink-dependencies": { - "version": "6.3.0", + "node_modules/@lerna/child-process/node_modules/color-convert": { + "version": "2.0.1", "dev": true, "license": "MIT", "dependencies": { - "@lerna/create-symlink": "6.3.0", - "@lerna/resolve-symlink": "6.3.0", - "@lerna/symlink-binary": "6.3.0", - "fs-extra": "^9.1.0", - "p-map": "^4.0.0", - "p-map-series": "^2.1.0" + "color-name": "~1.1.4" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=7.0.0" } }, - "node_modules/@lerna/temp-write": { - "version": "6.3.0", + "node_modules/@lerna/child-process/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "license": "MIT" + }, + "node_modules/@lerna/child-process/node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@lerna/child-process/node_modules/supports-color": { + "version": "7.2.0", "dev": true, "license": "MIT", "dependencies": { - "graceful-fs": "^4.1.15", - "is-stream": "^2.0.0", - "make-dir": "^3.0.0", - "temp-dir": "^1.0.0", - "uuid": "^8.3.2" + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/@lerna/timer": { + "node_modules/@lerna/clean": { "version": "6.3.0", "dev": true, "license": "MIT", + "dependencies": { + "@lerna/command": "6.3.0", + "@lerna/filter-options": "6.3.0", + "@lerna/prompt": "6.3.0", + "@lerna/pulse-till-done": "6.3.0", + "@lerna/rimraf-dir": "6.3.0", + "p-map": "^4.0.0", + "p-map-series": "^2.1.0", + "p-waterfall": "^2.1.1" + }, "engines": { "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@lerna/validation-error": { + "node_modules/@lerna/cli": { "version": "6.3.0", "dev": true, "license": "MIT", "dependencies": { - "npmlog": "^6.0.2" + "@lerna/global-options": "6.3.0", + "dedent": "^0.7.0", + "npmlog": "^6.0.2", + "yargs": "^16.2.0" }, "engines": { "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@lerna/version": { + "node_modules/@lerna/collect-uncommitted": { "version": "6.3.0", "dev": true, "license": "MIT", "dependencies": { - "@lerna/check-working-tree": "6.3.0", "@lerna/child-process": "6.3.0", - "@lerna/collect-updates": "6.3.0", - "@lerna/command": "6.3.0", - "@lerna/conventional-commits": "6.3.0", - "@lerna/github-client": "6.3.0", - "@lerna/gitlab-client": "6.3.0", - "@lerna/output": "6.3.0", - "@lerna/prerelease-id-from-version": "6.3.0", - "@lerna/prompt": "6.3.0", - "@lerna/run-lifecycle": "6.3.0", - "@lerna/run-topologically": "6.3.0", - "@lerna/temp-write": "6.3.0", - "@lerna/validation-error": "6.3.0", - "@nrwl/devkit": ">=14.8.6 < 16", "chalk": "^4.1.0", - "dedent": "^0.7.0", - "load-json-file": "^6.2.0", - "minimatch": "^3.0.4", - "npmlog": "^6.0.2", - "p-map": "^4.0.0", - "p-pipe": "^3.1.0", - "p-reduce": "^2.1.0", - "p-waterfall": "^2.1.1", - "semver": "^7.3.4", - "slash": "^3.0.0", - "write-json-file": "^4.3.0" + "npmlog": "^6.0.2" }, "engines": { "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@lerna/version/node_modules/ansi-styles": { + "node_modules/@lerna/collect-uncommitted/node_modules/ansi-styles": { "version": "4.3.0", "dev": true, "license": "MIT", @@ -23087,7 +24698,7 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@lerna/version/node_modules/chalk": { + "node_modules/@lerna/collect-uncommitted/node_modules/chalk": { "version": "4.1.2", "dev": true, "license": "MIT", @@ -23102,7 +24713,7 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@lerna/version/node_modules/color-convert": { + "node_modules/@lerna/collect-uncommitted/node_modules/color-convert": { "version": "2.0.1", "dev": true, "license": "MIT", @@ -23113,12 +24724,12 @@ "node": ">=7.0.0" } }, - "node_modules/@lerna/version/node_modules/color-name": { + "node_modules/@lerna/collect-uncommitted/node_modules/color-name": { "version": "1.1.4", "dev": true, "license": "MIT" }, - "node_modules/@lerna/version/node_modules/has-flag": { + "node_modules/@lerna/collect-uncommitted/node_modules/has-flag": { "version": "4.0.0", "dev": true, "license": "MIT", @@ -23126,32 +24737,7 @@ "node": ">=8" } }, - "node_modules/@lerna/version/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@lerna/version/node_modules/semver": { - "version": "7.3.8", - "dev": true, - "license": "ISC", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@lerna/version/node_modules/supports-color": { + "node_modules/@lerna/collect-uncommitted/node_modules/supports-color": { "version": "7.2.0", "dev": true, "license": "MIT", @@ -23162,136 +24748,73 @@ "node": ">=8" } }, - "node_modules/@lerna/version/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/@lerna/write-log-file": { + "node_modules/@lerna/collect-updates": { "version": "6.3.0", "dev": true, "license": "MIT", "dependencies": { + "@lerna/child-process": "6.3.0", + "@lerna/describe-ref": "6.3.0", + "minimatch": "^3.0.4", "npmlog": "^6.0.2", - "write-file-atomic": "^4.0.1" + "slash": "^3.0.0" }, "engines": { "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", + "node_modules/@lerna/command": { + "version": "6.3.0", "dev": true, "license": "MIT", "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" + "@lerna/child-process": "6.3.0", + "@lerna/package-graph": "6.3.0", + "@lerna/project": "6.3.0", + "@lerna/validation-error": "6.3.0", + "@lerna/write-log-file": "6.3.0", + "clone-deep": "^4.0.1", + "dedent": "^0.7.0", + "execa": "^5.0.0", + "is-ci": "^2.0.0", + "npmlog": "^6.0.2" }, "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 8" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", + "node_modules/@lerna/conventional-commits": { + "version": "6.3.0", "dev": true, "license": "MIT", "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@npmcli/arborist": { - "version": "5.3.0", - "dev": true, - "license": "ISC", - "dependencies": { - "@isaacs/string-locale-compare": "^1.1.0", - "@npmcli/installed-package-contents": "^1.0.7", - "@npmcli/map-workspaces": "^2.0.3", - "@npmcli/metavuln-calculator": "^3.0.1", - "@npmcli/move-file": "^2.0.0", - "@npmcli/name-from-folder": "^1.0.1", - "@npmcli/node-gyp": "^2.0.0", - "@npmcli/package-json": "^2.0.0", - "@npmcli/run-script": "^4.1.3", - "bin-links": "^3.0.0", - "cacache": "^16.0.6", - "common-ancestor-path": "^1.0.1", - "json-parse-even-better-errors": "^2.3.1", - "json-stringify-nice": "^1.1.4", - "mkdirp": "^1.0.4", - "mkdirp-infer-owner": "^2.0.0", - "nopt": "^5.0.0", - "npm-install-checks": "^5.0.0", - "npm-package-arg": "^9.0.0", - "npm-pick-manifest": "^7.0.0", - "npm-registry-fetch": "^13.0.0", + "@lerna/validation-error": "6.3.0", + "conventional-changelog-angular": "^5.0.12", + "conventional-changelog-core": "^4.2.4", + "conventional-recommended-bump": "^6.1.0", + "fs-extra": "^9.1.0", + "get-stream": "^6.0.0", + "npm-package-arg": "8.1.1", "npmlog": "^6.0.2", - "pacote": "^13.6.1", - "parse-conflict-json": "^2.0.1", - "proc-log": "^2.0.0", - "promise-all-reject-late": "^1.0.0", - "promise-call-limit": "^1.0.1", - "read-package-json-fast": "^2.0.2", - "readdir-scoped-modules": "^1.1.0", - "rimraf": "^3.0.2", - "semver": "^7.3.7", - "ssri": "^9.0.0", - "treeverse": "^2.0.0", - "walk-up-path": "^1.0.0" - }, - "bin": { - "arborist": "bin/index.js" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/arborist/node_modules/hosted-git-info": { - "version": "5.2.1", - "dev": true, - "license": "ISC", - "dependencies": { - "lru-cache": "^7.5.1" + "pify": "^5.0.0", + "semver": "^7.3.4" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/@npmcli/arborist/node_modules/lru-cache": { - "version": "7.14.1", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=12" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@npmcli/arborist/node_modules/npm-package-arg": { - "version": "9.1.2", + "node_modules/@lerna/conventional-commits/node_modules/lru-cache": { + "version": "6.0.0", "dev": true, "license": "ISC", "dependencies": { - "hosted-git-info": "^5.0.0", - "proc-log": "^2.0.1", - "semver": "^7.3.5", - "validate-npm-package-name": "^4.0.0" + "yallist": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=10" } }, - "node_modules/@npmcli/arborist/node_modules/semver": { + "node_modules/@lerna/conventional-commits/node_modules/semver": { "version": "7.3.8", "dev": true, "license": "ISC", @@ -23305,35 +24828,51 @@ "node": ">=10" } }, - "node_modules/@npmcli/arborist/node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", + "node_modules/@lerna/conventional-commits/node_modules/yallist": { + "version": "4.0.0", "dev": true, - "license": "ISC", + "license": "ISC" + }, + "node_modules/@lerna/create": { + "version": "6.3.0", + "dev": true, + "license": "MIT", "dependencies": { - "yallist": "^4.0.0" + "@lerna/child-process": "6.3.0", + "@lerna/command": "6.3.0", + "@lerna/npm-conf": "6.3.0", + "@lerna/validation-error": "6.3.0", + "dedent": "^0.7.0", + "fs-extra": "^9.1.0", + "init-package-json": "^3.0.2", + "npm-package-arg": "8.1.1", + "p-reduce": "^2.1.0", + "pacote": "^13.6.1", + "pify": "^5.0.0", + "semver": "^7.3.4", + "slash": "^3.0.0", + "validate-npm-package-license": "^3.0.4", + "validate-npm-package-name": "^4.0.0", + "yargs-parser": "20.2.4" }, "engines": { - "node": ">=10" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@npmcli/arborist/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/@npmcli/fs": { - "version": "2.1.2", + "node_modules/@lerna/create-symlink": { + "version": "6.3.0", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "@gar/promisify": "^1.1.3", - "semver": "^7.3.5" + "cmd-shim": "^5.0.0", + "fs-extra": "^9.1.0", + "npmlog": "^6.0.2" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@npmcli/fs/node_modules/lru-cache": { + "node_modules/@lerna/create/node_modules/lru-cache": { "version": "6.0.0", "dev": true, "license": "ISC", @@ -23344,7 +24883,7 @@ "node": ">=10" } }, - "node_modules/@npmcli/fs/node_modules/semver": { + "node_modules/@lerna/create/node_modules/semver": { "version": "7.3.8", "dev": true, "license": "ISC", @@ -23358,131 +24897,153 @@ "node": ">=10" } }, - "node_modules/@npmcli/fs/node_modules/yallist": { + "node_modules/@lerna/create/node_modules/yallist": { "version": "4.0.0", "dev": true, "license": "ISC" }, - "node_modules/@npmcli/git": { - "version": "3.0.2", + "node_modules/@lerna/describe-ref": { + "version": "6.3.0", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "@npmcli/promise-spawn": "^3.0.0", - "lru-cache": "^7.4.4", - "mkdirp": "^1.0.4", - "npm-pick-manifest": "^7.0.0", - "proc-log": "^2.0.0", - "promise-inflight": "^1.0.1", - "promise-retry": "^2.0.1", - "semver": "^7.3.5", - "which": "^2.0.2" + "@lerna/child-process": "6.3.0", + "npmlog": "^6.0.2" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@npmcli/git/node_modules/lru-cache": { - "version": "7.14.1", + "node_modules/@lerna/diff": { + "version": "6.3.0", "dev": true, - "license": "ISC", + "license": "MIT", + "dependencies": { + "@lerna/child-process": "6.3.0", + "@lerna/command": "6.3.0", + "@lerna/validation-error": "6.3.0", + "npmlog": "^6.0.2" + }, "engines": { - "node": ">=12" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@npmcli/git/node_modules/semver": { - "version": "7.3.8", + "node_modules/@lerna/exec": { + "version": "6.3.0", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "@lerna/child-process": "6.3.0", + "@lerna/command": "6.3.0", + "@lerna/filter-options": "6.3.0", + "@lerna/profiler": "6.3.0", + "@lerna/run-topologically": "6.3.0", + "@lerna/validation-error": "6.3.0", + "p-map": "^4.0.0" }, "engines": { - "node": ">=10" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@npmcli/git/node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", + "node_modules/@lerna/filter-options": { + "version": "6.3.0", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "yallist": "^4.0.0" + "@lerna/collect-updates": "6.3.0", + "@lerna/filter-packages": "6.3.0", + "dedent": "^0.7.0", + "npmlog": "^6.0.2" }, "engines": { - "node": ">=10" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@npmcli/git/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/@npmcli/installed-package-contents": { - "version": "1.0.7", + "node_modules/@lerna/filter-packages": { + "version": "6.3.0", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "npm-bundled": "^1.1.1", - "npm-normalize-package-bin": "^1.0.1" - }, - "bin": { - "installed-package-contents": "index.js" + "@lerna/validation-error": "6.3.0", + "multimatch": "^5.0.0", + "npmlog": "^6.0.2" }, "engines": { - "node": ">= 10" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@npmcli/map-workspaces": { - "version": "2.0.4", + "node_modules/@lerna/get-npm-exec-opts": { + "version": "6.3.0", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "@npmcli/name-from-folder": "^1.0.1", - "glob": "^8.0.1", - "minimatch": "^5.0.1", - "read-package-json-fast": "^2.0.3" + "npmlog": "^6.0.2" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@npmcli/map-workspaces/node_modules/brace-expansion": { - "version": "2.0.1", + "node_modules/@lerna/get-packed": { + "version": "6.3.0", "dev": true, "license": "MIT", "dependencies": { - "balanced-match": "^1.0.0" + "fs-extra": "^9.1.0", + "ssri": "^9.0.1", + "tar": "^6.1.0" + }, + "engines": { + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@npmcli/map-workspaces/node_modules/minimatch": { - "version": "5.1.2", + "node_modules/@lerna/github-client": { + "version": "6.3.0", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "brace-expansion": "^2.0.1" + "@lerna/child-process": "6.3.0", + "@octokit/plugin-enterprise-rest": "^6.0.1", + "@octokit/rest": "^19.0.3", + "git-url-parse": "^13.1.0", + "npmlog": "^6.0.2" }, "engines": { - "node": ">=10" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@npmcli/metavuln-calculator": { - "version": "3.1.1", + "node_modules/@lerna/gitlab-client": { + "version": "6.3.0", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "cacache": "^16.0.0", - "json-parse-even-better-errors": "^2.3.1", - "pacote": "^13.0.3", - "semver": "^7.3.5" + "node-fetch": "^2.6.1", + "npmlog": "^6.0.2" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@npmcli/metavuln-calculator/node_modules/lru-cache": { + "node_modules/@lerna/global-options": { + "version": "6.3.0", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.15.0 || >=16.0.0" + } + }, + "node_modules/@lerna/has-npm-version": { + "version": "6.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@lerna/child-process": "6.3.0", + "semver": "^7.3.4" + }, + "engines": { + "node": "^14.15.0 || >=16.0.0" + } + }, + "node_modules/@lerna/has-npm-version/node_modules/lru-cache": { "version": "6.0.0", "dev": true, "license": "ISC", @@ -23493,7 +25054,7 @@ "node": ">=10" } }, - "node_modules/@npmcli/metavuln-calculator/node_modules/semver": { + "node_modules/@lerna/has-npm-version/node_modules/semver": { "version": "7.3.8", "dev": true, "license": "ISC", @@ -23507,650 +25068,720 @@ "node": ">=10" } }, - "node_modules/@npmcli/metavuln-calculator/node_modules/yallist": { + "node_modules/@lerna/has-npm-version/node_modules/yallist": { "version": "4.0.0", "dev": true, "license": "ISC" }, - "node_modules/@npmcli/move-file": { - "version": "2.0.1", + "node_modules/@lerna/import": { + "version": "6.3.0", "dev": true, "license": "MIT", "dependencies": { - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" + "@lerna/child-process": "6.3.0", + "@lerna/command": "6.3.0", + "@lerna/prompt": "6.3.0", + "@lerna/pulse-till-done": "6.3.0", + "@lerna/validation-error": "6.3.0", + "dedent": "^0.7.0", + "fs-extra": "^9.1.0", + "p-map-series": "^2.1.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@npmcli/name-from-folder": { - "version": "1.0.1", - "dev": true, - "license": "ISC" - }, - "node_modules/@npmcli/node-gyp": { - "version": "2.0.0", + "node_modules/@lerna/info": { + "version": "6.3.0", "dev": true, - "license": "ISC", + "license": "MIT", + "dependencies": { + "@lerna/command": "6.3.0", + "@lerna/output": "6.3.0", + "envinfo": "^7.7.4" + }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@npmcli/package-json": { - "version": "2.0.0", + "node_modules/@lerna/init": { + "version": "6.3.0", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "json-parse-even-better-errors": "^2.3.1" + "@lerna/child-process": "6.3.0", + "@lerna/command": "6.3.0", + "@lerna/project": "6.3.0", + "fs-extra": "^9.1.0", + "p-map": "^4.0.0", + "write-json-file": "^4.3.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@npmcli/promise-spawn": { - "version": "3.0.0", + "node_modules/@lerna/link": { + "version": "6.3.0", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "infer-owner": "^1.0.4" + "@lerna/command": "6.3.0", + "@lerna/package-graph": "6.3.0", + "@lerna/symlink-dependencies": "6.3.0", + "@lerna/validation-error": "6.3.0", + "p-map": "^4.0.0", + "slash": "^3.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@npmcli/run-script": { - "version": "4.2.1", + "node_modules/@lerna/list": { + "version": "6.3.0", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "@npmcli/node-gyp": "^2.0.0", - "@npmcli/promise-spawn": "^3.0.0", - "node-gyp": "^9.0.0", - "read-package-json-fast": "^2.0.3", - "which": "^2.0.2" + "@lerna/command": "6.3.0", + "@lerna/filter-options": "6.3.0", + "@lerna/listable": "6.3.0", + "@lerna/output": "6.3.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@nrwl/cli": { - "version": "15.4.2", + "node_modules/@lerna/listable": { + "version": "6.3.0", "dev": true, "license": "MIT", "dependencies": { - "nx": "15.4.2" + "@lerna/query-graph": "6.3.0", + "chalk": "^4.1.0", + "columnify": "^1.6.0" + }, + "engines": { + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@nrwl/devkit": { - "version": "15.4.2", + "node_modules/@lerna/listable/node_modules/ansi-styles": { + "version": "4.3.0", "dev": true, "license": "MIT", "dependencies": { - "@phenomnomnominal/tsquery": "4.1.1", - "ejs": "^3.1.7", - "ignore": "^5.0.4", - "semver": "7.3.4", - "tslib": "^2.3.0" + "color-convert": "^2.0.1" }, - "peerDependencies": { - "nx": ">= 14 <= 16" + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@nrwl/devkit/node_modules/lru-cache": { - "version": "6.0.0", + "node_modules/@lerna/listable/node_modules/chalk": { + "version": "4.1.2", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "yallist": "^4.0.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@nrwl/devkit/node_modules/semver": { - "version": "7.3.4", + "node_modules/@lerna/listable/node_modules/color-convert": { + "version": "2.0.1", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "color-name": "~1.1.4" }, "engines": { - "node": ">=10" + "node": ">=7.0.0" } }, - "node_modules/@nrwl/devkit/node_modules/yallist": { - "version": "4.0.0", + "node_modules/@lerna/listable/node_modules/color-name": { + "version": "1.1.4", "dev": true, - "license": "ISC" + "license": "MIT" }, - "node_modules/@nrwl/tao": { - "version": "15.4.2", + "node_modules/@lerna/listable/node_modules/has-flag": { + "version": "4.0.0", "dev": true, "license": "MIT", - "dependencies": { - "nx": "15.4.2" - }, - "bin": { - "tao": "index.js" + "engines": { + "node": ">=8" } }, - "node_modules/@octokit/auth-token": { - "version": "3.0.2", + "node_modules/@lerna/listable/node_modules/supports-color": { + "version": "7.2.0", "dev": true, "license": "MIT", "dependencies": { - "@octokit/types": "^8.0.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">= 14" + "node": ">=8" } }, - "node_modules/@octokit/core": { - "version": "4.1.0", + "node_modules/@lerna/log-packed": { + "version": "6.3.0", "dev": true, "license": "MIT", "dependencies": { - "@octokit/auth-token": "^3.0.0", - "@octokit/graphql": "^5.0.0", - "@octokit/request": "^6.0.0", - "@octokit/request-error": "^3.0.0", - "@octokit/types": "^8.0.0", - "before-after-hook": "^2.2.0", - "universal-user-agent": "^6.0.0" + "byte-size": "^7.0.0", + "columnify": "^1.6.0", + "has-unicode": "^2.0.1", + "npmlog": "^6.0.2" }, "engines": { - "node": ">= 14" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@octokit/endpoint": { - "version": "7.0.3", + "node_modules/@lerna/npm-conf": { + "version": "6.3.0", "dev": true, "license": "MIT", "dependencies": { - "@octokit/types": "^8.0.0", - "is-plain-object": "^5.0.0", - "universal-user-agent": "^6.0.0" + "config-chain": "^1.1.12", + "pify": "^5.0.0" }, "engines": { - "node": ">= 14" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@octokit/graphql": { - "version": "5.0.4", + "node_modules/@lerna/npm-dist-tag": { + "version": "6.3.0", "dev": true, "license": "MIT", "dependencies": { - "@octokit/request": "^6.0.0", - "@octokit/types": "^8.0.0", - "universal-user-agent": "^6.0.0" + "@lerna/otplease": "6.3.0", + "npm-package-arg": "8.1.1", + "npm-registry-fetch": "^13.3.0", + "npmlog": "^6.0.2" }, "engines": { - "node": ">= 14" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@octokit/openapi-types": { - "version": "14.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/@octokit/plugin-enterprise-rest": { - "version": "6.0.1", - "dev": true, - "license": "MIT" - }, - "node_modules/@octokit/plugin-paginate-rest": { - "version": "5.0.1", + "node_modules/@lerna/npm-install": { + "version": "6.3.0", "dev": true, "license": "MIT", "dependencies": { - "@octokit/types": "^8.0.0" + "@lerna/child-process": "6.3.0", + "@lerna/get-npm-exec-opts": "6.3.0", + "fs-extra": "^9.1.0", + "npm-package-arg": "8.1.1", + "npmlog": "^6.0.2", + "signal-exit": "^3.0.3", + "write-pkg": "^4.0.0" }, "engines": { - "node": ">= 14" - }, - "peerDependencies": { - "@octokit/core": ">=4" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@octokit/plugin-request-log": { - "version": "1.0.4", + "node_modules/@lerna/npm-publish": { + "version": "6.3.0", "dev": true, "license": "MIT", - "peerDependencies": { - "@octokit/core": ">=3" + "dependencies": { + "@lerna/otplease": "6.3.0", + "@lerna/run-lifecycle": "6.3.0", + "fs-extra": "^9.1.0", + "libnpmpublish": "^6.0.4", + "npm-package-arg": "8.1.1", + "npmlog": "^6.0.2", + "pify": "^5.0.0", + "read-package-json": "^5.0.1" + }, + "engines": { + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@octokit/plugin-rest-endpoint-methods": { - "version": "6.7.0", + "node_modules/@lerna/npm-run-script": { + "version": "6.3.0", "dev": true, "license": "MIT", "dependencies": { - "@octokit/types": "^8.0.0", - "deprecation": "^2.3.1" + "@lerna/child-process": "6.3.0", + "@lerna/get-npm-exec-opts": "6.3.0", + "npmlog": "^6.0.2" }, "engines": { - "node": ">= 14" - }, - "peerDependencies": { - "@octokit/core": ">=3" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@octokit/request": { - "version": "6.2.2", + "node_modules/@lerna/otplease": { + "version": "6.3.0", "dev": true, "license": "MIT", "dependencies": { - "@octokit/endpoint": "^7.0.0", - "@octokit/request-error": "^3.0.0", - "@octokit/types": "^8.0.0", - "is-plain-object": "^5.0.0", - "node-fetch": "^2.6.7", - "universal-user-agent": "^6.0.0" + "@lerna/prompt": "6.3.0" }, "engines": { - "node": ">= 14" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@octokit/request-error": { - "version": "3.0.2", + "node_modules/@lerna/output": { + "version": "6.3.0", "dev": true, "license": "MIT", "dependencies": { - "@octokit/types": "^8.0.0", - "deprecation": "^2.0.0", - "once": "^1.4.0" + "npmlog": "^6.0.2" }, "engines": { - "node": ">= 14" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@octokit/rest": { - "version": "19.0.5", + "node_modules/@lerna/pack-directory": { + "version": "6.3.0", "dev": true, "license": "MIT", "dependencies": { - "@octokit/core": "^4.1.0", - "@octokit/plugin-paginate-rest": "^5.0.0", - "@octokit/plugin-request-log": "^1.0.4", - "@octokit/plugin-rest-endpoint-methods": "^6.7.0" + "@lerna/get-packed": "6.3.0", + "@lerna/package": "6.3.0", + "@lerna/run-lifecycle": "6.3.0", + "@lerna/temp-write": "6.3.0", + "npm-packlist": "^5.1.1", + "npmlog": "^6.0.2", + "tar": "^6.1.0" }, "engines": { - "node": ">= 14" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@octokit/types": { - "version": "8.0.0", + "node_modules/@lerna/package": { + "version": "6.3.0", "dev": true, "license": "MIT", "dependencies": { - "@octokit/openapi-types": "^14.0.0" + "load-json-file": "^6.2.0", + "npm-package-arg": "8.1.1", + "write-pkg": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@parcel/watcher": { - "version": "2.0.4", + "node_modules/@lerna/package-graph": { + "version": "6.3.0", "dev": true, - "hasInstallScript": true, "license": "MIT", "dependencies": { - "node-addon-api": "^3.2.1", - "node-gyp-build": "^4.3.0" + "@lerna/prerelease-id-from-version": "6.3.0", + "@lerna/validation-error": "6.3.0", + "npm-package-arg": "8.1.1", + "npmlog": "^6.0.2", + "semver": "^7.3.4" }, "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@phenomnomnominal/tsquery": { - "version": "4.1.1", + "node_modules/@lerna/package-graph/node_modules/lru-cache": { + "version": "6.0.0", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "esquery": "^1.0.1" + "yallist": "^4.0.0" }, - "peerDependencies": { - "typescript": "^3 || ^4" + "engines": { + "node": ">=10" } }, - "node_modules/@react-native-community/cli": { - "version": "9.3.2", - "license": "MIT", - "peer": true, + "node_modules/@lerna/package-graph/node_modules/semver": { + "version": "7.3.8", + "dev": true, + "license": "ISC", "dependencies": { - "@react-native-community/cli-clean": "^9.2.1", - "@react-native-community/cli-config": "^9.2.1", - "@react-native-community/cli-debugger-ui": "^9.0.0", - "@react-native-community/cli-doctor": "^9.3.0", - "@react-native-community/cli-hermes": "^9.3.1", - "@react-native-community/cli-plugin-metro": "^9.2.1", - "@react-native-community/cli-server-api": "^9.2.1", - "@react-native-community/cli-tools": "^9.2.1", - "@react-native-community/cli-types": "^9.1.0", - "chalk": "^4.1.2", - "commander": "^9.4.0", - "execa": "^1.0.0", - "find-up": "^4.1.0", - "fs-extra": "^8.1.0", - "graceful-fs": "^4.1.3", - "prompts": "^2.4.0", - "semver": "^6.3.0" + "lru-cache": "^6.0.0" }, "bin": { - "react-native": "build/bin.js" + "semver": "bin/semver.js" }, "engines": { - "node": ">=14" + "node": ">=10" } }, - "node_modules/@react-native-community/cli-clean": { - "version": "9.2.1", - "license": "MIT", - "peer": true, - "dependencies": { - "@react-native-community/cli-tools": "^9.2.1", - "chalk": "^4.1.2", - "execa": "^1.0.0", - "prompts": "^2.4.0" - } + "node_modules/@lerna/package-graph/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" }, - "node_modules/@react-native-community/cli-clean/node_modules/ansi-styles": { - "version": "4.3.0", + "node_modules/@lerna/prerelease-id-from-version": { + "version": "6.3.0", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "color-convert": "^2.0.1" + "semver": "^7.3.4" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-clean/node_modules/chalk": { - "version": "4.1.2", - "license": "MIT", - "peer": true, + "node_modules/@lerna/prerelease-id-from-version/node_modules/lru-cache": { + "version": "6.0.0", + "dev": true, + "license": "ISC", "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "yallist": "^4.0.0" }, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@react-native-community/cli-clean/node_modules/color-convert": { - "version": "2.0.1", - "license": "MIT", - "peer": true, + "node_modules/@lerna/prerelease-id-from-version/node_modules/semver": { + "version": "7.3.8", + "dev": true, + "license": "ISC", "dependencies": { - "color-name": "~1.1.4" + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">=7.0.0" + "node": ">=10" } }, - "node_modules/@react-native-community/cli-clean/node_modules/color-name": { - "version": "1.1.4", - "license": "MIT", - "peer": true + "node_modules/@lerna/prerelease-id-from-version/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" }, - "node_modules/@react-native-community/cli-clean/node_modules/cross-spawn": { - "version": "6.0.5", + "node_modules/@lerna/profiler": { + "version": "6.3.0", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" + "fs-extra": "^9.1.0", + "npmlog": "^6.0.2", + "upath": "^2.0.1" }, "engines": { - "node": ">=4.8" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-clean/node_modules/execa": { - "version": "1.0.0", + "node_modules/@lerna/project": { + "version": "6.3.0", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" + "@lerna/package": "6.3.0", + "@lerna/validation-error": "6.3.0", + "cosmiconfig": "^7.0.0", + "dedent": "^0.7.0", + "dot-prop": "^6.0.1", + "glob-parent": "^5.1.1", + "globby": "^11.0.2", + "js-yaml": "^4.1.0", + "load-json-file": "^6.2.0", + "npmlog": "^6.0.2", + "p-map": "^4.0.0", + "resolve-from": "^5.0.0", + "write-json-file": "^4.3.0" }, "engines": { - "node": ">=6" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-clean/node_modules/get-stream": { + "node_modules/@lerna/project/node_modules/argparse": { + "version": "2.0.1", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/@lerna/project/node_modules/js-yaml": { "version": "4.1.0", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "pump": "^3.0.0" + "argparse": "^2.0.1" }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@react-native-community/cli-clean/node_modules/has-flag": { - "version": "4.0.0", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=8" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/@react-native-community/cli-clean/node_modules/is-stream": { - "version": "1.1.0", + "node_modules/@lerna/prompt": { + "version": "6.3.0", + "dev": true, "license": "MIT", - "peer": true, + "dependencies": { + "inquirer": "^8.2.4", + "npmlog": "^6.0.2" + }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-clean/node_modules/npm-run-path": { - "version": "2.0.2", + "node_modules/@lerna/publish": { + "version": "6.3.0", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "path-key": "^2.0.0" + "@lerna/check-working-tree": "6.3.0", + "@lerna/child-process": "6.3.0", + "@lerna/collect-updates": "6.3.0", + "@lerna/command": "6.3.0", + "@lerna/describe-ref": "6.3.0", + "@lerna/log-packed": "6.3.0", + "@lerna/npm-conf": "6.3.0", + "@lerna/npm-dist-tag": "6.3.0", + "@lerna/npm-publish": "6.3.0", + "@lerna/otplease": "6.3.0", + "@lerna/output": "6.3.0", + "@lerna/pack-directory": "6.3.0", + "@lerna/prerelease-id-from-version": "6.3.0", + "@lerna/prompt": "6.3.0", + "@lerna/pulse-till-done": "6.3.0", + "@lerna/run-lifecycle": "6.3.0", + "@lerna/run-topologically": "6.3.0", + "@lerna/validation-error": "6.3.0", + "@lerna/version": "6.3.0", + "fs-extra": "^9.1.0", + "libnpmaccess": "^6.0.3", + "npm-package-arg": "8.1.1", + "npm-registry-fetch": "^13.3.0", + "npmlog": "^6.0.2", + "p-map": "^4.0.0", + "p-pipe": "^3.1.0", + "pacote": "^13.6.1", + "semver": "^7.3.4" }, "engines": { - "node": ">=4" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-clean/node_modules/path-key": { - "version": "2.0.1", - "license": "MIT", - "peer": true, + "node_modules/@lerna/publish/node_modules/lru-cache": { + "version": "6.0.0", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, "engines": { - "node": ">=4" + "node": ">=10" } }, - "node_modules/@react-native-community/cli-clean/node_modules/semver": { - "version": "5.7.1", + "node_modules/@lerna/publish/node_modules/semver": { + "version": "7.3.8", + "dev": true, "license": "ISC", - "peer": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, "bin": { - "semver": "bin/semver" + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "node_modules/@react-native-community/cli-clean/node_modules/shebang-command": { - "version": "1.2.0", + "node_modules/@lerna/publish/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/@lerna/pulse-till-done": { + "version": "6.3.0", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "shebang-regex": "^1.0.0" + "npmlog": "^6.0.2" }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-clean/node_modules/shebang-regex": { - "version": "1.0.0", + "node_modules/@lerna/query-graph": { + "version": "6.3.0", + "dev": true, "license": "MIT", - "peer": true, + "dependencies": { + "@lerna/package-graph": "6.3.0" + }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-clean/node_modules/supports-color": { - "version": "7.2.0", + "node_modules/@lerna/resolve-symlink": { + "version": "6.3.0", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "has-flag": "^4.0.0" + "fs-extra": "^9.1.0", + "npmlog": "^6.0.2", + "read-cmd-shim": "^3.0.0" }, "engines": { - "node": ">=8" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-clean/node_modules/which": { - "version": "1.3.1", - "license": "ISC", - "peer": true, + "node_modules/@lerna/rimraf-dir": { + "version": "6.3.0", + "dev": true, + "license": "MIT", "dependencies": { - "isexe": "^2.0.0" + "@lerna/child-process": "6.3.0", + "npmlog": "^6.0.2", + "path-exists": "^4.0.0", + "rimraf": "^3.0.2" }, - "bin": { - "which": "bin/which" + "engines": { + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-config": { - "version": "9.2.1", + "node_modules/@lerna/run": { + "version": "6.3.0", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@react-native-community/cli-tools": "^9.2.1", - "cosmiconfig": "^5.1.0", - "deepmerge": "^3.2.0", - "glob": "^7.1.3", - "joi": "^17.2.1" + "@lerna/command": "6.3.0", + "@lerna/filter-options": "6.3.0", + "@lerna/npm-run-script": "6.3.0", + "@lerna/output": "6.3.0", + "@lerna/profiler": "6.3.0", + "@lerna/run-topologically": "6.3.0", + "@lerna/timer": "6.3.0", + "@lerna/validation-error": "6.3.0", + "fs-extra": "^9.1.0", + "p-map": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-config/node_modules/cosmiconfig": { - "version": "5.2.1", + "node_modules/@lerna/run-lifecycle": { + "version": "6.3.0", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "import-fresh": "^2.0.0", - "is-directory": "^0.3.1", - "js-yaml": "^3.13.1", - "parse-json": "^4.0.0" + "@lerna/npm-conf": "6.3.0", + "@npmcli/run-script": "^4.1.7", + "npmlog": "^6.0.2", + "p-queue": "^6.6.2" }, "engines": { - "node": ">=4" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-config/node_modules/glob": { - "version": "7.2.3", - "license": "ISC", - "peer": true, + "node_modules/@lerna/run-topologically": { + "version": "6.3.0", + "dev": true, + "license": "MIT", "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "@lerna/query-graph": "6.3.0", + "p-queue": "^6.6.2" }, "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-config/node_modules/import-fresh": { - "version": "2.0.0", + "node_modules/@lerna/symlink-binary": { + "version": "6.3.0", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "caller-path": "^2.0.0", - "resolve-from": "^3.0.0" + "@lerna/create-symlink": "6.3.0", + "@lerna/package": "6.3.0", + "fs-extra": "^9.1.0", + "p-map": "^4.0.0" }, "engines": { - "node": ">=4" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-config/node_modules/parse-json": { - "version": "4.0.0", + "node_modules/@lerna/symlink-dependencies": { + "version": "6.3.0", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" + "@lerna/create-symlink": "6.3.0", + "@lerna/resolve-symlink": "6.3.0", + "@lerna/symlink-binary": "6.3.0", + "fs-extra": "^9.1.0", + "p-map": "^4.0.0", + "p-map-series": "^2.1.0" }, "engines": { - "node": ">=4" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-config/node_modules/resolve-from": { - "version": "3.0.0", + "node_modules/@lerna/temp-write": { + "version": "6.3.0", + "dev": true, "license": "MIT", - "peer": true, - "engines": { - "node": ">=4" + "dependencies": { + "graceful-fs": "^4.1.15", + "is-stream": "^2.0.0", + "make-dir": "^3.0.0", + "temp-dir": "^1.0.0", + "uuid": "^8.3.2" } }, - "node_modules/@react-native-community/cli-debugger-ui": { - "version": "9.0.0", + "node_modules/@lerna/timer": { + "version": "6.3.0", + "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "serve-static": "^1.13.1" + "engines": { + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-doctor": { - "version": "9.3.0", + "node_modules/@lerna/validation-error": { + "version": "6.3.0", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@react-native-community/cli-config": "^9.2.1", - "@react-native-community/cli-platform-ios": "^9.3.0", - "@react-native-community/cli-tools": "^9.2.1", - "chalk": "^4.1.2", - "command-exists": "^1.2.8", - "envinfo": "^7.7.2", - "execa": "^1.0.0", - "hermes-profile-transformer": "^0.0.6", - "ip": "^1.1.5", - "node-stream-zip": "^1.9.1", - "ora": "^5.4.1", - "prompts": "^2.4.0", - "semver": "^6.3.0", - "strip-ansi": "^5.2.0", - "sudo-prompt": "^9.0.0", - "wcwidth": "^1.0.1" + "npmlog": "^6.0.2" + }, + "engines": { + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-doctor/node_modules/ansi-regex": { - "version": "4.1.1", + "node_modules/@lerna/version": { + "version": "6.3.0", + "dev": true, "license": "MIT", - "peer": true, + "dependencies": { + "@lerna/check-working-tree": "6.3.0", + "@lerna/child-process": "6.3.0", + "@lerna/collect-updates": "6.3.0", + "@lerna/command": "6.3.0", + "@lerna/conventional-commits": "6.3.0", + "@lerna/github-client": "6.3.0", + "@lerna/gitlab-client": "6.3.0", + "@lerna/output": "6.3.0", + "@lerna/prerelease-id-from-version": "6.3.0", + "@lerna/prompt": "6.3.0", + "@lerna/run-lifecycle": "6.3.0", + "@lerna/run-topologically": "6.3.0", + "@lerna/temp-write": "6.3.0", + "@lerna/validation-error": "6.3.0", + "@nrwl/devkit": ">=14.8.6 < 16", + "chalk": "^4.1.0", + "dedent": "^0.7.0", + "load-json-file": "^6.2.0", + "minimatch": "^3.0.4", + "npmlog": "^6.0.2", + "p-map": "^4.0.0", + "p-pipe": "^3.1.0", + "p-reduce": "^2.1.0", + "p-waterfall": "^2.1.1", + "semver": "^7.3.4", + "slash": "^3.0.0", + "write-json-file": "^4.3.0" + }, "engines": { - "node": ">=6" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-doctor/node_modules/ansi-styles": { + "node_modules/@lerna/version/node_modules/ansi-styles": { "version": "4.3.0", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { "color-convert": "^2.0.1" }, @@ -24161,10 +25792,10 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@react-native-community/cli-doctor/node_modules/chalk": { + "node_modules/@lerna/version/node_modules/chalk": { "version": "4.1.2", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -24176,10 +25807,10 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@react-native-community/cli-doctor/node_modules/color-convert": { + "node_modules/@lerna/version/node_modules/color-convert": { "version": "2.0.1", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { "color-name": "~1.1.4" }, @@ -24187,482 +25818,753 @@ "node": ">=7.0.0" } }, - "node_modules/@react-native-community/cli-doctor/node_modules/color-name": { + "node_modules/@lerna/version/node_modules/color-name": { "version": "1.1.4", - "license": "MIT", - "peer": true + "dev": true, + "license": "MIT" }, - "node_modules/@react-native-community/cli-doctor/node_modules/cross-spawn": { - "version": "6.0.5", + "node_modules/@lerna/version/node_modules/has-flag": { + "version": "4.0.0", + "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, "engines": { - "node": ">=4.8" + "node": ">=8" } }, - "node_modules/@react-native-community/cli-doctor/node_modules/cross-spawn/node_modules/semver": { - "version": "5.7.1", + "node_modules/@lerna/version/node_modules/lru-cache": { + "version": "6.0.0", + "dev": true, "license": "ISC", - "peer": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/@react-native-community/cli-doctor/node_modules/execa": { - "version": "1.0.0", - "license": "MIT", - "peer": true, "dependencies": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" + "yallist": "^4.0.0" }, "engines": { - "node": ">=6" + "node": ">=10" } }, - "node_modules/@react-native-community/cli-doctor/node_modules/get-stream": { - "version": "4.1.0", - "license": "MIT", - "peer": true, + "node_modules/@lerna/version/node_modules/semver": { + "version": "7.3.8", + "dev": true, + "license": "ISC", "dependencies": { - "pump": "^3.0.0" + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">=6" + "node": ">=10" } }, - "node_modules/@react-native-community/cli-doctor/node_modules/has-flag": { - "version": "4.0.0", + "node_modules/@lerna/version/node_modules/supports-color": { + "version": "7.2.0", + "dev": true, "license": "MIT", - "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, "engines": { "node": ">=8" } }, - "node_modules/@react-native-community/cli-doctor/node_modules/ip": { - "version": "1.1.8", - "license": "MIT", - "peer": true + "node_modules/@lerna/version/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" }, - "node_modules/@react-native-community/cli-doctor/node_modules/is-stream": { - "version": "1.1.0", + "node_modules/@lerna/write-log-file": { + "version": "6.3.0", + "dev": true, "license": "MIT", - "peer": true, + "dependencies": { + "npmlog": "^6.0.2", + "write-file-atomic": "^4.0.1" + }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-doctor/node_modules/npm-run-path": { - "version": "2.0.2", + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "path-key": "^2.0.0" + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" }, "engines": { - "node": ">=4" + "node": ">= 8" } }, - "node_modules/@react-native-community/cli-doctor/node_modules/path-key": { - "version": "2.0.1", + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "dev": true, "license": "MIT", - "peer": true, "engines": { - "node": ">=4" + "node": ">= 8" } }, - "node_modules/@react-native-community/cli-doctor/node_modules/shebang-command": { - "version": "1.2.0", + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "shebang-regex": "^1.0.0" + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" }, "engines": { - "node": ">=0.10.0" + "node": ">= 8" } }, - "node_modules/@react-native-community/cli-doctor/node_modules/shebang-regex": { - "version": "1.0.0", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" + "node_modules/@npmcli/arborist": { + "version": "5.3.0", + "dev": true, + "license": "ISC", + "dependencies": { + "@isaacs/string-locale-compare": "^1.1.0", + "@npmcli/installed-package-contents": "^1.0.7", + "@npmcli/map-workspaces": "^2.0.3", + "@npmcli/metavuln-calculator": "^3.0.1", + "@npmcli/move-file": "^2.0.0", + "@npmcli/name-from-folder": "^1.0.1", + "@npmcli/node-gyp": "^2.0.0", + "@npmcli/package-json": "^2.0.0", + "@npmcli/run-script": "^4.1.3", + "bin-links": "^3.0.0", + "cacache": "^16.0.6", + "common-ancestor-path": "^1.0.1", + "json-parse-even-better-errors": "^2.3.1", + "json-stringify-nice": "^1.1.4", + "mkdirp": "^1.0.4", + "mkdirp-infer-owner": "^2.0.0", + "nopt": "^5.0.0", + "npm-install-checks": "^5.0.0", + "npm-package-arg": "^9.0.0", + "npm-pick-manifest": "^7.0.0", + "npm-registry-fetch": "^13.0.0", + "npmlog": "^6.0.2", + "pacote": "^13.6.1", + "parse-conflict-json": "^2.0.1", + "proc-log": "^2.0.0", + "promise-all-reject-late": "^1.0.0", + "promise-call-limit": "^1.0.1", + "read-package-json-fast": "^2.0.2", + "readdir-scoped-modules": "^1.1.0", + "rimraf": "^3.0.2", + "semver": "^7.3.7", + "ssri": "^9.0.0", + "treeverse": "^2.0.0", + "walk-up-path": "^1.0.0" + }, + "bin": { + "arborist": "bin/index.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-doctor/node_modules/strip-ansi": { - "version": "5.2.0", - "license": "MIT", - "peer": true, + "node_modules/@npmcli/arborist/node_modules/hosted-git-info": { + "version": "5.2.1", + "dev": true, + "license": "ISC", "dependencies": { - "ansi-regex": "^4.1.0" + "lru-cache": "^7.5.1" }, "engines": { - "node": ">=6" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-doctor/node_modules/supports-color": { - "version": "7.2.0", - "license": "MIT", - "peer": true, + "node_modules/@npmcli/arborist/node_modules/lru-cache": { + "version": "7.14.1", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/@npmcli/arborist/node_modules/npm-package-arg": { + "version": "9.1.2", + "dev": true, + "license": "ISC", "dependencies": { - "has-flag": "^4.0.0" + "hosted-git-info": "^5.0.0", + "proc-log": "^2.0.1", + "semver": "^7.3.5", + "validate-npm-package-name": "^4.0.0" }, "engines": { - "node": ">=8" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-doctor/node_modules/which": { - "version": "1.3.1", + "node_modules/@npmcli/arborist/node_modules/semver": { + "version": "7.3.8", + "dev": true, "license": "ISC", - "peer": true, "dependencies": { - "isexe": "^2.0.0" + "lru-cache": "^6.0.0" }, "bin": { - "which": "bin/which" + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "node_modules/@react-native-community/cli-hermes": { - "version": "9.3.1", - "license": "MIT", - "peer": true, + "node_modules/@npmcli/arborist/node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "dev": true, + "license": "ISC", "dependencies": { - "@react-native-community/cli-platform-android": "^9.3.1", - "@react-native-community/cli-tools": "^9.2.1", - "chalk": "^4.1.2", - "hermes-profile-transformer": "^0.0.6", - "ip": "^1.1.5" + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" } }, - "node_modules/@react-native-community/cli-hermes/node_modules/ansi-styles": { - "version": "4.3.0", - "license": "MIT", - "peer": true, + "node_modules/@npmcli/arborist/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/@npmcli/fs": { + "version": "2.1.2", + "dev": true, + "license": "ISC", "dependencies": { - "color-convert": "^2.0.1" + "@gar/promisify": "^1.1.3", + "semver": "^7.3.5" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-hermes/node_modules/chalk": { - "version": "4.1.2", - "license": "MIT", - "peer": true, + "node_modules/@npmcli/fs/node_modules/lru-cache": { + "version": "6.0.0", + "dev": true, + "license": "ISC", "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "yallist": "^4.0.0" }, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@react-native-community/cli-hermes/node_modules/color-convert": { - "version": "2.0.1", - "license": "MIT", - "peer": true, + "node_modules/@npmcli/fs/node_modules/semver": { + "version": "7.3.8", + "dev": true, + "license": "ISC", "dependencies": { - "color-name": "~1.1.4" + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">=7.0.0" + "node": ">=10" } }, - "node_modules/@react-native-community/cli-hermes/node_modules/color-name": { - "version": "1.1.4", - "license": "MIT", - "peer": true - }, - "node_modules/@react-native-community/cli-hermes/node_modules/has-flag": { + "node_modules/@npmcli/fs/node_modules/yallist": { "version": "4.0.0", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@react-native-community/cli-hermes/node_modules/ip": { - "version": "1.1.8", - "license": "MIT", - "peer": true + "dev": true, + "license": "ISC" }, - "node_modules/@react-native-community/cli-hermes/node_modules/supports-color": { - "version": "7.2.0", - "license": "MIT", - "peer": true, + "node_modules/@npmcli/git": { + "version": "3.0.2", + "dev": true, + "license": "ISC", "dependencies": { - "has-flag": "^4.0.0" + "@npmcli/promise-spawn": "^3.0.0", + "lru-cache": "^7.4.4", + "mkdirp": "^1.0.4", + "npm-pick-manifest": "^7.0.0", + "proc-log": "^2.0.0", + "promise-inflight": "^1.0.1", + "promise-retry": "^2.0.1", + "semver": "^7.3.5", + "which": "^2.0.2" }, "engines": { - "node": ">=8" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-platform-android": { - "version": "9.3.1", - "license": "MIT", - "peer": true, - "dependencies": { - "@react-native-community/cli-tools": "^9.2.1", - "chalk": "^4.1.2", - "execa": "^1.0.0", - "fs-extra": "^8.1.0", - "glob": "^7.1.3", - "logkitty": "^0.7.1", - "slash": "^3.0.0" + "node_modules/@npmcli/git/node_modules/lru-cache": { + "version": "7.14.1", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=12" } }, - "node_modules/@react-native-community/cli-platform-android/node_modules/ansi-styles": { - "version": "4.3.0", - "license": "MIT", - "peer": true, + "node_modules/@npmcli/git/node_modules/semver": { + "version": "7.3.8", + "dev": true, + "license": "ISC", "dependencies": { - "color-convert": "^2.0.1" + "lru-cache": "^6.0.0" }, - "engines": { - "node": ">=8" + "bin": { + "semver": "bin/semver.js" }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "engines": { + "node": ">=10" } }, - "node_modules/@react-native-community/cli-platform-android/node_modules/chalk": { - "version": "4.1.2", - "license": "MIT", - "peer": true, + "node_modules/@npmcli/git/node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "dev": true, + "license": "ISC", "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "yallist": "^4.0.0" }, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@react-native-community/cli-platform-android/node_modules/color-convert": { - "version": "2.0.1", - "license": "MIT", - "peer": true, + "node_modules/@npmcli/git/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/@npmcli/installed-package-contents": { + "version": "1.0.7", + "dev": true, + "license": "ISC", "dependencies": { - "color-name": "~1.1.4" + "npm-bundled": "^1.1.1", + "npm-normalize-package-bin": "^1.0.1" + }, + "bin": { + "installed-package-contents": "index.js" }, "engines": { - "node": ">=7.0.0" + "node": ">= 10" } }, - "node_modules/@react-native-community/cli-platform-android/node_modules/color-name": { - "version": "1.1.4", - "license": "MIT", - "peer": true - }, - "node_modules/@react-native-community/cli-platform-android/node_modules/cross-spawn": { - "version": "6.0.5", - "license": "MIT", - "peer": true, + "node_modules/@npmcli/map-workspaces": { + "version": "2.0.4", + "dev": true, + "license": "ISC", "dependencies": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" + "@npmcli/name-from-folder": "^1.0.1", + "glob": "^8.0.1", + "minimatch": "^5.0.1", + "read-package-json-fast": "^2.0.3" }, "engines": { - "node": ">=4.8" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-platform-android/node_modules/execa": { - "version": "1.0.0", + "node_modules/@npmcli/map-workspaces/node_modules/brace-expansion": { + "version": "2.0.1", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" + "balanced-match": "^1.0.0" + } + }, + "node_modules/@npmcli/map-workspaces/node_modules/minimatch": { + "version": "5.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">=6" + "node": ">=10" } }, - "node_modules/@react-native-community/cli-platform-android/node_modules/fs-extra": { - "version": "8.1.0", - "license": "MIT", - "peer": true, + "node_modules/@npmcli/metavuln-calculator": { + "version": "3.1.1", + "dev": true, + "license": "ISC", "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" + "cacache": "^16.0.0", + "json-parse-even-better-errors": "^2.3.1", + "pacote": "^13.0.3", + "semver": "^7.3.5" }, "engines": { - "node": ">=6 <7 || >=8" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-platform-android/node_modules/get-stream": { - "version": "4.1.0", - "license": "MIT", - "peer": true, + "node_modules/@npmcli/metavuln-calculator/node_modules/lru-cache": { + "version": "6.0.0", + "dev": true, + "license": "ISC", "dependencies": { - "pump": "^3.0.0" + "yallist": "^4.0.0" }, "engines": { - "node": ">=6" + "node": ">=10" } }, - "node_modules/@react-native-community/cli-platform-android/node_modules/glob": { - "version": "7.2.3", + "node_modules/@npmcli/metavuln-calculator/node_modules/semver": { + "version": "7.3.8", + "dev": true, "license": "ISC", - "peer": true, "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "lru-cache": "^6.0.0" }, - "engines": { - "node": "*" + "bin": { + "semver": "bin/semver.js" }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "engines": { + "node": ">=10" } }, - "node_modules/@react-native-community/cli-platform-android/node_modules/has-flag": { + "node_modules/@npmcli/metavuln-calculator/node_modules/yallist": { "version": "4.0.0", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=8" - } + "dev": true, + "license": "ISC" }, - "node_modules/@react-native-community/cli-platform-android/node_modules/is-stream": { - "version": "1.1.0", + "node_modules/@npmcli/move-file": { + "version": "2.0.1", + "dev": true, "license": "MIT", - "peer": true, + "dependencies": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + }, "engines": { - "node": ">=0.10.0" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-platform-android/node_modules/jsonfile": { - "version": "4.0.0", - "license": "MIT", - "peer": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" + "node_modules/@npmcli/name-from-folder": { + "version": "1.0.1", + "dev": true, + "license": "ISC" + }, + "node_modules/@npmcli/node-gyp": { + "version": "2.0.0", + "dev": true, + "license": "ISC", + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-platform-android/node_modules/npm-run-path": { - "version": "2.0.2", - "license": "MIT", - "peer": true, + "node_modules/@npmcli/package-json": { + "version": "2.0.0", + "dev": true, + "license": "ISC", "dependencies": { - "path-key": "^2.0.0" + "json-parse-even-better-errors": "^2.3.1" }, "engines": { - "node": ">=4" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-platform-android/node_modules/path-key": { - "version": "2.0.1", - "license": "MIT", - "peer": true, + "node_modules/@npmcli/promise-spawn": { + "version": "3.0.0", + "dev": true, + "license": "ISC", + "dependencies": { + "infer-owner": "^1.0.4" + }, "engines": { - "node": ">=4" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-platform-android/node_modules/semver": { - "version": "5.7.1", + "node_modules/@npmcli/run-script": { + "version": "4.2.1", + "dev": true, "license": "ISC", - "peer": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/@react-native-community/cli-platform-android/node_modules/shebang-command": { - "version": "1.2.0", - "license": "MIT", - "peer": true, "dependencies": { - "shebang-regex": "^1.0.0" + "@npmcli/node-gyp": "^2.0.0", + "@npmcli/promise-spawn": "^3.0.0", + "node-gyp": "^9.0.0", + "read-package-json-fast": "^2.0.3", + "which": "^2.0.2" }, "engines": { - "node": ">=0.10.0" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/@react-native-community/cli-platform-android/node_modules/shebang-regex": { - "version": "1.0.0", + "node_modules/@nrwl/cli": { + "version": "15.4.2", + "dev": true, "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" + "dependencies": { + "nx": "15.4.2" } }, - "node_modules/@react-native-community/cli-platform-android/node_modules/supports-color": { - "version": "7.2.0", + "node_modules/@nrwl/devkit": { + "version": "15.4.2", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "has-flag": "^4.0.0" + "@phenomnomnominal/tsquery": "4.1.1", + "ejs": "^3.1.7", + "ignore": "^5.0.4", + "semver": "7.3.4", + "tslib": "^2.3.0" }, - "engines": { - "node": ">=8" + "peerDependencies": { + "nx": ">= 14 <= 16" } }, - "node_modules/@react-native-community/cli-platform-android/node_modules/universalify": { - "version": "0.1.2", - "license": "MIT", - "peer": true, + "node_modules/@nrwl/devkit/node_modules/lru-cache": { + "version": "6.0.0", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, "engines": { - "node": ">= 4.0.0" + "node": ">=10" } }, - "node_modules/@react-native-community/cli-platform-android/node_modules/which": { - "version": "1.3.1", + "node_modules/@nrwl/devkit/node_modules/semver": { + "version": "7.3.4", + "dev": true, "license": "ISC", - "peer": true, "dependencies": { - "isexe": "^2.0.0" + "lru-cache": "^6.0.0" }, "bin": { - "which": "bin/which" + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "node_modules/@react-native-community/cli-platform-ios": { - "version": "9.3.0", - "license": "MIT", - "peer": true, - "dependencies": { - "@react-native-community/cli-tools": "^9.2.1", - "chalk": "^4.1.2", + "node_modules/@nrwl/devkit/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/@nrwl/tao": { + "version": "15.4.2", + "dev": true, + "license": "MIT", + "dependencies": { + "nx": "15.4.2" + }, + "bin": { + "tao": "index.js" + } + }, + "node_modules/@octokit/auth-token": { + "version": "3.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@octokit/types": "^8.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@octokit/core": { + "version": "4.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@octokit/auth-token": "^3.0.0", + "@octokit/graphql": "^5.0.0", + "@octokit/request": "^6.0.0", + "@octokit/request-error": "^3.0.0", + "@octokit/types": "^8.0.0", + "before-after-hook": "^2.2.0", + "universal-user-agent": "^6.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@octokit/endpoint": { + "version": "7.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@octokit/types": "^8.0.0", + "is-plain-object": "^5.0.0", + "universal-user-agent": "^6.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@octokit/graphql": { + "version": "5.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "@octokit/request": "^6.0.0", + "@octokit/types": "^8.0.0", + "universal-user-agent": "^6.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@octokit/openapi-types": { + "version": "14.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/@octokit/plugin-enterprise-rest": { + "version": "6.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/@octokit/plugin-paginate-rest": { + "version": "5.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@octokit/types": "^8.0.0" + }, + "engines": { + "node": ">= 14" + }, + "peerDependencies": { + "@octokit/core": ">=4" + } + }, + "node_modules/@octokit/plugin-request-log": { + "version": "1.0.4", + "dev": true, + "license": "MIT", + "peerDependencies": { + "@octokit/core": ">=3" + } + }, + "node_modules/@octokit/plugin-rest-endpoint-methods": { + "version": "6.7.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@octokit/types": "^8.0.0", + "deprecation": "^2.3.1" + }, + "engines": { + "node": ">= 14" + }, + "peerDependencies": { + "@octokit/core": ">=3" + } + }, + "node_modules/@octokit/request": { + "version": "6.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@octokit/endpoint": "^7.0.0", + "@octokit/request-error": "^3.0.0", + "@octokit/types": "^8.0.0", + "is-plain-object": "^5.0.0", + "node-fetch": "^2.6.7", + "universal-user-agent": "^6.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@octokit/request-error": { + "version": "3.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@octokit/types": "^8.0.0", + "deprecation": "^2.0.0", + "once": "^1.4.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@octokit/rest": { + "version": "19.0.5", + "dev": true, + "license": "MIT", + "dependencies": { + "@octokit/core": "^4.1.0", + "@octokit/plugin-paginate-rest": "^5.0.0", + "@octokit/plugin-request-log": "^1.0.4", + "@octokit/plugin-rest-endpoint-methods": "^6.7.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@octokit/types": { + "version": "8.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@octokit/openapi-types": "^14.0.0" + } + }, + "node_modules/@parcel/watcher": { + "version": "2.0.4", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "node-addon-api": "^3.2.1", + "node-gyp-build": "^4.3.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@phenomnomnominal/tsquery": { + "version": "4.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "esquery": "^1.0.1" + }, + "peerDependencies": { + "typescript": "^3 || ^4" + } + }, + "node_modules/@react-native-community/cli": { + "version": "9.3.2", + "license": "MIT", + "peer": true, + "dependencies": { + "@react-native-community/cli-clean": "^9.2.1", + "@react-native-community/cli-config": "^9.2.1", + "@react-native-community/cli-debugger-ui": "^9.0.0", + "@react-native-community/cli-doctor": "^9.3.0", + "@react-native-community/cli-hermes": "^9.3.1", + "@react-native-community/cli-plugin-metro": "^9.2.1", + "@react-native-community/cli-server-api": "^9.2.1", + "@react-native-community/cli-tools": "^9.2.1", + "@react-native-community/cli-types": "^9.1.0", + "chalk": "^4.1.2", + "commander": "^9.4.0", "execa": "^1.0.0", - "glob": "^7.1.3", - "ora": "^5.4.1" + "find-up": "^4.1.0", + "fs-extra": "^8.1.0", + "graceful-fs": "^4.1.3", + "prompts": "^2.4.0", + "semver": "^6.3.0" + }, + "bin": { + "react-native": "build/bin.js" + }, + "engines": { + "node": ">=14" } }, - "node_modules/@react-native-community/cli-platform-ios/node_modules/ansi-styles": { + "node_modules/@react-native-community/cli-clean": { + "version": "9.2.1", + "license": "MIT", + "peer": true, + "dependencies": { + "@react-native-community/cli-tools": "^9.2.1", + "chalk": "^4.1.2", + "execa": "^1.0.0", + "prompts": "^2.4.0" + } + }, + "node_modules/@react-native-community/cli-clean/node_modules/ansi-styles": { "version": "4.3.0", "license": "MIT", "peer": true, @@ -24676,7 +26578,7 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@react-native-community/cli-platform-ios/node_modules/chalk": { + "node_modules/@react-native-community/cli-clean/node_modules/chalk": { "version": "4.1.2", "license": "MIT", "peer": true, @@ -24691,7 +26593,7 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@react-native-community/cli-platform-ios/node_modules/color-convert": { + "node_modules/@react-native-community/cli-clean/node_modules/color-convert": { "version": "2.0.1", "license": "MIT", "peer": true, @@ -24702,12 +26604,12 @@ "node": ">=7.0.0" } }, - "node_modules/@react-native-community/cli-platform-ios/node_modules/color-name": { + "node_modules/@react-native-community/cli-clean/node_modules/color-name": { "version": "1.1.4", "license": "MIT", "peer": true }, - "node_modules/@react-native-community/cli-platform-ios/node_modules/cross-spawn": { + "node_modules/@react-native-community/cli-clean/node_modules/cross-spawn": { "version": "6.0.5", "license": "MIT", "peer": true, @@ -24722,7 +26624,7 @@ "node": ">=4.8" } }, - "node_modules/@react-native-community/cli-platform-ios/node_modules/execa": { + "node_modules/@react-native-community/cli-clean/node_modules/execa": { "version": "1.0.0", "license": "MIT", "peer": true, @@ -24739,7 +26641,7 @@ "node": ">=6" } }, - "node_modules/@react-native-community/cli-platform-ios/node_modules/get-stream": { + "node_modules/@react-native-community/cli-clean/node_modules/get-stream": { "version": "4.1.0", "license": "MIT", "peer": true, @@ -24750,26 +26652,7 @@ "node": ">=6" } }, - "node_modules/@react-native-community/cli-platform-ios/node_modules/glob": { - "version": "7.2.3", - "license": "ISC", - "peer": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@react-native-community/cli-platform-ios/node_modules/has-flag": { + "node_modules/@react-native-community/cli-clean/node_modules/has-flag": { "version": "4.0.0", "license": "MIT", "peer": true, @@ -24777,7 +26660,7 @@ "node": ">=8" } }, - "node_modules/@react-native-community/cli-platform-ios/node_modules/is-stream": { + "node_modules/@react-native-community/cli-clean/node_modules/is-stream": { "version": "1.1.0", "license": "MIT", "peer": true, @@ -24785,7 +26668,7 @@ "node": ">=0.10.0" } }, - "node_modules/@react-native-community/cli-platform-ios/node_modules/npm-run-path": { + "node_modules/@react-native-community/cli-clean/node_modules/npm-run-path": { "version": "2.0.2", "license": "MIT", "peer": true, @@ -24796,7 +26679,7 @@ "node": ">=4" } }, - "node_modules/@react-native-community/cli-platform-ios/node_modules/path-key": { + "node_modules/@react-native-community/cli-clean/node_modules/path-key": { "version": "2.0.1", "license": "MIT", "peer": true, @@ -24804,7 +26687,7 @@ "node": ">=4" } }, - "node_modules/@react-native-community/cli-platform-ios/node_modules/semver": { + "node_modules/@react-native-community/cli-clean/node_modules/semver": { "version": "5.7.1", "license": "ISC", "peer": true, @@ -24812,7 +26695,7 @@ "semver": "bin/semver" } }, - "node_modules/@react-native-community/cli-platform-ios/node_modules/shebang-command": { + "node_modules/@react-native-community/cli-clean/node_modules/shebang-command": { "version": "1.2.0", "license": "MIT", "peer": true, @@ -24823,7 +26706,7 @@ "node": ">=0.10.0" } }, - "node_modules/@react-native-community/cli-platform-ios/node_modules/shebang-regex": { + "node_modules/@react-native-community/cli-clean/node_modules/shebang-regex": { "version": "1.0.0", "license": "MIT", "peer": true, @@ -24831,7 +26714,7 @@ "node": ">=0.10.0" } }, - "node_modules/@react-native-community/cli-platform-ios/node_modules/supports-color": { + "node_modules/@react-native-community/cli-clean/node_modules/supports-color": { "version": "7.2.0", "license": "MIT", "peer": true, @@ -24842,7 +26725,7 @@ "node": ">=8" } }, - "node_modules/@react-native-community/cli-platform-ios/node_modules/which": { + "node_modules/@react-native-community/cli-clean/node_modules/which": { "version": "1.3.1", "license": "ISC", "peer": true, @@ -24853,140 +26736,123 @@ "which": "bin/which" } }, - "node_modules/@react-native-community/cli-plugin-metro": { + "node_modules/@react-native-community/cli-config": { "version": "9.2.1", "license": "MIT", "peer": true, "dependencies": { - "@react-native-community/cli-server-api": "^9.2.1", "@react-native-community/cli-tools": "^9.2.1", - "chalk": "^4.1.2", - "metro": "0.72.3", - "metro-config": "0.72.3", - "metro-core": "0.72.3", - "metro-react-native-babel-transformer": "0.72.3", - "metro-resolver": "0.72.3", - "metro-runtime": "0.72.3", - "readline": "^1.3.0" + "cosmiconfig": "^5.1.0", + "deepmerge": "^3.2.0", + "glob": "^7.1.3", + "joi": "^17.2.1" } }, - "node_modules/@react-native-community/cli-plugin-metro/node_modules/ansi-styles": { - "version": "4.3.0", + "node_modules/@react-native-community/cli-config/node_modules/cosmiconfig": { + "version": "5.2.1", "license": "MIT", "peer": true, "dependencies": { - "color-convert": "^2.0.1" + "import-fresh": "^2.0.0", + "is-directory": "^0.3.1", + "js-yaml": "^3.13.1", + "parse-json": "^4.0.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": ">=4" } }, - "node_modules/@react-native-community/cli-plugin-metro/node_modules/chalk": { - "version": "4.1.2", - "license": "MIT", + "node_modules/@react-native-community/cli-config/node_modules/glob": { + "version": "7.2.3", + "license": "ISC", "peer": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, "engines": { - "node": ">=10" + "node": "*" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@react-native-community/cli-plugin-metro/node_modules/color-convert": { - "version": "2.0.1", + "node_modules/@react-native-community/cli-config/node_modules/import-fresh": { + "version": "2.0.0", "license": "MIT", "peer": true, "dependencies": { - "color-name": "~1.1.4" + "caller-path": "^2.0.0", + "resolve-from": "^3.0.0" }, "engines": { - "node": ">=7.0.0" + "node": ">=4" } }, - "node_modules/@react-native-community/cli-plugin-metro/node_modules/color-name": { - "version": "1.1.4", - "license": "MIT", - "peer": true - }, - "node_modules/@react-native-community/cli-plugin-metro/node_modules/has-flag": { + "node_modules/@react-native-community/cli-config/node_modules/parse-json": { "version": "4.0.0", "license": "MIT", "peer": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@react-native-community/cli-plugin-metro/node_modules/supports-color": { - "version": "7.2.0", - "license": "MIT", - "peer": true, "dependencies": { - "has-flag": "^4.0.0" + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/@react-native-community/cli-server-api": { - "version": "9.2.1", + "node_modules/@react-native-community/cli-config/node_modules/resolve-from": { + "version": "3.0.0", "license": "MIT", "peer": true, - "dependencies": { - "@react-native-community/cli-debugger-ui": "^9.0.0", - "@react-native-community/cli-tools": "^9.2.1", - "compression": "^1.7.1", - "connect": "^3.6.5", - "errorhandler": "^1.5.0", - "nocache": "^3.0.1", - "pretty-format": "^26.6.2", - "serve-static": "^1.13.1", - "ws": "^7.5.1" + "engines": { + "node": ">=4" } }, - "node_modules/@react-native-community/cli-server-api/node_modules/ws": { - "version": "7.5.9", + "node_modules/@react-native-community/cli-debugger-ui": { + "version": "9.0.0", "license": "MIT", "peer": true, - "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } + "dependencies": { + "serve-static": "^1.13.1" } }, - "node_modules/@react-native-community/cli-tools": { - "version": "9.2.1", + "node_modules/@react-native-community/cli-doctor": { + "version": "9.3.0", "license": "MIT", "peer": true, "dependencies": { - "appdirsjs": "^1.2.4", + "@react-native-community/cli-config": "^9.2.1", + "@react-native-community/cli-platform-ios": "^9.3.0", + "@react-native-community/cli-tools": "^9.2.1", "chalk": "^4.1.2", - "find-up": "^5.0.0", - "mime": "^2.4.1", - "node-fetch": "^2.6.0", - "open": "^6.2.0", + "command-exists": "^1.2.8", + "envinfo": "^7.7.2", + "execa": "^1.0.0", + "hermes-profile-transformer": "^0.0.6", + "ip": "^1.1.5", + "node-stream-zip": "^1.9.1", "ora": "^5.4.1", + "prompts": "^2.4.0", "semver": "^6.3.0", - "shell-quote": "^1.7.3" + "strip-ansi": "^5.2.0", + "sudo-prompt": "^9.0.0", + "wcwidth": "^1.0.1" } }, - "node_modules/@react-native-community/cli-tools/node_modules/ansi-styles": { + "node_modules/@react-native-community/cli-doctor/node_modules/ansi-regex": { + "version": "4.1.1", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@react-native-community/cli-doctor/node_modules/ansi-styles": { "version": "4.3.0", "license": "MIT", "peer": true, @@ -25000,7 +26866,7 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@react-native-community/cli-tools/node_modules/chalk": { + "node_modules/@react-native-community/cli-doctor/node_modules/chalk": { "version": "4.1.2", "license": "MIT", "peer": true, @@ -25015,7 +26881,7 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@react-native-community/cli-tools/node_modules/color-convert": { + "node_modules/@react-native-community/cli-doctor/node_modules/color-convert": { "version": "2.0.1", "license": "MIT", "peer": true, @@ -25026,96 +26892,225 @@ "node": ">=7.0.0" } }, - "node_modules/@react-native-community/cli-tools/node_modules/color-name": { + "node_modules/@react-native-community/cli-doctor/node_modules/color-name": { "version": "1.1.4", "license": "MIT", "peer": true }, - "node_modules/@react-native-community/cli-tools/node_modules/find-up": { - "version": "5.0.0", + "node_modules/@react-native-community/cli-doctor/node_modules/cross-spawn": { + "version": "6.0.5", "license": "MIT", "peer": true, "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=4.8" } }, - "node_modules/@react-native-community/cli-tools/node_modules/has-flag": { - "version": "4.0.0", - "license": "MIT", + "node_modules/@react-native-community/cli-doctor/node_modules/cross-spawn/node_modules/semver": { + "version": "5.7.1", + "license": "ISC", "peer": true, - "engines": { - "node": ">=8" + "bin": { + "semver": "bin/semver" } }, - "node_modules/@react-native-community/cli-tools/node_modules/is-wsl": { - "version": "1.1.0", + "node_modules/@react-native-community/cli-doctor/node_modules/execa": { + "version": "1.0.0", "license": "MIT", "peer": true, + "dependencies": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, "engines": { - "node": ">=4" + "node": ">=6" } }, - "node_modules/@react-native-community/cli-tools/node_modules/locate-path": { - "version": "6.0.0", + "node_modules/@react-native-community/cli-doctor/node_modules/get-stream": { + "version": "4.1.0", "license": "MIT", "peer": true, "dependencies": { - "p-locate": "^5.0.0" + "pump": "^3.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=6" } }, - "node_modules/@react-native-community/cli-tools/node_modules/open": { - "version": "6.4.0", + "node_modules/@react-native-community/cli-doctor/node_modules/has-flag": { + "version": "4.0.0", "license": "MIT", "peer": true, - "dependencies": { - "is-wsl": "^1.1.0" - }, "engines": { "node": ">=8" } }, - "node_modules/@react-native-community/cli-tools/node_modules/p-limit": { - "version": "3.1.0", + "node_modules/@react-native-community/cli-doctor/node_modules/ip": { + "version": "1.1.8", + "license": "MIT", + "peer": true + }, + "node_modules/@react-native-community/cli-doctor/node_modules/is-stream": { + "version": "1.1.0", "license": "MIT", "peer": true, - "dependencies": { - "yocto-queue": "^0.1.0" - }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.10.0" } }, - "node_modules/@react-native-community/cli-tools/node_modules/p-locate": { - "version": "5.0.0", + "node_modules/@react-native-community/cli-doctor/node_modules/npm-run-path": { + "version": "2.0.2", "license": "MIT", "peer": true, "dependencies": { - "p-limit": "^3.0.2" + "path-key": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@react-native-community/cli-doctor/node_modules/path-key": { + "version": "2.0.1", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@react-native-community/cli-doctor/node_modules/shebang-command": { + "version": "1.2.0", + "license": "MIT", + "peer": true, + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@react-native-community/cli-doctor/node_modules/shebang-regex": { + "version": "1.0.0", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@react-native-community/cli-doctor/node_modules/strip-ansi": { + "version": "5.2.0", + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@react-native-community/cli-doctor/node_modules/supports-color": { + "version": "7.2.0", + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@react-native-community/cli-doctor/node_modules/which": { + "version": "1.3.1", + "license": "ISC", + "peer": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/@react-native-community/cli-hermes": { + "version": "9.3.1", + "license": "MIT", + "peer": true, + "dependencies": { + "@react-native-community/cli-platform-android": "^9.3.1", + "@react-native-community/cli-tools": "^9.2.1", + "chalk": "^4.1.2", + "hermes-profile-transformer": "^0.0.6", + "ip": "^1.1.5" + } + }, + "node_modules/@react-native-community/cli-hermes/node_modules/ansi-styles": { + "version": "4.3.0", + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@react-native-community/cli-hermes/node_modules/chalk": { + "version": "4.1.2", + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@react-native-community/cli-tools/node_modules/supports-color": { + "node_modules/@react-native-community/cli-hermes/node_modules/color-convert": { + "version": "2.0.1", + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@react-native-community/cli-hermes/node_modules/color-name": { + "version": "1.1.4", + "license": "MIT", + "peer": true + }, + "node_modules/@react-native-community/cli-hermes/node_modules/has-flag": { + "version": "4.0.0", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@react-native-community/cli-hermes/node_modules/ip": { + "version": "1.1.8", + "license": "MIT", + "peer": true + }, + "node_modules/@react-native-community/cli-hermes/node_modules/supports-color": { "version": "7.2.0", "license": "MIT", "peer": true, @@ -25126,15 +27121,21 @@ "node": ">=8" } }, - "node_modules/@react-native-community/cli-types": { - "version": "9.1.0", + "node_modules/@react-native-community/cli-platform-android": { + "version": "9.3.1", "license": "MIT", "peer": true, "dependencies": { - "joi": "^17.2.1" + "@react-native-community/cli-tools": "^9.2.1", + "chalk": "^4.1.2", + "execa": "^1.0.0", + "fs-extra": "^8.1.0", + "glob": "^7.1.3", + "logkitty": "^0.7.1", + "slash": "^3.0.0" } }, - "node_modules/@react-native-community/cli/node_modules/ansi-styles": { + "node_modules/@react-native-community/cli-platform-android/node_modules/ansi-styles": { "version": "4.3.0", "license": "MIT", "peer": true, @@ -25148,7 +27149,7 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@react-native-community/cli/node_modules/chalk": { + "node_modules/@react-native-community/cli-platform-android/node_modules/chalk": { "version": "4.1.2", "license": "MIT", "peer": true, @@ -25163,7 +27164,7 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@react-native-community/cli/node_modules/color-convert": { + "node_modules/@react-native-community/cli-platform-android/node_modules/color-convert": { "version": "2.0.1", "license": "MIT", "peer": true, @@ -25174,12 +27175,12 @@ "node": ">=7.0.0" } }, - "node_modules/@react-native-community/cli/node_modules/color-name": { + "node_modules/@react-native-community/cli-platform-android/node_modules/color-name": { "version": "1.1.4", "license": "MIT", "peer": true }, - "node_modules/@react-native-community/cli/node_modules/cross-spawn": { + "node_modules/@react-native-community/cli-platform-android/node_modules/cross-spawn": { "version": "6.0.5", "license": "MIT", "peer": true, @@ -25194,15 +27195,7 @@ "node": ">=4.8" } }, - "node_modules/@react-native-community/cli/node_modules/cross-spawn/node_modules/semver": { - "version": "5.7.1", - "license": "ISC", - "peer": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/@react-native-community/cli/node_modules/execa": { + "node_modules/@react-native-community/cli-platform-android/node_modules/execa": { "version": "1.0.0", "license": "MIT", "peer": true, @@ -25219,7 +27212,7 @@ "node": ">=6" } }, - "node_modules/@react-native-community/cli/node_modules/fs-extra": { + "node_modules/@react-native-community/cli-platform-android/node_modules/fs-extra": { "version": "8.1.0", "license": "MIT", "peer": true, @@ -25232,7 +27225,7 @@ "node": ">=6 <7 || >=8" } }, - "node_modules/@react-native-community/cli/node_modules/get-stream": { + "node_modules/@react-native-community/cli-platform-android/node_modules/get-stream": { "version": "4.1.0", "license": "MIT", "peer": true, @@ -25243,7 +27236,26 @@ "node": ">=6" } }, - "node_modules/@react-native-community/cli/node_modules/has-flag": { + "node_modules/@react-native-community/cli-platform-android/node_modules/glob": { + "version": "7.2.3", + "license": "ISC", + "peer": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@react-native-community/cli-platform-android/node_modules/has-flag": { "version": "4.0.0", "license": "MIT", "peer": true, @@ -25251,7 +27263,7 @@ "node": ">=8" } }, - "node_modules/@react-native-community/cli/node_modules/is-stream": { + "node_modules/@react-native-community/cli-platform-android/node_modules/is-stream": { "version": "1.1.0", "license": "MIT", "peer": true, @@ -25259,7 +27271,7 @@ "node": ">=0.10.0" } }, - "node_modules/@react-native-community/cli/node_modules/jsonfile": { + "node_modules/@react-native-community/cli-platform-android/node_modules/jsonfile": { "version": "4.0.0", "license": "MIT", "peer": true, @@ -25267,7 +27279,7 @@ "graceful-fs": "^4.1.6" } }, - "node_modules/@react-native-community/cli/node_modules/npm-run-path": { + "node_modules/@react-native-community/cli-platform-android/node_modules/npm-run-path": { "version": "2.0.2", "license": "MIT", "peer": true, @@ -25278,7 +27290,7 @@ "node": ">=4" } }, - "node_modules/@react-native-community/cli/node_modules/path-key": { + "node_modules/@react-native-community/cli-platform-android/node_modules/path-key": { "version": "2.0.1", "license": "MIT", "peer": true, @@ -25286,7 +27298,15 @@ "node": ">=4" } }, - "node_modules/@react-native-community/cli/node_modules/shebang-command": { + "node_modules/@react-native-community/cli-platform-android/node_modules/semver": { + "version": "5.7.1", + "license": "ISC", + "peer": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@react-native-community/cli-platform-android/node_modules/shebang-command": { "version": "1.2.0", "license": "MIT", "peer": true, @@ -25297,7 +27317,7 @@ "node": ">=0.10.0" } }, - "node_modules/@react-native-community/cli/node_modules/shebang-regex": { + "node_modules/@react-native-community/cli-platform-android/node_modules/shebang-regex": { "version": "1.0.0", "license": "MIT", "peer": true, @@ -25305,7 +27325,7 @@ "node": ">=0.10.0" } }, - "node_modules/@react-native-community/cli/node_modules/supports-color": { + "node_modules/@react-native-community/cli-platform-android/node_modules/supports-color": { "version": "7.2.0", "license": "MIT", "peer": true, @@ -25316,7 +27336,7 @@ "node": ">=8" } }, - "node_modules/@react-native-community/cli/node_modules/universalify": { + "node_modules/@react-native-community/cli-platform-android/node_modules/universalify": { "version": "0.1.2", "license": "MIT", "peer": true, @@ -25324,7 +27344,7 @@ "node": ">= 4.0.0" } }, - "node_modules/@react-native-community/cli/node_modules/which": { + "node_modules/@react-native-community/cli-platform-android/node_modules/which": { "version": "1.3.1", "license": "ISC", "peer": true, @@ -25335,2605 +27355,2498 @@ "which": "bin/which" } }, - "node_modules/@react-native/assets": { - "version": "1.0.0", - "license": "MIT", - "peer": true - }, - "node_modules/@react-native/normalize-color": { - "version": "2.0.0", - "license": "MIT", - "peer": true - }, - "node_modules/@react-native/polyfills": { - "version": "2.0.0", + "node_modules/@react-native-community/cli-platform-ios": { + "version": "9.3.0", "license": "MIT", - "peer": true - }, - "node_modules/@sideway/address": { - "version": "4.1.4", - "license": "BSD-3-Clause", "peer": true, "dependencies": { - "@hapi/hoek": "^9.0.0" - } - }, - "node_modules/@sideway/formula": { - "version": "3.0.1", - "license": "BSD-3-Clause", - "peer": true - }, - "node_modules/@sideway/pinpoint": { - "version": "2.0.0", - "license": "BSD-3-Clause", - "peer": true - }, - "node_modules/@tootallnate/once": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 10" + "@react-native-community/cli-tools": "^9.2.1", + "chalk": "^4.1.2", + "execa": "^1.0.0", + "glob": "^7.1.3", + "ora": "^5.4.1" } }, - "node_modules/@turf/boolean-clockwise": { - "version": "6.5.0", + "node_modules/@react-native-community/cli-platform-ios/node_modules/ansi-styles": { + "version": "4.3.0", "license": "MIT", + "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" }, "funding": { - "url": "https://opencollective.com/turf" - } - }, - "node_modules/@turf/helpers": { - "version": "6.5.0", - "license": "MIT", - "funding": { - "url": "https://opencollective.com/turf" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@turf/invariant": { - "version": "6.5.0", + "node_modules/@react-native-community/cli-platform-ios/node_modules/chalk": { + "version": "4.1.2", "license": "MIT", + "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" }, "funding": { - "url": "https://opencollective.com/turf" + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@types/archiver": { - "version": "5.3.1", + "node_modules/@react-native-community/cli-platform-ios/node_modules/color-convert": { + "version": "2.0.1", "license": "MIT", + "peer": true, "dependencies": { - "@types/glob": "*" + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "node_modules/@types/chai": { - "version": "4.3.4", - "dev": true, - "license": "MIT" + "node_modules/@react-native-community/cli-platform-ios/node_modules/color-name": { + "version": "1.1.4", + "license": "MIT", + "peer": true }, - "node_modules/@types/chai-subset": { - "version": "1.3.3", - "dev": true, + "node_modules/@react-native-community/cli-platform-ios/node_modules/cross-spawn": { + "version": "6.0.5", "license": "MIT", + "peer": true, "dependencies": { - "@types/chai": "*" + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" } }, - "node_modules/@types/cookie": { - "version": "0.3.3", - "license": "MIT" - }, - "node_modules/@types/glob": { - "version": "8.0.0", + "node_modules/@react-native-community/cli-platform-ios/node_modules/execa": { + "version": "1.0.0", "license": "MIT", + "peer": true, "dependencies": { - "@types/minimatch": "*", - "@types/node": "*" + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, + "engines": { + "node": ">=6" } }, - "node_modules/@types/istanbul-lib-coverage": { - "version": "2.0.4", - "license": "MIT", - "peer": true - }, - "node_modules/@types/istanbul-lib-report": { - "version": "3.0.0", + "node_modules/@react-native-community/cli-platform-ios/node_modules/get-stream": { + "version": "4.1.0", "license": "MIT", "peer": true, "dependencies": { - "@types/istanbul-lib-coverage": "*" + "pump": "^3.0.0" + }, + "engines": { + "node": ">=6" } }, - "node_modules/@types/istanbul-reports": { - "version": "3.0.1", - "license": "MIT", + "node_modules/@react-native-community/cli-platform-ios/node_modules/glob": { + "version": "7.2.3", + "license": "ISC", "peer": true, "dependencies": { - "@types/istanbul-lib-report": "*" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@types/json5": { - "version": "0.0.29", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/minimatch": { - "version": "3.0.5", - "license": "MIT" - }, - "node_modules/@types/minimist": { - "version": "1.2.2", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/node": { - "version": "18.11.18", - "license": "MIT" - }, - "node_modules/@types/normalize-package-data": { - "version": "2.4.1", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/parse-json": { + "node_modules/@react-native-community/cli-platform-ios/node_modules/has-flag": { "version": "4.0.0", - "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } }, - "node_modules/@types/qrcode-terminal": { - "version": "0.12.0", - "license": "MIT" + "node_modules/@react-native-community/cli-platform-ios/node_modules/is-stream": { + "version": "1.1.0", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } }, - "node_modules/@types/ramda": { - "version": "0.28.20", - "dev": true, + "node_modules/@react-native-community/cli-platform-ios/node_modules/npm-run-path": { + "version": "2.0.2", "license": "MIT", + "peer": true, "dependencies": { - "ts-toolbelt": "^6.15.1" + "path-key": "^2.0.0" + }, + "engines": { + "node": ">=4" } }, - "node_modules/@types/yargs-parser": { - "version": "21.0.0", + "node_modules/@react-native-community/cli-platform-ios/node_modules/path-key": { + "version": "2.0.1", "license": "MIT", - "peer": true - }, - "node_modules/@vitest/expect": { - "version": "0.28.4", - "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-0.28.4.tgz", - "integrity": "sha512-JqK0NZ4brjvOSL8hXAnIsfi+jxDF7rH/ZWCGCt0FAqRnVFc1hXsfwXksQvEnKqD84avRt3gmeXoK4tNbmkoVsQ==", - "dev": true, - "dependencies": { - "@vitest/spy": "0.28.4", - "@vitest/utils": "0.28.4", - "chai": "^4.3.7" + "peer": true, + "engines": { + "node": ">=4" } }, - "node_modules/@vitest/runner": { - "version": "0.28.4", - "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-0.28.4.tgz", - "integrity": "sha512-Q8UV6GjDvBSTfUoq0QXVCNpNOUrWu4P2qvRq7ssJWzn0+S0ojbVOxEjMt+8a32X6SdkhF8ak+2nkppsqV0JyNQ==", - "dev": true, - "dependencies": { - "@vitest/utils": "0.28.4", - "p-limit": "^4.0.0", - "pathe": "^1.1.0" + "node_modules/@react-native-community/cli-platform-ios/node_modules/semver": { + "version": "5.7.1", + "license": "ISC", + "peer": true, + "bin": { + "semver": "bin/semver" } }, - "node_modules/@vitest/runner/node_modules/p-limit": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", - "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", - "dev": true, + "node_modules/@react-native-community/cli-platform-ios/node_modules/shebang-command": { + "version": "1.2.0", + "license": "MIT", + "peer": true, "dependencies": { - "yocto-queue": "^1.0.0" + "shebang-regex": "^1.0.0" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.10.0" } }, - "node_modules/@vitest/runner/node_modules/pathe": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.0.tgz", - "integrity": "sha512-ODbEPR0KKHqECXW1GoxdDb+AZvULmXjVPy4rt+pGo2+TnjJTIPJQSVS6N63n8T2Ip+syHhbn52OewKicV0373w==", - "dev": true - }, - "node_modules/@vitest/runner/node_modules/yocto-queue": { + "node_modules/@react-native-community/cli-platform-ios/node_modules/shebang-regex": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", - "dev": true, + "license": "MIT", + "peer": true, "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.10.0" } }, - "node_modules/@vitest/spy": { - "version": "0.28.4", - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-0.28.4.tgz", - "integrity": "sha512-8WuhfXLlvCXpNXEGJW6Gc+IKWI32435fQJLh43u70HnZ1otJOa2Cmg2Wy2Aym47ZnNCP4NolF+8cUPwd0MigKQ==", - "dev": true, + "node_modules/@react-native-community/cli-platform-ios/node_modules/supports-color": { + "version": "7.2.0", + "license": "MIT", + "peer": true, "dependencies": { - "tinyspy": "^1.0.2" - } - }, - "node_modules/@vitest/utils": { - "version": "0.28.4", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-0.28.4.tgz", - "integrity": "sha512-l2QztOLdc2LkR+w/lP52RGh8hW+Ul4KESmCAgVE8q737I7e7bQoAfkARKpkPJ4JQtGpwW4deqlj1732VZD7TFw==", - "dev": true, - "dependencies": { - "cli-truncate": "^3.1.0", - "diff": "^5.1.0", - "loupe": "^2.3.6", - "picocolors": "^1.0.0", - "pretty-format": "^27.5.1" - } - }, - "node_modules/@vitest/utils/node_modules/ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", - "dev": true, - "engines": { - "node": ">=10" + "has-flag": "^4.0.0" }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "engines": { + "node": ">=8" } }, - "node_modules/@vitest/utils/node_modules/pretty-format": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", - "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", - "dev": true, + "node_modules/@react-native-community/cli-platform-ios/node_modules/which": { + "version": "1.3.1", + "license": "ISC", + "peer": true, "dependencies": { - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" + "isexe": "^2.0.0" }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "bin": { + "which": "bin/which" } }, - "node_modules/@yarnpkg/lockfile": { - "version": "1.1.0", - "dev": true, - "license": "BSD-2-Clause" + "node_modules/@react-native-community/cli-plugin-metro": { + "version": "9.2.1", + "license": "MIT", + "peer": true, + "dependencies": { + "@react-native-community/cli-server-api": "^9.2.1", + "@react-native-community/cli-tools": "^9.2.1", + "chalk": "^4.1.2", + "metro": "0.72.3", + "metro-config": "0.72.3", + "metro-core": "0.72.3", + "metro-react-native-babel-transformer": "0.72.3", + "metro-resolver": "0.72.3", + "metro-runtime": "0.72.3", + "readline": "^1.3.0" + } }, - "node_modules/@yarnpkg/parsers": { - "version": "3.0.0-rc.34", - "dev": true, - "license": "BSD-2-Clause", + "node_modules/@react-native-community/cli-plugin-metro/node_modules/ansi-styles": { + "version": "4.3.0", + "license": "MIT", + "peer": true, "dependencies": { - "js-yaml": "^3.10.0", - "tslib": "^2.4.0" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=14.15.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@zkochan/js-yaml": { - "version": "0.0.6", - "dev": true, + "node_modules/@react-native-community/cli-plugin-metro/node_modules/chalk": { + "version": "4.1.2", "license": "MIT", + "peer": true, "dependencies": { - "argparse": "^2.0.1" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@zkochan/js-yaml/node_modules/argparse": { + "node_modules/@react-native-community/cli-plugin-metro/node_modules/color-convert": { "version": "2.0.1", - "dev": true, - "license": "Python-2.0" - }, - "node_modules/abbrev": { - "version": "1.1.1", - "dev": true, - "license": "ISC" - }, - "node_modules/abort-controller": { - "version": "3.0.0", "license": "MIT", "peer": true, "dependencies": { - "event-target-shim": "^5.0.0" + "color-name": "~1.1.4" }, "engines": { - "node": ">=6.5" + "node": ">=7.0.0" } }, - "node_modules/absolute-path": { - "version": "0.0.0", + "node_modules/@react-native-community/cli-plugin-metro/node_modules/color-name": { + "version": "1.1.4", "license": "MIT", "peer": true }, - "node_modules/accepts": { - "version": "1.3.8", + "node_modules/@react-native-community/cli-plugin-metro/node_modules/has-flag": { + "version": "4.0.0", "license": "MIT", "peer": true, - "dependencies": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - }, "engines": { - "node": ">= 0.6" + "node": ">=8" } }, - "node_modules/acorn": { - "version": "8.8.1", - "dev": true, + "node_modules/@react-native-community/cli-plugin-metro/node_modules/supports-color": { + "version": "7.2.0", "license": "MIT", - "bin": { - "acorn": "bin/acorn" + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" }, "engines": { - "node": ">=0.4.0" + "node": ">=8" } }, - "node_modules/acorn-walk": { - "version": "8.2.0", - "dev": true, + "node_modules/@react-native-community/cli-server-api": { + "version": "9.2.1", "license": "MIT", - "engines": { - "node": ">=0.4.0" + "peer": true, + "dependencies": { + "@react-native-community/cli-debugger-ui": "^9.0.0", + "@react-native-community/cli-tools": "^9.2.1", + "compression": "^1.7.1", + "connect": "^3.6.5", + "errorhandler": "^1.5.0", + "nocache": "^3.0.1", + "pretty-format": "^26.6.2", + "serve-static": "^1.13.1", + "ws": "^7.5.1" } }, - "node_modules/add-stream": { - "version": "1.0.0", - "dev": true, - "license": "MIT" + "node_modules/@react-native-community/cli-server-api/node_modules/ws": { + "version": "7.5.9", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } }, - "node_modules/agent-base": { - "version": "6.0.2", - "dev": true, + "node_modules/@react-native-community/cli-tools": { + "version": "9.2.1", "license": "MIT", + "peer": true, "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" + "appdirsjs": "^1.2.4", + "chalk": "^4.1.2", + "find-up": "^5.0.0", + "mime": "^2.4.1", + "node-fetch": "^2.6.0", + "open": "^6.2.0", + "ora": "^5.4.1", + "semver": "^6.3.0", + "shell-quote": "^1.7.3" } }, - "node_modules/agentkeepalive": { - "version": "4.2.1", - "dev": true, + "node_modules/@react-native-community/cli-tools/node_modules/ansi-styles": { + "version": "4.3.0", "license": "MIT", + "peer": true, "dependencies": { - "debug": "^4.1.0", - "depd": "^1.1.2", - "humanize-ms": "^1.2.1" + "color-convert": "^2.0.1" }, "engines": { - "node": ">= 8.0.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/aggregate-error": { - "version": "3.1.0", - "dev": true, + "node_modules/@react-native-community/cli-tools/node_modules/chalk": { + "version": "4.1.2", "license": "MIT", + "peer": true, "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/amazon-cognito-identity-js": { - "version": "5.2.14", - "license": "Apache-2.0", + "node_modules/@react-native-community/cli-tools/node_modules/color-convert": { + "version": "2.0.1", + "license": "MIT", + "peer": true, "dependencies": { - "buffer": "4.9.2", - "crypto-js": "^4.1.1", - "fast-base64-decode": "^1.0.0", - "isomorphic-unfetch": "^3.0.0", - "js-cookie": "^2.2.1" + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "node_modules/anser": { - "version": "1.4.10", + "node_modules/@react-native-community/cli-tools/node_modules/color-name": { + "version": "1.1.4", "license": "MIT", "peer": true }, - "node_modules/ansi-colors": { - "version": "4.1.3", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/ansi-escapes": { - "version": "4.3.2", - "dev": true, + "node_modules/@react-native-community/cli-tools/node_modules/find-up": { + "version": "5.0.0", "license": "MIT", + "peer": true, "dependencies": { - "type-fest": "^0.21.3" + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ansi-fragments": { - "version": "0.2.1", + "node_modules/@react-native-community/cli-tools/node_modules/has-flag": { + "version": "4.0.0", "license": "MIT", "peer": true, - "dependencies": { - "colorette": "^1.0.7", - "slice-ansi": "^2.0.0", - "strip-ansi": "^5.0.0" + "engines": { + "node": ">=8" } }, - "node_modules/ansi-fragments/node_modules/ansi-regex": { - "version": "4.1.1", + "node_modules/@react-native-community/cli-tools/node_modules/is-wsl": { + "version": "1.1.0", "license": "MIT", "peer": true, "engines": { - "node": ">=6" + "node": ">=4" } }, - "node_modules/ansi-fragments/node_modules/strip-ansi": { - "version": "5.2.0", + "node_modules/@react-native-community/cli-tools/node_modules/locate-path": { + "version": "6.0.0", "license": "MIT", "peer": true, "dependencies": { - "ansi-regex": "^4.1.0" + "p-locate": "^5.0.0" }, "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ansi-regex": { - "version": "5.0.1", + "node_modules/@react-native-community/cli-tools/node_modules/open": { + "version": "6.4.0", "license": "MIT", + "peer": true, + "dependencies": { + "is-wsl": "^1.1.0" + }, "engines": { "node": ">=8" } }, - "node_modules/ansi-styles": { - "version": "3.2.1", + "node_modules/@react-native-community/cli-tools/node_modules/p-limit": { + "version": "3.1.0", "license": "MIT", + "peer": true, "dependencies": { - "color-convert": "^1.9.0" + "yocto-queue": "^0.1.0" }, "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/anymatch": { - "version": "3.1.3", - "license": "ISC", + "node_modules/@react-native-community/cli-tools/node_modules/p-locate": { + "version": "5.0.0", + "license": "MIT", + "peer": true, "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" + "p-limit": "^3.0.2" }, "engines": { - "node": ">= 8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/appdirsjs": { - "version": "1.2.7", - "license": "MIT", - "peer": true - }, - "node_modules/aproba": { - "version": "2.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/archiver": { - "version": "5.3.1", + "node_modules/@react-native-community/cli-tools/node_modules/supports-color": { + "version": "7.2.0", "license": "MIT", + "peer": true, "dependencies": { - "archiver-utils": "^2.1.0", - "async": "^3.2.3", - "buffer-crc32": "^0.2.1", - "readable-stream": "^3.6.0", - "readdir-glob": "^1.0.0", - "tar-stream": "^2.2.0", - "zip-stream": "^4.1.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">= 10" + "node": ">=8" } }, - "node_modules/archiver-utils": { - "version": "2.1.0", + "node_modules/@react-native-community/cli-types": { + "version": "9.1.0", "license": "MIT", + "peer": true, "dependencies": { - "glob": "^7.1.4", - "graceful-fs": "^4.2.0", - "lazystream": "^1.0.0", - "lodash.defaults": "^4.2.0", - "lodash.difference": "^4.5.0", - "lodash.flatten": "^4.4.0", - "lodash.isplainobject": "^4.0.6", - "lodash.union": "^4.6.0", - "normalize-path": "^3.0.0", - "readable-stream": "^2.0.0" - }, - "engines": { - "node": ">= 6" + "joi": "^17.2.1" } }, - "node_modules/archiver-utils/node_modules/glob": { - "version": "7.2.3", - "license": "ISC", + "node_modules/@react-native-community/cli/node_modules/ansi-styles": { + "version": "4.3.0", + "license": "MIT", + "peer": true, "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "color-convert": "^2.0.1" }, "engines": { - "node": "*" + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/archiver-utils/node_modules/readable-stream": { - "version": "2.3.7", + "node_modules/@react-native-community/cli/node_modules/chalk": { + "version": "4.1.2", "license": "MIT", + "peer": true, "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/archiver-utils/node_modules/safe-buffer": { - "version": "5.1.2", - "license": "MIT" - }, - "node_modules/archiver-utils/node_modules/string_decoder": { - "version": "1.1.1", + "node_modules/@react-native-community/cli/node_modules/color-convert": { + "version": "2.0.1", "license": "MIT", + "peer": true, "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/are-we-there-yet": { - "version": "3.0.1", - "dev": true, - "license": "ISC", - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" + "color-name": "~1.1.4" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=7.0.0" } }, - "node_modules/argparse": { - "version": "1.0.10", + "node_modules/@react-native-community/cli/node_modules/color-name": { + "version": "1.1.4", "license": "MIT", - "dependencies": { - "sprintf-js": "~1.0.2" - } + "peer": true }, - "node_modules/arr-diff": { - "version": "4.0.0", + "node_modules/@react-native-community/cli/node_modules/cross-spawn": { + "version": "6.0.5", "license": "MIT", "peer": true, + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, "engines": { - "node": ">=0.10.0" + "node": ">=4.8" } }, - "node_modules/arr-flatten": { - "version": "1.1.0", + "node_modules/@react-native-community/cli/node_modules/cross-spawn/node_modules/semver": { + "version": "5.7.1", + "license": "ISC", + "peer": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@react-native-community/cli/node_modules/execa": { + "version": "1.0.0", "license": "MIT", "peer": true, + "dependencies": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "node_modules/arr-union": { - "version": "3.1.0", + "node_modules/@react-native-community/cli/node_modules/fs-extra": { + "version": "8.1.0", "license": "MIT", "peer": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">=6 <7 || >=8" } }, - "node_modules/array-differ": { - "version": "3.0.0", - "dev": true, + "node_modules/@react-native-community/cli/node_modules/get-stream": { + "version": "4.1.0", "license": "MIT", + "peer": true, + "dependencies": { + "pump": "^3.0.0" + }, "engines": { - "node": ">=8" + "node": ">=6" } }, - "node_modules/array-ify": { - "version": "1.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/array-union": { - "version": "2.1.0", - "dev": true, + "node_modules/@react-native-community/cli/node_modules/has-flag": { + "version": "4.0.0", "license": "MIT", + "peer": true, "engines": { "node": ">=8" } }, - "node_modules/array-unique": { - "version": "0.3.2", + "node_modules/@react-native-community/cli/node_modules/is-stream": { + "version": "1.1.0", "license": "MIT", "peer": true, "engines": { "node": ">=0.10.0" } }, - "node_modules/arrify": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/asap": { - "version": "2.0.6", - "license": "MIT" - }, - "node_modules/assertion-error": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": "*" - } - }, - "node_modules/assign-symbols": { - "version": "1.0.0", + "node_modules/@react-native-community/cli/node_modules/jsonfile": { + "version": "4.0.0", "license": "MIT", "peer": true, - "engines": { - "node": ">=0.10.0" + "optionalDependencies": { + "graceful-fs": "^4.1.6" } }, - "node_modules/ast-types": { - "version": "0.14.2", + "node_modules/@react-native-community/cli/node_modules/npm-run-path": { + "version": "2.0.2", "license": "MIT", "peer": true, "dependencies": { - "tslib": "^2.0.1" + "path-key": "^2.0.0" }, "engines": { "node": ">=4" } }, - "node_modules/astral-regex": { - "version": "1.0.0", + "node_modules/@react-native-community/cli/node_modules/path-key": { + "version": "2.0.1", "license": "MIT", "peer": true, "engines": { "node": ">=4" } }, - "node_modules/async": { - "version": "3.2.4", - "license": "MIT" - }, - "node_modules/async-limiter": { - "version": "1.0.1", + "node_modules/@react-native-community/cli/node_modules/shebang-command": { + "version": "1.2.0", "license": "MIT", - "peer": true - }, - "node_modules/asynckit": { - "version": "0.4.0", - "dev": true, - "license": "MIT" - }, - "node_modules/at-least-node": { - "version": "1.0.0", - "dev": true, - "license": "ISC", - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/atob": { - "version": "2.1.2", - "license": "(MIT OR Apache-2.0)", "peer": true, - "bin": { - "atob": "bin/atob.js" + "dependencies": { + "shebang-regex": "^1.0.0" }, "engines": { - "node": ">= 4.5.0" - } - }, - "node_modules/aws-amplify": { - "version": "4.3.45", - "license": "Apache-2.0", - "dependencies": { - "@aws-amplify/analytics": "5.2.30", - "@aws-amplify/api": "4.0.63", - "@aws-amplify/auth": "4.6.16", - "@aws-amplify/cache": "4.0.65", - "@aws-amplify/core": "4.7.14", - "@aws-amplify/datastore": "3.14.6", - "@aws-amplify/geo": "1.3.26", - "@aws-amplify/interactions": "4.1.11", - "@aws-amplify/predictions": "4.0.63", - "@aws-amplify/pubsub": "4.5.13", - "@aws-amplify/storage": "4.5.16", - "@aws-amplify/ui": "2.0.7", - "@aws-amplify/xr": "3.0.63" - } - }, - "node_modules/axios": { - "version": "0.26.0", - "license": "MIT", - "dependencies": { - "follow-redirects": "^1.14.8" + "node": ">=0.10.0" } }, - "node_modules/babel-core": { - "version": "7.0.0-bridge.0", + "node_modules/@react-native-community/cli/node_modules/shebang-regex": { + "version": "1.0.0", "license": "MIT", "peer": true, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/babel-plugin-polyfill-corejs2": { - "version": "0.3.3", + "node_modules/@react-native-community/cli/node_modules/supports-color": { + "version": "7.2.0", "license": "MIT", "peer": true, "dependencies": { - "@babel/compat-data": "^7.17.7", - "@babel/helper-define-polyfill-provider": "^0.3.3", - "semver": "^6.1.1" + "has-flag": "^4.0.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">=8" } }, - "node_modules/babel-plugin-polyfill-corejs3": { - "version": "0.6.0", + "node_modules/@react-native-community/cli/node_modules/universalify": { + "version": "0.1.2", "license": "MIT", "peer": true, - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.3.3", - "core-js-compat": "^3.25.1" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">= 4.0.0" } }, - "node_modules/babel-plugin-polyfill-regenerator": { - "version": "0.4.1", - "license": "MIT", + "node_modules/@react-native-community/cli/node_modules/which": { + "version": "1.3.1", + "license": "ISC", "peer": true, "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.3.3" + "isexe": "^2.0.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "bin": { + "which": "bin/which" } }, - "node_modules/babel-plugin-syntax-trailing-function-commas": { - "version": "7.0.0-beta.0", + "node_modules/@react-native/assets": { + "version": "1.0.0", "license": "MIT", "peer": true }, - "node_modules/babel-preset-fbjs": { - "version": "3.4.0", + "node_modules/@react-native/normalize-color": { + "version": "2.0.0", "license": "MIT", - "peer": true, - "dependencies": { - "@babel/plugin-proposal-class-properties": "^7.0.0", - "@babel/plugin-proposal-object-rest-spread": "^7.0.0", - "@babel/plugin-syntax-class-properties": "^7.0.0", - "@babel/plugin-syntax-flow": "^7.0.0", - "@babel/plugin-syntax-jsx": "^7.0.0", - "@babel/plugin-syntax-object-rest-spread": "^7.0.0", - "@babel/plugin-transform-arrow-functions": "^7.0.0", - "@babel/plugin-transform-block-scoped-functions": "^7.0.0", - "@babel/plugin-transform-block-scoping": "^7.0.0", - "@babel/plugin-transform-classes": "^7.0.0", - "@babel/plugin-transform-computed-properties": "^7.0.0", - "@babel/plugin-transform-destructuring": "^7.0.0", - "@babel/plugin-transform-flow-strip-types": "^7.0.0", - "@babel/plugin-transform-for-of": "^7.0.0", - "@babel/plugin-transform-function-name": "^7.0.0", - "@babel/plugin-transform-literals": "^7.0.0", - "@babel/plugin-transform-member-expression-literals": "^7.0.0", - "@babel/plugin-transform-modules-commonjs": "^7.0.0", - "@babel/plugin-transform-object-super": "^7.0.0", - "@babel/plugin-transform-parameters": "^7.0.0", - "@babel/plugin-transform-property-literals": "^7.0.0", - "@babel/plugin-transform-react-display-name": "^7.0.0", - "@babel/plugin-transform-react-jsx": "^7.0.0", - "@babel/plugin-transform-shorthand-properties": "^7.0.0", - "@babel/plugin-transform-spread": "^7.0.0", - "@babel/plugin-transform-template-literals": "^7.0.0", - "babel-plugin-syntax-trailing-function-commas": "^7.0.0-beta.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "license": "MIT" + "peer": true }, - "node_modules/base": { - "version": "0.11.2", + "node_modules/@react-native/polyfills": { + "version": "2.0.0", "license": "MIT", - "peer": true, - "dependencies": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/base-64": { - "version": "1.0.0", - "license": "MIT" + "peer": true }, - "node_modules/base/node_modules/define-property": { - "version": "1.0.0", - "license": "MIT", + "node_modules/@sideway/address": { + "version": "4.1.4", + "license": "BSD-3-Clause", "peer": true, "dependencies": { - "is-descriptor": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" + "@hapi/hoek": "^9.0.0" } }, - "node_modules/base64-js": { - "version": "1.5.1", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" + "node_modules/@sideway/formula": { + "version": "3.0.1", + "license": "BSD-3-Clause", + "peer": true }, - "node_modules/before-after-hook": { - "version": "2.2.3", - "dev": true, - "license": "Apache-2.0" + "node_modules/@sideway/pinpoint": { + "version": "2.0.0", + "license": "BSD-3-Clause", + "peer": true }, - "node_modules/bin-links": { - "version": "3.0.3", + "node_modules/@tootallnate/once": { + "version": "2.0.0", "dev": true, - "license": "ISC", - "dependencies": { - "cmd-shim": "^5.0.0", - "mkdirp-infer-owner": "^2.0.0", - "npm-normalize-package-bin": "^2.0.0", - "read-cmd-shim": "^3.0.0", - "rimraf": "^3.0.0", - "write-file-atomic": "^4.0.0" - }, + "license": "MIT", "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">= 10" } }, - "node_modules/bin-links/node_modules/npm-normalize-package-bin": { - "version": "2.0.0", - "dev": true, - "license": "ISC", - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node_modules/@turf/boolean-clockwise": { + "version": "6.5.0", + "license": "MIT", + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "dev": true, + "node_modules/@turf/helpers": { + "version": "6.5.0", "license": "MIT", - "engines": { - "node": ">=8" + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/bl": { - "version": "4.1.0", + "node_modules/@turf/invariant": { + "version": "6.5.0", "license": "MIT", "dependencies": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" + "@turf/helpers": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/bl/node_modules/buffer": { - "version": "5.7.1", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], + "node_modules/@types/archiver": { + "version": "5.3.1", "license": "MIT", "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "@types/glob": "*" } }, - "node_modules/bowser": { - "version": "2.11.0", + "node_modules/@types/chai": { + "version": "4.3.4", + "dev": true, "license": "MIT" }, - "node_modules/brace-expansion": { - "version": "1.1.11", + "node_modules/@types/chai-subset": { + "version": "1.3.3", + "dev": true, "license": "MIT", "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "@types/chai": "*" } }, - "node_modules/braces": { - "version": "3.0.2", + "node_modules/@types/cookie": { + "version": "0.3.3", + "license": "MIT" + }, + "node_modules/@types/glob": { + "version": "8.0.0", "license": "MIT", "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" + "@types/minimatch": "*", + "@types/node": "*" } }, - "node_modules/browserslist": { - "version": "4.21.4", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - } - ], + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.4", "license": "MIT", - "peer": true, - "dependencies": { - "caniuse-lite": "^1.0.30001400", - "electron-to-chromium": "^1.4.251", - "node-releases": "^2.0.6", - "update-browserslist-db": "^1.0.9" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } + "peer": true }, - "node_modules/bser": { - "version": "2.1.1", - "license": "Apache-2.0", + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.0", + "license": "MIT", "peer": true, "dependencies": { - "node-int64": "^0.4.0" + "@types/istanbul-lib-coverage": "*" } }, - "node_modules/buffer": { - "version": "4.9.2", + "node_modules/@types/istanbul-reports": { + "version": "3.0.1", "license": "MIT", + "peer": true, "dependencies": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" + "@types/istanbul-lib-report": "*" } }, - "node_modules/buffer-crc32": { - "version": "0.2.13", - "license": "MIT", - "engines": { - "node": "*" - } + "node_modules/@types/json5": { + "version": "0.0.29", + "dev": true, + "license": "MIT" }, - "node_modules/buffer-from": { - "version": "1.1.2", + "node_modules/@types/minimatch": { + "version": "3.0.5", "license": "MIT" }, - "node_modules/builtins": { - "version": "5.0.1", + "node_modules/@types/minimist": { + "version": "1.2.2", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/node": { + "version": "18.11.18", + "license": "MIT" + }, + "node_modules/@types/normalize-package-data": { + "version": "2.4.1", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/parse-json": { + "version": "4.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/qrcode-terminal": { + "version": "0.12.0", + "license": "MIT" + }, + "node_modules/@types/ramda": { + "version": "0.28.20", "dev": true, "license": "MIT", "dependencies": { - "semver": "^7.0.0" + "ts-toolbelt": "^6.15.1" } }, - "node_modules/builtins/node_modules/lru-cache": { - "version": "6.0.0", + "node_modules/@types/yargs-parser": { + "version": "21.0.0", + "license": "MIT", + "peer": true + }, + "node_modules/@vitest/expect": { + "version": "0.28.5", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-0.28.5.tgz", + "integrity": "sha512-gqTZwoUTwepwGIatnw4UKpQfnoyV0Z9Czn9+Lo2/jLIt4/AXLTn+oVZxlQ7Ng8bzcNkR+3DqLJ08kNr8jRmdNQ==", "dev": true, - "license": "ISC", "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" + "@vitest/spy": "0.28.5", + "@vitest/utils": "0.28.5", + "chai": "^4.3.7" } }, - "node_modules/builtins/node_modules/semver": { - "version": "7.3.8", + "node_modules/@vitest/runner": { + "version": "0.28.5", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-0.28.5.tgz", + "integrity": "sha512-NKkHtLB+FGjpp5KmneQjTcPLWPTDfB7ie+MmF1PnUBf/tGe2OjGxWyB62ySYZ25EYp9krR5Bw0YPLS/VWh1QiA==", "dev": true, - "license": "ISC", "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" + "@vitest/utils": "0.28.5", + "p-limit": "^4.0.0", + "pathe": "^1.1.0" } }, - "node_modules/builtins/node_modules/yallist": { + "node_modules/@vitest/runner/node_modules/p-limit": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", "dev": true, - "license": "ISC" - }, - "node_modules/byte-size": { - "version": "7.0.1", - "dev": true, - "license": "MIT", + "dependencies": { + "yocto-queue": "^1.0.0" + }, "engines": { - "node": ">=10" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/bytes": { - "version": "3.0.0", - "license": "MIT", - "peer": true, + "node_modules/@vitest/runner/node_modules/pathe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.0.tgz", + "integrity": "sha512-ODbEPR0KKHqECXW1GoxdDb+AZvULmXjVPy4rt+pGo2+TnjJTIPJQSVS6N63n8T2Ip+syHhbn52OewKicV0373w==", + "dev": true + }, + "node_modules/@vitest/runner/node_modules/yocto-queue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "dev": true, "engines": { - "node": ">= 0.8" + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/cac": { - "version": "6.7.14", - "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", - "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", + "node_modules/@vitest/spy": { + "version": "0.28.5", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-0.28.5.tgz", + "integrity": "sha512-7if6rsHQr9zbmvxN7h+gGh2L9eIIErgf8nSKYDlg07HHimCxp4H6I/X/DPXktVPPLQfiZ1Cw2cbDIx9fSqDjGw==", "dev": true, - "engines": { - "node": ">=8" + "dependencies": { + "tinyspy": "^1.0.2" } }, - "node_modules/cacache": { - "version": "16.1.3", + "node_modules/@vitest/utils": { + "version": "0.28.5", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-0.28.5.tgz", + "integrity": "sha512-UyZdYwdULlOa4LTUSwZ+Paz7nBHGTT72jKwdFSV4IjHF1xsokp+CabMdhjvVhYwkLfO88ylJT46YMilnkSARZA==", "dev": true, - "license": "ISC", "dependencies": { - "@npmcli/fs": "^2.1.0", - "@npmcli/move-file": "^2.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "glob": "^8.0.1", - "infer-owner": "^1.0.4", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "mkdirp": "^1.0.4", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11", - "unique-filename": "^2.0.0" - }, + "cli-truncate": "^3.1.0", + "diff": "^5.1.0", + "loupe": "^2.3.6", + "picocolors": "^1.0.0", + "pretty-format": "^27.5.1" + } + }, + "node_modules/@vitest/utils/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/cacache/node_modules/lru-cache": { - "version": "7.14.1", + "node_modules/@vitest/utils/node_modules/pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", "dev": true, - "license": "ISC", + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, "engines": { - "node": ">=12" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/cache-base": { - "version": "1.0.1", - "license": "MIT", - "peer": true, + "node_modules/@yarnpkg/lockfile": { + "version": "1.1.0", + "dev": true, + "license": "BSD-2-Clause" + }, + "node_modules/@yarnpkg/parsers": { + "version": "3.0.0-rc.34", + "dev": true, + "license": "BSD-2-Clause", "dependencies": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" + "js-yaml": "^3.10.0", + "tslib": "^2.4.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=14.15.0" } }, - "node_modules/caller-callsite": { - "version": "2.0.0", + "node_modules/@zkochan/js-yaml": { + "version": "0.0.6", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "callsites": "^2.0.0" + "argparse": "^2.0.1" }, - "engines": { - "node": ">=4" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/caller-callsite/node_modules/callsites": { - "version": "2.0.0", + "node_modules/@zkochan/js-yaml/node_modules/argparse": { + "version": "2.0.1", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/abbrev": { + "version": "1.1.1", + "dev": true, + "license": "ISC" + }, + "node_modules/abort-controller": { + "version": "3.0.0", "license": "MIT", "peer": true, + "dependencies": { + "event-target-shim": "^5.0.0" + }, "engines": { - "node": ">=4" + "node": ">=6.5" } }, - "node_modules/caller-path": { - "version": "2.0.0", + "node_modules/absolute-path": { + "version": "0.0.0", + "license": "MIT", + "peer": true + }, + "node_modules/accepts": { + "version": "1.3.8", "license": "MIT", "peer": true, "dependencies": { - "caller-callsite": "^2.0.0" + "mime-types": "~2.1.34", + "negotiator": "0.6.3" }, "engines": { - "node": ">=4" + "node": ">= 0.6" } }, - "node_modules/callsites": { - "version": "3.1.0", + "node_modules/acorn": { + "version": "8.8.1", "dev": true, "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, "engines": { - "node": ">=6" + "node": ">=0.4.0" } }, - "node_modules/camelcase": { - "version": "5.3.1", + "node_modules/acorn-walk": { + "version": "8.2.0", + "dev": true, "license": "MIT", "engines": { - "node": ">=6" + "node": ">=0.4.0" } }, - "node_modules/camelcase-keys": { - "version": "6.2.2", + "node_modules/add-stream": { + "version": "1.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/agent-base": { + "version": "6.0.2", + "dev": true, "license": "MIT", "dependencies": { - "camelcase": "^5.3.1", - "map-obj": "^4.0.0", - "quick-lru": "^4.0.1" + "debug": "4" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 6.0.0" } }, - "node_modules/caniuse-lite": { - "version": "1.0.30001441", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - } - ], - "license": "CC-BY-4.0", - "peer": true - }, - "node_modules/chai": { - "version": "4.3.7", + "node_modules/agentkeepalive": { + "version": "4.2.1", "dev": true, "license": "MIT", "dependencies": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.2", - "deep-eql": "^4.1.2", - "get-func-name": "^2.0.0", - "loupe": "^2.3.1", - "pathval": "^1.1.1", - "type-detect": "^4.0.5" + "debug": "^4.1.0", + "depd": "^1.1.2", + "humanize-ms": "^1.2.1" }, "engines": { - "node": ">=4" + "node": ">= 8.0.0" } }, - "node_modules/chalk": { - "version": "2.4.2", + "node_modules/aggregate-error": { + "version": "3.1.0", + "dev": true, "license": "MIT", "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/chardet": { - "version": "0.7.0", - "license": "MIT" + "node_modules/amazon-cognito-identity-js": { + "version": "5.2.14", + "license": "Apache-2.0", + "dependencies": { + "buffer": "4.9.2", + "crypto-js": "^4.1.1", + "fast-base64-decode": "^1.0.0", + "isomorphic-unfetch": "^3.0.0", + "js-cookie": "^2.2.1" + } }, - "node_modules/check-error": { - "version": "1.0.2", + "node_modules/anser": { + "version": "1.4.10", + "license": "MIT", + "peer": true + }, + "node_modules/ansi-colors": { + "version": "4.1.3", "dev": true, "license": "MIT", "engines": { - "node": "*" + "node": ">=6" } }, - "node_modules/chokidar": { - "version": "3.5.3", + "node_modules/ansi-escapes": { + "version": "4.3.2", "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], "license": "MIT", "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" + "type-fest": "^0.21.3" }, "engines": { - "node": ">= 8.10.0" + "node": ">=8" }, - "optionalDependencies": { - "fsevents": "~2.3.2" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/chownr": { - "version": "2.0.0", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=10" + "node_modules/ansi-fragments": { + "version": "0.2.1", + "license": "MIT", + "peer": true, + "dependencies": { + "colorette": "^1.0.7", + "slice-ansi": "^2.0.0", + "strip-ansi": "^5.0.0" } }, - "node_modules/ci-info": { - "version": "3.7.0", + "node_modules/ansi-fragments/node_modules/ansi-regex": { + "version": "4.1.1", "license": "MIT", "peer": true, "engines": { - "node": ">=8" + "node": ">=6" } }, - "node_modules/class-utils": { - "version": "0.3.6", + "node_modules/ansi-fragments/node_modules/strip-ansi": { + "version": "5.2.0", "license": "MIT", "peer": true, "dependencies": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" + "ansi-regex": "^4.1.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "node_modules/class-utils/node_modules/define-property": { - "version": "0.2.5", + "node_modules/ansi-regex": { + "version": "5.0.1", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", "license": "MIT", - "peer": true, "dependencies": { - "is-descriptor": "^0.1.0" + "color-convert": "^1.9.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/class-utils/node_modules/is-accessor-descriptor": { - "version": "0.1.6", - "license": "MIT", - "peer": true, + "node_modules/anymatch": { + "version": "3.1.3", + "license": "ISC", "dependencies": { - "kind-of": "^3.0.2" + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" }, "engines": { - "node": ">=0.10.0" + "node": ">= 8" } }, - "node_modules/class-utils/node_modules/is-accessor-descriptor/node_modules/kind-of": { - "version": "3.2.2", + "node_modules/appdirsjs": { + "version": "1.2.7", + "license": "MIT", + "peer": true + }, + "node_modules/aproba": { + "version": "2.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/archiver": { + "version": "5.3.1", "license": "MIT", - "peer": true, "dependencies": { - "is-buffer": "^1.1.5" + "archiver-utils": "^2.1.0", + "async": "^3.2.3", + "buffer-crc32": "^0.2.1", + "readable-stream": "^3.6.0", + "readdir-glob": "^1.0.0", + "tar-stream": "^2.2.0", + "zip-stream": "^4.1.0" }, "engines": { - "node": ">=0.10.0" + "node": ">= 10" } }, - "node_modules/class-utils/node_modules/is-data-descriptor": { - "version": "0.1.4", + "node_modules/archiver-utils": { + "version": "2.1.0", "license": "MIT", - "peer": true, "dependencies": { - "kind-of": "^3.0.2" + "glob": "^7.1.4", + "graceful-fs": "^4.2.0", + "lazystream": "^1.0.0", + "lodash.defaults": "^4.2.0", + "lodash.difference": "^4.5.0", + "lodash.flatten": "^4.4.0", + "lodash.isplainobject": "^4.0.6", + "lodash.union": "^4.6.0", + "normalize-path": "^3.0.0", + "readable-stream": "^2.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">= 6" } }, - "node_modules/class-utils/node_modules/is-data-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "license": "MIT", - "peer": true, + "node_modules/archiver-utils/node_modules/glob": { + "version": "7.2.3", + "license": "ISC", "dependencies": { - "is-buffer": "^1.1.5" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, "engines": { - "node": ">=0.10.0" + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/class-utils/node_modules/is-descriptor": { - "version": "0.1.6", + "node_modules/archiver-utils/node_modules/readable-stream": { + "version": "2.3.7", "license": "MIT", - "peer": true, "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/archiver-utils/node_modules/safe-buffer": { + "version": "5.1.2", + "license": "MIT" + }, + "node_modules/archiver-utils/node_modules/string_decoder": { + "version": "1.1.1", + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/are-we-there-yet": { + "version": "3.0.1", + "dev": true, + "license": "ISC", + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" }, "engines": { - "node": ">=0.10.0" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/class-utils/node_modules/kind-of": { - "version": "5.1.0", + "node_modules/argparse": { + "version": "1.0.10", + "license": "MIT", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/arr-diff": { + "version": "4.0.0", "license": "MIT", "peer": true, "engines": { "node": ">=0.10.0" } }, - "node_modules/clean-stack": { - "version": "2.2.0", - "dev": true, + "node_modules/arr-flatten": { + "version": "1.1.0", "license": "MIT", + "peer": true, "engines": { - "node": ">=6" + "node": ">=0.10.0" } }, - "node_modules/cli-cursor": { + "node_modules/arr-union": { "version": "3.1.0", "license": "MIT", - "dependencies": { - "restore-cursor": "^3.1.0" - }, + "peer": true, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/cli-spinners": { - "version": "2.6.1", + "node_modules/array-differ": { + "version": "3.0.0", + "dev": true, "license": "MIT", "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=8" } }, - "node_modules/cli-truncate": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", - "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", + "node_modules/array-ify": { + "version": "1.0.0", "dev": true, - "dependencies": { - "slice-ansi": "^5.0.0", - "string-width": "^5.0.0" - }, + "license": "MIT" + }, + "node_modules/array-union": { + "version": "2.1.0", + "dev": true, + "license": "MIT", "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=8" } }, - "node_modules/cli-truncate/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "dev": true, + "node_modules/array-unique": { + "version": "0.3.2", + "license": "MIT", + "peer": true, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" + "node": ">=0.10.0" } }, - "node_modules/cli-truncate/node_modules/ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "node_modules/arrify": { + "version": "1.0.1", "dev": true, + "license": "MIT", "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": ">=0.10.0" } }, - "node_modules/cli-truncate/node_modules/emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", - "dev": true + "node_modules/asap": { + "version": "2.0.6", + "license": "MIT" }, - "node_modules/cli-truncate/node_modules/is-fullwidth-code-point": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", - "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", + "node_modules/assertion-error": { + "version": "1.1.0", "dev": true, + "license": "MIT", "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "*" } }, - "node_modules/cli-truncate/node_modules/slice-ansi": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", - "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^6.0.0", - "is-fullwidth-code-point": "^4.0.0" - }, + "node_modules/assign-symbols": { + "version": "1.0.0", + "license": "MIT", + "peer": true, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/slice-ansi?sponsor=1" + "node": ">=0.10.0" } }, - "node_modules/cli-truncate/node_modules/string-width": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", - "dev": true, + "node_modules/ast-types": { + "version": "0.14.2", + "license": "MIT", + "peer": true, "dependencies": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" + "tslib": "^2.0.1" }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=4" } }, - "node_modules/cli-truncate/node_modules/strip-ansi": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", - "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", - "dev": true, - "dependencies": { - "ansi-regex": "^6.0.1" - }, + "node_modules/astral-regex": { + "version": "1.0.0", + "license": "MIT", + "peer": true, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" + "node": ">=4" } }, - "node_modules/cli-width": { - "version": "3.0.0", + "node_modules/async": { + "version": "3.2.4", + "license": "MIT" + }, + "node_modules/async-limiter": { + "version": "1.0.1", + "license": "MIT", + "peer": true + }, + "node_modules/asynckit": { + "version": "0.4.0", "dev": true, - "license": "ISC", - "engines": { - "node": ">= 10" - } + "license": "MIT" }, - "node_modules/cliui": { - "version": "7.0.4", + "node_modules/at-least-node": { + "version": "1.0.0", "dev": true, "license": "ISC", - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" + "engines": { + "node": ">= 4.0.0" } }, - "node_modules/clone": { - "version": "1.0.4", - "license": "MIT", + "node_modules/atob": { + "version": "2.1.2", + "license": "(MIT OR Apache-2.0)", + "peer": true, + "bin": { + "atob": "bin/atob.js" + }, "engines": { - "node": ">=0.8" + "node": ">= 4.5.0" } }, - "node_modules/clone-deep": { - "version": "4.0.1", - "license": "MIT", + "node_modules/aws-amplify": { + "version": "4.3.45", + "license": "Apache-2.0", "dependencies": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - }, - "engines": { - "node": ">=6" + "@aws-amplify/analytics": "5.2.30", + "@aws-amplify/api": "4.0.63", + "@aws-amplify/auth": "4.6.16", + "@aws-amplify/cache": "4.0.65", + "@aws-amplify/core": "4.7.14", + "@aws-amplify/datastore": "3.14.6", + "@aws-amplify/geo": "1.3.26", + "@aws-amplify/interactions": "4.1.11", + "@aws-amplify/predictions": "4.0.63", + "@aws-amplify/pubsub": "4.5.13", + "@aws-amplify/storage": "4.5.16", + "@aws-amplify/ui": "2.0.7", + "@aws-amplify/xr": "3.0.63" } }, - "node_modules/clone-deep/node_modules/is-plain-object": { - "version": "2.0.4", + "node_modules/axios": { + "version": "0.26.0", "license": "MIT", "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" + "follow-redirects": "^1.14.8" } }, - "node_modules/cmd-shim": { - "version": "5.0.0", - "dev": true, - "license": "ISC", - "dependencies": { - "mkdirp-infer-owner": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node_modules/babel-core": { + "version": "7.0.0-bridge.0", + "license": "MIT", + "peer": true, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/collection-visit": { - "version": "1.0.0", + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.3.3", "license": "MIT", "peer": true, "dependencies": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" + "@babel/compat-data": "^7.17.7", + "@babel/helper-define-polyfill-provider": "^0.3.3", + "semver": "^6.1.1" }, - "engines": { - "node": ">=0.10.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/color-convert": { - "version": "1.9.3", + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.6.0", "license": "MIT", + "peer": true, "dependencies": { - "color-name": "1.1.3" + "@babel/helper-define-polyfill-provider": "^0.3.3", + "core-js-compat": "^3.25.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/color-name": { - "version": "1.1.3", - "license": "MIT" - }, - "node_modules/color-support": { - "version": "1.1.3", - "dev": true, - "license": "ISC", - "bin": { - "color-support": "bin.js" + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.4.1", + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/colorette": { - "version": "1.4.0", + "node_modules/babel-plugin-syntax-trailing-function-commas": { + "version": "7.0.0-beta.0", "license": "MIT", "peer": true }, - "node_modules/columnify": { - "version": "1.6.0", - "dev": true, + "node_modules/babel-preset-fbjs": { + "version": "3.4.0", "license": "MIT", + "peer": true, "dependencies": { - "strip-ansi": "^6.0.1", - "wcwidth": "^1.0.0" + "@babel/plugin-proposal-class-properties": "^7.0.0", + "@babel/plugin-proposal-object-rest-spread": "^7.0.0", + "@babel/plugin-syntax-class-properties": "^7.0.0", + "@babel/plugin-syntax-flow": "^7.0.0", + "@babel/plugin-syntax-jsx": "^7.0.0", + "@babel/plugin-syntax-object-rest-spread": "^7.0.0", + "@babel/plugin-transform-arrow-functions": "^7.0.0", + "@babel/plugin-transform-block-scoped-functions": "^7.0.0", + "@babel/plugin-transform-block-scoping": "^7.0.0", + "@babel/plugin-transform-classes": "^7.0.0", + "@babel/plugin-transform-computed-properties": "^7.0.0", + "@babel/plugin-transform-destructuring": "^7.0.0", + "@babel/plugin-transform-flow-strip-types": "^7.0.0", + "@babel/plugin-transform-for-of": "^7.0.0", + "@babel/plugin-transform-function-name": "^7.0.0", + "@babel/plugin-transform-literals": "^7.0.0", + "@babel/plugin-transform-member-expression-literals": "^7.0.0", + "@babel/plugin-transform-modules-commonjs": "^7.0.0", + "@babel/plugin-transform-object-super": "^7.0.0", + "@babel/plugin-transform-parameters": "^7.0.0", + "@babel/plugin-transform-property-literals": "^7.0.0", + "@babel/plugin-transform-react-display-name": "^7.0.0", + "@babel/plugin-transform-react-jsx": "^7.0.0", + "@babel/plugin-transform-shorthand-properties": "^7.0.0", + "@babel/plugin-transform-spread": "^7.0.0", + "@babel/plugin-transform-template-literals": "^7.0.0", + "babel-plugin-syntax-trailing-function-commas": "^7.0.0-beta.0" }, - "engines": { - "node": ">=8.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/combined-stream": { - "version": "1.0.8", - "dev": true, + "node_modules/balanced-match": { + "version": "1.0.2", + "license": "MIT" + }, + "node_modules/base": { + "version": "0.11.2", "license": "MIT", + "peer": true, "dependencies": { - "delayed-stream": "~1.0.0" + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" }, "engines": { - "node": ">= 0.8" + "node": ">=0.10.0" } }, - "node_modules/command-exists": { - "version": "1.2.9", - "license": "MIT", - "peer": true + "node_modules/base-64": { + "version": "1.0.0", + "license": "MIT" }, - "node_modules/commander": { - "version": "9.4.1", + "node_modules/base/node_modules/define-property": { + "version": "1.0.0", "license": "MIT", "peer": true, + "dependencies": { + "is-descriptor": "^1.0.0" + }, "engines": { - "node": "^12.20.0 || >=14" + "node": ">=0.10.0" } }, - "node_modules/common-ancestor-path": { - "version": "1.0.1", + "node_modules/base64-js": { + "version": "1.5.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/before-after-hook": { + "version": "2.2.3", "dev": true, - "license": "ISC" + "license": "Apache-2.0" }, - "node_modules/commondir": { - "version": "1.0.1", - "license": "MIT", - "peer": true + "node_modules/bin-links": { + "version": "3.0.3", + "dev": true, + "license": "ISC", + "dependencies": { + "cmd-shim": "^5.0.0", + "mkdirp-infer-owner": "^2.0.0", + "npm-normalize-package-bin": "^2.0.0", + "read-cmd-shim": "^3.0.0", + "rimraf": "^3.0.0", + "write-file-atomic": "^4.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } }, - "node_modules/compare-func": { + "node_modules/bin-links/node_modules/npm-normalize-package-bin": { "version": "2.0.0", "dev": true, - "license": "MIT", - "dependencies": { - "array-ify": "^1.0.0", - "dot-prop": "^5.1.0" + "license": "ISC", + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/compare-func/node_modules/dot-prop": { - "version": "5.3.0", + "node_modules/binary-extensions": { + "version": "2.2.0", "dev": true, "license": "MIT", - "dependencies": { - "is-obj": "^2.0.0" - }, "engines": { "node": ">=8" } }, - "node_modules/component-emitter": { - "version": "1.3.0", + "node_modules/bl": { + "version": "4.1.0", "license": "MIT", - "peer": true + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } }, - "node_modules/compress-commons": { - "version": "4.1.1", + "node_modules/bl/node_modules/buffer": { + "version": "5.7.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "license": "MIT", "dependencies": { - "buffer-crc32": "^0.2.13", - "crc32-stream": "^4.0.2", - "normalize-path": "^3.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": ">= 10" + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" } }, - "node_modules/compressible": { - "version": "2.0.18", + "node_modules/bowser": { + "version": "2.11.0", + "license": "MIT" + }, + "node_modules/brace-expansion": { + "version": "1.1.11", "license": "MIT", - "peer": true, "dependencies": { - "mime-db": ">= 1.43.0 < 2" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "license": "MIT", + "dependencies": { + "fill-range": "^7.0.1" }, "engines": { - "node": ">= 0.6" + "node": ">=8" } }, - "node_modules/compression": { - "version": "1.7.4", + "node_modules/browserslist": { + "version": "4.21.4", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], "license": "MIT", "peer": true, "dependencies": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" + "caniuse-lite": "^1.0.30001400", + "electron-to-chromium": "^1.4.251", + "node-releases": "^2.0.6", + "update-browserslist-db": "^1.0.9" + }, + "bin": { + "browserslist": "cli.js" }, "engines": { - "node": ">= 0.8.0" + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "node_modules/compression/node_modules/debug": { - "version": "2.6.9", - "license": "MIT", + "node_modules/bser": { + "version": "2.1.1", + "license": "Apache-2.0", "peer": true, "dependencies": { - "ms": "2.0.0" + "node-int64": "^0.4.0" } }, - "node_modules/compression/node_modules/ms": { - "version": "2.0.0", + "node_modules/buffer": { + "version": "4.9.2", "license": "MIT", - "peer": true + "dependencies": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + } }, - "node_modules/compression/node_modules/safe-buffer": { - "version": "5.1.2", + "node_modules/buffer-crc32": { + "version": "0.2.13", "license": "MIT", - "peer": true + "engines": { + "node": "*" + } }, - "node_modules/concat-map": { - "version": "0.0.1", + "node_modules/buffer-from": { + "version": "1.1.2", "license": "MIT" }, - "node_modules/concat-stream": { - "version": "2.0.0", + "node_modules/builtins": { + "version": "5.0.1", "dev": true, - "engines": [ - "node >= 6.0" - ], "license": "MIT", "dependencies": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" + "semver": "^7.0.0" } }, - "node_modules/config-chain": { - "version": "1.1.13", + "node_modules/builtins/node_modules/lru-cache": { + "version": "6.0.0", "dev": true, - "license": "MIT", - "dependencies": { - "ini": "^1.3.4", - "proto-list": "~1.2.1" - } - }, - "node_modules/connect": { - "version": "3.7.0", - "license": "MIT", - "peer": true, + "license": "ISC", "dependencies": { - "debug": "2.6.9", - "finalhandler": "1.1.2", - "parseurl": "~1.3.3", - "utils-merge": "1.0.1" + "yallist": "^4.0.0" }, "engines": { - "node": ">= 0.10.0" + "node": ">=10" } }, - "node_modules/connect/node_modules/debug": { - "version": "2.6.9", - "license": "MIT", - "peer": true, + "node_modules/builtins/node_modules/semver": { + "version": "7.3.8", + "dev": true, + "license": "ISC", "dependencies": { - "ms": "2.0.0" + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "node_modules/connect/node_modules/ms": { - "version": "2.0.0", - "license": "MIT", - "peer": true - }, - "node_modules/console-control-strings": { - "version": "1.1.0", + "node_modules/builtins/node_modules/yallist": { + "version": "4.0.0", "dev": true, "license": "ISC" }, - "node_modules/conventional-changelog-angular": { - "version": "5.0.13", + "node_modules/byte-size": { + "version": "7.0.1", "dev": true, - "license": "ISC", - "dependencies": { - "compare-func": "^2.0.0", - "q": "^1.5.1" - }, + "license": "MIT", "engines": { "node": ">=10" } }, - "node_modules/conventional-changelog-core": { - "version": "4.2.4", - "dev": true, + "node_modules/bytes": { + "version": "3.0.0", "license": "MIT", - "dependencies": { - "add-stream": "^1.0.0", - "conventional-changelog-writer": "^5.0.0", - "conventional-commits-parser": "^3.2.0", - "dateformat": "^3.0.0", - "get-pkg-repo": "^4.0.0", - "git-raw-commits": "^2.0.8", - "git-remote-origin-url": "^2.0.0", - "git-semver-tags": "^4.1.1", - "lodash": "^4.17.15", - "normalize-package-data": "^3.0.0", - "q": "^1.5.1", - "read-pkg": "^3.0.0", - "read-pkg-up": "^3.0.0", - "through2": "^4.0.0" - }, + "peer": true, "engines": { - "node": ">=10" + "node": ">= 0.8" } }, - "node_modules/conventional-changelog-preset-loader": { - "version": "2.3.4", + "node_modules/cac": { + "version": "6.7.14", + "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", + "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", "dev": true, - "license": "MIT", "engines": { - "node": ">=10" + "node": ">=8" } }, - "node_modules/conventional-changelog-writer": { - "version": "5.0.1", + "node_modules/cacache": { + "version": "16.1.3", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "conventional-commits-filter": "^2.0.7", - "dateformat": "^3.0.0", - "handlebars": "^4.7.7", - "json-stringify-safe": "^5.0.1", - "lodash": "^4.17.15", - "meow": "^8.0.0", - "semver": "^6.0.0", - "split": "^1.0.0", - "through2": "^4.0.0" - }, - "bin": { - "conventional-changelog-writer": "cli.js" + "@npmcli/fs": "^2.1.0", + "@npmcli/move-file": "^2.0.0", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", + "glob": "^8.0.1", + "infer-owner": "^1.0.4", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "mkdirp": "^1.0.4", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^9.0.0", + "tar": "^6.1.11", + "unique-filename": "^2.0.0" }, "engines": { - "node": ">=10" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/conventional-commits-filter": { - "version": "2.0.7", + "node_modules/cacache/node_modules/lru-cache": { + "version": "7.14.1", "dev": true, - "license": "MIT", - "dependencies": { - "lodash.ismatch": "^4.4.0", - "modify-values": "^1.0.0" - }, + "license": "ISC", "engines": { - "node": ">=10" + "node": ">=12" } }, - "node_modules/conventional-commits-parser": { - "version": "3.2.4", - "dev": true, + "node_modules/cache-base": { + "version": "1.0.1", "license": "MIT", + "peer": true, "dependencies": { - "is-text-path": "^1.0.1", - "JSONStream": "^1.0.4", - "lodash": "^4.17.15", - "meow": "^8.0.0", - "split2": "^3.0.0", - "through2": "^4.0.0" - }, - "bin": { - "conventional-commits-parser": "cli.js" + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" }, "engines": { - "node": ">=10" + "node": ">=0.10.0" } }, - "node_modules/conventional-recommended-bump": { - "version": "6.1.0", - "dev": true, + "node_modules/caller-callsite": { + "version": "2.0.0", "license": "MIT", + "peer": true, "dependencies": { - "concat-stream": "^2.0.0", - "conventional-changelog-preset-loader": "^2.3.4", - "conventional-commits-filter": "^2.0.7", - "conventional-commits-parser": "^3.2.0", - "git-raw-commits": "^2.0.8", - "git-semver-tags": "^4.1.1", - "meow": "^8.0.0", - "q": "^1.5.1" - }, - "bin": { - "conventional-recommended-bump": "cli.js" + "callsites": "^2.0.0" }, "engines": { - "node": ">=10" - } - }, - "node_modules/convert-source-map": { - "version": "1.9.0", - "license": "MIT", - "peer": true - }, - "node_modules/cookie": { - "version": "0.4.2", - "license": "MIT", - "engines": { - "node": ">= 0.6" + "node": ">=4" } }, - "node_modules/copy-descriptor": { - "version": "0.1.1", + "node_modules/caller-callsite/node_modules/callsites": { + "version": "2.0.0", "license": "MIT", "peer": true, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/core-js-compat": { - "version": "3.27.0", + "node_modules/caller-path": { + "version": "2.0.0", "license": "MIT", "peer": true, "dependencies": { - "browserslist": "^4.21.4" + "caller-callsite": "^2.0.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" + "engines": { + "node": ">=4" } }, - "node_modules/core-util-is": { - "version": "1.0.3", - "license": "MIT" - }, - "node_modules/cosmiconfig": { - "version": "7.1.0", + "node_modules/callsites": { + "version": "3.1.0", "dev": true, "license": "MIT", - "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - }, "engines": { - "node": ">=10" + "node": ">=6" } }, - "node_modules/crc-32": { - "version": "1.2.2", - "license": "Apache-2.0", - "bin": { - "crc32": "bin/crc32.njs" - }, + "node_modules/camelcase": { + "version": "5.3.1", + "license": "MIT", "engines": { - "node": ">=0.8" + "node": ">=6" } }, - "node_modules/crc32-stream": { - "version": "4.0.2", + "node_modules/camelcase-keys": { + "version": "6.2.2", "license": "MIT", "dependencies": { - "crc-32": "^1.2.0", - "readable-stream": "^3.4.0" + "camelcase": "^5.3.1", + "map-obj": "^4.0.0", + "quick-lru": "^4.0.1" }, "engines": { - "node": ">= 10" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/cross-spawn": { - "version": "7.0.3", + "node_modules/caniuse-lite": { + "version": "1.0.30001441", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + } + ], + "license": "CC-BY-4.0", + "peer": true + }, + "node_modules/chai": { + "version": "4.3.7", "dev": true, "license": "MIT", "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" + "assertion-error": "^1.1.0", + "check-error": "^1.0.2", + "deep-eql": "^4.1.2", + "get-func-name": "^2.0.0", + "loupe": "^2.3.1", + "pathval": "^1.1.1", + "type-detect": "^4.0.5" }, "engines": { - "node": ">= 8" + "node": ">=4" } }, - "node_modules/crypto-js": { - "version": "4.1.1", - "license": "MIT" - }, - "node_modules/dargs": { - "version": "7.0.0", - "dev": true, + "node_modules/chalk": { + "version": "2.4.2", "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/dateformat": { - "version": "3.0.3", + "node_modules/chardet": { + "version": "0.7.0", + "license": "MIT" + }, + "node_modules/check-error": { + "version": "1.0.2", "dev": true, "license": "MIT", "engines": { "node": "*" } }, - "node_modules/dayjs": { - "version": "1.11.7", - "license": "MIT", - "peer": true - }, - "node_modules/debug": { - "version": "4.3.4", + "node_modules/chokidar": { + "version": "3.5.3", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], "license": "MIT", "dependencies": { - "ms": "2.1.2" + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" }, "engines": { - "node": ">=6.0" + "node": ">= 8.10.0" }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "optionalDependencies": { + "fsevents": "~2.3.2" } }, - "node_modules/debuglog": { - "version": "1.0.1", + "node_modules/chownr": { + "version": "2.0.0", "dev": true, - "license": "MIT", + "license": "ISC", "engines": { - "node": "*" + "node": ">=10" } }, - "node_modules/decamelize": { - "version": "1.2.0", + "node_modules/ci-info": { + "version": "3.7.0", "license": "MIT", + "peer": true, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/decamelize-keys": { - "version": "1.1.1", - "dev": true, + "node_modules/class-utils": { + "version": "0.3.6", "license": "MIT", + "peer": true, "dependencies": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" }, "engines": { "node": ">=0.10.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/decamelize-keys/node_modules/map-obj": { - "version": "1.0.1", - "dev": true, + "node_modules/class-utils/node_modules/define-property": { + "version": "0.2.5", "license": "MIT", + "peer": true, + "dependencies": { + "is-descriptor": "^0.1.0" + }, "engines": { "node": ">=0.10.0" } }, - "node_modules/decode-uri-component": { - "version": "0.2.2", + "node_modules/class-utils/node_modules/is-accessor-descriptor": { + "version": "0.1.6", "license": "MIT", "peer": true, + "dependencies": { + "kind-of": "^3.0.2" + }, "engines": { - "node": ">=0.10" + "node": ">=0.10.0" } }, - "node_modules/dedent": { - "version": "0.7.0", - "dev": true, - "license": "MIT" - }, - "node_modules/deep-eql": { - "version": "4.1.3", - "dev": true, + "node_modules/class-utils/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", "license": "MIT", + "peer": true, "dependencies": { - "type-detect": "^4.0.0" + "is-buffer": "^1.1.5" }, "engines": { - "node": ">=6" + "node": ">=0.10.0" } }, - "node_modules/deepmerge": { - "version": "3.3.0", + "node_modules/class-utils/node_modules/is-data-descriptor": { + "version": "0.1.4", "license": "MIT", "peer": true, + "dependencies": { + "kind-of": "^3.0.2" + }, "engines": { "node": ">=0.10.0" } }, - "node_modules/defaults": { - "version": "1.0.4", + "node_modules/class-utils/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", "license": "MIT", + "peer": true, "dependencies": { - "clone": "^1.0.2" + "is-buffer": "^1.1.5" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/define-lazy-prop": { - "version": "2.0.0", - "dev": true, - "license": "MIT", "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/define-property": { - "version": "2.0.2", + "node_modules/class-utils/node_modules/is-descriptor": { + "version": "0.1.6", "license": "MIT", "peer": true, "dependencies": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "dev": true, + "node_modules/class-utils/node_modules/kind-of": { + "version": "5.1.0", "license": "MIT", + "peer": true, "engines": { - "node": ">=0.4.0" + "node": ">=0.10.0" } }, - "node_modules/delegates": { - "version": "1.0.0", + "node_modules/clean-stack": { + "version": "2.2.0", "dev": true, - "license": "MIT" + "license": "MIT", + "engines": { + "node": ">=6" + } }, - "node_modules/denodeify": { - "version": "1.2.1", + "node_modules/cli-cursor": { + "version": "3.1.0", "license": "MIT", - "peer": true + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } }, - "node_modules/depd": { - "version": "1.1.2", - "dev": true, + "node_modules/cli-spinners": { + "version": "2.6.1", "license": "MIT", "engines": { - "node": ">= 0.6" + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/deprecation": { - "version": "2.3.1", + "node_modules/cli-truncate": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", + "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", "dev": true, - "license": "ISC" - }, - "node_modules/destroy": { - "version": "1.2.0", - "license": "MIT", - "peer": true, + "dependencies": { + "slice-ansi": "^5.0.0", + "string-width": "^5.0.0" + }, "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/detect-indent": { - "version": "6.1.0", + "node_modules/cli-truncate/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", "dev": true, - "license": "MIT", "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" } }, - "node_modules/dezalgo": { - "version": "1.0.4", + "node_modules/cli-truncate/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", "dev": true, - "license": "ISC", - "dependencies": { - "asap": "^2.0.0", - "wrappy": "1" + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/diff": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz", - "integrity": "sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==", + "node_modules/cli-truncate/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "node_modules/cli-truncate/node_modules/is-fullwidth-code-point": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", + "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", "dev": true, "engines": { - "node": ">=0.3.1" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/dir-glob": { - "version": "3.0.1", + "node_modules/cli-truncate/node_modules/slice-ansi": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", + "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", "dev": true, - "license": "MIT", "dependencies": { - "path-type": "^4.0.0" + "ansi-styles": "^6.0.0", + "is-fullwidth-code-point": "^4.0.0" }, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" } }, - "node_modules/dot-prop": { - "version": "6.0.1", + "node_modules/cli-truncate/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", "dev": true, - "license": "MIT", "dependencies": { - "is-obj": "^2.0.0" + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" }, "engines": { - "node": ">=10" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/dotenv": { - "version": "10.0.0", + "node_modules/cli-truncate/node_modules/strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", "dev": true, - "license": "BSD-2-Clause", + "dependencies": { + "ansi-regex": "^6.0.1" + }, "engines": { - "node": ">=10" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, - "node_modules/duplexer": { - "version": "0.1.2", - "dev": true, - "license": "MIT" - }, - "node_modules/eastasianwidth": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" - }, - "node_modules/ee-first": { - "version": "1.1.1", - "license": "MIT", - "peer": true - }, - "node_modules/ejs": { - "version": "3.1.8", + "node_modules/cli-width": { + "version": "3.0.0", "dev": true, - "license": "Apache-2.0", - "dependencies": { - "jake": "^10.8.5" - }, - "bin": { - "ejs": "bin/cli.js" - }, + "license": "ISC", "engines": { - "node": ">=0.10.0" + "node": ">= 10" } }, - "node_modules/electron-to-chromium": { - "version": "1.4.284", + "node_modules/cliui": { + "version": "7.0.4", + "dev": true, "license": "ISC", - "peer": true - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "license": "MIT" + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } }, - "node_modules/encodeurl": { - "version": "1.0.2", + "node_modules/clone": { + "version": "1.0.4", "license": "MIT", - "peer": true, "engines": { - "node": ">= 0.8" + "node": ">=0.8" } }, - "node_modules/encoding": { - "version": "0.1.13", + "node_modules/clone-deep": { + "version": "4.0.1", "license": "MIT", - "optional": true, "dependencies": { - "iconv-lite": "^0.6.2" + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "engines": { + "node": ">=6" } }, - "node_modules/encoding/node_modules/iconv-lite": { - "version": "0.6.3", + "node_modules/clone-deep/node_modules/is-plain-object": { + "version": "2.0.4", "license": "MIT", - "optional": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" + "isobject": "^3.0.1" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "license": "MIT", - "dependencies": { - "once": "^1.4.0" - } - }, - "node_modules/enquirer": { - "version": "2.3.6", + "node_modules/cmd-shim": { + "version": "5.0.0", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "ansi-colors": "^4.1.1" + "mkdirp-infer-owner": "^2.0.0" }, "engines": { - "node": ">=8.6" - } - }, - "node_modules/entities": { - "version": "2.2.0", - "license": "BSD-2-Clause", - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/env-paths": { - "version": "2.2.1", - "dev": true, + "node_modules/collection-visit": { + "version": "1.0.0", "license": "MIT", + "peer": true, + "dependencies": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + }, "engines": { - "node": ">=6" + "node": ">=0.10.0" } }, - "node_modules/envinfo": { - "version": "7.8.1", + "node_modules/color-convert": { + "version": "1.9.3", "license": "MIT", - "bin": { - "envinfo": "dist/cli.js" - }, - "engines": { - "node": ">=4" + "dependencies": { + "color-name": "1.1.3" } }, - "node_modules/err-code": { - "version": "2.0.3", - "dev": true, + "node_modules/color-name": { + "version": "1.1.3", "license": "MIT" }, - "node_modules/error-ex": { - "version": "1.3.2", - "license": "MIT", - "dependencies": { - "is-arrayish": "^0.2.1" + "node_modules/color-support": { + "version": "1.1.3", + "dev": true, + "license": "ISC", + "bin": { + "color-support": "bin.js" } }, - "node_modules/error-stack-parser": { - "version": "2.1.4", + "node_modules/colorette": { + "version": "1.4.0", "license": "MIT", - "peer": true, - "dependencies": { - "stackframe": "^1.3.4" - } + "peer": true }, - "node_modules/errorhandler": { - "version": "1.5.1", + "node_modules/columnify": { + "version": "1.6.0", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "accepts": "~1.3.7", - "escape-html": "~1.0.3" + "strip-ansi": "^6.0.1", + "wcwidth": "^1.0.0" }, "engines": { - "node": ">= 0.8" + "node": ">=8.0.0" } }, - "node_modules/esbuild": { - "version": "0.16.13", + "node_modules/combined-stream": { + "version": "1.0.8", "dev": true, - "hasInstallScript": true, "license": "MIT", - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" + "dependencies": { + "delayed-stream": "~1.0.0" }, - "optionalDependencies": { - "@esbuild/android-arm": "0.16.13", - "@esbuild/android-arm64": "0.16.13", - "@esbuild/android-x64": "0.16.13", - "@esbuild/darwin-arm64": "0.16.13", - "@esbuild/darwin-x64": "0.16.13", - "@esbuild/freebsd-arm64": "0.16.13", - "@esbuild/freebsd-x64": "0.16.13", - "@esbuild/linux-arm": "0.16.13", - "@esbuild/linux-arm64": "0.16.13", - "@esbuild/linux-ia32": "0.16.13", - "@esbuild/linux-loong64": "0.16.13", - "@esbuild/linux-mips64el": "0.16.13", - "@esbuild/linux-ppc64": "0.16.13", - "@esbuild/linux-riscv64": "0.16.13", - "@esbuild/linux-s390x": "0.16.13", - "@esbuild/linux-x64": "0.16.13", - "@esbuild/netbsd-x64": "0.16.13", - "@esbuild/openbsd-x64": "0.16.13", - "@esbuild/sunos-x64": "0.16.13", - "@esbuild/win32-arm64": "0.16.13", - "@esbuild/win32-ia32": "0.16.13", - "@esbuild/win32-x64": "0.16.13" - } - }, - "node_modules/escalade": { - "version": "3.1.1", - "license": "MIT", "engines": { - "node": ">=6" + "node": ">= 0.8" } }, - "node_modules/escape-html": { - "version": "1.0.3", + "node_modules/command-exists": { + "version": "1.2.9", "license": "MIT", "peer": true }, - "node_modules/escape-string-regexp": { - "version": "1.0.5", + "node_modules/commander": { + "version": "9.4.1", "license": "MIT", + "peer": true, "engines": { - "node": ">=0.8.0" + "node": "^12.20.0 || >=14" } }, - "node_modules/esprima": { - "version": "4.0.1", - "license": "BSD-2-Clause", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } + "node_modules/common-ancestor-path": { + "version": "1.0.1", + "dev": true, + "license": "ISC" }, - "node_modules/esquery": { - "version": "1.4.0", + "node_modules/commondir": { + "version": "1.0.1", + "license": "MIT", + "peer": true + }, + "node_modules/compare-func": { + "version": "2.0.0", "dev": true, - "license": "BSD-3-Clause", + "license": "MIT", "dependencies": { - "estraverse": "^5.1.0" - }, - "engines": { - "node": ">=0.10" + "array-ify": "^1.0.0", + "dot-prop": "^5.1.0" } }, - "node_modules/estraverse": { + "node_modules/compare-func/node_modules/dot-prop": { "version": "5.3.0", "dev": true, - "license": "BSD-2-Clause", + "license": "MIT", + "dependencies": { + "is-obj": "^2.0.0" + }, "engines": { - "node": ">=4.0" + "node": ">=8" } }, - "node_modules/esutils": { - "version": "2.0.3", - "license": "BSD-2-Clause", - "peer": true, + "node_modules/component-emitter": { + "version": "1.3.0", + "license": "MIT", + "peer": true + }, + "node_modules/compress-commons": { + "version": "4.1.1", + "license": "MIT", + "dependencies": { + "buffer-crc32": "^0.2.13", + "crc32-stream": "^4.0.2", + "normalize-path": "^3.0.0", + "readable-stream": "^3.6.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 10" } }, - "node_modules/etag": { - "version": "1.8.1", + "node_modules/compressible": { + "version": "2.0.18", "license": "MIT", "peer": true, + "dependencies": { + "mime-db": ">= 1.43.0 < 2" + }, "engines": { "node": ">= 0.6" } }, - "node_modules/event-target-shim": { - "version": "5.0.1", + "node_modules/compression": { + "version": "1.7.4", "license": "MIT", "peer": true, + "dependencies": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, "engines": { - "node": ">=6" + "node": ">= 0.8.0" } }, - "node_modules/eventemitter3": { - "version": "4.0.7", - "dev": true, - "license": "MIT" - }, - "node_modules/events": { - "version": "3.3.0", + "node_modules/compression/node_modules/debug": { + "version": "2.6.9", "license": "MIT", - "engines": { - "node": ">=0.8.x" + "peer": true, + "dependencies": { + "ms": "2.0.0" } }, - "node_modules/example-javascriptv3-cloudwatch": { - "resolved": "example_code/cloudwatch", - "link": true - }, - "node_modules/example-javascriptv3-cloudwatchevents": { - "resolved": "example_code/cloudwatch-events", - "link": true - }, - "node_modules/example-javascriptv3-cloudwatchlogs": { - "resolved": "example_code/cloudwatch-logs", - "link": true - }, - "node_modules/example-javascriptv3-cognito": { - "resolved": "example_code/cognito", - "link": true - }, - "node_modules/example-javascriptv3-ec2": { - "resolved": "example_code/ec2", - "link": true + "node_modules/compression/node_modules/ms": { + "version": "2.0.0", + "license": "MIT", + "peer": true }, - "node_modules/example-javascriptv3-lambda": { - "resolved": "example_code/lambda", - "link": true + "node_modules/compression/node_modules/safe-buffer": { + "version": "5.1.2", + "license": "MIT", + "peer": true }, - "node_modules/example-javascriptv3-sts": { - "resolved": "example_code/sts", - "link": true + "node_modules/concat-map": { + "version": "0.0.1", + "license": "MIT" }, - "node_modules/example-javascriptv3-support": { - "resolved": "example_code/support", - "link": true + "node_modules/concat-stream": { + "version": "2.0.0", + "dev": true, + "engines": [ + "node >= 6.0" + ], + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.0.2", + "typedarray": "^0.0.6" + } }, - "node_modules/execa": { - "version": "5.1.1", + "node_modules/config-chain": { + "version": "1.1.13", "dev": true, "license": "MIT", "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" + "ini": "^1.3.4", + "proto-list": "~1.2.1" } }, - "node_modules/expand-brackets": { - "version": "2.1.4", + "node_modules/connect": { + "version": "3.7.0", "license": "MIT", "peer": true, "dependencies": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" + "debug": "2.6.9", + "finalhandler": "1.1.2", + "parseurl": "~1.3.3", + "utils-merge": "1.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.10.0" } }, - "node_modules/expand-brackets/node_modules/debug": { + "node_modules/connect/node_modules/debug": { "version": "2.6.9", "license": "MIT", "peer": true, @@ -27941,904 +29854,848 @@ "ms": "2.0.0" } }, - "node_modules/expand-brackets/node_modules/define-property": { - "version": "0.2.5", + "node_modules/connect/node_modules/ms": { + "version": "2.0.0", "license": "MIT", - "peer": true, + "peer": true + }, + "node_modules/console-control-strings": { + "version": "1.1.0", + "dev": true, + "license": "ISC" + }, + "node_modules/conventional-changelog-angular": { + "version": "5.0.13", + "dev": true, + "license": "ISC", "dependencies": { - "is-descriptor": "^0.1.0" + "compare-func": "^2.0.0", + "q": "^1.5.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=10" } }, - "node_modules/expand-brackets/node_modules/extend-shallow": { - "version": "2.0.1", + "node_modules/conventional-changelog-core": { + "version": "4.2.4", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "is-extendable": "^0.1.0" + "add-stream": "^1.0.0", + "conventional-changelog-writer": "^5.0.0", + "conventional-commits-parser": "^3.2.0", + "dateformat": "^3.0.0", + "get-pkg-repo": "^4.0.0", + "git-raw-commits": "^2.0.8", + "git-remote-origin-url": "^2.0.0", + "git-semver-tags": "^4.1.1", + "lodash": "^4.17.15", + "normalize-package-data": "^3.0.0", + "q": "^1.5.1", + "read-pkg": "^3.0.0", + "read-pkg-up": "^3.0.0", + "through2": "^4.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=10" } }, - "node_modules/expand-brackets/node_modules/is-accessor-descriptor": { - "version": "0.1.6", + "node_modules/conventional-changelog-preset-loader": { + "version": "2.3.4", + "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "kind-of": "^3.0.2" - }, "engines": { - "node": ">=0.10.0" + "node": ">=10" } }, - "node_modules/expand-brackets/node_modules/is-accessor-descriptor/node_modules/kind-of": { - "version": "3.2.2", + "node_modules/conventional-changelog-writer": { + "version": "5.0.1", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "is-buffer": "^1.1.5" + "conventional-commits-filter": "^2.0.7", + "dateformat": "^3.0.0", + "handlebars": "^4.7.7", + "json-stringify-safe": "^5.0.1", + "lodash": "^4.17.15", + "meow": "^8.0.0", + "semver": "^6.0.0", + "split": "^1.0.0", + "through2": "^4.0.0" + }, + "bin": { + "conventional-changelog-writer": "cli.js" }, "engines": { - "node": ">=0.10.0" + "node": ">=10" } }, - "node_modules/expand-brackets/node_modules/is-data-descriptor": { - "version": "0.1.4", + "node_modules/conventional-commits-filter": { + "version": "2.0.7", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "kind-of": "^3.0.2" + "lodash.ismatch": "^4.4.0", + "modify-values": "^1.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=10" } }, - "node_modules/expand-brackets/node_modules/is-data-descriptor/node_modules/kind-of": { - "version": "3.2.2", + "node_modules/conventional-commits-parser": { + "version": "3.2.4", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "is-buffer": "^1.1.5" + "is-text-path": "^1.0.1", + "JSONStream": "^1.0.4", + "lodash": "^4.17.15", + "meow": "^8.0.0", + "split2": "^3.0.0", + "through2": "^4.0.0" + }, + "bin": { + "conventional-commits-parser": "cli.js" }, "engines": { - "node": ">=0.10.0" + "node": ">=10" } }, - "node_modules/expand-brackets/node_modules/is-descriptor": { - "version": "0.1.6", + "node_modules/conventional-recommended-bump": { + "version": "6.1.0", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" + "concat-stream": "^2.0.0", + "conventional-changelog-preset-loader": "^2.3.4", + "conventional-commits-filter": "^2.0.7", + "conventional-commits-parser": "^3.2.0", + "git-raw-commits": "^2.0.8", + "git-semver-tags": "^4.1.1", + "meow": "^8.0.0", + "q": "^1.5.1" + }, + "bin": { + "conventional-recommended-bump": "cli.js" }, "engines": { - "node": ">=0.10.0" + "node": ">=10" } }, - "node_modules/expand-brackets/node_modules/is-extendable": { - "version": "0.1.1", + "node_modules/convert-source-map": { + "version": "1.9.0", + "license": "MIT", + "peer": true + }, + "node_modules/cookie": { + "version": "0.4.2", "license": "MIT", - "peer": true, "engines": { - "node": ">=0.10.0" + "node": ">= 0.6" } }, - "node_modules/expand-brackets/node_modules/kind-of": { - "version": "5.1.0", + "node_modules/copy-descriptor": { + "version": "0.1.1", "license": "MIT", "peer": true, "engines": { "node": ">=0.10.0" } }, - "node_modules/expand-brackets/node_modules/ms": { - "version": "2.0.0", - "license": "MIT", - "peer": true - }, - "node_modules/extend-shallow": { - "version": "3.0.2", + "node_modules/core-js-compat": { + "version": "3.27.0", "license": "MIT", "peer": true, "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" + "browserslist": "^4.21.4" }, - "engines": { - "node": ">=0.10.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" } }, - "node_modules/external-editor": { - "version": "3.1.0", + "node_modules/core-util-is": { + "version": "1.0.3", + "license": "MIT" + }, + "node_modules/cosmiconfig": { + "version": "7.1.0", + "dev": true, "license": "MIT", "dependencies": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" }, "engines": { - "node": ">=4" + "node": ">=10" } }, - "node_modules/extglob": { - "version": "2.0.4", - "license": "MIT", - "peer": true, - "dependencies": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" + "node_modules/crc-32": { + "version": "1.2.2", + "license": "Apache-2.0", + "bin": { + "crc32": "bin/crc32.njs" }, "engines": { - "node": ">=0.10.0" + "node": ">=0.8" } }, - "node_modules/extglob/node_modules/define-property": { - "version": "1.0.0", + "node_modules/crc32-stream": { + "version": "4.0.2", "license": "MIT", - "peer": true, "dependencies": { - "is-descriptor": "^1.0.0" + "crc-32": "^1.2.0", + "readable-stream": "^3.4.0" }, "engines": { - "node": ">=0.10.0" + "node": ">= 10" } }, - "node_modules/extglob/node_modules/extend-shallow": { - "version": "2.0.1", + "node_modules/cross-spawn": { + "version": "7.0.3", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "is-extendable": "^0.1.0" + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">= 8" } }, - "node_modules/extglob/node_modules/is-extendable": { - "version": "0.1.1", + "node_modules/crypto-js": { + "version": "4.1.1", + "license": "MIT" + }, + "node_modules/dargs": { + "version": "7.0.0", + "dev": true, "license": "MIT", - "peer": true, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/fast-base64-decode": { - "version": "1.0.0", - "license": "MIT" - }, - "node_modules/fast-glob": { - "version": "3.2.12", + "node_modules/dateformat": { + "version": "3.0.3", "dev": true, "license": "MIT", - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, "engines": { - "node": ">=8.6.0" + "node": "*" } }, - "node_modules/fast-xml-parser": { - "version": "4.0.11", + "node_modules/dayjs": { + "version": "1.11.7", + "license": "MIT", + "peer": true + }, + "node_modules/debug": { + "version": "4.3.4", "license": "MIT", "dependencies": { - "strnum": "^1.0.5" + "ms": "2.1.2" }, - "bin": { - "fxparser": "src/cli/cli.js" + "engines": { + "node": ">=6.0" }, - "funding": { - "type": "paypal", - "url": "https://paypal.me/naturalintelligence" + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "node_modules/fastq": { - "version": "1.14.0", + "node_modules/debuglog": { + "version": "1.0.1", "dev": true, - "license": "ISC", - "dependencies": { - "reusify": "^1.0.4" + "license": "MIT", + "engines": { + "node": "*" } }, - "node_modules/fb-watchman": { - "version": "2.0.2", - "license": "Apache-2.0", - "peer": true, - "dependencies": { - "bser": "2.1.1" + "node_modules/decamelize": { + "version": "1.2.0", + "license": "MIT", + "engines": { + "node": ">=0.10.0" } }, - "node_modules/fflate": { - "version": "0.7.3", - "license": "MIT" - }, - "node_modules/figures": { - "version": "3.2.0", + "node_modules/decamelize-keys": { + "version": "1.1.1", "dev": true, "license": "MIT", "dependencies": { - "escape-string-regexp": "^1.0.5" + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" }, "engines": { - "node": ">=8" + "node": ">=0.10.0" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/filelist": { - "version": "1.0.4", + "node_modules/decamelize-keys/node_modules/map-obj": { + "version": "1.0.1", "dev": true, - "license": "Apache-2.0", - "dependencies": { - "minimatch": "^5.0.1" + "license": "MIT", + "engines": { + "node": ">=0.10.0" } }, - "node_modules/filelist/node_modules/brace-expansion": { - "version": "2.0.1", - "dev": true, + "node_modules/decode-uri-component": { + "version": "0.2.2", "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" + "peer": true, + "engines": { + "node": ">=0.10" } }, - "node_modules/filelist/node_modules/minimatch": { - "version": "5.1.2", + "node_modules/dedent": { + "version": "0.7.0", "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } + "license": "MIT" }, - "node_modules/fill-range": { - "version": "7.0.1", + "node_modules/deep-eql": { + "version": "4.1.3", + "dev": true, "license": "MIT", "dependencies": { - "to-regex-range": "^5.0.1" + "type-detect": "^4.0.0" }, "engines": { - "node": ">=8" + "node": ">=6" } }, - "node_modules/finalhandler": { - "version": "1.1.2", + "node_modules/deepmerge": { + "version": "3.3.0", "license": "MIT", "peer": true, - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "statuses": "~1.5.0", - "unpipe": "~1.0.0" - }, "engines": { - "node": ">= 0.8" + "node": ">=0.10.0" } }, - "node_modules/finalhandler/node_modules/debug": { - "version": "2.6.9", + "node_modules/defaults": { + "version": "1.0.4", "license": "MIT", - "peer": true, "dependencies": { - "ms": "2.0.0" + "clone": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/finalhandler/node_modules/ms": { + "node_modules/define-lazy-prop": { "version": "2.0.0", + "dev": true, "license": "MIT", - "peer": true - }, - "node_modules/find-cache-dir": { - "version": "2.1.0", - "license": "MIT", - "peer": true, - "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" - }, "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/find-cache-dir/node_modules/find-up": { - "version": "3.0.0", + "node_modules/define-property": { + "version": "2.0.2", "license": "MIT", "peer": true, "dependencies": { - "locate-path": "^3.0.0" + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" }, "engines": { - "node": ">=6" + "node": ">=0.10.0" } }, - "node_modules/find-cache-dir/node_modules/locate-path": { - "version": "3.0.0", + "node_modules/delayed-stream": { + "version": "1.0.0", + "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - }, "engines": { - "node": ">=6" + "node": ">=0.4.0" } }, - "node_modules/find-cache-dir/node_modules/make-dir": { - "version": "2.1.0", + "node_modules/delegates": { + "version": "1.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/denodeify": { + "version": "1.2.1", "license": "MIT", - "peer": true, - "dependencies": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, - "engines": { - "node": ">=6" - } + "peer": true }, - "node_modules/find-cache-dir/node_modules/p-locate": { - "version": "3.0.0", + "node_modules/depd": { + "version": "1.1.2", + "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "p-limit": "^2.0.0" - }, "engines": { - "node": ">=6" + "node": ">= 0.6" } }, - "node_modules/find-cache-dir/node_modules/path-exists": { - "version": "3.0.0", + "node_modules/deprecation": { + "version": "2.3.1", + "dev": true, + "license": "ISC" + }, + "node_modules/destroy": { + "version": "1.2.0", "license": "MIT", "peer": true, "engines": { - "node": ">=4" + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" } }, - "node_modules/find-cache-dir/node_modules/pify": { - "version": "4.0.1", + "node_modules/detect-indent": { + "version": "6.1.0", + "dev": true, "license": "MIT", - "peer": true, "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/find-cache-dir/node_modules/pkg-dir": { - "version": "3.0.0", - "license": "MIT", - "peer": true, + "node_modules/dezalgo": { + "version": "1.0.4", + "dev": true, + "license": "ISC", "dependencies": { - "find-up": "^3.0.0" - }, - "engines": { - "node": ">=6" + "asap": "^2.0.0", + "wrappy": "1" } }, - "node_modules/find-cache-dir/node_modules/semver": { - "version": "5.7.1", - "license": "ISC", - "peer": true, - "bin": { - "semver": "bin/semver" + "node_modules/diff": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz", + "integrity": "sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==", + "dev": true, + "engines": { + "node": ">=0.3.1" } }, - "node_modules/find-up": { - "version": "4.1.0", + "node_modules/dir-glob": { + "version": "3.0.1", + "dev": true, "license": "MIT", "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "path-type": "^4.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/flat": { - "version": "5.0.2", + "node_modules/dot-prop": { + "version": "6.0.1", "dev": true, - "license": "BSD-3-Clause", - "bin": { - "flat": "cli.js" + "license": "MIT", + "dependencies": { + "is-obj": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/flow-parser": { - "version": "0.121.0", - "license": "MIT", - "peer": true, + "node_modules/dotenv": { + "version": "10.0.0", + "dev": true, + "license": "BSD-2-Clause", "engines": { - "node": ">=0.4.0" + "node": ">=10" } }, - "node_modules/follow-redirects": { - "version": "1.15.2", - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], + "node_modules/duplexer": { + "version": "0.1.2", + "dev": true, + "license": "MIT" + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" + }, + "node_modules/ee-first": { + "version": "1.1.1", "license": "MIT", - "engines": { - "node": ">=4.0" + "peer": true + }, + "node_modules/ejs": { + "version": "3.1.8", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "jake": "^10.8.5" }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } + "bin": { + "ejs": "bin/cli.js" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/for-in": { + "node_modules/electron-to-chromium": { + "version": "1.4.284", + "license": "ISC", + "peer": true + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "license": "MIT" + }, + "node_modules/encodeurl": { "version": "1.0.2", "license": "MIT", "peer": true, "engines": { - "node": ">=0.10.0" + "node": ">= 0.8" } }, - "node_modules/form-data": { - "version": "4.0.0", - "dev": true, + "node_modules/encoding": { + "version": "0.1.13", "license": "MIT", + "optional": true, "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" + "iconv-lite": "^0.6.2" } }, - "node_modules/fragment-cache": { - "version": "0.2.1", + "node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.3", "license": "MIT", - "peer": true, + "optional": true, "dependencies": { - "map-cache": "^0.2.2" + "safer-buffer": ">= 2.1.2 < 3.0.0" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/fresh": { - "version": "0.5.2", + "node_modules/end-of-stream": { + "version": "1.4.4", "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.6" + "dependencies": { + "once": "^1.4.0" } }, - "node_modules/fs-constants": { - "version": "1.0.0", - "license": "MIT" - }, - "node_modules/fs-extra": { - "version": "9.1.0", + "node_modules/enquirer": { + "version": "2.3.6", "dev": true, "license": "MIT", "dependencies": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" + "ansi-colors": "^4.1.1" }, "engines": { - "node": ">=10" + "node": ">=8.6" } }, - "node_modules/fs-minipass": { - "version": "2.1.0", - "dev": true, - "license": "ISC", - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "license": "ISC" - }, - "node_modules/fsevents": { - "version": "2.3.2", - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.1", - "license": "MIT" - }, - "node_modules/gauge": { - "version": "4.0.4", - "dev": true, - "license": "ISC", - "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "license": "ISC", - "engines": { - "node": "6.* || 8.* || >= 10.*" + "node_modules/entities": { + "version": "2.2.0", + "license": "BSD-2-Clause", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" } }, - "node_modules/get-func-name": { - "version": "2.0.0", + "node_modules/env-paths": { + "version": "2.2.1", "dev": true, "license": "MIT", "engines": { - "node": "*" + "node": ">=6" } }, - "node_modules/get-pkg-repo": { - "version": "4.2.1", - "dev": true, + "node_modules/envinfo": { + "version": "7.8.1", "license": "MIT", - "dependencies": { - "@hutson/parse-repository-url": "^3.0.0", - "hosted-git-info": "^4.0.0", - "through2": "^2.0.0", - "yargs": "^16.2.0" - }, "bin": { - "get-pkg-repo": "src/cli.js" + "envinfo": "dist/cli.js" }, "engines": { - "node": ">=6.9.0" + "node": ">=4" } }, - "node_modules/get-pkg-repo/node_modules/readable-stream": { - "version": "2.3.7", + "node_modules/err-code": { + "version": "2.0.3", "dev": true, + "license": "MIT" + }, + "node_modules/error-ex": { + "version": "1.3.2", "license": "MIT", "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "is-arrayish": "^0.2.1" } }, - "node_modules/get-pkg-repo/node_modules/safe-buffer": { - "version": "5.1.2", - "dev": true, - "license": "MIT" - }, - "node_modules/get-pkg-repo/node_modules/string_decoder": { - "version": "1.1.1", - "dev": true, + "node_modules/error-stack-parser": { + "version": "2.1.4", "license": "MIT", + "peer": true, "dependencies": { - "safe-buffer": "~5.1.0" + "stackframe": "^1.3.4" } }, - "node_modules/get-pkg-repo/node_modules/through2": { - "version": "2.0.5", - "dev": true, + "node_modules/errorhandler": { + "version": "1.5.1", "license": "MIT", + "peer": true, "dependencies": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" + "accepts": "~1.3.7", + "escape-html": "~1.0.3" + }, + "engines": { + "node": ">= 0.8" } }, - "node_modules/get-port": { - "version": "5.1.1", + "node_modules/esbuild": { + "version": "0.16.13", "dev": true, + "hasInstallScript": true, "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, "engines": { - "node": ">=8" + "node": ">=12" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "optionalDependencies": { + "@esbuild/android-arm": "0.16.13", + "@esbuild/android-arm64": "0.16.13", + "@esbuild/android-x64": "0.16.13", + "@esbuild/darwin-arm64": "0.16.13", + "@esbuild/darwin-x64": "0.16.13", + "@esbuild/freebsd-arm64": "0.16.13", + "@esbuild/freebsd-x64": "0.16.13", + "@esbuild/linux-arm": "0.16.13", + "@esbuild/linux-arm64": "0.16.13", + "@esbuild/linux-ia32": "0.16.13", + "@esbuild/linux-loong64": "0.16.13", + "@esbuild/linux-mips64el": "0.16.13", + "@esbuild/linux-ppc64": "0.16.13", + "@esbuild/linux-riscv64": "0.16.13", + "@esbuild/linux-s390x": "0.16.13", + "@esbuild/linux-x64": "0.16.13", + "@esbuild/netbsd-x64": "0.16.13", + "@esbuild/openbsd-x64": "0.16.13", + "@esbuild/sunos-x64": "0.16.13", + "@esbuild/win32-arm64": "0.16.13", + "@esbuild/win32-ia32": "0.16.13", + "@esbuild/win32-x64": "0.16.13" } }, - "node_modules/get-stream": { - "version": "6.0.1", - "dev": true, + "node_modules/escalade": { + "version": "3.1.1", "license": "MIT", "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=6" } }, - "node_modules/get-value": { - "version": "2.0.6", + "node_modules/escape-html": { + "version": "1.0.3", + "license": "MIT", + "peer": true + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", "license": "MIT", - "peer": true, "engines": { - "node": ">=0.10.0" + "node": ">=0.8.0" } }, - "node_modules/git-raw-commits": { - "version": "2.0.11", - "dev": true, - "license": "MIT", - "dependencies": { - "dargs": "^7.0.0", - "lodash": "^4.17.15", - "meow": "^8.0.0", - "split2": "^3.0.0", - "through2": "^4.0.0" - }, + "node_modules/esprima": { + "version": "4.0.1", + "license": "BSD-2-Clause", "bin": { - "git-raw-commits": "cli.js" + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" }, "engines": { - "node": ">=10" + "node": ">=4" } }, - "node_modules/git-remote-origin-url": { - "version": "2.0.0", + "node_modules/esquery": { + "version": "1.4.0", "dev": true, - "license": "MIT", + "license": "BSD-3-Clause", "dependencies": { - "gitconfiglocal": "^1.0.0", - "pify": "^2.3.0" + "estraverse": "^5.1.0" }, "engines": { - "node": ">=4" + "node": ">=0.10" } }, - "node_modules/git-remote-origin-url/node_modules/pify": { - "version": "2.3.0", + "node_modules/estraverse": { + "version": "5.3.0", "dev": true, - "license": "MIT", + "license": "BSD-2-Clause", "engines": { - "node": ">=0.10.0" + "node": ">=4.0" } }, - "node_modules/git-semver-tags": { - "version": "4.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "meow": "^8.0.0", - "semver": "^6.0.0" - }, - "bin": { - "git-semver-tags": "cli.js" - }, + "node_modules/esutils": { + "version": "2.0.3", + "license": "BSD-2-Clause", + "peer": true, "engines": { - "node": ">=10" + "node": ">=0.10.0" } }, - "node_modules/git-up": { - "version": "7.0.0", - "dev": true, + "node_modules/etag": { + "version": "1.8.1", "license": "MIT", - "dependencies": { - "is-ssh": "^1.4.0", - "parse-url": "^8.1.0" + "peer": true, + "engines": { + "node": ">= 0.6" } }, - "node_modules/git-url-parse": { - "version": "13.1.0", - "dev": true, + "node_modules/event-target-shim": { + "version": "5.0.1", "license": "MIT", - "dependencies": { - "git-up": "^7.0.0" + "peer": true, + "engines": { + "node": ">=6" } }, - "node_modules/gitconfiglocal": { - "version": "1.0.0", + "node_modules/eventemitter3": { + "version": "4.0.7", "dev": true, - "license": "BSD", - "dependencies": { - "ini": "^1.3.2" - } + "license": "MIT" }, - "node_modules/glob": { - "version": "8.0.3", - "dev": true, - "license": "ISC", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - }, + "node_modules/events": { + "version": "3.3.0", + "license": "MIT", "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">=0.8.x" } }, - "node_modules/glob-parent": { - "version": "5.1.2", - "dev": true, - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } + "node_modules/example-javascriptv3-cloudwatch": { + "resolved": "example_code/cloudwatch", + "link": true }, - "node_modules/glob/node_modules/brace-expansion": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } + "node_modules/example-javascriptv3-cloudwatchevents": { + "resolved": "example_code/cloudwatch-events", + "link": true }, - "node_modules/glob/node_modules/minimatch": { - "version": "5.1.2", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } + "node_modules/example-javascriptv3-cloudwatchlogs": { + "resolved": "example_code/cloudwatch-logs", + "link": true }, - "node_modules/globals": { - "version": "11.12.0", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=4" - } + "node_modules/example-javascriptv3-cognito": { + "resolved": "example_code/cognito", + "link": true }, - "node_modules/globby": { - "version": "11.1.0", + "node_modules/example-javascriptv3-ec2": { + "resolved": "example_code/ec2", + "link": true + }, + "node_modules/example-javascriptv3-lambda": { + "resolved": "example_code/lambda", + "link": true + }, + "node_modules/example-javascriptv3-s3": { + "resolved": "example_code/s3", + "link": true + }, + "node_modules/example-javascriptv3-sts": { + "resolved": "example_code/sts", + "link": true + }, + "node_modules/example-javascriptv3-support": { + "resolved": "example_code/support", + "link": true + }, + "node_modules/execa": { + "version": "5.1.1", "dev": true, "license": "MIT", "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.10", - "license": "ISC" - }, - "node_modules/graphql": { - "version": "15.8.0", - "license": "MIT", - "engines": { - "node": ">= 10.x" + "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/handlebars": { - "version": "4.7.7", - "dev": true, + "node_modules/expand-brackets": { + "version": "2.1.4", "license": "MIT", + "peer": true, "dependencies": { - "minimist": "^1.2.5", - "neo-async": "^2.6.0", - "source-map": "^0.6.1", - "wordwrap": "^1.0.0" - }, - "bin": { - "handlebars": "bin/handlebars" + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "engines": { - "node": ">=0.4.7" - }, - "optionalDependencies": { - "uglify-js": "^3.1.4" + "node": ">=0.10.0" } }, - "node_modules/hard-rejection": { - "version": "2.1.0", - "dev": true, + "node_modules/expand-brackets/node_modules/debug": { + "version": "2.6.9", "license": "MIT", - "engines": { - "node": ">=6" + "peer": true, + "dependencies": { + "ms": "2.0.0" } }, - "node_modules/has": { - "version": "1.0.3", + "node_modules/expand-brackets/node_modules/define-property": { + "version": "0.2.5", "license": "MIT", + "peer": true, "dependencies": { - "function-bind": "^1.1.1" + "is-descriptor": "^0.1.0" }, "engines": { - "node": ">= 0.4.0" + "node": ">=0.10.0" } }, - "node_modules/has-flag": { - "version": "3.0.0", + "node_modules/expand-brackets/node_modules/extend-shallow": { + "version": "2.0.1", "license": "MIT", + "peer": true, + "dependencies": { + "is-extendable": "^0.1.0" + }, "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/has-unicode": { - "version": "2.0.1", - "dev": true, - "license": "ISC" - }, - "node_modules/has-value": { - "version": "1.0.0", + "node_modules/expand-brackets/node_modules/is-accessor-descriptor": { + "version": "0.1.6", "license": "MIT", "peer": true, "dependencies": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" + "kind-of": "^3.0.2" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/has-values": { - "version": "1.0.0", + "node_modules/expand-brackets/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", "license": "MIT", "peer": true, "dependencies": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" + "is-buffer": "^1.1.5" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/has-values/node_modules/is-number": { - "version": "3.0.0", + "node_modules/expand-brackets/node_modules/is-data-descriptor": { + "version": "0.1.4", "license": "MIT", "peer": true, "dependencies": { @@ -28848,7 +30705,7 @@ "node": ">=0.10.0" } }, - "node_modules/has-values/node_modules/is-number/node_modules/kind-of": { + "node_modules/expand-brackets/node_modules/is-data-descriptor/node_modules/kind-of": { "version": "3.2.2", "license": "MIT", "peer": true, @@ -28859,206 +30716,188 @@ "node": ">=0.10.0" } }, - "node_modules/has-values/node_modules/kind-of": { - "version": "4.0.0", + "node_modules/expand-brackets/node_modules/is-descriptor": { + "version": "0.1.6", "license": "MIT", "peer": true, "dependencies": { - "is-buffer": "^1.1.5" + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/hermes-estree": { - "version": "0.8.0", + "node_modules/expand-brackets/node_modules/is-extendable": { + "version": "0.1.1", "license": "MIT", - "peer": true + "peer": true, + "engines": { + "node": ">=0.10.0" + } }, - "node_modules/hermes-parser": { - "version": "0.8.0", + "node_modules/expand-brackets/node_modules/kind-of": { + "version": "5.1.0", "license": "MIT", "peer": true, - "dependencies": { - "hermes-estree": "0.8.0" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/hermes-profile-transformer": { - "version": "0.0.6", + "node_modules/expand-brackets/node_modules/ms": { + "version": "2.0.0", + "license": "MIT", + "peer": true + }, + "node_modules/extend-shallow": { + "version": "3.0.2", "license": "MIT", "peer": true, "dependencies": { - "source-map": "^0.7.3" + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" }, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/hermes-profile-transformer/node_modules/source-map": { - "version": "0.7.4", - "license": "BSD-3-Clause", - "peer": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/hosted-git-info": { - "version": "4.1.0", - "dev": true, - "license": "ISC", + "node_modules/external-editor": { + "version": "3.1.0", + "license": "MIT", "dependencies": { - "lru-cache": "^6.0.0" + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" }, "engines": { - "node": ">=10" + "node": ">=4" } }, - "node_modules/hosted-git-info/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", + "node_modules/extglob": { + "version": "2.0.4", + "license": "MIT", + "peer": true, "dependencies": { - "yallist": "^4.0.0" + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "engines": { - "node": ">=10" + "node": ">=0.10.0" } }, - "node_modules/hosted-git-info/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/http-cache-semantics": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", - "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", - "dev": true - }, - "node_modules/http-errors": { - "version": "2.0.0", + "node_modules/extglob/node_modules/define-property": { + "version": "1.0.0", "license": "MIT", "peer": true, "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" + "is-descriptor": "^1.0.0" }, "engines": { - "node": ">= 0.8" + "node": ">=0.10.0" } }, - "node_modules/http-errors/node_modules/depd": { - "version": "2.0.0", + "node_modules/extglob/node_modules/extend-shallow": { + "version": "2.0.1", "license": "MIT", "peer": true, + "dependencies": { + "is-extendable": "^0.1.0" + }, "engines": { - "node": ">= 0.8" + "node": ">=0.10.0" } }, - "node_modules/http-errors/node_modules/statuses": { - "version": "2.0.1", + "node_modules/extglob/node_modules/is-extendable": { + "version": "0.1.1", "license": "MIT", "peer": true, "engines": { - "node": ">= 0.8" + "node": ">=0.10.0" } }, - "node_modules/http-proxy-agent": { - "version": "5.0.0", + "node_modules/fast-base64-decode": { + "version": "1.0.0", + "license": "MIT" + }, + "node_modules/fast-glob": { + "version": "3.2.12", "dev": true, "license": "MIT", "dependencies": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" }, "engines": { - "node": ">= 6" + "node": ">=8.6.0" } }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", - "dev": true, + "node_modules/fast-xml-parser": { + "version": "4.0.11", "license": "MIT", "dependencies": { - "agent-base": "6", - "debug": "4" + "strnum": "^1.0.5" }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/human-signals": { - "version": "2.1.0", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=10.17.0" + "bin": { + "fxparser": "src/cli/cli.js" + }, + "funding": { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" } }, - "node_modules/humanize-ms": { - "version": "1.2.1", + "node_modules/fastq": { + "version": "1.14.0", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "ms": "^2.0.0" + "reusify": "^1.0.4" } }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "license": "MIT", + "node_modules/fb-watchman": { + "version": "2.0.2", + "license": "Apache-2.0", + "peer": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" + "bser": "2.1.1" } }, - "node_modules/idb": { - "version": "5.0.6", - "license": "ISC" - }, - "node_modules/ieee754": { - "version": "1.2.1", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "BSD-3-Clause" + "node_modules/fflate": { + "version": "0.7.3", + "license": "MIT" }, - "node_modules/ignore": { - "version": "5.2.4", + "node_modules/figures": { + "version": "3.2.0", "dev": true, "license": "MIT", + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, "engines": { - "node": ">= 4" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ignore-walk": { - "version": "5.0.1", + "node_modules/filelist": { + "version": "1.0.4", "dev": true, - "license": "ISC", + "license": "Apache-2.0", "dependencies": { "minimatch": "^5.0.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/ignore-walk/node_modules/brace-expansion": { + "node_modules/filelist/node_modules/brace-expansion": { "version": "2.0.1", "dev": true, "license": "MIT", @@ -29066,7 +30905,7 @@ "balanced-match": "^1.0.0" } }, - "node_modules/ignore-walk/node_modules/minimatch": { + "node_modules/filelist/node_modules/minimatch": { "version": "5.1.2", "dev": true, "license": "ISC", @@ -29077,381 +30916,371 @@ "node": ">=10" } }, - "node_modules/image-size": { - "version": "0.6.3", + "node_modules/fill-range": { + "version": "7.0.1", + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.1.2", "license": "MIT", "peer": true, - "bin": { - "image-size": "bin/image-size.js" + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", + "unpipe": "~1.0.0" }, "engines": { - "node": ">=4.0" + "node": ">= 0.8" } }, - "node_modules/immer": { - "version": "9.0.6", + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/immer" + "peer": true, + "dependencies": { + "ms": "2.0.0" } }, - "node_modules/import-fresh": { - "version": "3.3.0", - "dev": true, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "license": "MIT", + "peer": true + }, + "node_modules/find-cache-dir": { + "version": "2.1.0", "license": "MIT", + "peer": true, "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" }, "engines": { "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/import-fresh/node_modules/resolve-from": { - "version": "4.0.0", - "dev": true, + "node_modules/find-cache-dir/node_modules/find-up": { + "version": "3.0.0", "license": "MIT", + "peer": true, + "dependencies": { + "locate-path": "^3.0.0" + }, "engines": { - "node": ">=4" + "node": ">=6" } }, - "node_modules/import-local": { - "version": "3.1.0", - "dev": true, + "node_modules/find-cache-dir/node_modules/locate-path": { + "version": "3.0.0", "license": "MIT", + "peer": true, "dependencies": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - }, - "bin": { - "import-local-fixture": "fixtures/cli.js" + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=6" } }, - "node_modules/imurmurhash": { - "version": "0.1.4", + "node_modules/find-cache-dir/node_modules/make-dir": { + "version": "2.1.0", "license": "MIT", + "peer": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, "engines": { - "node": ">=0.8.19" + "node": ">=6" } }, - "node_modules/indent-string": { - "version": "4.0.0", - "dev": true, + "node_modules/find-cache-dir/node_modules/p-locate": { + "version": "3.0.0", "license": "MIT", + "peer": true, + "dependencies": { + "p-limit": "^2.0.0" + }, "engines": { - "node": ">=8" + "node": ">=6" } }, - "node_modules/infer-owner": { - "version": "1.0.4", - "dev": true, - "license": "ISC" - }, - "node_modules/inflight": { - "version": "1.0.6", - "license": "ISC", - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" + "node_modules/find-cache-dir/node_modules/path-exists": { + "version": "3.0.0", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=4" } }, - "node_modules/inherits": { - "version": "2.0.4", - "license": "ISC" - }, - "node_modules/ini": { - "version": "1.3.8", - "dev": true, - "license": "ISC" - }, - "node_modules/init-package-json": { - "version": "3.0.2", - "dev": true, - "license": "ISC", - "dependencies": { - "npm-package-arg": "^9.0.1", - "promzard": "^0.3.0", - "read": "^1.0.7", - "read-package-json": "^5.0.0", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4", - "validate-npm-package-name": "^4.0.0" - }, + "node_modules/find-cache-dir/node_modules/pify": { + "version": "4.0.1", + "license": "MIT", + "peer": true, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=6" } }, - "node_modules/init-package-json/node_modules/hosted-git-info": { - "version": "5.2.1", - "dev": true, - "license": "ISC", + "node_modules/find-cache-dir/node_modules/pkg-dir": { + "version": "3.0.0", + "license": "MIT", + "peer": true, "dependencies": { - "lru-cache": "^7.5.1" + "find-up": "^3.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=6" } }, - "node_modules/init-package-json/node_modules/lru-cache": { - "version": "7.14.1", - "dev": true, + "node_modules/find-cache-dir/node_modules/semver": { + "version": "5.7.1", "license": "ISC", - "engines": { - "node": ">=12" + "peer": true, + "bin": { + "semver": "bin/semver" } }, - "node_modules/init-package-json/node_modules/npm-package-arg": { - "version": "9.1.2", - "dev": true, - "license": "ISC", + "node_modules/find-up": { + "version": "4.1.0", + "license": "MIT", "dependencies": { - "hosted-git-info": "^5.0.0", - "proc-log": "^2.0.1", - "semver": "^7.3.5", - "validate-npm-package-name": "^4.0.0" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=8" } }, - "node_modules/init-package-json/node_modules/semver": { - "version": "7.3.8", + "node_modules/flat": { + "version": "5.0.2", "dev": true, - "license": "ISC", - "dependencies": { - "lru-cache": "^6.0.0" - }, + "license": "BSD-3-Clause", "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" + "flat": "cli.js" } }, - "node_modules/init-package-json/node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, + "node_modules/flow-parser": { + "version": "0.121.0", + "license": "MIT", + "peer": true, "engines": { - "node": ">=10" + "node": ">=0.4.0" } }, - "node_modules/init-package-json/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/inquirer": { - "version": "8.2.5", - "dev": true, + "node_modules/follow-redirects": { + "version": "1.15.2", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], "license": "MIT", - "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.1", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.21", - "mute-stream": "0.0.8", - "ora": "^5.4.1", - "run-async": "^2.4.0", - "rxjs": "^7.5.5", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6", - "wrap-ansi": "^7.0.0" + "engines": { + "node": ">=4.0" }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/for-in": { + "version": "1.0.2", + "license": "MIT", + "peer": true, "engines": { - "node": ">=12.0.0" + "node": ">=0.10.0" } }, - "node_modules/inquirer/node_modules/ansi-styles": { - "version": "4.3.0", + "node_modules/form-data": { + "version": "4.0.0", "dev": true, "license": "MIT", "dependencies": { - "color-convert": "^2.0.1" + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": ">= 6" } }, - "node_modules/inquirer/node_modules/chalk": { - "version": "4.1.2", - "dev": true, + "node_modules/fragment-cache": { + "version": "0.2.1", "license": "MIT", + "peer": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "map-cache": "^0.2.2" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">=0.10.0" } }, - "node_modules/inquirer/node_modules/color-convert": { - "version": "2.0.1", - "dev": true, + "node_modules/fresh": { + "version": "0.5.2", "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, + "peer": true, "engines": { - "node": ">=7.0.0" + "node": ">= 0.6" } }, - "node_modules/inquirer/node_modules/color-name": { - "version": "1.1.4", - "dev": true, + "node_modules/fs-constants": { + "version": "1.0.0", "license": "MIT" }, - "node_modules/inquirer/node_modules/has-flag": { - "version": "4.0.0", + "node_modules/fs-extra": { + "version": "9.1.0", "dev": true, "license": "MIT", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/inquirer/node_modules/supports-color": { - "version": "7.2.0", + "node_modules/fs-minipass": { + "version": "2.1.0", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "has-flag": "^4.0.0" + "minipass": "^3.0.0" }, "engines": { - "node": ">=8" + "node": ">= 8" } }, - "node_modules/invariant": { - "version": "2.2.4", - "license": "MIT", - "peer": true, - "dependencies": { - "loose-envify": "^1.0.0" - } - }, - "node_modules/ip": { - "version": "2.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/is-accessor-descriptor": { + "node_modules/fs.realpath": { "version": "1.0.0", + "license": "ISC" + }, + "node_modules/fsevents": { + "version": "2.3.2", "license": "MIT", - "peer": true, - "dependencies": { - "kind-of": "^6.0.0" - }, + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">=0.10.0" + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "node_modules/is-arrayish": { - "version": "0.2.1", + "node_modules/function-bind": { + "version": "1.1.1", "license": "MIT" }, - "node_modules/is-binary-path": { - "version": "2.1.0", + "node_modules/gauge": { + "version": "4.0.4", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "binary-extensions": "^2.0.0" + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" }, "engines": { - "node": ">=8" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/is-buffer": { - "version": "1.1.6", + "node_modules/gensync": { + "version": "1.0.0-beta.2", "license": "MIT", - "peer": true + "peer": true, + "engines": { + "node": ">=6.9.0" + } }, - "node_modules/is-ci": { + "node_modules/get-caller-file": { + "version": "2.0.5", + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-func-name": { "version": "2.0.0", "dev": true, "license": "MIT", - "dependencies": { - "ci-info": "^2.0.0" - }, - "bin": { - "is-ci": "bin.js" + "engines": { + "node": "*" } }, - "node_modules/is-ci/node_modules/ci-info": { - "version": "2.0.0", + "node_modules/get-pkg-repo": { + "version": "4.2.1", "dev": true, - "license": "MIT" - }, - "node_modules/is-core-module": { - "version": "2.11.0", "license": "MIT", "dependencies": { - "has": "^1.0.3" + "@hutson/parse-repository-url": "^3.0.0", + "hosted-git-info": "^4.0.0", + "through2": "^2.0.0", + "yargs": "^16.2.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "bin": { + "get-pkg-repo": "src/cli.js" + }, + "engines": { + "node": ">=6.9.0" } }, - "node_modules/is-data-descriptor": { - "version": "1.0.0", + "node_modules/get-pkg-repo/node_modules/readable-stream": { + "version": "2.3.7", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" } }, - "node_modules/is-descriptor": { - "version": "1.0.2", + "node_modules/get-pkg-repo/node_modules/safe-buffer": { + "version": "5.1.2", + "dev": true, + "license": "MIT" + }, + "node_modules/get-pkg-repo/node_modules/string_decoder": { + "version": "1.1.1", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=0.10.0" + "safe-buffer": "~5.1.0" } }, - "node_modules/is-directory": { - "version": "0.3.1", + "node_modules/get-pkg-repo/node_modules/through2": { + "version": "2.0.5", + "dev": true, "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" + "dependencies": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" } }, - "node_modules/is-docker": { - "version": "2.2.1", + "node_modules/get-port": { + "version": "5.1.1", "dev": true, "license": "MIT", - "bin": { - "is-docker": "cli.js" - }, "engines": { "node": ">=8" }, @@ -29459,1173 +31288,1084 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-extendable": { - "version": "1.0.1", + "node_modules/get-stream": { + "version": "6.0.1", + "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "is-plain-object": "^2.0.4" - }, "engines": { - "node": ">=0.10.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-extendable/node_modules/is-plain-object": { - "version": "2.0.4", + "node_modules/get-value": { + "version": "2.0.6", "license": "MIT", "peer": true, - "dependencies": { - "isobject": "^3.0.1" - }, "engines": { "node": ">=0.10.0" } }, - "node_modules/is-extglob": { - "version": "2.1.1", + "node_modules/git-raw-commits": { + "version": "2.0.11", "dev": true, "license": "MIT", + "dependencies": { + "dargs": "^7.0.0", + "lodash": "^4.17.15", + "meow": "^8.0.0", + "split2": "^3.0.0", + "through2": "^4.0.0" + }, + "bin": { + "git-raw-commits": "cli.js" + }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "license": "MIT", - "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/is-glob": { - "version": "4.0.3", + "node_modules/git-remote-origin-url": { + "version": "2.0.0", "dev": true, "license": "MIT", "dependencies": { - "is-extglob": "^2.1.1" + "gitconfiglocal": "^1.0.0", + "pify": "^2.3.0" }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-interactive": { - "version": "1.0.0", - "license": "MIT", - "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/is-lambda": { - "version": "1.0.1", + "node_modules/git-remote-origin-url/node_modules/pify": { + "version": "2.3.0", "dev": true, - "license": "MIT" - }, - "node_modules/is-number": { - "version": "7.0.0", "license": "MIT", "engines": { - "node": ">=0.12.0" + "node": ">=0.10.0" } }, - "node_modules/is-obj": { - "version": "2.0.0", + "node_modules/git-semver-tags": { + "version": "4.1.1", "dev": true, "license": "MIT", + "dependencies": { + "meow": "^8.0.0", + "semver": "^6.0.0" + }, + "bin": { + "git-semver-tags": "cli.js" + }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/is-plain-obj": { - "version": "1.1.0", + "node_modules/git-up": { + "version": "7.0.0", "dev": true, "license": "MIT", - "engines": { - "node": ">=0.10.0" + "dependencies": { + "is-ssh": "^1.4.0", + "parse-url": "^8.1.0" } }, - "node_modules/is-plain-object": { - "version": "5.0.0", + "node_modules/git-url-parse": { + "version": "13.1.0", "dev": true, "license": "MIT", - "engines": { - "node": ">=0.10.0" + "dependencies": { + "git-up": "^7.0.0" } }, - "node_modules/is-ssh": { - "version": "1.4.0", + "node_modules/gitconfiglocal": { + "version": "1.0.0", "dev": true, - "license": "MIT", + "license": "BSD", "dependencies": { - "protocols": "^2.0.1" + "ini": "^1.3.2" } }, - "node_modules/is-stream": { - "version": "2.0.1", + "node_modules/glob": { + "version": "8.0.3", "dev": true, - "license": "MIT", + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, "engines": { - "node": ">=8" + "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/is-text-path": { - "version": "1.0.1", + "node_modules/glob-parent": { + "version": "5.1.2", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "text-extensions": "^1.0.0" + "is-glob": "^4.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">= 6" } }, - "node_modules/is-typedarray": { - "version": "1.0.0", + "node_modules/glob/node_modules/brace-expansion": { + "version": "2.0.1", "dev": true, - "license": "MIT" - }, - "node_modules/is-unicode-supported": { - "version": "0.1.0", "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/glob/node_modules/minimatch": { + "version": "5.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-windows": { - "version": "1.0.2", + "node_modules/globals": { + "version": "11.12.0", "license": "MIT", "peer": true, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/is-wsl": { - "version": "2.2.0", + "node_modules/globby": { + "version": "11.1.0", "dev": true, "license": "MIT", "dependencies": { - "is-docker": "^2.0.0" + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/isarray": { - "version": "1.0.0", - "license": "MIT" - }, - "node_modules/isexe": { - "version": "2.0.0", + "node_modules/graceful-fs": { + "version": "4.2.10", "license": "ISC" }, - "node_modules/isobject": { - "version": "3.0.1", + "node_modules/graphql": { + "version": "15.8.0", "license": "MIT", "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/isomorphic-unfetch": { - "version": "3.1.0", - "license": "MIT", - "dependencies": { - "node-fetch": "^2.6.1", - "unfetch": "^4.2.0" + "node": ">= 10.x" } }, - "node_modules/jake": { - "version": "10.8.5", + "node_modules/handlebars": { + "version": "4.7.7", "dev": true, - "license": "Apache-2.0", + "license": "MIT", "dependencies": { - "async": "^3.2.3", - "chalk": "^4.0.2", - "filelist": "^1.0.1", - "minimatch": "^3.0.4" + "minimist": "^1.2.5", + "neo-async": "^2.6.0", + "source-map": "^0.6.1", + "wordwrap": "^1.0.0" }, "bin": { - "jake": "bin/cli.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/jake/node_modules/ansi-styles": { - "version": "4.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" + "handlebars": "bin/handlebars" }, "engines": { - "node": ">=8" + "node": ">=0.4.7" }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "optionalDependencies": { + "uglify-js": "^3.1.4" } }, - "node_modules/jake/node_modules/chalk": { - "version": "4.1.2", + "node_modules/hard-rejection": { + "version": "2.1.0", "dev": true, "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">=6" } }, - "node_modules/jake/node_modules/color-convert": { - "version": "2.0.1", - "dev": true, + "node_modules/has": { + "version": "1.0.3", "license": "MIT", "dependencies": { - "color-name": "~1.1.4" + "function-bind": "^1.1.1" }, "engines": { - "node": ">=7.0.0" + "node": ">= 0.4.0" } }, - "node_modules/jake/node_modules/color-name": { - "version": "1.1.4", - "dev": true, - "license": "MIT" - }, - "node_modules/jake/node_modules/has-flag": { - "version": "4.0.0", - "dev": true, + "node_modules/has-flag": { + "version": "3.0.0", "license": "MIT", "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/jake/node_modules/supports-color": { - "version": "7.2.0", + "node_modules/has-unicode": { + "version": "2.0.1", "dev": true, + "license": "ISC" + }, + "node_modules/has-value": { + "version": "1.0.0", "license": "MIT", + "peer": true, "dependencies": { - "has-flag": "^4.0.0" + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" }, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/jest-get-type": { - "version": "26.3.0", + "node_modules/has-values": { + "version": "1.0.0", "license": "MIT", "peer": true, + "dependencies": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, "engines": { - "node": ">= 10.14.2" + "node": ">=0.10.0" } }, - "node_modules/jest-serializer": { - "version": "27.5.1", + "node_modules/has-values/node_modules/is-number": { + "version": "3.0.0", "license": "MIT", "peer": true, "dependencies": { - "@types/node": "*", - "graceful-fs": "^4.2.9" + "kind-of": "^3.0.2" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=0.10.0" } }, - "node_modules/jest-validate": { - "version": "26.6.2", + "node_modules/has-values/node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", "license": "MIT", "peer": true, "dependencies": { - "@jest/types": "^26.6.2", - "camelcase": "^6.0.0", - "chalk": "^4.0.0", - "jest-get-type": "^26.3.0", - "leven": "^3.1.0", - "pretty-format": "^26.6.2" + "is-buffer": "^1.1.5" }, "engines": { - "node": ">= 10.14.2" + "node": ">=0.10.0" } }, - "node_modules/jest-validate/node_modules/@jest/types": { - "version": "26.6.2", + "node_modules/has-values/node_modules/kind-of": { + "version": "4.0.0", "license": "MIT", "peer": true, "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^15.0.0", - "chalk": "^4.0.0" + "is-buffer": "^1.1.5" }, "engines": { - "node": ">= 10.14.2" + "node": ">=0.10.0" } }, - "node_modules/jest-validate/node_modules/@types/yargs": { - "version": "15.0.14", + "node_modules/hermes-estree": { + "version": "0.8.0", + "license": "MIT", + "peer": true + }, + "node_modules/hermes-parser": { + "version": "0.8.0", "license": "MIT", "peer": true, "dependencies": { - "@types/yargs-parser": "*" + "hermes-estree": "0.8.0" } }, - "node_modules/jest-validate/node_modules/ansi-styles": { - "version": "4.3.0", + "node_modules/hermes-profile-transformer": { + "version": "0.0.6", "license": "MIT", "peer": true, "dependencies": { - "color-convert": "^2.0.1" + "source-map": "^0.7.3" }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/jest-validate/node_modules/camelcase": { - "version": "6.3.0", - "license": "MIT", + "node_modules/hermes-profile-transformer/node_modules/source-map": { + "version": "0.7.4", + "license": "BSD-3-Clause", "peer": true, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 8" } }, - "node_modules/jest-validate/node_modules/chalk": { - "version": "4.1.2", - "license": "MIT", - "peer": true, + "node_modules/hosted-git-info": { + "version": "4.1.0", + "dev": true, + "license": "ISC", "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "lru-cache": "^6.0.0" }, "engines": { "node": ">=10" + } + }, + "node_modules/hosted-git-info/node_modules/lru-cache": { + "version": "6.0.0", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "engines": { + "node": ">=10" } }, - "node_modules/jest-validate/node_modules/color-convert": { - "version": "2.0.1", + "node_modules/hosted-git-info/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", + "dev": true + }, + "node_modules/http-errors": { + "version": "2.0.0", "license": "MIT", "peer": true, "dependencies": { - "color-name": "~1.1.4" + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" }, "engines": { - "node": ">=7.0.0" + "node": ">= 0.8" } }, - "node_modules/jest-validate/node_modules/color-name": { - "version": "1.1.4", - "license": "MIT", - "peer": true - }, - "node_modules/jest-validate/node_modules/has-flag": { - "version": "4.0.0", + "node_modules/http-errors/node_modules/depd": { + "version": "2.0.0", "license": "MIT", "peer": true, "engines": { - "node": ">=8" + "node": ">= 0.8" } }, - "node_modules/jest-validate/node_modules/supports-color": { - "version": "7.2.0", + "node_modules/http-errors/node_modules/statuses": { + "version": "2.0.1", "license": "MIT", "peer": true, - "dependencies": { - "has-flag": "^4.0.0" - }, "engines": { - "node": ">=8" + "node": ">= 0.8" } }, - "node_modules/joi": { - "version": "17.7.0", - "license": "BSD-3-Clause", - "peer": true, + "node_modules/http-proxy-agent": { + "version": "5.0.0", + "dev": true, + "license": "MIT", "dependencies": { - "@hapi/hoek": "^9.0.0", - "@hapi/topo": "^5.0.0", - "@sideway/address": "^4.1.3", - "@sideway/formula": "^3.0.0", - "@sideway/pinpoint": "^2.0.0" + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" } }, - "node_modules/js-cookie": { - "version": "2.2.1", - "license": "MIT" - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "license": "MIT" - }, - "node_modules/js-yaml": { - "version": "3.14.1", + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "dev": true, "license": "MIT", "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "agent-base": "6", + "debug": "4" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": ">= 6" } }, - "node_modules/jsc-android": { - "version": "250230.2.1", - "license": "BSD-2-Clause", - "peer": true + "node_modules/human-signals": { + "version": "2.1.0", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=10.17.0" + } }, - "node_modules/jscodeshift": { - "version": "0.13.1", + "node_modules/humanize-ms": { + "version": "1.2.1", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@babel/core": "^7.13.16", - "@babel/parser": "^7.13.16", - "@babel/plugin-proposal-class-properties": "^7.13.0", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.13.8", - "@babel/plugin-proposal-optional-chaining": "^7.13.12", - "@babel/plugin-transform-modules-commonjs": "^7.13.8", - "@babel/preset-flow": "^7.13.13", - "@babel/preset-typescript": "^7.13.0", - "@babel/register": "^7.13.16", - "babel-core": "^7.0.0-bridge.0", - "chalk": "^4.1.2", - "flow-parser": "0.*", - "graceful-fs": "^4.2.4", - "micromatch": "^3.1.10", - "neo-async": "^2.5.0", - "node-dir": "^0.1.17", - "recast": "^0.20.4", - "temp": "^0.8.4", - "write-file-atomic": "^2.3.0" - }, - "bin": { - "jscodeshift": "bin/jscodeshift.js" - }, - "peerDependencies": { - "@babel/preset-env": "^7.1.6" + "ms": "^2.0.0" } }, - "node_modules/jscodeshift/node_modules/ansi-styles": { - "version": "4.3.0", + "node_modules/iconv-lite": { + "version": "0.4.24", "license": "MIT", - "peer": true, "dependencies": { - "color-convert": "^2.0.1" + "safer-buffer": ">= 2.1.2 < 3" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": ">=0.10.0" } }, - "node_modules/jscodeshift/node_modules/braces": { - "version": "2.3.2", + "node_modules/idb": { + "version": "5.0.6", + "license": "ISC" + }, + "node_modules/ieee754": { + "version": "1.2.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "BSD-3-Clause" + }, + "node_modules/ignore": { + "version": "5.2.4", + "dev": true, "license": "MIT", - "peer": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/ignore-walk": { + "version": "5.0.1", + "dev": true, + "license": "ISC", "dependencies": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" + "minimatch": "^5.0.1" }, "engines": { - "node": ">=0.10.0" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/jscodeshift/node_modules/braces/node_modules/extend-shallow": { + "node_modules/ignore-walk/node_modules/brace-expansion": { "version": "2.0.1", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" + "balanced-match": "^1.0.0" } }, - "node_modules/jscodeshift/node_modules/chalk": { - "version": "4.1.2", - "license": "MIT", - "peer": true, + "node_modules/ignore-walk/node_modules/minimatch": { + "version": "5.1.2", + "dev": true, + "license": "ISC", "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "brace-expansion": "^2.0.1" }, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/jscodeshift/node_modules/color-convert": { - "version": "2.0.1", + "node_modules/image-size": { + "version": "0.6.3", "license": "MIT", "peer": true, - "dependencies": { - "color-name": "~1.1.4" + "bin": { + "image-size": "bin/image-size.js" }, "engines": { - "node": ">=7.0.0" + "node": ">=4.0" } }, - "node_modules/jscodeshift/node_modules/color-name": { - "version": "1.1.4", + "node_modules/immer": { + "version": "9.0.6", "license": "MIT", - "peer": true + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/immer" + } }, - "node_modules/jscodeshift/node_modules/fill-range": { - "version": "4.0.0", + "node_modules/import-fresh": { + "version": "3.3.0", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jscodeshift/node_modules/fill-range/node_modules/extend-shallow": { - "version": "2.0.1", + "node_modules/import-fresh/node_modules/resolve-from": { + "version": "4.0.0", + "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "is-extendable": "^0.1.0" - }, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/jscodeshift/node_modules/glob": { - "version": "7.2.3", - "license": "ISC", - "peer": true, + "node_modules/import-local": { + "version": "3.1.0", + "dev": true, + "license": "MIT", "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" }, "engines": { - "node": "*" + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jscodeshift/node_modules/has-flag": { - "version": "4.0.0", + "node_modules/imurmurhash": { + "version": "0.1.4", "license": "MIT", - "peer": true, "engines": { - "node": ">=8" + "node": ">=0.8.19" } }, - "node_modules/jscodeshift/node_modules/is-extendable": { - "version": "0.1.1", + "node_modules/indent-string": { + "version": "4.0.0", + "dev": true, "license": "MIT", - "peer": true, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/jscodeshift/node_modules/is-number": { - "version": "3.0.0", - "license": "MIT", - "peer": true, + "node_modules/infer-owner": { + "version": "1.0.4", + "dev": true, + "license": "ISC" + }, + "node_modules/inflight": { + "version": "1.0.6", + "license": "ISC", "dependencies": { - "kind-of": "^3.0.2" + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "license": "ISC" + }, + "node_modules/ini": { + "version": "1.3.8", + "dev": true, + "license": "ISC" + }, + "node_modules/init-package-json": { + "version": "3.0.2", + "dev": true, + "license": "ISC", + "dependencies": { + "npm-package-arg": "^9.0.1", + "promzard": "^0.3.0", + "read": "^1.0.7", + "read-package-json": "^5.0.0", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4", + "validate-npm-package-name": "^4.0.0" }, "engines": { - "node": ">=0.10.0" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/jscodeshift/node_modules/is-number/node_modules/kind-of": { - "version": "3.2.2", - "license": "MIT", - "peer": true, + "node_modules/init-package-json/node_modules/hosted-git-info": { + "version": "5.2.1", + "dev": true, + "license": "ISC", "dependencies": { - "is-buffer": "^1.1.5" + "lru-cache": "^7.5.1" }, "engines": { - "node": ">=0.10.0" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/jscodeshift/node_modules/micromatch": { - "version": "3.1.10", - "license": "MIT", - "peer": true, + "node_modules/init-package-json/node_modules/lru-cache": { + "version": "7.14.1", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/init-package-json/node_modules/npm-package-arg": { + "version": "9.1.2", + "dev": true, + "license": "ISC", "dependencies": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" + "hosted-git-info": "^5.0.0", + "proc-log": "^2.0.1", + "semver": "^7.3.5", + "validate-npm-package-name": "^4.0.0" }, "engines": { - "node": ">=0.10.0" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/jscodeshift/node_modules/rimraf": { - "version": "2.6.3", + "node_modules/init-package-json/node_modules/semver": { + "version": "7.3.8", + "dev": true, "license": "ISC", - "peer": true, "dependencies": { - "glob": "^7.1.3" + "lru-cache": "^6.0.0" }, "bin": { - "rimraf": "bin.js" + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "node_modules/jscodeshift/node_modules/supports-color": { - "version": "7.2.0", - "license": "MIT", - "peer": true, + "node_modules/init-package-json/node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "dev": true, + "license": "ISC", "dependencies": { - "has-flag": "^4.0.0" + "yallist": "^4.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/jscodeshift/node_modules/temp": { - "version": "0.8.4", + "node_modules/init-package-json/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/inquirer": { + "version": "8.2.5", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "rimraf": "~2.6.2" + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.1", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.21", + "mute-stream": "0.0.8", + "ora": "^5.4.1", + "run-async": "^2.4.0", + "rxjs": "^7.5.5", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6", + "wrap-ansi": "^7.0.0" }, "engines": { - "node": ">=6.0.0" + "node": ">=12.0.0" } }, - "node_modules/jscodeshift/node_modules/to-regex-range": { - "version": "2.1.1", + "node_modules/inquirer/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/jscodeshift/node_modules/write-file-atomic": { - "version": "2.4.3", - "license": "ISC", - "peer": true, + "node_modules/inquirer/node_modules/chalk": { + "version": "4.1.2", + "dev": true, + "license": "MIT", "dependencies": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/jsesc": { - "version": "2.5.2", + "node_modules/inquirer/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, "license": "MIT", - "peer": true, - "bin": { - "jsesc": "bin/jsesc" + "dependencies": { + "color-name": "~1.1.4" }, "engines": { - "node": ">=4" + "node": ">=7.0.0" } }, - "node_modules/json-parse-better-errors": { - "version": "1.0.2", - "license": "MIT" - }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", + "node_modules/inquirer/node_modules/color-name": { + "version": "1.1.4", "dev": true, "license": "MIT" }, - "node_modules/json-stringify-nice": { - "version": "1.1.4", + "node_modules/inquirer/node_modules/has-flag": { + "version": "4.0.0", "dev": true, - "license": "ISC", - "funding": { - "url": "https://github.com/sponsors/isaacs" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "node_modules/json-stringify-safe": { - "version": "5.0.1", + "node_modules/inquirer/node_modules/supports-color": { + "version": "7.2.0", "dev": true, - "license": "ISC" - }, - "node_modules/json5": { - "version": "2.2.3", "license": "MIT", - "peer": true, - "bin": { - "json5": "lib/cli.js" + "dependencies": { + "has-flag": "^4.0.0" }, "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/jsonc-parser": { - "version": "3.2.0", - "dev": true, - "license": "MIT" - }, - "node_modules/jsonfile": { - "version": "6.1.0", - "dev": true, + "node_modules/invariant": { + "version": "2.2.4", "license": "MIT", + "peer": true, "dependencies": { - "universalify": "^2.0.0" - }, - "optionalDependencies": { - "graceful-fs": "^4.1.6" + "loose-envify": "^1.0.0" } }, - "node_modules/jsonparse": { - "version": "1.3.1", + "node_modules/ip": { + "version": "2.0.0", "dev": true, - "engines": [ - "node >= 0.2.0" - ], "license": "MIT" }, - "node_modules/JSONStream": { - "version": "1.3.5", - "dev": true, - "license": "(MIT OR Apache-2.0)", + "node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "license": "MIT", + "peer": true, "dependencies": { - "jsonparse": "^1.2.0", - "through": ">=2.2.7 <3" - }, - "bin": { - "JSONStream": "bin.js" + "kind-of": "^6.0.0" }, "engines": { - "node": "*" + "node": ">=0.10.0" } }, - "node_modules/just-diff": { - "version": "5.2.0", - "dev": true, + "node_modules/is-arrayish": { + "version": "0.2.1", "license": "MIT" }, - "node_modules/just-diff-apply": { - "version": "5.5.0", + "node_modules/is-binary-path": { + "version": "2.1.0", "dev": true, - "license": "MIT" - }, - "node_modules/kind-of": { - "version": "6.0.3", "license": "MIT", + "dependencies": { + "binary-extensions": "^2.0.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/klaw": { - "version": "1.3.1", + "node_modules/is-buffer": { + "version": "1.1.6", "license": "MIT", - "peer": true, - "optionalDependencies": { - "graceful-fs": "^4.1.9" + "peer": true + }, + "node_modules/is-ci": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "ci-info": "^2.0.0" + }, + "bin": { + "is-ci": "bin.js" } }, - "node_modules/kleur": { - "version": "3.0.3", + "node_modules/is-ci/node_modules/ci-info": { + "version": "2.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/is-core-module": { + "version": "2.11.0", "license": "MIT", - "peer": true, - "engines": { - "node": ">=6" + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/lazystream": { - "version": "1.0.1", + "node_modules/is-data-descriptor": { + "version": "1.0.0", "license": "MIT", + "peer": true, "dependencies": { - "readable-stream": "^2.0.5" + "kind-of": "^6.0.0" }, "engines": { - "node": ">= 0.6.3" + "node": ">=0.10.0" } }, - "node_modules/lazystream/node_modules/readable-stream": { - "version": "2.3.7", + "node_modules/is-descriptor": { + "version": "1.0.2", "license": "MIT", + "peer": true, "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/lazystream/node_modules/safe-buffer": { - "version": "5.1.2", - "license": "MIT" - }, - "node_modules/lazystream/node_modules/string_decoder": { - "version": "1.1.1", + "node_modules/is-directory": { + "version": "0.3.1", "license": "MIT", - "dependencies": { - "safe-buffer": "~5.1.0" + "peer": true, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/lerna": { - "version": "6.3.0", + "node_modules/is-docker": { + "version": "2.2.1", "dev": true, "license": "MIT", - "dependencies": { - "@lerna/add": "6.3.0", - "@lerna/bootstrap": "6.3.0", - "@lerna/changed": "6.3.0", - "@lerna/clean": "6.3.0", - "@lerna/cli": "6.3.0", - "@lerna/command": "6.3.0", - "@lerna/create": "6.3.0", - "@lerna/diff": "6.3.0", - "@lerna/exec": "6.3.0", - "@lerna/import": "6.3.0", - "@lerna/info": "6.3.0", - "@lerna/init": "6.3.0", - "@lerna/link": "6.3.0", - "@lerna/list": "6.3.0", - "@lerna/publish": "6.3.0", - "@lerna/run": "6.3.0", - "@lerna/version": "6.3.0", - "@nrwl/devkit": ">=14.8.6 < 16", - "import-local": "^3.0.2", - "inquirer": "^8.2.4", - "npmlog": "^6.0.2", - "nx": ">=14.8.6 < 16", - "typescript": "^3 || ^4" - }, "bin": { - "lerna": "cli.js" + "is-docker": "cli.js" }, "engines": { - "node": "^14.15.0 || >=16.0.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/leven": { - "version": "3.1.0", + "node_modules/is-extendable": { + "version": "1.0.1", "license": "MIT", "peer": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/libnpmaccess": { - "version": "6.0.4", - "dev": true, - "license": "ISC", "dependencies": { - "aproba": "^2.0.0", - "minipass": "^3.1.1", - "npm-package-arg": "^9.0.1", - "npm-registry-fetch": "^13.0.0" + "is-plain-object": "^2.0.4" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=0.10.0" } }, - "node_modules/libnpmaccess/node_modules/hosted-git-info": { - "version": "5.2.1", - "dev": true, - "license": "ISC", + "node_modules/is-extendable/node_modules/is-plain-object": { + "version": "2.0.4", + "license": "MIT", + "peer": true, "dependencies": { - "lru-cache": "^7.5.1" + "isobject": "^3.0.1" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=0.10.0" } }, - "node_modules/libnpmaccess/node_modules/lru-cache": { - "version": "7.14.1", + "node_modules/is-extglob": { + "version": "2.1.1", "dev": true, - "license": "ISC", + "license": "MIT", "engines": { - "node": ">=12" + "node": ">=0.10.0" } }, - "node_modules/libnpmaccess/node_modules/npm-package-arg": { - "version": "9.1.2", - "dev": true, - "license": "ISC", - "dependencies": { - "hosted-git-info": "^5.0.0", - "proc-log": "^2.0.1", - "semver": "^7.3.5", - "validate-npm-package-name": "^4.0.0" - }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "license": "MIT", "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=8" } }, - "node_modules/libnpmaccess/node_modules/semver": { - "version": "7.3.8", + "node_modules/is-glob": { + "version": "4.0.3", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "is-extglob": "^2.1.1" }, "engines": { - "node": ">=10" + "node": ">=0.10.0" } }, - "node_modules/libnpmaccess/node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, + "node_modules/is-interactive": { + "version": "1.0.0", + "license": "MIT", "engines": { - "node": ">=10" + "node": ">=8" } }, - "node_modules/libnpmaccess/node_modules/yallist": { - "version": "4.0.0", + "node_modules/is-lambda": { + "version": "1.0.1", "dev": true, - "license": "ISC" + "license": "MIT" }, - "node_modules/libnpmpublish": { - "version": "6.0.5", - "dev": true, - "license": "ISC", - "dependencies": { - "normalize-package-data": "^4.0.0", - "npm-package-arg": "^9.0.1", - "npm-registry-fetch": "^13.0.0", - "semver": "^7.3.7", - "ssri": "^9.0.0" - }, + "node_modules/is-number": { + "version": "7.0.0", + "license": "MIT", "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=0.12.0" } }, - "node_modules/libnpmpublish/node_modules/hosted-git-info": { - "version": "5.2.1", + "node_modules/is-obj": { + "version": "2.0.0", "dev": true, - "license": "ISC", - "dependencies": { - "lru-cache": "^7.5.1" - }, + "license": "MIT", "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=8" } }, - "node_modules/libnpmpublish/node_modules/lru-cache": { - "version": "7.14.1", + "node_modules/is-plain-obj": { + "version": "1.1.0", "dev": true, - "license": "ISC", + "license": "MIT", "engines": { - "node": ">=12" + "node": ">=0.10.0" } }, - "node_modules/libnpmpublish/node_modules/normalize-package-data": { - "version": "4.0.1", + "node_modules/is-plain-object": { + "version": "5.0.0", "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "hosted-git-info": "^5.0.0", - "is-core-module": "^2.8.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" - }, + "license": "MIT", "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=0.10.0" } }, - "node_modules/libnpmpublish/node_modules/npm-package-arg": { - "version": "9.1.2", + "node_modules/is-ssh": { + "version": "1.4.0", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "hosted-git-info": "^5.0.0", - "proc-log": "^2.0.1", - "semver": "^7.3.5", - "validate-npm-package-name": "^4.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "protocols": "^2.0.1" } }, - "node_modules/libnpmpublish/node_modules/semver": { - "version": "7.3.8", + "node_modules/is-stream": { + "version": "2.0.1", "dev": true, - "license": "ISC", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, + "license": "MIT", "engines": { - "node": ">=10" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/libnpmpublish/node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", + "node_modules/is-text-path": { + "version": "1.0.1", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "yallist": "^4.0.0" + "text-extensions": "^1.0.0" }, "engines": { - "node": ">=10" + "node": ">=0.10.0" } }, - "node_modules/libnpmpublish/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/libs": { - "resolved": "example_code/libs", - "link": true - }, - "node_modules/lines-and-columns": { - "version": "1.2.4", + "node_modules/is-typedarray": { + "version": "1.0.0", "dev": true, "license": "MIT" }, - "node_modules/load-json-file": { - "version": "6.2.0", - "dev": true, + "node_modules/is-unicode-supported": { + "version": "0.1.0", "license": "MIT", - "dependencies": { - "graceful-fs": "^4.1.15", - "parse-json": "^5.0.0", - "strip-bom": "^4.0.0", - "type-fest": "^0.6.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/load-json-file/node_modules/type-fest": { - "version": "0.6.0", - "dev": true, - "license": "(MIT OR CC0-1.0)", "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/local-pkg": { - "version": "0.4.2", - "dev": true, + "node_modules/is-windows": { + "version": "1.0.2", "license": "MIT", + "peer": true, "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" + "node": ">=0.10.0" } }, - "node_modules/locate-path": { - "version": "5.0.0", + "node_modules/is-wsl": { + "version": "2.2.0", + "dev": true, "license": "MIT", "dependencies": { - "p-locate": "^4.1.0" + "is-docker": "^2.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/lodash": { - "version": "4.17.21", - "license": "MIT" - }, - "node_modules/lodash.debounce": { - "version": "4.0.8", - "license": "MIT", - "peer": true - }, - "node_modules/lodash.defaults": { - "version": "4.2.0", - "license": "MIT" - }, - "node_modules/lodash.difference": { - "version": "4.5.0", - "license": "MIT" - }, - "node_modules/lodash.flatten": { - "version": "4.4.0", - "license": "MIT" - }, - "node_modules/lodash.ismatch": { - "version": "4.4.0", - "dev": true, + "node_modules/isarray": { + "version": "1.0.0", "license": "MIT" }, - "node_modules/lodash.isplainobject": { - "version": "4.0.6", - "license": "MIT" + "node_modules/isexe": { + "version": "2.0.0", + "license": "ISC" }, - "node_modules/lodash.throttle": { - "version": "4.1.1", + "node_modules/isobject": { + "version": "3.0.1", "license": "MIT", - "peer": true - }, - "node_modules/lodash.union": { - "version": "4.6.0", - "license": "MIT" + "engines": { + "node": ">=0.10.0" + } }, - "node_modules/log-symbols": { - "version": "4.1.0", + "node_modules/isomorphic-unfetch": { + "version": "3.1.0", "license": "MIT", "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" + "node-fetch": "^2.6.1", + "unfetch": "^4.2.0" + } + }, + "node_modules/jake": { + "version": "10.8.5", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "async": "^3.2.3", + "chalk": "^4.0.2", + "filelist": "^1.0.1", + "minimatch": "^3.0.4" + }, + "bin": { + "jake": "bin/cli.js" }, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/log-symbols/node_modules/ansi-styles": { + "node_modules/jake/node_modules/ansi-styles": { "version": "4.3.0", + "dev": true, "license": "MIT", "dependencies": { "color-convert": "^2.0.1" @@ -30637,8 +32377,9 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/log-symbols/node_modules/chalk": { + "node_modules/jake/node_modules/chalk": { "version": "4.1.2", + "dev": true, "license": "MIT", "dependencies": { "ansi-styles": "^4.1.0", @@ -30651,8 +32392,9 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/log-symbols/node_modules/color-convert": { + "node_modules/jake/node_modules/color-convert": { "version": "2.0.1", + "dev": true, "license": "MIT", "dependencies": { "color-name": "~1.1.4" @@ -30661,19 +32403,22 @@ "node": ">=7.0.0" } }, - "node_modules/log-symbols/node_modules/color-name": { + "node_modules/jake/node_modules/color-name": { "version": "1.1.4", + "dev": true, "license": "MIT" }, - "node_modules/log-symbols/node_modules/has-flag": { + "node_modules/jake/node_modules/has-flag": { "version": "4.0.0", + "dev": true, "license": "MIT", "engines": { "node": ">=8" } }, - "node_modules/log-symbols/node_modules/supports-color": { + "node_modules/jake/node_modules/supports-color": { "version": "7.2.0", + "dev": true, "license": "MIT", "dependencies": { "has-flag": "^4.0.0" @@ -30682,20 +32427,66 @@ "node": ">=8" } }, - "node_modules/logkitty": { - "version": "0.7.1", + "node_modules/jest-get-type": { + "version": "26.3.0", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-serializer": { + "version": "27.5.1", "license": "MIT", "peer": true, "dependencies": { - "ansi-fragments": "^0.2.1", - "dayjs": "^1.8.15", - "yargs": "^15.1.0" + "@types/node": "*", + "graceful-fs": "^4.2.9" }, - "bin": { - "logkitty": "bin/logkitty.js" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/logkitty/node_modules/ansi-styles": { + "node_modules/jest-validate": { + "version": "26.6.2", + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^26.6.2", + "camelcase": "^6.0.0", + "chalk": "^4.0.0", + "jest-get-type": "^26.3.0", + "leven": "^3.1.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-validate/node_modules/@jest/types": { + "version": "26.6.2", + "license": "MIT", + "peer": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-validate/node_modules/@types/yargs": { + "version": "15.0.14", + "license": "MIT", + "peer": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-validate/node_modules/ansi-styles": { "version": "4.3.0", "license": "MIT", "peer": true, @@ -30709,17 +32500,33 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/logkitty/node_modules/cliui": { - "version": "6.0.0", - "license": "ISC", + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-validate/node_modules/chalk": { + "version": "4.1.2", + "license": "MIT", "peer": true, "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/logkitty/node_modules/color-convert": { + "node_modules/jest-validate/node_modules/color-convert": { "version": "2.0.1", "license": "MIT", "peer": true, @@ -30730,1008 +32537,805 @@ "node": ">=7.0.0" } }, - "node_modules/logkitty/node_modules/color-name": { + "node_modules/jest-validate/node_modules/color-name": { "version": "1.1.4", "license": "MIT", "peer": true }, - "node_modules/logkitty/node_modules/wrap-ansi": { - "version": "6.2.0", + "node_modules/jest-validate/node_modules/has-flag": { + "version": "4.0.0", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-validate/node_modules/supports-color": { + "version": "7.2.0", "license": "MIT", "peer": true, "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" + "has-flag": "^4.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/logkitty/node_modules/y18n": { - "version": "4.0.3", - "license": "ISC", + "node_modules/joi": { + "version": "17.7.0", + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "@hapi/hoek": "^9.0.0", + "@hapi/topo": "^5.0.0", + "@sideway/address": "^4.1.3", + "@sideway/formula": "^3.0.0", + "@sideway/pinpoint": "^2.0.0" + } + }, + "node_modules/js-cookie": { + "version": "2.2.1", + "license": "MIT" + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "3.14.1", + "license": "MIT", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsc-android": { + "version": "250230.2.1", + "license": "BSD-2-Clause", "peer": true }, - "node_modules/logkitty/node_modules/yargs": { - "version": "15.4.1", + "node_modules/jscodeshift": { + "version": "0.13.1", "license": "MIT", "peer": true, "dependencies": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" + "@babel/core": "^7.13.16", + "@babel/parser": "^7.13.16", + "@babel/plugin-proposal-class-properties": "^7.13.0", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.13.8", + "@babel/plugin-proposal-optional-chaining": "^7.13.12", + "@babel/plugin-transform-modules-commonjs": "^7.13.8", + "@babel/preset-flow": "^7.13.13", + "@babel/preset-typescript": "^7.13.0", + "@babel/register": "^7.13.16", + "babel-core": "^7.0.0-bridge.0", + "chalk": "^4.1.2", + "flow-parser": "0.*", + "graceful-fs": "^4.2.4", + "micromatch": "^3.1.10", + "neo-async": "^2.5.0", + "node-dir": "^0.1.17", + "recast": "^0.20.4", + "temp": "^0.8.4", + "write-file-atomic": "^2.3.0" + }, + "bin": { + "jscodeshift": "bin/jscodeshift.js" + }, + "peerDependencies": { + "@babel/preset-env": "^7.1.6" + } + }, + "node_modules/jscodeshift/node_modules/ansi-styles": { + "version": "4.3.0", + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" }, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/logkitty/node_modules/yargs-parser": { - "version": "18.1.3", - "license": "ISC", + "node_modules/jscodeshift/node_modules/braces": { + "version": "2.3.2", + "license": "MIT", "peer": true, "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" }, "engines": { - "node": ">=6" + "node": ">=0.10.0" } }, - "node_modules/loose-envify": { - "version": "1.4.0", + "node_modules/jscodeshift/node_modules/braces/node_modules/extend-shallow": { + "version": "2.0.1", "license": "MIT", "peer": true, "dependencies": { - "js-tokens": "^3.0.0 || ^4.0.0" + "is-extendable": "^0.1.0" }, - "bin": { - "loose-envify": "cli.js" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/loupe": { - "version": "2.3.6", - "dev": true, + "node_modules/jscodeshift/node_modules/chalk": { + "version": "4.1.2", "license": "MIT", + "peer": true, "dependencies": { - "get-func-name": "^2.0.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/lru-cache": { - "version": "5.1.1", - "license": "ISC", + "node_modules/jscodeshift/node_modules/color-convert": { + "version": "2.0.1", + "license": "MIT", "peer": true, "dependencies": { - "yallist": "^3.0.2" + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "node_modules/make-dir": { - "version": "3.1.0", - "dev": true, + "node_modules/jscodeshift/node_modules/color-name": { + "version": "1.1.4", + "license": "MIT", + "peer": true + }, + "node_modules/jscodeshift/node_modules/fill-range": { + "version": "4.0.0", "license": "MIT", + "peer": true, "dependencies": { - "semver": "^6.0.0" + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.10.0" } }, - "node_modules/make-fetch-happen": { - "version": "10.2.1", - "dev": true, - "license": "ISC", + "node_modules/jscodeshift/node_modules/fill-range/node_modules/extend-shallow": { + "version": "2.0.1", + "license": "MIT", + "peer": true, "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^16.1.0", - "http-cache-semantics": "^4.1.0", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-fetch": "^2.0.3", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.3", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", - "ssri": "^9.0.0" + "is-extendable": "^0.1.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=0.10.0" } }, - "node_modules/make-fetch-happen/node_modules/lru-cache": { - "version": "7.14.1", - "dev": true, + "node_modules/jscodeshift/node_modules/glob": { + "version": "7.2.3", "license": "ISC", + "peer": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, "engines": { - "node": ">=12" + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/makeerror": { - "version": "1.0.12", - "license": "BSD-3-Clause", + "node_modules/jscodeshift/node_modules/has-flag": { + "version": "4.0.0", + "license": "MIT", "peer": true, - "dependencies": { - "tmpl": "1.0.5" + "engines": { + "node": ">=8" } }, - "node_modules/map-cache": { - "version": "0.2.2", + "node_modules/jscodeshift/node_modules/is-extendable": { + "version": "0.1.1", "license": "MIT", "peer": true, "engines": { "node": ">=0.10.0" } }, - "node_modules/map-obj": { - "version": "4.3.0", + "node_modules/jscodeshift/node_modules/is-number": { + "version": "3.0.0", "license": "MIT", - "engines": { - "node": ">=8" + "peer": true, + "dependencies": { + "kind-of": "^3.0.2" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/map-visit": { - "version": "1.0.0", + "node_modules/jscodeshift/node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", "license": "MIT", "peer": true, "dependencies": { - "object-visit": "^1.0.0" + "is-buffer": "^1.1.5" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/memoize-one": { - "version": "5.2.1", - "license": "MIT", - "peer": true - }, - "node_modules/meow": { - "version": "8.1.2", - "dev": true, + "node_modules/jscodeshift/node_modules/micromatch": { + "version": "3.1.10", "license": "MIT", + "peer": true, "dependencies": { - "@types/minimist": "^1.2.0", - "camelcase-keys": "^6.2.2", - "decamelize-keys": "^1.1.0", - "hard-rejection": "^2.1.0", - "minimist-options": "4.1.0", - "normalize-package-data": "^3.0.0", - "read-pkg-up": "^7.0.1", - "redent": "^3.0.0", - "trim-newlines": "^3.0.0", - "type-fest": "^0.18.0", - "yargs-parser": "^20.2.3" + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.10.0" } }, - "node_modules/meow/node_modules/hosted-git-info": { - "version": "2.8.9", - "dev": true, - "license": "ISC" + "node_modules/jscodeshift/node_modules/rimraf": { + "version": "2.6.3", + "license": "ISC", + "peer": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } }, - "node_modules/meow/node_modules/read-pkg": { - "version": "5.2.0", - "dev": true, + "node_modules/jscodeshift/node_modules/supports-color": { + "version": "7.2.0", "license": "MIT", + "peer": true, "dependencies": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" + "has-flag": "^4.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/meow/node_modules/read-pkg-up": { - "version": "7.0.1", - "dev": true, + "node_modules/jscodeshift/node_modules/temp": { + "version": "0.8.4", "license": "MIT", + "peer": true, "dependencies": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" + "rimraf": "~2.6.2" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=6.0.0" } }, - "node_modules/meow/node_modules/read-pkg-up/node_modules/type-fest": { - "version": "0.8.1", - "dev": true, - "license": "(MIT OR CC0-1.0)", + "node_modules/jscodeshift/node_modules/to-regex-range": { + "version": "2.1.1", + "license": "MIT", + "peer": true, + "dependencies": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + }, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/meow/node_modules/read-pkg/node_modules/normalize-package-data": { - "version": "2.5.0", - "dev": true, - "license": "BSD-2-Clause", + "node_modules/jscodeshift/node_modules/write-file-atomic": { + "version": "2.4.3", + "license": "ISC", + "peer": true, "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" } }, - "node_modules/meow/node_modules/read-pkg/node_modules/type-fest": { - "version": "0.6.0", - "dev": true, - "license": "(MIT OR CC0-1.0)", + "node_modules/jsesc": { + "version": "2.5.2", + "license": "MIT", + "peer": true, + "bin": { + "jsesc": "bin/jsesc" + }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/meow/node_modules/semver": { - "version": "5.7.1", + "node_modules/json-parse-better-errors": { + "version": "1.0.2", + "license": "MIT" + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "dev": true, + "license": "MIT" + }, + "node_modules/json-stringify-nice": { + "version": "1.1.4", "dev": true, "license": "ISC", - "bin": { - "semver": "bin/semver" + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/meow/node_modules/type-fest": { - "version": "0.18.1", + "node_modules/json-stringify-safe": { + "version": "5.0.1", "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=10" + "license": "ISC" + }, + "node_modules/json5": { + "version": "2.2.3", + "license": "MIT", + "peer": true, + "bin": { + "json5": "lib/cli.js" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=6" } }, - "node_modules/merge-stream": { - "version": "2.0.0", + "node_modules/jsonc-parser": { + "version": "3.2.0", + "dev": true, "license": "MIT" }, - "node_modules/merge2": { - "version": "1.4.1", + "node_modules/jsonfile": { + "version": "6.1.0", "dev": true, "license": "MIT", - "engines": { - "node": ">= 8" - } + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } }, - "node_modules/metro": { - "version": "0.72.3", - "license": "MIT", - "peer": true, + "node_modules/jsonparse": { + "version": "1.3.1", + "dev": true, + "engines": [ + "node >= 0.2.0" + ], + "license": "MIT" + }, + "node_modules/JSONStream": { + "version": "1.3.5", + "dev": true, + "license": "(MIT OR Apache-2.0)", "dependencies": { - "@babel/code-frame": "^7.0.0", - "@babel/core": "^7.14.0", - "@babel/generator": "^7.14.0", - "@babel/parser": "^7.14.0", - "@babel/template": "^7.0.0", - "@babel/traverse": "^7.14.0", - "@babel/types": "^7.0.0", - "absolute-path": "^0.0.0", - "accepts": "^1.3.7", - "async": "^3.2.2", - "chalk": "^4.0.0", - "ci-info": "^2.0.0", - "connect": "^3.6.5", - "debug": "^2.2.0", - "denodeify": "^1.2.1", - "error-stack-parser": "^2.0.6", - "fs-extra": "^1.0.0", - "graceful-fs": "^4.2.4", - "hermes-parser": "0.8.0", - "image-size": "^0.6.0", - "invariant": "^2.2.4", - "jest-worker": "^27.2.0", - "lodash.throttle": "^4.1.1", - "metro-babel-transformer": "0.72.3", - "metro-cache": "0.72.3", - "metro-cache-key": "0.72.3", - "metro-config": "0.72.3", - "metro-core": "0.72.3", - "metro-file-map": "0.72.3", - "metro-hermes-compiler": "0.72.3", - "metro-inspector-proxy": "0.72.3", - "metro-minify-uglify": "0.72.3", - "metro-react-native-babel-preset": "0.72.3", - "metro-resolver": "0.72.3", - "metro-runtime": "0.72.3", - "metro-source-map": "0.72.3", - "metro-symbolicate": "0.72.3", - "metro-transform-plugins": "0.72.3", - "metro-transform-worker": "0.72.3", - "mime-types": "^2.1.27", - "node-fetch": "^2.2.0", - "nullthrows": "^1.1.1", - "rimraf": "^2.5.4", - "serialize-error": "^2.1.0", - "source-map": "^0.5.6", - "strip-ansi": "^6.0.0", - "temp": "0.8.3", - "throat": "^5.0.0", - "ws": "^7.5.1", - "yargs": "^15.3.1" + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" }, "bin": { - "metro": "src/cli.js" + "JSONStream": "bin.js" + }, + "engines": { + "node": "*" } }, - "node_modules/metro-babel-transformer": { - "version": "0.72.3", + "node_modules/just-diff": { + "version": "5.2.0", + "dev": true, + "license": "MIT" + }, + "node_modules/just-diff-apply": { + "version": "5.5.0", + "dev": true, + "license": "MIT" + }, + "node_modules/kind-of": { + "version": "6.0.3", "license": "MIT", - "peer": true, - "dependencies": { - "@babel/core": "^7.14.0", - "hermes-parser": "0.8.0", - "metro-source-map": "0.72.3", - "nullthrows": "^1.1.1" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/metro-cache": { - "version": "0.72.3", + "node_modules/klaw": { + "version": "1.3.1", "license": "MIT", "peer": true, - "dependencies": { - "metro-core": "0.72.3", - "rimraf": "^2.5.4" + "optionalDependencies": { + "graceful-fs": "^4.1.9" } }, - "node_modules/metro-cache-key": { - "version": "0.72.3", + "node_modules/kleur": { + "version": "3.0.3", "license": "MIT", - "peer": true - }, - "node_modules/metro-cache/node_modules/glob": { - "version": "7.2.3", - "license": "ISC", "peer": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">=6" } }, - "node_modules/metro-cache/node_modules/rimraf": { - "version": "2.7.1", - "license": "ISC", - "peer": true, + "node_modules/lazystream": { + "version": "1.0.1", + "license": "MIT", "dependencies": { - "glob": "^7.1.3" + "readable-stream": "^2.0.5" }, - "bin": { - "rimraf": "bin.js" + "engines": { + "node": ">= 0.6.3" } }, - "node_modules/metro-config": { - "version": "0.72.3", + "node_modules/lazystream/node_modules/readable-stream": { + "version": "2.3.7", "license": "MIT", - "peer": true, "dependencies": { - "cosmiconfig": "^5.0.5", - "jest-validate": "^26.5.2", - "metro": "0.72.3", - "metro-cache": "0.72.3", - "metro-core": "0.72.3", - "metro-runtime": "0.72.3" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" } }, - "node_modules/metro-config/node_modules/cosmiconfig": { - "version": "5.2.1", - "license": "MIT", - "peer": true, - "dependencies": { - "import-fresh": "^2.0.0", - "is-directory": "^0.3.1", - "js-yaml": "^3.13.1", - "parse-json": "^4.0.0" - }, - "engines": { - "node": ">=4" - } + "node_modules/lazystream/node_modules/safe-buffer": { + "version": "5.1.2", + "license": "MIT" }, - "node_modules/metro-config/node_modules/import-fresh": { - "version": "2.0.0", + "node_modules/lazystream/node_modules/string_decoder": { + "version": "1.1.1", "license": "MIT", - "peer": true, "dependencies": { - "caller-path": "^2.0.0", - "resolve-from": "^3.0.0" - }, - "engines": { - "node": ">=4" + "safe-buffer": "~5.1.0" } }, - "node_modules/metro-config/node_modules/parse-json": { - "version": "4.0.0", + "node_modules/lerna": { + "version": "6.3.0", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" + "@lerna/add": "6.3.0", + "@lerna/bootstrap": "6.3.0", + "@lerna/changed": "6.3.0", + "@lerna/clean": "6.3.0", + "@lerna/cli": "6.3.0", + "@lerna/command": "6.3.0", + "@lerna/create": "6.3.0", + "@lerna/diff": "6.3.0", + "@lerna/exec": "6.3.0", + "@lerna/import": "6.3.0", + "@lerna/info": "6.3.0", + "@lerna/init": "6.3.0", + "@lerna/link": "6.3.0", + "@lerna/list": "6.3.0", + "@lerna/publish": "6.3.0", + "@lerna/run": "6.3.0", + "@lerna/version": "6.3.0", + "@nrwl/devkit": ">=14.8.6 < 16", + "import-local": "^3.0.2", + "inquirer": "^8.2.4", + "npmlog": "^6.0.2", + "nx": ">=14.8.6 < 16", + "typescript": "^3 || ^4" + }, + "bin": { + "lerna": "cli.js" }, "engines": { - "node": ">=4" + "node": "^14.15.0 || >=16.0.0" } }, - "node_modules/metro-config/node_modules/resolve-from": { - "version": "3.0.0", + "node_modules/leven": { + "version": "3.1.0", "license": "MIT", "peer": true, "engines": { - "node": ">=4" - } - }, - "node_modules/metro-core": { - "version": "0.72.3", - "license": "MIT", - "peer": true, - "dependencies": { - "lodash.throttle": "^4.1.1", - "metro-resolver": "0.72.3" + "node": ">=6" } }, - "node_modules/metro-file-map": { - "version": "0.72.3", - "license": "MIT", - "peer": true, + "node_modules/libnpmaccess": { + "version": "6.0.4", + "dev": true, + "license": "ISC", "dependencies": { - "abort-controller": "^3.0.0", - "anymatch": "^3.0.3", - "debug": "^2.2.0", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.4", - "invariant": "^2.2.4", - "jest-regex-util": "^27.0.6", - "jest-serializer": "^27.0.6", - "jest-util": "^27.2.0", - "jest-worker": "^27.2.0", - "micromatch": "^4.0.4", - "walker": "^1.0.7" + "aproba": "^2.0.0", + "minipass": "^3.1.1", + "npm-package-arg": "^9.0.1", + "npm-registry-fetch": "^13.0.0" }, - "optionalDependencies": { - "fsevents": "^2.1.2" + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/metro-file-map/node_modules/@jest/types": { - "version": "27.5.1", - "license": "MIT", - "peer": true, + "node_modules/libnpmaccess/node_modules/hosted-git-info": { + "version": "5.2.1", + "dev": true, + "license": "ISC", "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "lru-cache": "^7.5.1" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/metro-file-map/node_modules/@types/yargs": { - "version": "16.0.4", - "license": "MIT", - "peer": true, - "dependencies": { - "@types/yargs-parser": "*" + "node_modules/libnpmaccess/node_modules/lru-cache": { + "version": "7.14.1", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=12" } }, - "node_modules/metro-file-map/node_modules/ansi-styles": { - "version": "4.3.0", - "license": "MIT", - "peer": true, + "node_modules/libnpmaccess/node_modules/npm-package-arg": { + "version": "9.1.2", + "dev": true, + "license": "ISC", "dependencies": { - "color-convert": "^2.0.1" + "hosted-git-info": "^5.0.0", + "proc-log": "^2.0.1", + "semver": "^7.3.5", + "validate-npm-package-name": "^4.0.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/metro-file-map/node_modules/chalk": { - "version": "4.1.2", - "license": "MIT", - "peer": true, + "node_modules/libnpmaccess/node_modules/semver": { + "version": "7.3.8", + "dev": true, + "license": "ISC", "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" }, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/metro-file-map/node_modules/color-convert": { - "version": "2.0.1", - "license": "MIT", - "peer": true, + "node_modules/libnpmaccess/node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "dev": true, + "license": "ISC", "dependencies": { - "color-name": "~1.1.4" + "yallist": "^4.0.0" }, "engines": { - "node": ">=7.0.0" + "node": ">=10" } }, - "node_modules/metro-file-map/node_modules/color-name": { - "version": "1.1.4", - "license": "MIT", - "peer": true + "node_modules/libnpmaccess/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" }, - "node_modules/metro-file-map/node_modules/debug": { - "version": "2.6.9", - "license": "MIT", - "peer": true, + "node_modules/libnpmpublish": { + "version": "6.0.5", + "dev": true, + "license": "ISC", "dependencies": { - "ms": "2.0.0" + "normalize-package-data": "^4.0.0", + "npm-package-arg": "^9.0.1", + "npm-registry-fetch": "^13.0.0", + "semver": "^7.3.7", + "ssri": "^9.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/metro-file-map/node_modules/has-flag": { - "version": "4.0.0", - "license": "MIT", - "peer": true, + "node_modules/libnpmpublish/node_modules/hosted-git-info": { + "version": "5.2.1", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^7.5.1" + }, "engines": { - "node": ">=8" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/metro-file-map/node_modules/jest-regex-util": { - "version": "27.5.1", - "license": "MIT", - "peer": true, + "node_modules/libnpmpublish/node_modules/lru-cache": { + "version": "7.14.1", + "dev": true, + "license": "ISC", "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=12" } }, - "node_modules/metro-file-map/node_modules/jest-util": { - "version": "27.5.1", - "license": "MIT", - "peer": true, + "node_modules/libnpmpublish/node_modules/normalize-package-data": { + "version": "4.0.1", + "dev": true, + "license": "BSD-2-Clause", "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "hosted-git-info": "^5.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/metro-file-map/node_modules/jest-worker": { - "version": "27.5.1", - "license": "MIT", - "peer": true, + "node_modules/libnpmpublish/node_modules/npm-package-arg": { + "version": "9.1.2", + "dev": true, + "license": "ISC", "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" + "hosted-git-info": "^5.0.0", + "proc-log": "^2.0.1", + "semver": "^7.3.5", + "validate-npm-package-name": "^4.0.0" }, "engines": { - "node": ">= 10.13.0" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/metro-file-map/node_modules/jest-worker/node_modules/supports-color": { - "version": "8.1.1", - "license": "MIT", - "peer": true, + "node_modules/libnpmpublish/node_modules/semver": { + "version": "7.3.8", + "dev": true, + "license": "ISC", "dependencies": { - "has-flag": "^4.0.0" + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" }, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/metro-file-map/node_modules/ms": { - "version": "2.0.0", - "license": "MIT", - "peer": true - }, - "node_modules/metro-file-map/node_modules/supports-color": { - "version": "7.2.0", - "license": "MIT", - "peer": true, + "node_modules/libnpmpublish/node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "dev": true, + "license": "ISC", "dependencies": { - "has-flag": "^4.0.0" + "yallist": "^4.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/metro-hermes-compiler": { - "version": "0.72.3", - "license": "MIT", - "peer": true + "node_modules/libnpmpublish/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" }, - "node_modules/metro-inspector-proxy": { - "version": "0.72.3", + "node_modules/libs": { + "resolved": "example_code/libs", + "link": true + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "dev": true, + "license": "MIT" + }, + "node_modules/load-json-file": { + "version": "6.2.0", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "connect": "^3.6.5", - "debug": "^2.2.0", - "ws": "^7.5.1", - "yargs": "^15.3.1" + "graceful-fs": "^4.1.15", + "parse-json": "^5.0.0", + "strip-bom": "^4.0.0", + "type-fest": "^0.6.0" }, - "bin": { - "metro-inspector-proxy": "src/cli.js" + "engines": { + "node": ">=8" } }, - "node_modules/metro-inspector-proxy/node_modules/ansi-styles": { - "version": "4.3.0", - "license": "MIT", - "peer": true, - "dependencies": { - "color-convert": "^2.0.1" - }, + "node_modules/load-json-file/node_modules/type-fest": { + "version": "0.6.0", + "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/metro-inspector-proxy/node_modules/cliui": { - "version": "6.0.0", - "license": "ISC", - "peer": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "node_modules/metro-inspector-proxy/node_modules/color-convert": { - "version": "2.0.1", - "license": "MIT", - "peer": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/metro-inspector-proxy/node_modules/color-name": { - "version": "1.1.4", - "license": "MIT", - "peer": true - }, - "node_modules/metro-inspector-proxy/node_modules/debug": { - "version": "2.6.9", - "license": "MIT", - "peer": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/metro-inspector-proxy/node_modules/ms": { - "version": "2.0.0", - "license": "MIT", - "peer": true - }, - "node_modules/metro-inspector-proxy/node_modules/wrap-ansi": { - "version": "6.2.0", - "license": "MIT", - "peer": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/metro-inspector-proxy/node_modules/ws": { - "version": "7.5.9", + "node_modules/local-pkg": { + "version": "0.4.2", + "dev": true, "license": "MIT", - "peer": true, "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" + "node": ">=14" }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/metro-inspector-proxy/node_modules/y18n": { - "version": "4.0.3", - "license": "ISC", - "peer": true - }, - "node_modules/metro-inspector-proxy/node_modules/yargs": { - "version": "15.4.1", + "node_modules/locate-path": { + "version": "5.0.0", "license": "MIT", - "peer": true, "dependencies": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" + "p-locate": "^4.1.0" }, "engines": { "node": ">=8" } }, - "node_modules/metro-inspector-proxy/node_modules/yargs-parser": { - "version": "18.1.3", - "license": "ISC", - "peer": true, - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/metro-minify-uglify": { - "version": "0.72.3", - "license": "MIT", - "peer": true, - "dependencies": { - "uglify-es": "^3.1.9" - } - }, - "node_modules/metro-react-native-babel-preset": { - "version": "0.72.3", - "license": "MIT", - "peer": true, - "dependencies": { - "@babel/core": "^7.14.0", - "@babel/plugin-proposal-async-generator-functions": "^7.0.0", - "@babel/plugin-proposal-class-properties": "^7.0.0", - "@babel/plugin-proposal-export-default-from": "^7.0.0", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.0.0", - "@babel/plugin-proposal-object-rest-spread": "^7.0.0", - "@babel/plugin-proposal-optional-catch-binding": "^7.0.0", - "@babel/plugin-proposal-optional-chaining": "^7.0.0", - "@babel/plugin-syntax-dynamic-import": "^7.0.0", - "@babel/plugin-syntax-export-default-from": "^7.0.0", - "@babel/plugin-syntax-flow": "^7.2.0", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.0.0", - "@babel/plugin-syntax-optional-chaining": "^7.0.0", - "@babel/plugin-transform-arrow-functions": "^7.0.0", - "@babel/plugin-transform-async-to-generator": "^7.0.0", - "@babel/plugin-transform-block-scoping": "^7.0.0", - "@babel/plugin-transform-classes": "^7.0.0", - "@babel/plugin-transform-computed-properties": "^7.0.0", - "@babel/plugin-transform-destructuring": "^7.0.0", - "@babel/plugin-transform-exponentiation-operator": "^7.0.0", - "@babel/plugin-transform-flow-strip-types": "^7.0.0", - "@babel/plugin-transform-function-name": "^7.0.0", - "@babel/plugin-transform-literals": "^7.0.0", - "@babel/plugin-transform-modules-commonjs": "^7.0.0", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.0.0", - "@babel/plugin-transform-parameters": "^7.0.0", - "@babel/plugin-transform-react-display-name": "^7.0.0", - "@babel/plugin-transform-react-jsx": "^7.0.0", - "@babel/plugin-transform-react-jsx-self": "^7.0.0", - "@babel/plugin-transform-react-jsx-source": "^7.0.0", - "@babel/plugin-transform-runtime": "^7.0.0", - "@babel/plugin-transform-shorthand-properties": "^7.0.0", - "@babel/plugin-transform-spread": "^7.0.0", - "@babel/plugin-transform-sticky-regex": "^7.0.0", - "@babel/plugin-transform-template-literals": "^7.0.0", - "@babel/plugin-transform-typescript": "^7.5.0", - "@babel/plugin-transform-unicode-regex": "^7.0.0", - "@babel/template": "^7.0.0", - "react-refresh": "^0.4.0" - }, - "peerDependencies": { - "@babel/core": "*" - } - }, - "node_modules/metro-react-native-babel-transformer": { - "version": "0.72.3", - "license": "MIT", - "peer": true, - "dependencies": { - "@babel/core": "^7.14.0", - "babel-preset-fbjs": "^3.4.0", - "hermes-parser": "0.8.0", - "metro-babel-transformer": "0.72.3", - "metro-react-native-babel-preset": "0.72.3", - "metro-source-map": "0.72.3", - "nullthrows": "^1.1.1" - }, - "peerDependencies": { - "@babel/core": "*" - } + "node_modules/lodash": { + "version": "4.17.21", + "license": "MIT" }, - "node_modules/metro-resolver": { - "version": "0.72.3", + "node_modules/lodash.debounce": { + "version": "4.0.8", "license": "MIT", - "peer": true, - "dependencies": { - "absolute-path": "^0.0.0" - } + "peer": true }, - "node_modules/metro-runtime": { - "version": "0.72.3", - "license": "MIT", - "peer": true, - "dependencies": { - "@babel/runtime": "^7.0.0", - "react-refresh": "^0.4.0" - } + "node_modules/lodash.defaults": { + "version": "4.2.0", + "license": "MIT" }, - "node_modules/metro-source-map": { - "version": "0.72.3", - "license": "MIT", - "peer": true, - "dependencies": { - "@babel/traverse": "^7.14.0", - "@babel/types": "^7.0.0", - "invariant": "^2.2.4", - "metro-symbolicate": "0.72.3", - "nullthrows": "^1.1.1", - "ob1": "0.72.3", - "source-map": "^0.5.6", - "vlq": "^1.0.0" - } + "node_modules/lodash.difference": { + "version": "4.5.0", + "license": "MIT" }, - "node_modules/metro-source-map/node_modules/source-map": { - "version": "0.5.7", - "license": "BSD-3-Clause", - "peer": true, - "engines": { - "node": ">=0.10.0" - } + "node_modules/lodash.flatten": { + "version": "4.4.0", + "license": "MIT" }, - "node_modules/metro-symbolicate": { - "version": "0.72.3", - "license": "MIT", - "peer": true, - "dependencies": { - "invariant": "^2.2.4", - "metro-source-map": "0.72.3", - "nullthrows": "^1.1.1", - "source-map": "^0.5.6", - "through2": "^2.0.1", - "vlq": "^1.0.0" - }, - "bin": { - "metro-symbolicate": "src/index.js" - }, - "engines": { - "node": ">=8.3" - } + "node_modules/lodash.ismatch": { + "version": "4.4.0", + "dev": true, + "license": "MIT" }, - "node_modules/metro-symbolicate/node_modules/readable-stream": { - "version": "2.3.7", - "license": "MIT", - "peer": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } + "node_modules/lodash.isplainobject": { + "version": "4.0.6", + "license": "MIT" }, - "node_modules/metro-symbolicate/node_modules/safe-buffer": { - "version": "5.1.2", + "node_modules/lodash.throttle": { + "version": "4.1.1", "license": "MIT", "peer": true }, - "node_modules/metro-symbolicate/node_modules/source-map": { - "version": "0.5.7", - "license": "BSD-3-Clause", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/metro-symbolicate/node_modules/string_decoder": { - "version": "1.1.1", - "license": "MIT", - "peer": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/metro-symbolicate/node_modules/through2": { - "version": "2.0.5", - "license": "MIT", - "peer": true, - "dependencies": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } - }, - "node_modules/metro-transform-plugins": { - "version": "0.72.3", - "license": "MIT", - "peer": true, - "dependencies": { - "@babel/core": "^7.14.0", - "@babel/generator": "^7.14.0", - "@babel/template": "^7.0.0", - "@babel/traverse": "^7.14.0", - "nullthrows": "^1.1.1" - } + "node_modules/lodash.union": { + "version": "4.6.0", + "license": "MIT" }, - "node_modules/metro-transform-worker": { - "version": "0.72.3", + "node_modules/log-symbols": { + "version": "4.1.0", "license": "MIT", - "peer": true, "dependencies": { - "@babel/core": "^7.14.0", - "@babel/generator": "^7.14.0", - "@babel/parser": "^7.14.0", - "@babel/types": "^7.0.0", - "babel-preset-fbjs": "^3.4.0", - "metro": "0.72.3", - "metro-babel-transformer": "0.72.3", - "metro-cache": "0.72.3", - "metro-cache-key": "0.72.3", - "metro-hermes-compiler": "0.72.3", - "metro-source-map": "0.72.3", - "metro-transform-plugins": "0.72.3", - "nullthrows": "^1.1.1" + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/metro/node_modules/ansi-styles": { + "node_modules/log-symbols/node_modules/ansi-styles": { "version": "4.3.0", "license": "MIT", - "peer": true, "dependencies": { "color-convert": "^2.0.1" }, @@ -31742,10 +33346,9 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/metro/node_modules/chalk": { + "node_modules/log-symbols/node_modules/chalk": { "version": "4.1.2", "license": "MIT", - "peer": true, "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -31757,25 +33360,9 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/metro/node_modules/ci-info": { - "version": "2.0.0", - "license": "MIT", - "peer": true - }, - "node_modules/metro/node_modules/cliui": { - "version": "6.0.0", - "license": "ISC", - "peer": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "node_modules/metro/node_modules/color-convert": { + "node_modules/log-symbols/node_modules/color-convert": { "version": "2.0.1", "license": "MIT", - "peer": true, "dependencies": { "color-name": "~1.1.4" }, @@ -31783,127 +33370,81 @@ "node": ">=7.0.0" } }, - "node_modules/metro/node_modules/color-name": { + "node_modules/log-symbols/node_modules/color-name": { "version": "1.1.4", - "license": "MIT", - "peer": true + "license": "MIT" }, - "node_modules/metro/node_modules/debug": { - "version": "2.6.9", + "node_modules/log-symbols/node_modules/has-flag": { + "version": "4.0.0", "license": "MIT", - "peer": true, - "dependencies": { - "ms": "2.0.0" + "engines": { + "node": ">=8" } }, - "node_modules/metro/node_modules/fs-extra": { - "version": "1.0.0", + "node_modules/log-symbols/node_modules/supports-color": { + "version": "7.2.0", "license": "MIT", - "peer": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "jsonfile": "^2.1.0", - "klaw": "^1.0.0" - } - }, - "node_modules/metro/node_modules/glob": { - "version": "7.2.3", - "license": "ISC", - "peer": true, "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" + "has-flag": "^4.0.0" }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/metro/node_modules/has-flag": { - "version": "4.0.0", - "license": "MIT", - "peer": true, "engines": { "node": ">=8" } }, - "node_modules/metro/node_modules/jest-worker": { - "version": "27.5.1", + "node_modules/logkitty": { + "version": "0.7.1", "license": "MIT", "peer": true, "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" + "ansi-fragments": "^0.2.1", + "dayjs": "^1.8.15", + "yargs": "^15.1.0" }, - "engines": { - "node": ">= 10.13.0" + "bin": { + "logkitty": "bin/logkitty.js" } }, - "node_modules/metro/node_modules/jest-worker/node_modules/supports-color": { - "version": "8.1.1", + "node_modules/logkitty/node_modules/ansi-styles": { + "version": "4.3.0", "license": "MIT", "peer": true, "dependencies": { - "has-flag": "^4.0.0" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=10" + "node": ">=8" }, "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/metro/node_modules/jsonfile": { - "version": "2.4.0", - "license": "MIT", - "peer": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/metro/node_modules/ms": { - "version": "2.0.0", - "license": "MIT", - "peer": true - }, - "node_modules/metro/node_modules/rimraf": { - "version": "2.7.1", + "node_modules/logkitty/node_modules/cliui": { + "version": "6.0.0", "license": "ISC", "peer": true, "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - } - }, - "node_modules/metro/node_modules/source-map": { - "version": "0.5.7", - "license": "BSD-3-Clause", - "peer": true, - "engines": { - "node": ">=0.10.0" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" } }, - "node_modules/metro/node_modules/supports-color": { - "version": "7.2.0", + "node_modules/logkitty/node_modules/color-convert": { + "version": "2.0.1", "license": "MIT", "peer": true, "dependencies": { - "has-flag": "^4.0.0" + "color-name": "~1.1.4" }, "engines": { - "node": ">=8" + "node": ">=7.0.0" } }, - "node_modules/metro/node_modules/wrap-ansi": { + "node_modules/logkitty/node_modules/color-name": { + "version": "1.1.4", + "license": "MIT", + "peer": true + }, + "node_modules/logkitty/node_modules/wrap-ansi": { "version": "6.2.0", "license": "MIT", "peer": true, @@ -31916,32 +33457,12 @@ "node": ">=8" } }, - "node_modules/metro/node_modules/ws": { - "version": "7.5.9", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/metro/node_modules/y18n": { + "node_modules/logkitty/node_modules/y18n": { "version": "4.0.3", "license": "ISC", "peer": true }, - "node_modules/metro/node_modules/yargs": { + "node_modules/logkitty/node_modules/yargs": { "version": "15.4.1", "license": "MIT", "peer": true, @@ -31962,7 +33483,7 @@ "node": ">=8" } }, - "node_modules/metro/node_modules/yargs-parser": { + "node_modules/logkitty/node_modules/yargs-parser": { "version": "18.1.3", "license": "ISC", "peer": true, @@ -31974,414 +33495,329 @@ "node": ">=6" } }, - "node_modules/micromatch": { - "version": "4.0.5", + "node_modules/loose-envify": { + "version": "1.4.0", "license": "MIT", + "peer": true, "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" + "js-tokens": "^3.0.0 || ^4.0.0" }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/mime": { - "version": "2.6.0", - "license": "MIT", - "peer": true, "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "license": "MIT", - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "license": "MIT", - "engines": { - "node": ">=6" + "loose-envify": "cli.js" } }, - "node_modules/min-indent": { - "version": "1.0.1", + "node_modules/loupe": { + "version": "2.3.6", "dev": true, "license": "MIT", - "engines": { - "node": ">=4" + "dependencies": { + "get-func-name": "^2.0.0" } }, - "node_modules/minimatch": { - "version": "3.1.2", + "node_modules/lru-cache": { + "version": "5.1.1", "license": "ISC", + "peer": true, "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.7", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" + "yallist": "^3.0.2" } }, - "node_modules/minimist-options": { - "version": "4.1.0", + "node_modules/make-dir": { + "version": "3.1.0", "dev": true, "license": "MIT", "dependencies": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0", - "kind-of": "^6.0.3" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/minipass": { - "version": "3.3.6", - "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" + "semver": "^6.0.0" }, "engines": { "node": ">=8" - } - }, - "node_modules/minipass-collect": { - "version": "1.0.2", - "dev": true, - "license": "ISC", - "dependencies": { - "minipass": "^3.0.0" }, - "engines": { - "node": ">= 8" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/minipass-fetch": { - "version": "2.1.2", + "node_modules/make-fetch-happen": { + "version": "10.2.1", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^16.1.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", "minipass": "^3.1.6", - "minipass-sized": "^1.0.3", - "minizlib": "^2.1.2" + "minipass-collect": "^1.0.2", + "minipass-fetch": "^2.0.3", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^9.0.0" }, "engines": { "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - }, - "optionalDependencies": { - "encoding": "^0.1.13" } }, - "node_modules/minipass-flush": { - "version": "1.0.5", + "node_modules/make-fetch-happen/node_modules/lru-cache": { + "version": "7.14.1", "dev": true, "license": "ISC", - "dependencies": { - "minipass": "^3.0.0" - }, "engines": { - "node": ">= 8" + "node": ">=12" } }, - "node_modules/minipass-json-stream": { - "version": "1.0.1", - "dev": true, - "license": "MIT", + "node_modules/makeerror": { + "version": "1.0.12", + "license": "BSD-3-Clause", + "peer": true, "dependencies": { - "jsonparse": "^1.3.1", - "minipass": "^3.0.0" + "tmpl": "1.0.5" } }, - "node_modules/minipass-pipeline": { - "version": "1.2.4", - "dev": true, - "license": "ISC", - "dependencies": { - "minipass": "^3.0.0" - }, + "node_modules/map-cache": { + "version": "0.2.2", + "license": "MIT", + "peer": true, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/minipass-sized": { - "version": "1.0.3", - "dev": true, - "license": "ISC", - "dependencies": { - "minipass": "^3.0.0" - }, + "node_modules/map-obj": { + "version": "4.3.0", + "license": "MIT", "engines": { "node": ">=8" - } - }, - "node_modules/minipass/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/minizlib": { - "version": "2.1.2", - "dev": true, - "license": "MIT", - "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" }, - "engines": { - "node": ">= 8" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/minizlib/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/mixin-deep": { - "version": "1.3.2", + "node_modules/map-visit": { + "version": "1.0.0", "license": "MIT", "peer": true, "dependencies": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" + "object-visit": "^1.0.0" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/mkdirp": { - "version": "1.0.4", - "dev": true, + "node_modules/memoize-one": { + "version": "5.2.1", "license": "MIT", - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } + "peer": true }, - "node_modules/mkdirp-infer-owner": { - "version": "2.0.0", + "node_modules/meow": { + "version": "8.1.2", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "chownr": "^2.0.0", - "infer-owner": "^1.0.4", - "mkdirp": "^1.0.3" + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.2.2", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "4.1.0", + "normalize-package-data": "^3.0.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.18.0", + "yargs-parser": "^20.2.3" }, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/mlly": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.1.0.tgz", - "integrity": "sha512-cwzBrBfwGC1gYJyfcy8TcZU1f+dbH/T+TuOhtYP2wLv/Fb51/uV7HJQfBPtEupZ2ORLRU1EKFS/QfS3eo9+kBQ==", - "dev": true, - "dependencies": { - "acorn": "^8.8.1", - "pathe": "^1.0.0", - "pkg-types": "^1.0.1", - "ufo": "^1.0.1" - } - }, - "node_modules/mlly/node_modules/pathe": { - "version": "1.0.0", + "node_modules/meow/node_modules/hosted-git-info": { + "version": "2.8.9", "dev": true, - "license": "MIT" + "license": "ISC" }, - "node_modules/modify-values": { - "version": "1.0.1", + "node_modules/meow/node_modules/read-pkg": { + "version": "5.2.0", "dev": true, "license": "MIT", + "dependencies": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/ms": { - "version": "2.1.2", - "license": "MIT" - }, - "node_modules/multimatch": { - "version": "5.0.0", + "node_modules/meow/node_modules/read-pkg-up": { + "version": "7.0.1", "dev": true, "license": "MIT", "dependencies": { - "@types/minimatch": "^3.0.3", - "array-differ": "^3.0.0", - "array-union": "^2.1.0", - "arrify": "^2.0.1", - "minimatch": "^3.0.4" + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" }, "engines": { - "node": ">=10" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/multimatch/node_modules/arrify": { - "version": "2.0.1", + "node_modules/meow/node_modules/read-pkg-up/node_modules/type-fest": { + "version": "0.8.1", "dev": true, - "license": "MIT", + "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=8" } }, - "node_modules/mute-stream": { - "version": "0.0.8", - "license": "ISC" + "node_modules/meow/node_modules/read-pkg/node_modules/normalize-package-data": { + "version": "2.5.0", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } }, - "node_modules/nanoid": { - "version": "3.3.4", + "node_modules/meow/node_modules/read-pkg/node_modules/type-fest": { + "version": "0.6.0", "dev": true, - "license": "MIT", - "bin": { - "nanoid": "bin/nanoid.cjs" - }, + "license": "(MIT OR CC0-1.0)", "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + "node": ">=8" } }, - "node_modules/nanomatch": { - "version": "1.2.13", - "license": "MIT", - "peer": true, - "dependencies": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" + "node_modules/meow/node_modules/semver": { + "version": "5.7.1", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" } }, - "node_modules/negotiator": { - "version": "0.6.3", - "license": "MIT", + "node_modules/meow/node_modules/type-fest": { + "version": "0.18.1", + "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { - "node": ">= 0.6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/neo-async": { - "version": "2.6.2", + "node_modules/merge-stream": { + "version": "2.0.0", "license": "MIT" }, - "node_modules/nice-try": { - "version": "1.0.5", - "license": "MIT", - "peer": true - }, - "node_modules/nocache": { - "version": "3.0.4", + "node_modules/merge2": { + "version": "1.4.1", + "dev": true, "license": "MIT", - "peer": true, "engines": { - "node": ">=12.0.0" + "node": ">= 8" } }, - "node_modules/node-addon-api": { - "version": "3.2.1", - "dev": true, - "license": "MIT" - }, - "node_modules/node-dir": { - "version": "0.1.17", + "node_modules/metro": { + "version": "0.72.3", "license": "MIT", "peer": true, "dependencies": { - "minimatch": "^3.0.2" + "@babel/code-frame": "^7.0.0", + "@babel/core": "^7.14.0", + "@babel/generator": "^7.14.0", + "@babel/parser": "^7.14.0", + "@babel/template": "^7.0.0", + "@babel/traverse": "^7.14.0", + "@babel/types": "^7.0.0", + "absolute-path": "^0.0.0", + "accepts": "^1.3.7", + "async": "^3.2.2", + "chalk": "^4.0.0", + "ci-info": "^2.0.0", + "connect": "^3.6.5", + "debug": "^2.2.0", + "denodeify": "^1.2.1", + "error-stack-parser": "^2.0.6", + "fs-extra": "^1.0.0", + "graceful-fs": "^4.2.4", + "hermes-parser": "0.8.0", + "image-size": "^0.6.0", + "invariant": "^2.2.4", + "jest-worker": "^27.2.0", + "lodash.throttle": "^4.1.1", + "metro-babel-transformer": "0.72.3", + "metro-cache": "0.72.3", + "metro-cache-key": "0.72.3", + "metro-config": "0.72.3", + "metro-core": "0.72.3", + "metro-file-map": "0.72.3", + "metro-hermes-compiler": "0.72.3", + "metro-inspector-proxy": "0.72.3", + "metro-minify-uglify": "0.72.3", + "metro-react-native-babel-preset": "0.72.3", + "metro-resolver": "0.72.3", + "metro-runtime": "0.72.3", + "metro-source-map": "0.72.3", + "metro-symbolicate": "0.72.3", + "metro-transform-plugins": "0.72.3", + "metro-transform-worker": "0.72.3", + "mime-types": "^2.1.27", + "node-fetch": "^2.2.0", + "nullthrows": "^1.1.1", + "rimraf": "^2.5.4", + "serialize-error": "^2.1.0", + "source-map": "^0.5.6", + "strip-ansi": "^6.0.0", + "temp": "0.8.3", + "throat": "^5.0.0", + "ws": "^7.5.1", + "yargs": "^15.3.1" }, - "engines": { - "node": ">= 0.10.5" + "bin": { + "metro": "src/cli.js" } }, - "node_modules/node-fetch": { - "version": "2.6.7", + "node_modules/metro-babel-transformer": { + "version": "0.72.3", "license": "MIT", + "peer": true, "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } + "@babel/core": "^7.14.0", + "hermes-parser": "0.8.0", + "metro-source-map": "0.72.3", + "nullthrows": "^1.1.1" } }, - "node_modules/node-gyp": { - "version": "9.3.1", - "dev": true, + "node_modules/metro-cache": { + "version": "0.72.3", "license": "MIT", + "peer": true, "dependencies": { - "env-paths": "^2.2.0", - "glob": "^7.1.4", - "graceful-fs": "^4.2.6", - "make-fetch-happen": "^10.0.3", - "nopt": "^6.0.0", - "npmlog": "^6.0.0", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.2", - "which": "^2.0.2" - }, - "bin": { - "node-gyp": "bin/node-gyp.js" - }, - "engines": { - "node": "^12.13 || ^14.13 || >=16" + "metro-core": "0.72.3", + "rimraf": "^2.5.4" } }, - "node_modules/node-gyp-build": { - "version": "4.5.0", - "dev": true, + "node_modules/metro-cache-key": { + "version": "0.72.3", "license": "MIT", - "bin": { - "node-gyp-build": "bin.js", - "node-gyp-build-optional": "optional.js", - "node-gyp-build-test": "build-test.js" - } + "peer": true }, - "node_modules/node-gyp/node_modules/glob": { + "node_modules/metro-cache/node_modules/glob": { "version": "7.2.3", - "dev": true, "license": "ISC", + "peer": true, "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -32397,551 +33833,614 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/node-gyp/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/node-gyp/node_modules/nopt": { - "version": "6.0.0", - "dev": true, + "node_modules/metro-cache/node_modules/rimraf": { + "version": "2.7.1", "license": "ISC", + "peer": true, "dependencies": { - "abbrev": "^1.0.0" + "glob": "^7.1.3" }, "bin": { - "nopt": "bin/nopt.js" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "rimraf": "bin.js" } }, - "node_modules/node-gyp/node_modules/semver": { - "version": "7.3.8", - "dev": true, - "license": "ISC", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/node-gyp/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/node-int64": { - "version": "0.4.0", - "license": "MIT", - "peer": true - }, - "node_modules/node-releases": { - "version": "2.0.8", + "node_modules/metro-config": { + "version": "0.72.3", "license": "MIT", - "peer": true + "peer": true, + "dependencies": { + "cosmiconfig": "^5.0.5", + "jest-validate": "^26.5.2", + "metro": "0.72.3", + "metro-cache": "0.72.3", + "metro-core": "0.72.3", + "metro-runtime": "0.72.3" + } }, - "node_modules/node-stream-zip": { - "version": "1.15.0", + "node_modules/metro-config/node_modules/cosmiconfig": { + "version": "5.2.1", "license": "MIT", "peer": true, - "engines": { - "node": ">=0.12.0" + "dependencies": { + "import-fresh": "^2.0.0", + "is-directory": "^0.3.1", + "js-yaml": "^3.13.1", + "parse-json": "^4.0.0" }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/antelle" + "engines": { + "node": ">=4" } }, - "node_modules/nopt": { - "version": "5.0.0", - "dev": true, - "license": "ISC", + "node_modules/metro-config/node_modules/import-fresh": { + "version": "2.0.0", + "license": "MIT", + "peer": true, "dependencies": { - "abbrev": "1" - }, - "bin": { - "nopt": "bin/nopt.js" + "caller-path": "^2.0.0", + "resolve-from": "^3.0.0" }, "engines": { - "node": ">=6" + "node": ">=4" } }, - "node_modules/normalize-package-data": { - "version": "3.0.3", - "dev": true, - "license": "BSD-2-Clause", + "node_modules/metro-config/node_modules/parse-json": { + "version": "4.0.0", + "license": "MIT", + "peer": true, "dependencies": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" }, "engines": { - "node": ">=10" + "node": ">=4" } }, - "node_modules/normalize-package-data/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, + "node_modules/metro-config/node_modules/resolve-from": { + "version": "3.0.0", + "license": "MIT", + "peer": true, "engines": { - "node": ">=10" + "node": ">=4" } }, - "node_modules/normalize-package-data/node_modules/semver": { - "version": "7.3.8", - "dev": true, - "license": "ISC", + "node_modules/metro-core": { + "version": "0.72.3", + "license": "MIT", + "peer": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" + "lodash.throttle": "^4.1.1", + "metro-resolver": "0.72.3" } }, - "node_modules/normalize-package-data/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" + "node_modules/metro-file-map": { + "version": "0.72.3", + "license": "MIT", + "peer": true, + "dependencies": { + "abort-controller": "^3.0.0", + "anymatch": "^3.0.3", + "debug": "^2.2.0", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.4", + "invariant": "^2.2.4", + "jest-regex-util": "^27.0.6", + "jest-serializer": "^27.0.6", + "jest-util": "^27.2.0", + "jest-worker": "^27.2.0", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + }, + "optionalDependencies": { + "fsevents": "^2.1.2" + } }, - "node_modules/normalize-path": { - "version": "3.0.0", + "node_modules/metro-file-map/node_modules/@jest/types": { + "version": "27.5.1", "license": "MIT", + "peer": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, "engines": { - "node": ">=0.10.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/npm-bundled": { - "version": "1.1.2", - "dev": true, - "license": "ISC", + "node_modules/metro-file-map/node_modules/@types/yargs": { + "version": "16.0.4", + "license": "MIT", + "peer": true, "dependencies": { - "npm-normalize-package-bin": "^1.0.1" + "@types/yargs-parser": "*" } }, - "node_modules/npm-install-checks": { - "version": "5.0.0", - "dev": true, - "license": "BSD-2-Clause", + "node_modules/metro-file-map/node_modules/ansi-styles": { + "version": "4.3.0", + "license": "MIT", + "peer": true, "dependencies": { - "semver": "^7.1.1" + "color-convert": "^2.0.1" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/npm-install-checks/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", + "node_modules/metro-file-map/node_modules/chalk": { + "version": "4.1.2", + "license": "MIT", + "peer": true, "dependencies": { - "yallist": "^4.0.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/npm-install-checks/node_modules/semver": { - "version": "7.3.8", - "dev": true, - "license": "ISC", + "node_modules/metro-file-map/node_modules/color-convert": { + "version": "2.0.1", + "license": "MIT", + "peer": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "color-name": "~1.1.4" }, "engines": { - "node": ">=10" + "node": ">=7.0.0" } }, - "node_modules/npm-install-checks/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/npm-normalize-package-bin": { - "version": "1.0.1", - "dev": true, - "license": "ISC" + "node_modules/metro-file-map/node_modules/color-name": { + "version": "1.1.4", + "license": "MIT", + "peer": true }, - "node_modules/npm-package-arg": { - "version": "8.1.1", - "dev": true, - "license": "ISC", + "node_modules/metro-file-map/node_modules/debug": { + "version": "2.6.9", + "license": "MIT", + "peer": true, "dependencies": { - "hosted-git-info": "^3.0.6", - "semver": "^7.0.0", - "validate-npm-package-name": "^3.0.0" - }, + "ms": "2.0.0" + } + }, + "node_modules/metro-file-map/node_modules/has-flag": { + "version": "4.0.0", + "license": "MIT", + "peer": true, "engines": { - "node": ">=10" + "node": ">=8" } }, - "node_modules/npm-package-arg/node_modules/builtins": { - "version": "1.0.3", - "dev": true, - "license": "MIT" + "node_modules/metro-file-map/node_modules/jest-regex-util": { + "version": "27.5.1", + "license": "MIT", + "peer": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } }, - "node_modules/npm-package-arg/node_modules/hosted-git-info": { - "version": "3.0.8", - "dev": true, - "license": "ISC", + "node_modules/metro-file-map/node_modules/jest-util": { + "version": "27.5.1", + "license": "MIT", + "peer": true, "dependencies": { - "lru-cache": "^6.0.0" + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">=10" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/npm-package-arg/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", + "node_modules/metro-file-map/node_modules/jest-worker": { + "version": "27.5.1", + "license": "MIT", + "peer": true, "dependencies": { - "yallist": "^4.0.0" + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" }, "engines": { - "node": ">=10" + "node": ">= 10.13.0" } }, - "node_modules/npm-package-arg/node_modules/semver": { - "version": "7.3.8", - "dev": true, - "license": "ISC", + "node_modules/metro-file-map/node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "license": "MIT", + "peer": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "has-flag": "^4.0.0" }, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/npm-package-arg/node_modules/validate-npm-package-name": { - "version": "3.0.0", - "dev": true, - "license": "ISC", + "node_modules/metro-file-map/node_modules/ms": { + "version": "2.0.0", + "license": "MIT", + "peer": true + }, + "node_modules/metro-file-map/node_modules/supports-color": { + "version": "7.2.0", + "license": "MIT", + "peer": true, "dependencies": { - "builtins": "^1.0.3" + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/npm-package-arg/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" + "node_modules/metro-hermes-compiler": { + "version": "0.72.3", + "license": "MIT", + "peer": true }, - "node_modules/npm-packlist": { - "version": "5.1.3", - "dev": true, - "license": "ISC", + "node_modules/metro-inspector-proxy": { + "version": "0.72.3", + "license": "MIT", + "peer": true, "dependencies": { - "glob": "^8.0.1", - "ignore-walk": "^5.0.1", - "npm-bundled": "^2.0.0", - "npm-normalize-package-bin": "^2.0.0" + "connect": "^3.6.5", + "debug": "^2.2.0", + "ws": "^7.5.1", + "yargs": "^15.3.1" }, "bin": { - "npm-packlist": "bin/index.js" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "metro-inspector-proxy": "src/cli.js" } }, - "node_modules/npm-packlist/node_modules/npm-bundled": { - "version": "2.0.1", - "dev": true, - "license": "ISC", + "node_modules/metro-inspector-proxy/node_modules/ansi-styles": { + "version": "4.3.0", + "license": "MIT", + "peer": true, "dependencies": { - "npm-normalize-package-bin": "^2.0.0" + "color-convert": "^2.0.1" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm-packlist/node_modules/npm-normalize-package-bin": { - "version": "2.0.0", - "dev": true, - "license": "ISC", - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/npm-pick-manifest": { - "version": "7.0.2", - "dev": true, + "node_modules/metro-inspector-proxy/node_modules/cliui": { + "version": "6.0.0", "license": "ISC", + "peer": true, "dependencies": { - "npm-install-checks": "^5.0.0", - "npm-normalize-package-bin": "^2.0.0", - "npm-package-arg": "^9.0.0", - "semver": "^7.3.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" } }, - "node_modules/npm-pick-manifest/node_modules/hosted-git-info": { - "version": "5.2.1", - "dev": true, - "license": "ISC", + "node_modules/metro-inspector-proxy/node_modules/color-convert": { + "version": "2.0.1", + "license": "MIT", + "peer": true, "dependencies": { - "lru-cache": "^7.5.1" + "color-name": "~1.1.4" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=7.0.0" } }, - "node_modules/npm-pick-manifest/node_modules/lru-cache": { - "version": "7.14.1", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=12" + "node_modules/metro-inspector-proxy/node_modules/color-name": { + "version": "1.1.4", + "license": "MIT", + "peer": true + }, + "node_modules/metro-inspector-proxy/node_modules/debug": { + "version": "2.6.9", + "license": "MIT", + "peer": true, + "dependencies": { + "ms": "2.0.0" } }, - "node_modules/npm-pick-manifest/node_modules/npm-normalize-package-bin": { + "node_modules/metro-inspector-proxy/node_modules/ms": { "version": "2.0.0", - "dev": true, - "license": "ISC", - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } + "license": "MIT", + "peer": true }, - "node_modules/npm-pick-manifest/node_modules/npm-package-arg": { - "version": "9.1.2", - "dev": true, - "license": "ISC", + "node_modules/metro-inspector-proxy/node_modules/wrap-ansi": { + "version": "6.2.0", + "license": "MIT", + "peer": true, "dependencies": { - "hosted-git-info": "^5.0.0", - "proc-log": "^2.0.1", - "semver": "^7.3.5", - "validate-npm-package-name": "^4.0.0" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=8" } }, - "node_modules/npm-pick-manifest/node_modules/semver": { - "version": "7.3.8", - "dev": true, - "license": "ISC", - "dependencies": { - "lru-cache": "^6.0.0" + "node_modules/metro-inspector-proxy/node_modules/ws": { + "version": "7.5.9", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8.3.0" }, - "bin": { - "semver": "bin/semver.js" + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" }, - "engines": { - "node": ">=10" + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } } }, - "node_modules/npm-pick-manifest/node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, + "node_modules/metro-inspector-proxy/node_modules/y18n": { + "version": "4.0.3", "license": "ISC", + "peer": true + }, + "node_modules/metro-inspector-proxy/node_modules/yargs": { + "version": "15.4.1", + "license": "MIT", + "peer": true, "dependencies": { - "yallist": "^4.0.0" + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" }, "engines": { - "node": ">=10" + "node": ">=8" } }, - "node_modules/npm-pick-manifest/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/npm-registry-fetch": { - "version": "13.3.1", - "dev": true, + "node_modules/metro-inspector-proxy/node_modules/yargs-parser": { + "version": "18.1.3", "license": "ISC", + "peer": true, "dependencies": { - "make-fetch-happen": "^10.0.6", - "minipass": "^3.1.6", - "minipass-fetch": "^2.0.3", - "minipass-json-stream": "^1.0.1", - "minizlib": "^2.1.2", - "npm-package-arg": "^9.0.1", - "proc-log": "^2.0.0" + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=6" } }, - "node_modules/npm-registry-fetch/node_modules/hosted-git-info": { - "version": "5.2.1", - "dev": true, - "license": "ISC", + "node_modules/metro-minify-uglify": { + "version": "0.72.3", + "license": "MIT", + "peer": true, "dependencies": { - "lru-cache": "^7.5.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "uglify-es": "^3.1.9" } }, - "node_modules/npm-registry-fetch/node_modules/lru-cache": { - "version": "7.14.1", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=12" + "node_modules/metro-react-native-babel-preset": { + "version": "0.72.3", + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/core": "^7.14.0", + "@babel/plugin-proposal-async-generator-functions": "^7.0.0", + "@babel/plugin-proposal-class-properties": "^7.0.0", + "@babel/plugin-proposal-export-default-from": "^7.0.0", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.0.0", + "@babel/plugin-proposal-object-rest-spread": "^7.0.0", + "@babel/plugin-proposal-optional-catch-binding": "^7.0.0", + "@babel/plugin-proposal-optional-chaining": "^7.0.0", + "@babel/plugin-syntax-dynamic-import": "^7.0.0", + "@babel/plugin-syntax-export-default-from": "^7.0.0", + "@babel/plugin-syntax-flow": "^7.2.0", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.0.0", + "@babel/plugin-syntax-optional-chaining": "^7.0.0", + "@babel/plugin-transform-arrow-functions": "^7.0.0", + "@babel/plugin-transform-async-to-generator": "^7.0.0", + "@babel/plugin-transform-block-scoping": "^7.0.0", + "@babel/plugin-transform-classes": "^7.0.0", + "@babel/plugin-transform-computed-properties": "^7.0.0", + "@babel/plugin-transform-destructuring": "^7.0.0", + "@babel/plugin-transform-exponentiation-operator": "^7.0.0", + "@babel/plugin-transform-flow-strip-types": "^7.0.0", + "@babel/plugin-transform-function-name": "^7.0.0", + "@babel/plugin-transform-literals": "^7.0.0", + "@babel/plugin-transform-modules-commonjs": "^7.0.0", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.0.0", + "@babel/plugin-transform-parameters": "^7.0.0", + "@babel/plugin-transform-react-display-name": "^7.0.0", + "@babel/plugin-transform-react-jsx": "^7.0.0", + "@babel/plugin-transform-react-jsx-self": "^7.0.0", + "@babel/plugin-transform-react-jsx-source": "^7.0.0", + "@babel/plugin-transform-runtime": "^7.0.0", + "@babel/plugin-transform-shorthand-properties": "^7.0.0", + "@babel/plugin-transform-spread": "^7.0.0", + "@babel/plugin-transform-sticky-regex": "^7.0.0", + "@babel/plugin-transform-template-literals": "^7.0.0", + "@babel/plugin-transform-typescript": "^7.5.0", + "@babel/plugin-transform-unicode-regex": "^7.0.0", + "@babel/template": "^7.0.0", + "react-refresh": "^0.4.0" + }, + "peerDependencies": { + "@babel/core": "*" } }, - "node_modules/npm-registry-fetch/node_modules/npm-package-arg": { - "version": "9.1.2", - "dev": true, - "license": "ISC", + "node_modules/metro-react-native-babel-transformer": { + "version": "0.72.3", + "license": "MIT", + "peer": true, "dependencies": { - "hosted-git-info": "^5.0.0", - "proc-log": "^2.0.1", - "semver": "^7.3.5", - "validate-npm-package-name": "^4.0.0" + "@babel/core": "^7.14.0", + "babel-preset-fbjs": "^3.4.0", + "hermes-parser": "0.8.0", + "metro-babel-transformer": "0.72.3", + "metro-react-native-babel-preset": "0.72.3", + "metro-source-map": "0.72.3", + "nullthrows": "^1.1.1" }, + "peerDependencies": { + "@babel/core": "*" + } + }, + "node_modules/metro-resolver": { + "version": "0.72.3", + "license": "MIT", + "peer": true, + "dependencies": { + "absolute-path": "^0.0.0" + } + }, + "node_modules/metro-runtime": { + "version": "0.72.3", + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/runtime": "^7.0.0", + "react-refresh": "^0.4.0" + } + }, + "node_modules/metro-source-map": { + "version": "0.72.3", + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/traverse": "^7.14.0", + "@babel/types": "^7.0.0", + "invariant": "^2.2.4", + "metro-symbolicate": "0.72.3", + "nullthrows": "^1.1.1", + "ob1": "0.72.3", + "source-map": "^0.5.6", + "vlq": "^1.0.0" + } + }, + "node_modules/metro-source-map/node_modules/source-map": { + "version": "0.5.7", + "license": "BSD-3-Clause", + "peer": true, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=0.10.0" } }, - "node_modules/npm-registry-fetch/node_modules/semver": { - "version": "7.3.8", - "dev": true, - "license": "ISC", + "node_modules/metro-symbolicate": { + "version": "0.72.3", + "license": "MIT", + "peer": true, "dependencies": { - "lru-cache": "^6.0.0" + "invariant": "^2.2.4", + "metro-source-map": "0.72.3", + "nullthrows": "^1.1.1", + "source-map": "^0.5.6", + "through2": "^2.0.1", + "vlq": "^1.0.0" }, "bin": { - "semver": "bin/semver.js" + "metro-symbolicate": "src/index.js" }, "engines": { - "node": ">=10" + "node": ">=8.3" } }, - "node_modules/npm-registry-fetch/node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", + "node_modules/metro-symbolicate/node_modules/readable-stream": { + "version": "2.3.7", + "license": "MIT", + "peer": true, "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" } }, - "node_modules/npm-registry-fetch/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" + "node_modules/metro-symbolicate/node_modules/safe-buffer": { + "version": "5.1.2", + "license": "MIT", + "peer": true }, - "node_modules/npm-run-path": { - "version": "4.0.1", - "dev": true, + "node_modules/metro-symbolicate/node_modules/source-map": { + "version": "0.5.7", + "license": "BSD-3-Clause", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/metro-symbolicate/node_modules/string_decoder": { + "version": "1.1.1", "license": "MIT", + "peer": true, "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" + "safe-buffer": "~5.1.0" } }, - "node_modules/npmlog": { - "version": "6.0.2", - "dev": true, - "license": "ISC", + "node_modules/metro-symbolicate/node_modules/through2": { + "version": "2.0.5", + "license": "MIT", + "peer": true, "dependencies": { - "are-we-there-yet": "^3.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", - "set-blocking": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" } }, - "node_modules/nullthrows": { - "version": "1.1.1", + "node_modules/metro-transform-plugins": { + "version": "0.72.3", "license": "MIT", - "peer": true + "peer": true, + "dependencies": { + "@babel/core": "^7.14.0", + "@babel/generator": "^7.14.0", + "@babel/template": "^7.0.0", + "@babel/traverse": "^7.14.0", + "nullthrows": "^1.1.1" + } }, - "node_modules/nx": { - "version": "15.4.2", - "dev": true, - "hasInstallScript": true, + "node_modules/metro-transform-worker": { + "version": "0.72.3", "license": "MIT", + "peer": true, "dependencies": { - "@nrwl/cli": "15.4.2", - "@nrwl/tao": "15.4.2", - "@parcel/watcher": "2.0.4", - "@yarnpkg/lockfile": "^1.1.0", - "@yarnpkg/parsers": "^3.0.0-rc.18", - "@zkochan/js-yaml": "0.0.6", - "axios": "^1.0.0", - "chalk": "4.1.0", - "chokidar": "^3.5.1", - "cli-cursor": "3.1.0", - "cli-spinners": "2.6.1", - "cliui": "^7.0.2", - "dotenv": "~10.0.0", - "enquirer": "~2.3.6", - "fast-glob": "3.2.7", - "figures": "3.2.0", - "flat": "^5.0.2", - "fs-extra": "^10.1.0", - "glob": "7.1.4", - "ignore": "^5.0.4", - "js-yaml": "4.1.0", - "jsonc-parser": "3.2.0", - "minimatch": "3.0.5", - "npm-run-path": "^4.0.1", - "open": "^8.4.0", - "semver": "7.3.4", - "string-width": "^4.2.3", - "strong-log-transformer": "^2.1.0", - "tar-stream": "~2.2.0", - "tmp": "~0.2.1", - "tsconfig-paths": "^3.9.0", - "tslib": "^2.3.0", - "v8-compile-cache": "2.3.0", - "yargs": "^17.6.2", - "yargs-parser": "21.1.1" - }, - "bin": { - "nx": "bin/nx.js" - }, - "peerDependencies": { - "@swc-node/register": "^1.4.2", - "@swc/core": "^1.2.173" - }, - "peerDependenciesMeta": { - "@swc-node/register": { - "optional": true - }, - "@swc/core": { - "optional": true - } + "@babel/core": "^7.14.0", + "@babel/generator": "^7.14.0", + "@babel/parser": "^7.14.0", + "@babel/types": "^7.0.0", + "babel-preset-fbjs": "^3.4.0", + "metro": "0.72.3", + "metro-babel-transformer": "0.72.3", + "metro-cache": "0.72.3", + "metro-cache-key": "0.72.3", + "metro-hermes-compiler": "0.72.3", + "metro-source-map": "0.72.3", + "metro-transform-plugins": "0.72.3", + "nullthrows": "^1.1.1" } }, - "node_modules/nx/node_modules/ansi-styles": { + "node_modules/metro/node_modules/ansi-styles": { "version": "4.3.0", - "dev": true, "license": "MIT", + "peer": true, "dependencies": { "color-convert": "^2.0.1" }, @@ -32952,25 +34451,10 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/nx/node_modules/argparse": { - "version": "2.0.1", - "dev": true, - "license": "Python-2.0" - }, - "node_modules/nx/node_modules/axios": { - "version": "1.2.1", - "dev": true, - "license": "MIT", - "dependencies": { - "follow-redirects": "^1.15.0", - "form-data": "^4.0.0", - "proxy-from-env": "^1.1.0" - } - }, - "node_modules/nx/node_modules/chalk": { - "version": "4.1.0", - "dev": true, + "node_modules/metro/node_modules/chalk": { + "version": "4.1.2", "license": "MIT", + "peer": true, "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -32982,10 +34466,25 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/nx/node_modules/color-convert": { + "node_modules/metro/node_modules/ci-info": { + "version": "2.0.0", + "license": "MIT", + "peer": true + }, + "node_modules/metro/node_modules/cliui": { + "version": "6.0.0", + "license": "ISC", + "peer": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, + "node_modules/metro/node_modules/color-convert": { "version": "2.0.1", - "dev": true, "license": "MIT", + "peer": true, "dependencies": { "color-name": "~1.1.4" }, @@ -32993,114 +34492,119 @@ "node": ">=7.0.0" } }, - "node_modules/nx/node_modules/color-name": { + "node_modules/metro/node_modules/color-name": { "version": "1.1.4", - "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, - "node_modules/nx/node_modules/fast-glob": { - "version": "3.2.7", - "dev": true, + "node_modules/metro/node_modules/debug": { + "version": "2.6.9", "license": "MIT", + "peer": true, "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "engines": { - "node": ">=8" + "ms": "2.0.0" } }, - "node_modules/nx/node_modules/fs-extra": { - "version": "10.1.0", - "dev": true, + "node_modules/metro/node_modules/fs-extra": { + "version": "1.0.0", "license": "MIT", + "peer": true, "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" + "graceful-fs": "^4.1.2", + "jsonfile": "^2.1.0", + "klaw": "^1.0.0" } }, - "node_modules/nx/node_modules/glob": { - "version": "7.1.4", - "dev": true, + "node_modules/metro/node_modules/glob": { + "version": "7.2.3", "license": "ISC", + "peer": true, "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", - "minimatch": "^3.0.4", + "minimatch": "^3.1.1", "once": "^1.3.0", "path-is-absolute": "^1.0.0" }, "engines": { "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/nx/node_modules/has-flag": { + "node_modules/metro/node_modules/has-flag": { "version": "4.0.0", - "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=8" } }, - "node_modules/nx/node_modules/js-yaml": { - "version": "4.1.0", - "dev": true, + "node_modules/metro/node_modules/jest-worker": { + "version": "27.5.1", "license": "MIT", + "peer": true, "dependencies": { - "argparse": "^2.0.1" + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": ">= 10.13.0" } }, - "node_modules/nx/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", + "node_modules/metro/node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "license": "MIT", + "peer": true, "dependencies": { - "yallist": "^4.0.0" + "has-flag": "^4.0.0" }, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/nx/node_modules/minimatch": { - "version": "3.0.5", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" + "node_modules/metro/node_modules/jsonfile": { + "version": "2.4.0", + "license": "MIT", + "peer": true, + "optionalDependencies": { + "graceful-fs": "^4.1.6" } }, - "node_modules/nx/node_modules/semver": { - "version": "7.3.4", - "dev": true, + "node_modules/metro/node_modules/ms": { + "version": "2.0.0", + "license": "MIT", + "peer": true + }, + "node_modules/metro/node_modules/rimraf": { + "version": "2.7.1", "license": "ISC", + "peer": true, "dependencies": { - "lru-cache": "^6.0.0" + "glob": "^7.1.3" }, "bin": { - "semver": "bin/semver.js" - }, + "rimraf": "bin.js" + } + }, + "node_modules/metro/node_modules/source-map": { + "version": "0.5.7", + "license": "BSD-3-Clause", + "peer": true, "engines": { - "node": ">=10" + "node": ">=0.10.0" } }, - "node_modules/nx/node_modules/supports-color": { + "node_modules/metro/node_modules/supports-color": { "version": "7.2.0", - "dev": true, "license": "MIT", + "peer": true, "dependencies": { "has-flag": "^4.0.0" }, @@ -33108,350 +34612,338 @@ "node": ">=8" } }, - "node_modules/nx/node_modules/tmp": { - "version": "0.2.1", - "dev": true, + "node_modules/metro/node_modules/wrap-ansi": { + "version": "6.2.0", "license": "MIT", + "peer": true, "dependencies": { - "rimraf": "^3.0.0" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" }, "engines": { - "node": ">=8.17.0" + "node": ">=8" } }, - "node_modules/nx/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/nx/node_modules/yargs": { - "version": "17.6.2", - "dev": true, + "node_modules/metro/node_modules/ws": { + "version": "7.5.9", "license": "MIT", - "dependencies": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - }, + "peer": true, "engines": { - "node": ">=12" + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } } }, - "node_modules/nx/node_modules/yargs-parser": { - "version": "21.1.1", - "dev": true, + "node_modules/metro/node_modules/y18n": { + "version": "4.0.3", "license": "ISC", - "engines": { - "node": ">=12" - } + "peer": true }, - "node_modules/nx/node_modules/yargs/node_modules/cliui": { - "version": "8.0.1", - "dev": true, - "license": "ISC", + "node_modules/metro/node_modules/yargs": { + "version": "15.4.1", + "license": "MIT", + "peer": true, "dependencies": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" }, "engines": { - "node": ">=12" + "node": ">=8" } }, - "node_modules/ob1": { - "version": "0.72.3", - "license": "MIT", - "peer": true - }, - "node_modules/object-assign": { - "version": "4.1.1", - "license": "MIT", + "node_modules/metro/node_modules/yargs-parser": { + "version": "18.1.3", + "license": "ISC", "peer": true, + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "node_modules/object-copy": { - "version": "0.1.0", + "node_modules/micromatch": { + "version": "4.0.5", "license": "MIT", - "peer": true, "dependencies": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" + "braces": "^3.0.2", + "picomatch": "^2.3.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=8.6" } }, - "node_modules/object-copy/node_modules/define-property": { - "version": "0.2.5", + "node_modules/mime": { + "version": "2.6.0", "license": "MIT", "peer": true, - "dependencies": { - "is-descriptor": "^0.1.0" + "bin": { + "mime": "cli.js" }, "engines": { - "node": ">=0.10.0" + "node": ">=4.0.0" } }, - "node_modules/object-copy/node_modules/is-accessor-descriptor": { - "version": "0.1.6", + "node_modules/mime-db": { + "version": "1.52.0", "license": "MIT", - "peer": true, - "dependencies": { - "kind-of": "^3.0.2" - }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.6" } }, - "node_modules/object-copy/node_modules/is-data-descriptor": { - "version": "0.1.4", + "node_modules/mime-types": { + "version": "2.1.35", "license": "MIT", - "peer": true, "dependencies": { - "kind-of": "^3.0.2" + "mime-db": "1.52.0" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.6" } }, - "node_modules/object-copy/node_modules/is-descriptor": { - "version": "0.1.6", + "node_modules/mimic-fn": { + "version": "2.1.0", "license": "MIT", - "peer": true, - "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "node_modules/object-copy/node_modules/is-descriptor/node_modules/kind-of": { - "version": "5.1.0", + "node_modules/min-indent": { + "version": "1.0.1", + "dev": true, "license": "MIT", - "peer": true, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/object-copy/node_modules/kind-of": { - "version": "3.2.2", - "license": "MIT", - "peer": true, + "node_modules/minimatch": { + "version": "3.1.2", + "license": "ISC", "dependencies": { - "is-buffer": "^1.1.5" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=0.10.0" + "node": "*" } }, - "node_modules/object-visit": { - "version": "1.0.1", + "node_modules/minimist": { + "version": "1.2.7", "license": "MIT", - "peer": true, - "dependencies": { - "isobject": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/object.pick": { - "version": "1.3.0", + "node_modules/minimist-options": { + "version": "4.1.0", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "isobject": "^3.0.1" + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0", + "kind-of": "^6.0.3" }, "engines": { - "node": ">=0.10.0" + "node": ">= 6" } }, - "node_modules/on-finished": { - "version": "2.3.0", - "license": "MIT", - "peer": true, + "node_modules/minipass": { + "version": "3.3.6", + "dev": true, + "license": "ISC", "dependencies": { - "ee-first": "1.1.1" + "yallist": "^4.0.0" }, "engines": { - "node": ">= 0.8" + "node": ">=8" } }, - "node_modules/on-headers": { + "node_modules/minipass-collect": { "version": "1.0.2", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/once": { - "version": "1.4.0", + "dev": true, "license": "ISC", "dependencies": { - "wrappy": "1" + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" } }, - "node_modules/onetime": { - "version": "5.1.2", + "node_modules/minipass-fetch": { + "version": "2.1.2", + "dev": true, "license": "MIT", "dependencies": { - "mimic-fn": "^2.1.0" + "minipass": "^3.1.6", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" }, "engines": { - "node": ">=6" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "optionalDependencies": { + "encoding": "^0.1.13" } }, - "node_modules/open": { - "version": "8.4.0", + "node_modules/minipass-flush": { + "version": "1.0.5", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" + "minipass": "^3.0.0" }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 8" } }, - "node_modules/ora": { - "version": "5.4.1", + "node_modules/minipass-json-stream": { + "version": "1.0.1", + "dev": true, "license": "MIT", "dependencies": { - "bl": "^4.1.0", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-spinners": "^2.5.0", - "is-interactive": "^1.0.0", - "is-unicode-supported": "^0.1.0", - "log-symbols": "^4.1.0", - "strip-ansi": "^6.0.0", - "wcwidth": "^1.0.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "jsonparse": "^1.3.1", + "minipass": "^3.0.0" } }, - "node_modules/ora/node_modules/ansi-styles": { - "version": "4.3.0", - "license": "MIT", + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "dev": true, + "license": "ISC", "dependencies": { - "color-convert": "^2.0.1" + "minipass": "^3.0.0" }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/ora/node_modules/chalk": { - "version": "4.1.2", - "license": "MIT", + "node_modules/minipass-sized": { + "version": "1.0.3", + "dev": true, + "license": "ISC", "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "minipass": "^3.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">=8" } }, - "node_modules/ora/node_modules/color-convert": { - "version": "2.0.1", + "node_modules/minipass/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/minizlib": { + "version": "2.1.2", + "dev": true, "license": "MIT", "dependencies": { - "color-name": "~1.1.4" + "minipass": "^3.0.0", + "yallist": "^4.0.0" }, "engines": { - "node": ">=7.0.0" + "node": ">= 8" } }, - "node_modules/ora/node_modules/color-name": { - "version": "1.1.4", - "license": "MIT" - }, - "node_modules/ora/node_modules/has-flag": { + "node_modules/minizlib/node_modules/yallist": { "version": "4.0.0", - "license": "MIT", - "engines": { - "node": ">=8" - } + "dev": true, + "license": "ISC" }, - "node_modules/ora/node_modules/supports-color": { - "version": "7.2.0", + "node_modules/mixin-deep": { + "version": "1.3.2", "license": "MIT", + "peer": true, "dependencies": { - "has-flag": "^4.0.0" + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" }, - "engines": { - "node": ">=8" - } - }, - "node_modules/os-tmpdir": { - "version": "1.0.2", - "license": "MIT", "engines": { "node": ">=0.10.0" } }, - "node_modules/p-finally": { - "version": "1.0.0", + "node_modules/mkdirp": { + "version": "1.0.4", + "dev": true, "license": "MIT", + "bin": { + "mkdirp": "bin/cmd.js" + }, "engines": { - "node": ">=4" + "node": ">=10" } }, - "node_modules/p-limit": { - "version": "2.3.0", - "license": "MIT", + "node_modules/mkdirp-infer-owner": { + "version": "2.0.0", + "dev": true, + "license": "ISC", "dependencies": { - "p-try": "^2.0.0" + "chownr": "^2.0.0", + "infer-owner": "^1.0.4", + "mkdirp": "^1.0.3" }, "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=10" } }, - "node_modules/p-locate": { - "version": "4.1.0", - "license": "MIT", + "node_modules/mlly": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.1.0.tgz", + "integrity": "sha512-cwzBrBfwGC1gYJyfcy8TcZU1f+dbH/T+TuOhtYP2wLv/Fb51/uV7HJQfBPtEupZ2ORLRU1EKFS/QfS3eo9+kBQ==", + "dev": true, "dependencies": { - "p-limit": "^2.2.0" - }, + "acorn": "^8.8.1", + "pathe": "^1.0.0", + "pkg-types": "^1.0.1", + "ufo": "^1.0.1" + } + }, + "node_modules/mlly/node_modules/pathe": { + "version": "1.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/modify-values": { + "version": "1.0.1", + "dev": true, + "license": "MIT", "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/p-map": { - "version": "4.0.0", + "node_modules/ms": { + "version": "2.1.2", + "license": "MIT" + }, + "node_modules/multimatch": { + "version": "5.0.0", "dev": true, "license": "MIT", "dependencies": { - "aggregate-error": "^3.0.0" + "@types/minimatch": "^3.0.3", + "array-differ": "^3.0.0", + "array-union": "^2.1.0", + "arrify": "^2.0.1", + "minimatch": "^3.0.4" }, "engines": { "node": ">=10" @@ -33460,1620 +34952,1468 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/p-map-series": { - "version": "2.1.0", + "node_modules/multimatch/node_modules/arrify": { + "version": "2.0.1", "dev": true, "license": "MIT", "engines": { "node": ">=8" } }, - "node_modules/p-pipe": { - "version": "3.1.0", + "node_modules/mute-stream": { + "version": "0.0.8", + "license": "ISC" + }, + "node_modules/nanoid": { + "version": "3.3.4", "dev": true, "license": "MIT", - "engines": { - "node": ">=8" + "bin": { + "nanoid": "bin/nanoid.cjs" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" } }, - "node_modules/p-queue": { - "version": "6.6.2", - "dev": true, + "node_modules/nanomatch": { + "version": "1.2.13", "license": "MIT", + "peer": true, "dependencies": { - "eventemitter3": "^4.0.4", - "p-timeout": "^3.2.0" + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.10.0" } }, - "node_modules/p-reduce": { - "version": "2.1.0", - "dev": true, + "node_modules/negotiator": { + "version": "0.6.3", "license": "MIT", "engines": { - "node": ">=8" + "node": ">= 0.6" } }, - "node_modules/p-timeout": { - "version": "3.2.0", - "dev": true, + "node_modules/neo-async": { + "version": "2.6.2", + "license": "MIT" + }, + "node_modules/nice-try": { + "version": "1.0.5", "license": "MIT", - "dependencies": { - "p-finally": "^1.0.0" - }, + "peer": true + }, + "node_modules/nocache": { + "version": "3.0.4", + "license": "MIT", + "peer": true, "engines": { - "node": ">=8" + "node": ">=12.0.0" } }, - "node_modules/p-try": { - "version": "2.2.0", + "node_modules/node-addon-api": { + "version": "3.2.1", + "dev": true, + "license": "MIT" + }, + "node_modules/node-dir": { + "version": "0.1.17", "license": "MIT", + "peer": true, + "dependencies": { + "minimatch": "^3.0.2" + }, "engines": { - "node": ">=6" + "node": ">= 0.10.5" } }, - "node_modules/p-waterfall": { - "version": "2.1.1", - "dev": true, + "node_modules/node-fetch": { + "version": "2.6.7", "license": "MIT", "dependencies": { - "p-reduce": "^2.0.0" + "whatwg-url": "^5.0.0" }, "engines": { - "node": ">=8" + "node": "4.x || >=6.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } } }, - "node_modules/pacote": { - "version": "13.6.2", + "node_modules/node-gyp": { + "version": "9.3.1", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "@npmcli/git": "^3.0.0", - "@npmcli/installed-package-contents": "^1.0.7", - "@npmcli/promise-spawn": "^3.0.0", - "@npmcli/run-script": "^4.1.0", - "cacache": "^16.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "infer-owner": "^1.0.4", - "minipass": "^3.1.6", - "mkdirp": "^1.0.4", - "npm-package-arg": "^9.0.0", - "npm-packlist": "^5.1.0", - "npm-pick-manifest": "^7.0.0", - "npm-registry-fetch": "^13.0.1", - "proc-log": "^2.0.0", - "promise-retry": "^2.0.1", - "read-package-json": "^5.0.0", - "read-package-json-fast": "^2.0.3", + "env-paths": "^2.2.0", + "glob": "^7.1.4", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^10.0.3", + "nopt": "^6.0.0", + "npmlog": "^6.0.0", "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11" + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^2.0.2" }, "bin": { - "pacote": "lib/bin.js" + "node-gyp": "bin/node-gyp.js" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^12.13 || ^14.13 || >=16" } }, - "node_modules/pacote/node_modules/hosted-git-info": { - "version": "5.2.1", + "node_modules/node-gyp-build": { + "version": "4.5.0", "dev": true, - "license": "ISC", - "dependencies": { - "lru-cache": "^7.5.1" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "license": "MIT", + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" } }, - "node_modules/pacote/node_modules/lru-cache": { - "version": "7.14.1", + "node_modules/node-gyp/node_modules/glob": { + "version": "7.2.3", "dev": true, "license": "ISC", - "engines": { - "node": ">=12" + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/pacote/node_modules/npm-package-arg": { - "version": "9.1.2", + "node_modules/node-gyp/node_modules/lru-cache": { + "version": "6.0.0", "dev": true, "license": "ISC", "dependencies": { - "hosted-git-info": "^5.0.0", - "proc-log": "^2.0.1", - "semver": "^7.3.5", - "validate-npm-package-name": "^4.0.0" + "yallist": "^4.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=10" } }, - "node_modules/pacote/node_modules/semver": { - "version": "7.3.8", + "node_modules/node-gyp/node_modules/nopt": { + "version": "6.0.0", "dev": true, "license": "ISC", "dependencies": { - "lru-cache": "^6.0.0" + "abbrev": "^1.0.0" }, "bin": { - "semver": "bin/semver.js" + "nopt": "bin/nopt.js" }, "engines": { - "node": ">=10" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/pacote/node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", + "node_modules/node-gyp/node_modules/semver": { + "version": "7.3.8", "dev": true, "license": "ISC", "dependencies": { - "yallist": "^4.0.0" + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" }, "engines": { "node": ">=10" } }, - "node_modules/pacote/node_modules/yallist": { + "node_modules/node-gyp/node_modules/yallist": { "version": "4.0.0", "dev": true, "license": "ISC" }, - "node_modules/paho-mqtt": { - "version": "1.1.0", - "license": "EPL-1.0" + "node_modules/node-int64": { + "version": "0.4.0", + "license": "MIT", + "peer": true }, - "node_modules/pako": { - "version": "2.0.4", - "license": "(MIT AND Zlib)" + "node_modules/node-releases": { + "version": "2.0.8", + "license": "MIT", + "peer": true }, - "node_modules/parent-module": { - "version": "1.0.1", - "dev": true, + "node_modules/node-stream-zip": { + "version": "1.15.0", "license": "MIT", - "dependencies": { - "callsites": "^3.0.0" - }, + "peer": true, "engines": { - "node": ">=6" + "node": ">=0.12.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/antelle" } }, - "node_modules/parse-conflict-json": { - "version": "2.0.2", + "node_modules/nopt": { + "version": "5.0.0", "dev": true, "license": "ISC", "dependencies": { - "json-parse-even-better-errors": "^2.3.1", - "just-diff": "^5.0.1", - "just-diff-apply": "^5.2.0" + "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=6" } }, - "node_modules/parse-json": { - "version": "5.2.0", + "node_modules/normalize-package-data": { + "version": "3.0.3", "dev": true, - "license": "MIT", + "license": "BSD-2-Clause", "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=10" } }, - "node_modules/parse-path": { - "version": "7.0.0", + "node_modules/normalize-package-data/node_modules/lru-cache": { + "version": "6.0.0", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "protocols": "^2.0.0" + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" } }, - "node_modules/parse-url": { - "version": "8.1.0", + "node_modules/normalize-package-data/node_modules/semver": { + "version": "7.3.8", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "parse-path": "^7.0.0" - } - }, - "node_modules/parseurl": { - "version": "1.3.3", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/pascalcase": { - "version": "0.1.1", - "license": "MIT", - "peer": true, + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, "engines": { - "node": ">=0.10.0" + "node": ">=10" } }, - "node_modules/path-exists": { + "node_modules/normalize-package-data/node_modules/yallist": { "version": "4.0.0", - "license": "MIT", - "engines": { - "node": ">=8" - } + "dev": true, + "license": "ISC" }, - "node_modules/path-is-absolute": { - "version": "1.0.1", + "node_modules/normalize-path": { + "version": "3.0.0", "license": "MIT", "engines": { "node": ">=0.10.0" } }, - "node_modules/path-key": { - "version": "3.1.1", + "node_modules/npm-bundled": { + "version": "1.1.2", "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" + "license": "ISC", + "dependencies": { + "npm-normalize-package-bin": "^1.0.1" } }, - "node_modules/path-parse": { - "version": "1.0.7", - "license": "MIT" - }, - "node_modules/path-type": { - "version": "4.0.0", + "node_modules/npm-install-checks": { + "version": "5.0.0", "dev": true, - "license": "MIT", + "license": "BSD-2-Clause", + "dependencies": { + "semver": "^7.1.1" + }, "engines": { - "node": ">=8" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/pathe": { - "version": "0.2.0", - "dev": true, - "license": "MIT" - }, - "node_modules/pathval": { - "version": "1.1.1", + "node_modules/npm-install-checks/node_modules/lru-cache": { + "version": "6.0.0", "dev": true, - "license": "MIT", - "engines": { - "node": "*" - } - }, - "node_modules/picocolors": { - "version": "1.0.0", - "license": "ISC" - }, - "node_modules/picomatch": { - "version": "2.3.1", - "license": "MIT", - "engines": { - "node": ">=8.6" + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pify": { - "version": "5.0.0", - "dev": true, - "license": "MIT", "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/pirates": { - "version": "4.0.5", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 6" } }, - "node_modules/pkg-dir": { - "version": "4.2.0", + "node_modules/npm-install-checks/node_modules/semver": { + "version": "7.3.8", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "find-up": "^4.0.0" + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/pkg-types": { + "node_modules/npm-install-checks/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/npm-normalize-package-bin": { "version": "1.0.1", "dev": true, - "license": "MIT", + "license": "ISC" + }, + "node_modules/npm-package-arg": { + "version": "8.1.1", + "dev": true, + "license": "ISC", "dependencies": { - "jsonc-parser": "^3.2.0", - "mlly": "^1.0.0", - "pathe": "^1.0.0" + "hosted-git-info": "^3.0.6", + "semver": "^7.0.0", + "validate-npm-package-name": "^3.0.0" + }, + "engines": { + "node": ">=10" } }, - "node_modules/pkg-types/node_modules/pathe": { - "version": "1.0.0", + "node_modules/npm-package-arg/node_modules/builtins": { + "version": "1.0.3", "dev": true, "license": "MIT" }, - "node_modules/posix-character-classes": { - "version": "0.1.1", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss": { - "version": "8.4.20", + "node_modules/npm-package-arg/node_modules/hosted-git-info": { + "version": "3.0.8", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - } - ], - "license": "MIT", + "license": "ISC", "dependencies": { - "nanoid": "^3.3.4", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" + "lru-cache": "^6.0.0" }, "engines": { - "node": "^10 || ^12 || >=14" + "node": ">=10" } }, - "node_modules/pretty-format": { - "version": "26.6.2", - "license": "MIT", - "peer": true, + "node_modules/npm-package-arg/node_modules/lru-cache": { + "version": "6.0.0", + "dev": true, + "license": "ISC", "dependencies": { - "@jest/types": "^26.6.2", - "ansi-regex": "^5.0.0", - "ansi-styles": "^4.0.0", - "react-is": "^17.0.1" + "yallist": "^4.0.0" }, "engines": { - "node": ">= 10" + "node": ">=10" } }, - "node_modules/pretty-format/node_modules/@jest/types": { - "version": "26.6.2", - "license": "MIT", - "peer": true, + "node_modules/npm-package-arg/node_modules/semver": { + "version": "7.3.8", + "dev": true, + "license": "ISC", "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^15.0.0", - "chalk": "^4.0.0" + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">= 10.14.2" + "node": ">=10" } }, - "node_modules/pretty-format/node_modules/@types/yargs": { - "version": "15.0.14", - "license": "MIT", - "peer": true, + "node_modules/npm-package-arg/node_modules/validate-npm-package-name": { + "version": "3.0.0", + "dev": true, + "license": "ISC", "dependencies": { - "@types/yargs-parser": "*" + "builtins": "^1.0.3" } }, - "node_modules/pretty-format/node_modules/ansi-styles": { - "version": "4.3.0", - "license": "MIT", - "peer": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } + "node_modules/npm-package-arg/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" }, - "node_modules/pretty-format/node_modules/chalk": { - "version": "4.1.2", - "license": "MIT", - "peer": true, + "node_modules/npm-packlist": { + "version": "5.1.3", + "dev": true, + "license": "ISC", "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "glob": "^8.0.1", + "ignore-walk": "^5.0.1", + "npm-bundled": "^2.0.0", + "npm-normalize-package-bin": "^2.0.0" }, - "engines": { - "node": ">=10" + "bin": { + "npm-packlist": "bin/index.js" }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/pretty-format/node_modules/color-convert": { + "node_modules/npm-packlist/node_modules/npm-bundled": { "version": "2.0.1", - "license": "MIT", - "peer": true, + "dev": true, + "license": "ISC", "dependencies": { - "color-name": "~1.1.4" + "npm-normalize-package-bin": "^2.0.0" }, "engines": { - "node": ">=7.0.0" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/pretty-format/node_modules/color-name": { - "version": "1.1.4", - "license": "MIT", - "peer": true - }, - "node_modules/pretty-format/node_modules/has-flag": { - "version": "4.0.0", - "license": "MIT", - "peer": true, + "node_modules/npm-packlist/node_modules/npm-normalize-package-bin": { + "version": "2.0.0", + "dev": true, + "license": "ISC", "engines": { - "node": ">=8" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/pretty-format/node_modules/supports-color": { - "version": "7.2.0", - "license": "MIT", - "peer": true, + "node_modules/npm-pick-manifest": { + "version": "7.0.2", + "dev": true, + "license": "ISC", "dependencies": { - "has-flag": "^4.0.0" + "npm-install-checks": "^5.0.0", + "npm-normalize-package-bin": "^2.0.0", + "npm-package-arg": "^9.0.0", + "semver": "^7.3.5" }, "engines": { - "node": ">=8" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/proc-log": { - "version": "2.0.1", + "node_modules/npm-pick-manifest/node_modules/hosted-git-info": { + "version": "5.2.1", "dev": true, "license": "ISC", + "dependencies": { + "lru-cache": "^7.5.1" + }, "engines": { "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "license": "MIT" - }, - "node_modules/promise": { - "version": "8.3.0", - "license": "MIT", - "peer": true, - "dependencies": { - "asap": "~2.0.6" - } - }, - "node_modules/promise-all-reject-late": { - "version": "1.0.1", + "node_modules/npm-pick-manifest/node_modules/lru-cache": { + "version": "7.14.1", "dev": true, "license": "ISC", - "funding": { - "url": "https://github.com/sponsors/isaacs" + "engines": { + "node": ">=12" } }, - "node_modules/promise-call-limit": { - "version": "1.0.1", + "node_modules/npm-pick-manifest/node_modules/npm-normalize-package-bin": { + "version": "2.0.0", "dev": true, "license": "ISC", - "funding": { - "url": "https://github.com/sponsors/isaacs" + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/promise-inflight": { - "version": "1.0.1", - "dev": true, - "license": "ISC" - }, - "node_modules/promise-retry": { - "version": "2.0.1", + "node_modules/npm-pick-manifest/node_modules/npm-package-arg": { + "version": "9.1.2", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "err-code": "^2.0.2", - "retry": "^0.12.0" + "hosted-git-info": "^5.0.0", + "proc-log": "^2.0.1", + "semver": "^7.3.5", + "validate-npm-package-name": "^4.0.0" }, "engines": { - "node": ">=10" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/prompts": { - "version": "2.4.2", - "license": "MIT", - "peer": true, + "node_modules/npm-pick-manifest/node_modules/semver": { + "version": "7.3.8", + "dev": true, + "license": "ISC", "dependencies": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">= 6" + "node": ">=10" } }, - "node_modules/promzard": { - "version": "0.3.0", + "node_modules/npm-pick-manifest/node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", "dev": true, "license": "ISC", "dependencies": { - "read": "1" + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" } }, - "node_modules/proto-list": { - "version": "1.2.4", + "node_modules/npm-pick-manifest/node_modules/yallist": { + "version": "4.0.0", "dev": true, "license": "ISC" }, - "node_modules/protocols": { - "version": "2.0.1", + "node_modules/npm-registry-fetch": { + "version": "13.3.1", "dev": true, - "license": "MIT" - }, - "node_modules/proxy-from-env": { - "version": "1.1.0", - "dev": true, - "license": "MIT" + "license": "ISC", + "dependencies": { + "make-fetch-happen": "^10.0.6", + "minipass": "^3.1.6", + "minipass-fetch": "^2.0.3", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.1.2", + "npm-package-arg": "^9.0.1", + "proc-log": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } }, - "node_modules/pump": { - "version": "3.0.0", - "license": "MIT", - "peer": true, + "node_modules/npm-registry-fetch/node_modules/hosted-git-info": { + "version": "5.2.1", + "dev": true, + "license": "ISC", "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" + "lru-cache": "^7.5.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/punycode": { - "version": "1.3.2", - "license": "MIT" + "node_modules/npm-registry-fetch/node_modules/lru-cache": { + "version": "7.14.1", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=12" + } }, - "node_modules/q": { - "version": "1.5.1", + "node_modules/npm-registry-fetch/node_modules/npm-package-arg": { + "version": "9.1.2", "dev": true, - "license": "MIT", + "license": "ISC", + "dependencies": { + "hosted-git-info": "^5.0.0", + "proc-log": "^2.0.1", + "semver": "^7.3.5", + "validate-npm-package-name": "^4.0.0" + }, "engines": { - "node": ">=0.6.0", - "teleport": ">=0.2.0" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/qrcode-terminal": { - "version": "0.12.0", + "node_modules/npm-registry-fetch/node_modules/semver": { + "version": "7.3.8", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, "bin": { - "qrcode-terminal": "bin/qrcode-terminal.js" + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "node_modules/querystring": { - "version": "0.2.0", + "node_modules/npm-registry-fetch/node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, "engines": { - "node": ">=0.4.x" + "node": ">=10" } }, - "node_modules/queue-microtask": { - "version": "1.2.3", + "node_modules/npm-registry-fetch/node_modules/yallist": { + "version": "4.0.0", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" + "license": "ISC" }, - "node_modules/quick-lru": { + "node_modules/npm-run-path": { "version": "4.0.1", + "dev": true, "license": "MIT", + "dependencies": { + "path-key": "^3.0.0" + }, "engines": { "node": ">=8" } }, - "node_modules/ramda": { - "version": "0.28.0", - "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/ramda" - } - }, - "node_modules/range-parser": { - "version": "1.2.1", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/react": { - "version": "18.1.0", - "license": "MIT", - "peer": true, + "node_modules/npmlog": { + "version": "6.0.2", + "dev": true, + "license": "ISC", "dependencies": { - "loose-envify": "^1.1.0" + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.3", + "set-blocking": "^2.0.0" }, "engines": { - "node": ">=0.10.0" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/react-devtools-core": { - "version": "4.24.0", + "node_modules/nullthrows": { + "version": "1.1.1", "license": "MIT", - "peer": true, - "dependencies": { - "shell-quote": "^1.6.1", - "ws": "^7" - } + "peer": true }, - "node_modules/react-devtools-core/node_modules/ws": { - "version": "7.5.9", + "node_modules/nx": { + "version": "15.4.2", + "dev": true, + "hasInstallScript": true, "license": "MIT", - "peer": true, - "engines": { - "node": ">=8.3.0" + "dependencies": { + "@nrwl/cli": "15.4.2", + "@nrwl/tao": "15.4.2", + "@parcel/watcher": "2.0.4", + "@yarnpkg/lockfile": "^1.1.0", + "@yarnpkg/parsers": "^3.0.0-rc.18", + "@zkochan/js-yaml": "0.0.6", + "axios": "^1.0.0", + "chalk": "4.1.0", + "chokidar": "^3.5.1", + "cli-cursor": "3.1.0", + "cli-spinners": "2.6.1", + "cliui": "^7.0.2", + "dotenv": "~10.0.0", + "enquirer": "~2.3.6", + "fast-glob": "3.2.7", + "figures": "3.2.0", + "flat": "^5.0.2", + "fs-extra": "^10.1.0", + "glob": "7.1.4", + "ignore": "^5.0.4", + "js-yaml": "4.1.0", + "jsonc-parser": "3.2.0", + "minimatch": "3.0.5", + "npm-run-path": "^4.0.1", + "open": "^8.4.0", + "semver": "7.3.4", + "string-width": "^4.2.3", + "strong-log-transformer": "^2.1.0", + "tar-stream": "~2.2.0", + "tmp": "~0.2.1", + "tsconfig-paths": "^3.9.0", + "tslib": "^2.3.0", + "v8-compile-cache": "2.3.0", + "yargs": "^17.6.2", + "yargs-parser": "21.1.1" + }, + "bin": { + "nx": "bin/nx.js" }, "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" + "@swc-node/register": "^1.4.2", + "@swc/core": "^1.2.173" }, "peerDependenciesMeta": { - "bufferutil": { + "@swc-node/register": { "optional": true }, - "utf-8-validate": { + "@swc/core": { "optional": true } } }, - "node_modules/react-is": { - "version": "17.0.2", - "license": "MIT" - }, - "node_modules/react-native": { - "version": "0.70.6", + "node_modules/nx/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@jest/create-cache-key-function": "^27.0.1", - "@react-native-community/cli": "9.3.2", - "@react-native-community/cli-platform-android": "9.3.1", - "@react-native-community/cli-platform-ios": "9.3.0", - "@react-native/assets": "1.0.0", - "@react-native/normalize-color": "2.0.0", - "@react-native/polyfills": "2.0.0", - "abort-controller": "^3.0.0", - "anser": "^1.4.9", - "base64-js": "^1.1.2", - "event-target-shim": "^5.0.1", - "invariant": "^2.2.4", - "jsc-android": "^250230.2.1", - "memoize-one": "^5.0.0", - "metro-react-native-babel-transformer": "0.72.3", - "metro-runtime": "0.72.3", - "metro-source-map": "0.72.3", - "mkdirp": "^0.5.1", - "nullthrows": "^1.1.1", - "pretty-format": "^26.5.2", - "promise": "^8.3.0", - "react-devtools-core": "4.24.0", - "react-native-codegen": "^0.70.6", - "react-native-gradle-plugin": "^0.70.3", - "react-refresh": "^0.4.0", - "react-shallow-renderer": "^16.15.0", - "regenerator-runtime": "^0.13.2", - "scheduler": "^0.22.0", - "stacktrace-parser": "^0.1.3", - "use-sync-external-store": "^1.0.0", - "whatwg-fetch": "^3.0.0", - "ws": "^6.1.4" - }, - "bin": { - "react-native": "cli.js" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=14" + "node": ">=8" }, - "peerDependencies": { - "react": "18.1.0" + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/react-native-codegen": { - "version": "0.70.6", - "license": "MIT", - "peer": true, - "dependencies": { - "@babel/parser": "^7.14.0", - "flow-parser": "^0.121.0", - "jscodeshift": "^0.13.1", - "nullthrows": "^1.1.1" - } + "node_modules/nx/node_modules/argparse": { + "version": "2.0.1", + "dev": true, + "license": "Python-2.0" }, - "node_modules/react-native-get-random-values": { - "version": "1.8.0", + "node_modules/nx/node_modules/axios": { + "version": "1.2.1", + "dev": true, "license": "MIT", "dependencies": { - "fast-base64-decode": "^1.0.0" - }, - "peerDependencies": { - "react-native": ">=0.56" + "follow-redirects": "^1.15.0", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" } }, - "node_modules/react-native-gradle-plugin": { - "version": "0.70.3", - "license": "MIT", - "peer": true - }, - "node_modules/react-native/node_modules/mkdirp": { - "version": "0.5.6", + "node_modules/nx/node_modules/chalk": { + "version": "4.1.0", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "minimist": "^1.2.6" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/react-refresh": { - "version": "0.4.3", - "license": "MIT", - "peer": true, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-shallow-renderer": { - "version": "16.15.0", - "license": "MIT", - "peer": true, - "dependencies": { - "object-assign": "^4.1.1", - "react-is": "^16.12.0 || ^17.0.0 || ^18.0.0" + "node": ">=10" }, - "peerDependencies": { - "react": "^16.0.0 || ^17.0.0 || ^18.0.0" + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/read": { - "version": "1.0.7", + "node_modules/nx/node_modules/color-convert": { + "version": "2.0.1", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "mute-stream": "~0.0.4" + "color-name": "~1.1.4" }, "engines": { - "node": ">=0.8" + "node": ">=7.0.0" } }, - "node_modules/read-cmd-shim": { - "version": "3.0.1", + "node_modules/nx/node_modules/color-name": { + "version": "1.1.4", "dev": true, - "license": "ISC", - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } + "license": "MIT" }, - "node_modules/read-package-json": { - "version": "5.0.2", + "node_modules/nx/node_modules/fast-glob": { + "version": "3.2.7", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "glob": "^8.0.1", - "json-parse-even-better-errors": "^2.3.1", - "normalize-package-data": "^4.0.0", - "npm-normalize-package-bin": "^2.0.0" + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=8" } }, - "node_modules/read-package-json-fast": { - "version": "2.0.3", + "node_modules/nx/node_modules/fs-extra": { + "version": "10.1.0", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "json-parse-even-better-errors": "^2.3.0", - "npm-normalize-package-bin": "^1.0.1" + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" }, "engines": { - "node": ">=10" + "node": ">=12" } }, - "node_modules/read-package-json/node_modules/hosted-git-info": { - "version": "5.2.1", + "node_modules/nx/node_modules/glob": { + "version": "7.1.4", "dev": true, "license": "ISC", "dependencies": { - "lru-cache": "^7.5.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "*" } }, - "node_modules/read-package-json/node_modules/lru-cache": { - "version": "7.14.1", + "node_modules/nx/node_modules/has-flag": { + "version": "4.0.0", "dev": true, - "license": "ISC", + "license": "MIT", "engines": { - "node": ">=12" + "node": ">=8" } }, - "node_modules/read-package-json/node_modules/normalize-package-data": { - "version": "4.0.1", + "node_modules/nx/node_modules/js-yaml": { + "version": "4.1.0", "dev": true, - "license": "BSD-2-Clause", + "license": "MIT", "dependencies": { - "hosted-git-info": "^5.0.0", - "is-core-module": "^2.8.1", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" + "argparse": "^2.0.1" }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/read-package-json/node_modules/npm-normalize-package-bin": { - "version": "2.0.0", + "node_modules/nx/node_modules/lru-cache": { + "version": "6.0.0", "dev": true, "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=10" } }, - "node_modules/read-package-json/node_modules/semver": { - "version": "7.3.8", + "node_modules/nx/node_modules/minimatch": { + "version": "3.0.5", "dev": true, "license": "ISC", "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=10" + "node": "*" } }, - "node_modules/read-package-json/node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", + "node_modules/nx/node_modules/semver": { + "version": "7.3.4", "dev": true, "license": "ISC", "dependencies": { - "yallist": "^4.0.0" + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" }, "engines": { "node": ">=10" } }, - "node_modules/read-package-json/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/read-pkg": { - "version": "3.0.0", + "node_modules/nx/node_modules/supports-color": { + "version": "7.2.0", "dev": true, "license": "MIT", "dependencies": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/read-pkg-up": { - "version": "3.0.0", + "node_modules/nx/node_modules/tmp": { + "version": "0.2.1", "dev": true, "license": "MIT", "dependencies": { - "find-up": "^2.0.0", - "read-pkg": "^3.0.0" + "rimraf": "^3.0.0" }, "engines": { - "node": ">=4" + "node": ">=8.17.0" } }, - "node_modules/read-pkg-up/node_modules/find-up": { - "version": "2.1.0", + "node_modules/nx/node_modules/yallist": { + "version": "4.0.0", "dev": true, - "license": "MIT", - "dependencies": { - "locate-path": "^2.0.0" - }, - "engines": { - "node": ">=4" - } + "license": "ISC" }, - "node_modules/read-pkg-up/node_modules/locate-path": { - "version": "2.0.0", + "node_modules/nx/node_modules/yargs": { + "version": "17.6.2", "dev": true, "license": "MIT", "dependencies": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" }, "engines": { - "node": ">=4" + "node": ">=12" } }, - "node_modules/read-pkg-up/node_modules/p-limit": { - "version": "1.3.0", + "node_modules/nx/node_modules/yargs-parser": { + "version": "21.1.1", "dev": true, - "license": "MIT", - "dependencies": { - "p-try": "^1.0.0" - }, + "license": "ISC", "engines": { - "node": ">=4" + "node": ">=12" } }, - "node_modules/read-pkg-up/node_modules/p-locate": { - "version": "2.0.0", + "node_modules/nx/node_modules/yargs/node_modules/cliui": { + "version": "8.0.1", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "p-limit": "^1.1.0" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" }, "engines": { - "node": ">=4" + "node": ">=12" } }, - "node_modules/read-pkg-up/node_modules/p-try": { - "version": "1.0.0", - "dev": true, + "node_modules/ob1": { + "version": "0.72.3", "license": "MIT", - "engines": { - "node": ">=4" - } + "peer": true }, - "node_modules/read-pkg-up/node_modules/path-exists": { - "version": "3.0.0", - "dev": true, + "node_modules/object-assign": { + "version": "4.1.1", "license": "MIT", + "peer": true, "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/read-pkg/node_modules/hosted-git-info": { - "version": "2.8.9", - "dev": true, - "license": "ISC" - }, - "node_modules/read-pkg/node_modules/load-json-file": { - "version": "4.0.0", - "dev": true, + "node_modules/object-copy": { + "version": "0.1.0", "license": "MIT", + "peer": true, "dependencies": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" }, "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/read-pkg/node_modules/normalize-package-data": { - "version": "2.5.0", - "dev": true, - "license": "BSD-2-Clause", + "node_modules/object-copy/node_modules/define-property": { + "version": "0.2.5", + "license": "MIT", + "peer": true, "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/read-pkg/node_modules/parse-json": { - "version": "4.0.0", - "dev": true, + "node_modules/object-copy/node_modules/is-accessor-descriptor": { + "version": "0.1.6", "license": "MIT", + "peer": true, "dependencies": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" + "kind-of": "^3.0.2" }, "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/read-pkg/node_modules/path-type": { - "version": "3.0.0", - "dev": true, + "node_modules/object-copy/node_modules/is-data-descriptor": { + "version": "0.1.4", "license": "MIT", + "peer": true, "dependencies": { - "pify": "^3.0.0" + "kind-of": "^3.0.2" }, "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/read-pkg/node_modules/pify": { - "version": "3.0.0", - "dev": true, + "node_modules/object-copy/node_modules/is-descriptor": { + "version": "0.1.6", "license": "MIT", + "peer": true, + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, "engines": { - "node": ">=4" - } - }, - "node_modules/read-pkg/node_modules/semver": { - "version": "5.7.1", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver" + "node": ">=0.10.0" } }, - "node_modules/read-pkg/node_modules/strip-bom": { - "version": "3.0.0", - "dev": true, + "node_modules/object-copy/node_modules/is-descriptor/node_modules/kind-of": { + "version": "5.1.0", "license": "MIT", + "peer": true, "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/readable-stream": { - "version": "3.6.0", + "node_modules/object-copy/node_modules/kind-of": { + "version": "3.2.2", "license": "MIT", + "peer": true, "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "is-buffer": "^1.1.5" }, "engines": { - "node": ">= 6" + "node": ">=0.10.0" } }, - "node_modules/readdir-glob": { - "version": "1.1.2", - "license": "Apache-2.0", + "node_modules/object-visit": { + "version": "1.0.1", + "license": "MIT", + "peer": true, "dependencies": { - "minimatch": "^5.1.0" + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/readdir-glob/node_modules/brace-expansion": { - "version": "2.0.1", + "node_modules/object.pick": { + "version": "1.3.0", "license": "MIT", + "peer": true, "dependencies": { - "balanced-match": "^1.0.0" + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/readdir-glob/node_modules/minimatch": { - "version": "5.1.2", - "license": "ISC", + "node_modules/on-finished": { + "version": "2.3.0", + "license": "MIT", + "peer": true, "dependencies": { - "brace-expansion": "^2.0.1" + "ee-first": "1.1.1" }, "engines": { - "node": ">=10" + "node": ">= 0.8" } }, - "node_modules/readdir-scoped-modules": { - "version": "1.1.0", - "dev": true, + "node_modules/on-headers": { + "version": "1.0.2", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", "license": "ISC", "dependencies": { - "debuglog": "^1.0.1", - "dezalgo": "^1.0.0", - "graceful-fs": "^4.1.2", - "once": "^1.3.0" + "wrappy": "1" } }, - "node_modules/readdirp": { - "version": "3.6.0", - "dev": true, + "node_modules/onetime": { + "version": "5.1.2", "license": "MIT", "dependencies": { - "picomatch": "^2.2.1" + "mimic-fn": "^2.1.0" }, "engines": { - "node": ">=8.10.0" + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/readline": { - "version": "1.3.0", - "license": "BSD", - "peer": true - }, - "node_modules/recast": { - "version": "0.20.5", + "node_modules/open": { + "version": "8.4.0", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "ast-types": "0.14.2", - "esprima": "~4.0.0", - "source-map": "~0.6.1", - "tslib": "^2.0.1" + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" }, "engines": { - "node": ">= 4" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/redent": { - "version": "3.0.0", - "dev": true, + "node_modules/ora": { + "version": "5.4.1", "license": "MIT", "dependencies": { - "indent-string": "^4.0.0", - "strip-indent": "^3.0.0" + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/regenerate": { - "version": "1.4.2", - "license": "MIT", - "peer": true - }, - "node_modules/regenerate-unicode-properties": { - "version": "10.1.0", + "node_modules/ora/node_modules/ansi-styles": { + "version": "4.3.0", "license": "MIT", - "peer": true, "dependencies": { - "regenerate": "^1.4.2" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=4" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/regenerator-runtime": { - "version": "0.13.11", - "license": "MIT", - "peer": true - }, - "node_modules/regenerator-transform": { - "version": "0.15.1", + "node_modules/ora/node_modules/chalk": { + "version": "4.1.2", "license": "MIT", - "peer": true, "dependencies": { - "@babel/runtime": "^7.8.4" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/regex-not": { - "version": "1.0.2", + "node_modules/ora/node_modules/color-convert": { + "version": "2.0.1", "license": "MIT", - "peer": true, "dependencies": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" + "color-name": "~1.1.4" }, "engines": { - "node": ">=0.10.0" + "node": ">=7.0.0" } }, - "node_modules/regexpu-core": { - "version": "5.2.2", + "node_modules/ora/node_modules/color-name": { + "version": "1.1.4", + "license": "MIT" + }, + "node_modules/ora/node_modules/has-flag": { + "version": "4.0.0", "license": "MIT", - "peer": true, - "dependencies": { - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.1.0", - "regjsgen": "^0.7.1", - "regjsparser": "^0.9.1", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.1.0" - }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/regjsgen": { - "version": "0.7.1", + "node_modules/ora/node_modules/supports-color": { + "version": "7.2.0", "license": "MIT", - "peer": true - }, - "node_modules/regjsparser": { - "version": "0.9.1", - "license": "BSD-2-Clause", - "peer": true, "dependencies": { - "jsesc": "~0.5.0" + "has-flag": "^4.0.0" }, - "bin": { - "regjsparser": "bin/parser" - } - }, - "node_modules/regjsparser/node_modules/jsesc": { - "version": "0.5.0", - "peer": true, - "bin": { - "jsesc": "bin/jsesc" + "engines": { + "node": ">=8" } }, - "node_modules/repeat-element": { - "version": "1.1.4", + "node_modules/os-tmpdir": { + "version": "1.0.2", "license": "MIT", - "peer": true, "engines": { "node": ">=0.10.0" } }, - "node_modules/repeat-string": { - "version": "1.6.1", + "node_modules/p-finally": { + "version": "1.0.0", "license": "MIT", - "peer": true, "engines": { - "node": ">=0.10" + "node": ">=4" } }, - "node_modules/require-directory": { - "version": "2.1.1", + "node_modules/p-limit": { + "version": "2.3.0", "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/require-main-filename": { - "version": "2.0.0", - "license": "ISC", - "peer": true - }, - "node_modules/resolve": { - "version": "1.22.1", + "node_modules/p-locate": { + "version": "4.1.0", "license": "MIT", "dependencies": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" + "p-limit": "^2.2.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=8" } }, - "node_modules/resolve-cwd": { - "version": "3.0.0", + "node_modules/p-map": { + "version": "4.0.0", "dev": true, "license": "MIT", "dependencies": { - "resolve-from": "^5.0.0" + "aggregate-error": "^3.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/resolve-from": { - "version": "5.0.0", + "node_modules/p-map-series": { + "version": "2.1.0", "dev": true, "license": "MIT", "engines": { "node": ">=8" } }, - "node_modules/resolve-url": { - "version": "0.2.1", + "node_modules/p-pipe": { + "version": "3.1.0", + "dev": true, "license": "MIT", - "peer": true + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "node_modules/restore-cursor": { - "version": "3.1.0", + "node_modules/p-queue": { + "version": "6.6.2", + "dev": true, "license": "MIT", "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" + "eventemitter3": "^4.0.4", + "p-timeout": "^3.2.0" }, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ret": { - "version": "0.1.15", + "node_modules/p-reduce": { + "version": "2.1.0", + "dev": true, "license": "MIT", - "peer": true, "engines": { - "node": ">=0.12" + "node": ">=8" } }, - "node_modules/retry": { - "version": "0.12.0", + "node_modules/p-timeout": { + "version": "3.2.0", "dev": true, "license": "MIT", + "dependencies": { + "p-finally": "^1.0.0" + }, "engines": { - "node": ">= 4" + "node": ">=8" } }, - "node_modules/reusify": { - "version": "1.0.4", - "dev": true, + "node_modules/p-try": { + "version": "2.2.0", "license": "MIT", "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" + "node": ">=6" } }, - "node_modules/rimraf": { - "version": "3.0.2", + "node_modules/p-waterfall": { + "version": "2.1.1", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "glob": "^7.1.3" + "p-reduce": "^2.0.0" }, - "bin": { - "rimraf": "bin.js" + "engines": { + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/rimraf/node_modules/glob": { - "version": "7.2.3", + "node_modules/pacote": { + "version": "13.6.2", "dev": true, "license": "ISC", "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "@npmcli/git": "^3.0.0", + "@npmcli/installed-package-contents": "^1.0.7", + "@npmcli/promise-spawn": "^3.0.0", + "@npmcli/run-script": "^4.1.0", + "cacache": "^16.0.0", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", + "infer-owner": "^1.0.4", + "minipass": "^3.1.6", + "mkdirp": "^1.0.4", + "npm-package-arg": "^9.0.0", + "npm-packlist": "^5.1.0", + "npm-pick-manifest": "^7.0.0", + "npm-registry-fetch": "^13.0.1", + "proc-log": "^2.0.0", + "promise-retry": "^2.0.1", + "read-package-json": "^5.0.0", + "read-package-json-fast": "^2.0.3", + "rimraf": "^3.0.2", + "ssri": "^9.0.0", + "tar": "^6.1.11" }, - "engines": { - "node": "*" + "bin": { + "pacote": "lib/bin.js" }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/rollup": { - "version": "3.9.1", + "node_modules/pacote/node_modules/hosted-git-info": { + "version": "5.2.1", "dev": true, - "license": "MIT", - "bin": { - "rollup": "dist/bin/rollup" + "license": "ISC", + "dependencies": { + "lru-cache": "^7.5.1" }, "engines": { - "node": ">=14.18.0", - "npm": ">=8.0.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/run-async": { - "version": "2.4.1", - "license": "MIT", + "node_modules/pacote/node_modules/lru-cache": { + "version": "7.14.1", + "dev": true, + "license": "ISC", "engines": { - "node": ">=0.12.0" + "node": ">=12" } }, - "node_modules/run-parallel": { - "version": "1.2.0", + "node_modules/pacote/node_modules/npm-package-arg": { + "version": "9.1.2", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", + "license": "ISC", "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/rxjs": { - "version": "7.8.0", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.1.0" - } - }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" - }, - "node_modules/safe-regex": { - "version": "1.1.0", - "license": "MIT", - "peer": true, - "dependencies": { - "ret": "~0.1.10" - } - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "license": "MIT" - }, - "node_modules/scheduler": { - "version": "0.22.0", - "license": "MIT", - "peer": true, - "dependencies": { - "loose-envify": "^1.1.0" + "hosted-git-info": "^5.0.0", + "proc-log": "^2.0.1", + "semver": "^7.3.5", + "validate-npm-package-name": "^4.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/semver": { - "version": "6.3.0", + "node_modules/pacote/node_modules/semver": { + "version": "7.3.8", + "dev": true, "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, "bin": { "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "node_modules/send": { - "version": "0.18.0", - "license": "MIT", - "peer": true, + "node_modules/pacote/node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "dev": true, + "license": "ISC", "dependencies": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" + "yallist": "^4.0.0" }, "engines": { - "node": ">= 0.8.0" + "node": ">=10" } }, - "node_modules/send/node_modules/debug": { - "version": "2.6.9", - "license": "MIT", - "peer": true, - "dependencies": { - "ms": "2.0.0" - } + "node_modules/pacote/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" }, - "node_modules/send/node_modules/debug/node_modules/ms": { - "version": "2.0.0", - "license": "MIT", - "peer": true + "node_modules/paho-mqtt": { + "version": "1.1.0", + "license": "EPL-1.0" }, - "node_modules/send/node_modules/depd": { - "version": "2.0.0", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8" - } + "node_modules/pako": { + "version": "2.0.4", + "license": "(MIT AND Zlib)" }, - "node_modules/send/node_modules/mime": { - "version": "1.6.0", + "node_modules/parent-module": { + "version": "1.0.1", + "dev": true, "license": "MIT", - "peer": true, - "bin": { - "mime": "cli.js" + "dependencies": { + "callsites": "^3.0.0" }, "engines": { - "node": ">=4" + "node": ">=6" } }, - "node_modules/send/node_modules/ms": { - "version": "2.1.3", - "license": "MIT", - "peer": true - }, - "node_modules/send/node_modules/on-finished": { - "version": "2.4.1", - "license": "MIT", - "peer": true, + "node_modules/parse-conflict-json": { + "version": "2.0.2", + "dev": true, + "license": "ISC", "dependencies": { - "ee-first": "1.1.1" + "json-parse-even-better-errors": "^2.3.1", + "just-diff": "^5.0.1", + "just-diff-apply": "^5.2.0" }, "engines": { - "node": ">= 0.8" - } - }, - "node_modules/send/node_modules/statuses": { - "version": "2.0.1", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/serialize-error": { - "version": "2.1.0", + "node_modules/parse-json": { + "version": "5.2.0", + "dev": true, "license": "MIT", - "peer": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, "engines": { - "node": ">=0.10.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/serve-static": { - "version": "1.15.0", + "node_modules/parse-path": { + "version": "7.0.0", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - }, - "engines": { - "node": ">= 0.8.0" + "protocols": "^2.0.0" } }, - "node_modules/set-blocking": { - "version": "2.0.0", - "license": "ISC" - }, - "node_modules/set-value": { - "version": "2.0.1", + "node_modules/parse-url": { + "version": "8.1.0", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" + "parse-path": "^7.0.0" } }, - "node_modules/set-value/node_modules/extend-shallow": { - "version": "2.0.1", + "node_modules/parseurl": { + "version": "1.3.3", "license": "MIT", "peer": true, - "dependencies": { - "is-extendable": "^0.1.0" - }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.8" } }, - "node_modules/set-value/node_modules/is-extendable": { + "node_modules/pascalcase": { "version": "0.1.1", "license": "MIT", "peer": true, @@ -35081,763 +36421,744 @@ "node": ">=0.10.0" } }, - "node_modules/set-value/node_modules/is-plain-object": { - "version": "2.0.4", + "node_modules/path-exists": { + "version": "4.0.0", "license": "MIT", - "peer": true, - "dependencies": { - "isobject": "^3.0.1" - }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/setprototypeof": { - "version": "1.2.0", - "license": "ISC", - "peer": true - }, - "node_modules/shallow-clone": { - "version": "3.0.1", + "node_modules/path-is-absolute": { + "version": "1.0.1", "license": "MIT", - "dependencies": { - "kind-of": "^6.0.2" - }, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/shebang-command": { - "version": "2.0.0", + "node_modules/path-key": { + "version": "3.1.1", "dev": true, "license": "MIT", - "dependencies": { - "shebang-regex": "^3.0.0" - }, "engines": { "node": ">=8" } }, - "node_modules/shebang-regex": { - "version": "3.0.0", + "node_modules/path-parse": { + "version": "1.0.7", + "license": "MIT" + }, + "node_modules/path-type": { + "version": "4.0.0", "dev": true, "license": "MIT", "engines": { "node": ">=8" } }, - "node_modules/shell-quote": { - "version": "1.7.4", + "node_modules/pathe": { + "version": "0.2.0", + "dev": true, + "license": "MIT" + }, + "node_modules/pathval": { + "version": "1.1.1", + "dev": true, "license": "MIT", - "peer": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": "*" } }, - "node_modules/siginfo": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz", - "integrity": "sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==", - "dev": true - }, - "node_modules/signal-exit": { - "version": "3.0.7", + "node_modules/picocolors": { + "version": "1.0.0", "license": "ISC" }, - "node_modules/sisteransi": { - "version": "1.0.5", - "license": "MIT", - "peer": true - }, - "node_modules/slash": { - "version": "3.0.0", + "node_modules/picomatch": { + "version": "2.3.1", "license": "MIT", "engines": { - "node": ">=8" + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/slice-ansi": { - "version": "2.1.0", + "node_modules/pify": { + "version": "5.0.0", + "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "ansi-styles": "^3.2.0", - "astral-regex": "^1.0.0", - "is-fullwidth-code-point": "^2.0.0" - }, "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/slice-ansi/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", + "node_modules/pirates": { + "version": "4.0.5", "license": "MIT", "peer": true, "engines": { - "node": ">=4" + "node": ">= 6" } }, - "node_modules/smart-buffer": { + "node_modules/pkg-dir": { "version": "4.2.0", "dev": true, "license": "MIT", - "engines": { - "node": ">= 6.0.0", - "npm": ">= 3.0.0" - } - }, - "node_modules/snapdragon": { - "version": "0.8.2", - "license": "MIT", - "peer": true, "dependencies": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" + "find-up": "^4.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/snapdragon-node": { - "version": "2.1.1", + "node_modules/pkg-types": { + "version": "1.0.1", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" + "jsonc-parser": "^3.2.0", + "mlly": "^1.0.0", + "pathe": "^1.0.0" } }, - "node_modules/snapdragon-node/node_modules/define-property": { + "node_modules/pkg-types/node_modules/pathe": { "version": "1.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/posix-character-classes": { + "version": "0.1.1", "license": "MIT", "peer": true, - "dependencies": { - "is-descriptor": "^1.0.0" - }, "engines": { "node": ">=0.10.0" } }, - "node_modules/snapdragon-util": { - "version": "3.0.1", + "node_modules/postcss": { + "version": "8.4.20", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + } + ], "license": "MIT", - "peer": true, "dependencies": { - "kind-of": "^3.2.0" + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" }, "engines": { - "node": ">=0.10.0" + "node": "^10 || ^12 || >=14" } }, - "node_modules/snapdragon-util/node_modules/kind-of": { - "version": "3.2.2", + "node_modules/pretty-format": { + "version": "26.6.2", "license": "MIT", "peer": true, "dependencies": { - "is-buffer": "^1.1.5" + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/debug": { - "version": "2.6.9", - "license": "MIT", - "peer": true, - "dependencies": { - "ms": "2.0.0" + "node": ">= 10" } }, - "node_modules/snapdragon/node_modules/define-property": { - "version": "0.2.5", + "node_modules/pretty-format/node_modules/@jest/types": { + "version": "26.6.2", "license": "MIT", "peer": true, "dependencies": { - "is-descriptor": "^0.1.0" + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">= 10.14.2" } }, - "node_modules/snapdragon/node_modules/extend-shallow": { - "version": "2.0.1", + "node_modules/pretty-format/node_modules/@types/yargs": { + "version": "15.0.14", "license": "MIT", "peer": true, "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" + "@types/yargs-parser": "*" } }, - "node_modules/snapdragon/node_modules/is-accessor-descriptor": { - "version": "0.1.6", + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "4.3.0", "license": "MIT", "peer": true, "dependencies": { - "kind-of": "^3.0.2" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/snapdragon/node_modules/is-accessor-descriptor/node_modules/kind-of": { - "version": "3.2.2", + "node_modules/pretty-format/node_modules/chalk": { + "version": "4.1.2", "license": "MIT", "peer": true, "dependencies": { - "is-buffer": "^1.1.5" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/snapdragon/node_modules/is-data-descriptor": { - "version": "0.1.4", + "node_modules/pretty-format/node_modules/color-convert": { + "version": "2.0.1", "license": "MIT", "peer": true, "dependencies": { - "kind-of": "^3.0.2" + "color-name": "~1.1.4" }, "engines": { - "node": ">=0.10.0" + "node": ">=7.0.0" } }, - "node_modules/snapdragon/node_modules/is-data-descriptor/node_modules/kind-of": { - "version": "3.2.2", + "node_modules/pretty-format/node_modules/color-name": { + "version": "1.1.4", + "license": "MIT", + "peer": true + }, + "node_modules/pretty-format/node_modules/has-flag": { + "version": "4.0.0", "license": "MIT", "peer": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/snapdragon/node_modules/is-descriptor": { - "version": "0.1.6", + "node_modules/pretty-format/node_modules/supports-color": { + "version": "7.2.0", "license": "MIT", "peer": true, "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/snapdragon/node_modules/is-extendable": { - "version": "0.1.1", - "license": "MIT", - "peer": true, + "node_modules/proc-log": { + "version": "2.0.1", + "dev": true, + "license": "ISC", "engines": { - "node": ">=0.10.0" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/snapdragon/node_modules/kind-of": { - "version": "5.1.0", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" - } + "node_modules/process-nextick-args": { + "version": "2.0.1", + "license": "MIT" }, - "node_modules/snapdragon/node_modules/ms": { - "version": "2.0.0", + "node_modules/promise": { + "version": "8.3.0", "license": "MIT", - "peer": true - }, - "node_modules/snapdragon/node_modules/source-map": { - "version": "0.5.7", - "license": "BSD-3-Clause", "peer": true, - "engines": { - "node": ">=0.10.0" + "dependencies": { + "asap": "~2.0.6" } }, - "node_modules/socks": { - "version": "2.7.1", + "node_modules/promise-all-reject-late": { + "version": "1.0.1", "dev": true, - "license": "MIT", - "dependencies": { - "ip": "^2.0.0", - "smart-buffer": "^4.2.0" - }, - "engines": { - "node": ">= 10.13.0", - "npm": ">= 3.0.0" - } - }, - "node_modules/socks-proxy-agent": { - "version": "7.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "agent-base": "^6.0.2", - "debug": "^4.3.3", - "socks": "^2.6.2" - }, - "engines": { - "node": ">= 10" + "license": "ISC", + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/sort-keys": { - "version": "4.2.0", + "node_modules/promise-call-limit": { + "version": "1.0.1", "dev": true, - "license": "MIT", - "dependencies": { - "is-plain-obj": "^2.0.0" - }, - "engines": { - "node": ">=8" - }, + "license": "ISC", "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/sort-keys/node_modules/is-plain-obj": { - "version": "2.1.0", + "node_modules/promise-inflight": { + "version": "1.0.1", "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/source-map": { - "version": "0.6.1", - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } + "license": "ISC" }, - "node_modules/source-map-js": { - "version": "1.0.2", + "node_modules/promise-retry": { + "version": "2.0.1", "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-resolve": { - "version": "0.5.3", "license": "MIT", - "peer": true, "dependencies": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" } }, - "node_modules/source-map-support": { - "version": "0.5.21", + "node_modules/prompts": { + "version": "2.4.2", "license": "MIT", + "peer": true, "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" } }, - "node_modules/source-map-url": { - "version": "0.4.1", - "license": "MIT", - "peer": true - }, - "node_modules/spdx-correct": { - "version": "3.1.1", + "node_modules/promzard": { + "version": "0.3.0", "dev": true, - "license": "Apache-2.0", + "license": "ISC", "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" + "read": "1" } }, - "node_modules/spdx-exceptions": { - "version": "2.3.0", + "node_modules/proto-list": { + "version": "1.2.4", "dev": true, - "license": "CC-BY-3.0" + "license": "ISC" }, - "node_modules/spdx-expression-parse": { - "version": "3.0.1", + "node_modules/protocols": { + "version": "2.0.1", "dev": true, - "license": "MIT", - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } + "license": "MIT" }, - "node_modules/spdx-license-ids": { - "version": "3.0.12", + "node_modules/proxy-from-env": { + "version": "1.1.0", "dev": true, - "license": "CC0-1.0" + "license": "MIT" }, - "node_modules/split": { - "version": "1.0.1", - "dev": true, + "node_modules/pump": { + "version": "3.0.0", "license": "MIT", + "peer": true, "dependencies": { - "through": "2" - }, - "engines": { - "node": "*" + "end-of-stream": "^1.1.0", + "once": "^1.3.1" } }, - "node_modules/split-string": { - "version": "3.1.0", + "node_modules/punycode": { + "version": "1.3.2", + "license": "MIT" + }, + "node_modules/q": { + "version": "1.5.1", + "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "extend-shallow": "^3.0.0" - }, "engines": { - "node": ">=0.10.0" + "node": ">=0.6.0", + "teleport": ">=0.2.0" } }, - "node_modules/split2": { - "version": "3.2.2", - "dev": true, - "license": "ISC", - "dependencies": { - "readable-stream": "^3.0.0" + "node_modules/qrcode-terminal": { + "version": "0.12.0", + "bin": { + "qrcode-terminal": "bin/qrcode-terminal.js" } }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "license": "BSD-3-Clause" - }, - "node_modules/ssri": { - "version": "9.0.1", - "dev": true, - "license": "ISC", - "dependencies": { - "minipass": "^3.1.1" - }, + "node_modules/querystring": { + "version": "0.2.0", "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=0.4.x" } }, - "node_modules/stackback": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/stackback/-/stackback-0.0.2.tgz", - "integrity": "sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==", - "dev": true + "node_modules/queue-microtask": { + "version": "1.2.3", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" }, - "node_modules/stackframe": { - "version": "1.3.4", + "node_modules/quick-lru": { + "version": "4.0.1", "license": "MIT", - "peer": true + "engines": { + "node": ">=8" + } }, - "node_modules/stacktrace-parser": { - "version": "0.1.10", + "node_modules/ramda": { + "version": "0.28.0", "license": "MIT", - "peer": true, - "dependencies": { - "type-fest": "^0.7.1" - }, - "engines": { - "node": ">=6" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/ramda" } }, - "node_modules/stacktrace-parser/node_modules/type-fest": { - "version": "0.7.1", - "license": "(MIT OR CC0-1.0)", + "node_modules/range-parser": { + "version": "1.2.1", + "license": "MIT", "peer": true, "engines": { - "node": ">=8" + "node": ">= 0.6" } }, - "node_modules/static-extend": { - "version": "0.1.2", + "node_modules/react": { + "version": "18.1.0", "license": "MIT", "peer": true, "dependencies": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" + "loose-envify": "^1.1.0" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/static-extend/node_modules/define-property": { - "version": "0.2.5", + "node_modules/react-devtools-core": { + "version": "4.24.0", "license": "MIT", "peer": true, "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" + "shell-quote": "^1.6.1", + "ws": "^7" } }, - "node_modules/static-extend/node_modules/is-accessor-descriptor": { - "version": "0.1.6", + "node_modules/react-devtools-core/node_modules/ws": { + "version": "7.5.9", "license": "MIT", "peer": true, - "dependencies": { - "kind-of": "^3.0.2" - }, "engines": { - "node": ">=0.10.0" + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } } }, - "node_modules/static-extend/node_modules/is-accessor-descriptor/node_modules/kind-of": { - "version": "3.2.2", + "node_modules/react-is": { + "version": "17.0.2", + "license": "MIT" + }, + "node_modules/react-native": { + "version": "0.70.6", "license": "MIT", "peer": true, "dependencies": { - "is-buffer": "^1.1.5" + "@jest/create-cache-key-function": "^27.0.1", + "@react-native-community/cli": "9.3.2", + "@react-native-community/cli-platform-android": "9.3.1", + "@react-native-community/cli-platform-ios": "9.3.0", + "@react-native/assets": "1.0.0", + "@react-native/normalize-color": "2.0.0", + "@react-native/polyfills": "2.0.0", + "abort-controller": "^3.0.0", + "anser": "^1.4.9", + "base64-js": "^1.1.2", + "event-target-shim": "^5.0.1", + "invariant": "^2.2.4", + "jsc-android": "^250230.2.1", + "memoize-one": "^5.0.0", + "metro-react-native-babel-transformer": "0.72.3", + "metro-runtime": "0.72.3", + "metro-source-map": "0.72.3", + "mkdirp": "^0.5.1", + "nullthrows": "^1.1.1", + "pretty-format": "^26.5.2", + "promise": "^8.3.0", + "react-devtools-core": "4.24.0", + "react-native-codegen": "^0.70.6", + "react-native-gradle-plugin": "^0.70.3", + "react-refresh": "^0.4.0", + "react-shallow-renderer": "^16.15.0", + "regenerator-runtime": "^0.13.2", + "scheduler": "^0.22.0", + "stacktrace-parser": "^0.1.3", + "use-sync-external-store": "^1.0.0", + "whatwg-fetch": "^3.0.0", + "ws": "^6.1.4" + }, + "bin": { + "react-native": "cli.js" }, "engines": { - "node": ">=0.10.0" + "node": ">=14" + }, + "peerDependencies": { + "react": "18.1.0" } }, - "node_modules/static-extend/node_modules/is-data-descriptor": { - "version": "0.1.4", + "node_modules/react-native-codegen": { + "version": "0.70.6", "license": "MIT", "peer": true, "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" + "@babel/parser": "^7.14.0", + "flow-parser": "^0.121.0", + "jscodeshift": "^0.13.1", + "nullthrows": "^1.1.1" } }, - "node_modules/static-extend/node_modules/is-data-descriptor/node_modules/kind-of": { - "version": "3.2.2", + "node_modules/react-native-get-random-values": { + "version": "1.8.0", "license": "MIT", - "peer": true, "dependencies": { - "is-buffer": "^1.1.5" + "fast-base64-decode": "^1.0.0" }, - "engines": { - "node": ">=0.10.0" + "peerDependencies": { + "react-native": ">=0.56" } }, - "node_modules/static-extend/node_modules/is-descriptor": { - "version": "0.1.6", + "node_modules/react-native-gradle-plugin": { + "version": "0.70.3", + "license": "MIT", + "peer": true + }, + "node_modules/react-native/node_modules/mkdirp": { + "version": "0.5.6", "license": "MIT", "peer": true, "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" + "minimist": "^1.2.6" }, - "engines": { - "node": ">=0.10.0" + "bin": { + "mkdirp": "bin/cmd.js" } }, - "node_modules/static-extend/node_modules/kind-of": { - "version": "5.1.0", + "node_modules/react-refresh": { + "version": "0.4.3", "license": "MIT", "peer": true, "engines": { "node": ">=0.10.0" } }, - "node_modules/statuses": { - "version": "1.5.0", + "node_modules/react-shallow-renderer": { + "version": "16.15.0", "license": "MIT", "peer": true, + "dependencies": { + "object-assign": "^4.1.1", + "react-is": "^16.12.0 || ^17.0.0 || ^18.0.0" + }, + "peerDependencies": { + "react": "^16.0.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/read": { + "version": "1.0.7", + "dev": true, + "license": "ISC", + "dependencies": { + "mute-stream": "~0.0.4" + }, "engines": { - "node": ">= 0.6" + "node": ">=0.8" } }, - "node_modules/std-env": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.3.1.tgz", - "integrity": "sha512-3H20QlwQsSm2OvAxWIYhs+j01MzzqwMwGiiO1NQaJYZgJZFPuAbf95/DiKRBSTYIJ2FeGUc+B/6mPGcWP9dO3Q==", - "dev": true + "node_modules/read-cmd-shim": { + "version": "3.0.1", + "dev": true, + "license": "ISC", + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } }, - "node_modules/string_decoder": { - "version": "1.3.0", - "license": "MIT", + "node_modules/read-package-json": { + "version": "5.0.2", + "dev": true, + "license": "ISC", "dependencies": { - "safe-buffer": "~5.2.0" + "glob": "^8.0.1", + "json-parse-even-better-errors": "^2.3.1", + "normalize-package-data": "^4.0.0", + "npm-normalize-package-bin": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/string-width": { - "version": "4.2.3", - "license": "MIT", + "node_modules/read-package-json-fast": { + "version": "2.0.3", + "dev": true, + "license": "ISC", "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "json-parse-even-better-errors": "^2.3.0", + "npm-normalize-package-bin": "^1.0.1" }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "license": "MIT", + "node_modules/read-package-json/node_modules/hosted-git-info": { + "version": "5.2.1", + "dev": true, + "license": "ISC", "dependencies": { - "ansi-regex": "^5.0.1" + "lru-cache": "^7.5.1" }, "engines": { - "node": ">=8" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/strip-bom": { - "version": "4.0.0", + "node_modules/read-package-json/node_modules/lru-cache": { + "version": "7.14.1", "dev": true, - "license": "MIT", + "license": "ISC", "engines": { - "node": ">=8" + "node": ">=12" } }, - "node_modules/strip-eof": { - "version": "1.0.0", - "license": "MIT", - "peer": true, + "node_modules/read-package-json/node_modules/normalize-package-data": { + "version": "4.0.1", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "hosted-git-info": "^5.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" + }, "engines": { - "node": ">=0.10.0" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/strip-final-newline": { + "node_modules/read-package-json/node_modules/npm-normalize-package-bin": { "version": "2.0.0", "dev": true, - "license": "MIT", + "license": "ISC", "engines": { - "node": ">=6" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/strip-indent": { - "version": "3.0.0", + "node_modules/read-package-json/node_modules/semver": { + "version": "7.3.8", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "min-indent": "^1.0.0" + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/strip-literal": { - "version": "1.0.0", + "node_modules/read-package-json/node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "acorn": "^8.8.1" + "yallist": "^4.0.0" }, - "funding": { - "url": "https://github.com/sponsors/antfu" + "engines": { + "node": ">=10" } }, - "node_modules/strnum": { - "version": "1.0.5", - "license": "MIT" + "node_modules/read-package-json/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" }, - "node_modules/strong-log-transformer": { - "version": "2.1.0", + "node_modules/read-pkg": { + "version": "3.0.0", "dev": true, - "license": "Apache-2.0", + "license": "MIT", "dependencies": { - "duplexer": "^0.1.1", - "minimist": "^1.2.0", - "through": "^2.3.4" - }, - "bin": { - "sl-log-transformer": "bin/sl-log-transformer.js" + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" }, "engines": { "node": ">=4" } }, - "node_modules/sudo-prompt": { - "version": "9.2.1", - "license": "MIT", - "peer": true - }, - "node_modules/supports-color": { - "version": "5.5.0", + "node_modules/read-pkg-up": { + "version": "3.0.0", + "dev": true, "license": "MIT", "dependencies": { - "has-flag": "^3.0.0" + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" }, "engines": { "node": ">=4" } }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/tar": { - "version": "6.1.13", + "node_modules/read-pkg-up/node_modules/find-up": { + "version": "2.1.0", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^4.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" + "locate-path": "^2.0.0" }, "engines": { - "node": ">=10" + "node": ">=4" } }, - "node_modules/tar-stream": { - "version": "2.2.0", + "node_modules/read-pkg-up/node_modules/locate-path": { + "version": "2.0.0", + "dev": true, "license": "MIT", "dependencies": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" }, "engines": { - "node": ">=6" + "node": ">=4" } }, - "node_modules/tar/node_modules/minipass": { - "version": "4.0.0", + "node_modules/read-pkg-up/node_modules/p-limit": { + "version": "1.3.0", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "yallist": "^4.0.0" + "p-try": "^1.0.0" }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/tar/node_modules/yallist": { - "version": "4.0.0", + "node_modules/read-pkg-up/node_modules/p-locate": { + "version": "2.0.0", "dev": true, - "license": "ISC" - }, - "node_modules/temp": { - "version": "0.8.3", - "engines": [ - "node >=0.8.0" - ], "license": "MIT", - "peer": true, "dependencies": { - "os-tmpdir": "^1.0.0", - "rimraf": "~2.2.6" + "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" } }, - "node_modules/temp-dir": { + "node_modules/read-pkg-up/node_modules/p-try": { "version": "1.0.0", "dev": true, "license": "MIT", @@ -35845,1441 +37166,2903 @@ "node": ">=4" } }, - "node_modules/temp/node_modules/rimraf": { - "version": "2.2.8", - "license": "MIT", - "peer": true, - "bin": { - "rimraf": "bin.js" - } - }, - "node_modules/text-extensions": { - "version": "1.9.0", + "node_modules/read-pkg-up/node_modules/path-exists": { + "version": "3.0.0", "dev": true, "license": "MIT", "engines": { - "node": ">=0.10" + "node": ">=4" } }, - "node_modules/throat": { - "version": "5.0.0", - "license": "MIT", - "peer": true - }, - "node_modules/through": { - "version": "2.3.8", - "license": "MIT" + "node_modules/read-pkg/node_modules/hosted-git-info": { + "version": "2.8.9", + "dev": true, + "license": "ISC" }, - "node_modules/through2": { - "version": "4.0.2", + "node_modules/read-pkg/node_modules/load-json-file": { + "version": "4.0.0", "dev": true, "license": "MIT", "dependencies": { - "readable-stream": "3" + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, - "node_modules/tinybench": { - "version": "2.3.1", - "dev": true, - "license": "MIT" - }, - "node_modules/tinypool": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-0.3.1.tgz", - "integrity": "sha512-zLA1ZXlstbU2rlpA4CIeVaqvWq41MTWqLY3FfsAXgC8+f7Pk7zroaJQxDgxn1xNudKW6Kmj4808rPFShUlIRmQ==", + "node_modules/read-pkg/node_modules/normalize-package-data": { + "version": "2.5.0", "dev": true, - "engines": { - "node": ">=14.0.0" + "license": "BSD-2-Clause", + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" } }, - "node_modules/tinyspy": { - "version": "1.0.2", + "node_modules/read-pkg/node_modules/parse-json": { + "version": "4.0.0", "dev": true, "license": "MIT", + "dependencies": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + }, "engines": { - "node": ">=14.0.0" + "node": ">=4" } }, - "node_modules/tmp": { - "version": "0.0.33", + "node_modules/read-pkg/node_modules/path-type": { + "version": "3.0.0", + "dev": true, "license": "MIT", "dependencies": { - "os-tmpdir": "~1.0.2" + "pify": "^3.0.0" }, "engines": { - "node": ">=0.6.0" + "node": ">=4" } }, - "node_modules/tmpl": { - "version": "1.0.5", - "license": "BSD-3-Clause", - "peer": true - }, - "node_modules/to-fast-properties": { - "version": "2.0.0", + "node_modules/read-pkg/node_modules/pify": { + "version": "3.0.0", + "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=4" } }, - "node_modules/to-object-path": { - "version": "0.3.0", - "license": "MIT", - "peer": true, - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" + "node_modules/read-pkg/node_modules/semver": { + "version": "5.7.1", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" } }, - "node_modules/to-object-path/node_modules/kind-of": { - "version": "3.2.2", + "node_modules/read-pkg/node_modules/strip-bom": { + "version": "3.0.0", + "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/to-regex": { - "version": "3.0.2", + "node_modules/readable-stream": { + "version": "3.6.0", "license": "MIT", - "peer": true, "dependencies": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">= 6" } }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "license": "MIT", + "node_modules/readdir-glob": { + "version": "1.1.2", + "license": "Apache-2.0", "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" + "minimatch": "^5.1.0" } }, - "node_modules/toidentifier": { - "version": "1.0.1", + "node_modules/readdir-glob/node_modules/brace-expansion": { + "version": "2.0.1", "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.6" + "dependencies": { + "balanced-match": "^1.0.0" } }, - "node_modules/tr46": { - "version": "0.0.3", - "license": "MIT" - }, - "node_modules/treeverse": { - "version": "2.0.0", - "dev": true, + "node_modules/readdir-glob/node_modules/minimatch": { + "version": "5.1.2", "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/trim-newlines": { - "version": "3.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/ts-toolbelt": { - "version": "6.15.5", - "dev": true, - "license": "Apache-2.0" - }, - "node_modules/tsconfig-paths": { - "version": "3.14.1", + "node_modules/readdir-scoped-modules": { + "version": "1.1.0", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "@types/json5": "^0.0.29", - "json5": "^1.0.1", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" + "debuglog": "^1.0.1", + "dezalgo": "^1.0.0", + "graceful-fs": "^4.1.2", + "once": "^1.3.0" } }, - "node_modules/tsconfig-paths/node_modules/json5": { - "version": "1.0.2", + "node_modules/readdirp": { + "version": "3.6.0", "dev": true, "license": "MIT", "dependencies": { - "minimist": "^1.2.0" + "picomatch": "^2.2.1" }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/tsconfig-paths/node_modules/strip-bom": { - "version": "3.0.0", - "dev": true, - "license": "MIT", "engines": { - "node": ">=4" + "node": ">=8.10.0" } }, - "node_modules/tslib": { - "version": "2.4.1", - "license": "0BSD" + "node_modules/readline": { + "version": "1.3.0", + "license": "BSD", + "peer": true }, - "node_modules/type-detect": { - "version": "4.0.8", - "dev": true, + "node_modules/recast": { + "version": "0.20.5", "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/type-fest": { - "version": "0.21.3", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=10" + "peer": true, + "dependencies": { + "ast-types": "0.14.2", + "esprima": "~4.0.0", + "source-map": "~0.6.1", + "tslib": "^2.0.1" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">= 4" } }, - "node_modules/typedarray": { - "version": "0.0.6", - "dev": true, - "license": "MIT" - }, - "node_modules/typedarray-to-buffer": { - "version": "3.1.5", + "node_modules/redent": { + "version": "3.0.0", "dev": true, "license": "MIT", "dependencies": { - "is-typedarray": "^1.0.0" - } - }, - "node_modules/typescript": { - "version": "4.9.4", - "dev": true, - "license": "Apache-2.0", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" }, "engines": { - "node": ">=4.2.0" + "node": ">=8" } }, - "node_modules/ufo": { - "version": "1.0.1", - "dev": true, - "license": "MIT" + "node_modules/regenerate": { + "version": "1.4.2", + "license": "MIT", + "peer": true }, - "node_modules/uglify-es": { - "version": "3.3.9", - "license": "BSD-2-Clause", + "node_modules/regenerate-unicode-properties": { + "version": "10.1.0", + "license": "MIT", "peer": true, "dependencies": { - "commander": "~2.13.0", - "source-map": "~0.6.1" - }, - "bin": { - "uglifyjs": "bin/uglifyjs" + "regenerate": "^1.4.2" }, "engines": { - "node": ">=0.8.0" + "node": ">=4" } }, - "node_modules/uglify-es/node_modules/commander": { - "version": "2.13.0", + "node_modules/regenerator-runtime": { + "version": "0.13.11", "license": "MIT", "peer": true }, - "node_modules/uglify-js": { - "version": "3.17.4", - "dev": true, - "license": "BSD-2-Clause", - "optional": true, - "bin": { - "uglifyjs": "bin/uglifyjs" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/ulid": { - "version": "2.3.0", + "node_modules/regenerator-transform": { + "version": "0.15.1", "license": "MIT", - "bin": { - "ulid": "bin/cli.js" + "peer": true, + "dependencies": { + "@babel/runtime": "^7.8.4" } }, - "node_modules/unfetch": { - "version": "4.2.0", - "license": "MIT" - }, - "node_modules/unicode-canonical-property-names-ecmascript": { - "version": "2.0.0", + "node_modules/regex-not": { + "version": "1.0.2", "license": "MIT", "peer": true, + "dependencies": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + }, "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/unicode-match-property-ecmascript": { - "version": "2.0.0", + "node_modules/regexpu-core": { + "version": "5.2.2", "license": "MIT", "peer": true, "dependencies": { - "unicode-canonical-property-names-ecmascript": "^2.0.0", - "unicode-property-aliases-ecmascript": "^2.0.0" + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsgen": "^0.7.1", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" }, "engines": { "node": ">=4" } }, - "node_modules/unicode-match-property-value-ecmascript": { - "version": "2.1.0", + "node_modules/regjsgen": { + "version": "0.7.1", "license": "MIT", + "peer": true + }, + "node_modules/regjsparser": { + "version": "0.9.1", + "license": "BSD-2-Clause", "peer": true, - "engines": { - "node": ">=4" + "dependencies": { + "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" } }, - "node_modules/unicode-property-aliases-ecmascript": { - "version": "2.1.0", - "license": "MIT", + "node_modules/regjsparser/node_modules/jsesc": { + "version": "0.5.0", "peer": true, - "engines": { - "node": ">=4" + "bin": { + "jsesc": "bin/jsesc" } }, - "node_modules/union-value": { - "version": "1.0.1", + "node_modules/repeat-element": { + "version": "1.1.4", "license": "MIT", "peer": true, - "dependencies": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^2.0.1" - }, "engines": { "node": ">=0.10.0" } }, - "node_modules/union-value/node_modules/is-extendable": { - "version": "0.1.1", + "node_modules/repeat-string": { + "version": "1.6.1", "license": "MIT", "peer": true, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "license": "MIT", "engines": { "node": ">=0.10.0" } }, - "node_modules/unique-filename": { - "version": "2.0.1", - "dev": true, + "node_modules/require-main-filename": { + "version": "2.0.0", "license": "ISC", + "peer": true + }, + "node_modules/resolve": { + "version": "1.22.1", + "license": "MIT", "dependencies": { - "unique-slug": "^3.0.0" + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/unique-slug": { + "node_modules/resolve-cwd": { "version": "3.0.0", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "imurmurhash": "^0.1.4" + "resolve-from": "^5.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/universal-cookie": { - "version": "4.0.4", - "license": "MIT", - "dependencies": { - "@types/cookie": "^0.3.3", - "cookie": "^0.4.0" + "node": ">=8" } }, - "node_modules/universal-user-agent": { - "version": "6.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/universalify": { - "version": "2.0.0", + "node_modules/resolve-from": { + "version": "5.0.0", "dev": true, "license": "MIT", "engines": { - "node": ">= 10.0.0" + "node": ">=8" } }, - "node_modules/unpipe": { - "version": "1.0.0", + "node_modules/resolve-url": { + "version": "0.2.1", "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8" - } + "peer": true }, - "node_modules/unset-value": { - "version": "1.0.0", + "node_modules/restore-cursor": { + "version": "3.1.0", "license": "MIT", - "peer": true, "dependencies": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/unset-value/node_modules/has-value": { - "version": "0.3.1", + "node_modules/ret": { + "version": "0.1.15", "license": "MIT", "peer": true, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/retry": { + "version": "0.12.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "dev": true, + "license": "ISC", "dependencies": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/glob": { + "version": "7.2.3", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, "engines": { - "node": ">=0.10.0" + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/unset-value/node_modules/has-value/node_modules/isobject": { - "version": "2.1.0", + "node_modules/rollup": { + "version": "3.9.1", + "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "isarray": "1.0.0" + "bin": { + "rollup": "dist/bin/rollup" }, "engines": { - "node": ">=0.10.0" + "node": ">=14.18.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" } }, - "node_modules/unset-value/node_modules/has-values": { - "version": "0.1.4", + "node_modules/run-async": { + "version": "2.4.1", "license": "MIT", - "peer": true, "engines": { - "node": ">=0.10.0" + "node": ">=0.12.0" } }, - "node_modules/upath": { - "version": "2.0.1", + "node_modules/run-parallel": { + "version": "1.2.0", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "license": "MIT", - "engines": { - "node": ">=4", - "yarn": "*" + "dependencies": { + "queue-microtask": "^1.2.2" } }, - "node_modules/update-browserslist-db": { - "version": "1.0.10", + "node_modules/rxjs": { + "version": "7.8.0", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", "funding": [ { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" + "type": "github", + "url": "https://github.com/sponsors/feross" }, { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" } ], + "license": "MIT" + }, + "node_modules/safe-regex": { + "version": "1.1.0", "license": "MIT", "peer": true, "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - }, - "bin": { - "browserslist-lint": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" + "ret": "~0.1.10" } }, - "node_modules/urix": { - "version": "0.1.0", - "license": "MIT", - "peer": true + "node_modules/safer-buffer": { + "version": "2.1.2", + "license": "MIT" }, - "node_modules/url": { - "version": "0.11.0", + "node_modules/scheduler": { + "version": "0.22.0", "license": "MIT", + "peer": true, "dependencies": { - "punycode": "1.3.2", - "querystring": "0.2.0" + "loose-envify": "^1.1.0" } }, - "node_modules/use": { - "version": "3.1.1", + "node_modules/semver": { + "version": "6.3.0", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/send": { + "version": "0.18.0", "license": "MIT", "peer": true, + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.8.0" } }, - "node_modules/use-sync-external-store": { - "version": "1.2.0", + "node_modules/send/node_modules/debug": { + "version": "2.6.9", "license": "MIT", "peer": true, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + "dependencies": { + "ms": "2.0.0" } }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "license": "MIT" + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "license": "MIT", + "peer": true }, - "node_modules/utils-merge": { - "version": "1.0.1", + "node_modules/send/node_modules/depd": { + "version": "2.0.0", "license": "MIT", "peer": true, "engines": { - "node": ">= 0.4.0" + "node": ">= 0.8" } }, - "node_modules/uuid": { - "version": "8.3.2", + "node_modules/send/node_modules/mime": { + "version": "1.6.0", "license": "MIT", + "peer": true, "bin": { - "uuid": "dist/bin/uuid" + "mime": "cli.js" + }, + "engines": { + "node": ">=4" } }, - "node_modules/v8-compile-cache": { - "version": "2.3.0", - "dev": true, - "license": "MIT" - }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "license": "MIT", + "peer": true }, - "node_modules/validate-npm-package-name": { - "version": "4.0.0", - "dev": true, - "license": "ISC", + "node_modules/send/node_modules/on-finished": { + "version": "2.4.1", + "license": "MIT", + "peer": true, "dependencies": { - "builtins": "^5.0.0" + "ee-first": "1.1.1" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">= 0.8" } }, - "node_modules/vary": { - "version": "1.1.2", + "node_modules/send/node_modules/statuses": { + "version": "2.0.1", "license": "MIT", "peer": true, "engines": { "node": ">= 0.8" } }, - "node_modules/vite": { - "version": "4.0.4", - "dev": true, + "node_modules/serialize-error": { + "version": "2.1.0", "license": "MIT", - "dependencies": { - "esbuild": "^0.16.3", - "postcss": "^8.4.20", - "resolve": "^1.22.1", - "rollup": "^3.7.0" - }, - "bin": { - "vite": "bin/vite.js" - }, + "peer": true, "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - }, - "peerDependencies": { - "@types/node": ">= 14", - "less": "*", - "sass": "*", - "stylus": "*", - "sugarss": "*", - "terser": "^5.4.0" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - }, - "less": { - "optional": true - }, - "sass": { - "optional": true - }, - "stylus": { - "optional": true - }, - "sugarss": { - "optional": true - }, - "terser": { - "optional": true - } + "node": ">=0.10.0" } }, - "node_modules/vite-node": { - "version": "0.26.3", - "dev": true, + "node_modules/serve-static": { + "version": "1.15.0", "license": "MIT", + "peer": true, "dependencies": { - "debug": "^4.3.4", - "mlly": "^1.0.0", - "pathe": "^0.2.0", - "source-map": "^0.6.1", - "source-map-support": "^0.5.21", - "vite": "^3.0.0 || ^4.0.0" - }, - "bin": { - "vite-node": "vite-node.mjs" + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" }, "engines": { - "node": ">=v14.16.0" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" + "node": ">= 0.8.0" } }, - "node_modules/vitest": { - "version": "0.26.3", - "dev": true, + "node_modules/set-blocking": { + "version": "2.0.0", + "license": "ISC" + }, + "node_modules/set-value": { + "version": "2.0.1", "license": "MIT", + "peer": true, "dependencies": { - "@types/chai": "^4.3.4", - "@types/chai-subset": "^1.3.3", - "@types/node": "*", - "acorn": "^8.8.1", - "acorn-walk": "^8.2.0", - "chai": "^4.3.7", - "debug": "^4.3.4", - "local-pkg": "^0.4.2", - "source-map": "^0.6.1", - "strip-literal": "^1.0.0", - "tinybench": "^2.3.1", - "tinypool": "^0.3.0", - "tinyspy": "^1.0.2", - "vite": "^3.0.0 || ^4.0.0", - "vite-node": "0.26.3" - }, - "bin": { - "vitest": "vitest.mjs" + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" }, "engines": { - "node": ">=v14.16.0" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - }, - "peerDependencies": { - "@edge-runtime/vm": "*", - "@vitest/browser": "*", - "@vitest/ui": "*", - "happy-dom": "*", - "jsdom": "*" - }, - "peerDependenciesMeta": { - "@edge-runtime/vm": { - "optional": true - }, - "@vitest/browser": { - "optional": true - }, - "@vitest/ui": { - "optional": true - }, - "happy-dom": { - "optional": true - }, - "jsdom": { - "optional": true - } + "node": ">=0.10.0" } }, - "node_modules/vlq": { - "version": "1.0.1", + "node_modules/set-value/node_modules/extend-shallow": { + "version": "2.0.1", "license": "MIT", - "peer": true - }, - "node_modules/walk-up-path": { - "version": "1.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/walker": { - "version": "1.0.8", - "license": "Apache-2.0", "peer": true, "dependencies": { - "makeerror": "1.0.12" + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/wcwidth": { - "version": "1.0.1", + "node_modules/set-value/node_modules/is-extendable": { + "version": "0.1.1", "license": "MIT", - "dependencies": { - "defaults": "^1.0.3" + "peer": true, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/webidl-conversions": { - "version": "3.0.1", - "license": "BSD-2-Clause" - }, - "node_modules/whatwg-fetch": { - "version": "3.6.2", - "license": "MIT", - "peer": true - }, - "node_modules/whatwg-url": { - "version": "5.0.0", + "node_modules/set-value/node_modules/is-plain-object": { + "version": "2.0.4", "license": "MIT", + "peer": true, "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, - "node_modules/which": { - "version": "2.0.2", - "dev": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" + "isobject": "^3.0.1" }, "engines": { - "node": ">= 8" + "node": ">=0.10.0" } }, - "node_modules/which-module": { - "version": "2.0.0", + "node_modules/setprototypeof": { + "version": "1.2.0", "license": "ISC", "peer": true }, - "node_modules/why-is-node-running": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.2.2.tgz", - "integrity": "sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA==", - "dev": true, + "node_modules/shallow-clone": { + "version": "3.0.1", + "license": "MIT", "dependencies": { - "siginfo": "^2.0.0", - "stackback": "0.0.2" - }, - "bin": { - "why-is-node-running": "cli.js" + "kind-of": "^6.0.2" }, "engines": { "node": ">=8" } }, - "node_modules/wide-align": { - "version": "1.1.5", - "dev": true, - "license": "ISC", - "dependencies": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "node_modules/wordwrap": { - "version": "1.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/wrap-ansi": { - "version": "7.0.0", + "node_modules/shebang-command": { + "version": "2.0.0", "dev": true, "license": "MIT", "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" + "shebang-regex": "^3.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + "node": ">=8" } }, - "node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "4.3.0", + "node_modules/shebang-regex": { + "version": "3.0.0", "dev": true, "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/wrap-ansi/node_modules/color-convert": { - "version": "2.0.1", - "dev": true, + "node_modules/shell-quote": { + "version": "1.7.4", "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" + "peer": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/wrap-ansi/node_modules/color-name": { - "version": "1.1.4", - "dev": true, - "license": "MIT" + "node_modules/siginfo": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz", + "integrity": "sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==", + "dev": true }, - "node_modules/wrappy": { - "version": "1.0.2", + "node_modules/signal-exit": { + "version": "3.0.7", "license": "ISC" }, - "node_modules/write-file-atomic": { - "version": "4.0.2", - "dev": true, - "license": "ISC", - "dependencies": { - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.7" - }, + "node_modules/sisteransi": { + "version": "1.0.5", + "license": "MIT", + "peer": true + }, + "node_modules/slash": { + "version": "3.0.0", + "license": "MIT", "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": ">=8" } }, - "node_modules/write-json-file": { - "version": "4.3.0", - "dev": true, + "node_modules/slice-ansi": { + "version": "2.1.0", "license": "MIT", + "peer": true, "dependencies": { - "detect-indent": "^6.0.0", - "graceful-fs": "^4.1.15", - "is-plain-obj": "^2.0.0", - "make-dir": "^3.0.0", - "sort-keys": "^4.0.0", - "write-file-atomic": "^3.0.0" + "ansi-styles": "^3.2.0", + "astral-regex": "^1.0.0", + "is-fullwidth-code-point": "^2.0.0" }, "engines": { - "node": ">=8.3" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=6" } }, - "node_modules/write-json-file/node_modules/is-plain-obj": { - "version": "2.1.0", - "dev": true, + "node_modules/slice-ansi/node_modules/is-fullwidth-code-point": { + "version": "2.0.0", "license": "MIT", + "peer": true, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/write-json-file/node_modules/write-file-atomic": { - "version": "3.0.3", + "node_modules/smart-buffer": { + "version": "4.2.0", "dev": true, - "license": "ISC", + "license": "MIT", + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/snapdragon": { + "version": "0.8.2", + "license": "MIT", + "peer": true, "dependencies": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/write-pkg": { - "version": "4.0.0", - "dev": true, + "node_modules/snapdragon-node": { + "version": "2.1.1", "license": "MIT", + "peer": true, "dependencies": { - "sort-keys": "^2.0.0", - "type-fest": "^0.4.1", - "write-json-file": "^3.2.0" + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" }, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/write-pkg/node_modules/detect-indent": { - "version": "5.0.0", - "dev": true, + "node_modules/snapdragon-node/node_modules/define-property": { + "version": "1.0.0", "license": "MIT", + "peer": true, + "dependencies": { + "is-descriptor": "^1.0.0" + }, "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/write-pkg/node_modules/make-dir": { - "version": "2.1.0", - "dev": true, + "node_modules/snapdragon-util": { + "version": "3.0.1", "license": "MIT", + "peer": true, "dependencies": { - "pify": "^4.0.1", - "semver": "^5.6.0" + "kind-of": "^3.2.0" }, "engines": { - "node": ">=6" + "node": ">=0.10.0" } }, - "node_modules/write-pkg/node_modules/pify": { - "version": "4.0.1", - "dev": true, + "node_modules/snapdragon-util/node_modules/kind-of": { + "version": "3.2.2", "license": "MIT", + "peer": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, "engines": { - "node": ">=6" + "node": ">=0.10.0" } }, - "node_modules/write-pkg/node_modules/semver": { - "version": "5.7.1", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver" + "node_modules/snapdragon/node_modules/debug": { + "version": "2.6.9", + "license": "MIT", + "peer": true, + "dependencies": { + "ms": "2.0.0" } }, - "node_modules/write-pkg/node_modules/sort-keys": { - "version": "2.0.0", - "dev": true, + "node_modules/snapdragon/node_modules/define-property": { + "version": "0.2.5", "license": "MIT", + "peer": true, "dependencies": { - "is-plain-obj": "^1.0.0" + "is-descriptor": "^0.1.0" }, "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/write-pkg/node_modules/type-fest": { - "version": "0.4.1", - "dev": true, - "license": "(MIT OR CC0-1.0)", + "node_modules/snapdragon/node_modules/extend-shallow": { + "version": "2.0.1", + "license": "MIT", + "peer": true, + "dependencies": { + "is-extendable": "^0.1.0" + }, "engines": { - "node": ">=6" + "node": ">=0.10.0" } }, - "node_modules/write-pkg/node_modules/write-file-atomic": { - "version": "2.4.3", - "dev": true, - "license": "ISC", + "node_modules/snapdragon/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "license": "MIT", + "peer": true, "dependencies": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/write-pkg/node_modules/write-json-file": { - "version": "3.2.0", - "dev": true, + "node_modules/snapdragon/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", "license": "MIT", + "peer": true, "dependencies": { - "detect-indent": "^5.0.0", - "graceful-fs": "^4.1.15", - "make-dir": "^2.1.0", - "pify": "^4.0.1", - "sort-keys": "^2.0.0", - "write-file-atomic": "^2.4.2" + "is-buffer": "^1.1.5" }, "engines": { - "node": ">=6" + "node": ">=0.10.0" } }, - "node_modules/ws": { - "version": "6.2.2", + "node_modules/snapdragon/node_modules/is-data-descriptor": { + "version": "0.1.4", "license": "MIT", "peer": true, "dependencies": { - "async-limiter": "~1.0.0" + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/xtend": { - "version": "4.0.2", + "node_modules/snapdragon/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "license": "MIT", + "peer": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-descriptor": { + "version": "0.1.6", "license": "MIT", + "peer": true, + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, "engines": { - "node": ">=0.4" + "node": ">=0.10.0" } }, - "node_modules/y18n": { - "version": "5.0.8", - "dev": true, - "license": "ISC", + "node_modules/snapdragon/node_modules/is-extendable": { + "version": "0.1.1", + "license": "MIT", + "peer": true, "engines": { - "node": ">=10" + "node": ">=0.10.0" } }, - "node_modules/yallist": { - "version": "3.1.1", - "license": "ISC", + "node_modules/snapdragon/node_modules/kind-of": { + "version": "5.1.0", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/ms": { + "version": "2.0.0", + "license": "MIT", "peer": true }, - "node_modules/yaml": { - "version": "1.10.2", - "dev": true, - "license": "ISC", + "node_modules/snapdragon/node_modules/source-map": { + "version": "0.5.7", + "license": "BSD-3-Clause", + "peer": true, "engines": { - "node": ">= 6" + "node": ">=0.10.0" } }, - "node_modules/yargs": { - "version": "16.2.0", + "node_modules/socks": { + "version": "2.7.1", "dev": true, "license": "MIT", "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" + "ip": "^2.0.0", + "smart-buffer": "^4.2.0" }, "engines": { - "node": ">=10" + "node": ">= 10.13.0", + "npm": ">= 3.0.0" } }, - "node_modules/yargs-parser": { - "version": "20.2.4", + "node_modules/socks-proxy-agent": { + "version": "7.0.0", "dev": true, - "license": "ISC", + "license": "MIT", + "dependencies": { + "agent-base": "^6.0.2", + "debug": "^4.3.3", + "socks": "^2.6.2" + }, "engines": { - "node": ">=10" + "node": ">= 10" } }, - "node_modules/yocto-queue": { - "version": "0.1.0", + "node_modules/sort-keys": { + "version": "4.2.0", + "dev": true, "license": "MIT", - "peer": true, + "dependencies": { + "is-plain-obj": "^2.0.0" + }, "engines": { - "node": ">=10" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/zen-observable": { - "version": "0.8.15", - "license": "MIT" + "node_modules/sort-keys/node_modules/is-plain-obj": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "node_modules/zen-observable-ts": { - "version": "0.8.19", + "node_modules/source-map": { + "version": "0.6.1", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-resolve": { + "version": "0.5.3", "license": "MIT", + "peer": true, "dependencies": { - "tslib": "^1.9.3", - "zen-observable": "^0.8.0" + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" } }, - "node_modules/zen-observable-ts/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD" + "node_modules/source-map-support": { + "version": "0.5.21", + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } }, - "node_modules/zen-push": { - "version": "0.2.1", + "node_modules/source-map-url": { + "version": "0.4.1", "license": "MIT", + "peer": true + }, + "node_modules/spdx-correct": { + "version": "3.1.1", + "dev": true, + "license": "Apache-2.0", "dependencies": { - "zen-observable": "^0.7.0" + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" } }, - "node_modules/zen-push/node_modules/zen-observable": { - "version": "0.7.1", - "license": "MIT" + "node_modules/spdx-exceptions": { + "version": "2.3.0", + "dev": true, + "license": "CC-BY-3.0" }, - "node_modules/zip-stream": { - "version": "4.1.0", + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "dev": true, "license": "MIT", "dependencies": { - "archiver-utils": "^2.1.0", - "compress-commons": "^4.1.0", - "readable-stream": "^3.6.0" + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.12", + "dev": true, + "license": "CC0-1.0" + }, + "node_modules/split": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "through": "2" }, "engines": { - "node": ">= 10" + "node": "*" } - } - }, - "dependencies": { - "@ampproject/remapping": { - "version": "2.2.0", + }, + "node_modules/split-string": { + "version": "3.1.0", + "license": "MIT", "peer": true, - "requires": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" + "dependencies": { + "extend-shallow": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "@aws-amplify/analytics": { - "version": "5.2.30", - "requires": { - "@aws-amplify/cache": "4.0.65", - "@aws-amplify/core": "4.7.14", - "@aws-sdk/client-firehose": "3.6.1", - "@aws-sdk/client-kinesis": "3.6.1", - "@aws-sdk/client-personalize-events": "3.6.1", - "@aws-sdk/client-pinpoint": "3.6.1", - "@aws-sdk/util-utf8-browser": "3.6.1", - "lodash": "^4.17.20", - "uuid": "^3.2.1" - }, + "node_modules/split2": { + "version": "3.2.2", + "dev": true, + "license": "ISC", "dependencies": { - "@aws-sdk/util-utf8-browser": { - "version": "3.6.1", - "requires": { - "tslib": "^1.8.0" - } - }, - "tslib": { - "version": "1.14.1" - }, - "uuid": { - "version": "3.4.0" - } + "readable-stream": "^3.0.0" } }, - "@aws-amplify/api": { - "version": "4.0.63", - "requires": { - "@aws-amplify/api-graphql": "2.3.27", - "@aws-amplify/api-rest": "2.0.63" - } + "node_modules/sprintf-js": { + "version": "1.0.3", + "license": "BSD-3-Clause" }, - "@aws-amplify/api-graphql": { - "version": "2.3.27", - "requires": { - "@aws-amplify/api-rest": "2.0.63", - "@aws-amplify/auth": "4.6.16", - "@aws-amplify/cache": "4.0.65", - "@aws-amplify/core": "4.7.14", - "@aws-amplify/pubsub": "4.5.13", - "graphql": "15.8.0", - "uuid": "^3.2.1", - "zen-observable-ts": "0.8.19" - }, + "node_modules/ssri": { + "version": "9.0.1", + "dev": true, + "license": "ISC", "dependencies": { - "uuid": { - "version": "3.4.0" - } + "minipass": "^3.1.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "@aws-amplify/api-rest": { - "version": "2.0.63", - "requires": { - "@aws-amplify/core": "4.7.14", - "axios": "0.26.0" - } + "node_modules/stackback": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/stackback/-/stackback-0.0.2.tgz", + "integrity": "sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==", + "dev": true }, - "@aws-amplify/auth": { - "version": "4.6.16", - "requires": { - "@aws-amplify/cache": "4.0.65", - "@aws-amplify/core": "4.7.14", - "amazon-cognito-identity-js": "5.2.14", - "crypto-js": "^4.1.1" - } + "node_modules/stackframe": { + "version": "1.3.4", + "license": "MIT", + "peer": true }, - "@aws-amplify/cache": { - "version": "4.0.65", - "requires": { - "@aws-amplify/core": "4.7.14" - } + "node_modules/stacktrace-parser": { + "version": "0.1.10", + "license": "MIT", + "peer": true, + "dependencies": { + "type-fest": "^0.7.1" + }, + "engines": { + "node": ">=6" + } }, - "@aws-amplify/core": { - "version": "4.7.14", - "requires": { - "@aws-crypto/sha256-js": "1.0.0-alpha.0", - "@aws-sdk/client-cloudwatch-logs": "3.6.1", - "@aws-sdk/client-cognito-identity": "3.6.1", - "@aws-sdk/credential-provider-cognito-identity": "3.6.1", - "@aws-sdk/types": "3.6.1", - "@aws-sdk/util-hex-encoding": "3.6.1", - "universal-cookie": "^4.0.4", - "zen-observable-ts": "0.8.19" + "node_modules/stacktrace-parser/node_modules/type-fest": { + "version": "0.7.1", + "license": "(MIT OR CC0-1.0)", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/static-extend": { + "version": "0.1.2", + "license": "MIT", + "peer": true, + "dependencies": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/define-property": { + "version": "0.2.5", + "license": "MIT", + "peer": true, "dependencies": { - "@aws-crypto/sha256-js": { - "version": "1.0.0-alpha.0", - "requires": { - "@aws-sdk/types": "^1.0.0-alpha.0", - "@aws-sdk/util-utf8-browser": "^1.0.0-alpha.0", - "tslib": "^1.9.3" - }, - "dependencies": { - "@aws-sdk/types": { - "version": "1.0.0-rc.10" - } - } - }, - "@aws-sdk/types": { - "version": "3.6.1" - }, - "@aws-sdk/util-hex-encoding": { - "version": "3.6.1", - "requires": { - "tslib": "^1.8.0" - } - }, - "@aws-sdk/util-utf8-browser": { - "version": "1.0.0-rc.8", - "requires": { - "tslib": "^1.8.0" - } - }, - "tslib": { - "version": "1.14.1" - } + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "@aws-amplify/datastore": { - "version": "3.14.6", - "requires": { - "@aws-amplify/api": "4.0.63", - "@aws-amplify/auth": "4.6.16", - "@aws-amplify/core": "4.7.14", - "@aws-amplify/pubsub": "4.5.13", - "amazon-cognito-identity-js": "5.2.14", - "idb": "5.0.6", - "immer": "9.0.6", - "ulid": "2.3.0", - "uuid": "3.3.2", - "zen-observable-ts": "0.8.19", - "zen-push": "0.2.1" + "node_modules/static-extend/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "license": "MIT", + "peer": true, + "dependencies": { + "kind-of": "^3.0.2" }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "license": "MIT", + "peer": true, "dependencies": { - "uuid": { - "version": "3.3.2" - } + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" } }, - "@aws-amplify/geo": { - "version": "1.3.26", - "requires": { - "@aws-amplify/core": "4.7.14", - "@aws-sdk/client-location": "3.186.0", - "@turf/boolean-clockwise": "6.5.0", - "camelcase-keys": "6.2.2" + "node_modules/static-extend/node_modules/is-data-descriptor": { + "version": "0.1.4", + "license": "MIT", + "peer": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" } }, - "@aws-amplify/interactions": { - "version": "4.1.11", - "requires": { - "@aws-amplify/core": "4.7.14", - "@aws-sdk/client-lex-runtime-service": "3.186.0", - "@aws-sdk/client-lex-runtime-v2": "3.186.0", - "base-64": "1.0.0", - "fflate": "0.7.3", - "pako": "2.0.4" + "node_modules/static-extend/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "license": "MIT", + "peer": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" } }, - "@aws-amplify/predictions": { - "version": "4.0.63", - "requires": { - "@aws-amplify/core": "4.7.14", - "@aws-amplify/storage": "4.5.16", - "@aws-sdk/client-comprehend": "3.6.1", - "@aws-sdk/client-polly": "3.6.1", - "@aws-sdk/client-rekognition": "3.6.1", - "@aws-sdk/client-textract": "3.6.1", - "@aws-sdk/client-translate": "3.6.1", - "@aws-sdk/eventstream-marshaller": "3.6.1", - "@aws-sdk/util-utf8-node": "3.6.1", - "uuid": "^3.2.1" + "node_modules/static-extend/node_modules/is-descriptor": { + "version": "0.1.6", + "license": "MIT", + "peer": true, + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/kind-of": { + "version": "5.1.0", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/statuses": { + "version": "1.5.0", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/std-env": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.3.1.tgz", + "integrity": "sha512-3H20QlwQsSm2OvAxWIYhs+j01MzzqwMwGiiO1NQaJYZgJZFPuAbf95/DiKRBSTYIJ2FeGUc+B/6mPGcWP9dO3Q==", + "dev": true + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "license": "MIT", "dependencies": { - "@aws-sdk/is-array-buffer": { - "version": "3.6.1", - "requires": { - "tslib": "^1.8.0" - } - }, - "@aws-sdk/util-buffer-from": { - "version": "3.6.1", - "requires": { - "@aws-sdk/is-array-buffer": "3.6.1", - "tslib": "^1.8.0" - } - }, - "@aws-sdk/util-utf8-node": { - "version": "3.6.1", - "requires": { - "@aws-sdk/util-buffer-from": "3.6.1", - "tslib": "^1.8.0" - } - }, - "tslib": { - "version": "1.14.1" - }, - "uuid": { - "version": "3.4.0" - } + "safe-buffer": "~5.2.0" } }, - "@aws-amplify/pubsub": { - "version": "4.5.13", - "requires": { - "@aws-amplify/auth": "4.6.16", - "@aws-amplify/cache": "4.0.65", - "@aws-amplify/core": "4.7.14", - "graphql": "15.8.0", - "paho-mqtt": "^1.1.0", - "uuid": "^3.2.1", - "zen-observable-ts": "0.8.19" - }, + "node_modules/string-width": { + "version": "4.2.3", + "license": "MIT", "dependencies": { - "uuid": { - "version": "3.4.0" - } + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" } }, - "@aws-amplify/storage": { - "version": "4.5.16", - "requires": { - "@aws-amplify/core": "4.7.14", - "@aws-sdk/client-s3": "3.6.1", - "@aws-sdk/s3-request-presigner": "3.6.1", - "@aws-sdk/util-create-request": "3.6.1", - "@aws-sdk/util-format-url": "3.6.1", - "axios": "0.26.0", - "events": "^3.1.0" + "node_modules/strip-ansi": { + "version": "6.0.1", + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "@aws-amplify/ui": { - "version": "2.0.7" + "node_modules/strip-bom": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "@aws-amplify/xr": { - "version": "3.0.63", - "requires": { - "@aws-amplify/core": "4.7.14" + "node_modules/strip-eof": { + "version": "1.0.0", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" } }, - "@aws-crypto/crc32": { + "node_modules/strip-final-newline": { "version": "2.0.0", - "requires": { - "@aws-crypto/util": "^2.0.0", - "@aws-sdk/types": "^3.1.0", - "tslib": "^1.11.1" - }, - "dependencies": { - "tslib": { - "version": "1.14.1" - } + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" } }, - "@aws-crypto/ie11-detection": { - "version": "2.0.2", - "requires": { - "tslib": "^1.11.1" + "node_modules/strip-indent": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "min-indent": "^1.0.0" }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-literal": { + "version": "1.0.0", + "dev": true, + "license": "MIT", "dependencies": { - "tslib": { - "version": "1.14.1" - } + "acorn": "^8.8.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "@aws-crypto/sha256-browser": { - "version": "2.0.0", - "requires": { - "@aws-crypto/ie11-detection": "^2.0.0", - "@aws-crypto/sha256-js": "^2.0.0", - "@aws-crypto/supports-web-crypto": "^2.0.0", - "@aws-crypto/util": "^2.0.0", - "@aws-sdk/types": "^3.1.0", - "@aws-sdk/util-locate-window": "^3.0.0", - "@aws-sdk/util-utf8-browser": "^3.0.0", - "tslib": "^1.11.1" + "node_modules/strnum": { + "version": "1.0.5", + "license": "MIT" + }, + "node_modules/strong-log-transformer": { + "version": "2.1.0", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "duplexer": "^0.1.1", + "minimist": "^1.2.0", + "through": "^2.3.4" }, + "bin": { + "sl-log-transformer": "bin/sl-log-transformer.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/sudo-prompt": { + "version": "9.2.1", + "license": "MIT", + "peer": true + }, + "node_modules/supports-color": { + "version": "5.5.0", + "license": "MIT", "dependencies": { - "tslib": { - "version": "1.14.1" - } + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, - "@aws-crypto/sha256-js": { - "version": "2.0.0", - "requires": { - "@aws-crypto/util": "^2.0.0", - "@aws-sdk/types": "^3.1.0", - "tslib": "^1.11.1" + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "license": "MIT", + "engines": { + "node": ">= 0.4" }, - "dependencies": { - "tslib": { - "version": "1.14.1" - } + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "@aws-crypto/supports-web-crypto": { - "version": "2.0.2", - "requires": { - "tslib": "^1.11.1" + "node_modules/tar": { + "version": "6.1.13", + "dev": true, + "license": "ISC", + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^4.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar-stream": { + "version": "2.2.0", + "license": "MIT", "dependencies": { - "tslib": { - "version": "1.14.1" - } + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, + "engines": { + "node": ">=6" } }, - "@aws-crypto/util": { - "version": "2.0.2", - "requires": { - "@aws-sdk/types": "^3.110.0", - "@aws-sdk/util-utf8-browser": "^3.0.0", - "tslib": "^1.11.1" + "node_modules/tar/node_modules/minipass": { + "version": "4.0.0", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tar/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/temp": { + "version": "0.8.3", + "engines": [ + "node >=0.8.0" + ], + "license": "MIT", + "peer": true, "dependencies": { - "tslib": { - "version": "1.14.1" - } + "os-tmpdir": "^1.0.0", + "rimraf": "~2.2.6" } }, - "@aws-sdk/abort-controller": { - "version": "3.226.0", - "requires": { - "@aws-sdk/types": "3.226.0", - "tslib": "^2.3.1" + "node_modules/temp-dir": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" } }, - "@aws-sdk/chunked-blob-reader": { - "version": "3.6.1", - "requires": { - "tslib": "^1.8.0" - }, - "dependencies": { - "tslib": { - "version": "1.14.1" - } + "node_modules/temp/node_modules/rimraf": { + "version": "2.2.8", + "license": "MIT", + "peer": true, + "bin": { + "rimraf": "bin.js" } }, - "@aws-sdk/chunked-blob-reader-native": { - "version": "3.6.1", - "requires": { - "@aws-sdk/util-base64-browser": "3.6.1", - "tslib": "^1.8.0" - }, + "node_modules/text-extensions": { + "version": "1.9.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/throat": { + "version": "5.0.0", + "license": "MIT", + "peer": true + }, + "node_modules/through": { + "version": "2.3.8", + "license": "MIT" + }, + "node_modules/through2": { + "version": "4.0.2", + "dev": true, + "license": "MIT", "dependencies": { - "tslib": { - "version": "1.14.1" - } + "readable-stream": "3" } }, - "@aws-sdk/client-cloudwatch": { - "version": "3.245.0", + "node_modules/tinybench": { + "version": "2.3.1", + "dev": true, + "license": "MIT" + }, + "node_modules/tinypool": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-0.3.1.tgz", + "integrity": "sha512-zLA1ZXlstbU2rlpA4CIeVaqvWq41MTWqLY3FfsAXgC8+f7Pk7zroaJQxDgxn1xNudKW6Kmj4808rPFShUlIRmQ==", + "dev": true, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/tinyspy": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/tmp": { + "version": "0.0.33", + "license": "MIT", + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/tmpl": { + "version": "1.0.5", + "license": "BSD-3-Clause", + "peer": true + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/to-object-path": { + "version": "0.3.0", + "license": "MIT", + "peer": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-object-path/node_modules/kind-of": { + "version": "3.2.2", + "license": "MIT", + "peer": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex": { + "version": "3.0.2", + "license": "MIT", + "peer": true, + "dependencies": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/tr46": { + "version": "0.0.3", + "license": "MIT" + }, + "node_modules/treeverse": { + "version": "2.0.0", + "dev": true, + "license": "ISC", + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/trim-newlines": { + "version": "3.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ts-toolbelt": { + "version": "6.15.5", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/tsconfig-paths": { + "version": "3.14.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.1", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + } + }, + "node_modules/tsconfig-paths/node_modules/json5": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/tsconfig-paths/node_modules/strip-bom": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/tslib": { + "version": "2.4.1", + "license": "0BSD" + }, + "node_modules/type-detect": { + "version": "4.0.8", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/type-fest": { + "version": "0.21.3", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typedarray": { + "version": "0.0.6", + "dev": true, + "license": "MIT" + }, + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "dev": true, + "license": "MIT", + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/typescript": { + "version": "4.9.4", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/ufo": { + "version": "1.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/uglify-es": { + "version": "3.3.9", + "license": "BSD-2-Clause", + "peer": true, + "dependencies": { + "commander": "~2.13.0", + "source-map": "~0.6.1" + }, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/uglify-es/node_modules/commander": { + "version": "2.13.0", + "license": "MIT", + "peer": true + }, + "node_modules/uglify-js": { + "version": "3.17.4", + "dev": true, + "license": "BSD-2-Clause", + "optional": true, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/ulid": { + "version": "2.3.0", + "license": "MIT", + "bin": { + "ulid": "bin/cli.js" + } + }, + "node_modules/unfetch": { + "version": "4.2.0", + "license": "MIT" + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "license": "MIT", + "peer": true, + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/union-value": { + "version": "1.0.1", + "license": "MIT", + "peer": true, + "dependencies": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/union-value/node_modules/is-extendable": { + "version": "0.1.1", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unique-filename": { + "version": "2.0.1", + "dev": true, + "license": "ISC", + "dependencies": { + "unique-slug": "^3.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/unique-slug": { + "version": "3.0.0", + "dev": true, + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/universal-cookie": { + "version": "4.0.4", + "license": "MIT", + "dependencies": { + "@types/cookie": "^0.3.3", + "cookie": "^0.4.0" + } + }, + "node_modules/universal-user-agent": { + "version": "6.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/universalify": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/unset-value": { + "version": "1.0.0", + "license": "MIT", + "peer": true, + "dependencies": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-value": { + "version": "0.3.1", + "license": "MIT", + "peer": true, + "dependencies": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-value/node_modules/isobject": { + "version": "2.1.0", + "license": "MIT", + "peer": true, + "dependencies": { + "isarray": "1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-values": { + "version": "0.1.4", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/upath": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4", + "yarn": "*" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.10", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "license": "MIT", + "peer": true, + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "browserslist-lint": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/urix": { + "version": "0.1.0", + "license": "MIT", + "peer": true + }, + "node_modules/url": { + "version": "0.11.0", + "license": "MIT", + "dependencies": { + "punycode": "1.3.2", + "querystring": "0.2.0" + } + }, + "node_modules/use": { + "version": "3.1.1", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/use-sync-external-store": { + "version": "1.2.0", + "license": "MIT", + "peer": true, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "license": "MIT" + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "license": "MIT", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/v8-compile-cache": { + "version": "2.3.0", + "dev": true, + "license": "MIT" + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/validate-npm-package-name": { + "version": "4.0.0", + "dev": true, + "license": "ISC", + "dependencies": { + "builtins": "^5.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/vite": { + "version": "4.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.16.3", + "postcss": "^8.4.20", + "resolve": "^1.22.1", + "rollup": "^3.7.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + }, + "peerDependencies": { + "@types/node": ">= 14", + "less": "*", + "sass": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vite-node": { + "version": "0.26.3", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.3.4", + "mlly": "^1.0.0", + "pathe": "^0.2.0", + "source-map": "^0.6.1", + "source-map-support": "^0.5.21", + "vite": "^3.0.0 || ^4.0.0" + }, + "bin": { + "vite-node": "vite-node.mjs" + }, + "engines": { + "node": ">=v14.16.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/vitest": { + "version": "0.26.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/chai": "^4.3.4", + "@types/chai-subset": "^1.3.3", + "@types/node": "*", + "acorn": "^8.8.1", + "acorn-walk": "^8.2.0", + "chai": "^4.3.7", + "debug": "^4.3.4", + "local-pkg": "^0.4.2", + "source-map": "^0.6.1", + "strip-literal": "^1.0.0", + "tinybench": "^2.3.1", + "tinypool": "^0.3.0", + "tinyspy": "^1.0.2", + "vite": "^3.0.0 || ^4.0.0", + "vite-node": "0.26.3" + }, + "bin": { + "vitest": "vitest.mjs" + }, + "engines": { + "node": ">=v14.16.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@edge-runtime/vm": "*", + "@vitest/browser": "*", + "@vitest/ui": "*", + "happy-dom": "*", + "jsdom": "*" + }, + "peerDependenciesMeta": { + "@edge-runtime/vm": { + "optional": true + }, + "@vitest/browser": { + "optional": true + }, + "@vitest/ui": { + "optional": true + }, + "happy-dom": { + "optional": true + }, + "jsdom": { + "optional": true + } + } + }, + "node_modules/vlq": { + "version": "1.0.1", + "license": "MIT", + "peer": true + }, + "node_modules/walk-up-path": { + "version": "1.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/walker": { + "version": "1.0.8", + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "makeerror": "1.0.12" + } + }, + "node_modules/wcwidth": { + "version": "1.0.1", + "license": "MIT", + "dependencies": { + "defaults": "^1.0.3" + } + }, + "node_modules/webidl-conversions": { + "version": "3.0.1", + "license": "BSD-2-Clause" + }, + "node_modules/whatwg-fetch": { + "version": "3.6.2", + "license": "MIT", + "peer": true + }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "license": "MIT", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-module": { + "version": "2.0.0", + "license": "ISC", + "peer": true + }, + "node_modules/why-is-node-running": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.2.2.tgz", + "integrity": "sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA==", + "dev": true, + "dependencies": { + "siginfo": "^2.0.0", + "stackback": "0.0.2" + }, + "bin": { + "why-is-node-running": "cli.js" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wide-align": { + "version": "1.1.5", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "node_modules/wordwrap": { + "version": "1.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "license": "MIT" + }, + "node_modules/wrappy": { + "version": "1.0.2", + "license": "ISC" + }, + "node_modules/write-file-atomic": { + "version": "4.0.2", + "dev": true, + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/write-json-file": { + "version": "4.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "detect-indent": "^6.0.0", + "graceful-fs": "^4.1.15", + "is-plain-obj": "^2.0.0", + "make-dir": "^3.0.0", + "sort-keys": "^4.0.0", + "write-file-atomic": "^3.0.0" + }, + "engines": { + "node": ">=8.3" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/write-json-file/node_modules/is-plain-obj": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/write-json-file/node_modules/write-file-atomic": { + "version": "3.0.3", + "dev": true, + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "node_modules/write-pkg": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "sort-keys": "^2.0.0", + "type-fest": "^0.4.1", + "write-json-file": "^3.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/write-pkg/node_modules/detect-indent": { + "version": "5.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/write-pkg/node_modules/make-dir": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/write-pkg/node_modules/pify": { + "version": "4.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/write-pkg/node_modules/semver": { + "version": "5.7.1", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/write-pkg/node_modules/sort-keys": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "is-plain-obj": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/write-pkg/node_modules/type-fest": { + "version": "0.4.1", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=6" + } + }, + "node_modules/write-pkg/node_modules/write-file-atomic": { + "version": "2.4.3", + "dev": true, + "license": "ISC", + "dependencies": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" + } + }, + "node_modules/write-pkg/node_modules/write-json-file": { + "version": "3.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "detect-indent": "^5.0.0", + "graceful-fs": "^4.1.15", + "make-dir": "^2.1.0", + "pify": "^4.0.1", + "sort-keys": "^2.0.0", + "write-file-atomic": "^2.4.2" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/ws": { + "version": "6.2.2", + "license": "MIT", + "peer": true, + "dependencies": { + "async-limiter": "~1.0.0" + } + }, + "node_modules/xtend": { + "version": "4.0.2", + "license": "MIT", + "engines": { + "node": ">=0.4" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "license": "ISC", + "peer": true + }, + "node_modules/yaml": { + "version": "1.10.2", + "dev": true, + "license": "ISC", + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs": { + "version": "16.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/yargs-parser": { + "version": "20.2.4", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zen-observable": { + "version": "0.8.15", + "license": "MIT" + }, + "node_modules/zen-observable-ts": { + "version": "0.8.19", + "license": "MIT", + "dependencies": { + "tslib": "^1.9.3", + "zen-observable": "^0.8.0" + } + }, + "node_modules/zen-observable-ts/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/zen-push": { + "version": "0.2.1", + "license": "MIT", + "dependencies": { + "zen-observable": "^0.7.0" + } + }, + "node_modules/zen-push/node_modules/zen-observable": { + "version": "0.7.1", + "license": "MIT" + }, + "node_modules/zip-stream": { + "version": "4.1.0", + "license": "MIT", + "dependencies": { + "archiver-utils": "^2.1.0", + "compress-commons": "^4.1.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">= 10" + } + } + }, + "dependencies": { + "@ampproject/remapping": { + "version": "2.2.0", + "peer": true, + "requires": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "@aws-amplify/analytics": { + "version": "5.2.30", + "requires": { + "@aws-amplify/cache": "4.0.65", + "@aws-amplify/core": "4.7.14", + "@aws-sdk/client-firehose": "3.6.1", + "@aws-sdk/client-kinesis": "3.6.1", + "@aws-sdk/client-personalize-events": "3.6.1", + "@aws-sdk/client-pinpoint": "3.6.1", + "@aws-sdk/util-utf8-browser": "3.6.1", + "lodash": "^4.17.20", + "uuid": "^3.2.1" + }, + "dependencies": { + "@aws-sdk/util-utf8-browser": { + "version": "3.6.1", + "requires": { + "tslib": "^1.8.0" + } + }, + "tslib": { + "version": "1.14.1" + }, + "uuid": { + "version": "3.4.0" + } + } + }, + "@aws-amplify/api": { + "version": "4.0.63", + "requires": { + "@aws-amplify/api-graphql": "2.3.27", + "@aws-amplify/api-rest": "2.0.63" + } + }, + "@aws-amplify/api-graphql": { + "version": "2.3.27", + "requires": { + "@aws-amplify/api-rest": "2.0.63", + "@aws-amplify/auth": "4.6.16", + "@aws-amplify/cache": "4.0.65", + "@aws-amplify/core": "4.7.14", + "@aws-amplify/pubsub": "4.5.13", + "graphql": "15.8.0", + "uuid": "^3.2.1", + "zen-observable-ts": "0.8.19" + }, + "dependencies": { + "uuid": { + "version": "3.4.0" + } + } + }, + "@aws-amplify/api-rest": { + "version": "2.0.63", + "requires": { + "@aws-amplify/core": "4.7.14", + "axios": "0.26.0" + } + }, + "@aws-amplify/auth": { + "version": "4.6.16", + "requires": { + "@aws-amplify/cache": "4.0.65", + "@aws-amplify/core": "4.7.14", + "amazon-cognito-identity-js": "5.2.14", + "crypto-js": "^4.1.1" + } + }, + "@aws-amplify/cache": { + "version": "4.0.65", + "requires": { + "@aws-amplify/core": "4.7.14" + } + }, + "@aws-amplify/core": { + "version": "4.7.14", + "requires": { + "@aws-crypto/sha256-js": "1.0.0-alpha.0", + "@aws-sdk/client-cloudwatch-logs": "3.6.1", + "@aws-sdk/client-cognito-identity": "3.6.1", + "@aws-sdk/credential-provider-cognito-identity": "3.6.1", + "@aws-sdk/types": "3.6.1", + "@aws-sdk/util-hex-encoding": "3.6.1", + "universal-cookie": "^4.0.4", + "zen-observable-ts": "0.8.19" + }, + "dependencies": { + "@aws-crypto/sha256-js": { + "version": "1.0.0-alpha.0", + "requires": { + "@aws-sdk/types": "^1.0.0-alpha.0", + "@aws-sdk/util-utf8-browser": "^1.0.0-alpha.0", + "tslib": "^1.9.3" + }, + "dependencies": { + "@aws-sdk/types": { + "version": "1.0.0-rc.10" + } + } + }, + "@aws-sdk/types": { + "version": "3.6.1" + }, + "@aws-sdk/util-hex-encoding": { + "version": "3.6.1", + "requires": { + "tslib": "^1.8.0" + } + }, + "@aws-sdk/util-utf8-browser": { + "version": "1.0.0-rc.8", + "requires": { + "tslib": "^1.8.0" + } + }, + "tslib": { + "version": "1.14.1" + } + } + }, + "@aws-amplify/datastore": { + "version": "3.14.6", + "requires": { + "@aws-amplify/api": "4.0.63", + "@aws-amplify/auth": "4.6.16", + "@aws-amplify/core": "4.7.14", + "@aws-amplify/pubsub": "4.5.13", + "amazon-cognito-identity-js": "5.2.14", + "idb": "5.0.6", + "immer": "9.0.6", + "ulid": "2.3.0", + "uuid": "3.3.2", + "zen-observable-ts": "0.8.19", + "zen-push": "0.2.1" + }, + "dependencies": { + "uuid": { + "version": "3.3.2" + } + } + }, + "@aws-amplify/geo": { + "version": "1.3.26", + "requires": { + "@aws-amplify/core": "4.7.14", + "@aws-sdk/client-location": "3.186.0", + "@turf/boolean-clockwise": "6.5.0", + "camelcase-keys": "6.2.2" + } + }, + "@aws-amplify/interactions": { + "version": "4.1.11", + "requires": { + "@aws-amplify/core": "4.7.14", + "@aws-sdk/client-lex-runtime-service": "3.186.0", + "@aws-sdk/client-lex-runtime-v2": "3.186.0", + "base-64": "1.0.0", + "fflate": "0.7.3", + "pako": "2.0.4" + } + }, + "@aws-amplify/predictions": { + "version": "4.0.63", + "requires": { + "@aws-amplify/core": "4.7.14", + "@aws-amplify/storage": "4.5.16", + "@aws-sdk/client-comprehend": "3.6.1", + "@aws-sdk/client-polly": "3.6.1", + "@aws-sdk/client-rekognition": "3.6.1", + "@aws-sdk/client-textract": "3.6.1", + "@aws-sdk/client-translate": "3.6.1", + "@aws-sdk/eventstream-marshaller": "3.6.1", + "@aws-sdk/util-utf8-node": "3.6.1", + "uuid": "^3.2.1" + }, + "dependencies": { + "@aws-sdk/is-array-buffer": { + "version": "3.6.1", + "requires": { + "tslib": "^1.8.0" + } + }, + "@aws-sdk/util-buffer-from": { + "version": "3.6.1", + "requires": { + "@aws-sdk/is-array-buffer": "3.6.1", + "tslib": "^1.8.0" + } + }, + "@aws-sdk/util-utf8-node": { + "version": "3.6.1", + "requires": { + "@aws-sdk/util-buffer-from": "3.6.1", + "tslib": "^1.8.0" + } + }, + "tslib": { + "version": "1.14.1" + }, + "uuid": { + "version": "3.4.0" + } + } + }, + "@aws-amplify/pubsub": { + "version": "4.5.13", + "requires": { + "@aws-amplify/auth": "4.6.16", + "@aws-amplify/cache": "4.0.65", + "@aws-amplify/core": "4.7.14", + "graphql": "15.8.0", + "paho-mqtt": "^1.1.0", + "uuid": "^3.2.1", + "zen-observable-ts": "0.8.19" + }, + "dependencies": { + "uuid": { + "version": "3.4.0" + } + } + }, + "@aws-amplify/storage": { + "version": "4.5.16", + "requires": { + "@aws-amplify/core": "4.7.14", + "@aws-sdk/client-s3": "3.6.1", + "@aws-sdk/s3-request-presigner": "3.6.1", + "@aws-sdk/util-create-request": "3.6.1", + "@aws-sdk/util-format-url": "3.6.1", + "axios": "0.26.0", + "events": "^3.1.0" + } + }, + "@aws-amplify/ui": { + "version": "2.0.7" + }, + "@aws-amplify/xr": { + "version": "3.0.63", + "requires": { + "@aws-amplify/core": "4.7.14" + } + }, + "@aws-crypto/crc32": { + "version": "2.0.0", + "requires": { + "@aws-crypto/util": "^2.0.0", + "@aws-sdk/types": "^3.1.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1" + } + } + }, + "@aws-crypto/crc32c": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/crc32c/-/crc32c-3.0.0.tgz", + "integrity": "sha512-ENNPPManmnVJ4BTXlOjAgD7URidbAznURqD0KvfREyc4o20DPYdEldU1f5cQ7Jbj0CJJSPaMIk/9ZshdB3210w==", + "requires": { + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "@aws-crypto/util": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz", + "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==", + "requires": { + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/ie11-detection": { + "version": "2.0.2", + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1" + } + } + }, + "@aws-crypto/sha1-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha1-browser/-/sha1-browser-3.0.0.tgz", + "integrity": "sha512-NJth5c997GLHs6nOYTzFKTbYdMNA6/1XlKVgnZoaZcQ7z7UJlOgj2JdbHE8tiYLS3fzXNCguct77SPGat2raSw==", + "requires": { + "@aws-crypto/ie11-detection": "^3.0.0", + "@aws-crypto/supports-web-crypto": "^3.0.0", + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "@aws-crypto/ie11-detection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz", + "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==", + "requires": { + "tslib": "^1.11.1" + } + }, + "@aws-crypto/supports-web-crypto": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz", + "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==", + "requires": { + "tslib": "^1.11.1" + } + }, + "@aws-crypto/util": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz", + "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==", + "requires": { + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/sha256-browser": { + "version": "2.0.0", + "requires": { + "@aws-crypto/ie11-detection": "^2.0.0", + "@aws-crypto/sha256-js": "^2.0.0", + "@aws-crypto/supports-web-crypto": "^2.0.0", + "@aws-crypto/util": "^2.0.0", + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1" + } + } + }, + "@aws-crypto/sha256-js": { + "version": "2.0.0", + "requires": { + "@aws-crypto/util": "^2.0.0", + "@aws-sdk/types": "^3.1.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1" + } + } + }, + "@aws-crypto/supports-web-crypto": { + "version": "2.0.2", + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1" + } + } + }, + "@aws-crypto/util": { + "version": "2.0.2", + "requires": { + "@aws-sdk/types": "^3.110.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1" + } + } + }, + "@aws-sdk/abort-controller": { + "version": "3.226.0", + "requires": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/chunked-blob-reader": { + "version": "3.6.1", + "requires": { + "tslib": "^1.8.0" + }, + "dependencies": { + "tslib": { + "version": "1.14.1" + } + } + }, + "@aws-sdk/chunked-blob-reader-native": { + "version": "3.6.1", + "requires": { + "@aws-sdk/util-base64-browser": "3.6.1", + "tslib": "^1.8.0" + }, + "dependencies": { + "tslib": { + "version": "1.14.1" + } + } + }, + "@aws-sdk/client-cloudwatch": { + "version": "3.245.0", "requires": { "@aws-crypto/sha256-browser": "2.0.0", "@aws-crypto/sha256-js": "2.0.0", @@ -49879,6 +52662,759 @@ "tslib": "^2.3.1" } }, + "@aws-sdk/credential-providers": { + "version": "3.276.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.276.0.tgz", + "integrity": "sha512-pgKP0dRMP48eDfXIcGENKzi6CIA7IVUAqFdWLY1bonq7DGSLveBvD7hkxu1ZXVp6HlucLiGtncgGrRKBmtK6Jg==", + "requires": { + "@aws-sdk/client-cognito-identity": "3.276.0", + "@aws-sdk/client-sso": "3.272.0", + "@aws-sdk/client-sts": "3.276.0", + "@aws-sdk/credential-provider-cognito-identity": "3.276.0", + "@aws-sdk/credential-provider-env": "3.272.0", + "@aws-sdk/credential-provider-imds": "3.272.0", + "@aws-sdk/credential-provider-ini": "3.272.0", + "@aws-sdk/credential-provider-node": "3.272.0", + "@aws-sdk/credential-provider-process": "3.272.0", + "@aws-sdk/credential-provider-sso": "3.272.0", + "@aws-sdk/credential-provider-web-identity": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + }, + "dependencies": { + "@aws-crypto/ie11-detection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz", + "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==", + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/sha256-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz", + "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==", + "requires": { + "@aws-crypto/ie11-detection": "^3.0.0", + "@aws-crypto/sha256-js": "^3.0.0", + "@aws-crypto/supports-web-crypto": "^3.0.0", + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/sha256-js": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-3.0.0.tgz", + "integrity": "sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==", + "requires": { + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/supports-web-crypto": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz", + "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==", + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/util": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz", + "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==", + "requires": { + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-sdk/abort-controller": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.272.0.tgz", + "integrity": "sha512-s2TV3phapcTwZNr4qLxbfuQuE9ZMP4RoJdkvRRCkKdm6jslsWLJf2Zlcxti/23hOlINUMYv2iXE2pftIgWGdpg==", + "requires": { + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-cognito-identity": { + "version": "3.276.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.276.0.tgz", + "integrity": "sha512-haFxr8QKNxoRLIWyawc4EfEN6ep4yrWv5e5KWzbulJaw6QwLKmTCLyv09mScbk1FUgpn1MaIy2mJiijiu2RJJQ==", + "requires": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/client-sts": "3.276.0", + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/credential-provider-node": "3.272.0", + "@aws-sdk/fetch-http-handler": "3.272.0", + "@aws-sdk/hash-node": "3.272.0", + "@aws-sdk/invalid-dependency": "3.272.0", + "@aws-sdk/middleware-content-length": "3.272.0", + "@aws-sdk/middleware-endpoint": "3.272.0", + "@aws-sdk/middleware-host-header": "3.272.0", + "@aws-sdk/middleware-logger": "3.272.0", + "@aws-sdk/middleware-recursion-detection": "3.272.0", + "@aws-sdk/middleware-retry": "3.272.0", + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/middleware-signing": "3.272.0", + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/middleware-user-agent": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/node-http-handler": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/smithy-client": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.272.0", + "@aws-sdk/util-defaults-mode-node": "3.272.0", + "@aws-sdk/util-endpoints": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", + "@aws-sdk/util-user-agent-browser": "3.272.0", + "@aws-sdk/util-user-agent-node": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-sso": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.272.0.tgz", + "integrity": "sha512-xn9a0IGONwQIARmngThoRhF1lLGjHAD67sUaShgIMaIMc6ipVYN6alWG1VuUpoUQ6iiwMEt0CHdfCyLyUV/fTA==", + "requires": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/fetch-http-handler": "3.272.0", + "@aws-sdk/hash-node": "3.272.0", + "@aws-sdk/invalid-dependency": "3.272.0", + "@aws-sdk/middleware-content-length": "3.272.0", + "@aws-sdk/middleware-endpoint": "3.272.0", + "@aws-sdk/middleware-host-header": "3.272.0", + "@aws-sdk/middleware-logger": "3.272.0", + "@aws-sdk/middleware-recursion-detection": "3.272.0", + "@aws-sdk/middleware-retry": "3.272.0", + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/middleware-user-agent": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/node-http-handler": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/smithy-client": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.272.0", + "@aws-sdk/util-defaults-mode-node": "3.272.0", + "@aws-sdk/util-endpoints": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", + "@aws-sdk/util-user-agent-browser": "3.272.0", + "@aws-sdk/util-user-agent-node": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-sso-oidc": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.272.0.tgz", + "integrity": "sha512-ECcXu3xoa1yggnGKMTh29eWNHiF/wC6r5Uqbla22eOOosyh0+Z6lkJ3JUSLOUKCkBXA4Cs/tJL9UDFBrKbSlvA==", + "requires": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/fetch-http-handler": "3.272.0", + "@aws-sdk/hash-node": "3.272.0", + "@aws-sdk/invalid-dependency": "3.272.0", + "@aws-sdk/middleware-content-length": "3.272.0", + "@aws-sdk/middleware-endpoint": "3.272.0", + "@aws-sdk/middleware-host-header": "3.272.0", + "@aws-sdk/middleware-logger": "3.272.0", + "@aws-sdk/middleware-recursion-detection": "3.272.0", + "@aws-sdk/middleware-retry": "3.272.0", + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/middleware-user-agent": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/node-http-handler": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/smithy-client": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.272.0", + "@aws-sdk/util-defaults-mode-node": "3.272.0", + "@aws-sdk/util-endpoints": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", + "@aws-sdk/util-user-agent-browser": "3.272.0", + "@aws-sdk/util-user-agent-node": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-sts": { + "version": "3.276.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.276.0.tgz", + "integrity": "sha512-J6FR4tYa/WdDdwWAKhw/mXQXKWUaZZQpMiyFEbFPQyURSWu3u17nv97NUdvVOgCth48H6Wb6a4ksssYy4K9tFQ==", + "requires": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/credential-provider-node": "3.272.0", + "@aws-sdk/fetch-http-handler": "3.272.0", + "@aws-sdk/hash-node": "3.272.0", + "@aws-sdk/invalid-dependency": "3.272.0", + "@aws-sdk/middleware-content-length": "3.272.0", + "@aws-sdk/middleware-endpoint": "3.272.0", + "@aws-sdk/middleware-host-header": "3.272.0", + "@aws-sdk/middleware-logger": "3.272.0", + "@aws-sdk/middleware-recursion-detection": "3.272.0", + "@aws-sdk/middleware-retry": "3.272.0", + "@aws-sdk/middleware-sdk-sts": "3.272.0", + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/middleware-signing": "3.272.0", + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/middleware-user-agent": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/node-http-handler": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/smithy-client": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.272.0", + "@aws-sdk/util-defaults-mode-node": "3.272.0", + "@aws-sdk/util-endpoints": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", + "@aws-sdk/util-user-agent-browser": "3.272.0", + "@aws-sdk/util-user-agent-node": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", + "fast-xml-parser": "4.1.2", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/config-resolver": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.272.0.tgz", + "integrity": "sha512-Dr4CffRVNsOp3LRNdpvcH6XuSgXOSLblWliCy/5I86cNl567KVMxujVx6uPrdTXYs2h1rt3MNl6jQGnAiJeTbw==", + "requires": { + "@aws-sdk/signature-v4": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-cognito-identity": { + "version": "3.276.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.276.0.tgz", + "integrity": "sha512-LaIQNt2F+XWvX031MzYNoHWuqjpyomsdI+1y6KaeC/9z51Y+usmB/ay1jYK/kUmXl/NcBmZR5gPELZu7P6WtaQ==", + "requires": { + "@aws-sdk/client-cognito-identity": "3.276.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-env": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.272.0.tgz", + "integrity": "sha512-QI65NbLnKLYHyTYhXaaUrq6eVsCCrMUb05WDA7+TJkWkjXesovpjc8vUKgFiLSxmgKmb2uOhHNcDyObKMrYQFw==", + "requires": { + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-imds": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.272.0.tgz", + "integrity": "sha512-wwAfVY1jTFQEfxVfdYD5r5ieYGl+0g4nhekVxNMqE8E1JeRDd18OqiwAflzpgBIqxfqvCUkf+vl5JYyacMkNAQ==", + "requires": { + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-ini": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.272.0.tgz", + "integrity": "sha512-iE3CDzK5NcupHYjfYjBdY1JCy8NLEoRUsboEjG0i0gy3S3jVpDeVHX1dLVcL/slBFj6GiM7SoNV/UfKnJf3Gaw==", + "requires": { + "@aws-sdk/credential-provider-env": "3.272.0", + "@aws-sdk/credential-provider-imds": "3.272.0", + "@aws-sdk/credential-provider-process": "3.272.0", + "@aws-sdk/credential-provider-sso": "3.272.0", + "@aws-sdk/credential-provider-web-identity": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-node": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.272.0.tgz", + "integrity": "sha512-FI8uvwM1IxiRSvbkdKv8DZG5vxU3ezaseTaB1fHWTxEUFb0pWIoHX9oeOKer9Fj31SOZTCNAaYFURbSRuZlm/w==", + "requires": { + "@aws-sdk/credential-provider-env": "3.272.0", + "@aws-sdk/credential-provider-imds": "3.272.0", + "@aws-sdk/credential-provider-ini": "3.272.0", + "@aws-sdk/credential-provider-process": "3.272.0", + "@aws-sdk/credential-provider-sso": "3.272.0", + "@aws-sdk/credential-provider-web-identity": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-process": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.272.0.tgz", + "integrity": "sha512-hiCAjWWm2PeBFp5cjkxqyam/XADjiS+e7GzwC34TbZn3LisS0uoweLojj9tD11NnnUhyhbLteUvu5+rotOLwrg==", + "requires": { + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-sso": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.272.0.tgz", + "integrity": "sha512-hwYaulyiU/7chKKFecxCeo0ls6Dxs7h+5EtoYcJJGvfpvCncyOZF35t00OAsCd3Wo7HkhhgfpGdb6dmvCNQAZQ==", + "requires": { + "@aws-sdk/client-sso": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/token-providers": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-web-identity": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.272.0.tgz", + "integrity": "sha512-ImrHMkcgneGa/HadHAQXPwOrX26sAKuB8qlMxZF/ZCM2B55u8deY+ZVkVuraeKb7YsahMGehPFOfRAF6mvFI5Q==", + "requires": { + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/fetch-http-handler": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.272.0.tgz", + "integrity": "sha512-1Qhm9e0RbS1Xf4CZqUbQyUMkDLd7GrsRXWIvm9b86/vgeV8/WnjO3CMue9D51nYgcyQORhYXv6uVjAYCWbUExA==", + "requires": { + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/querystring-builder": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-base64": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/hash-node": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.272.0.tgz", + "integrity": "sha512-40dwND+iAm3VtPHPZu7/+CIdVJFk2s0cWZt1lOiMPMSXycSYJ45wMk7Lly3uoqRx0uWfFK5iT2OCv+fJi5jTng==", + "requires": { + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-buffer-from": "3.208.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/invalid-dependency": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.272.0.tgz", + "integrity": "sha512-ysW6wbjl1Y78txHUQ/Tldj2Rg1BI7rpMO9B9xAF6yAX3mQ7t6SUPQG/ewOGvH2208NBIl3qP5e/hDf0Q6r/1iw==", + "requires": { + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-content-length": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.272.0.tgz", + "integrity": "sha512-sAbDZSTNmLX+UTGwlUHJBWy0QGQkiClpHwVFXACon+aG0ySLNeRKEVYs6NCPYldw4cj6hveLUn50cX44ukHErw==", + "requires": { + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-endpoint": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.272.0.tgz", + "integrity": "sha512-Dk3JVjj7SxxoUKv3xGiOeBksvPtFhTDrVW75XJ98Ymv8gJH5L1sq4hIeJAHRKogGiRFq2J73mnZSlM9FVXEylg==", + "requires": { + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/signature-v4": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-host-header": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.272.0.tgz", + "integrity": "sha512-Q8K7bMMFZnioUXpxn57HIt4p+I63XaNAawMLIZ5B4F2piyukbQeM9q2XVKMGwqLvijHR8CyP5nHrtKqVuINogQ==", + "requires": { + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-logger": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.272.0.tgz", + "integrity": "sha512-u2SQ0hWrFwxbxxYMG5uMEgf01pQY5jauK/LYWgGIvuCmFgiyRQQP3oN7kkmsxnS9MWmNmhbyQguX2NY02s5e9w==", + "requires": { + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-recursion-detection": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.272.0.tgz", + "integrity": "sha512-Gp/eKWeUWVNiiBdmUM2qLkBv+VLSJKoWAO+aKmyxxwjjmWhE0FrfA1NQ1a3g+NGMhRbAfQdaYswRAKsul70ISg==", + "requires": { + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-retry": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.272.0.tgz", + "integrity": "sha512-pCGvHM7C76VbO/dFerH+Vwf7tGv7j+e+eGrvhQ35mRghCtfIou/WMfTZlD1TNee93crrAQQVZKjtW3dMB3WCzg==", + "requires": { + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/service-error-classification": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-middleware": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", + "tslib": "^2.3.1", + "uuid": "^8.3.2" + } + }, + "@aws-sdk/middleware-sdk-sts": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.272.0.tgz", + "integrity": "sha512-VvYPg7LrDIjUOWueSzo2wBzcNG7dw+cmzV6zAKaLxf0RC5jeAP4hE0OzDiiZfDrjNghEzgq/V+0NO+LewqYL9Q==", + "requires": { + "@aws-sdk/middleware-signing": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/signature-v4": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-serde": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.272.0.tgz", + "integrity": "sha512-kW1uOxgPSwtXPB5rm3QLdWomu42lkYpQL94tM1BjyFOWmBLO2lQhk5a7Dw6HkTozT9a+vxtscLChRa6KZe61Hw==", + "requires": { + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-signing": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.272.0.tgz", + "integrity": "sha512-4LChFK4VAR91X+dupqM8fQqYhFGE0G4Bf9rQlVTgGSbi2KUOmpqXzH0/WKE228nKuEhmH8+Qd2VPSAE2JcyAUA==", + "requires": { + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/signature-v4": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-middleware": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-stack": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.272.0.tgz", + "integrity": "sha512-jhwhknnPBGhfXAGV5GXUWfEhDFoP/DN8MPCO2yC5OAxyp6oVJ8lTPLkZYMTW5VL0c0eG44dXpF4Ib01V+PlDrQ==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-user-agent": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.272.0.tgz", + "integrity": "sha512-Qy7/0fsDJxY5l0bEk7WKDfqb4Os/sCAgFR2zEvrhDtbkhYPf72ysvg/nRUTncmCbo8tOok4SJii2myk8KMfjjw==", + "requires": { + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/node-config-provider": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.272.0.tgz", + "integrity": "sha512-YYCIBh9g1EQo7hm2l22HX5Yr9RoPQ2RCvhzKvF1n1e8t1QH4iObQrYUtqHG4khcm64Cft8C5MwZmgzHbya5Z6Q==", + "requires": { + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/node-http-handler": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.272.0.tgz", + "integrity": "sha512-VrW9PjhhngeyYp4yGYPe5S0vgZH6NwU3Po9xAgayUeE37Inr7LS1YteFMHdpgsUUeNXnh7d06CXqHo1XjtqOKA==", + "requires": { + "@aws-sdk/abort-controller": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/querystring-builder": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/property-provider": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.272.0.tgz", + "integrity": "sha512-V1pZTaH5eqpAt8O8CzbItHhOtzIfFuWymvwZFkAtwKuaHpnl7jjrTouV482zoq8AD/fF+VVSshwBKYA7bhidIw==", + "requires": { + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/protocol-http": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.272.0.tgz", + "integrity": "sha512-4JQ54v5Yn08jspNDeHo45CaSn1CvTJqS1Ywgr79eU6jBExtguOWv6LNtwVSBD9X37v88iqaxt8iu1Z3pZZAJeg==", + "requires": { + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/querystring-builder": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.272.0.tgz", + "integrity": "sha512-ndo++7GkdCj5tBXE6rGcITpSpZS4PfyV38wntGYAlj9liL1omk3bLZRY6uzqqkJpVHqbg2fD7O2qHNItzZgqhw==", + "requires": { + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/querystring-parser": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.272.0.tgz", + "integrity": "sha512-5oS4/9n6N1LZW9tI3qq/0GnCuWoOXRgcHVB+AJLRBvDbEe+GI+C/xK1tKLsfpDNgsQJHc4IPQoIt4megyZ/1+A==", + "requires": { + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/service-error-classification": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.272.0.tgz", + "integrity": "sha512-REoltM1LK9byyIufLqx9znhSolPcHQgVHIA2S0zu5sdt5qER4OubkLAXuo4MBbisUTmh8VOOvIyUb5ijZCXq1w==" + }, + "@aws-sdk/shared-ini-file-loader": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.272.0.tgz", + "integrity": "sha512-lzFPohp5sy2XvwFjZIzLVCRpC0i5cwBiaXmFzXYQZJm6FSCszHO4ax+m9yrtlyVFF/2YPWl+/bzNthy4aJtseA==", + "requires": { + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/signature-v4": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.272.0.tgz", + "integrity": "sha512-pWxnHG1NqJWMwlhJ6NHNiUikOL00DHROmxah6krJPMPq4I3am2KY2Rs/8ouWhnEXKaHAv4EQhSALJ+7Mq5S4/A==", + "requires": { + "@aws-sdk/is-array-buffer": "3.201.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-hex-encoding": "3.201.0", + "@aws-sdk/util-middleware": "3.272.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/smithy-client": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.272.0.tgz", + "integrity": "sha512-pvdleJ3kaRvyRw2pIZnqL85ZlWBOZrPKmR9I69GCvlyrfdjRBhbSjIEZ+sdhZudw0vdHxq25AGoLUXhofVLf5Q==", + "requires": { + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/token-providers": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.272.0.tgz", + "integrity": "sha512-0GISJ4IKN2rXvbSddB775VjBGSKhYIGQnAdMqbvxi9LB6pSvVxcH9aIL28G0spiuL+dy3yGQZ8RlJPAyP9JW9A==", + "requires": { + "@aws-sdk/client-sso-oidc": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/types": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.272.0.tgz", + "integrity": "sha512-MmmL6vxMGP5Bsi+4wRx4mxYlU/LX6M0noOXrDh/x5FfG7/4ZOar/nDxqDadhJtNM88cuWVHZWY59P54JzkGWmA==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/url-parser": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.272.0.tgz", + "integrity": "sha512-vX/Tx02PlnQ/Kgtf5TnrNDHPNbY+amLZjW0Z1d9vzAvSZhQ4i9Y18yxoRDIaDTCNVRDjdhV8iuctW+05PB5JtQ==", + "requires": { + "@aws-sdk/querystring-parser": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-defaults-mode-browser": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.272.0.tgz", + "integrity": "sha512-W8ZVJSZRuUBg8l0JEZzUc+9fKlthVp/cdE+pFeF8ArhZelOLCiaeCrMaZAeJusaFzIpa6cmOYQAjtSMVyrwRtg==", + "requires": { + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-defaults-mode-node": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.272.0.tgz", + "integrity": "sha512-U0NTcbMw6KFk7uz/avBmfxQSTREEiX6JDMH68oN/3ux4AICd2I4jHyxnloSWGuiER1FxZf1dEJ8ZTwy8Ibl21Q==", + "requires": { + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/credential-provider-imds": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-endpoints": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.272.0.tgz", + "integrity": "sha512-c4MPUaJt2G6gGpoiwIOqDfUa98c1J63RpYvf/spQEKOtC/tF5Gfqlxuq8FnAl5lHnrqj1B9ZXLLxFhHtDR0IiQ==", + "requires": { + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-middleware": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.272.0.tgz", + "integrity": "sha512-Abw8m30arbwxqmeMMha5J11ESpHUNmCeSqSzE8/C4B8jZQtHY4kq7f+upzcNIQ11lsd+uzBEzNG3+dDRi0XOJQ==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-retry": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-retry/-/util-retry-3.272.0.tgz", + "integrity": "sha512-Ngha5414LR4gRHURVKC9ZYXsEJhMkm+SJ+44wlzOhavglfdcKKPUsibz5cKY1jpUV7oKECwaxHWpBB8r6h+hOg==", + "requires": { + "@aws-sdk/service-error-classification": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-user-agent-browser": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.272.0.tgz", + "integrity": "sha512-Lp5QX5bH6uuwBlIdr7w7OAcAI50ttyskb++yUr9i+SPvj6RI2dsfIBaK4mDg1qUdM5LeUdvIyqwj3XHjFKAAvA==", + "requires": { + "@aws-sdk/types": "3.272.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-user-agent-node": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.272.0.tgz", + "integrity": "sha512-ljK+R3l+Q1LIHrcR+Knhk0rmcSkfFadZ8V+crEGpABf/QUQRg7NkZMsoe814tfBO5F7tMxo8wwwSdaVNNHtoRA==", + "requires": { + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "fast-xml-parser": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.1.2.tgz", + "integrity": "sha512-CDYeykkle1LiA/uqQyNwYpFbyF6Axec6YapmpUP+/RHWIoR1zKjocdvNaTsxCxZzQ6v9MLXaSYm9Qq0thv0DHg==", + "requires": { + "strnum": "^1.0.5" + } + } + } + }, "@aws-sdk/eventstream-codec": { "version": "3.186.0", "requires": { @@ -50220,6 +53756,73 @@ } } }, + "@aws-sdk/middleware-flexible-checksums": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.272.0.tgz", + "integrity": "sha512-dc/tMiYM4wTZpjXf2PSQCFD4SQI5wyVwY5SoBgcB3W2XLq1SzXahiDnnUSn2EzDTKPIrmQmYyDFRpFEPo0sP/g==", + "requires": { + "@aws-crypto/crc32": "3.0.0", + "@aws-crypto/crc32c": "3.0.0", + "@aws-sdk/is-array-buffer": "3.201.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + }, + "dependencies": { + "@aws-crypto/crc32": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/crc32/-/crc32-3.0.0.tgz", + "integrity": "sha512-IzSgsrxUcsrejQbPVilIKy16kAT52EwB6zSaI+M3xxIhKh5+aldEyvI+z6erM7TCLB2BJsFrtHjp6/4/sr+3dA==", + "requires": { + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/util": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz", + "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==", + "requires": { + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-sdk/protocol-http": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.272.0.tgz", + "integrity": "sha512-4JQ54v5Yn08jspNDeHo45CaSn1CvTJqS1Ywgr79eU6jBExtguOWv6LNtwVSBD9X37v88iqaxt8iu1Z3pZZAJeg==", + "requires": { + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/types": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.272.0.tgz", + "integrity": "sha512-MmmL6vxMGP5Bsi+4wRx4mxYlU/LX6M0noOXrDh/x5FfG7/4ZOar/nDxqDadhJtNM88cuWVHZWY59P54JzkGWmA==", + "requires": { + "tslib": "^2.3.1" + } + } + } + }, "@aws-sdk/middleware-header-default": { "version": "3.6.1", "requires": { @@ -50630,6 +54233,67 @@ "tslib": "^2.3.1" } }, + "@aws-sdk/signature-v4-multi-region": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.272.0.tgz", + "integrity": "sha512-nir/ICA3saE303tS+DuJ803Uocn/d3hOpOl5DqI9RDjaZxbTXwv9uHP+by8sdyyfwCE8TFaYWoiSW5rLI+Qt0g==", + "requires": { + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/signature-v4": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-arn-parser": "3.208.0", + "tslib": "^2.3.1" + }, + "dependencies": { + "@aws-sdk/protocol-http": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.272.0.tgz", + "integrity": "sha512-4JQ54v5Yn08jspNDeHo45CaSn1CvTJqS1Ywgr79eU6jBExtguOWv6LNtwVSBD9X37v88iqaxt8iu1Z3pZZAJeg==", + "requires": { + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/signature-v4": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.272.0.tgz", + "integrity": "sha512-pWxnHG1NqJWMwlhJ6NHNiUikOL00DHROmxah6krJPMPq4I3am2KY2Rs/8ouWhnEXKaHAv4EQhSALJ+7Mq5S4/A==", + "requires": { + "@aws-sdk/is-array-buffer": "3.201.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-hex-encoding": "3.201.0", + "@aws-sdk/util-middleware": "3.272.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/types": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.272.0.tgz", + "integrity": "sha512-MmmL6vxMGP5Bsi+4wRx4mxYlU/LX6M0noOXrDh/x5FfG7/4ZOar/nDxqDadhJtNM88cuWVHZWY59P54JzkGWmA==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-arn-parser": { + "version": "3.208.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.208.0.tgz", + "integrity": "sha512-QV4af+kscova9dv4VuHOgH8wEr/IIYHDGcnyVtkUEqahCejWr1Kuk+SBK0xMwnZY5LSycOtQ8aeqHOn9qOjZtA==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-middleware": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.272.0.tgz", + "integrity": "sha512-Abw8m30arbwxqmeMMha5J11ESpHUNmCeSqSzE8/C4B8jZQtHY4kq7f+upzcNIQ11lsd+uzBEzNG3+dDRi0XOJQ==", + "requires": { + "tslib": "^2.3.1" + } + } + } + }, "@aws-sdk/smithy-client": { "version": "3.234.0", "requires": { @@ -50878,6 +54542,121 @@ "tslib": "^2.3.1" } }, + "@aws-sdk/util-stream-browser": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-stream-browser/-/util-stream-browser-3.272.0.tgz", + "integrity": "sha512-vD514YffKxBjV/erjUNgkXcb/mzXAz3uk/KUFMXsodo3cA4Z8WxL4P0p1O09FVuJlNa0gZ8mhFPNzNOekh31GA==", + "requires": { + "@aws-sdk/fetch-http-handler": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-hex-encoding": "3.201.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + }, + "dependencies": { + "@aws-sdk/fetch-http-handler": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.272.0.tgz", + "integrity": "sha512-1Qhm9e0RbS1Xf4CZqUbQyUMkDLd7GrsRXWIvm9b86/vgeV8/WnjO3CMue9D51nYgcyQORhYXv6uVjAYCWbUExA==", + "requires": { + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/querystring-builder": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-base64": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/protocol-http": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.272.0.tgz", + "integrity": "sha512-4JQ54v5Yn08jspNDeHo45CaSn1CvTJqS1Ywgr79eU6jBExtguOWv6LNtwVSBD9X37v88iqaxt8iu1Z3pZZAJeg==", + "requires": { + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/querystring-builder": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.272.0.tgz", + "integrity": "sha512-ndo++7GkdCj5tBXE6rGcITpSpZS4PfyV38wntGYAlj9liL1omk3bLZRY6uzqqkJpVHqbg2fD7O2qHNItzZgqhw==", + "requires": { + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/types": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.272.0.tgz", + "integrity": "sha512-MmmL6vxMGP5Bsi+4wRx4mxYlU/LX6M0noOXrDh/x5FfG7/4ZOar/nDxqDadhJtNM88cuWVHZWY59P54JzkGWmA==", + "requires": { + "tslib": "^2.3.1" + } + } + } + }, + "@aws-sdk/util-stream-node": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-stream-node/-/util-stream-node-3.272.0.tgz", + "integrity": "sha512-s7dGeM1ImzihqBKgrpaeZokLnPUk3H4Et5oiM+t+TpRxotXTecJPyuD0p76HRgO8KSXfVT5Nxw/FoHXqj1fiMg==", + "requires": { + "@aws-sdk/node-http-handler": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-buffer-from": "3.208.0", + "tslib": "^2.3.1" + }, + "dependencies": { + "@aws-sdk/abort-controller": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.272.0.tgz", + "integrity": "sha512-s2TV3phapcTwZNr4qLxbfuQuE9ZMP4RoJdkvRRCkKdm6jslsWLJf2Zlcxti/23hOlINUMYv2iXE2pftIgWGdpg==", + "requires": { + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/node-http-handler": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.272.0.tgz", + "integrity": "sha512-VrW9PjhhngeyYp4yGYPe5S0vgZH6NwU3Po9xAgayUeE37Inr7LS1YteFMHdpgsUUeNXnh7d06CXqHo1XjtqOKA==", + "requires": { + "@aws-sdk/abort-controller": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/querystring-builder": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/protocol-http": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.272.0.tgz", + "integrity": "sha512-4JQ54v5Yn08jspNDeHo45CaSn1CvTJqS1Ywgr79eU6jBExtguOWv6LNtwVSBD9X37v88iqaxt8iu1Z3pZZAJeg==", + "requires": { + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/querystring-builder": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.272.0.tgz", + "integrity": "sha512-ndo++7GkdCj5tBXE6rGcITpSpZS4PfyV38wntGYAlj9liL1omk3bLZRY6uzqqkJpVHqbg2fD7O2qHNItzZgqhw==", + "requires": { + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/types": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.272.0.tgz", + "integrity": "sha512-MmmL6vxMGP5Bsi+4wRx4mxYlU/LX6M0noOXrDh/x5FfG7/4ZOar/nDxqDadhJtNM88cuWVHZWY59P54JzkGWmA==", + "requires": { + "tslib": "^2.3.1" + } + } + } + }, "@aws-sdk/util-uri-escape": { "version": "3.201.0", "requires": { @@ -54234,93 +58013,728 @@ "version": "7.2.0", "peer": true, "requires": { - "has-flag": "^4.0.0" + "has-flag": "^4.0.0" + } + }, + "universalify": { + "version": "0.1.2", + "peer": true + }, + "which": { + "version": "1.3.1", + "peer": true, + "requires": { + "isexe": "^2.0.0" + } + } + } + }, + "@react-native-community/cli-platform-ios": { + "version": "9.3.0", + "peer": true, + "requires": { + "@react-native-community/cli-tools": "^9.2.1", + "chalk": "^4.1.2", + "execa": "^1.0.0", + "glob": "^7.1.3", + "ora": "^5.4.1" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "peer": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "peer": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "peer": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "peer": true + }, + "cross-spawn": { + "version": "6.0.5", + "peer": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "execa": { + "version": "1.0.0", + "peer": true, + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "get-stream": { + "version": "4.1.0", + "peer": true, + "requires": { + "pump": "^3.0.0" + } + }, + "glob": { + "version": "7.2.3", + "peer": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "has-flag": { + "version": "4.0.0", + "peer": true + }, + "is-stream": { + "version": "1.1.0", + "peer": true + }, + "npm-run-path": { + "version": "2.0.2", + "peer": true, + "requires": { + "path-key": "^2.0.0" + } + }, + "path-key": { + "version": "2.0.1", + "peer": true + }, + "semver": { + "version": "5.7.1", + "peer": true + }, + "shebang-command": { + "version": "1.2.0", + "peer": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "peer": true + }, + "supports-color": { + "version": "7.2.0", + "peer": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "which": { + "version": "1.3.1", + "peer": true, + "requires": { + "isexe": "^2.0.0" + } + } + } + }, + "@react-native-community/cli-plugin-metro": { + "version": "9.2.1", + "peer": true, + "requires": { + "@react-native-community/cli-server-api": "^9.2.1", + "@react-native-community/cli-tools": "^9.2.1", + "chalk": "^4.1.2", + "metro": "0.72.3", + "metro-config": "0.72.3", + "metro-core": "0.72.3", + "metro-react-native-babel-transformer": "0.72.3", + "metro-resolver": "0.72.3", + "metro-runtime": "0.72.3", + "readline": "^1.3.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "peer": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "peer": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "peer": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "peer": true + }, + "has-flag": { + "version": "4.0.0", + "peer": true + }, + "supports-color": { + "version": "7.2.0", + "peer": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "@react-native-community/cli-server-api": { + "version": "9.2.1", + "peer": true, + "requires": { + "@react-native-community/cli-debugger-ui": "^9.0.0", + "@react-native-community/cli-tools": "^9.2.1", + "compression": "^1.7.1", + "connect": "^3.6.5", + "errorhandler": "^1.5.0", + "nocache": "^3.0.1", + "pretty-format": "^26.6.2", + "serve-static": "^1.13.1", + "ws": "^7.5.1" + }, + "dependencies": { + "ws": { + "version": "7.5.9", + "peer": true, + "requires": {} + } + } + }, + "@react-native-community/cli-tools": { + "version": "9.2.1", + "peer": true, + "requires": { + "appdirsjs": "^1.2.4", + "chalk": "^4.1.2", + "find-up": "^5.0.0", + "mime": "^2.4.1", + "node-fetch": "^2.6.0", + "open": "^6.2.0", + "ora": "^5.4.1", + "semver": "^6.3.0", + "shell-quote": "^1.7.3" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "peer": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "peer": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "peer": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "peer": true + }, + "find-up": { + "version": "5.0.0", + "peer": true, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "has-flag": { + "version": "4.0.0", + "peer": true + }, + "is-wsl": { + "version": "1.1.0", + "peer": true + }, + "locate-path": { + "version": "6.0.0", + "peer": true, + "requires": { + "p-locate": "^5.0.0" + } + }, + "open": { + "version": "6.4.0", + "peer": true, + "requires": { + "is-wsl": "^1.1.0" + } + }, + "p-limit": { + "version": "3.1.0", + "peer": true, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "peer": true, + "requires": { + "p-limit": "^3.0.2" + } + }, + "supports-color": { + "version": "7.2.0", + "peer": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "@react-native-community/cli-types": { + "version": "9.1.0", + "peer": true, + "requires": { + "joi": "^17.2.1" + } + }, + "@react-native/assets": { + "version": "1.0.0", + "peer": true + }, + "@react-native/normalize-color": { + "version": "2.0.0", + "peer": true + }, + "@react-native/polyfills": { + "version": "2.0.0", + "peer": true + }, + "@sideway/address": { + "version": "4.1.4", + "peer": true, + "requires": { + "@hapi/hoek": "^9.0.0" + } + }, + "@sideway/formula": { + "version": "3.0.1", + "peer": true + }, + "@sideway/pinpoint": { + "version": "2.0.0", + "peer": true + }, + "@tootallnate/once": { + "version": "2.0.0", + "dev": true + }, + "@turf/boolean-clockwise": { + "version": "6.5.0", + "requires": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + } + }, + "@turf/helpers": { + "version": "6.5.0" + }, + "@turf/invariant": { + "version": "6.5.0", + "requires": { + "@turf/helpers": "^6.5.0" + } + }, + "@types/archiver": { + "version": "5.3.1", + "requires": { + "@types/glob": "*" + } + }, + "@types/chai": { + "version": "4.3.4", + "dev": true + }, + "@types/chai-subset": { + "version": "1.3.3", + "dev": true, + "requires": { + "@types/chai": "*" + } + }, + "@types/cookie": { + "version": "0.3.3" + }, + "@types/glob": { + "version": "8.0.0", + "requires": { + "@types/minimatch": "*", + "@types/node": "*" + } + }, + "@types/istanbul-lib-coverage": { + "version": "2.0.4", + "peer": true + }, + "@types/istanbul-lib-report": { + "version": "3.0.0", + "peer": true, + "requires": { + "@types/istanbul-lib-coverage": "*" + } + }, + "@types/istanbul-reports": { + "version": "3.0.1", + "peer": true, + "requires": { + "@types/istanbul-lib-report": "*" + } + }, + "@types/json5": { + "version": "0.0.29", + "dev": true + }, + "@types/minimatch": { + "version": "3.0.5" + }, + "@types/minimist": { + "version": "1.2.2", + "dev": true + }, + "@types/node": { + "version": "18.11.18" + }, + "@types/normalize-package-data": { + "version": "2.4.1", + "dev": true + }, + "@types/parse-json": { + "version": "4.0.0", + "dev": true + }, + "@types/qrcode-terminal": { + "version": "0.12.0" + }, + "@types/ramda": { + "version": "0.28.20", + "dev": true, + "requires": { + "ts-toolbelt": "^6.15.1" + } + }, + "@types/yargs-parser": { + "version": "21.0.0", + "peer": true + }, + "@vitest/expect": { + "version": "0.28.5", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-0.28.5.tgz", + "integrity": "sha512-gqTZwoUTwepwGIatnw4UKpQfnoyV0Z9Czn9+Lo2/jLIt4/AXLTn+oVZxlQ7Ng8bzcNkR+3DqLJ08kNr8jRmdNQ==", + "dev": true, + "requires": { + "@vitest/spy": "0.28.5", + "@vitest/utils": "0.28.5", + "chai": "^4.3.7" + } + }, + "@vitest/runner": { + "version": "0.28.5", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-0.28.5.tgz", + "integrity": "sha512-NKkHtLB+FGjpp5KmneQjTcPLWPTDfB7ie+MmF1PnUBf/tGe2OjGxWyB62ySYZ25EYp9krR5Bw0YPLS/VWh1QiA==", + "dev": true, + "requires": { + "@vitest/utils": "0.28.5", + "p-limit": "^4.0.0", + "pathe": "^1.1.0" + }, + "dependencies": { + "p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "dev": true, + "requires": { + "yocto-queue": "^1.0.0" } }, - "universalify": { - "version": "0.1.2", - "peer": true + "pathe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.0.tgz", + "integrity": "sha512-ODbEPR0KKHqECXW1GoxdDb+AZvULmXjVPy4rt+pGo2+TnjJTIPJQSVS6N63n8T2Ip+syHhbn52OewKicV0373w==", + "dev": true }, - "which": { - "version": "1.3.1", - "peer": true, - "requires": { - "isexe": "^2.0.0" - } + "yocto-queue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "dev": true } } }, - "@react-native-community/cli-platform-ios": { - "version": "9.3.0", - "peer": true, + "@vitest/spy": { + "version": "0.28.5", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-0.28.5.tgz", + "integrity": "sha512-7if6rsHQr9zbmvxN7h+gGh2L9eIIErgf8nSKYDlg07HHimCxp4H6I/X/DPXktVPPLQfiZ1Cw2cbDIx9fSqDjGw==", + "dev": true, "requires": { - "@react-native-community/cli-tools": "^9.2.1", - "chalk": "^4.1.2", - "execa": "^1.0.0", - "glob": "^7.1.3", - "ora": "^5.4.1" + "tinyspy": "^1.0.2" + } + }, + "@vitest/utils": { + "version": "0.28.5", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-0.28.5.tgz", + "integrity": "sha512-UyZdYwdULlOa4LTUSwZ+Paz7nBHGTT72jKwdFSV4IjHF1xsokp+CabMdhjvVhYwkLfO88ylJT46YMilnkSARZA==", + "dev": true, + "requires": { + "cli-truncate": "^3.1.0", + "diff": "^5.1.0", + "loupe": "^2.3.6", + "picocolors": "^1.0.0", + "pretty-format": "^27.5.1" }, "dependencies": { "ansi-styles": { - "version": "4.3.0", - "peer": true, - "requires": { - "color-convert": "^2.0.1" - } + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true }, - "chalk": { - "version": "4.1.2", - "peer": true, + "pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" } - }, - "color-convert": { + } + } + }, + "@yarnpkg/lockfile": { + "version": "1.1.0", + "dev": true + }, + "@yarnpkg/parsers": { + "version": "3.0.0-rc.34", + "dev": true, + "requires": { + "js-yaml": "^3.10.0", + "tslib": "^2.4.0" + } + }, + "@zkochan/js-yaml": { + "version": "0.0.6", + "dev": true, + "requires": { + "argparse": "^2.0.1" + }, + "dependencies": { + "argparse": { "version": "2.0.1", - "peer": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", + "dev": true + } + } + }, + "abbrev": { + "version": "1.1.1", + "dev": true + }, + "abort-controller": { + "version": "3.0.0", + "peer": true, + "requires": { + "event-target-shim": "^5.0.0" + } + }, + "absolute-path": { + "version": "0.0.0", + "peer": true + }, + "accepts": { + "version": "1.3.8", + "peer": true, + "requires": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + } + }, + "acorn": { + "version": "8.8.1", + "dev": true + }, + "acorn-walk": { + "version": "8.2.0", + "dev": true + }, + "add-stream": { + "version": "1.0.0", + "dev": true + }, + "agent-base": { + "version": "6.0.2", + "dev": true, + "requires": { + "debug": "4" + } + }, + "agentkeepalive": { + "version": "4.2.1", + "dev": true, + "requires": { + "debug": "^4.1.0", + "depd": "^1.1.2", + "humanize-ms": "^1.2.1" + } + }, + "aggregate-error": { + "version": "3.1.0", + "dev": true, + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, + "amazon-cognito-identity-js": { + "version": "5.2.14", + "requires": { + "buffer": "4.9.2", + "crypto-js": "^4.1.1", + "fast-base64-decode": "^1.0.0", + "isomorphic-unfetch": "^3.0.0", + "js-cookie": "^2.2.1" + } + }, + "anser": { + "version": "1.4.10", + "peer": true + }, + "ansi-colors": { + "version": "4.1.3", + "dev": true + }, + "ansi-escapes": { + "version": "4.3.2", + "dev": true, + "requires": { + "type-fest": "^0.21.3" + } + }, + "ansi-fragments": { + "version": "0.2.1", + "peer": true, + "requires": { + "colorette": "^1.0.7", + "slice-ansi": "^2.0.0", + "strip-ansi": "^5.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.1", "peer": true }, - "cross-spawn": { - "version": "6.0.5", - "peer": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "execa": { - "version": "1.0.0", - "peer": true, - "requires": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - } - }, - "get-stream": { - "version": "4.1.0", + "strip-ansi": { + "version": "5.2.0", "peer": true, "requires": { - "pump": "^3.0.0" + "ansi-regex": "^4.1.0" } - }, + } + } + }, + "ansi-regex": { + "version": "5.0.1" + }, + "ansi-styles": { + "version": "3.2.1", + "requires": { + "color-convert": "^1.9.0" + } + }, + "anymatch": { + "version": "3.1.3", + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "appdirsjs": { + "version": "1.2.7", + "peer": true + }, + "aproba": { + "version": "2.0.0", + "dev": true + }, + "archiver": { + "version": "5.3.1", + "requires": { + "archiver-utils": "^2.1.0", + "async": "^3.2.3", + "buffer-crc32": "^0.2.1", + "readable-stream": "^3.6.0", + "readdir-glob": "^1.0.0", + "tar-stream": "^2.2.0", + "zip-stream": "^4.1.0" + } + }, + "archiver-utils": { + "version": "2.1.0", + "requires": { + "glob": "^7.1.4", + "graceful-fs": "^4.2.0", + "lazystream": "^1.0.0", + "lodash.defaults": "^4.2.0", + "lodash.difference": "^4.5.0", + "lodash.flatten": "^4.4.0", + "lodash.isplainobject": "^4.0.6", + "lodash.union": "^4.6.0", + "normalize-path": "^3.0.0", + "readable-stream": "^2.0.0" + }, + "dependencies": { "glob": { "version": "7.2.3", - "peer": true, "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -54330,2005 +58744,2392 @@ "path-is-absolute": "^1.0.0" } }, - "has-flag": { - "version": "4.0.0", - "peer": true - }, - "is-stream": { - "version": "1.1.0", - "peer": true - }, - "npm-run-path": { - "version": "2.0.2", - "peer": true, - "requires": { - "path-key": "^2.0.0" - } - }, - "path-key": { - "version": "2.0.1", - "peer": true - }, - "semver": { - "version": "5.7.1", - "peer": true - }, - "shebang-command": { - "version": "1.2.0", - "peer": true, + "readable-stream": { + "version": "2.3.7", "requires": { - "shebang-regex": "^1.0.0" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" } }, - "shebang-regex": { - "version": "1.0.0", - "peer": true - }, - "supports-color": { - "version": "7.2.0", - "peer": true, - "requires": { - "has-flag": "^4.0.0" - } + "safe-buffer": { + "version": "5.1.2" }, - "which": { - "version": "1.3.1", - "peer": true, + "string_decoder": { + "version": "1.1.1", "requires": { - "isexe": "^2.0.0" + "safe-buffer": "~5.1.0" } } } }, - "@react-native-community/cli-plugin-metro": { - "version": "9.2.1", + "are-we-there-yet": { + "version": "3.0.1", + "dev": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + } + }, + "argparse": { + "version": "1.0.10", + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "arr-diff": { + "version": "4.0.0", + "peer": true + }, + "arr-flatten": { + "version": "1.1.0", + "peer": true + }, + "arr-union": { + "version": "3.1.0", + "peer": true + }, + "array-differ": { + "version": "3.0.0", + "dev": true + }, + "array-ify": { + "version": "1.0.0", + "dev": true + }, + "array-union": { + "version": "2.1.0", + "dev": true + }, + "array-unique": { + "version": "0.3.2", + "peer": true + }, + "arrify": { + "version": "1.0.1", + "dev": true + }, + "asap": { + "version": "2.0.6" + }, + "assertion-error": { + "version": "1.1.0", + "dev": true + }, + "assign-symbols": { + "version": "1.0.0", + "peer": true + }, + "ast-types": { + "version": "0.14.2", + "peer": true, + "requires": { + "tslib": "^2.0.1" + } + }, + "astral-regex": { + "version": "1.0.0", + "peer": true + }, + "async": { + "version": "3.2.4" + }, + "async-limiter": { + "version": "1.0.1", + "peer": true + }, + "asynckit": { + "version": "0.4.0", + "dev": true + }, + "at-least-node": { + "version": "1.0.0", + "dev": true + }, + "atob": { + "version": "2.1.2", + "peer": true + }, + "aws-amplify": { + "version": "4.3.45", + "requires": { + "@aws-amplify/analytics": "5.2.30", + "@aws-amplify/api": "4.0.63", + "@aws-amplify/auth": "4.6.16", + "@aws-amplify/cache": "4.0.65", + "@aws-amplify/core": "4.7.14", + "@aws-amplify/datastore": "3.14.6", + "@aws-amplify/geo": "1.3.26", + "@aws-amplify/interactions": "4.1.11", + "@aws-amplify/predictions": "4.0.63", + "@aws-amplify/pubsub": "4.5.13", + "@aws-amplify/storage": "4.5.16", + "@aws-amplify/ui": "2.0.7", + "@aws-amplify/xr": "3.0.63" + } + }, + "axios": { + "version": "0.26.0", + "requires": { + "follow-redirects": "^1.14.8" + } + }, + "babel-core": { + "version": "7.0.0-bridge.0", + "peer": true, + "requires": {} + }, + "babel-plugin-polyfill-corejs2": { + "version": "0.3.3", + "peer": true, + "requires": { + "@babel/compat-data": "^7.17.7", + "@babel/helper-define-polyfill-provider": "^0.3.3", + "semver": "^6.1.1" + } + }, + "babel-plugin-polyfill-corejs3": { + "version": "0.6.0", + "peer": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.3.3", + "core-js-compat": "^3.25.1" + } + }, + "babel-plugin-polyfill-regenerator": { + "version": "0.4.1", + "peer": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.3.3" + } + }, + "babel-plugin-syntax-trailing-function-commas": { + "version": "7.0.0-beta.0", + "peer": true + }, + "babel-preset-fbjs": { + "version": "3.4.0", + "peer": true, + "requires": { + "@babel/plugin-proposal-class-properties": "^7.0.0", + "@babel/plugin-proposal-object-rest-spread": "^7.0.0", + "@babel/plugin-syntax-class-properties": "^7.0.0", + "@babel/plugin-syntax-flow": "^7.0.0", + "@babel/plugin-syntax-jsx": "^7.0.0", + "@babel/plugin-syntax-object-rest-spread": "^7.0.0", + "@babel/plugin-transform-arrow-functions": "^7.0.0", + "@babel/plugin-transform-block-scoped-functions": "^7.0.0", + "@babel/plugin-transform-block-scoping": "^7.0.0", + "@babel/plugin-transform-classes": "^7.0.0", + "@babel/plugin-transform-computed-properties": "^7.0.0", + "@babel/plugin-transform-destructuring": "^7.0.0", + "@babel/plugin-transform-flow-strip-types": "^7.0.0", + "@babel/plugin-transform-for-of": "^7.0.0", + "@babel/plugin-transform-function-name": "^7.0.0", + "@babel/plugin-transform-literals": "^7.0.0", + "@babel/plugin-transform-member-expression-literals": "^7.0.0", + "@babel/plugin-transform-modules-commonjs": "^7.0.0", + "@babel/plugin-transform-object-super": "^7.0.0", + "@babel/plugin-transform-parameters": "^7.0.0", + "@babel/plugin-transform-property-literals": "^7.0.0", + "@babel/plugin-transform-react-display-name": "^7.0.0", + "@babel/plugin-transform-react-jsx": "^7.0.0", + "@babel/plugin-transform-shorthand-properties": "^7.0.0", + "@babel/plugin-transform-spread": "^7.0.0", + "@babel/plugin-transform-template-literals": "^7.0.0", + "babel-plugin-syntax-trailing-function-commas": "^7.0.0-beta.0" + } + }, + "balanced-match": { + "version": "1.0.2" + }, + "base": { + "version": "0.11.2", "peer": true, "requires": { - "@react-native-community/cli-server-api": "^9.2.1", - "@react-native-community/cli-tools": "^9.2.1", - "chalk": "^4.1.2", - "metro": "0.72.3", - "metro-config": "0.72.3", - "metro-core": "0.72.3", - "metro-react-native-babel-transformer": "0.72.3", - "metro-resolver": "0.72.3", - "metro-runtime": "0.72.3", - "readline": "^1.3.0" + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" }, "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "peer": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "peer": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "peer": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "peer": true - }, - "has-flag": { - "version": "4.0.0", - "peer": true - }, - "supports-color": { - "version": "7.2.0", + "define-property": { + "version": "1.0.0", "peer": true, "requires": { - "has-flag": "^4.0.0" + "is-descriptor": "^1.0.0" } } } }, - "@react-native-community/cli-server-api": { - "version": "9.2.1", - "peer": true, + "base-64": { + "version": "1.0.0" + }, + "base64-js": { + "version": "1.5.1" + }, + "before-after-hook": { + "version": "2.2.3", + "dev": true + }, + "bin-links": { + "version": "3.0.3", + "dev": true, "requires": { - "@react-native-community/cli-debugger-ui": "^9.0.0", - "@react-native-community/cli-tools": "^9.2.1", - "compression": "^1.7.1", - "connect": "^3.6.5", - "errorhandler": "^1.5.0", - "nocache": "^3.0.1", - "pretty-format": "^26.6.2", - "serve-static": "^1.13.1", - "ws": "^7.5.1" + "cmd-shim": "^5.0.0", + "mkdirp-infer-owner": "^2.0.0", + "npm-normalize-package-bin": "^2.0.0", + "read-cmd-shim": "^3.0.0", + "rimraf": "^3.0.0", + "write-file-atomic": "^4.0.0" }, "dependencies": { - "ws": { - "version": "7.5.9", - "peer": true, - "requires": {} + "npm-normalize-package-bin": { + "version": "2.0.0", + "dev": true } } }, - "@react-native-community/cli-tools": { - "version": "9.2.1", - "peer": true, + "binary-extensions": { + "version": "2.2.0", + "dev": true + }, + "bl": { + "version": "4.1.0", "requires": { - "appdirsjs": "^1.2.4", - "chalk": "^4.1.2", - "find-up": "^5.0.0", - "mime": "^2.4.1", - "node-fetch": "^2.6.0", - "open": "^6.2.0", - "ora": "^5.4.1", - "semver": "^6.3.0", - "shell-quote": "^1.7.3" + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" }, "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "peer": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "peer": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "peer": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "peer": true - }, - "find-up": { - "version": "5.0.0", - "peer": true, + "buffer": { + "version": "5.7.1", "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" } - }, - "has-flag": { - "version": "4.0.0", - "peer": true - }, - "is-wsl": { - "version": "1.1.0", - "peer": true - }, - "locate-path": { + } + } + }, + "bowser": { + "version": "2.11.0" + }, + "brace-expansion": { + "version": "1.1.11", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "3.0.2", + "requires": { + "fill-range": "^7.0.1" + } + }, + "browserslist": { + "version": "4.21.4", + "peer": true, + "requires": { + "caniuse-lite": "^1.0.30001400", + "electron-to-chromium": "^1.4.251", + "node-releases": "^2.0.6", + "update-browserslist-db": "^1.0.9" + } + }, + "bser": { + "version": "2.1.1", + "peer": true, + "requires": { + "node-int64": "^0.4.0" + } + }, + "buffer": { + "version": "4.9.2", + "requires": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + } + }, + "buffer-crc32": { + "version": "0.2.13" + }, + "buffer-from": { + "version": "1.1.2" + }, + "builtins": { + "version": "5.0.1", + "dev": true, + "requires": { + "semver": "^7.0.0" + }, + "dependencies": { + "lru-cache": { "version": "6.0.0", - "peer": true, - "requires": { - "p-locate": "^5.0.0" - } - }, - "open": { - "version": "6.4.0", - "peer": true, - "requires": { - "is-wsl": "^1.1.0" - } - }, - "p-limit": { - "version": "3.1.0", - "peer": true, + "dev": true, "requires": { - "yocto-queue": "^0.1.0" + "yallist": "^4.0.0" } }, - "p-locate": { - "version": "5.0.0", - "peer": true, + "semver": { + "version": "7.3.8", + "dev": true, "requires": { - "p-limit": "^3.0.2" + "lru-cache": "^6.0.0" } }, - "supports-color": { - "version": "7.2.0", - "peer": true, - "requires": { - "has-flag": "^4.0.0" - } + "yallist": { + "version": "4.0.0", + "dev": true } } }, - "@react-native-community/cli-types": { - "version": "9.1.0", - "peer": true, - "requires": { - "joi": "^17.2.1" - } + "byte-size": { + "version": "7.0.1", + "dev": true }, - "@react-native/assets": { - "version": "1.0.0", + "bytes": { + "version": "3.0.0", "peer": true }, - "@react-native/normalize-color": { - "version": "2.0.0", - "peer": true + "cac": { + "version": "6.7.14", + "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", + "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", + "dev": true }, - "@react-native/polyfills": { - "version": "2.0.0", - "peer": true + "cacache": { + "version": "16.1.3", + "dev": true, + "requires": { + "@npmcli/fs": "^2.1.0", + "@npmcli/move-file": "^2.0.0", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", + "glob": "^8.0.1", + "infer-owner": "^1.0.4", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "mkdirp": "^1.0.4", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^9.0.0", + "tar": "^6.1.11", + "unique-filename": "^2.0.0" + }, + "dependencies": { + "lru-cache": { + "version": "7.14.1", + "dev": true + } + } }, - "@sideway/address": { - "version": "4.1.4", + "cache-base": { + "version": "1.0.1", "peer": true, "requires": { - "@hapi/hoek": "^9.0.0" + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" } }, - "@sideway/formula": { - "version": "3.0.1", - "peer": true - }, - "@sideway/pinpoint": { + "caller-callsite": { "version": "2.0.0", - "peer": true + "peer": true, + "requires": { + "callsites": "^2.0.0" + }, + "dependencies": { + "callsites": { + "version": "2.0.0", + "peer": true + } + } }, - "@tootallnate/once": { + "caller-path": { "version": "2.0.0", + "peer": true, + "requires": { + "caller-callsite": "^2.0.0" + } + }, + "callsites": { + "version": "3.1.0", "dev": true }, - "@turf/boolean-clockwise": { - "version": "6.5.0", + "camelcase": { + "version": "5.3.1" + }, + "camelcase-keys": { + "version": "6.2.2", "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "camelcase": "^5.3.1", + "map-obj": "^4.0.0", + "quick-lru": "^4.0.1" } }, - "@turf/helpers": { - "version": "6.5.0" + "caniuse-lite": { + "version": "1.0.30001441", + "peer": true }, - "@turf/invariant": { - "version": "6.5.0", + "chai": { + "version": "4.3.7", + "dev": true, "requires": { - "@turf/helpers": "^6.5.0" + "assertion-error": "^1.1.0", + "check-error": "^1.0.2", + "deep-eql": "^4.1.2", + "get-func-name": "^2.0.0", + "loupe": "^2.3.1", + "pathval": "^1.1.1", + "type-detect": "^4.0.5" } }, - "@types/archiver": { - "version": "5.3.1", + "chalk": { + "version": "2.4.2", "requires": { - "@types/glob": "*" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" } }, - "@types/chai": { - "version": "4.3.4", + "chardet": { + "version": "0.7.0" + }, + "check-error": { + "version": "1.0.2", "dev": true }, - "@types/chai-subset": { - "version": "1.3.3", + "chokidar": { + "version": "3.5.3", "dev": true, "requires": { - "@types/chai": "*" + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" } }, - "@types/cookie": { - "version": "0.3.3" - }, - "@types/glob": { - "version": "8.0.0", - "requires": { - "@types/minimatch": "*", - "@types/node": "*" - } + "chownr": { + "version": "2.0.0", + "dev": true }, - "@types/istanbul-lib-coverage": { - "version": "2.0.4", + "ci-info": { + "version": "3.7.0", "peer": true }, - "@types/istanbul-lib-report": { - "version": "3.0.0", - "peer": true, - "requires": { - "@types/istanbul-lib-coverage": "*" - } - }, - "@types/istanbul-reports": { - "version": "3.0.1", + "class-utils": { + "version": "0.3.6", "peer": true, "requires": { - "@types/istanbul-lib-report": "*" + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "peer": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "peer": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "peer": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "peer": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "peer": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "peer": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + }, + "kind-of": { + "version": "5.1.0", + "peer": true + } } }, - "@types/json5": { - "version": "0.0.29", - "dev": true - }, - "@types/minimatch": { - "version": "3.0.5" - }, - "@types/minimist": { - "version": "1.2.2", - "dev": true - }, - "@types/node": { - "version": "18.11.18" - }, - "@types/normalize-package-data": { - "version": "2.4.1", - "dev": true - }, - "@types/parse-json": { - "version": "4.0.0", + "clean-stack": { + "version": "2.2.0", "dev": true }, - "@types/qrcode-terminal": { - "version": "0.12.0" - }, - "@types/ramda": { - "version": "0.28.20", - "dev": true, + "cli-cursor": { + "version": "3.1.0", "requires": { - "ts-toolbelt": "^6.15.1" + "restore-cursor": "^3.1.0" } }, - "@types/yargs-parser": { - "version": "21.0.0", - "peer": true - }, - "@vitest/expect": { - "version": "0.28.4", - "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-0.28.4.tgz", - "integrity": "sha512-JqK0NZ4brjvOSL8hXAnIsfi+jxDF7rH/ZWCGCt0FAqRnVFc1hXsfwXksQvEnKqD84avRt3gmeXoK4tNbmkoVsQ==", - "dev": true, - "requires": { - "@vitest/spy": "0.28.4", - "@vitest/utils": "0.28.4", - "chai": "^4.3.7" - } + "cli-spinners": { + "version": "2.6.1" }, - "@vitest/runner": { - "version": "0.28.4", - "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-0.28.4.tgz", - "integrity": "sha512-Q8UV6GjDvBSTfUoq0QXVCNpNOUrWu4P2qvRq7ssJWzn0+S0ojbVOxEjMt+8a32X6SdkhF8ak+2nkppsqV0JyNQ==", + "cli-truncate": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", + "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", "dev": true, "requires": { - "@vitest/utils": "0.28.4", - "p-limit": "^4.0.0", - "pathe": "^1.1.0" + "slice-ansi": "^5.0.0", + "string-width": "^5.0.0" }, "dependencies": { - "p-limit": { + "ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true + }, + "ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true + }, + "emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "is-fullwidth-code-point": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", - "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", + "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", + "dev": true + }, + "slice-ansi": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", + "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", "dev": true, "requires": { - "yocto-queue": "^1.0.0" + "ansi-styles": "^6.0.0", + "is-fullwidth-code-point": "^4.0.0" } }, - "pathe": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.0.tgz", - "integrity": "sha512-ODbEPR0KKHqECXW1GoxdDb+AZvULmXjVPy4rt+pGo2+TnjJTIPJQSVS6N63n8T2Ip+syHhbn52OewKicV0373w==", - "dev": true + "string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "requires": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + } }, - "yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", - "dev": true + "strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "dev": true, + "requires": { + "ansi-regex": "^6.0.1" + } } } }, - "@vitest/spy": { - "version": "0.28.4", - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-0.28.4.tgz", - "integrity": "sha512-8WuhfXLlvCXpNXEGJW6Gc+IKWI32435fQJLh43u70HnZ1otJOa2Cmg2Wy2Aym47ZnNCP4NolF+8cUPwd0MigKQ==", + "cli-width": { + "version": "3.0.0", + "dev": true + }, + "cliui": { + "version": "7.0.4", "dev": true, "requires": { - "tinyspy": "^1.0.2" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" } }, - "@vitest/utils": { - "version": "0.28.4", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-0.28.4.tgz", - "integrity": "sha512-l2QztOLdc2LkR+w/lP52RGh8hW+Ul4KESmCAgVE8q737I7e7bQoAfkARKpkPJ4JQtGpwW4deqlj1732VZD7TFw==", - "dev": true, + "clone": { + "version": "1.0.4" + }, + "clone-deep": { + "version": "4.0.1", "requires": { - "cli-truncate": "^3.1.0", - "diff": "^5.1.0", - "loupe": "^2.3.6", - "picocolors": "^1.0.0", - "pretty-format": "^27.5.1" + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" }, "dependencies": { - "ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", - "dev": true - }, - "pretty-format": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", - "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", - "dev": true, + "is-plain-object": { + "version": "2.0.4", "requires": { - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" + "isobject": "^3.0.1" } } } }, - "@yarnpkg/lockfile": { - "version": "1.1.0", - "dev": true - }, - "@yarnpkg/parsers": { - "version": "3.0.0-rc.34", + "cmd-shim": { + "version": "5.0.0", "dev": true, "requires": { - "js-yaml": "^3.10.0", - "tslib": "^2.4.0" + "mkdirp-infer-owner": "^2.0.0" } }, - "@zkochan/js-yaml": { - "version": "0.0.6", - "dev": true, + "collection-visit": { + "version": "1.0.0", + "peer": true, "requires": { - "argparse": "^2.0.1" - }, - "dependencies": { - "argparse": { - "version": "2.0.1", - "dev": true - } + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" } }, - "abbrev": { - "version": "1.1.1", - "dev": true - }, - "abort-controller": { - "version": "3.0.0", - "peer": true, + "color-convert": { + "version": "1.9.3", "requires": { - "event-target-shim": "^5.0.0" + "color-name": "1.1.3" } }, - "absolute-path": { - "version": "0.0.0", + "color-name": { + "version": "1.1.3" + }, + "color-support": { + "version": "1.1.3", + "dev": true + }, + "colorette": { + "version": "1.4.0", "peer": true }, - "accepts": { - "version": "1.3.8", - "peer": true, + "columnify": { + "version": "1.6.0", + "dev": true, "requires": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" + "strip-ansi": "^6.0.1", + "wcwidth": "^1.0.0" } }, - "acorn": { - "version": "8.8.1", - "dev": true + "combined-stream": { + "version": "1.0.8", + "dev": true, + "requires": { + "delayed-stream": "~1.0.0" + } }, - "acorn-walk": { - "version": "8.2.0", - "dev": true + "command-exists": { + "version": "1.2.9", + "peer": true }, - "add-stream": { - "version": "1.0.0", + "commander": { + "version": "9.4.1", + "peer": true + }, + "common-ancestor-path": { + "version": "1.0.1", "dev": true }, - "agent-base": { - "version": "6.0.2", + "commondir": { + "version": "1.0.1", + "peer": true + }, + "compare-func": { + "version": "2.0.0", "dev": true, "requires": { - "debug": "4" + "array-ify": "^1.0.0", + "dot-prop": "^5.1.0" + }, + "dependencies": { + "dot-prop": { + "version": "5.3.0", + "dev": true, + "requires": { + "is-obj": "^2.0.0" + } + } } }, - "agentkeepalive": { - "version": "4.2.1", - "dev": true, + "component-emitter": { + "version": "1.3.0", + "peer": true + }, + "compress-commons": { + "version": "4.1.1", "requires": { - "debug": "^4.1.0", - "depd": "^1.1.2", - "humanize-ms": "^1.2.1" + "buffer-crc32": "^0.2.13", + "crc32-stream": "^4.0.2", + "normalize-path": "^3.0.0", + "readable-stream": "^3.6.0" } }, - "aggregate-error": { - "version": "3.1.0", - "dev": true, + "compressible": { + "version": "2.0.18", + "peer": true, "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" + "mime-db": ">= 1.43.0 < 2" } }, - "amazon-cognito-identity-js": { - "version": "5.2.14", + "compression": { + "version": "1.7.4", + "peer": true, "requires": { - "buffer": "4.9.2", - "crypto-js": "^4.1.1", - "fast-base64-decode": "^1.0.0", - "isomorphic-unfetch": "^3.0.0", - "js-cookie": "^2.2.1" + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "peer": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "peer": true + }, + "safe-buffer": { + "version": "5.1.2", + "peer": true + } } }, - "anser": { - "version": "1.4.10", - "peer": true + "concat-map": { + "version": "0.0.1" }, - "ansi-colors": { - "version": "4.1.3", - "dev": true + "concat-stream": { + "version": "2.0.0", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.0.2", + "typedarray": "^0.0.6" + } }, - "ansi-escapes": { - "version": "4.3.2", + "config-chain": { + "version": "1.1.13", "dev": true, "requires": { - "type-fest": "^0.21.3" + "ini": "^1.3.4", + "proto-list": "~1.2.1" } }, - "ansi-fragments": { - "version": "0.2.1", + "connect": { + "version": "3.7.0", "peer": true, "requires": { - "colorette": "^1.0.7", - "slice-ansi": "^2.0.0", - "strip-ansi": "^5.0.0" + "debug": "2.6.9", + "finalhandler": "1.1.2", + "parseurl": "~1.3.3", + "utils-merge": "1.0.1" }, "dependencies": { - "ansi-regex": { - "version": "4.1.1", - "peer": true - }, - "strip-ansi": { - "version": "5.2.0", + "debug": { + "version": "2.6.9", "peer": true, "requires": { - "ansi-regex": "^4.1.0" + "ms": "2.0.0" } + }, + "ms": { + "version": "2.0.0", + "peer": true } } }, - "ansi-regex": { - "version": "5.0.1" + "console-control-strings": { + "version": "1.1.0", + "dev": true }, - "ansi-styles": { - "version": "3.2.1", + "conventional-changelog-angular": { + "version": "5.0.13", + "dev": true, "requires": { - "color-convert": "^1.9.0" + "compare-func": "^2.0.0", + "q": "^1.5.1" } }, - "anymatch": { - "version": "3.1.3", + "conventional-changelog-core": { + "version": "4.2.4", + "dev": true, "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" + "add-stream": "^1.0.0", + "conventional-changelog-writer": "^5.0.0", + "conventional-commits-parser": "^3.2.0", + "dateformat": "^3.0.0", + "get-pkg-repo": "^4.0.0", + "git-raw-commits": "^2.0.8", + "git-remote-origin-url": "^2.0.0", + "git-semver-tags": "^4.1.1", + "lodash": "^4.17.15", + "normalize-package-data": "^3.0.0", + "q": "^1.5.1", + "read-pkg": "^3.0.0", + "read-pkg-up": "^3.0.0", + "through2": "^4.0.0" } }, - "appdirsjs": { - "version": "1.2.7", - "peer": true - }, - "aproba": { - "version": "2.0.0", + "conventional-changelog-preset-loader": { + "version": "2.3.4", "dev": true }, - "archiver": { - "version": "5.3.1", + "conventional-changelog-writer": { + "version": "5.0.1", + "dev": true, "requires": { - "archiver-utils": "^2.1.0", - "async": "^3.2.3", - "buffer-crc32": "^0.2.1", - "readable-stream": "^3.6.0", - "readdir-glob": "^1.0.0", - "tar-stream": "^2.2.0", - "zip-stream": "^4.1.0" + "conventional-commits-filter": "^2.0.7", + "dateformat": "^3.0.0", + "handlebars": "^4.7.7", + "json-stringify-safe": "^5.0.1", + "lodash": "^4.17.15", + "meow": "^8.0.0", + "semver": "^6.0.0", + "split": "^1.0.0", + "through2": "^4.0.0" } }, - "archiver-utils": { - "version": "2.1.0", + "conventional-commits-filter": { + "version": "2.0.7", + "dev": true, "requires": { - "glob": "^7.1.4", - "graceful-fs": "^4.2.0", - "lazystream": "^1.0.0", - "lodash.defaults": "^4.2.0", - "lodash.difference": "^4.5.0", - "lodash.flatten": "^4.4.0", - "lodash.isplainobject": "^4.0.6", - "lodash.union": "^4.6.0", - "normalize-path": "^3.0.0", - "readable-stream": "^2.0.0" - }, - "dependencies": { - "glob": { - "version": "7.2.3", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "readable-stream": { - "version": "2.3.7", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "safe-buffer": { - "version": "5.1.2" - }, - "string_decoder": { - "version": "1.1.1", - "requires": { - "safe-buffer": "~5.1.0" - } - } + "lodash.ismatch": "^4.4.0", + "modify-values": "^1.0.0" } }, - "are-we-there-yet": { - "version": "3.0.1", + "conventional-commits-parser": { + "version": "3.2.4", "dev": true, "requires": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" + "is-text-path": "^1.0.1", + "JSONStream": "^1.0.4", + "lodash": "^4.17.15", + "meow": "^8.0.0", + "split2": "^3.0.0", + "through2": "^4.0.0" } }, - "argparse": { - "version": "1.0.10", + "conventional-recommended-bump": { + "version": "6.1.0", + "dev": true, "requires": { - "sprintf-js": "~1.0.2" + "concat-stream": "^2.0.0", + "conventional-changelog-preset-loader": "^2.3.4", + "conventional-commits-filter": "^2.0.7", + "conventional-commits-parser": "^3.2.0", + "git-raw-commits": "^2.0.8", + "git-semver-tags": "^4.1.1", + "meow": "^8.0.0", + "q": "^1.5.1" } }, - "arr-diff": { - "version": "4.0.0", - "peer": true - }, - "arr-flatten": { - "version": "1.1.0", - "peer": true - }, - "arr-union": { - "version": "3.1.0", + "convert-source-map": { + "version": "1.9.0", "peer": true }, - "array-differ": { - "version": "3.0.0", - "dev": true - }, - "array-ify": { - "version": "1.0.0", - "dev": true - }, - "array-union": { - "version": "2.1.0", - "dev": true + "cookie": { + "version": "0.4.2" }, - "array-unique": { - "version": "0.3.2", + "copy-descriptor": { + "version": "0.1.1", "peer": true }, - "arrify": { - "version": "1.0.1", - "dev": true + "core-js-compat": { + "version": "3.27.0", + "peer": true, + "requires": { + "browserslist": "^4.21.4" + } }, - "asap": { - "version": "2.0.6" + "core-util-is": { + "version": "1.0.3" }, - "assertion-error": { - "version": "1.1.0", - "dev": true + "cosmiconfig": { + "version": "7.1.0", + "dev": true, + "requires": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + } }, - "assign-symbols": { - "version": "1.0.0", - "peer": true + "crc-32": { + "version": "1.2.2" }, - "ast-types": { - "version": "0.14.2", - "peer": true, + "crc32-stream": { + "version": "4.0.2", "requires": { - "tslib": "^2.0.1" + "crc-32": "^1.2.0", + "readable-stream": "^3.4.0" } }, - "astral-regex": { - "version": "1.0.0", - "peer": true - }, - "async": { - "version": "3.2.4" + "cross-spawn": { + "version": "7.0.3", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } }, - "async-limiter": { - "version": "1.0.1", - "peer": true + "crypto-js": { + "version": "4.1.1" }, - "asynckit": { - "version": "0.4.0", + "dargs": { + "version": "7.0.0", "dev": true }, - "at-least-node": { - "version": "1.0.0", + "dateformat": { + "version": "3.0.3", "dev": true }, - "atob": { - "version": "2.1.2", + "dayjs": { + "version": "1.11.7", "peer": true }, - "aws-amplify": { - "version": "4.3.45", + "debug": { + "version": "4.3.4", "requires": { - "@aws-amplify/analytics": "5.2.30", - "@aws-amplify/api": "4.0.63", - "@aws-amplify/auth": "4.6.16", - "@aws-amplify/cache": "4.0.65", - "@aws-amplify/core": "4.7.14", - "@aws-amplify/datastore": "3.14.6", - "@aws-amplify/geo": "1.3.26", - "@aws-amplify/interactions": "4.1.11", - "@aws-amplify/predictions": "4.0.63", - "@aws-amplify/pubsub": "4.5.13", - "@aws-amplify/storage": "4.5.16", - "@aws-amplify/ui": "2.0.7", - "@aws-amplify/xr": "3.0.63" + "ms": "2.1.2" } }, - "axios": { - "version": "0.26.0", - "requires": { - "follow-redirects": "^1.14.8" - } + "debuglog": { + "version": "1.0.1", + "dev": true }, - "babel-core": { - "version": "7.0.0-bridge.0", - "peer": true, - "requires": {} + "decamelize": { + "version": "1.2.0" }, - "babel-plugin-polyfill-corejs2": { - "version": "0.3.3", - "peer": true, + "decamelize-keys": { + "version": "1.1.1", + "dev": true, "requires": { - "@babel/compat-data": "^7.17.7", - "@babel/helper-define-polyfill-provider": "^0.3.3", - "semver": "^6.1.1" + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" + }, + "dependencies": { + "map-obj": { + "version": "1.0.1", + "dev": true + } } }, - "babel-plugin-polyfill-corejs3": { - "version": "0.6.0", - "peer": true, - "requires": { - "@babel/helper-define-polyfill-provider": "^0.3.3", - "core-js-compat": "^3.25.1" - } + "decode-uri-component": { + "version": "0.2.2", + "peer": true }, - "babel-plugin-polyfill-regenerator": { - "version": "0.4.1", - "peer": true, + "dedent": { + "version": "0.7.0", + "dev": true + }, + "deep-eql": { + "version": "4.1.3", + "dev": true, "requires": { - "@babel/helper-define-polyfill-provider": "^0.3.3" + "type-detect": "^4.0.0" } }, - "babel-plugin-syntax-trailing-function-commas": { - "version": "7.0.0-beta.0", + "deepmerge": { + "version": "3.3.0", "peer": true }, - "babel-preset-fbjs": { - "version": "3.4.0", - "peer": true, + "defaults": { + "version": "1.0.4", "requires": { - "@babel/plugin-proposal-class-properties": "^7.0.0", - "@babel/plugin-proposal-object-rest-spread": "^7.0.0", - "@babel/plugin-syntax-class-properties": "^7.0.0", - "@babel/plugin-syntax-flow": "^7.0.0", - "@babel/plugin-syntax-jsx": "^7.0.0", - "@babel/plugin-syntax-object-rest-spread": "^7.0.0", - "@babel/plugin-transform-arrow-functions": "^7.0.0", - "@babel/plugin-transform-block-scoped-functions": "^7.0.0", - "@babel/plugin-transform-block-scoping": "^7.0.0", - "@babel/plugin-transform-classes": "^7.0.0", - "@babel/plugin-transform-computed-properties": "^7.0.0", - "@babel/plugin-transform-destructuring": "^7.0.0", - "@babel/plugin-transform-flow-strip-types": "^7.0.0", - "@babel/plugin-transform-for-of": "^7.0.0", - "@babel/plugin-transform-function-name": "^7.0.0", - "@babel/plugin-transform-literals": "^7.0.0", - "@babel/plugin-transform-member-expression-literals": "^7.0.0", - "@babel/plugin-transform-modules-commonjs": "^7.0.0", - "@babel/plugin-transform-object-super": "^7.0.0", - "@babel/plugin-transform-parameters": "^7.0.0", - "@babel/plugin-transform-property-literals": "^7.0.0", - "@babel/plugin-transform-react-display-name": "^7.0.0", - "@babel/plugin-transform-react-jsx": "^7.0.0", - "@babel/plugin-transform-shorthand-properties": "^7.0.0", - "@babel/plugin-transform-spread": "^7.0.0", - "@babel/plugin-transform-template-literals": "^7.0.0", - "babel-plugin-syntax-trailing-function-commas": "^7.0.0-beta.0" + "clone": "^1.0.2" } }, - "balanced-match": { - "version": "1.0.2" + "define-lazy-prop": { + "version": "2.0.0", + "dev": true }, - "base": { - "version": "0.11.2", + "define-property": { + "version": "2.0.2", "peer": true, "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "peer": true, - "requires": { - "is-descriptor": "^1.0.0" - } - } + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" } }, - "base-64": { - "version": "1.0.0" + "delayed-stream": { + "version": "1.0.0", + "dev": true }, - "base64-js": { - "version": "1.5.1" + "delegates": { + "version": "1.0.0", + "dev": true }, - "before-after-hook": { - "version": "2.2.3", + "denodeify": { + "version": "1.2.1", + "peer": true + }, + "depd": { + "version": "1.1.2", "dev": true }, - "bin-links": { - "version": "3.0.3", - "dev": true, - "requires": { - "cmd-shim": "^5.0.0", - "mkdirp-infer-owner": "^2.0.0", - "npm-normalize-package-bin": "^2.0.0", - "read-cmd-shim": "^3.0.0", - "rimraf": "^3.0.0", - "write-file-atomic": "^4.0.0" - }, - "dependencies": { - "npm-normalize-package-bin": { - "version": "2.0.0", - "dev": true - } - } + "deprecation": { + "version": "2.3.1", + "dev": true }, - "binary-extensions": { - "version": "2.2.0", + "destroy": { + "version": "1.2.0", + "peer": true + }, + "detect-indent": { + "version": "6.1.0", "dev": true }, - "bl": { - "version": "4.1.0", + "dezalgo": { + "version": "1.0.4", + "dev": true, "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - }, - "dependencies": { - "buffer": { - "version": "5.7.1", - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - } + "asap": "^2.0.0", + "wrappy": "1" } }, - "bowser": { - "version": "2.11.0" + "diff": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz", + "integrity": "sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==", + "dev": true }, - "brace-expansion": { - "version": "1.1.11", + "dir-glob": { + "version": "3.0.1", + "dev": true, "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "path-type": "^4.0.0" } }, - "braces": { - "version": "3.0.2", + "dot-prop": { + "version": "6.0.1", + "dev": true, "requires": { - "fill-range": "^7.0.1" + "is-obj": "^2.0.0" } }, - "browserslist": { - "version": "4.21.4", - "peer": true, - "requires": { - "caniuse-lite": "^1.0.30001400", - "electron-to-chromium": "^1.4.251", - "node-releases": "^2.0.6", - "update-browserslist-db": "^1.0.9" - } + "dotenv": { + "version": "10.0.0", + "dev": true }, - "bser": { - "version": "2.1.1", - "peer": true, - "requires": { - "node-int64": "^0.4.0" - } + "duplexer": { + "version": "0.1.2", + "dev": true }, - "buffer": { - "version": "4.9.2", + "eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" + }, + "ee-first": { + "version": "1.1.1", + "peer": true + }, + "ejs": { + "version": "3.1.8", + "dev": true, "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" + "jake": "^10.8.5" } }, - "buffer-crc32": { - "version": "0.2.13" + "electron-to-chromium": { + "version": "1.4.284", + "peer": true }, - "buffer-from": { - "version": "1.1.2" + "emoji-regex": { + "version": "8.0.0" }, - "builtins": { - "version": "5.0.1", - "dev": true, + "encodeurl": { + "version": "1.0.2", + "peer": true + }, + "encoding": { + "version": "0.1.13", + "optional": true, "requires": { - "semver": "^7.0.0" + "iconv-lite": "^0.6.2" }, "dependencies": { - "lru-cache": { - "version": "6.0.0", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.3.8", - "dev": true, + "iconv-lite": { + "version": "0.6.3", + "optional": true, "requires": { - "lru-cache": "^6.0.0" + "safer-buffer": ">= 2.1.2 < 3.0.0" } - }, - "yallist": { - "version": "4.0.0", - "dev": true } } }, - "byte-size": { - "version": "7.0.1", + "end-of-stream": { + "version": "1.4.4", + "requires": { + "once": "^1.4.0" + } + }, + "enquirer": { + "version": "2.3.6", + "dev": true, + "requires": { + "ansi-colors": "^4.1.1" + } + }, + "entities": { + "version": "2.2.0" + }, + "env-paths": { + "version": "2.2.1", "dev": true }, - "bytes": { - "version": "3.0.0", - "peer": true + "envinfo": { + "version": "7.8.1" }, - "cac": { - "version": "6.7.14", - "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", - "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", + "err-code": { + "version": "2.0.3", "dev": true }, - "cacache": { - "version": "16.1.3", - "dev": true, + "error-ex": { + "version": "1.3.2", "requires": { - "@npmcli/fs": "^2.1.0", - "@npmcli/move-file": "^2.0.0", - "chownr": "^2.0.0", - "fs-minipass": "^2.1.0", - "glob": "^8.0.1", - "infer-owner": "^1.0.4", - "lru-cache": "^7.7.1", - "minipass": "^3.1.6", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "mkdirp": "^1.0.4", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^9.0.0", - "tar": "^6.1.11", - "unique-filename": "^2.0.0" - }, - "dependencies": { - "lru-cache": { - "version": "7.14.1", - "dev": true - } + "is-arrayish": "^0.2.1" } }, - "cache-base": { - "version": "1.0.1", + "error-stack-parser": { + "version": "2.1.4", "peer": true, "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" + "stackframe": "^1.3.4" } }, - "caller-callsite": { - "version": "2.0.0", + "errorhandler": { + "version": "1.5.1", "peer": true, "requires": { - "callsites": "^2.0.0" - }, - "dependencies": { - "callsites": { - "version": "2.0.0", - "peer": true - } + "accepts": "~1.3.7", + "escape-html": "~1.0.3" } }, - "caller-path": { - "version": "2.0.0", - "peer": true, + "esbuild": { + "version": "0.16.13", + "dev": true, "requires": { - "caller-callsite": "^2.0.0" + "@esbuild/android-arm": "0.16.13", + "@esbuild/android-arm64": "0.16.13", + "@esbuild/android-x64": "0.16.13", + "@esbuild/darwin-arm64": "0.16.13", + "@esbuild/darwin-x64": "0.16.13", + "@esbuild/freebsd-arm64": "0.16.13", + "@esbuild/freebsd-x64": "0.16.13", + "@esbuild/linux-arm": "0.16.13", + "@esbuild/linux-arm64": "0.16.13", + "@esbuild/linux-ia32": "0.16.13", + "@esbuild/linux-loong64": "0.16.13", + "@esbuild/linux-mips64el": "0.16.13", + "@esbuild/linux-ppc64": "0.16.13", + "@esbuild/linux-riscv64": "0.16.13", + "@esbuild/linux-s390x": "0.16.13", + "@esbuild/linux-x64": "0.16.13", + "@esbuild/netbsd-x64": "0.16.13", + "@esbuild/openbsd-x64": "0.16.13", + "@esbuild/sunos-x64": "0.16.13", + "@esbuild/win32-arm64": "0.16.13", + "@esbuild/win32-ia32": "0.16.13", + "@esbuild/win32-x64": "0.16.13" } }, - "callsites": { - "version": "3.1.0", - "dev": true + "escalade": { + "version": "3.1.1" }, - "camelcase": { - "version": "5.3.1" + "escape-html": { + "version": "1.0.3", + "peer": true }, - "camelcase-keys": { - "version": "6.2.2", - "requires": { - "camelcase": "^5.3.1", - "map-obj": "^4.0.0", - "quick-lru": "^4.0.1" - } + "escape-string-regexp": { + "version": "1.0.5" }, - "caniuse-lite": { - "version": "1.0.30001441", - "peer": true + "esprima": { + "version": "4.0.1" }, - "chai": { - "version": "4.3.7", + "esquery": { + "version": "1.4.0", "dev": true, "requires": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.2", - "deep-eql": "^4.1.2", - "get-func-name": "^2.0.0", - "loupe": "^2.3.1", - "pathval": "^1.1.1", - "type-detect": "^4.0.5" + "estraverse": "^5.1.0" } }, - "chalk": { - "version": "2.4.2", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } + "estraverse": { + "version": "5.3.0", + "dev": true }, - "chardet": { - "version": "0.7.0" + "esutils": { + "version": "2.0.3", + "peer": true }, - "check-error": { - "version": "1.0.2", - "dev": true + "etag": { + "version": "1.8.1", + "peer": true }, - "chokidar": { - "version": "3.5.3", - "dev": true, - "requires": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "fsevents": "~2.3.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - } + "event-target-shim": { + "version": "5.0.1", + "peer": true }, - "chownr": { - "version": "2.0.0", + "eventemitter3": { + "version": "4.0.7", "dev": true }, - "ci-info": { - "version": "3.7.0", - "peer": true + "events": { + "version": "3.3.0" }, - "class-utils": { - "version": "0.3.6", - "peer": true, + "example-javascriptv3-cloudwatch": { + "version": "file:example_code/cloudwatch", "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" + "@aws-sdk/client-cloudwatch": "^3.212.0", + "@aws-sdk/client-ec2": "^3.213.0", + "libs": "*", + "ramda": "^0.28.0", + "uuid": "^9.0.0", + "vitest": "^0.25.2" }, "dependencies": { - "define-property": { - "version": "0.2.5", - "peer": true, + "uuid": { + "version": "9.0.0", + "dev": true + }, + "vitest": { + "version": "0.25.8", + "dev": true, + "requires": { + "@types/chai": "^4.3.4", + "@types/chai-subset": "^1.3.3", + "@types/node": "*", + "acorn": "^8.8.1", + "acorn-walk": "^8.2.0", + "chai": "^4.3.7", + "debug": "^4.3.4", + "local-pkg": "^0.4.2", + "source-map": "^0.6.1", + "strip-literal": "^1.0.0", + "tinybench": "^2.3.1", + "tinypool": "^0.3.0", + "tinyspy": "^1.0.2", + "vite": "^3.0.0 || ^4.0.0" + } + } + } + }, + "example-javascriptv3-cloudwatchevents": { + "version": "file:example_code/cloudwatch-events", + "requires": { + "@aws-sdk/client-cloudwatch-events": "^3.229.0", + "@aws-sdk/client-cloudwatch-logs": "^3.229.0", + "@aws-sdk/client-lambda": "^3.229.0", + "libs": "*", + "vitest": "^0.25.7" + }, + "dependencies": { + "@aws-crypto/ie11-detection": { + "version": "3.0.0", + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1" + } + } + }, + "@aws-crypto/sha256-browser": { + "version": "3.0.0", + "requires": { + "@aws-crypto/ie11-detection": "^3.0.0", + "@aws-crypto/sha256-js": "^3.0.0", + "@aws-crypto/supports-web-crypto": "^3.0.0", + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1" + } + } + }, + "@aws-crypto/sha256-js": { + "version": "3.0.0", + "requires": { + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1" + } + } + }, + "@aws-crypto/supports-web-crypto": { + "version": "3.0.0", + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1" + } + } + }, + "@aws-crypto/util": { + "version": "3.0.0", + "requires": { + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1" + } + } + }, + "@aws-sdk/abort-controller": { + "version": "3.254.0", + "requires": { + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-cloudwatch-logs": { + "version": "3.254.0", + "requires": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/client-sts": "3.254.0", + "@aws-sdk/config-resolver": "3.254.0", + "@aws-sdk/credential-provider-node": "3.254.0", + "@aws-sdk/fetch-http-handler": "3.254.0", + "@aws-sdk/hash-node": "3.254.0", + "@aws-sdk/invalid-dependency": "3.254.0", + "@aws-sdk/middleware-content-length": "3.254.0", + "@aws-sdk/middleware-endpoint": "3.254.0", + "@aws-sdk/middleware-host-header": "3.254.0", + "@aws-sdk/middleware-logger": "3.254.0", + "@aws-sdk/middleware-recursion-detection": "3.254.0", + "@aws-sdk/middleware-retry": "3.254.0", + "@aws-sdk/middleware-serde": "3.254.0", + "@aws-sdk/middleware-signing": "3.254.0", + "@aws-sdk/middleware-stack": "3.254.0", + "@aws-sdk/middleware-user-agent": "3.254.0", + "@aws-sdk/node-config-provider": "3.254.0", + "@aws-sdk/node-http-handler": "3.254.0", + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/smithy-client": "3.254.0", + "@aws-sdk/types": "3.254.0", + "@aws-sdk/url-parser": "3.254.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.254.0", + "@aws-sdk/util-defaults-mode-node": "3.254.0", + "@aws-sdk/util-endpoints": "3.254.0", + "@aws-sdk/util-retry": "3.254.0", + "@aws-sdk/util-user-agent-browser": "3.254.0", + "@aws-sdk/util-user-agent-node": "3.254.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-sso": { + "version": "3.254.0", + "requires": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.254.0", + "@aws-sdk/fetch-http-handler": "3.254.0", + "@aws-sdk/hash-node": "3.254.0", + "@aws-sdk/invalid-dependency": "3.254.0", + "@aws-sdk/middleware-content-length": "3.254.0", + "@aws-sdk/middleware-endpoint": "3.254.0", + "@aws-sdk/middleware-host-header": "3.254.0", + "@aws-sdk/middleware-logger": "3.254.0", + "@aws-sdk/middleware-recursion-detection": "3.254.0", + "@aws-sdk/middleware-retry": "3.254.0", + "@aws-sdk/middleware-serde": "3.254.0", + "@aws-sdk/middleware-stack": "3.254.0", + "@aws-sdk/middleware-user-agent": "3.254.0", + "@aws-sdk/node-config-provider": "3.254.0", + "@aws-sdk/node-http-handler": "3.254.0", + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/smithy-client": "3.254.0", + "@aws-sdk/types": "3.254.0", + "@aws-sdk/url-parser": "3.254.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.254.0", + "@aws-sdk/util-defaults-mode-node": "3.254.0", + "@aws-sdk/util-endpoints": "3.254.0", + "@aws-sdk/util-retry": "3.254.0", + "@aws-sdk/util-user-agent-browser": "3.254.0", + "@aws-sdk/util-user-agent-node": "3.254.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-sso-oidc": { + "version": "3.254.0", + "requires": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.254.0", + "@aws-sdk/fetch-http-handler": "3.254.0", + "@aws-sdk/hash-node": "3.254.0", + "@aws-sdk/invalid-dependency": "3.254.0", + "@aws-sdk/middleware-content-length": "3.254.0", + "@aws-sdk/middleware-endpoint": "3.254.0", + "@aws-sdk/middleware-host-header": "3.254.0", + "@aws-sdk/middleware-logger": "3.254.0", + "@aws-sdk/middleware-recursion-detection": "3.254.0", + "@aws-sdk/middleware-retry": "3.254.0", + "@aws-sdk/middleware-serde": "3.254.0", + "@aws-sdk/middleware-stack": "3.254.0", + "@aws-sdk/middleware-user-agent": "3.254.0", + "@aws-sdk/node-config-provider": "3.254.0", + "@aws-sdk/node-http-handler": "3.254.0", + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/smithy-client": "3.254.0", + "@aws-sdk/types": "3.254.0", + "@aws-sdk/url-parser": "3.254.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.254.0", + "@aws-sdk/util-defaults-mode-node": "3.254.0", + "@aws-sdk/util-endpoints": "3.254.0", + "@aws-sdk/util-retry": "3.254.0", + "@aws-sdk/util-user-agent-browser": "3.254.0", + "@aws-sdk/util-user-agent-node": "3.254.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-sts": { + "version": "3.254.0", + "requires": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.254.0", + "@aws-sdk/credential-provider-node": "3.254.0", + "@aws-sdk/fetch-http-handler": "3.254.0", + "@aws-sdk/hash-node": "3.254.0", + "@aws-sdk/invalid-dependency": "3.254.0", + "@aws-sdk/middleware-content-length": "3.254.0", + "@aws-sdk/middleware-endpoint": "3.254.0", + "@aws-sdk/middleware-host-header": "3.254.0", + "@aws-sdk/middleware-logger": "3.254.0", + "@aws-sdk/middleware-recursion-detection": "3.254.0", + "@aws-sdk/middleware-retry": "3.254.0", + "@aws-sdk/middleware-sdk-sts": "3.254.0", + "@aws-sdk/middleware-serde": "3.254.0", + "@aws-sdk/middleware-signing": "3.254.0", + "@aws-sdk/middleware-stack": "3.254.0", + "@aws-sdk/middleware-user-agent": "3.254.0", + "@aws-sdk/node-config-provider": "3.254.0", + "@aws-sdk/node-http-handler": "3.254.0", + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/smithy-client": "3.254.0", + "@aws-sdk/types": "3.254.0", + "@aws-sdk/url-parser": "3.254.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.254.0", + "@aws-sdk/util-defaults-mode-node": "3.254.0", + "@aws-sdk/util-endpoints": "3.254.0", + "@aws-sdk/util-retry": "3.254.0", + "@aws-sdk/util-user-agent-browser": "3.254.0", + "@aws-sdk/util-user-agent-node": "3.254.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "fast-xml-parser": "4.0.11", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/config-resolver": { + "version": "3.254.0", + "requires": { + "@aws-sdk/signature-v4": "3.254.0", + "@aws-sdk/types": "3.254.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-env": { + "version": "3.254.0", + "requires": { + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-imds": { + "version": "3.254.0", + "requires": { + "@aws-sdk/node-config-provider": "3.254.0", + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/types": "3.254.0", + "@aws-sdk/url-parser": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-ini": { + "version": "3.254.0", + "requires": { + "@aws-sdk/credential-provider-env": "3.254.0", + "@aws-sdk/credential-provider-imds": "3.254.0", + "@aws-sdk/credential-provider-process": "3.254.0", + "@aws-sdk/credential-provider-sso": "3.254.0", + "@aws-sdk/credential-provider-web-identity": "3.254.0", + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/shared-ini-file-loader": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-node": { + "version": "3.254.0", + "requires": { + "@aws-sdk/credential-provider-env": "3.254.0", + "@aws-sdk/credential-provider-imds": "3.254.0", + "@aws-sdk/credential-provider-ini": "3.254.0", + "@aws-sdk/credential-provider-process": "3.254.0", + "@aws-sdk/credential-provider-sso": "3.254.0", + "@aws-sdk/credential-provider-web-identity": "3.254.0", + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/shared-ini-file-loader": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-process": { + "version": "3.254.0", + "requires": { + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/shared-ini-file-loader": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-sso": { + "version": "3.254.0", + "requires": { + "@aws-sdk/client-sso": "3.254.0", + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/shared-ini-file-loader": "3.254.0", + "@aws-sdk/token-providers": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-web-identity": { + "version": "3.254.0", + "requires": { + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/fetch-http-handler": { + "version": "3.254.0", + "requires": { + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/querystring-builder": "3.254.0", + "@aws-sdk/types": "3.254.0", + "@aws-sdk/util-base64": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/hash-node": { + "version": "3.254.0", + "requires": { + "@aws-sdk/types": "3.254.0", + "@aws-sdk/util-buffer-from": "3.208.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/invalid-dependency": { + "version": "3.254.0", + "requires": { + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-content-length": { + "version": "3.254.0", + "requires": { + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-endpoint": { + "version": "3.254.0", + "requires": { + "@aws-sdk/middleware-serde": "3.254.0", + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/signature-v4": "3.254.0", + "@aws-sdk/types": "3.254.0", + "@aws-sdk/url-parser": "3.254.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-host-header": { + "version": "3.254.0", + "requires": { + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-logger": { + "version": "3.254.0", "requires": { - "is-descriptor": "^0.1.0" + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" } }, - "is-accessor-descriptor": { - "version": "0.1.6", - "peer": true, + "@aws-sdk/middleware-recursion-detection": { + "version": "3.254.0", "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "peer": true, - "requires": { - "is-buffer": "^1.1.5" - } - } + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" } }, - "is-data-descriptor": { - "version": "0.1.4", - "peer": true, + "@aws-sdk/middleware-retry": { + "version": "3.254.0", "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "peer": true, - "requires": { - "is-buffer": "^1.1.5" - } - } + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/service-error-classification": "3.254.0", + "@aws-sdk/types": "3.254.0", + "@aws-sdk/util-middleware": "3.254.0", + "@aws-sdk/util-retry": "3.254.0", + "tslib": "^2.3.1", + "uuid": "^8.3.2" } }, - "is-descriptor": { - "version": "0.1.6", - "peer": true, + "@aws-sdk/middleware-sdk-sts": { + "version": "3.254.0", "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" + "@aws-sdk/middleware-signing": "3.254.0", + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/signature-v4": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" } }, - "kind-of": { - "version": "5.1.0", - "peer": true - } - } - }, - "clean-stack": { - "version": "2.2.0", - "dev": true - }, - "cli-cursor": { - "version": "3.1.0", - "requires": { - "restore-cursor": "^3.1.0" - } - }, - "cli-spinners": { - "version": "2.6.1" - }, - "cli-truncate": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", - "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", - "dev": true, - "requires": { - "slice-ansi": "^5.0.0", - "string-width": "^5.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "dev": true + "@aws-sdk/middleware-serde": { + "version": "3.254.0", + "requires": { + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + } }, - "ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", - "dev": true + "@aws-sdk/middleware-signing": { + "version": "3.254.0", + "requires": { + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/signature-v4": "3.254.0", + "@aws-sdk/types": "3.254.0", + "@aws-sdk/util-middleware": "3.254.0", + "tslib": "^2.3.1" + } }, - "emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", - "dev": true + "@aws-sdk/middleware-stack": { + "version": "3.254.0", + "requires": { + "tslib": "^2.3.1" + } }, - "is-fullwidth-code-point": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", - "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", - "dev": true + "@aws-sdk/middleware-user-agent": { + "version": "3.254.0", + "requires": { + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + } }, - "slice-ansi": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", - "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", - "dev": true, + "@aws-sdk/node-config-provider": { + "version": "3.254.0", "requires": { - "ansi-styles": "^6.0.0", - "is-fullwidth-code-point": "^4.0.0" + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/shared-ini-file-loader": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" } }, - "string-width": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", - "dev": true, + "@aws-sdk/node-http-handler": { + "version": "3.254.0", "requires": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" + "@aws-sdk/abort-controller": "3.254.0", + "@aws-sdk/protocol-http": "3.254.0", + "@aws-sdk/querystring-builder": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" } }, - "strip-ansi": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", - "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "@aws-sdk/property-provider": { + "version": "3.254.0", + "requires": { + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/protocol-http": { + "version": "3.254.0", + "requires": { + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/querystring-builder": { + "version": "3.254.0", + "requires": { + "@aws-sdk/types": "3.254.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/querystring-parser": { + "version": "3.254.0", + "requires": { + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/service-error-classification": { + "version": "3.254.0" + }, + "@aws-sdk/shared-ini-file-loader": { + "version": "3.254.0", + "requires": { + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/signature-v4": { + "version": "3.254.0", + "requires": { + "@aws-sdk/is-array-buffer": "3.201.0", + "@aws-sdk/types": "3.254.0", + "@aws-sdk/util-hex-encoding": "3.201.0", + "@aws-sdk/util-middleware": "3.254.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "@aws-sdk/util-utf8": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/smithy-client": { + "version": "3.254.0", + "requires": { + "@aws-sdk/middleware-stack": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/token-providers": { + "version": "3.254.0", + "requires": { + "@aws-sdk/client-sso-oidc": "3.254.0", + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/shared-ini-file-loader": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/types": { + "version": "3.254.0", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/url-parser": { + "version": "3.254.0", + "requires": { + "@aws-sdk/querystring-parser": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-defaults-mode-browser": { + "version": "3.254.0", + "requires": { + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/types": "3.254.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-defaults-mode-node": { + "version": "3.254.0", + "requires": { + "@aws-sdk/config-resolver": "3.254.0", + "@aws-sdk/credential-provider-imds": "3.254.0", + "@aws-sdk/node-config-provider": "3.254.0", + "@aws-sdk/property-provider": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-endpoints": { + "version": "3.254.0", + "requires": { + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-middleware": { + "version": "3.254.0", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-retry": { + "version": "3.254.0", + "requires": { + "@aws-sdk/service-error-classification": "3.254.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-user-agent-browser": { + "version": "3.254.0", + "requires": { + "@aws-sdk/types": "3.254.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-user-agent-node": { + "version": "3.254.0", + "requires": { + "@aws-sdk/node-config-provider": "3.254.0", + "@aws-sdk/types": "3.254.0", + "tslib": "^2.3.1" + } + }, + "vitest": { + "version": "0.25.8", "dev": true, "requires": { - "ansi-regex": "^6.0.1" + "@types/chai": "^4.3.4", + "@types/chai-subset": "^1.3.3", + "@types/node": "*", + "acorn": "^8.8.1", + "acorn-walk": "^8.2.0", + "chai": "^4.3.7", + "debug": "^4.3.4", + "local-pkg": "^0.4.2", + "source-map": "^0.6.1", + "strip-literal": "^1.0.0", + "tinybench": "^2.3.1", + "tinypool": "^0.3.0", + "tinyspy": "^1.0.2", + "vite": "^3.0.0 || ^4.0.0" } } } }, - "cli-width": { - "version": "3.0.0", - "dev": true - }, - "cliui": { - "version": "7.0.4", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "clone": { - "version": "1.0.4" - }, - "clone-deep": { - "version": "4.0.1", + "example-javascriptv3-cloudwatchlogs": { + "version": "file:example_code/cloudwatch-logs", "requires": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" + "@aws-sdk/client-cloudwatch-logs": "^3.215.0", + "@aws-sdk/client-iam": "^3.216.0", + "@aws-sdk/client-lambda": "^3.216.0", + "libs": "*", + "ramda": "^0.28.0", + "vitest": "^0.25.3" }, "dependencies": { - "is-plain-object": { - "version": "2.0.4", + "@aws-sdk/client-cloudwatch-logs": { + "version": "3.244.0", "requires": { - "isobject": "^3.0.1" + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/client-sts": "3.241.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/credential-provider-node": "3.241.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-signing": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.241.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" } - } - } - }, - "cmd-shim": { - "version": "5.0.0", - "dev": true, - "requires": { - "mkdirp-infer-owner": "^2.0.0" - } - }, - "collection-visit": { - "version": "1.0.0", - "peer": true, - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - } - }, - "color-convert": { - "version": "1.9.3", - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3" - }, - "color-support": { - "version": "1.1.3", - "dev": true - }, - "colorette": { - "version": "1.4.0", - "peer": true - }, - "columnify": { - "version": "1.6.0", - "dev": true, - "requires": { - "strip-ansi": "^6.0.1", - "wcwidth": "^1.0.0" - } - }, - "combined-stream": { - "version": "1.0.8", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "command-exists": { - "version": "1.2.9", - "peer": true - }, - "commander": { - "version": "9.4.1", - "peer": true - }, - "common-ancestor-path": { - "version": "1.0.1", - "dev": true - }, - "commondir": { - "version": "1.0.1", - "peer": true - }, - "compare-func": { - "version": "2.0.0", - "dev": true, - "requires": { - "array-ify": "^1.0.0", - "dot-prop": "^5.1.0" - }, - "dependencies": { - "dot-prop": { - "version": "5.3.0", - "dev": true, + }, + "@aws-sdk/client-sso": { + "version": "3.241.0", + "requires": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.241.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-sso-oidc": { + "version": "3.241.0", "requires": { - "is-obj": "^2.0.0" + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.241.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" } - } - } - }, - "component-emitter": { - "version": "1.3.0", - "peer": true - }, - "compress-commons": { - "version": "4.1.1", - "requires": { - "buffer-crc32": "^0.2.13", - "crc32-stream": "^4.0.2", - "normalize-path": "^3.0.0", - "readable-stream": "^3.6.0" - } - }, - "compressible": { - "version": "2.0.18", - "peer": true, - "requires": { - "mime-db": ">= 1.43.0 < 2" - } - }, - "compression": { - "version": "1.7.4", - "peer": true, - "requires": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "peer": true, + }, + "@aws-sdk/client-sts": { + "version": "3.241.0", "requires": { - "ms": "2.0.0" + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/credential-provider-node": "3.241.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-sdk-sts": "3.226.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-signing": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.241.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "fast-xml-parser": "4.0.11", + "tslib": "^2.3.1" } }, - "ms": { - "version": "2.0.0", - "peer": true + "@aws-sdk/credential-provider-ini": { + "version": "3.241.0", + "requires": { + "@aws-sdk/credential-provider-env": "3.226.0", + "@aws-sdk/credential-provider-imds": "3.226.0", + "@aws-sdk/credential-provider-process": "3.226.0", + "@aws-sdk/credential-provider-sso": "3.241.0", + "@aws-sdk/credential-provider-web-identity": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } }, - "safe-buffer": { - "version": "5.1.2", - "peer": true - } - } - }, - "concat-map": { - "version": "0.0.1" - }, - "concat-stream": { - "version": "2.0.0", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "config-chain": { - "version": "1.1.13", - "dev": true, - "requires": { - "ini": "^1.3.4", - "proto-list": "~1.2.1" - } - }, - "connect": { - "version": "3.7.0", - "peer": true, - "requires": { - "debug": "2.6.9", - "finalhandler": "1.1.2", - "parseurl": "~1.3.3", - "utils-merge": "1.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "peer": true, + "@aws-sdk/credential-provider-node": { + "version": "3.241.0", "requires": { - "ms": "2.0.0" + "@aws-sdk/credential-provider-env": "3.226.0", + "@aws-sdk/credential-provider-imds": "3.226.0", + "@aws-sdk/credential-provider-ini": "3.241.0", + "@aws-sdk/credential-provider-process": "3.226.0", + "@aws-sdk/credential-provider-sso": "3.241.0", + "@aws-sdk/credential-provider-web-identity": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" } }, - "ms": { - "version": "2.0.0", - "peer": true - } - } - }, - "console-control-strings": { - "version": "1.1.0", - "dev": true - }, - "conventional-changelog-angular": { - "version": "5.0.13", - "dev": true, - "requires": { - "compare-func": "^2.0.0", - "q": "^1.5.1" - } - }, - "conventional-changelog-core": { - "version": "4.2.4", - "dev": true, - "requires": { - "add-stream": "^1.0.0", - "conventional-changelog-writer": "^5.0.0", - "conventional-commits-parser": "^3.2.0", - "dateformat": "^3.0.0", - "get-pkg-repo": "^4.0.0", - "git-raw-commits": "^2.0.8", - "git-remote-origin-url": "^2.0.0", - "git-semver-tags": "^4.1.1", - "lodash": "^4.17.15", - "normalize-package-data": "^3.0.0", - "q": "^1.5.1", - "read-pkg": "^3.0.0", - "read-pkg-up": "^3.0.0", - "through2": "^4.0.0" - } - }, - "conventional-changelog-preset-loader": { - "version": "2.3.4", - "dev": true - }, - "conventional-changelog-writer": { - "version": "5.0.1", - "dev": true, - "requires": { - "conventional-commits-filter": "^2.0.7", - "dateformat": "^3.0.0", - "handlebars": "^4.7.7", - "json-stringify-safe": "^5.0.1", - "lodash": "^4.17.15", - "meow": "^8.0.0", - "semver": "^6.0.0", - "split": "^1.0.0", - "through2": "^4.0.0" - } - }, - "conventional-commits-filter": { - "version": "2.0.7", - "dev": true, - "requires": { - "lodash.ismatch": "^4.4.0", - "modify-values": "^1.0.0" - } - }, - "conventional-commits-parser": { - "version": "3.2.4", - "dev": true, - "requires": { - "is-text-path": "^1.0.1", - "JSONStream": "^1.0.4", - "lodash": "^4.17.15", - "meow": "^8.0.0", - "split2": "^3.0.0", - "through2": "^4.0.0" - } - }, - "conventional-recommended-bump": { - "version": "6.1.0", - "dev": true, - "requires": { - "concat-stream": "^2.0.0", - "conventional-changelog-preset-loader": "^2.3.4", - "conventional-commits-filter": "^2.0.7", - "conventional-commits-parser": "^3.2.0", - "git-raw-commits": "^2.0.8", - "git-semver-tags": "^4.1.1", - "meow": "^8.0.0", - "q": "^1.5.1" - } - }, - "convert-source-map": { - "version": "1.9.0", - "peer": true - }, - "cookie": { - "version": "0.4.2" - }, - "copy-descriptor": { - "version": "0.1.1", - "peer": true - }, - "core-js-compat": { - "version": "3.27.0", - "peer": true, - "requires": { - "browserslist": "^4.21.4" - } - }, - "core-util-is": { - "version": "1.0.3" - }, - "cosmiconfig": { - "version": "7.1.0", - "dev": true, - "requires": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - } - }, - "crc-32": { - "version": "1.2.2" - }, - "crc32-stream": { - "version": "4.0.2", - "requires": { - "crc-32": "^1.2.0", - "readable-stream": "^3.4.0" - } - }, - "cross-spawn": { - "version": "7.0.3", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "crypto-js": { - "version": "4.1.1" - }, - "dargs": { - "version": "7.0.0", - "dev": true - }, - "dateformat": { - "version": "3.0.3", - "dev": true - }, - "dayjs": { - "version": "1.11.7", - "peer": true - }, - "debug": { - "version": "4.3.4", - "requires": { - "ms": "2.1.2" - } - }, - "debuglog": { - "version": "1.0.1", - "dev": true - }, - "decamelize": { - "version": "1.2.0" - }, - "decamelize-keys": { - "version": "1.1.1", - "dev": true, - "requires": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - }, - "dependencies": { - "map-obj": { - "version": "1.0.1", - "dev": true - } - } - }, - "decode-uri-component": { - "version": "0.2.2", - "peer": true - }, - "dedent": { - "version": "0.7.0", - "dev": true - }, - "deep-eql": { - "version": "4.1.3", - "dev": true, - "requires": { - "type-detect": "^4.0.0" - } - }, - "deepmerge": { - "version": "3.3.0", - "peer": true - }, - "defaults": { - "version": "1.0.4", - "requires": { - "clone": "^1.0.2" - } - }, - "define-lazy-prop": { - "version": "2.0.0", - "dev": true - }, - "define-property": { - "version": "2.0.2", - "peer": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - } - }, - "delayed-stream": { - "version": "1.0.0", - "dev": true - }, - "delegates": { - "version": "1.0.0", - "dev": true - }, - "denodeify": { - "version": "1.2.1", - "peer": true - }, - "depd": { - "version": "1.1.2", - "dev": true - }, - "deprecation": { - "version": "2.3.1", - "dev": true - }, - "destroy": { - "version": "1.2.0", - "peer": true - }, - "detect-indent": { - "version": "6.1.0", - "dev": true - }, - "dezalgo": { - "version": "1.0.4", - "dev": true, - "requires": { - "asap": "^2.0.0", - "wrappy": "1" - } - }, - "diff": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz", - "integrity": "sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==", - "dev": true - }, - "dir-glob": { - "version": "3.0.1", - "dev": true, - "requires": { - "path-type": "^4.0.0" - } - }, - "dot-prop": { - "version": "6.0.1", - "dev": true, - "requires": { - "is-obj": "^2.0.0" - } - }, - "dotenv": { - "version": "10.0.0", - "dev": true - }, - "duplexer": { - "version": "0.1.2", - "dev": true - }, - "eastasianwidth": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" - }, - "ee-first": { - "version": "1.1.1", - "peer": true - }, - "ejs": { - "version": "3.1.8", - "dev": true, - "requires": { - "jake": "^10.8.5" - } - }, - "electron-to-chromium": { - "version": "1.4.284", - "peer": true - }, - "emoji-regex": { - "version": "8.0.0" - }, - "encodeurl": { - "version": "1.0.2", - "peer": true - }, - "encoding": { - "version": "0.1.13", - "optional": true, - "requires": { - "iconv-lite": "^0.6.2" - }, - "dependencies": { - "iconv-lite": { - "version": "0.6.3", - "optional": true, + "@aws-sdk/credential-provider-sso": { + "version": "3.241.0", + "requires": { + "@aws-sdk/client-sso": "3.241.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/token-providers": "3.241.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/token-providers": { + "version": "3.241.0", "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" + "@aws-sdk/client-sso-oidc": "3.241.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-endpoints": { + "version": "3.241.0", + "requires": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "vitest": { + "version": "0.25.8", + "dev": true, + "requires": { + "@types/chai": "^4.3.4", + "@types/chai-subset": "^1.3.3", + "@types/node": "*", + "acorn": "^8.8.1", + "acorn-walk": "^8.2.0", + "chai": "^4.3.7", + "debug": "^4.3.4", + "local-pkg": "^0.4.2", + "source-map": "^0.6.1", + "strip-literal": "^1.0.0", + "tinybench": "^2.3.1", + "tinypool": "^0.3.0", + "tinyspy": "^1.0.2", + "vite": "^3.0.0 || ^4.0.0" } } } }, - "end-of-stream": { - "version": "1.4.4", - "requires": { - "once": "^1.4.0" - } - }, - "enquirer": { - "version": "2.3.6", - "dev": true, - "requires": { - "ansi-colors": "^4.1.1" - } - }, - "entities": { - "version": "2.2.0" - }, - "env-paths": { - "version": "2.2.1", - "dev": true - }, - "envinfo": { - "version": "7.8.1" - }, - "err-code": { - "version": "2.0.3", - "dev": true - }, - "error-ex": { - "version": "1.3.2", - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "error-stack-parser": { - "version": "2.1.4", - "peer": true, - "requires": { - "stackframe": "^1.3.4" - } - }, - "errorhandler": { - "version": "1.5.1", - "peer": true, - "requires": { - "accepts": "~1.3.7", - "escape-html": "~1.0.3" - } - }, - "esbuild": { - "version": "0.16.13", - "dev": true, - "requires": { - "@esbuild/android-arm": "0.16.13", - "@esbuild/android-arm64": "0.16.13", - "@esbuild/android-x64": "0.16.13", - "@esbuild/darwin-arm64": "0.16.13", - "@esbuild/darwin-x64": "0.16.13", - "@esbuild/freebsd-arm64": "0.16.13", - "@esbuild/freebsd-x64": "0.16.13", - "@esbuild/linux-arm": "0.16.13", - "@esbuild/linux-arm64": "0.16.13", - "@esbuild/linux-ia32": "0.16.13", - "@esbuild/linux-loong64": "0.16.13", - "@esbuild/linux-mips64el": "0.16.13", - "@esbuild/linux-ppc64": "0.16.13", - "@esbuild/linux-riscv64": "0.16.13", - "@esbuild/linux-s390x": "0.16.13", - "@esbuild/linux-x64": "0.16.13", - "@esbuild/netbsd-x64": "0.16.13", - "@esbuild/openbsd-x64": "0.16.13", - "@esbuild/sunos-x64": "0.16.13", - "@esbuild/win32-arm64": "0.16.13", - "@esbuild/win32-ia32": "0.16.13", - "@esbuild/win32-x64": "0.16.13" - } - }, - "escalade": { - "version": "3.1.1" - }, - "escape-html": { - "version": "1.0.3", - "peer": true - }, - "escape-string-regexp": { - "version": "1.0.5" - }, - "esprima": { - "version": "4.0.1" - }, - "esquery": { - "version": "1.4.0", - "dev": true, + "example-javascriptv3-cognito": { + "version": "file:example_code/cognito", "requires": { - "estraverse": "^5.1.0" + "@aws-sdk/client-cognito-identity-provider": "^3.183.0", + "@aws-sdk/client-ses": "^3.183.0", + "@types/qrcode-terminal": "^0.12.0", + "amazon-cognito-identity-js": "^5.2.10", + "aws-amplify": "^4.3.37", + "crypto-js": "^4.1.1", + "qrcode-terminal": "^0.12.0", + "ramda": "^0.28.0", + "vitest": "^0.26.2" } }, - "estraverse": { - "version": "5.3.0", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "peer": true - }, - "etag": { - "version": "1.8.1", - "peer": true - }, - "event-target-shim": { - "version": "5.0.1", - "peer": true - }, - "eventemitter3": { - "version": "4.0.7", - "dev": true - }, - "events": { - "version": "3.3.0" - }, - "example-javascriptv3-cloudwatch": { - "version": "file:example_code/cloudwatch", + "example-javascriptv3-ec2": { + "version": "file:example_code/ec2", "requires": { - "@aws-sdk/client-cloudwatch": "^3.212.0", - "@aws-sdk/client-ec2": "^3.213.0", - "libs": "*", - "ramda": "^0.28.0", - "uuid": "^9.0.0", - "vitest": "^0.25.2" + "@aws-sdk/client-ec2": "^3.266.1", + "@aws-sdk/client-ssm": "^3.271.0", + "vitest": "^0.28.4" }, "dependencies": { - "uuid": { - "version": "9.0.0", + "pathe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.0.tgz", + "integrity": "sha512-ODbEPR0KKHqECXW1GoxdDb+AZvULmXjVPy4rt+pGo2+TnjJTIPJQSVS6N63n8T2Ip+syHhbn52OewKicV0373w==", "dev": true }, + "vite-node": { + "version": "0.28.4", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-0.28.4.tgz", + "integrity": "sha512-KM0Q0uSG/xHHKOJvVHc5xDBabgt0l70y7/lWTR7Q0pR5/MrYxadT+y32cJOE65FfjGmJgxpVEEY+69btJgcXOQ==", + "dev": true, + "requires": { + "cac": "^6.7.14", + "debug": "^4.3.4", + "mlly": "^1.1.0", + "pathe": "^1.1.0", + "picocolors": "^1.0.0", + "source-map": "^0.6.1", + "source-map-support": "^0.5.21", + "vite": "^3.0.0 || ^4.0.0" + } + }, "vitest": { - "version": "0.25.8", + "version": "0.28.4", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-0.28.4.tgz", + "integrity": "sha512-sfWIy0AdlbyGRhunm+TLQEJrFH9XuRPdApfubsyLcDbCRrUX717BRQKInTgzEfyl2Ipi1HWoHB84Nqtcwxogcg==", "dev": true, "requires": { "@types/chai": "^4.3.4", "@types/chai-subset": "^1.3.3", "@types/node": "*", + "@vitest/expect": "0.28.4", + "@vitest/runner": "0.28.4", + "@vitest/spy": "0.28.4", + "@vitest/utils": "0.28.4", "acorn": "^8.8.1", "acorn-walk": "^8.2.0", + "cac": "^6.7.14", "chai": "^4.3.7", "debug": "^4.3.4", "local-pkg": "^0.4.2", + "pathe": "^1.1.0", + "picocolors": "^1.0.0", "source-map": "^0.6.1", + "std-env": "^3.3.1", "strip-literal": "^1.0.0", "tinybench": "^2.3.1", - "tinypool": "^0.3.0", + "tinypool": "^0.3.1", "tinyspy": "^1.0.2", - "vite": "^3.0.0 || ^4.0.0" + "vite": "^3.0.0 || ^4.0.0", + "vite-node": "0.28.4", + "why-is-node-running": "^2.2.2" } } } }, - "example-javascriptv3-cloudwatchevents": { - "version": "file:example_code/cloudwatch-events", + "example-javascriptv3-lambda": { + "version": "file:example_code/lambda", "requires": { - "@aws-sdk/client-cloudwatch-events": "^3.229.0", - "@aws-sdk/client-cloudwatch-logs": "^3.229.0", - "@aws-sdk/client-lambda": "^3.229.0", + "@aws-sdk/client-iam": "^3.241.0", + "@aws-sdk/client-lambda": "^3.163.0", + "@types/ramda": "^0.28.15", "libs": "*", - "vitest": "^0.25.7" + "ramda": "^0.28.0", + "vitest": "^0.26.3" + } + }, + "example-javascriptv3-s3": { + "version": "file:example_code/s3", + "requires": { + "@aws-crypto/sha256-browser": "^4.0.0", + "@aws-sdk/client-s3": "^3.272.0", + "@aws-sdk/credential-providers": "^3.276.0", + "@aws-sdk/hash-node": "^3.272.0", + "@aws-sdk/protocol-http": "^3.272.0", + "@aws-sdk/s3-request-presigner": "^3.276.0", + "@aws-sdk/url-parser": "^3.272.0", + "@aws-sdk/util-format-url": "^3.272.0", + "libs": "*", + "vitest": "^0.28.5" }, "dependencies": { - "@aws-crypto/ie11-detection": { + "@aws-crypto/crc32": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/crc32/-/crc32-3.0.0.tgz", + "integrity": "sha512-IzSgsrxUcsrejQbPVilIKy16kAT52EwB6zSaI+M3xxIhKh5+aldEyvI+z6erM7TCLB2BJsFrtHjp6/4/sr+3dA==", + "requires": { + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/ie11-detection": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-4.0.0.tgz", + "integrity": "sha512-0zM8cbr1sEwjuTwx846nDvD1w0/rDcL4FsEPGwkX+CtJr5G0/ccxpmYAWPYOgAkD+qTyXwSgRBlHOBFS0dXXfw==", "requires": { "tslib": "^1.11.1" }, "dependencies": { "tslib": { - "version": "1.14.1" + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" } } }, "@aws-crypto/sha256-browser": { - "version": "3.0.0", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-4.0.0.tgz", + "integrity": "sha512-9UIcHXJhUac5m5W07y1iWMGZzfvosekm+OPRRIgS1Mdo7OEUgtRRLmP0aY29eubNyj3TqoB9I4Q5NckD1Ge/8Q==", "requires": { - "@aws-crypto/ie11-detection": "^3.0.0", - "@aws-crypto/sha256-js": "^3.0.0", - "@aws-crypto/supports-web-crypto": "^3.0.0", - "@aws-crypto/util": "^3.0.0", + "@aws-crypto/ie11-detection": "^4.0.0", + "@aws-crypto/sha256-js": "^4.0.0", + "@aws-crypto/supports-web-crypto": "^4.0.0", + "@aws-crypto/util": "^4.0.0", "@aws-sdk/types": "^3.222.0", "@aws-sdk/util-locate-window": "^3.0.0", "@aws-sdk/util-utf8-browser": "^3.0.0", "tslib": "^1.11.1" }, "dependencies": { + "@aws-crypto/sha256-js": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-4.0.0.tgz", + "integrity": "sha512-MHGJyjE7TX9aaqXj7zk2ppnFUOhaDs5sP+HtNS0evOxn72c+5njUmyJmpGd7TfyoDznZlHMmdo/xGUdu2NIjNQ==", + "requires": { + "@aws-crypto/util": "^4.0.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^1.11.1" + } + }, + "@aws-crypto/util": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-4.0.0.tgz", + "integrity": "sha512-2EnmPy2gsFZ6m8bwUQN4jq+IyXV3quHAcwPOS6ZA3k+geujiqI8aRokO2kFJe+idJ/P3v4qWI186rVMo0+zLDQ==", + "requires": { + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, "tslib": { - "version": "1.14.1" + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" } } }, "@aws-crypto/sha256-js": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-3.0.0.tgz", + "integrity": "sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==", "requires": { "@aws-crypto/util": "^3.0.0", "@aws-sdk/types": "^3.222.0", @@ -56336,23 +61137,31 @@ }, "dependencies": { "tslib": { - "version": "1.14.1" + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" } } }, "@aws-crypto/supports-web-crypto": { - "version": "3.0.0", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-4.0.0.tgz", + "integrity": "sha512-F+fpeuMgDCUgV/0gPLjERcwV94L8xapfGP0xzyADeCfyKDcJV8nKrG+HVlcQXV3UztEsUS/sjfJzBTPe/ukEUA==", "requires": { "tslib": "^1.11.1" }, "dependencies": { "tslib": { - "version": "1.14.1" + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" } } }, "@aws-crypto/util": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz", + "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==", "requires": { "@aws-sdk/types": "^3.222.0", "@aws-sdk/util-utf8-browser": "^3.0.0", @@ -56360,837 +61169,1083 @@ }, "dependencies": { "tslib": { - "version": "1.14.1" + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" } } }, "@aws-sdk/abort-controller": { - "version": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.272.0.tgz", + "integrity": "sha512-s2TV3phapcTwZNr4qLxbfuQuE9ZMP4RoJdkvRRCkKdm6jslsWLJf2Zlcxti/23hOlINUMYv2iXE2pftIgWGdpg==", "requires": { - "@aws-sdk/types": "3.254.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, - "@aws-sdk/client-cloudwatch-logs": { - "version": "3.254.0", + "@aws-sdk/chunked-blob-reader": { + "version": "3.188.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/chunked-blob-reader/-/chunked-blob-reader-3.188.0.tgz", + "integrity": "sha512-zkPRFZZPL3eH+kH86LDYYXImiClA1/sW60zYOjse9Pgka+eDJlvBN6hcYxwDEKjcwATYiSRR1aVQHcfCinlGXg==", + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/chunked-blob-reader-native": { + "version": "3.208.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/chunked-blob-reader-native/-/chunked-blob-reader-native-3.208.0.tgz", + "integrity": "sha512-JeOZ95PW+fJ6bbuqPySYqLqHk1n4+4ueEEraJsiUrPBV0S1ZtyvOGHcnGztKUjr2PYNaiexmpWuvUve9K12HRA==", + "requires": { + "@aws-sdk/util-base64": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-s3": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.272.0.tgz", + "integrity": "sha512-KxlVhTHfmcm3HlAP5+vY1cuQt60AaYOISp1ccYOPsww7Ly7fbDnbov0AV9bcwlLLVcfZFWQYJqH+Gvk2SpyXFQ==", "requires": { + "@aws-crypto/sha1-browser": "3.0.0", "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sts": "3.254.0", - "@aws-sdk/config-resolver": "3.254.0", - "@aws-sdk/credential-provider-node": "3.254.0", - "@aws-sdk/fetch-http-handler": "3.254.0", - "@aws-sdk/hash-node": "3.254.0", - "@aws-sdk/invalid-dependency": "3.254.0", - "@aws-sdk/middleware-content-length": "3.254.0", - "@aws-sdk/middleware-endpoint": "3.254.0", - "@aws-sdk/middleware-host-header": "3.254.0", - "@aws-sdk/middleware-logger": "3.254.0", - "@aws-sdk/middleware-recursion-detection": "3.254.0", - "@aws-sdk/middleware-retry": "3.254.0", - "@aws-sdk/middleware-serde": "3.254.0", - "@aws-sdk/middleware-signing": "3.254.0", - "@aws-sdk/middleware-stack": "3.254.0", - "@aws-sdk/middleware-user-agent": "3.254.0", - "@aws-sdk/node-config-provider": "3.254.0", - "@aws-sdk/node-http-handler": "3.254.0", - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/smithy-client": "3.254.0", - "@aws-sdk/types": "3.254.0", - "@aws-sdk/url-parser": "3.254.0", + "@aws-sdk/client-sts": "3.272.0", + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/credential-provider-node": "3.272.0", + "@aws-sdk/eventstream-serde-browser": "3.272.0", + "@aws-sdk/eventstream-serde-config-resolver": "3.272.0", + "@aws-sdk/eventstream-serde-node": "3.272.0", + "@aws-sdk/fetch-http-handler": "3.272.0", + "@aws-sdk/hash-blob-browser": "3.272.0", + "@aws-sdk/hash-node": "3.272.0", + "@aws-sdk/hash-stream-node": "3.272.0", + "@aws-sdk/invalid-dependency": "3.272.0", + "@aws-sdk/md5-js": "3.272.0", + "@aws-sdk/middleware-bucket-endpoint": "3.272.0", + "@aws-sdk/middleware-content-length": "3.272.0", + "@aws-sdk/middleware-endpoint": "3.272.0", + "@aws-sdk/middleware-expect-continue": "3.272.0", + "@aws-sdk/middleware-flexible-checksums": "3.272.0", + "@aws-sdk/middleware-host-header": "3.272.0", + "@aws-sdk/middleware-location-constraint": "3.272.0", + "@aws-sdk/middleware-logger": "3.272.0", + "@aws-sdk/middleware-recursion-detection": "3.272.0", + "@aws-sdk/middleware-retry": "3.272.0", + "@aws-sdk/middleware-sdk-s3": "3.272.0", + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/middleware-signing": "3.272.0", + "@aws-sdk/middleware-ssec": "3.272.0", + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/middleware-user-agent": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/node-http-handler": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/signature-v4-multi-region": "3.272.0", + "@aws-sdk/smithy-client": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", "@aws-sdk/util-base64": "3.208.0", "@aws-sdk/util-body-length-browser": "3.188.0", "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.254.0", - "@aws-sdk/util-defaults-mode-node": "3.254.0", - "@aws-sdk/util-endpoints": "3.254.0", - "@aws-sdk/util-retry": "3.254.0", - "@aws-sdk/util-user-agent-browser": "3.254.0", - "@aws-sdk/util-user-agent-node": "3.254.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.272.0", + "@aws-sdk/util-defaults-mode-node": "3.272.0", + "@aws-sdk/util-endpoints": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", + "@aws-sdk/util-stream-browser": "3.272.0", + "@aws-sdk/util-stream-node": "3.272.0", + "@aws-sdk/util-user-agent-browser": "3.272.0", + "@aws-sdk/util-user-agent-node": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", + "@aws-sdk/util-waiter": "3.272.0", + "@aws-sdk/xml-builder": "3.201.0", + "fast-xml-parser": "4.0.11", "tslib": "^2.3.1" + }, + "dependencies": { + "@aws-crypto/ie11-detection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz", + "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==", + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/sha256-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz", + "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==", + "requires": { + "@aws-crypto/ie11-detection": "^3.0.0", + "@aws-crypto/sha256-js": "^3.0.0", + "@aws-crypto/supports-web-crypto": "^3.0.0", + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/supports-web-crypto": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz", + "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==", + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + } } }, "@aws-sdk/client-sso": { - "version": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.272.0.tgz", + "integrity": "sha512-xn9a0IGONwQIARmngThoRhF1lLGjHAD67sUaShgIMaIMc6ipVYN6alWG1VuUpoUQ6iiwMEt0CHdfCyLyUV/fTA==", "requires": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.254.0", - "@aws-sdk/fetch-http-handler": "3.254.0", - "@aws-sdk/hash-node": "3.254.0", - "@aws-sdk/invalid-dependency": "3.254.0", - "@aws-sdk/middleware-content-length": "3.254.0", - "@aws-sdk/middleware-endpoint": "3.254.0", - "@aws-sdk/middleware-host-header": "3.254.0", - "@aws-sdk/middleware-logger": "3.254.0", - "@aws-sdk/middleware-recursion-detection": "3.254.0", - "@aws-sdk/middleware-retry": "3.254.0", - "@aws-sdk/middleware-serde": "3.254.0", - "@aws-sdk/middleware-stack": "3.254.0", - "@aws-sdk/middleware-user-agent": "3.254.0", - "@aws-sdk/node-config-provider": "3.254.0", - "@aws-sdk/node-http-handler": "3.254.0", - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/smithy-client": "3.254.0", - "@aws-sdk/types": "3.254.0", - "@aws-sdk/url-parser": "3.254.0", + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/fetch-http-handler": "3.272.0", + "@aws-sdk/hash-node": "3.272.0", + "@aws-sdk/invalid-dependency": "3.272.0", + "@aws-sdk/middleware-content-length": "3.272.0", + "@aws-sdk/middleware-endpoint": "3.272.0", + "@aws-sdk/middleware-host-header": "3.272.0", + "@aws-sdk/middleware-logger": "3.272.0", + "@aws-sdk/middleware-recursion-detection": "3.272.0", + "@aws-sdk/middleware-retry": "3.272.0", + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/middleware-user-agent": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/node-http-handler": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/smithy-client": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", "@aws-sdk/util-base64": "3.208.0", "@aws-sdk/util-body-length-browser": "3.188.0", "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.254.0", - "@aws-sdk/util-defaults-mode-node": "3.254.0", - "@aws-sdk/util-endpoints": "3.254.0", - "@aws-sdk/util-retry": "3.254.0", - "@aws-sdk/util-user-agent-browser": "3.254.0", - "@aws-sdk/util-user-agent-node": "3.254.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.272.0", + "@aws-sdk/util-defaults-mode-node": "3.272.0", + "@aws-sdk/util-endpoints": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", + "@aws-sdk/util-user-agent-browser": "3.272.0", + "@aws-sdk/util-user-agent-node": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" + }, + "dependencies": { + "@aws-crypto/ie11-detection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz", + "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==", + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/sha256-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz", + "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==", + "requires": { + "@aws-crypto/ie11-detection": "^3.0.0", + "@aws-crypto/sha256-js": "^3.0.0", + "@aws-crypto/supports-web-crypto": "^3.0.0", + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/supports-web-crypto": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz", + "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==", + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + } } }, "@aws-sdk/client-sso-oidc": { - "version": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.272.0.tgz", + "integrity": "sha512-ECcXu3xoa1yggnGKMTh29eWNHiF/wC6r5Uqbla22eOOosyh0+Z6lkJ3JUSLOUKCkBXA4Cs/tJL9UDFBrKbSlvA==", "requires": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.254.0", - "@aws-sdk/fetch-http-handler": "3.254.0", - "@aws-sdk/hash-node": "3.254.0", - "@aws-sdk/invalid-dependency": "3.254.0", - "@aws-sdk/middleware-content-length": "3.254.0", - "@aws-sdk/middleware-endpoint": "3.254.0", - "@aws-sdk/middleware-host-header": "3.254.0", - "@aws-sdk/middleware-logger": "3.254.0", - "@aws-sdk/middleware-recursion-detection": "3.254.0", - "@aws-sdk/middleware-retry": "3.254.0", - "@aws-sdk/middleware-serde": "3.254.0", - "@aws-sdk/middleware-stack": "3.254.0", - "@aws-sdk/middleware-user-agent": "3.254.0", - "@aws-sdk/node-config-provider": "3.254.0", - "@aws-sdk/node-http-handler": "3.254.0", - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/smithy-client": "3.254.0", - "@aws-sdk/types": "3.254.0", - "@aws-sdk/url-parser": "3.254.0", + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/fetch-http-handler": "3.272.0", + "@aws-sdk/hash-node": "3.272.0", + "@aws-sdk/invalid-dependency": "3.272.0", + "@aws-sdk/middleware-content-length": "3.272.0", + "@aws-sdk/middleware-endpoint": "3.272.0", + "@aws-sdk/middleware-host-header": "3.272.0", + "@aws-sdk/middleware-logger": "3.272.0", + "@aws-sdk/middleware-recursion-detection": "3.272.0", + "@aws-sdk/middleware-retry": "3.272.0", + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/middleware-user-agent": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/node-http-handler": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/smithy-client": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", "@aws-sdk/util-base64": "3.208.0", "@aws-sdk/util-body-length-browser": "3.188.0", "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.254.0", - "@aws-sdk/util-defaults-mode-node": "3.254.0", - "@aws-sdk/util-endpoints": "3.254.0", - "@aws-sdk/util-retry": "3.254.0", - "@aws-sdk/util-user-agent-browser": "3.254.0", - "@aws-sdk/util-user-agent-node": "3.254.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.272.0", + "@aws-sdk/util-defaults-mode-node": "3.272.0", + "@aws-sdk/util-endpoints": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", + "@aws-sdk/util-user-agent-browser": "3.272.0", + "@aws-sdk/util-user-agent-node": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" + }, + "dependencies": { + "@aws-crypto/ie11-detection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz", + "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==", + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/sha256-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz", + "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==", + "requires": { + "@aws-crypto/ie11-detection": "^3.0.0", + "@aws-crypto/sha256-js": "^3.0.0", + "@aws-crypto/supports-web-crypto": "^3.0.0", + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/supports-web-crypto": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz", + "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==", + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + } } }, "@aws-sdk/client-sts": { - "version": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.272.0.tgz", + "integrity": "sha512-kigxCxURp3WupufGaL/LABMb7UQfzAQkKcj9royizL3ItJ0vw5kW/JFrPje5IW1mfLgdPF7PI9ShOjE0fCLTqA==", "requires": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.254.0", - "@aws-sdk/credential-provider-node": "3.254.0", - "@aws-sdk/fetch-http-handler": "3.254.0", - "@aws-sdk/hash-node": "3.254.0", - "@aws-sdk/invalid-dependency": "3.254.0", - "@aws-sdk/middleware-content-length": "3.254.0", - "@aws-sdk/middleware-endpoint": "3.254.0", - "@aws-sdk/middleware-host-header": "3.254.0", - "@aws-sdk/middleware-logger": "3.254.0", - "@aws-sdk/middleware-recursion-detection": "3.254.0", - "@aws-sdk/middleware-retry": "3.254.0", - "@aws-sdk/middleware-sdk-sts": "3.254.0", - "@aws-sdk/middleware-serde": "3.254.0", - "@aws-sdk/middleware-signing": "3.254.0", - "@aws-sdk/middleware-stack": "3.254.0", - "@aws-sdk/middleware-user-agent": "3.254.0", - "@aws-sdk/node-config-provider": "3.254.0", - "@aws-sdk/node-http-handler": "3.254.0", - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/smithy-client": "3.254.0", - "@aws-sdk/types": "3.254.0", - "@aws-sdk/url-parser": "3.254.0", + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/credential-provider-node": "3.272.0", + "@aws-sdk/fetch-http-handler": "3.272.0", + "@aws-sdk/hash-node": "3.272.0", + "@aws-sdk/invalid-dependency": "3.272.0", + "@aws-sdk/middleware-content-length": "3.272.0", + "@aws-sdk/middleware-endpoint": "3.272.0", + "@aws-sdk/middleware-host-header": "3.272.0", + "@aws-sdk/middleware-logger": "3.272.0", + "@aws-sdk/middleware-recursion-detection": "3.272.0", + "@aws-sdk/middleware-retry": "3.272.0", + "@aws-sdk/middleware-sdk-sts": "3.272.0", + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/middleware-signing": "3.272.0", + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/middleware-user-agent": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/node-http-handler": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/smithy-client": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", "@aws-sdk/util-base64": "3.208.0", "@aws-sdk/util-body-length-browser": "3.188.0", "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.254.0", - "@aws-sdk/util-defaults-mode-node": "3.254.0", - "@aws-sdk/util-endpoints": "3.254.0", - "@aws-sdk/util-retry": "3.254.0", - "@aws-sdk/util-user-agent-browser": "3.254.0", - "@aws-sdk/util-user-agent-node": "3.254.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.272.0", + "@aws-sdk/util-defaults-mode-node": "3.272.0", + "@aws-sdk/util-endpoints": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", + "@aws-sdk/util-user-agent-browser": "3.272.0", + "@aws-sdk/util-user-agent-node": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", "fast-xml-parser": "4.0.11", "tslib": "^2.3.1" + }, + "dependencies": { + "@aws-crypto/ie11-detection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz", + "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==", + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/sha256-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz", + "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==", + "requires": { + "@aws-crypto/ie11-detection": "^3.0.0", + "@aws-crypto/sha256-js": "^3.0.0", + "@aws-crypto/supports-web-crypto": "^3.0.0", + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/supports-web-crypto": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz", + "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==", + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + } + } + }, + "@aws-sdk/config-resolver": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.272.0.tgz", + "integrity": "sha512-Dr4CffRVNsOp3LRNdpvcH6XuSgXOSLblWliCy/5I86cNl567KVMxujVx6uPrdTXYs2h1rt3MNl6jQGnAiJeTbw==", + "requires": { + "@aws-sdk/signature-v4": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-env": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.272.0.tgz", + "integrity": "sha512-QI65NbLnKLYHyTYhXaaUrq6eVsCCrMUb05WDA7+TJkWkjXesovpjc8vUKgFiLSxmgKmb2uOhHNcDyObKMrYQFw==", + "requires": { + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-imds": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.272.0.tgz", + "integrity": "sha512-wwAfVY1jTFQEfxVfdYD5r5ieYGl+0g4nhekVxNMqE8E1JeRDd18OqiwAflzpgBIqxfqvCUkf+vl5JYyacMkNAQ==", + "requires": { + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-ini": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.272.0.tgz", + "integrity": "sha512-iE3CDzK5NcupHYjfYjBdY1JCy8NLEoRUsboEjG0i0gy3S3jVpDeVHX1dLVcL/slBFj6GiM7SoNV/UfKnJf3Gaw==", + "requires": { + "@aws-sdk/credential-provider-env": "3.272.0", + "@aws-sdk/credential-provider-imds": "3.272.0", + "@aws-sdk/credential-provider-process": "3.272.0", + "@aws-sdk/credential-provider-sso": "3.272.0", + "@aws-sdk/credential-provider-web-identity": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-node": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.272.0.tgz", + "integrity": "sha512-FI8uvwM1IxiRSvbkdKv8DZG5vxU3ezaseTaB1fHWTxEUFb0pWIoHX9oeOKer9Fj31SOZTCNAaYFURbSRuZlm/w==", + "requires": { + "@aws-sdk/credential-provider-env": "3.272.0", + "@aws-sdk/credential-provider-imds": "3.272.0", + "@aws-sdk/credential-provider-ini": "3.272.0", + "@aws-sdk/credential-provider-process": "3.272.0", + "@aws-sdk/credential-provider-sso": "3.272.0", + "@aws-sdk/credential-provider-web-identity": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-process": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.272.0.tgz", + "integrity": "sha512-hiCAjWWm2PeBFp5cjkxqyam/XADjiS+e7GzwC34TbZn3LisS0uoweLojj9tD11NnnUhyhbLteUvu5+rotOLwrg==", + "requires": { + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-sso": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.272.0.tgz", + "integrity": "sha512-hwYaulyiU/7chKKFecxCeo0ls6Dxs7h+5EtoYcJJGvfpvCncyOZF35t00OAsCd3Wo7HkhhgfpGdb6dmvCNQAZQ==", + "requires": { + "@aws-sdk/client-sso": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/token-providers": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-web-identity": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.272.0.tgz", + "integrity": "sha512-ImrHMkcgneGa/HadHAQXPwOrX26sAKuB8qlMxZF/ZCM2B55u8deY+ZVkVuraeKb7YsahMGehPFOfRAF6mvFI5Q==", + "requires": { + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/eventstream-codec": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/eventstream-codec/-/eventstream-codec-3.272.0.tgz", + "integrity": "sha512-HYMzglDnqUhvx3u9MdzZ/OjLuavaaH9zF9XMXRuv7bdsN9AAi3/0he0FEx84ZXNXSAZCebLwXJYf0ZrN6g37QA==", + "requires": { + "@aws-crypto/crc32": "3.0.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-hex-encoding": "3.201.0", + "tslib": "^2.3.1" } }, - "@aws-sdk/config-resolver": { - "version": "3.254.0", + "@aws-sdk/eventstream-serde-browser": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/eventstream-serde-browser/-/eventstream-serde-browser-3.272.0.tgz", + "integrity": "sha512-mE1+mevS+KVKpnTLi5FytsBwAK1kWZ92ERtAiElp58SKE1OpfSg8lEY8VI6JKGlueN540Qq3LeIgA2/HJOcK/w==", "requires": { - "@aws-sdk/signature-v4": "3.254.0", - "@aws-sdk/types": "3.254.0", - "@aws-sdk/util-config-provider": "3.208.0", - "@aws-sdk/util-middleware": "3.254.0", + "@aws-sdk/eventstream-serde-universal": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, - "@aws-sdk/credential-provider-env": { - "version": "3.254.0", + "@aws-sdk/eventstream-serde-config-resolver": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.272.0.tgz", + "integrity": "sha512-e47BhGBvx+me53cvYx+47ml5KNDj7XoTth80krHlyLrimFELE1ij4tHSKR/XzilKKH1uIWmJQdlAi29129ZX5w==", "requires": { - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, - "@aws-sdk/credential-provider-imds": { - "version": "3.254.0", + "@aws-sdk/eventstream-serde-node": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/eventstream-serde-node/-/eventstream-serde-node-3.272.0.tgz", + "integrity": "sha512-uto8y4FoZugWnczM1TKwv6oV2Po2Jgrp+W1Ws3baRQ4Lan+QpFx3Tps1N5rNzQ+7Uz0xT1BhbSNPAkKs22/jtg==", "requires": { - "@aws-sdk/node-config-provider": "3.254.0", - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/types": "3.254.0", - "@aws-sdk/url-parser": "3.254.0", + "@aws-sdk/eventstream-serde-universal": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, - "@aws-sdk/credential-provider-ini": { - "version": "3.254.0", + "@aws-sdk/eventstream-serde-universal": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/eventstream-serde-universal/-/eventstream-serde-universal-3.272.0.tgz", + "integrity": "sha512-E9jlt8tzDcEMoNlgv3+01jGPJPHmbmw2NsajZhB4axVMpEy247JV6qvCZe+5R+EGy96t0pfsO2naViEB4Va47g==", "requires": { - "@aws-sdk/credential-provider-env": "3.254.0", - "@aws-sdk/credential-provider-imds": "3.254.0", - "@aws-sdk/credential-provider-process": "3.254.0", - "@aws-sdk/credential-provider-sso": "3.254.0", - "@aws-sdk/credential-provider-web-identity": "3.254.0", - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/shared-ini-file-loader": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/eventstream-codec": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, - "@aws-sdk/credential-provider-node": { - "version": "3.254.0", + "@aws-sdk/fetch-http-handler": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.272.0.tgz", + "integrity": "sha512-1Qhm9e0RbS1Xf4CZqUbQyUMkDLd7GrsRXWIvm9b86/vgeV8/WnjO3CMue9D51nYgcyQORhYXv6uVjAYCWbUExA==", "requires": { - "@aws-sdk/credential-provider-env": "3.254.0", - "@aws-sdk/credential-provider-imds": "3.254.0", - "@aws-sdk/credential-provider-ini": "3.254.0", - "@aws-sdk/credential-provider-process": "3.254.0", - "@aws-sdk/credential-provider-sso": "3.254.0", - "@aws-sdk/credential-provider-web-identity": "3.254.0", - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/shared-ini-file-loader": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/querystring-builder": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-base64": "3.208.0", "tslib": "^2.3.1" } }, - "@aws-sdk/credential-provider-process": { - "version": "3.254.0", + "@aws-sdk/hash-blob-browser": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-blob-browser/-/hash-blob-browser-3.272.0.tgz", + "integrity": "sha512-IRCIMG42fXcdD92C8Sb0CQI8D/msxDwHGAIqP94iGhVEnKX2egyx5J8lmPY4gEky5UzyMMaH7cayBv89ZMEBmQ==", "requires": { - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/shared-ini-file-loader": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/chunked-blob-reader": "3.188.0", + "@aws-sdk/chunked-blob-reader-native": "3.208.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, - "@aws-sdk/credential-provider-sso": { - "version": "3.254.0", + "@aws-sdk/hash-node": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.272.0.tgz", + "integrity": "sha512-40dwND+iAm3VtPHPZu7/+CIdVJFk2s0cWZt1lOiMPMSXycSYJ45wMk7Lly3uoqRx0uWfFK5iT2OCv+fJi5jTng==", "requires": { - "@aws-sdk/client-sso": "3.254.0", - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/shared-ini-file-loader": "3.254.0", - "@aws-sdk/token-providers": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-buffer-from": "3.208.0", + "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" } }, - "@aws-sdk/credential-provider-web-identity": { - "version": "3.254.0", + "@aws-sdk/hash-stream-node": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-stream-node/-/hash-stream-node-3.272.0.tgz", + "integrity": "sha512-mWwQWdfVYoR6PXRLkHP6pC1cghZMg0ULuOAm70EtTO2YXiyLlMIDb+VD4RRbjh3hNkzh+y/W47wSUJthGBM1kg==", "requires": { - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" } }, - "@aws-sdk/fetch-http-handler": { - "version": "3.254.0", + "@aws-sdk/invalid-dependency": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.272.0.tgz", + "integrity": "sha512-ysW6wbjl1Y78txHUQ/Tldj2Rg1BI7rpMO9B9xAF6yAX3mQ7t6SUPQG/ewOGvH2208NBIl3qP5e/hDf0Q6r/1iw==", "requires": { - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/querystring-builder": "3.254.0", - "@aws-sdk/types": "3.254.0", - "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, - "@aws-sdk/hash-node": { - "version": "3.254.0", + "@aws-sdk/md5-js": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/md5-js/-/md5-js-3.272.0.tgz", + "integrity": "sha512-/GK32mgAarhn/F0xCeBKbYfLRof3tOCNrg8mAGNz9Di8E1/qMOnX/OXUGag0lsvNZ6DTjdjln29t4e8iKmOVqA==", "requires": { - "@aws-sdk/types": "3.254.0", - "@aws-sdk/util-buffer-from": "3.208.0", + "@aws-sdk/types": "3.272.0", "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" } }, - "@aws-sdk/invalid-dependency": { - "version": "3.254.0", + "@aws-sdk/middleware-bucket-endpoint": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.272.0.tgz", + "integrity": "sha512-523T6JXfjsY9uSgMusa6myCccRv2TWyUSjzMx/0aUHfHRacJSunfPtSNX1kfYxXWn/ByWhaieHFBPehVI6wg1A==", "requires": { - "@aws-sdk/types": "3.254.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-arn-parser": "3.208.0", + "@aws-sdk/util-config-provider": "3.208.0", "tslib": "^2.3.1" } }, "@aws-sdk/middleware-content-length": { - "version": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.272.0.tgz", + "integrity": "sha512-sAbDZSTNmLX+UTGwlUHJBWy0QGQkiClpHwVFXACon+aG0ySLNeRKEVYs6NCPYldw4cj6hveLUn50cX44ukHErw==", "requires": { - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, "@aws-sdk/middleware-endpoint": { - "version": "3.254.0", - "requires": { - "@aws-sdk/middleware-serde": "3.254.0", - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/signature-v4": "3.254.0", - "@aws-sdk/types": "3.254.0", - "@aws-sdk/url-parser": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.272.0.tgz", + "integrity": "sha512-Dk3JVjj7SxxoUKv3xGiOeBksvPtFhTDrVW75XJ98Ymv8gJH5L1sq4hIeJAHRKogGiRFq2J73mnZSlM9FVXEylg==", + "requires": { + "@aws-sdk/middleware-serde": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/signature-v4": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/url-parser": "3.272.0", "@aws-sdk/util-config-provider": "3.208.0", - "@aws-sdk/util-middleware": "3.254.0", + "@aws-sdk/util-middleware": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-expect-continue": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.272.0.tgz", + "integrity": "sha512-TNx61LCZUKp/yZqcb38qb4tU3lbhKaI9zn2FQ+fpKzUSTI3H6E5aw42wHaq2LEacYlyK3b5Wg1R0sKR+vsUutw==", + "requires": { + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, "@aws-sdk/middleware-host-header": { - "version": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.272.0.tgz", + "integrity": "sha512-Q8K7bMMFZnioUXpxn57HIt4p+I63XaNAawMLIZ5B4F2piyukbQeM9q2XVKMGwqLvijHR8CyP5nHrtKqVuINogQ==", "requires": { - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-location-constraint": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.272.0.tgz", + "integrity": "sha512-tROQ1DM9djxfXmXPTT0XietrUt6y6QEHShPI9rQMstjXYiaHBVXRveuRLcLAKwl4nXIrgmnIU7ygyj2ZyD8gcA==", + "requires": { + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, "@aws-sdk/middleware-logger": { - "version": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.272.0.tgz", + "integrity": "sha512-u2SQ0hWrFwxbxxYMG5uMEgf01pQY5jauK/LYWgGIvuCmFgiyRQQP3oN7kkmsxnS9MWmNmhbyQguX2NY02s5e9w==", "requires": { - "@aws-sdk/types": "3.254.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, "@aws-sdk/middleware-recursion-detection": { - "version": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.272.0.tgz", + "integrity": "sha512-Gp/eKWeUWVNiiBdmUM2qLkBv+VLSJKoWAO+aKmyxxwjjmWhE0FrfA1NQ1a3g+NGMhRbAfQdaYswRAKsul70ISg==", "requires": { - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, "@aws-sdk/middleware-retry": { - "version": "3.254.0", - "requires": { - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/service-error-classification": "3.254.0", - "@aws-sdk/types": "3.254.0", - "@aws-sdk/util-middleware": "3.254.0", - "@aws-sdk/util-retry": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.272.0.tgz", + "integrity": "sha512-pCGvHM7C76VbO/dFerH+Vwf7tGv7j+e+eGrvhQ35mRghCtfIou/WMfTZlD1TNee93crrAQQVZKjtW3dMB3WCzg==", + "requires": { + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/service-error-classification": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-middleware": "3.272.0", + "@aws-sdk/util-retry": "3.272.0", "tslib": "^2.3.1", "uuid": "^8.3.2" } }, - "@aws-sdk/middleware-sdk-sts": { - "version": "3.254.0", + "@aws-sdk/middleware-sdk-s3": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.272.0.tgz", + "integrity": "sha512-uMvoLePkyP54b9BckMELlDnFh0SGPAfTkBwiH/FC79K7noGLA5A4KgqKObtB9LPYHkPfm1WLqIgdaE6gS1BlFQ==", "requires": { - "@aws-sdk/middleware-signing": "3.254.0", - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/signature-v4": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-arn-parser": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-sdk-sts": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.272.0.tgz", + "integrity": "sha512-VvYPg7LrDIjUOWueSzo2wBzcNG7dw+cmzV6zAKaLxf0RC5jeAP4hE0OzDiiZfDrjNghEzgq/V+0NO+LewqYL9Q==", + "requires": { + "@aws-sdk/middleware-signing": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/signature-v4": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, "@aws-sdk/middleware-serde": { - "version": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.272.0.tgz", + "integrity": "sha512-kW1uOxgPSwtXPB5rm3QLdWomu42lkYpQL94tM1BjyFOWmBLO2lQhk5a7Dw6HkTozT9a+vxtscLChRa6KZe61Hw==", "requires": { - "@aws-sdk/types": "3.254.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, "@aws-sdk/middleware-signing": { - "version": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.272.0.tgz", + "integrity": "sha512-4LChFK4VAR91X+dupqM8fQqYhFGE0G4Bf9rQlVTgGSbi2KUOmpqXzH0/WKE228nKuEhmH8+Qd2VPSAE2JcyAUA==", + "requires": { + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/signature-v4": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-middleware": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-ssec": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.272.0.tgz", + "integrity": "sha512-WDPcNPkscTmJUzdAvfx8p+YuUn2YR9ocmZA7yYUJ5kA94MyGH6Rbjp8tleWwQvah/HweeCQrYUzJk9wsH64LPA==", "requires": { - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/signature-v4": "3.254.0", - "@aws-sdk/types": "3.254.0", - "@aws-sdk/util-middleware": "3.254.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, "@aws-sdk/middleware-stack": { - "version": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.272.0.tgz", + "integrity": "sha512-jhwhknnPBGhfXAGV5GXUWfEhDFoP/DN8MPCO2yC5OAxyp6oVJ8lTPLkZYMTW5VL0c0eG44dXpF4Ib01V+PlDrQ==", "requires": { "tslib": "^2.3.1" } }, "@aws-sdk/middleware-user-agent": { - "version": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.272.0.tgz", + "integrity": "sha512-Qy7/0fsDJxY5l0bEk7WKDfqb4Os/sCAgFR2zEvrhDtbkhYPf72ysvg/nRUTncmCbo8tOok4SJii2myk8KMfjjw==", "requires": { - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, "@aws-sdk/node-config-provider": { - "version": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.272.0.tgz", + "integrity": "sha512-YYCIBh9g1EQo7hm2l22HX5Yr9RoPQ2RCvhzKvF1n1e8t1QH4iObQrYUtqHG4khcm64Cft8C5MwZmgzHbya5Z6Q==", "requires": { - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/shared-ini-file-loader": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, "@aws-sdk/node-http-handler": { - "version": "3.254.0", - "requires": { - "@aws-sdk/abort-controller": "3.254.0", - "@aws-sdk/protocol-http": "3.254.0", - "@aws-sdk/querystring-builder": "3.254.0", - "@aws-sdk/types": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.272.0.tgz", + "integrity": "sha512-VrW9PjhhngeyYp4yGYPe5S0vgZH6NwU3Po9xAgayUeE37Inr7LS1YteFMHdpgsUUeNXnh7d06CXqHo1XjtqOKA==", + "requires": { + "@aws-sdk/abort-controller": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/querystring-builder": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, "@aws-sdk/property-provider": { - "version": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.272.0.tgz", + "integrity": "sha512-V1pZTaH5eqpAt8O8CzbItHhOtzIfFuWymvwZFkAtwKuaHpnl7jjrTouV482zoq8AD/fF+VVSshwBKYA7bhidIw==", "requires": { - "@aws-sdk/types": "3.254.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, "@aws-sdk/protocol-http": { - "version": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.272.0.tgz", + "integrity": "sha512-4JQ54v5Yn08jspNDeHo45CaSn1CvTJqS1Ywgr79eU6jBExtguOWv6LNtwVSBD9X37v88iqaxt8iu1Z3pZZAJeg==", "requires": { - "@aws-sdk/types": "3.254.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, "@aws-sdk/querystring-builder": { - "version": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.272.0.tgz", + "integrity": "sha512-ndo++7GkdCj5tBXE6rGcITpSpZS4PfyV38wntGYAlj9liL1omk3bLZRY6uzqqkJpVHqbg2fD7O2qHNItzZgqhw==", "requires": { - "@aws-sdk/types": "3.254.0", + "@aws-sdk/types": "3.272.0", "@aws-sdk/util-uri-escape": "3.201.0", "tslib": "^2.3.1" } }, "@aws-sdk/querystring-parser": { - "version": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.272.0.tgz", + "integrity": "sha512-5oS4/9n6N1LZW9tI3qq/0GnCuWoOXRgcHVB+AJLRBvDbEe+GI+C/xK1tKLsfpDNgsQJHc4IPQoIt4megyZ/1+A==", "requires": { - "@aws-sdk/types": "3.254.0", + "@aws-sdk/types": "3.272.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/s3-request-presigner": { + "version": "3.276.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/s3-request-presigner/-/s3-request-presigner-3.276.0.tgz", + "integrity": "sha512-xRp+1eiErM8ys3IIjasxeS8kWAPnwO0byNB26i5htppJ2AgzH11mIuipjhhbzcHB+7EO3JiVxHJB+NSFmHdLaw==", + "requires": { + "@aws-sdk/middleware-endpoint": "3.272.0", + "@aws-sdk/middleware-sdk-s3": "3.272.0", + "@aws-sdk/protocol-http": "3.272.0", + "@aws-sdk/signature-v4-multi-region": "3.272.0", + "@aws-sdk/smithy-client": "3.272.0", + "@aws-sdk/types": "3.272.0", + "@aws-sdk/util-create-request": "3.272.0", + "@aws-sdk/util-format-url": "3.272.0", "tslib": "^2.3.1" } }, "@aws-sdk/service-error-classification": { - "version": "3.254.0" + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.272.0.tgz", + "integrity": "sha512-REoltM1LK9byyIufLqx9znhSolPcHQgVHIA2S0zu5sdt5qER4OubkLAXuo4MBbisUTmh8VOOvIyUb5ijZCXq1w==" }, "@aws-sdk/shared-ini-file-loader": { - "version": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.272.0.tgz", + "integrity": "sha512-lzFPohp5sy2XvwFjZIzLVCRpC0i5cwBiaXmFzXYQZJm6FSCszHO4ax+m9yrtlyVFF/2YPWl+/bzNthy4aJtseA==", "requires": { - "@aws-sdk/types": "3.254.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, "@aws-sdk/signature-v4": { - "version": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.272.0.tgz", + "integrity": "sha512-pWxnHG1NqJWMwlhJ6NHNiUikOL00DHROmxah6krJPMPq4I3am2KY2Rs/8ouWhnEXKaHAv4EQhSALJ+7Mq5S4/A==", "requires": { "@aws-sdk/is-array-buffer": "3.201.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/types": "3.272.0", "@aws-sdk/util-hex-encoding": "3.201.0", - "@aws-sdk/util-middleware": "3.254.0", + "@aws-sdk/util-middleware": "3.272.0", "@aws-sdk/util-uri-escape": "3.201.0", "@aws-sdk/util-utf8": "3.254.0", "tslib": "^2.3.1" } }, "@aws-sdk/smithy-client": { - "version": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.272.0.tgz", + "integrity": "sha512-pvdleJ3kaRvyRw2pIZnqL85ZlWBOZrPKmR9I69GCvlyrfdjRBhbSjIEZ+sdhZudw0vdHxq25AGoLUXhofVLf5Q==", "requires": { - "@aws-sdk/middleware-stack": "3.254.0", - "@aws-sdk/types": "3.254.0", + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, "@aws-sdk/token-providers": { - "version": "3.254.0", - "requires": { - "@aws-sdk/client-sso-oidc": "3.254.0", - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/shared-ini-file-loader": "3.254.0", - "@aws-sdk/types": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.272.0.tgz", + "integrity": "sha512-0GISJ4IKN2rXvbSddB775VjBGSKhYIGQnAdMqbvxi9LB6pSvVxcH9aIL28G0spiuL+dy3yGQZ8RlJPAyP9JW9A==", + "requires": { + "@aws-sdk/client-sso-oidc": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/shared-ini-file-loader": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, "@aws-sdk/types": { - "version": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.272.0.tgz", + "integrity": "sha512-MmmL6vxMGP5Bsi+4wRx4mxYlU/LX6M0noOXrDh/x5FfG7/4ZOar/nDxqDadhJtNM88cuWVHZWY59P54JzkGWmA==", "requires": { "tslib": "^2.3.1" } }, "@aws-sdk/url-parser": { - "version": "3.254.0", - "requires": { - "@aws-sdk/querystring-parser": "3.254.0", - "@aws-sdk/types": "3.254.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/util-defaults-mode-browser": { - "version": "3.254.0", - "requires": { - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/types": "3.254.0", - "bowser": "^2.11.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/util-defaults-mode-node": { - "version": "3.254.0", - "requires": { - "@aws-sdk/config-resolver": "3.254.0", - "@aws-sdk/credential-provider-imds": "3.254.0", - "@aws-sdk/node-config-provider": "3.254.0", - "@aws-sdk/property-provider": "3.254.0", - "@aws-sdk/types": "3.254.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/util-endpoints": { - "version": "3.254.0", + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.272.0.tgz", + "integrity": "sha512-vX/Tx02PlnQ/Kgtf5TnrNDHPNbY+amLZjW0Z1d9vzAvSZhQ4i9Y18yxoRDIaDTCNVRDjdhV8iuctW+05PB5JtQ==", "requires": { - "@aws-sdk/types": "3.254.0", + "@aws-sdk/querystring-parser": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, - "@aws-sdk/util-middleware": { - "version": "3.254.0", + "@aws-sdk/util-arn-parser": { + "version": "3.208.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.208.0.tgz", + "integrity": "sha512-QV4af+kscova9dv4VuHOgH8wEr/IIYHDGcnyVtkUEqahCejWr1Kuk+SBK0xMwnZY5LSycOtQ8aeqHOn9qOjZtA==", "requires": { "tslib": "^2.3.1" } }, - "@aws-sdk/util-retry": { - "version": "3.254.0", + "@aws-sdk/util-create-request": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-create-request/-/util-create-request-3.272.0.tgz", + "integrity": "sha512-0+t4+tp6uu9uagnxklyvGFKi19cbSK/77q77AQ8iou2H1aBAGVckIB4xN1d6cCwDPkL/3YmLdpwG0txTzbWBVg==", "requires": { - "@aws-sdk/service-error-classification": "3.254.0", + "@aws-sdk/middleware-stack": "3.272.0", + "@aws-sdk/smithy-client": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, - "@aws-sdk/util-user-agent-browser": { - "version": "3.254.0", + "@aws-sdk/util-defaults-mode-browser": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.272.0.tgz", + "integrity": "sha512-W8ZVJSZRuUBg8l0JEZzUc+9fKlthVp/cdE+pFeF8ArhZelOLCiaeCrMaZAeJusaFzIpa6cmOYQAjtSMVyrwRtg==", "requires": { - "@aws-sdk/types": "3.254.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", "bowser": "^2.11.0", "tslib": "^2.3.1" } }, - "@aws-sdk/util-user-agent-node": { - "version": "3.254.0", - "requires": { - "@aws-sdk/node-config-provider": "3.254.0", - "@aws-sdk/types": "3.254.0", - "tslib": "^2.3.1" - } - }, - "vitest": { - "version": "0.25.8", - "dev": true, - "requires": { - "@types/chai": "^4.3.4", - "@types/chai-subset": "^1.3.3", - "@types/node": "*", - "acorn": "^8.8.1", - "acorn-walk": "^8.2.0", - "chai": "^4.3.7", - "debug": "^4.3.4", - "local-pkg": "^0.4.2", - "source-map": "^0.6.1", - "strip-literal": "^1.0.0", - "tinybench": "^2.3.1", - "tinypool": "^0.3.0", - "tinyspy": "^1.0.2", - "vite": "^3.0.0 || ^4.0.0" - } - } - } - }, - "example-javascriptv3-cloudwatchlogs": { - "version": "file:example_code/cloudwatch-logs", - "requires": { - "@aws-sdk/client-cloudwatch-logs": "^3.215.0", - "@aws-sdk/client-iam": "^3.216.0", - "@aws-sdk/client-lambda": "^3.216.0", - "libs": "*", - "ramda": "^0.28.0", - "vitest": "^0.25.3" - }, - "dependencies": { - "@aws-sdk/client-cloudwatch-logs": { - "version": "3.244.0", - "requires": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/client-sts": "3.241.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/credential-provider-node": "3.241.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-signing": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.241.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/util-defaults-mode-node": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.272.0.tgz", + "integrity": "sha512-U0NTcbMw6KFk7uz/avBmfxQSTREEiX6JDMH68oN/3ux4AICd2I4jHyxnloSWGuiER1FxZf1dEJ8ZTwy8Ibl21Q==", + "requires": { + "@aws-sdk/config-resolver": "3.272.0", + "@aws-sdk/credential-provider-imds": "3.272.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/property-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, - "@aws-sdk/client-sso": { - "version": "3.241.0", + "@aws-sdk/util-endpoints": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.272.0.tgz", + "integrity": "sha512-c4MPUaJt2G6gGpoiwIOqDfUa98c1J63RpYvf/spQEKOtC/tF5Gfqlxuq8FnAl5lHnrqj1B9ZXLLxFhHtDR0IiQ==", "requires": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.241.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, - "@aws-sdk/client-sso-oidc": { - "version": "3.241.0", + "@aws-sdk/util-format-url": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-format-url/-/util-format-url-3.272.0.tgz", + "integrity": "sha512-ZvYRnzDOjyR7UEZtCicDcV80nuk148IaBJfnzacVdsB3eu+rCcqZDCuGao/jKGNZGroMHmL8b4Tskwc4vZlDDw==", "requires": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.241.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", + "@aws-sdk/querystring-builder": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, - "@aws-sdk/client-sts": { - "version": "3.241.0", + "@aws-sdk/util-middleware": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.272.0.tgz", + "integrity": "sha512-Abw8m30arbwxqmeMMha5J11ESpHUNmCeSqSzE8/C4B8jZQtHY4kq7f+upzcNIQ11lsd+uzBEzNG3+dDRi0XOJQ==", "requires": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.234.0", - "@aws-sdk/credential-provider-node": "3.241.0", - "@aws-sdk/fetch-http-handler": "3.226.0", - "@aws-sdk/hash-node": "3.226.0", - "@aws-sdk/invalid-dependency": "3.226.0", - "@aws-sdk/middleware-content-length": "3.226.0", - "@aws-sdk/middleware-endpoint": "3.226.0", - "@aws-sdk/middleware-host-header": "3.226.0", - "@aws-sdk/middleware-logger": "3.226.0", - "@aws-sdk/middleware-recursion-detection": "3.226.0", - "@aws-sdk/middleware-retry": "3.235.0", - "@aws-sdk/middleware-sdk-sts": "3.226.0", - "@aws-sdk/middleware-serde": "3.226.0", - "@aws-sdk/middleware-signing": "3.226.0", - "@aws-sdk/middleware-stack": "3.226.0", - "@aws-sdk/middleware-user-agent": "3.226.0", - "@aws-sdk/node-config-provider": "3.226.0", - "@aws-sdk/node-http-handler": "3.226.0", - "@aws-sdk/protocol-http": "3.226.0", - "@aws-sdk/smithy-client": "3.234.0", - "@aws-sdk/types": "3.226.0", - "@aws-sdk/url-parser": "3.226.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.234.0", - "@aws-sdk/util-defaults-mode-node": "3.234.0", - "@aws-sdk/util-endpoints": "3.241.0", - "@aws-sdk/util-retry": "3.229.0", - "@aws-sdk/util-user-agent-browser": "3.226.0", - "@aws-sdk/util-user-agent-node": "3.226.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "fast-xml-parser": "4.0.11", "tslib": "^2.3.1" } }, - "@aws-sdk/credential-provider-ini": { - "version": "3.241.0", + "@aws-sdk/util-retry": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-retry/-/util-retry-3.272.0.tgz", + "integrity": "sha512-Ngha5414LR4gRHURVKC9ZYXsEJhMkm+SJ+44wlzOhavglfdcKKPUsibz5cKY1jpUV7oKECwaxHWpBB8r6h+hOg==", "requires": { - "@aws-sdk/credential-provider-env": "3.226.0", - "@aws-sdk/credential-provider-imds": "3.226.0", - "@aws-sdk/credential-provider-process": "3.226.0", - "@aws-sdk/credential-provider-sso": "3.241.0", - "@aws-sdk/credential-provider-web-identity": "3.226.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/types": "3.226.0", + "@aws-sdk/service-error-classification": "3.272.0", "tslib": "^2.3.1" } }, - "@aws-sdk/credential-provider-node": { - "version": "3.241.0", + "@aws-sdk/util-user-agent-browser": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.272.0.tgz", + "integrity": "sha512-Lp5QX5bH6uuwBlIdr7w7OAcAI50ttyskb++yUr9i+SPvj6RI2dsfIBaK4mDg1qUdM5LeUdvIyqwj3XHjFKAAvA==", "requires": { - "@aws-sdk/credential-provider-env": "3.226.0", - "@aws-sdk/credential-provider-imds": "3.226.0", - "@aws-sdk/credential-provider-ini": "3.241.0", - "@aws-sdk/credential-provider-process": "3.226.0", - "@aws-sdk/credential-provider-sso": "3.241.0", - "@aws-sdk/credential-provider-web-identity": "3.226.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/types": "3.226.0", + "@aws-sdk/types": "3.272.0", + "bowser": "^2.11.0", "tslib": "^2.3.1" } }, - "@aws-sdk/credential-provider-sso": { - "version": "3.241.0", + "@aws-sdk/util-user-agent-node": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.272.0.tgz", + "integrity": "sha512-ljK+R3l+Q1LIHrcR+Knhk0rmcSkfFadZ8V+crEGpABf/QUQRg7NkZMsoe814tfBO5F7tMxo8wwwSdaVNNHtoRA==", "requires": { - "@aws-sdk/client-sso": "3.241.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/token-providers": "3.241.0", - "@aws-sdk/types": "3.226.0", + "@aws-sdk/node-config-provider": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, - "@aws-sdk/token-providers": { - "version": "3.241.0", + "@aws-sdk/util-waiter": { + "version": "3.272.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-waiter/-/util-waiter-3.272.0.tgz", + "integrity": "sha512-N25/XsJ2wkPh1EgkFyb/GRgfHDityScfD49Hk1AwJWpfetzgkcEtWdeW4IuPymXlSKhrm5L+SBw49USxo9kBag==", "requires": { - "@aws-sdk/client-sso-oidc": "3.241.0", - "@aws-sdk/property-provider": "3.226.0", - "@aws-sdk/shared-ini-file-loader": "3.226.0", - "@aws-sdk/types": "3.226.0", + "@aws-sdk/abort-controller": "3.272.0", + "@aws-sdk/types": "3.272.0", "tslib": "^2.3.1" } }, - "@aws-sdk/util-endpoints": { - "version": "3.241.0", + "@aws-sdk/xml-builder": { + "version": "3.201.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.201.0.tgz", + "integrity": "sha512-brRdB1wwMgjWEnOQsv7zSUhIQuh7DEicrfslAqHop4S4FtSI3GQAShpQqgOpMTNFYcpaWKmE/Y1MJmNY7xLCnw==", "requires": { - "@aws-sdk/types": "3.226.0", "tslib": "^2.3.1" } }, - "vitest": { - "version": "0.25.8", - "dev": true, - "requires": { - "@types/chai": "^4.3.4", - "@types/chai-subset": "^1.3.3", - "@types/node": "*", - "acorn": "^8.8.1", - "acorn-walk": "^8.2.0", - "chai": "^4.3.7", - "debug": "^4.3.4", - "local-pkg": "^0.4.2", - "source-map": "^0.6.1", - "strip-literal": "^1.0.0", - "tinybench": "^2.3.1", - "tinypool": "^0.3.0", - "tinyspy": "^1.0.2", - "vite": "^3.0.0 || ^4.0.0" - } - } - } - }, - "example-javascriptv3-cognito": { - "version": "file:example_code/cognito", - "requires": { - "@aws-sdk/client-cognito-identity-provider": "^3.183.0", - "@aws-sdk/client-ses": "^3.183.0", - "@types/qrcode-terminal": "^0.12.0", - "amazon-cognito-identity-js": "^5.2.10", - "aws-amplify": "^4.3.37", - "crypto-js": "^4.1.1", - "qrcode-terminal": "^0.12.0", - "ramda": "^0.28.0", - "vitest": "^0.26.2" - } - }, - "example-javascriptv3-ec2": { - "version": "file:example_code/ec2", - "requires": { - "@aws-sdk/client-ec2": "^3.266.1", - "@aws-sdk/client-ssm": "*", - "vitest": "^0.28.4" - }, - "dependencies": { "pathe": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.0.tgz", @@ -57198,9 +62253,9 @@ "dev": true }, "vite-node": { - "version": "0.28.4", - "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-0.28.4.tgz", - "integrity": "sha512-KM0Q0uSG/xHHKOJvVHc5xDBabgt0l70y7/lWTR7Q0pR5/MrYxadT+y32cJOE65FfjGmJgxpVEEY+69btJgcXOQ==", + "version": "0.28.5", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-0.28.5.tgz", + "integrity": "sha512-LmXb9saMGlrMZbXTvOveJKwMTBTNUH66c8rJnQ0ZPNX+myPEol64+szRzXtV5ORb0Hb/91yq+/D3oERoyAt6LA==", "dev": true, "requires": { "cac": "^6.7.14", @@ -57214,18 +62269,18 @@ } }, "vitest": { - "version": "0.28.4", - "resolved": "https://registry.npmjs.org/vitest/-/vitest-0.28.4.tgz", - "integrity": "sha512-sfWIy0AdlbyGRhunm+TLQEJrFH9XuRPdApfubsyLcDbCRrUX717BRQKInTgzEfyl2Ipi1HWoHB84Nqtcwxogcg==", + "version": "0.28.5", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-0.28.5.tgz", + "integrity": "sha512-pyCQ+wcAOX7mKMcBNkzDwEHRGqQvHUl0XnoHR+3Pb1hytAHISgSxv9h0gUiSiYtISXUU3rMrKiKzFYDrI6ZIHA==", "dev": true, "requires": { "@types/chai": "^4.3.4", "@types/chai-subset": "^1.3.3", "@types/node": "*", - "@vitest/expect": "0.28.4", - "@vitest/runner": "0.28.4", - "@vitest/spy": "0.28.4", - "@vitest/utils": "0.28.4", + "@vitest/expect": "0.28.5", + "@vitest/runner": "0.28.5", + "@vitest/spy": "0.28.5", + "@vitest/utils": "0.28.5", "acorn": "^8.8.1", "acorn-walk": "^8.2.0", "cac": "^6.7.14", @@ -57241,23 +62296,12 @@ "tinypool": "^0.3.1", "tinyspy": "^1.0.2", "vite": "^3.0.0 || ^4.0.0", - "vite-node": "0.28.4", + "vite-node": "0.28.5", "why-is-node-running": "^2.2.2" } } } }, - "example-javascriptv3-lambda": { - "version": "file:example_code/lambda", - "requires": { - "@aws-sdk/client-iam": "^3.241.0", - "@aws-sdk/client-lambda": "^3.163.0", - "@types/ramda": "^0.28.15", - "libs": "*", - "ramda": "^0.28.0", - "vitest": "^0.26.3" - } - }, "example-javascriptv3-sts": { "version": "file:example_code/sts", "requires": { diff --git a/javascriptv3/package.json b/javascriptv3/package.json index 35ffa7b87a0..1f563041bd6 100644 --- a/javascriptv3/package.json +++ b/javascriptv3/package.json @@ -13,7 +13,8 @@ "example_code/libs", "example_code/sts", "example_code/support", - "example_code/ec2" + "example_code/ec2", + "example_code/s3" ], "devDependencies": { "lerna": "^6.3.0" diff --git a/resources/sample_files/.sample_media/market_2.jpg b/resources/sample_files/.sample_media/market_2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a1a411635f64130099b689b3668c00842c8b1bb9 GIT binary patch literal 431316 zcmb@td00~K*FK5}ikb$9TAGE53Ya#bmX-m60uBL!np0|8h-qdHWm!s?im8a2Ls^KR zfA8i;-sDC1rT%9Fco7I_kd+`%LSjlX+nbCI-W-CS zU-#cFYU}Q#|F-`ROJKiW9?tI_1R8MsKWzVhTcsBhyL&6p={@jHNd^W74mJj`QQQB^ z-ZO7U|CfDa-cIJQJ%K(_z{YO>-|XoB%}!5AN&))Zo$tRjDS6(00@&*lcBIaaHQ(ls zctLC;Hvm`$1MelE-5@r|8$<@||6kkxT+f{{5NPdZ5J+46KkK5aK%nzEAkd=G|5=BT zfwcC{yqkIg5U-Vj27s_jSP*D2)OYgtob5S z(?zRnY%Q^FYc{N3w`Q#?krw7pqy$l2*D@1WL0h7?^R|2V?b@3ZvnMQe`_}oLXd#fu zMJ9_@n47QIN?uFe`v1B8y#_+SVEXzU+FI5iFhWZkq4oDB$O5<;+FJ7u_Wx>HU~LFg zM;F-0hJ&;qT40DaL`N5@3tYK{T0n0E#A+23Nn#mC?b5McosF_tQ&M}zgg|CTCtt@n z@9ukUYU>#wki4gCZTsNDIV7{Aa!Wg7QgprQVu5{{1B3mi{jc#r|1}`6Z8ZWo5HJ`F z45|&$1}tr08$x>((h6d{n#8h(uGxjMiOL4XDmg=8V`{Je9R)4W2EKyOMu0Yg=3w3_ zN5cjBNW9=PRrl#nT!La_#4KyY?2gZ`!7^eB6!D08d7g##a@WXg|}lAr6qNm zvniJIoi->nWSjG<2&s?TMBaZv`av0n0iTB)7cyYkHkz$%p?CvYJsT_Nb$vX`kW6LQ zYUw6rTS0ZHL}5P#MuuA#iiJc8k0=(R;lLj=hm5mhQ!t`fYk|!RgNvP49*ke`{EyL< z`f~S!2I-wgjz>nKfzQH`v|{IA30!54^wXk|;jm3IIL4mN)*>iT*}{H3AyS`2u|pyC z-0ZzEh_TH+!n!xYpwb~PuPZ7iRJ#G&M1o()Yt zgMnI^OM#GWq9ElQJh_%>(R`#7i!5dH&G$sL4q&h4tWfD4RFpPd2 zq|X-zmR4Iwb(6Z)y`lfe4ONG`iH(k@Pp+0_5w#-(qOiYn;@>p{H5(Z7qiF5NWp&?O9 ziV$ioA%o;qbdb;rB(%%6Glns>2zGFNI;3}Hjcr?GBL|KfT;v@ zK7BQUhU5`p=JZ;y9}I?MP^nX=dXOJk9<8~5 z^!YEJGoY{Fm%#EYNb1(i4dyzHMWlV?ShS-KzjcK#3sh&vZhNtDn`)imxANj|+#TPB zibkL`wUyTq929lC(QZt?H1}dHUF99WIT4pOL3%Q3T3HK);c>UVWbgAg`?5U3X@%Ng z^!=$bJ7w>R{lf}pSpmt}28mXfNjEB{Oo^v>l`uF$ww#?JL{M>T99YigDL^$7A~G%q zEv;k*>x=QHIivGSrhXI&58TI2oX{=@%qaDn?@MIkU_>^LtOX;@KXgcWzg?M;1cR-x z7vc6-7%Eqo% zNVrrUDpj2?J@K+_Q(rAJ?cGGBo6{GH1WK+oxOc2=~UgCK@e98JNY{xs}9d{_#Yik|WZ9Vtl-X{9`Rk1f0 zVl`vC#wXz_M-P9%?V^kt}H0o-y|y-3fP7*GtAY>%7DD#qnnpulDqR z4T-&DR9sd4Cw|{nUvJW@rc`KDoHjR9nYfB-MCS5ieyZH3+ZSW(B+U|d4zUpF2M^(@ zcreh;m`=FtB-L`j76w7@wF1euJsYg`1bGKU(KJaI$Z!_)tVsjONGk6`g!Yf2P zx%fNw@ND^#W2la&dXlqa3X{eJEXXZqQP5$bac6S-ZzQ<+htY z{m+M+${dH3Ub3C3YG~-G$^-nFQDT#R#RTEpa$kV#}jJrRV+XMQjTf zm06E@I=0UoJ?ct_O>}4=R+t5VYk{K^g?KQk?yFzp=&p;;v=EtZGdT&XT|LrdDI{Z+ zCj|u-1*Va3<;X0b?tzOWjvm`BjSPvi43L-T!Kf-oDV+lI=HMY#Fo-A)y`sxHV5)>d z5c}s5t@NaDrce(?XQE1JGNgA*cRum(Tfpz%b%KAZNYBX>hwpjvaq`)J9DdAyyL~;G zSOxh)hU<;ehyyG?h=6b9PMpM3=Uo|fB}b6U1zZ6>QY8>`%>*#E{?QKKb)@JtnPGjl zf?f;Rn*f2#P^9@R{60)$7EFN=JBkHxfi0APrfJb2-r%N02A5Hra86t*RhitR^b!Y#$o_4%r4*1@dJYDhI3RQ=XmS|j8W4lv@@sxDnYfw? zGN#$(MY*$l(PAvko~KW>L!?L}?HTI_i&Cjs=tf<8zD^F3Z42qG{ijCCV+`o$(#R;N zoLN9rT36w1nIUu`)|$=6;gL8k8oJQBET1Z?qvJ4AI^g{v@P=*?NuN<(CL(RY?^p3i zputHx%!a1GuwnIZGS7f2E1^NrS;ksK=*l>>@oVCYyHB}KIY`JxkZ~xXo}Qu&Bow4c zwDcM)&^*?-PZgx!mUx-c0Ts$+`sGsgvZPZRP8?{@&~uK8*te06*jiBaVL7tp`$6;T zE^klxpH*Dgf}Fl_y8Y&jpVY^PI|A`7Hq_&@YQ*epV+#Xk_%PAtOBCOt`H~N<(?b|+TQ7Lz2M4*b=xLQOspjXC6L}qBAX)@BIIldj%7~YOlJ$MPz`i8 zY))2Is%4_@Uv`a(wW2B9e6iN%asoL;K=Q>8n4>klCXwYUQ>lI^2_G!3ra^ioIzn-F zEsTf>U}4Za<{NJ}L15E9+{1w%u+ky{=uwCPN9o|bFjRyZx))aU#FU2==BS3xbHPOW}i1iO{k2bd%Bzuu+YpWcYN-0OWI?n;DGo7TFd%}$#-^LN*>BsaA9$&-tKg5*_)T$6N*;{Wdk?X zR6dT;lu844E%CbYx?q#-n-i@~eN#QR_gAjV-qVsA_U8PRf;2n7ur*x6{4q}_{jbNG zg2KY)j$lw%O`_^vNoVxmE>YRfk_}5`Fq_oPc(43^FEtT`u4Nkb@yt) zdN7ybZMOFJE(7=6HTz5&)`uzXxnI#5S5QLshBEYoP5$S=C+1noK zY&6JT9_-9lg~a^@Imf3YU0y%5j`PC6tJbTo_J|W4_Bd)E))y9kY4Ag{SATr0-okZB z?$8Hwlizlolo!2zSoXY)p3bMwzN&ha+P8MoRqxlY)Z;2IF(+J+!0-BmmqA5id|U05 zjhO*c1o|Hul9OY*Io{l8a+H=lKIMWt5GT(fBQi{wDPHX~J^Z3)oEJlrmS5VjITlMr z);A6);fcS>it0PPV@y5`mT7Qn<75JypyE{ltxP9xZbA~7svv*gQH33Yf*Av3s}wS# zgJ=aKiVI8n;8rlRA?CTMDw3O2N_iU>vJaDo(7?0E#>5g$Ch`#)o+Savs~NQ@QJe`R z^n=q^{h#OyHmPIJ4{kF{bY1@=V?m~1^j5J& zSHc6_DP3PL#F0us>Y-XT^wF&qG)D@#kIyNDdvb97`9yJfJzNh5nKUsc$DtifC2&Ts z1g>XKlk4eo%F!H=9}J138TdLwaE!7JR<{6+<0_M-&crOXAzKTTCASkY=Q9lq4F+i; z^<&*Are=+1DxZEJp()#K60~|z^j`ee;lZ2Vs^z=ZxCYyW&V3EG?RDDg9({D#XvnPRd&6O4!uREiHiDl%$SP{W-cQF};3U!tna@8b4$B%}E^D{%!9kDB zRxJxAQVxyjaam-2bH}L0%NJRLSdUZGn6xzRrG0l~_xL}Q7Vh#BKUMd(FZdY}I+45d z=;@>}yKwLL@%0tH?ApJeYFT&UX#dC#o9!u2be$&bDQ+DEW+1kx3vKQ_t^&C=4F4)i z9MC*VLF#f-R-C0W2U>PcR33DA+&C?}!`Q`~e4JQt;-JZyxlrv*{LNv#T1|?hQ^zhh z+P8sDNpx><@+i#%cQVFWoO-{qO3SL7Hr&rEzwelm_?D3X616L4;%{mBY_yT3eaY)9 z6i@UZ<9K)THW{B73l9o^sMQ$s(to07?W5U_C#kcpPLFK!)H95WR%vr*g#Xfd?*EA| zEm?*UT6VV093$-V$ZN-0L66UH!r51FMtAsf+ifkJtTX(s;B}XW{LiWE2K>)_Z5=jx zpi_lC6WR(7^tOsS+qe6Hr6%fVjgyT**nZkE*#lG3s&D?^9qM}GANy}!y}0|&HqlbX zR`c_p3UbyKbwiZ7!5{IOhh5<|D1KqT8h_2!S|9;gxzj;~#um2c@(x$B*w2PgKlb-e z2$I-D#@jpMV}1M!O!|>-4Yg_QbgX9nVaQc~maSc(v2%*VsPCfnmqdH}o?X2U|_XW3FW7wL-hLL)Zi*WWW* z`Qw^qA;g{E$Mwr)T;y)5TR->+`$ORvuV@^I(C(-m4rtqnvK+6=@@N&bks|wCQ#vBX zHX7Lxl|723ZOnkKTHG>;Fl~7Ban&m^t?6{*bc&K7JUaFBZ9j#oL{@267I#?_$DlD&vUIj{ znhOif+nLJ2RFgnVI1`Q%TDMz@E#$_(&iTA!>34bEf&n{$V{B3k;V?1+49_9c32>Gk zj5d*7FCHR*>GJFlV>$>Rl8{t_2zLHO_$Bb(bEnFjitFd70hH}VMGH`qP8*CTI>g3Yw(^ zH|YuTF4#4V19=ExYH*!ETkMAtC;9i{X*n2lp>21)5dPZN89?scaVse9&da_<<#KjWaS8Xa$f))NE75D3R$e^&KjaHQ5|uBhZ6H6 zA=6OEUbYnj$a6%F)@%-=FAfr-CzJqe(*i|YxSVS|u8(P~Ma`H>5J+_hT^d<0t0WEz z^4KHPl_fYcY=!k=98wxqjr)ixm-WIJy@DXx8+EB1Dz8rEA>-y6x&fEyQ|=}e5QLWS zEIE2wqJ?KS`8tF87({z|qdwJofNE}67oxO=SohnN_*oNKPTb31Sf(E_FjAXoqHkZUL+ithBhB1jt#0kx4@`Zm z;~I?-k7>GY9)Px7Y`#R|2(kp(s=`Hs4MWzIPteB>d|vZP zHe|h=clrtEc?NctbMh4DXdS_hiRgpv`W3a$$?%I|gv-Vw8K>f|=MFlj-I>|lGiXK0 zSuGjJ2UYTUYCRZPN`_}!t>zer8GU?wINaUW!~`vqqa-Ln9I-Q<(Kf|$!a6$9Ebylj z=o)mpY9F?+6eCmc#`PQ4Dq^H(kK5iyd2%|KD>)KF`3y0SYEx<53p{Xk^PvdM5g5~? zh1R8H9D7~Bf0!*M2GX0?u;z2nj};a!l4acKxxXOpLD`4Wh0PvKtV_Xj9_TaoJ~(zP zL*8=AN$z^+63qvNTS!5p748N}8t=egN4=6ui-#`y_)nCreX^5VVe!XCk}2M2_ZQTT zO*_~`miruqxx8nX1L1In{$1J+WwpLe3FuiDLy)H@($a># zJ})Rze!4P+XZ!jw(O*1cFzg^8#-mfG+mxogw%)2rx3@9u;#iZ-F8s13?oF248x`6r zC3m>me|Rh~Fdq@By615H$lFHR$vudnh|u(mAF3r!J@@69G+EgGv%Z1ZcyHRti!oWm>oT=V zR983o0fUG=<7T>vs%yzD{KUPO5`z5I$K%54U1$n#nN=;`m!C!Upb=C1HuSpzPp=i> zl#*CVN9C=^G@dBRw+-&?2?0xvY#lS1`cFQx~H{CzFXN=V4jBeAHfz0F5*1C z@0dMQar0L4+YSYg;aU#+YLIF5gK^6v7ieZ)ov(@5 zyR$5PDC%|+a_T(66ih;KjT0VezGHp1{luN-=R?Qhrp|_J5qKXacZ_FWZj#;0R$6~H zAX!hH8`^#OyjyZ|){Z-*Q<8?z!Qc11B0K0DuJOdVPA92sCKL4}Wm?LpHH4>qWb|%I zWtQ+-Cz-QNj%wjf66jIb7)j64Sa%<-U}>JV4B@TOmtqMeb3_Xn6#JF+-L7ZIY%Ptzh^=t&J1e4b=;uW~Y)}Ka(f`j?JP;>$9!Q z>$>0>0BpC_#No39NZ-+LrkY;Ka|esLZytYG z;n|s*<#b`)n}Ocw3GmaQToljri^!mPud;t#fKCa&mW^|#s({<+5sOR!W93$0xf1Z! zbapikf&=IVbT+vhlcl~+huOvnYI$nY-8NNT044@2_@_D9q?Md(u0X*z&|dLn93=};@YD!-2dAIvrPPzu_0aO!H~@B% zkVr)|&V;4DHrp&OV8L1Vr(EQq2_kMzIoEKH=J47ZFEP4{Cg%s>u}EV%Tg4Iii}L_v zk6{+jG01VfTquxW=vCPMQ;y**=%AGKD@Z&l8#iA;kR!bsF+xy)77;M@gcJcEOLeD} zvDY!ZdY##Zn@S*YD~CL|Xe>G_x)Mfhl(T*9X+mRipnzsiUCO6vdL3wzfYY)tIAt_n zpL(6B8G<#I%{UPAX!Q(HZ7rr3(-(&|=etzv2uq2bQD`}V#nxxoaM3^+rII)XIQ9#< zqvaDd@5|p@C?0Km=wz4pw#J^@_m9Wi8=tn@{ui2Wd>f8m_B_mY!;*`8eh`*(!`@nL zPa5K-cQ$Sml`t)uzyG+cE*Rf@;c!XIny{l&pSNBy(b-S+du%~rrxQtZul@$@k!*hzEjY(>>uIeui~e zZpTXGFQkFT{d*;j+GM&4g0h16m9Z=J`e9i$fFtH0bk%VSSfK0F#4 z(fu0zyZiif{a9IyDmX42_f(|MsPhMPDARPREr-_}b{Tikgaa%Sd?V69ld8mi4kgoS z5=%iNq@|3!iwWFRP1W!m3!5`hv+r_WoDha%QD)9LxT4f$%Z$EX7s#gI$OzB8N)})trIZ&S7oCeUh2F-Y)v{*Ewa*nC3@J`Mvc=Nv4B`l z!t=>s-aJd)ueCb6IHTVU^;s^0@TP@U+9OVlB=U+PW$??^sZ~02;0)Zeq>f=){=j(o zTUjP!gCIn~l!94Hr_y{nn*Jl*R_ckLy12 z8PKnw)f<*>2=bLsYfKg-WcI#{{DdR?5`UzCWX+x5Zt>Jzbv>UqpU!<)k}=!var}jQ zTG+e9(uOrF1MC1(pC#5S!T$cjInNnL)s5!AkzdX3$r_#6@|z5R7_A-4%x;*z^C z?Z+3oD<9k}E0!4lEcd#vMEwP!TEB#idFB5=XAe1+gN^d~d#MnpT=?!C1)bumDK#{) z{1R{kZyTPlnr9!<=TmW|+xqM&nK$Krt|pYP5;oV}Q^6DpD?lsmxV7{{eb_Y|1LsMa79K58DkVh<~q9Md;pbk_^DAm_Nb!Pcm+cQWM zoNxgSQc5LYgwTdKD+;g#!v&21aYD1@sm0l&fkGv*JI`O-m{x*Q1ZIas0T2yoOHhKx zmMHsqTC%iqI|SL73@ISdwQVt-JUFc(E(9hn;kUJ*1g)F`uDS%~pf%4}TcgSyaL`5v zd2-V_R=23Be2Honz<)us*MZ4(sGk~TzXkAb(kca}4QOVLA>#|Q&H1IiT zj?VLQ^HJ%bvS>JPmZAE4+)9xeiUF#}*$?y41f`C&&|XuH7V1kBcq%%drWDu7U{gXf zko1i-rm=!uygEO*wgOwxSb>!YsNJ^RE+zQ<-55q8P?mN8;u=p4L8nQ8(gn`S8=n^S z!lwj%`nq&B1HUICeov8AMVa%z1J!QUgipTq^f@WX7oyY0)}o?O%9X|=U@f{9VIIEM zyx6$ovhg4ArFV#*T=Sx(J8zz5oFD(?1G%_7C>S7roSs-fZ{GaYIdhF*U=rjuIq%t% zYac7YQ)hQ+%{n@|H9zs5?(7e;J&DlYWIE=;)O{Louv2iN(V|w%tJF8H4|9D8c1Brq zX)r{d5}Xilo?1WCACm8D1)2~@7k^l><=VSz{J8~7zeQXXWF89IpOO43wVU2y+h7c% z)6no5oQ_l=)+bt*&>#SJN3x*S15yb6l&tD3|6gLL5(L+xIlK9pnERKKA;Nwl5T^Bj z+A@Ij*&sg{;5p2ZdjDYp<51NIIzfa&(t*fMc9RxungX1*tIbUK)aB!UL6PsMFIT73 zJpB(YhhA8|PP?rCS&8OGX^T^8zjNdX<_gt>;Uxf=M_nn9dn|nm&eh-LyMs9sc6ge# zWbsZoRY?vi^MpTfiJaw&QS)x>A2smT3$UcQy))MI@HHb;B^_3>|_B-GD(#Hn?U1-wRE5`tT9t=Ou%HnhFe$Jr;m zS9_M@3%VjQIgW#5_0~nJ9Jk32QgNR=_^XOD-o@hb_YTD>LepqU{W?Ws$>dx}jL3yV zZd^YYfGHE}$!pLgf~G!8FS~x?Gg${5Sn1Q6CzT6?#G*#BgKwz*h;Lykv!L?q*f3)$ ziSdrxts%zuP-%q(Mspea7ZU1@b>qP)h2<9xx9O@>&0q2V?EXCSIV3+q{7ai!{*v6j zHZve0wlrF^lKH!$C-^TYJE*uh<=y4rnb2_f?hA!`(p9e~KZg5TFU&a*U+MhtDF1+` z_odwZRF^4sda4B?voTzES$fBG$MjV=T%#QbWmbe5B#df0jodYVYHx+`7_V!SWu&>-Cq< z?YHD&(gJNMb~BqlGD^=f+Cu9nHeA-}xE5R5v#zC0rHyV)& zj2=`Es`%Ba7GG9-9%MqCCL_zoTyYIwdh1#NOl8# zH>5zI7lMR2X=#(go}23Hl=oAB!fj%5a~V?hqR~G&AGfwqk}WC0p`}zRptx$}l(1=1 z5s(Hz0Eo&W3IIz7b*LwP=5n8Kmb&`of(XNAJvDI6&QLZi6ug zNGRZbP=V?+4o24c3(|_%ombo%QSukGE$H}*jr_vs=i{>-b5okdk6ZU&4qTm@AHD2A zMdHHjqz@}@hTru-#G3@xkSxogJojbJ$7iK}gWsEfc?LQfx~bL{kKor{dt5Gj%=P20rsU^H7i;z!#6uZDsQnwZTCbns@64LKSwc8(+@kh7WFoJXv z9&t76;*|Nttpg`*+Q?zb3yOcv{kvbCvot0|FUNtq+fLsAEM`LKr~x9331}C@SyWl6 zIT~E)tjUo|&sMo}p^-osq-#?G$TXsrX~k-Q-Z#xIE8*Kd%r2$tVy76VT>$LD*8I?-yS5bRb9Lp_`K`pG%|@3_;if0|{iusFI=y>W=|TCm_}^Ja6Ci#AE8 zUpwt}^J><&?w&aN{A1V?M16r=_j_v!JKZxaJ;wb7Ht`l`SMtGN+{WjMebyWJUm2n1*nVdQl*V5!XADvp%llo(ja0lJh6s28H|svlK0pN+qBF+KDgn?U z0-Q;v|Iv3gw@FaPbDC}ZOm>-UI~3A>Uqh~A*vHJCn>`e2m>V&L$4z*jtk$`T*`czz zp!YJUXl%Ck-}qN$ZoZEPxXqhS`5g>=`j(&pt9SGIE?8gRJV%7UHK$i~z0b3!Zm6d6 znnd?-!3QiqdG1(zquMws*&=#)yX#XyYsKQaq(I8CdZlGXf8=!O;S=$WutNG+N>NG9 zKZ!*K^*hT#WXpTMwy$27)2Qb2%Z_t`naf(u-;Sj$b^aXo=+y1R>Q>=V*Os95$7)vY zTJ>Ih+VHAs?8HLHXI;^tqtoZzc3-ag#tk|k>g1_D4Vl)3)>>oho%;gGX%Z6)Y%0zE zAmP+_hXyQWKfz@AaDK=e;jA|A$UMSS^WjreXpBuncY({h19a0zEv32vVx70aSdPiklQ zINpeTxPGu#n6IF;EE%ljwX@vSgO1j(kamL!4vbz}Sql|lYDVX=EvOcz42f*C;h5&y zr>XQw2m(ewipZwYO?VDgsAfmjYoZvQWn!#P!~ztKP7OwXotUm?-RGz8B48oOq=ywN zNel=6U_9U$-HLMSS81dmB5>Z)a-e%J~12pB)Ko?M#`sn^%DM8t(l z(L8l9HAjoCh!d!UY-6=PphH0#lcDrE*`x!L2Eph%Lc|g{kpF+y5j#pzQ~dpU!n$dC-G-f;;|UPr`Q1 zjh{C(6Rh^IsVF)Hist~logT~&^e*evx|>%(Fb<4}0)g}tJ#mc?tNC(}9+V)007%3NMx9sj8q?6pnWdM_ivBT?03l_|m&8vI z8{K^?7CJXRU9i~FbU{tvuk5xPC2em?n#T?fUp0~>aEktES-EK-F zQC)3k{NxVEY>?lLaAMdM;~yW*xGzq`?L?|lQ!%zfem@(z<$b!Gnz+xTQLzKvl6epU z+aHzopNz8HSVCTZa>x%Wnwr9o!xF_7}%e(&IsPxca3)3~RHgI$O6@KWq%)=!i z>6_cGLHXBG1#S-Cs2!1eqLNo<-rgJWI&Jmn{#7H%XSH5Q{V%&=Z42LdEzfY|tXp5c z=SjV3ku*jBjlq#m4mF9Z+!Ky28TfpN+SjWQ-MC3S?fq1C)}?DCXvHo5!%t5|D!(m3 zDS2(~&ij=91f!OWqV5Gx(gG?!vAEhYZbq%V-b*CYO|c&@2_ch_6oLqzg_BoQ-*2lu&>FwKLsD&7ZF}9Z2+Tx-s^m;Hci#>ZO5why z)P(-#?>UTY^ZK48LPM>PSmP^s-)om)ELNyiu&d2n$!c>dPiP=BrX?H{Xu+^!94&vV zclg=zk~o!Y+mjjNB&*9L8ZU13yOSwYN`K+odXYcmEyGoY0}`XIAB|t^XPIV0W*KGt z$~g`uqrPNFyN-{O=fOo}v|BAo2pV&$uCGw(lx$MbAclbcSBS|1A`1}fUCD@EDUHfT z%riXsz`O-w)rV6)op-*Zogx6?CUMcmv+b!j8s@{y;q1i3dqytT6D*w0j4QD|afv9w2lktRd940TH zUyMIv4JViIITd(l?5eoAevTk=LIUy^Qytpz-gww3BP`F6gt|tx;TS^t3+uB#;&ide zO12)PAD|oLy>PrAfejJ%W>MurErJYCp>p)8eiWJY64reIN?&icbgdjNs!SH+)z`6( z=E|&fJH)!lP0@2#9&K8)d$U1IQh|6WtL;$#y_-o^&URtMzo6A^OPY5SpE@WE(rv-i<)ypAU@NMVUXEy*jrVOb*g?{+ z0kFbE+4qI9ueW_EU3KTl`_$80~wTzwU%doC&dfW6L-@_@NBTffcOEc?7d zf4a)@1MTA!cUyEut?J9W7Z(<6Ok61C(C?hKkgiCVM!4UxQ57`ICb*h$-&)R?V!uU+ zf2ba)&lsMm`RLG{pPO>zTK)4EpLIuB1B(tmk!312{#pL)XGP@)!GX1Yw?1U-{8D;l zHnm&<-uRIL#TJHKwSxixi1z4pzXr5p6ykEa_x&MlUF_~UU=nLn^=ef)@P zL8SYi6)PHp)~rBo%C$PV`chE-4)eEhx%}4W4Vopb-3TBbR)z1Q-o-&O}U;B=Ip_l(T8$mJPS_m(H9fK^?+r!oRorMv-!Y&neA8-im*p#G5Z&w$vlw_?@$)*~xIT)YkY%!)LDdB%Su= z{)^F#4w8QfbsUK9Ix^$yb$t%seLKMa+3Nk>ZRIW2{hvC@wEV?BRVz6zz9{6buZ)jR zyk~->yT0mwd_w%4T(HD^Fw+v{<~_yN<|m#g!-%gq3k$;zAVy4By;67zZK_h5Ms>CdM5^Ou2;L{( zsnH4Xh;G7B3z5h;O_Mq$4&5dPChk1scm7wDH$8<1e($YXU#!w@G=vRtB}_k#%`$B|(c0NbrpH*y%KL@la5V(f}X=99ey+LI24dJPe)2 zQnK!`$+B{Vn; znBxP?H4?!^e#DK_-E)gy{`4uX{$liV^`)XcfBJ#){?6f> z$~bJME6I1c>UPHHvRB8Jr{O%_{zni-;7K`$?-oA6`~_XI2~YnOK5Qc_o=FJLKd@#j z(}Psi()HyidJ^{|G5ph3j*9qNDGd1rRHOu&Ag;+mcz3><`p-ZEx9T$t9`@_2+> zR@Ihl!L!excoG$BO@4FY0=zkSCUNK6Hlduk2>OOj9~xo^iXjT^vgm76P_&l6WTHkI zrJHhqjug>Iq&_&BFOp?z45YoY>e6?{q0R3L+%mg=YQoym?nwPFV)khrpilPMw7zvj zn1q+{%L;1{_af6Nls`Cv>&>0267$CMGZq;JeTlXi>v#7U$IDdlD>js0IJj;7Q1Y+s z|2UoLRtn#Zg)OY$`WV%#1J8YGSzq3K_D$v?br|h0i03q(pjqwK|6&a}FeD4IQKdEH zYH`^#l;aw{mXx;Ep_1UBDEM*u<1m%2RbNNlNt)n#z6i8zOq8iiM{Xb0pP0SYAxEGu z?`S=G1?JAa??+wSV!!OT{%nT}9hCVx^{m!=qoGOFEA`t3%8^&w+0q|I0igKa^3A>C zbS}cZAB^DFTJ|2&c<>7ILkxvG+io=0tIrB*O7kXL3y^{@ya#^Z$#@-q%B{&6v=68Q0ZFZdl^&}s?j z0L~vF7$l8E-3}%70gR(HGk^#XTXt+Bk3~n#mK&7?s9WZ>!CEk1G=peGgXouKQSBL4 zR&M@c(@Hu4+3q+9PRp(Zjq-tc8U!}1AI6rKljR}_4m^=12ji$#va}lOa)d3a25oKA zEehzhO%vtfBiRxH$(&rm8iU&j(L^Og36e^X?Z);o#%jxQ(x~)Gr@?aTA)+!wZ!}1i zBSkGJN5<)<0FxAJFih(#c$P@4PcEaDm#z_QjXJ^JPhU9Qj_6HP?A;XK^8q`$$mi0k z^WhB5L0;zFc~^ zS8+5*+or2kl;q9UUD`mc@T%B-`BwkhjVQt z7pYIZRN+%LolE(;rYC&j;nSQyz1!}w+Mi!uZW!d^s~kU1UsE#`w07INHr<`xvCEb| z;Z<)izWY9Yf9)0i`55cv>z}k(-7f$4vtc-FL)nV}R_P7lLF48>`iaewb&1Ctt1b;I z4?TKB&9rg6Kesh5#p+AE@YW?G@z>qm7RCB@S5$rGm=bngQF1vUN!Ne)iuBL0GEbbsIZRdGfg!kar~ z`Yz@|C1IJ~Ur^I;l;!j(6APC$6Q5_gun=Wk_a&RlRWD}Di3{sG?`<@Av33sjIxDv% zGFY>PdUkC0+Na)K*QRY!Y*TEO4G zip;~j>WBMi@wpDwOWZ9hBwq@^i`JIf9?X-u}*KFCE2gHIqg>Hk7T0nO`$sr*o)}@3p$= z_>RU}Q_V`AEv19fX#Ync6!n;>zud+|M8Ja+;pndn2AqhigE;jG?4K?w$y4V!{9)C>J ze!J5#PIb(Pp==Ry-_P-Q=ap<79>+Hj@b zC`0kPJgFsO$^Ogsc-25xXw8?Y%bl`{#H`X!I5l6^5-H353wq8$^bNPwY>%O2 z%*Y}p-Q&kr#wqX$rrKcB!cNdj#g!x zDsMtc8I$U`KTW=8JxKRB?U4v-bW(3irK6Ks+j%+f?nAVH!vooyn1VaDDRWTot3O)9 zdUoY~-`jjG`t71=&6fAa!YfvQ9)0hh60D0qS8&4b#oh4}38@}FCvT-{rEE*My6ftb zj$d29q~od0%Q3gk)dr?MafsT;AuH}YRcsE24`jwuUTgIU(s9%eqW;bkUd?A~4VE31 zWna*{N-o`W#nqp5u7K7oucA7lSuLr)^1L`J0*H+0(~5-rUnHGnSd;zR$4LpL87Lv$ zAt)swIoQZCHX0PE(G3CyAUUMFVf5%RYJdR(Qc5F8cPk-ba6gy-=MCEqc)@Y(+OG5W zjnDZ!S%zxvZIKKK6I<~CT00fc!4-ER$7~XfJZ1{Dm;10^;%atL8&3$G2ko2RT2**a zoM-AMn(nfoV$O6FTFV@+XP8$UH|1f+EAjqFBZX}b!l@g_Ju#(wrojJ~vwN5EkM@+e z+fLngt7>IW$t={SMcy$N($BRM`}DVt?a&sZ*W$S4(3^?{Nlg0-$X@5p{*x6wSC zIUFle^nvfPLOaVk>zAa_}*51 zJdu>wxF0YCMJy_vTa{ke9W|x)Sv;AX!*o$;E*h{fq)GtenRpXSQ zI@7~})X-|$1Bjc`29f5lMT@&740f~S{Hx`H_po4cXaGDAt<=HHAEciEdv%g5NpMY) znF<8W!9L)*_!*`t{3*Z;r@-%Gp}&q&Q4DjGvLQV5{JHAbM-d9BZKYX_~+(RfzPkiQzQe7?mtX6w=EqhK~ait8BQ?~)TK;X z%tft)1yC*Q8aIi@wK{klc$0M}Bz2Q5!{DeEP!@XY#ZAi0+*G50cU!Mn@2p*e*4LFD z&-440ktHN8 z+i2j^6BJFMci+lU=D6X$rZ33JZX z{qK7druywKQ)k|)CJ-1Fndk2J6Qo2mC{euM+f72<%G$lC9&~jI<m52$fDYExmjIYtHrQ&7 zt+eXYf^YS!vEvIt<-k_W*~$ex@6<$f9tHKQmXC2u&+%pt9?aE3t)A5fDi^j+&*RC) z+j0iaEdyKLX&2zGe>^LXuq7>G%3m&JJ&A7x9Y#F4sxCiyzGW^DzR=*d9^{OMKvu8g zcW}6eR>R^RDc$)JzPRqf)zi5*iWEUEO&1~+6-NAXKNnFB{cTncUgVC1v1+j=e?Ayr z_T5lP)i{|YnWdWxj508v#V*XAa=N%g2lIGKLoA=8H(H-g8Zy^1CA)(HNBj1Co=rx{ z^MtRrkJT4GLfqloE8|!u_>1+n@fYGvt8jFFFZ%bboYv0E%ee17jOoWUeR6pBn5%Go zt1~-ahgAyUwfX8uN#hN^nk*i&D8@r7n68%`pqrv|UqVqwlqaH~d}=C`=dsUKSGMjOWk#&Z7SLS zYR`25d&T`HD=|%jwechO%KKMgFLl@Y^(3fxJi>q@M>RQf50%o2Sa`wtaM$F>HuD&Tr-N(STjgWh>^`K zb!O4jR^UgO&YgE`9p6NwlT6!D)Dj37lTw*H7%HVR$ele01Y0A&4#*t|MuYIxI3c&g+u1Tjq2CXVsdpy zqSSK891w$oV(C#-6ZB!+yb%ol&QlD=HKu$HpcCd^-6m25{f16-1q@x=nl6TP%Lu?m zc$iQVv72&33{!?exgqdPm6YLSEd~vT{$;c_9UL2I%J)b-JLWG$+`!=#%j(E7KbM+r z`9f$+o3qL?KPR)KR^g;w+iJqmPi|4JLlcS*iH{s0O9=Ju`hj6q@gq zl^h~Vqw-kfpor(7OFus}_TBS{Wi^sfA?DAo`Z9$6ej+ry8n#MS(Ty*UD&iP#oBr^8 zcMjh5ZOiAU=w0FN$1bHtC91Jc296zdPUNayv9H$tN0jt3tbuAxzPo~-!YMVr5+8)O zR_T0}cqO`c_(=GYJNPH}J?@8zBcj&L1-XR@Dtg_OwBy+;!Koc48-p1_O7B_6B%dps zcDz3svtpZAyr6DTd9cYiM%|~BeO~Zlv-82K^_#E`M^1sW$p{+wULT_4w%~gkCltk2 z6B3cDoLGgLAP8~)>Pd5NC*yeYA5rT#V$rg0jXQ3r__?Aex}YY_vz%5<(Y+aIuT*iU zlN!(IR1N)w!c8F%d4#yBicxCb9i183pr_N}-s|4?X)9(uc{NFvB>4CEa8*aTO^Zl> z?P2%u)+#dJS%e!jK|FB?eZc2`R-;rVrvh?_6&(pZR%bJYDY@qv@qiX7Ld|p<97jf6 zi0Y%2^T(15Yq;p=&&taDzMN@kMUUfS>(K6g=wZFyFgD@#2zrX;Ikh893Q^j)`g%T0 zRLg}x$sF5EZ*1!DHkasky7b>^@r0;=IhRZ`@&=O8-@`m|M&Jgb?|;d$G8=53>9ytx|YqM29|K-$O~G5fnsm9YVgZWz>RUKq-JHcbr^e5;)karKf85kws9G(1wGU zc__nKarD$Qx8Ki|>VcPPVD~;M&|e z{AVUQ*Roc$pzF9upyy?3yX4vIYLS5%`Ng`@w1ZkT!_iL4Shd2~xMR8GoL3)+UMaPa zeHpVHeT2fc&b+sb_^d-3R2~3lTl8dpT>mY&TJDNo&5u>7MWX4hyKi85>{q##_bbv@ z{_}PAf+dh(pV2+t4GMZlDPez5%(cM5-x_z5Uv{cYRDvi?^M${0mPUwWvf|PZ?K0d5 zDA~;0`zJYw4yHiiP7^KKovQr7yl2|`c_n}hLTSK*<5t(87f>*0pROX+aa1@9mXuLt z28Uf}WCSc~9Yo+#>XO&7H(#E?%Q}S+kyI2~d;#hhn>td&5IF%_is2T9v_JOJvb+J` ziDV{LpX2AHjRkIaLJ+lN6DW)`WgMsuct*O%q9EKrqLQ9JO)doq6tAH~fP7OA$TzGR z&VWOEi)(J4usV6?>~P(kg)r{e&qm((uh)$THmPF*TULcbjWRg!u@Tgs#uy+5Oj!}e z2*}T6!t)Yj9}G;XpA=`qsR0CtCNT7{gqQml%!`l(h%E9$sQKrqET3Qxr6PJZEMv>Y zbbA7eGcdI`#xTt3H$EUPc4~u*n^hJ;T6!&zJl$k}1dt8_i>XUG#HYjmr2|Tgfgct0 zKzf))CJjcFFh)%;RlqGs4=|(DrruNYsEjEQt4!UsVA3mlX0HP`6T3Grj-v8Zy7lFI zBP{TJV+0Wkgp_ccqii4RWWFukd|?l|tnHiQ$WL`pmR-CVXHZ|*CKUf<9p%WVbYX!# z?b4B5&=f0-H*9m4&pXK$hs%VCawgZ@#0Yv)g7{ERYM51*LbrHSFX z7v1AlGdjN+Tw1nTPipXoMp7lr(!OUf-Sz$ZSI_F_yaaAUhbhXy$GK<BxFQF@6C*YoGN#QjYb0RR*_=Skd$bCr-(o94Na$90nX+o~xld!ql9knuq=)y& z?UXN1-sS#^GHKc#kg$8x9_0GnVdJf$^P5?^l^vWacabWxEBLs#$>`j14xJoc1QdLKBTjb$ zNh5^_fYbb=&X6KHbi;WdK+>8!3{L$#?gZ$DUYTsdOd~+~Rh#POO}H8%RxauM4yji4 zg#?{Zm$F!J@W`^GJFA_Z{k3(`R@ad!tu}vtTK~@C+&9pfG3HCbYYK*hrj1h;{8Ds! zQ+3+5bzeokhz-X=;*B%g*Rj9vi3Kl5uZoApE*{erA-5gE`owa${TjA-m3WJ}ur1tGs^+%FUa&Dfi zzZWfoZuZHk0V0t0Mbn4zE_`B%tEqTs1myxhD;;T)N|{dfl3iP@yv?U&j`292XQ4(g z>}>;ybn89!`xZF_qsgjy=~~c zfx;Wre*;!LM_a+P^uCm7H zuot(w_WY$=Cta@_b>l%*;NA~$QJZ6KgUg80*d!m6=UV1-AgD{hdOnS9_-1-QZ@Q0{ zvE)cz9t7)QJmyosjZ0OtJaFX2j83)QI5+pO!q0)_J(DfpOyv<$pw(ya7Ru-9Aw|wF zM}wV!TEg##=Wc+EeByuR?2t|n&@-gKxr$&pD^l%9HR!_({?)zy)r3i01Oe|Ec+DFD zq*TGAH*$^a+&;gX&(X}EQNLYkIcFR98oBc9%}WZ#PtMNi7IJ%?^X`)Yt8L>o%7tUw zo!7D~9dbT|)-Esl^<_s3cG+s3==&4NFgJiiFeTxNnxtR0d9(5{Cq)mmpI zb4E&ouI{<_D6>8V|04Gqe#{Fa`Cf$!h1@+Na z|L~!iQIG3GHOgQq+?`)$BO>`O`6}CHn4SKa@J0D_<@~J`#g>4Kd*i(qnT^IHahn!8 zw9cVNwVq@u7MC?wY2-{pHBRCNyXppwjhxBWI=K(4u7Wh(*x8lf+4f*m@c@a0<)Q`^ z4NK4;hcin{5FPVhhFbIHs1~1XdCcLK+*X%jd68|`Iv83E$GQbX5@YCiFw|lkw zJ%?6!)1VaytYZ*TTmbV|8E;3XDxx6;BrfK40qWB|&-{p}yZ(w{YpA9%h4vlQEK&tD zG-JdKN?g8a(Iun-8RigqUD{JPvDO|26F$veQmF-Q@+c;L*y)L6zj-(%HmOoFePpx5t7)lD_bzs%mCc9R& zVHt>+obxwzua}-R*{Y+mr<@Itx6cAh-z|}OZJ8;3tKE$&Vr*ImGm_d=>L940+4M{~M z52mwezL(YerfXT|^Wt_gqH?!2tZ=N;DsryRUQMJ9~@%srG8sMa*poNG8m@9ilDoJm# z+BoGx2CPkFA2KbbHWtaP<0$<1kPu*O5)VUyv&K-$$%kj-ETOI`bLv)I31!q=#gqPF zjS|e~kn|}du;yNZb{_?TlSr*i4)BK)s}_ojHB!oVB6sPN0iB5lu)KIUktDVd;eV4W ze=Z~(cw=PJ5R_0#k`x1SwR9kSjtwtj{FyKH%K7PuJCJEx#Wa2W-=K8#l!jzpV<5iK z3K)~%WkS$MM>a@AMG6ZN>A;s^F@)AK8^UZ&H15>+;2EG~dl{Ir6k|LqcSZ$uLypuY zxD7*^VLf=tE3qY@ggE6ZP=6M{S77`(CFG{{=3PgNfMO81wdj6L4ok$6zn^HhKBuu6 zz&vY2q%h%or${8!lv8UqO^?v(NZ}4kHDewmLL-iPmfV6l7OjgY5ak8BmC4kUC#4zY zBzCc)n?}HYRCYU}5OE_TNEC^szJg=TPUf|xU>bj=&{{AIH;UuPy_&&}> z88`ZUK8!i~RnzR76P4%?^wA%6WR{T`* z$ai`k);JZkEI211kENk1Y`{ z(8u~pXwW-IrXICxy4(jlxem-qRlAXYsIydY(mg#@prpTkIo6!KKFFlqn;9|5%F>(B z)ytD`5*QWyRr*vgE+M`!aPcb(+Y8-^C1U9|BfdMKC$HUDw9D%+;+acx5@|U<;Qv4@ z&NJIpOG~4&I2zodKU4Vk+v-aYb>r|T&9?F)u1VX+ZT^EdqwrA$b9b3KvQOxqn8}I% zaTz4uOyZwwRo`9_HbXR~NM`xd zzL#$}OSb%m^6k3K2*KtN&sxbAcD;akgNIi5I5j9QQY*e%tAiNG`5hZL-70uuxe%UZWu!VDTC7e+PpK5q&S5`SwM|<@bOYKEU)rrC{&lKBIwvZx zXOm{=O<17!bp4q~Zz|`sf8(>M_NcGcrhF-hbYi*3p3X~nr{A(StX1_^a4|Cbt7(;= z0IE)bZ1?%r<Ey}P|J$DjO& z9HyBokHmmafn|BP2Og8}oLi~6;OsgtQ_p=`Lv#&{m zFXYu1O>{L|Ha#mFEiGcw#JtjygM9Zs#IY#3Bvc0YEYuiWjI&K9{SxE8UU2w@b$UPa zrl@9%v?kDIMMU=}TglqV=4a2uu{!gw4>st*vIW*=uI>=QQa)nueH{KqOEERENgrAg zl-TPf8T>l~FtYppBTBo>@Mt~r7MYjK`Hx6@oj%xdD{Tst`dmc1FXmao5i5*oj4|=4 z`VC&4K^ld_Ib)uSnf!`JcMPPW3&JgIp(^P3B=@VbOH-274V(HIm#Tftnh~KdFuqYn zj__l@nyp@rw0ggVr7*@3T?Kh@QcNtQQ7O_^m7v1RQOI{5<>WMM22?vUil`^V0(Ugq zppK@}(E0ds7Pq~!7p9hIbeg=e2tFRk()i+uO%>$^iVw5aw(i0?>q^aFTUL|gA)!<_ zM9Yb21JX?-X4*PNTAs;c6V6_;#*8w?)LK`?NvTz@6RU(UY0>lW1YsHbTs|9QjwIPM z)^5`8rLIY`&E^%KZoZt_qC5?lCUxPf1>${US~!v5Vr$7){=>g8v!+E=gH)v}ZkLij z3~Z&$ALfv$DB@GmEwt0Hay>2QwDyanqSSBEZnow2a`L}tYMHzy1B`L7=Zb7}0x{e# zj9H84yq-0=kSwW|FjmTc;Pb%UJkQTFZSQ-*qRZ=-6;5Ju27J# zUI~7yqpXnY@gLFFFa=YPjF3U9gdfi($kz*(|Ck(!-MHKp6(3OCLE<=-M4w!~pR*Ar zd7xKt*fGhT)YXu>BkI4+32NXzz@w926IgQi{4wP(v7*IPOL07;_>dAxvi@owvM4gN zED(<=OLZRON2)^vD0hl+_X6H8)%a0Kyp3lj*&sS-Jypt5o8QH5=Cu;BzpcJ|p3RlC zfaVH3!_6y^xc?Gvt5T}ITaCP8CY}=RP!eGZ0R-EI53h$g9wr1@R_=*MD3a&BR$Ao4 zzT>9d|K=ik z6Y>;a2wI_oyVy}zQ87=}_upj``bPs!EPvEWT@}9@J1UqX#p=9Z;tqcrqbGm@FBH2? zyYvztCq~kkx{yn;nf;iZj04c31lPc}^CZls(fQ})fElHXp-&$AuDefVVNIjUqZ*In zk$le=5snvODw#QmNM?9#f(ZXFOtQ;~kpq9@+~2`qKEvIDQEq5ttKe7|IVB~6+=9Ll z>1Y8kwW!Jh^p8@wB6!<`6I!&w3N$?Lu1qthp2BOW=)>?`1RysQ$phoVGOGRJkK`r$ zR|Jn#i$H4-@tgdkZ^HzzD4@6^@$akTe+@7w;M0L&IzZ{T_nlcn@a=1!z3w2|zqYF2 zS=#I`m42*GTEm*29~5|lN6#vmE6Lgwy-~Z7 z=+~9SnG6-FS`Yp5M8e~Bn2*SLzc}aeQH_GCOK|e1H7BQzT1Qe$kL@z3VgoC)T zO@}bmfY-n3`|nY#UZ&fJ*9U!9g?HNb@nu?f2Ger&G~)`n$jIa`mWyrUZ_c%s2F2xw zWDMAv?y!3PqUlO)>4@~}O4s_d^29;hjZKlL+*M?LAu;ffJ2#;c6%Bx9=S5_C$f5K( zBFylzY9)Q%f6QJohE07L5#AKzIz%-)0DICWDn-$jlZ_?InQoj30DR%4N?@*51Q-T9AVwx~nG}xedmoC|QfyN;h>t!gUV%1Nid5$o zP9`Y-ZgEAehQ2p_$=AEG_N@O-|2y1qr%^zGtQglln)5Vzg|;QqlFG&g={^NPGipKg zpY8tw*0Yv%d*`?sat-S9x$GBlanlMzq$oWu!pKhc;9!U7?uM2f zg$CTQo}c$#qI#FJb4Z}A-I{)|&8-9Rl!|!6J^#R+ryGOu!l|s8omJg**qoCJS5z|3*S`u6sb{2G zRahSCs(t5tV%z-sm7jeG*GS#degh7G=Ujsmami4Ro5)L7Q>%vXWvI~8T~ePu*E!58 zP5x_P>lOO~m+*AMvA~onP%O}PpR5Kn<8S`XmDQI<4TM><2RhqdDW+@3AGD=b<%!O^ zSBr^yESeOZgRRH0rOLn2iNfQ1OW}x@_v_fX>*jYdms~piqxVE2%EVDwB2;_mZ1@gl znh!T@Oz|BTXYh?*x7x%B3)Yt9EjN$7%&I!~TX|G7oD>(5G44U_d|aVo5JEp;1!uKco;1)xUTEvwXn%i*l~-aW5z~x|0`!xm+w& z_1;}+B&>d;puPO!ZKf6#PjY{kPNYE=-z$(*r^?+V>X_7|ot`^zH*SFH#=?an!P0BM zJ}PrLML@1lIMd9A*;DZ6v_UOu4i5^it4ni^S4dS+S>M%tuNfU~%Qim7v(QpZY|wy? zu!Y$3NlK0fK27-XaYm~jePpH-ljwdP$nuJO&MzaroT6U{HWtCrpEby5NrCj99ry9` zy)}_{sXitlaJF!NMet4KOva(T1ImwIlJkSLidaBrB;-2_0ndK{~8?!H5D*! zI>4`@3~XlhMN~{j6r0>2-*`3?e@Xh6#pVayESH~4!EPCxOO7+dP>+0`DhLFitTc65 ztkfTuc4uZ?nK0XV=B2Wx=>aXT6&T)Fe+Rz}3fOBr<~8JQRPITxM>wSmT&9;OVmIFU z#{(9tW+~@wiK3Uw6^7Pl8_8hgA zGa2LD&;BAyg-~c|e-Zz_froCBF$g;sVZ?{GpfeJvxs~GajX=Xu@!K>O%jX-4x&A4( zhsCUk!HtH&L3DgMGu6Q~EXc3cU9*|z*XwC`HX!SUP3@&r3Ux?3=Po?1@mnN99 zaFSaxL8#?Xv^(9#O&V4IlF`Bpb5@);uo>g7U$huiL*nN2{PSgwVrx#cSIP`3zS8PQD|HYPoX84qD8qEuR(kdF&6$mi3tpVmk|KIOjhmuALo#Y zmkjN~Osg9EzhNh7{MqHTRCf{`aKB-7SG0drP-_tJl||V${^{;rSCmFvfM~Pv0ierjbew<<2%xhj6C?U}0gl02jU-Qf{(T4PuA@wAfB6H4syln^4TlADM!>Bf`TQ zW*`94I%FwMQFoRV&a#ZEL~%}74`8$~DR9Xx<`v2VjW2>XZdL9}^9lixijDN~Rv~Z0 z+u#4nhA1TMW$nXBZI0{l67!Rf72bKVYS1^*Z6eq)xr-IZ}Lb@D)WL6HHhyi%Xj69-1 z5``!iIw8tmjx8YjG|oU~`MhdVtxjqKDCMFhI0h&DixaD+p_KH%ego!69(p)^Bnhy% zMFR+30$X$9b;l^lc{gbt=+|yb`G}j`P`fsxnGcOx#WkHOa53CHcANJ|Vpn*z4gRi~ z!J$cgS19%%IEwS@b)Cx8B)od%kL4q=gb|VE#?XW7(m_d)o~HIZx;IPEu!^?c`UyWdR&Rb}K8>ZuHKhgV#^16AhFa ziibJ;w00_f9cMu#7BQe`hu@UbwvCOcNmBBqqebS?JJ7;>HGUfVSx^2 zWk3k|+-r-iPB&9!$}5RiTKpcZ-5vv?D~WdP{>t0A8daAV?9c2DscjAZ@TIyvkfSu= z^yTz*=l|~gdc)x01~+nN^=q!5!a5S)#5X2;rdBaS-|;u|Y8;B3R9I_QA}-}rOa1`T zl`2AowSJ{&;pb)kjV&-?Y zqa|maAF|6Ozp>0a0S%ZRhdudj?!2^pP-mTcdg7>+_(KsQnxJgQ2=^@ts#18C^O@goYV`usCu}hg^LR}NYY17Bspy>;v#MCF^h7RO*%zb@rRK4_&x=( zvJ-0uPG*i1uzT_%FB5cQyq7EZ{VOUPXT@38XqS)dJ7zA!zT%y71*|t-IK4UrEupNH z!~a$oZ3$;Urh@Cbc(0RxAK?5|X5KPB>R#Lh=*9t5ee2La<>o=q^*vkFNbI*S%}73+ z0rMJjzNxvt0x)sxV|Ez8ewT6$X(Qy55@gr~r_ou4{TQBR?3smhQmJZ=&t_bmqKKRM zdfNl>B3kS$+q2~cAfqv;I&nS;+k>rS4Y+XN%cV?m_YQKK-B5rmIai z@lWcM@U^Mg2Uv!q%<6)jQVfqk(?Vst-VGrK1a}cXd3UC`none8MO> z|0BXW?6&>l8|Rf%0*%hm?(rLoI(--;XH=Zo*PqbE8x8X7=tU~bk^2{lUr9c`Mdqeg zEy1a=A1{lxvmlD{Y^@sn{iH!wbJQi$ng%7}gG=~QIW+4yDx$>FIsQfZ z=Rs9X=+bpa1O}_hnmYZureFitZrq5s3m>VP2`P5ZVK!O{f08l{D=c3 zrrIub&M?bOzPzAC)gsXP&-V~DRt-zZZuEz2l@~qv2yLSG zX@7gTL27rHAr1G-js+xC8af)s3c4c!b);aBC>?5V?G- zu^)qpreO%G;biBKWdGljsuA&L(+tp>#(1iN39u{!P^D7)#r;o~NG&O$au3sxhy24V z0rNj_uigpM9dgD25kBh3NFFWn|Hl)T0hA*EbCP1fPkZmpJ-hH=bt2dAEO4>&Cr6tBupnn$OYnj#qhcrpl7Hb)1UCbgLKsW zJ(yoI!UE_W3>yoOxkv&<)Tp5>(TuX#a7thU3mMXpATU%{2InniDt8vOuHpfDPk^UG z#-RIt>WW??jb!Qy0_H{(2$C=Wx;+C46Bf)3EsLa`Y+>#pmI^EUbX)&lRA&mRJE6`U zkx>=_0V*M!RUI2Wy%!dwW`>~)%127U%n^ZMz%sU6k{D^j zDHcmRQ);_U5@qS6>ESJ;|NMLW{|;8b{vu#Di3Ct^Jd}8nr2B@V!a^g7jyE-^EKT9~ zF&Q+2X#`n0p*eH>Q$(lXR6LBFx5?+_?ayMd7Nt&3O`TtwY#-2x3B7jCBC_1NYr&_) z@U@{hTnF5Do)`H-k|`(gTdwqX{L4v%tC z!2-<*Je3Jo&u80Y)cg$a@niv7%|=T7e+w8{9lei@rrt_k+yBYRvyZnmKOR~wA%DTa zNWF1fPs+vgW|&kfn9qKEN$1a0o$m3npfCdZG7p6syu$aco_COx1 zTVb4t97*%;d}Y5I);|2Hl*`kV0X^qwlD9^xxDu}eqm56deVpWa0=2lqYictB(^w{P zBj53sUp}0eFCIUiv2=Yk_dKg{#qx)~{l=^NU6JqpcUQh~c~|xC;~dimX~E;X#smcZ zlVSBg<3#ttzdHj{m@ZnFl#*(JPhZEb=3A zRey+(-zY@u!Uey<7ld1M@fM!kM_4|Gg)A_b3|%Zy#w7IFKr9ZZ|5FxwcEz+P z`q=*o4>=~BJeo$YwJnCT4YVl{z3|IYOOSZ-{{Oc*!fTUF01FI&gF!j*KCv3eg{Yw#-1dh{au-jnVg{~W9TmWXYk z$*aE$yPg(01ueR+J0>0ahLj)}N-Uot-@N{VjX_PnqLxp8mBARePyf2s>r7-^NUeyk zgG0=_#!GP#DlF;|_wgvN*yFinRHl`JN*rf>#&|&De$Iz=x5qqFxi-d7t3F%p_U~ub zP-4I8pbesr-@$$9w4TF-hF`UnGyhs{IMM|K`C7RDw6?CuwXO?F$pZFxK$4_Naa;D( z>GgS{??CniwCow?Y!{~Oi`bYxOjFhabb-dlQH>oRV>Qqh=N^3Qr&4=Ip&bOtr>1V^ zq@LnQu)&Z#r~o!h#x+XLL*TQ!B<{3PHp1P^9`~Vshn)I2!SJ+es<-vK9;GP%M9SN9 zOyG3j6M*=KBQii}?Z6G@Q_;wq2<#*jO!ZSuL!=;7aB;kyoQUS-Pmp~ObcMZa9wn@> zoH|sz9esqEBTbwtQ>)XE@j%6<<&zqL)qOFzzSzOi>r@qqDds?kEHcQP9l;lx@&-4p6%Wi#@kX3%f+ zDN`7Sm}6EfiO*X-#Ei|Ug`aybcEoaBNB4dKqEx9$^##(=;R#C^@{3y-TW%dOLdW_& zse^>}PD}xdScQ0y*4Zp3Gb#%FEsaog5M^vUsg)MEBc`8OrJ-94+$c!PJX7t6!XkMK zH)Yax!Z{f=n2FRiNQemqtZ>dJlRktk`86A5JJ{~D-{|C<_ham*RH`<**`Q)b)Zm

    p}<9b%gjHlL8q9pOJHb4vKM$MJCo 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⁡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 z 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�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

    L!qZ_MgwJrcdeil;-|lFOZWR{B6YOt%NZad2 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

      F9lA&VCYv@$C|)nG>Re}iNHR^ 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%0Df0&f7m||q=|nZ@k|8kJxjG#s~%H6`WU*E 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�rs;xAw%G42gF@LoNYxm|v02T?#yV8(*E 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

    `KQeS+2E3`= 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

    XAtXYH+@a*S>NQ2(vT_%JTZ zW*6g+))jh9p40SDAva{Cq0@%_rJyQ6GPlsd8>xKFb{y^rp+k#|TkbNiW(fYX*BC)q z8PHP2d=i-%vi)U;>Q>};Ogz>_h`fmPZdq_)yI}7t=sj86%IZq&U0}0J?FiDCJGampwVUwQsKP%4Uc& z7@dK1L!Q~ib6lwZf~X@AS?KeSWRx_aTWe_lO|Zxx*>S#Li)8DXuowY;LEK)H3|kk+ zEaYm!D?NAWEK_5j`b(}_je!PVW@Bcy7BF+k1^}-4IOH8e@rU#T?BtZadSNp zmF3exZ!*hA9I6#MjdBv#aWZ75e$mvhr*hosb@cT2sqmvw#T!p#aBi|kQh0u==}%d4 zg`Z!P5$JPLbryV_7TZ4c;hB7}5Jd1?19`n4w|C?3^Xk%yx$~l13hUsK&wRi&Sk-yS zwsC7|z4|&fy9M94wqberF;=#kXW0I2Oj6NK#Gq3z`~A1)p_p}l-B#8&W$+9_l01{d zX~ol#{w#?27d~f9{%avG;?h6g2GWB!F?#orAj^lTo-CIbv4l@*;mJ~8{~-h%mhHOo zV=42nd6LmS9L%#5;(U6dg;N6&AKB$$4OdyKb7T&&C*|{IJW&bbwRx3e?^AAg zyr<)5QsFm!a})9|%JAF1qYh}0h&^3c?jV(ghdOQXJ9it??b&)=S#R}|zjd*Gh>Cq6 z{Tl%-;k>5zYaSm)JfBwYe+}C;w$+=>)1}`OAU)nOz~VWF+;EtmO~%}xMGYJ4?at=? zFYV9JCVaAc+b;YC{cTfUxGP^+hQ|9;Do}59)U9J-U&9jzl4P(4l*`i;Fet(My=1_2 zTiyx@nh^0n8ZFXEHa;U5H7c^L8AFm6LG#Gnijc@Yx0|?R;_^kBw=T}nns`B?`svC= z&L&aqcwi8MG-Fg4cVPxqUq0c6HnY9i?>VRCZZRw>T9tcbPP@%ot6qSPw1pENMO)*K zNYXLYd)($lVu=gWn+d%jFIG7L97U#d%zy%TDwf5`1L9aO+JewvMMN-w*b&X}o~&Pg zG_QQsjnl@H(*4$*%&W*&q2)(N#yHjwnFViOBx(GuK?i;*+x)f~t53eIcd#zXd|0q; z?%yt82KDm{Pf?wCXK7tH=|=fNjoEK@X5IK7LYVUlqKZ$hY)7}|jd7Yh6p@GJUZDHC z>xD4uWFLp0V#d-+<)_QbcSPK*YLi+Ia zpF4J$0X+W@teB^6zUCQ40LIQ09sAp_#^yamYX;AJ^_cs(GWS$uvRQLhjX$~*n6bj$ z5S(rKCjgC)!UuZv=QpH2dcPG!v77-p?#PXQaWP(d_X_>(s)bwP@>xu9scgm&6?45D z5o^!bg9;C~aG4vBxqFf(xKKJuYDgFIzbo`f`(9C(w$UafzZk_h#_`%0I5d!t#y3A=nUw6OTEqq~fe2F0ie3G*;Gk(OQS9WeelxW(KDKBtYsd4+wEsY{xdkR!YS2jFZiw`x9Cc=twAZDFua)n<6YE#>))`|?;<>%w5{CSi1U zR~7l`eP+R@uFcaD^OcC_o~zYvfN4%o1d)Y2sPTvB)1-v)eL)k~q>r=dAuL+FnghjY z%3!LGZNF-6o5L0YoqWxPR!}W`xB^_KTmK2oelS3It@#Mxn$~kvZ$=fb#Kt36%RKJT z=-SBtAvDkEKgFOdCBB3sFMN5kGzo0~A5K%pc#jPL-~3GfX+X0g{~y9Cx8DI^=wX~( z94U*D!iMa(LWFNdJy}A)gTpXxc(JbY6HEmKROCxCvsNRu^Lt{*JlbfLGXKK4a0ob$ zogw>AEBICbX#Su67i^sl@-Hf#7@zno7DLR&eTm-Qzeqr!moGg)e9e^ag}Z{EFQiLb zFa#_%Ux#6cwcl&zlfu^aIwgzWUcvTMq|^3`j`GXdAMVtcrN+DV%WmdAe-dH2P>{%G4Dm3B#!BMSxEi`zZ@3N=aAzC1GN4U3rE`d;*#n{ zi8(DTdHvXP%~LASt(sii*ewtc;IGLo+XM>XXX;k(l>pej)|1l6AAr{XpnFH}2PvF0 zARZs|6SQG2LkB4J+eIhhd#qWqk37spFYmJ-!V6-ow_jyF@&0+C)VpwFs0Bpwwa)w8 zlFeD5yao8{THCxU&0dK4b2H5?Ma#v^xiST$-6TmFwou6O;QKx4eA?RSPNpAtiQv+R z>s6Fg@P7y=g}`pwuODz67tLYQmU7cD%yzZ)^Hh;(v9?+$-jXtGIJ%LlpTr5JPWW^y zh9D>5_ot4w{xRE(zn5C#+)Q6T*3-N1)o+j!V!gq!A0UF2k>&Q9vul==zx0HNWqVa% z$!dnf<1q~jZQn;i@QUr;4Gt`}TPDC_7j7C(U8IuV=T$zG*Z`=U=XaST1Fb~bc_B-c z-C-(S^Uh7fdoSVS1a?Iti#X{l<<8Cbq0Q1qO0=zBRjP|kSKKtx5*v$OG`-)Au)B)# z|ClouYV&xJe;M^@h6t4NH5Nlhc}nUPixTyx!ZQi({dfNXL!=T*LKx*Oq)q;^4{T9kf4ABI zRNnwVj(z_>2zw<5af1u}!AlgZ3j^N=b?K zlPy!uG5#kgU-i5KI>kQ%&EjMLu%0d%7tnb{hvFGpfQb5=N;x0}uR5y}^pQ-Z7*LUE z1(I}4%Hom#dyp-xl!|+^Qy`Iu3RefX^<-ORv0y9U;VmE=M-4$g_A|5|LMa8{E83noiufY6c6QfQG(tj_%SxO{R!2tT)yO7L*o^nbquKzDf|0hHP z@%Qcjlw?|@%0%!XfYK)e0Q9n!Qs13arvLj^PKZL=T~2RH21@o&e%dOR?(I3Yx+`wP zf<2Zvvm}3TnPy@4#q;rk@GnfGx)^lz2n6=`@?sZGNZ0fQtFSr!=m^>DB2TuB^Wu`* zKrlJT>uVonX%I?l_gdYf{MO@}g?XLhZW=mInGq&f_|_0wL>|$$&!AA$-y!t|?T-;h zNfd)ph4uuDH4t#1$E~waNwrki0m~ca_9Z2 zdmyY@;vS{JmuJjrL1kJ{YWeA+5$xFFzC43+5rkRa05MtEAD)q_( zqHQn);g@$~P*l+Q3h?!8c|85Gc5-oToo^eMTrPZ@+5+nAB9ewx4{bp5)RK_brfNMd zznp&$U@4_8ux%)_H7fo#6LZ>W*-PTKESh-^W;8)B>O-(^_;8ogC??3e&^A%GQ_(An z%S-4yUBXEzWXqM|y4F5hh3czEb<;EFhL(D8TO}b>!qTg+YF1CYKDSi3*E=zG{#qrKOA@LQRjXN3II31m9i=qH?;pbZa&EDPCPtO6_ewJAxLSEn@!3rbS7JH!_YL{) zpMM4WXmzxT}Azjp7*X_PN;{Jd_GBZ zS@_q$);we8w^VEPg3Qq>+TO>Zg0~FSg!%{}RuuFT(UB6o;@Chw^IKZ5+}wLOKe=lB zVtEG7fW##zdNF#>H9j&hI+LC=IHctq%2T9b89%{sU zoBo;d6>t!uT~WX&cZ4PQ$H{|`K6?SLW)5ikY0#zi==WgHIqz>zl~G}BKSbGnmmps= zNWJOEk1R{HyRE5>6I#^j3>?G}DrOxx)n*H33qQk?Yyeug?GANlZ)@K3JIqs!7(zd3 zdcoM1Nh^|KA(B#4M@ zIS~@t>Rd)KS`FB8e~ngP?ct+hSSR-~`h#b9m88QX2j8R<1IO8Q!mX$- zxoxeYOPoQw+sHU`b_u0@FD=rb1-YpfNRg_#fe+(a+oOr(yJOEqirrjSD}6(VA~(;q zXwkn4j4ybk%V6OQ-z7w475)L-q{OW0GNVQ6pg-jGoand}Z#Xl_VTXloCT3|+PE4OU zf2I7WlM3(LoB*u>l&bh?v*ekr;K0}Rd1=R{L)0-?0pveaebKG)$yWGt1u1M|w9~C~ z)c3(=!V5jr){yNkplkqXB}#E}N}->;Fo07-u%kH}yA0i*zHZQhAW>t7Bg`|x)b9Oo z&?#jy^zRZ1;`ynl!*hD~H`u8*O2+hMajDz+3kNrrYr;pnOW(?z^n`L3Q^GW{zl(!A z)$Wz4M5zhQEpuO8irho_Iy7B&H!!KjMg1=S&=z^`p8rw2PL34fGQa&8l~1+iJx!6#2FAFt+iVma}NFje1fa*eQbO17OXO7~^$^@?7+ zkwKTfByTkl8u6)P(r1t14z}&)FFpf~JK?fJ9!bgEykg(V5rQVnM5g)7E08 z0PPMBO{?vkUf%(0dSCCltJ@bWecWS~;#^nwQocS%#;oe8u@CV|Y(ii@(4OI(8}E88 zw_O>YS4P;CmcKm2SO9+|$ku=!)}caWY4*@K??@}LpR(+0%H%Qe?R+5y9M+L+#gFK< z8ym?`{`VYR_V@vg?wGxNxSpfOu1;Zum(-9$%%^AS%Uqp6|EE1u5s$rQg&erf^XPb9 zW9-~wJ%klS+?m{zme1I#D%U-53WRz$m!Hh5-DeG&j2Wt(gPQ4b#Z@KgPo3@QGOm*@ zekzz$nwtu8?Yk;fOBFlF^8vz-_jAsV|P7@2VYA zJK|5opEP|O6*NZY-P z-)ou=-GxMe`%V^6=ztsfBfLPia~YI4bsUNH3&l^ckqRY}QkGP@Rw%?=MA*#0+fnm? zFI+>%enm7<$@VU{nd?$Ev4>XvNhX){L@MhFgh?;FVolH<3)Q7o%2cEzsu+fGt(7Go@XF^K^E(&67FU z>lJ5(fq6`;rG2dPf%l}i)@FH>C0e#LhM48&-9E7b7vqg@gAqp&y8O)SGUb!_&9{lw z5p|N}_aC$7=k-5*RN6g@yCFfe)LWbqC-jWXqus3+OX8a$GPocZ96Y{OCNC<;bM~v1 zJ^jOwmxouU+vWLtQ8hfOc&Ulz(&GA@j&my96ZyC$d8qd@{H=7&J(aUxDd8$i3~#=-5y`QdJ~^M`oc$+=vpQ-Wfy)yeoE}5j;pOpxpYksQ20(*Q#FL9MTcu?=iTTMh((xh8IrQBHaY` z%ysWvP3UZmxZ}*N4=Cp6Lh}wvw)~gRwYeFRyJ>jj%$}~}aFTLkFoQ3+Ibn=ty!=%7 zUIb3FS`j9P<_|})tQ(QNb@+?~BsUeu)W;I1E#hE4O|_+jZzkr)6bj!j8=aE=Lm zSfjC4*HS`>glw%z=y&L#(JPr^^vZd|wgVJ-LT|^L=cQ>v;;>|)J-ySi$E3fxp{kR7 zAq*8&0T%~cm>4mfe6x{~v3DeX+Zc|QB)RHVWy(e#+7?I$j`*Z}Cyk-5a?3UyyPAdorVtY-3To zke1|?_0$MrPm8d)@xv<1^KS_s0?(nx9PE|)4$F&At1iliN-Rzprf1z}KYw&LB9vA< zoE1g$ckG-{a$8Zp=(f_`m=3Xn)%+awPk;Dg37KG@F}vo>)XBoEmX9&rCoGS%$5KBi z_K&t2Lnm0d^%t45&H8$(jA{%?f1uvF;vJ@XTW=#{+R8@vDzRNn<5-Q4sv|YW zN3w?{;maZ-ns{x#wc6Lsbg9$1Db_9#M~3|P*(&pUrJ2umFzXPCwk9UX%4U0wvK=_O z$^n?4O(_j<-NG3=Z`iK#BG#GD|CfnY%*^c~zpjxod>R_1T^Lymv z2QSGLpu2&DDb)_587^Um@6t*>9~Uj`S>qo_(Hy^irpWZ+N%W0>AfB?PDmL)u;seAv zl@R2x`t>S1=hZ)7X~AwN7PBUNLb~e3SH%}n!xMZ3>=TJQNT^l0TqR}OG53khZpoJ4 zcD+9`5Nn}~D6w5(sD&Of(cns48V)z>q#x9%{<>HkzVkFW zegFY4tuwR#{Uoj8?+EOzLb{DT6#o!hy0zaPl9_l|i^D;K<>81UP3Q6@2d`x#jxn@# zvs$V#!BM4U)d%4LyDDn(TrZS`xKTp~Y}9Gm4ueq`eNIGgzAcm4cj!i-BEi=}37Z5e zC;JI;!iG*&H_!wRXg0d{mszhS5Bc}=6BoP7w)nnRZgNJ{d|rxrX!Jw9Q>A*4=i<+E zG2f`^bY+X|*0SWV-!DaD;1k1BZa1#K_nz%$NVgj-wENTNd9i8_L{v@e~t#WcMQcNvgV4;N=PZ^zcbD{t=*Vk(m}&??|;NqORe zTCts}6#Z=>%J+LzNe&Js@(ZYXUippUZq~F?j=d{FqJ0WV>yiH6P1+JZyEB4I7F-#% znmad!<>;uww&EyDM@qt6kK4K%Q1G)%wZC!Z+)_8NBfAsynujXL9fS_pC`&aN$D=Cn>^tzY(}S&-bR+)bdobWHpjH?Rov!G_xe zQw0W!@c{}CN_gxi9=UgJ;Gfl*Z72)MpDmUvO&8N0oWS7k-H(IVlOHE}$h*EZ9?MrN z46Y(`;B;%N{Cy=%Z9$vbj7x6-MeT{kCI@7}c)i z`0bN2$?_H>LFS1(d7AAY1}^h&F#M$XRLM>LW3TIRZ?R(VdsR;h^5j`lm{&_7z~_D4 z=x3Wz$mG0f{L5csMf;Y9Ear2rZHc4g@ua`>?Ll;Kw5{ASGm3?XwsMqGv#!tHfA2h~vTRewU#c ze2@#2THgO68a*i9Md8vsO0qg$6CO)2XfMHcD{!zBDG-wY1|^lap#TB>o5mx-l`qC(8K+HdcV5-=a zD*V!vTh0=od4~$DC6P&baH~uAqZr2K8fUNFo$VAfTpSkdOL0RUw^lCuy%Vd%RSx^4 z>tRrn7*3uUL+Oo?liQcIS6s#)(}Tc~Tekbe`1_anlw=lxjmc00zVe>TaiQn+s2*6Y z6zu*w+bj^P$olYC2-O4sP#DPnM{7&C0cRG0!o69J!=q_h{bD<9tSXGdvemcRBcOI` z^O(2NywJ^t(8AD~cF!ohGW|EAlDS@4x z&}w)Kfob$p2i;q{P2*~he+XL*K;TVAV!O*q_c2LHX=5Ht9-`3wbFPcCD3sL=v}hVq zj}fY9+;zUDjEVOM#fN2k@`4JCrY=}CNY-qsxGluyPigh$*P?UGJ=ajYehy5r8aBj0 z?m~RGKfu#8&iOi*<&mg^E+q5@J`4hY|yU}I}5lV~Y!PnIfZRuya8W*x0gRF!apWUpC zZdQ9ue3BJq+`K%Ez43uo-TS>pLO@EQV;kS+0?fm#1?n$V*Z8=%@ldQA9O3mR_nz=*0-8~cYyv6(}O-e-VJPQw+lZNxMqe(fW z-ty+VJ$MWwB<~fIhIqQ%iD(ca%xdw?vbZ9-j&V@rddW`cP?(~+;iPASh)K4=p5JTd zCwYACmQVY~I}R~RAg8hz$+kb#)B$Y<^WXOngxrd^;U!r9Yi*n9RN4bP{(`;RyB$p% z9mo<|u(mwZdwLEiuyJmz8ts&1)MidF@>7?|X;v+sc>f`om_YUEuw{0elSI9`vKv>?v$9{F3<_lFSG0SUrU*(qm0yT$37&(+6>Yre+@h$!0F5#|!SW z>|-sAi1qnOEFzZ~{GOB`%tEll$|A$e(p-~Gpm)X3zl1<*amY*JR=UO}G{Gfm+nZ`s zv<*&A%Q~2v{UCJp&1u_jCY@0!DSx>#vqe!8+@-;+Dc(lP-xCD{wIs^SA{#i|3MHcA zQkAykCBBO!Nws`4d?zL{4wI%!>xcJbp@Jw>#<_EU!O6`bf9UO4W27U9r}d%}oDOP+ zn0j==YL4@L9b6emEcQLKUIWHY^ZAu<1;(?FGQ#i82xV^B+xGKJ`$uxlHC2h#wcilS z?HA4EaVKW<98i`0<-HJF5G4KLgn)^vw>!HQKf-ex0~K_hTn!)ynwIA8;nrMs?#Nza zgyv7uhUaP50D((uCiFne0AM{FpRc?T(YzEy__v@^SYz(H(25ESnb-*VI9Bwh*mqq18}JL>SG>p$751u63^mamKIRGgwb$Q zUO(MhQb6oJ`Mfeitt73N+xE}|wBwVi1-!FohMzA9Z{y8$M9n58xTeMUF=XM!X|lOM zN;4Y$4mq7lIuB+7xqHfflMg31NP_3ghaA2oE|1jvcMA2_p$ zG3~Qq#dBZmCB8tEt%cm$eLZaoYkzw6s&Z(RYMl473TX{Do#y&cRum8K%89T`XH`;L9A{Rz3`(BtckXe$Gv}phtaVqB^m$vV#-^`@AZv zV@b7ggUU4W>|nJQ8u4JRGbIwqZvG?#IVjuy0riC;0?O-kKWkn-83t8`I{yCI7M~xlkA>`!Z{@4?w=`{N6_QTW(zd5?(Cn zW0EyNqH0u{&?wXDX<&)n!A z>Uh4ma&c_&su>&SW81!bIXkSCnqR?kcujLqtZqBf=xl*?B7La_miSPU*fBm811)Lt zvYF+3+T5u+>Tm2*Tg^vW8!!BaAZ+HA;D22Bj=zT$6#MiEhL;yyzJBay;4_ir;f_gZ zd=m=f#v2KjC28&%dfnnD-IZ8RR3DfYL0j#9>0F133Vv@Hrv~Q~lwk{om&GH|8565i z$fy}!14{C}qK&hhjCg)jt;{E4FV8W5M%-UcCXhxeRvk5?k^secNd$nA7Cou8wq{A* zSVcG|^U#vm=vtp^%EnuF!Wz0pYS`c7MF%>Gam>p$rm>QEY?D9nOmt)=C>@E)L~j%G zjq^1^05|)K@ynGl5QbjT9CPKmM?Sqq^yqM5Z!<)%;a*ev1PnjQEFnvd*#2k0`X<#d zS0BC3{~`Pdc_M1iHVl=Pr(z&cOL>~cJa;=tYVYc_`YkVLH^dJdeM~($kII$vYk>M2 z!LbzS34uJ)v1aDr3as`(e;$j!+!=}&P^>yZw#C=mdt3^0LC;aHk9rO8JK{o$ylMNt-V7`S=$cW@MNo zz*%v_Idz2wj05JUfDu|1Z;#8u5ee`^dHP>fn9Z(^SF#X{RW_FZt+QIJyCBj8Oiq%B~G zh|9a%M4WVUV6Wcl^W8jCvG9K^+Jrp)(!EFpdbK9~FKqn1I)`PSB1FaRZ-Dd^yXhH*A{PrQQGfFvX=>J8FPme=(`XO>>(tUd{jQ zS<7Qp|1g(HI%;AJo_wXr&9|W6ONV8|+WWxw7*AtOYpD(Qg^$Ec(<#MF^d^FPyd_eX zd_VT-8!2w!PFb7^y}W=vGFyJW5Oks;%hJ+UTyWvV(+3Rzn3<7el%03fugZi&g{hzq zICIci(RS|2CDv3g03iv34``)LCR#xArCo~Oz@3~#kffvwXo3&|3zr$<<-$S$!I%u_ zMK1{m%+Fs-kwOZSp&5Ahp9h=*(4wVtJ~}Bdb@BF`AC*d$sF+C@KMZV|1HZsAP#hTZ z)4w!5fluWy(K%Fv7+&Q4r1Q$KG9w*^s~8g=k)f~Ej?-ho;Kv-QIK}PO5|nof+`UdW zBwoANlzgnL3qc$zjVbOda;>SDkZ$`b_R^H8(zzpLQpPY_s((p-AjsK!EB8p(WdHb8 zw6yaa5E5y#pOoXSNuQa0VjgLn;$ZT)ZzreymZ{U_A60xM_)|{Jk6|wc@jMV~P|uev zdk&6*OZVq|UtO#spgDR+qh$zm4<*QXZhODV8h`9R351&;Eq#>%Hcz|Nm*-N$vZ6<; z)B^H|1su#1h*mD?nfMGy`UU8)2U)IeOYX+{-QFu~vVrdUyyJZ~K6IV%W6=0&@yBLo z3E!C9QC!a7Gw&Ie6XklIPdJpOC$jpUNFOL(1-2h&*Sg;)d(KG^znI`*!$85xWAFIOl-SfzV2z~P~&1M)tAE?-P*Y!_i>Ju7rO>-!}itRZ7c78 z?I`4Bd=N{?)LG*$TENq4j1%2efdz?J3210L-26jGb~ z|7KRI1B_9r@3wo%M6H29eTFa;C^k>9BS)pcf1Zl}>=ge;=&uxv zqXmisq*}Ph7n3P#wZAL@sr!+kWJaa`>>vMI2zVm!zkog9xA^Y`gc5-3PrE$;Py?K{ zJ}6IH9t&`BQVfdN#hqA_6Y1S*V1;9Wrv!hyf^p=I#ELP=C19P8XgmpeA#DuC8Mo}; z(V({)h%>0^R+}cHMO|xtq$-{<%9|rdJ*HQw=L>Tx{p^>tzW7~5px0I1IR!c0}-fsS*fC{bbKYSMkWvcz2`?v zb^Er!|EaSDsi&qj(wx(p$QW<*@{i@&yO%Ll0yn2@IwCzr{&(lU#grA41Hvxri7Ku_ za^y^LYY%x_Q075tEx61=i_A&dEeX{5B}vgX&%q{COV0ab5gMyza({lTONlVUnU*QBtWd9YYEg_az3q$X{ppt_)jd{_enwHgR0e zFxcG-%p&O5`rO~nrqETU?L2)hR2olOTnwo*_iDlf;c8{U4^-QzqIU}v@7oxH%LDS%^Rd<&g$i?Mb zGHqciVdA(BtQ0cV_|RgX>BRX=o<(gQ5aD*#^j_K@5-8YEN z$U-L~KJRHdo12c=cJXP~&s#eN3puFtgOU?LK;pb@s&lpwlby6_;E@@*+EU-wwUF{O zpCl+>SYCeD;cIJ6-cjRn;i%v=?TyrZ$S^>e7XandUaFW(KY%(#*|9!ivE1jJZ~NFRp!%A=?@v@DDc7lU`8zXMKFx_Ros+0V_KCjJt(@{}Ux^aJynI0mY zPXFwmKocoMPx5mlMGPuma_6LJH8?mdWOF@(nGwykT-5A9> zLVPzMHeW%-wc6Bb zDJPF=6aHioKxeZ)LFDKFu;)4i9HwK;y96SQpMRav6&gnr_*B(QR2ad zeYNno?-kZK-^_jRwkBC(GAbxCK61A$wEXPuphvvr6tWNbdVXU=lZV~D-P}AoG{>8# zYR;A*xS%uWk2PZYluUJ*(!NseO0N}6B4_}P_!wPhX&o`YK_2ghkJSez#l zFKguWH*4oHI>Ubm93bed?Nt;fP`3J@BsAY~)43FA!$6&B`yZFJ>mr#-7e$>v@RP2clF0CIZEL8=B%8FL@~V6BBtFol{+29h!UNw z(7*9{4Y$=<=LY7>a@HcCknDlK&+3(v_^YykWX#Y-_^YRR2BarvF`nY=@0>XcFS518 z5}Y{%=%HhE<9#JSIT^gy<{{rgQ)Bj<77xM0B86Lt5bgBu++6O}a+Yz4n>Uu3wpj!) z0mPQn)0agpDGf-l{+%G^^X`TwjS#H%P)@*)HgXR?keC8V&F2K`aP63}-;jq7*!t30 z?0q|B^Zw=Oy>;CN{)9(wSu~|7ErCzvOGQ?8I zB7-oEqb2$shl-lm5S~5ZYHt3*H99sqCMvS|V%rOMo=j9_&!)lJvL6~s(7kBE>o_Ae zyMS3d)Bd}P#<2|*&V+brARnB(zOa3vVM<3Bh3BT0jI(*7C#lPkZJgM^uufmNg6NgR zO400wqpY?%(<61^hQ;T>h+R%^_%#%OxEC93ynKf zRZG!a{QsR(8(`MQ-rc@j^6lR3~qk&$}7PRPJ z@r>OY*hk!+I+`WlcqPJyi8=_4WW#duI>gQ8z)cXy$W6=5ifbw^4u{~8Iv<-6d~gUF zDxD(tZ#T|-kp%iy_cMI;? zcfY@R|IO@7GM|;~?tQLvsp$|6s_Zhda?cqjHU3SEqJ!UjBy|>;Lox1SM|d)zr6)Ja ziBAbHuB-XjbMX)EzI?Dih~xA1X%h)~A_V1l;*7gzTWQeUAA&wDH@|3Y@DFYbt*USF zh!hcj90myQG)ST!au#DE>Z>-uhxNAkxowj28qWvwhbc7V?JS7~tKpG! z*^XRQiX?9PHQpAWzc;4)YkXSK7FNbvA14t5+Ue9c^#a3?WI)P9;7QklTWoL&9tCAp z-}^Sg8!p~E02!iFB>0Z7Xz?i8kpeGeREuTSwWol~9_nBq-9(2hIL=}3mH zX(9XmW$$Cn5G`q8tp14HG0j?+Hn#nYp)mT%;R6O+zff59n&ecOgWEixy%K4A+`VeE z+-}*dv6|WsePsfn4+p1|#jvd#hphYYKt#S)yIGex6&3DlnZeV!L5kvjM#UpMjKJ(3 z+?!_snFWi4>g-!@_!&DA;UWyiV<=F(#8BqW6XE3RDtAa+(?=2(M7Lx(|I35XHi}L= zW673_>I#|I;;6~s%j=%lZuZ+hxc4m7x+3+nXHDlI8jeVYT&~8g(3?dUm!Teh!f->C zS@{Fctko+|w%0wWZxe-0sd88CF7j78L^8;9TSEx8d|l;rM3k16!*H9e{X>U$juEtH z%bDY4_UTKcG7Ahf`3Nf24R`j*tI{rsttLRF2)c}{}k{LdGsv=hqW zQVaavg9ISIk-_{ie3L)7MD+Eb`4osJ$@*@SpFyZ{V+$t+OyLMR6+^9*W>4+z@b&MS zy@VtMuf7Jcaw09)uc6rs$)&Kqp{10+lWHwzlWO~9Q7I)b2504kdGcv?!re1WogW-g zEbLtTr<-`zI9&MS-!M%OpzHTv(EsXi+Mj_C3;tuVdi=H>_-o#13X{d@k$y??!yQvq z8eGP2Waf-EhamkyS(hQ^?7;f34c4ifmhJ9d)f9PyR6gsmith(nd3k9ah|}^hbe)x6 ztQ(Z4?U!y7EwR1!Oh0s5IKmqpACIZ4rKorZOVEw567h)19Z3ad|2WCrD~_U>nF(u7 zEC^AtH*%f!GtKdOCxw2{LWxo&s=cI2LVBmZIWIBN9t1gcI&4@f?PRAUA=x0VJfjZf zN9YU>cw~0Hi6cuDCYf`=p(Z<3TY^(Si$l@gzqM}&4t}bF^RN(4@4Y}m&QX@Emj6M{ zzW&KD{qFQ{ZrK_{QP#{vIdfI@nKsJsl!NUQv+QdNgIF^YeOwWytn)fb`$8Eq>9>u# zbeK>lIhUv0YFl;7HntiT3;Ggqg|Rm&3j&GvKrX^uoX+5tfFvz{LWzO2H}Pwo6S_h8 z>jG}#8rjL~@v4t@>>oQ-$#<}0P6<*eUcT>7$P;ym31UsNv@&hR0Z9{=~54r#zOOPzSBn;~6vk zu(W(;s)Q6`s({rnxc^!-NBLN1*D2c-`O3cvpp7HpU_!myF_#VNvSho8-?$G0i{r-I z`AfWd@KE){FsdC68-GcIH#9H=!p}Wvw}`aHh#MF!xDcG}D$G1Nz`mutgFcamFCT@Mzag8*N+Qqr*#|EtJ<&9#OvRhr=L7+QH7+Q;V*3o)ylWb-%c_(Hru3k?l;Nx1;rl{HnW0g?-NGW_-#) zw^!2cXNsu#J{-O;cUb$U8?^_w(7})Y8kIH)>;w(DA4tHG`BDZ4L)kghwG5;ZZ5`Fn+N?auIb3ExVY&&=+8!FS4C%(GwI9?_J}Z z)wV0&c`27IUP7VHN>eA!C(SQ9*Ec1b^YBwgeW5{}_ttRl&)X5jQc@1$r^{JSIF-a& zmeYlA(2CZNGJ4^NtBwI*i;z4Cm~)qt3m2Ix3T}{_!QNPp!&+nM&S>a6}q4K75CyZ%qXF_;k*o&TTzg8+jHD{JfUt zMGf&DK5+Y@XIgcEdqVcs;;gNqlG}h`j#>tU?F!l~D@?{sNgu9Cg4?kwqnzXw z9H{I^r+Sx9l+~3zE1jY5_j##_e~~!zAGG@s!;^+BMqdl2{$(;qtT-;Gq>VJ1e8GKX z<~+mRBQkF`Ge7kQo)DbF4fC;W^=W=spNYK`&m+QSGKo+6mDl1zN0%7z0VS>OP-zsk z%ETn?dCbc~wwD0p*$y%`nTnNo^SBL?l){o_<-4+8U0fGpW#x72q`lJXqGY|hGQb(1 zKl#m*OoR0pYw<_lVA&eg!`St+2!U_iE-iB;=^p9^KXYqlUUL0h8)5eADEc~YwCkDp zNv#Z%jTKwz5g81YdL?nU=V}_g7(B)ryF;)LuVTwDHE}p|bVoJot6^bRlqi($Lt~QR zyL`3TjQF*7T@|9A0>0q$Fy3om9kLv$^*CWnt*e(~DFu2q_-{l6bGDS)jjT*D6M0(C zc`(ImBaX}1WPUo2kLbdn-X2S*aaTI%S?bY(S5(Y+9L?=s5g=HQFx+PYsSICTg80ji zS}%&bafWY6Hcl3~;u~HsX=%PMQK!%c^`@3}&t;IYznM?bJD*CLC{X%y zC%j=Gd)Fq~!kLTmU-7KENVrN{e%YyIV-H^nCT*mu;l+N+nD4GT<%^&4P}6#m9=<9z0hlKN^0Ov-NYgpuv)@f1!p1>R7TbHj&TS^vRN%J@_L zoM#7%?_Q;Jy`UlWDK-S4qDp{A1EJ2r06qnCVv-&Y#p8E8xJ<8^OKYI{tJ7_%PvPY$?|Dt%O!53 zj~f#}0j8}_C0KJ?A-*$oS_(@YZxa}PuV*To-lw@tKp-{1@FCeBg9hKBiD2oO6Nokk z!*@-$EBI_#3?JKa#$D1(cQ`{3{TVvnZSFKAx|PR5;X-D$C_v95pAR&NK}RaKoh|MH zl&#w!7tuHi0WEjVol|45i)fY^=uA*~!{MXXgEpJ{Ah8ia`_s0=Y3Gt}EOu7KeK6 zwz*ON_bh|Z*JPJC{#L~?xHTZ%-g?Oc808Wq>lDbvwx?q`wjDs!G(&Li!d6%(jC%}1 ziCqsG9&Wvb-`s}=P4oN7&SvuG=;JXF;C(>?GWJ#v|3#i=)zlM< zoz;xFU`}qnQtkGlk)3zN$ALquZq-3Fg&-5-V za@NNvNaElesmPNy9zm_7t$2hKc%BbWVco88hXdV>*A4(ZyAA==R@?#h8$mqbhv*=# z>?==)M!cNc^G7b6x%Vq1I+}(LzXeC_B{PI*(X?0Rvn=enX-arFKJ|AS->q+Kb?6U- zJu6-_>+uM{)7fN?%!-$~wZ7}x_E^N6vTBF4iA3D?!9l!pd++-_)zaJ%d(a; z>=#AP`eqzyCsB{}4-SdvQp`7#bbWa2^UnU)uDASTs2zEVUBQf%yE`zUbV$-zFL>>b zZVUCgV^uq@%KziiO!1$Q?P|1V&9~e)6KU`Z-ka3OERD^OEO_x;uvrzFS=O-eJW)Rm zR3QC>d!^95(y$9`aakP&9c#EJS=8cpVf63Yn3NQIWWhOP?CnI%ghdNhW>}YFZWB`d zrOQjG^7S|SbFo?HFSk7wz!y7pUXt5;+qO6__STn|#Nn3zg0DJM^cHR6tvUj%Bk`q} zK(vUeV&kG1Lq@_jy{%X^a`T5qA3fxsy?3DJX8@gf_cApW34`HDA4%<8(;+&ZwyyI8{(K&; z86yu%8b-gaBhg`62VUP|S)??+sGr7uTB2=T_U0Ad1r5{xCSyB)!|S3cyI>R;+JyHBy~dLQ(s}Y0CjTCr*lo}o zPTHC5r8*eNF8u8dw(!5cD(Zp(x5XvkLI4Li7Antx&(7_~0B!utl@61Mexe^BMZkJa zd=VX_H8QeoXM2dQL!p0o9#qTGWaQ3U6kPhTzg3qJmWEWS>6^<74$}fX07IKurR5$6 z`jp?ZwSGsyKYZLnqgzX?1bNIHcdid2b}mQht;lA?)Q;;dZcJ%Ld%zL8$5_$dQ7W#{VeCl1Z71vQAwJ8>=`)3zY}4IU>_Xmz3Xtg zXM6xZCv{zexaKaa>x?FjxDtz`et$wpqmp(-SfD{+f;y@bmdwf5d66d14o(-)@3Dmh zvb6Fgv@Ua1(<86Fnq-kj2Pksy2-CL&K1{ZAYbcWx@mJ%!d@M^%N>|CrDEEuRXyf-F=H&@c}AE0 zETsOyeWJ~LkVG5=r_e&1ld&G()ldsr=BES)>)_nWkP9XylYgT1>XY8=$HEf|vRg|E zR(CvJ@R1`Q&SJSD$e|WDKMjtYq_iknm~Qg6`T}MPhGqA)zwm3C`I;tx1M8wEDj3@d zT#AOq^Ch)>!nroKh$Q=Rbs}GOv(9@4c^=AEZ5H|~zF+ivPsDh((8=o)d(KI|*;HN> z_Ws&1=0B9w2mfJ&klP>uHu2;Nt)?d-odS~nT-GmQ{0{gQ{v#V`cQe&e5vQf z6lXX6ZAtP!I6e(n>hNsQe$4*rI{n{N3K(OmJjLe#(TTd8HtW=(LF5%;|KactRl(>5 ze&3hj|F|)D?L!igCOE2y-w%(?^wCTilXf9~9m4kla zNBu!#F%cs+O!=?CMMSv`ACFzW4$Znakpot3ixqcVh~UsfvTLg|CR^c<7YD1AJDTbeBF|oj$N6&mMAz`%2D> zA0V4LxWs@t;=_^*{_4X}5;vE#{wfNklQJfmIpgo~PfT}mwRlwROnO$9 z$Z0jY(`g^m@=N)l)R{|*u7Gp$b!fXOXML?h4YMS)t#yoyMSX)B!HuJN_2hNv)pVVX z_IKnewY8(YgZh}q^*ii2T*^7qI#2Em?>PVKTTW-pt7qC<)f+I(vwy3v>;sJe?(gfy zKy66jX#R$7#!rEN|P!iX8E4NZ^N=al=HYJ3{K7Fo2c!m9hD zSDdOTq2e*VFM37Jrht5c0TTc=3<2#$nQa0y11bi=3Da@y?+r1%V`v0T_ zhcnP?0B{(4pVI&(1}SC3~PK0wL}FkP=BNbK(-*Y?Rr?az-=za#|3jLrl7hO@swG`|8zF!1Q_Qg_WQBmx~Aqlx7=~72P zX>mjCEJl5d%J8CjX|dzDuAj(Zt=poRnUK#?q_A|cd+YemYTbhs8&sgv;Jd4m`v@Aj zz(eO#lIhV&MS1DbQ3XR$Vopfxk~?%G%2loDRvrDvr=CMC%2eNLq~Js$zo7@-@DJfm zy5U1OI*3<&dNuuYY+<~L%p1?#*8U`^CfLgiqvDA=SR6%>VG}|=L!yU!e~&Et?0nBM z^PbKI$j{3dg-1@FfB4fzY&-KaF!+tYO{Q53s(V>EzA(3sYLwNBA+`KMl!%s4lB+@!Nys;^i|TKAVC-B@O7{?vplW*ok|5ZhbH zuAm@(6hYNFZ?x85cscy6H{(QA5H9CR>KVIVt(LdOt__+j5Dt` zB=nFlH`rOqHuW3en*7YQGk1qEPEPkBmCs&ehq$Zvu4JJ@TPz-|p*Nv|uI$72oED#& zxu~izLr(>}Mee+F2_5@|fjYJ!^WQ_c^J8}E%8eX6w$BdRIb=j=^|M0Lpx?vSOvFY% zWn$yaIdF7C1_@RW7hgUhWYU06(JE3B&aJ2|lthWchdO%lh2D3fM5-3)n+;_FXGqW& z+cB1sgx{iJ6*xr&?wVbK(E2z{us=iBvqJMCB#~o5bLB#+_voa|>LP+%S%4B2SkXAs z!Z6-j!N{2x>_UE8Y~Q){Se`CHu83n!L(?X;OUZW_{h2<70ZF>E!Z+os%`Ifo6BAy4 zbHy2@ObIonO4&O*jdB;DL%5Gxmi-ZC`zm~lC@wc* zN!Taow8EG*b_X7Mm1}u5IVrlvm;9XMlIPU2;}6FwU)HAK z4ylXd{4^bflNS!^N#9p4w@WQ@xqnE$GIj=!PX#}Mzlts!6>IMYKFd-&xoVN(HugGY z&4qy3XTC$XmSKvG5Mvgm&g7fw5xn;Cke3dPc&;i#6P*eGsj}=u>ypoCh+Mtm1YuW>JV7pO^9wWD$WSJKQUVC_$&c-SSx5{cCWw#3U$m?=s zlJT0pco;o_=JZLaBa{B9@49ihq?B9T z(e+#%`s)>$Ej_lxuJ0ipu=|btd%2GiYKD#qT~W#0%hZ zl(MC(iU#P)NsldN@0oE}Lcco*66G4jbMKWlQABLD2(jfhM)fr?sHMIel49KyEFb^)_ke8 z+&MXh2;aITh$DOz?e8BC7MCbKa^hbzxSNvjlC)jFXDR+$M!$Z9z%eL48s|jyJfw-E zS9a{J^|Ph=~oclx1Z+l>oH zVu%zMhxDtT@BJIRdGljxee~V<{+zLZ6h*P?RMTY;{3&8A*z*nfy#a^X;SX-}&g6@1 zZ+zFM0loHcD$Y9IUE=qyRyh0@%$DaeRK+Rjg1 zIVwquf`4$=otu5}+q~KFrr_BP9%0Me1$ETl)n$b3*lZkI17|uQ8dovoD=^79%&Xf^ z`3&h5|Feumd0Bef-h@+EpC`!+R5f*;SCN5OUCHuJ!@YKFLd}E!M$lh&R4%Yi>uSoI zW%~Q@68%x`$yYW5Uk#P6|7>(Uoug0eJ~dz5LV$oN)Ft#rS=NGwe)zvs8Es0iRatfH zBMG>jRnci=zF`HII2?Az6T3I@Iecu%kCUX6TRUr?Z-NagXt5h9c+0C0lDZAh2mu*SDX zwl&vZbqa!TDpS_~M3Cd@(z!TfNU;sz#(G#U)2*Qe!uBX1l5*0WtmB%8*yw8;ay^<{ zcVG2!?aRQjflCGu6#iTr(%s{Xza%=Xr?nlfFrhymHF^^~a-l(&!uCF6m6!h=ys}zq zf2zgn`ub}z*;Wj>E={N4@bN>^ zRopZ4bg&leD8rD8YHzACyjZ5v9;_^rbKp+3MokXffn`gA*8W8jojpR%mh)?Bim{FbSe3QcDh zFdMaYzd#kyg@aO>DNkq(QsiZ&rB+mD8l(CxNI5K_QUXUAMT@2R|KNPeCss#vw_{a} zTKte3xfqfBmEAnPc*g4We_w5~q-FiSA3EXk1wfBE;ldQ-B#%|TA8jlIJQOF`z?X^H zurFI;o&lmV34iOjERAiNTh%3Ky?LO1I2I(Q$%F_86_Wt+#gDVoj$DFKE!|9ztb)TM z#aG;X^-y4rXw(5ckI%f)?1@7K=qe^cde?TLJ>>qE$J~w-y^gGAlHu$2iimdc9fJmV z#J*r%b#lhoxqo$9s5Wk63cX@k?@JQfb=CC%-Lm3D&}a4tb2BCmuHEoF z=X)JA*5${&={WTJ(G$PnkVelrce_)YJfrPF*T;O(jM(jB3`6?};&hf+S${VK=m27Kq7CA1iA+9yUBlCp#moO|+;QF!9%2&t67Q>OP5Rr7`%|jq z#aCz4P!?RXq;ZC|&iG^d-4yoMHtQ&u(_^vwe!8Qf=HU@#5L2aHO3RVmGC#G8^I`g_ z5HB3mho)Az@AGbx44h(Pa_ZEceu`}VuB{!uQW7oaEx;4yf4|Cd?f&Q}*Sg*kO3#cw z4$$8&{FH_(g>x!p0~gDxX+B*-lrNL_CZ0w1$+#FX{?itp2b{0@F>hsR2zp8zQu7LL z%u7|-d_@~Juxp%-`yDlp*cfCKRnT&4=HTTQZ}qhs-{aKzH5ZeBuq*$;`PR6=-%(C7 zqtU;?%ME^0Q$tL%IQrrN5I$ip@#jjC>SsQ}Sw{P#cmdeC^t?wshXbG50*+^}5J zc6P?cKeT50rE^k$^k(lQKKyq=oih1nbw*|$^MfWa_pvybDxT+uDzuS*i$YXIV z@b4TJ$F}i3-NyGI?7m+*rhmq9^4vsu!B1enj3l1IlN(29a41L`v%ZDgEkxsQ(|)xK ziE(!)d&lI?9?V_A`Rj=HaizQ>@D%+)?K$I`;6W%nG4`<1J_qhX{#paSq+1z7pDh>3 z!swC3HN>WyG+L&nh*G&*yj@Uzi=H2kq&8RD)=qa$Wq@0Kz7wL%R}6Z0CsdV`PB)%g zpR7D$eq7w*qh#)Qmn3~Wn_9O^Sj}{oneVG45Uuu9oEqF$iVDdOQ`8jKeqi%h1V<}l zOvvK|cy8_@di$jtopPg*RVwvKM<{2_Y$pw@-V-xhChS1U&`i?it&MUB?xt0U(`MA` zADF7dnvDg}#ZXdmeqiSPaKmG4V788uqi^-W`gJZbp==Me`9&1AIM4qdpVVJrU+f6l zl5%@%?}%bju~cDS8XhY~O7IX?n#J&UDNv6F)y>N8w1|=W;&GhqbEFdWqfb^Yhci$2$lGJno!#rMgVFMa~YBBQI)r>ewz!kc@5v2)n3uIY-e5}`Vphp)%dzPqWob#teT2OKf!^-v+&MMPfx~(MSXMCPi+ME zW^;Ymi2Pk^a@NoE!`6_%>UVc_<#?P<6F9+Hc_)7=`X6oc*H#M&^JI1F>)Q&@ed;xP(mTd$UM@m ze#3oz9 zC1Y^c=(0#AS-P@J9<&Bb4>i(F>H~Al)IxwfNt&Xd0-}C!2T9!- zJ%rq_@<*&+Q-N>wAf!r7#`Um1PF#YycMZzDUs1!nr7*fY9q+4X5FqP0$)0IHt71$W zGA&3&_90zN34Dp{HAY0?$H)p>^nh72Vn%)Q%?bB%4F1)G)T!I+K8brBikr6X!_9+%&_PjEqI7WZ z4$JVq-u}Vp4>kX|k8y-o0mp~hR8Dmt2&g6xF=m~NoMP=&<#m6%gc z8hvw<45AVCL>2E`3IuuN$!}S*^_H+;f&#H&JsHnw-`TIz;4@!`nX^rdmty#`o4>sz z+KDy$@Nu*cJu-;V?n1s&^zM_b_HL{zGedEtV~kzC?IU#ZO#EG7Xik*6g00C71p2*w z(&SeBA(T`ZJvuNUtiEC2QYfjV&$6IwZU;S3LU^;O@$$Syl6b$xL=4oE!*5*H`ZgMz zDB0eg817C?eXH{h_c1?i_c1F@r$yxxRb~@ZHP}oJLFOk!)<*(m%-gu{xVhHx{|0AlQul_^}Y}- zAeyix$Ig%3X$V+L$g%its-z=pSvKMAawHAb$*1eZ3b!M zSR*<*kUsW&+b$jeROnmExro1^a4cDke&xdi-m`y%trk1mO+q|0$&-}O^lOrtK0nh~ z6+W<)^pV{=Y@X!%;{tm%UfwZFoA7 zt?m^#2W>sUtlO&GKm_AdgNGJ<)fnRM0w5yWoObiWta3{@qCt18F*6ld;WpP4Wxw3N1igY^?!p*IzTJmsnpXd~kN3|N6+^Q!|zbjJ*T0OhNZV(hq0Hwv{C%;PRgI#DH zzpXBbUt4S3pXwzJyX11vYeM{I^havA9UoD^bN7=WeQK$Gm^ScVX#qPJ2pnq_UU9Z$yE2?%0{S!+6;5vtyqdxCUE^SnSXz;if zqhSUtK5=hFv2SBeH(hnxE2LUjizVdL8Ov4f6UeW_UK72{8e?&_9g5 zju1&F1S`(GoBRJym3`!udyt&nD}ktoBbVeP96K01H07l0^Xj{wK5+mg%O{2 zsC2A>OW!}C4E*hjFJA z(>&=sA^4+Q&-2aJm8;HWU01qS))i-;V3b2X5r6iQuL^;kgG2^;FKb!rAP7Z>oV^l# zsL*-Ucl4nR)D#4c?XwQx$#t_Bbc@SKxPbQu{y+(9i2k*-GdI-X4ig)^0pdzr1ZbpY zEnr(%w7&>xuUW1j<-0Y-_6CQG?fNV<%C*Ls)>Zw8V_zcswC$-{aym)CFyI7!nRv4! z`AdmlVGg>^6vjXkYQFAa8Q9Kh)p4K$>^ITUA>^-_>9=L%PomHV^1Z}z;I|}c1Lk{W z@UaeQ8*m)61K-;t@DEOOLJfQ`4!) z2@3s}g`&S>+c!1&E5mg9!p}F79fD2EcohKBUVBcPf(vree*NEqM$3SnNzQ+R9+e+R zmJLS7X#?^spXab>{c_^d0QU!=geV)4ZE)pan2uzc(bibzNLQJpjR z3jJW)KG;~t&K{lDo6uigIhA+yUj4z_^^a_bO7Kry$}O{$D+d$wLdR<_tkD9kT-F;q zYAOkgT?#XmTA21Nj9`3Lu3xj(kwB$RgJx$yi=9BE%k&zzDx zc|zmQBtmiKe%B`Cksl6L5cd!6-9$$@u@vz?I7`R&D){HK3a}gKq0&n{D6c`Qu+@Zf zqUaM}rPeoX-?a*FVHpv@|~*YU9(0Poq7T+OMA?^CYjP#s?Hji2$+=X$~Js^z&D zu?5T^r_oX1eNnYem8!N%(2I}o%_vQ}>Z3&OmQ6KfB8DQ)Hgt~(|8WQFjW2w)#^1soSLSvNDZri| z04xkeiaQiw#8dFw18j&WPX3;mh8J`v1S}Ay$EpVTC-`=g;Dl3Ij)^f__n^k)XTJA* zHjsNvN2JtdqN0bOH?fyoG}~Saz+?vWrNj@P3KnaEuc&@_et*fyUg09v9nSg(mnnME z^;}|1{t}J-7^=DkdWiN?1wDf(j?@VyFQCtfYc!xIQG`9&w@qNsN7s8!7j(^a^KM`{0&q z7N1G|D4z}rM(e%4j-!4yuOe)3Z+rt;g%&qocx>&bJ|Jq=H^ZqY-8NbM(J@q2u(0i5 z7$#sPcV&NZO!K=SCdu)Uu63|%K>Vsq`(0>ju)bm7gnrz}t-8`Teq_$)$s^&cPA{`4 z@BuS}e}N)!QrfBRLRc$PxjkFI9WOhb@+)rIL-8{3W*R%Q(8}JVMP%3+guhPDiEL0w zY|_6YYTJh5KgKdkKr@r1r$z84>d zN@Kc-6+I0I2Y74Vtb>@bS@id7{m07p z(mn(=s*Ww)>7=>-S8FzuNxJL~qyHF&(+!XREt?YIsay-fCmAli|Jbo#lZ<`r_ll>; z)?4eo-wWNJ1aIwlu&&eF%7Lv)28e#_FPa+o@O%}L@Jv2rqc1PSBWRQ@HzlFm?Du@9 z5S2=#<2a}_&(W%59i2E;huGL;V>_AC4lgBz!h#E%;uk1)OIPR8{W^hTfK3(EBsVa{ z_26KGS$PAl&C&oYfBPoewDy<$n$w`uOY1420)`+d$`pvr;!x4EBuj zF~=YMLf-Me3)7sIo`cM+^U}QlS%99K$|5^GP(!%bIZ7<*l3OyaXVrW6`0>gAwT57g z>AISJPN3E|8}3P?R+OSt;QJCeEwn_??JVQ-ZQIpSTTY=#zo6!cKlG8VKsZ&g*`b?~ zTYGQWR?GuOkL^LBX=U=)kL%fDNZpe^olG6X=5r&Z;0Wrk) z|A`^^M=A?PrBh@m+f-IN^c`@Uu+5~~Wsak?I_t`5JX;vf`W+7eLJgR+Z(7mAW(Wee z=S#;ZvFhgF`?vT9WL0Ue0))++`WXP)Ic(+k`8U}cAJ14pPQ?$v;P`9armwn~b~I?t zjFa*~`b8DZiBGt$vFCy4Kkj!SbE7-$p67OHB(iR|Q=FcB7*AYRer{^#mtHcXWa&0- zU63+ZTi?DN{)dA-u2>@l-ZMfdB?Cw9p8BFKM(C2UW%F6(+qkj_H-)}DqmHczIj4@F ziT*(~^NpIl(B2;!LUx{~`0o>>N{_!X=rJ}^=8v+z&#MWuR;>@LljhS%pFDkJGqzaB zsl2d`oK+>SEcXGfW|Ab0AN}Or!MOKontgq>*e?w2Xzxs8k!ODUZRon$06B-s_fi#Eow!$--_yyMA z3{fd%@Y-40eDD;V_m4m7HAAA-vuDsm)W2Goc8;2fg;%il$uN=$nRC7*(-0Tiudky? z4;izP=mJia+HM8v$n}bqd%r__4=n9AmeHQI?TX`B19sc61*uT?uqu~~%_1|k%eTe} z@~-lEXUgJ`PYjj4vVNYK{?a?xMIfyMv7Mf6sHY|=6HA@TSJ_HM+khJx5&Q7(cS%gC zLnBd!(TUaH{y%^6KkY}`ArFgGEBu1K+y5acyEy+tR(8ui7TW8jFd(F{D8R!-s-`)9 z<6=%q`}}ce9(c1^WXa>+?p|1@OTR=}=QvqZr%P!;cv=)WWs**+>thx)@qQ{XvnlLlTDWq$Cm(=0+oBsKMhnfmr|x%3pTK zC06bfb===!;mVY_dsnR(DaK=mxD%CABb#2#ryM2T#%#-maQu#`v5T4`C?KK@*?Cq^9c{=k}j=VF3)NVF}aO zb1H2%&YS-wdUpTJYedZRf60Wf`>nb;On$*RWb*VKfY0bc}zF+?>s8e$IWk&c!AWM4S z+47RPI=6)5i@WkdfcB$>>(lV5@LAcHAnRyue1Y5!q&~90cM95rU)=``Fy6{_Jc9*L z*znkId>!I8n<{t^@yM`SGOFi!;?T$#WllbBHxBeOc7|Ko5N1i6eDp_F!$VQQZT?1as3ga0zn#hP)T)Qw{xL{mUnIg9BjMEKePOFx zSRU_}?NbDMS7h+C`Ontm5B%WAa0y?p5|Xbn!QM~dQXup35n(;Qqf<%Q$ljSm#Pf|w zf2&*@UEM0Vvmj6{an-fvb`%|PDh*d~s}M1@wGM+0H_)S7-v#Z{mQ(zuUI-LCD8IH# zUug`fk$w&)H1a?(rra#HD$QP|v6}r!?UOmb+BQtVnJ7G24_d8O-F$3U72s#ZAU3wo zeAlFFeoRkgr!HVkez@x|X2FbsN%Dt-Jr-UhPJ;3$#9>Kh;la8Z-2}6TU|(IGJ<(|` zR?n|nynHc)jjKxJt|*A^*U@8BDTen45p`?s=#SNWY|B5m;_haw&xwIHl{|t@VnI)r z6N}Qs;-V0cAY{v=stqehlBiVCtXpPIBT1^fcpXhjsB=ej#;5OA1-eCfry?6gE&EzCw2k@@}#o2kH;xhRNwU!q-?CMPplTQ#1u>jZ3vM)CGm5 z&$gfFV(e{<+H-82zWpkInwbc%(w@!fg?&=^qj&b@XgCYstj`3ANq*hqf*en+%{#8r zEo&;1F<}b6oIJ{o1ugK-+B);GRSe5&;R5;eOQ9^?5RnQ{wzG*+IEp$*QGLZpHhLdD$DXSGUG=18`0q>^2| zWJl!B++Q~~IzmUcI0KZSJ2)(K2=SUk! z_{OX+E^fQ>v>ZM=$TxWM!cT|Ne%?)szr?u|+v@zE-kQqtW7Va)S%u|h9!qKRB7Zl$ zvz695i*@;N_@HzDf@MiK=KI#d;Wzj11;v*XZqDN5~6r`zYd8mIJnwv0jq8-MR< z_Z=~ZwaHcAm})&-so36pRI7JOe2g=JswFkH7>$nPlAgHyV)@`Tixf;n?v`kzi=r!l zP@%W1;lwld4-OOF#&Btwga%?UbB?~=>gDlKpyfT3hNntcaCgW7QYI5d&+#40Iq^x~ z%k7BI1+$FV{P?GzDkW@xXX?EOeb@ncbuoFRVY)wXgJEiY29Mh3drabt8u4XbOP|~! zEJy8!$Ec zG?IXaG`e3Ml2!l0wn88-1o^YMmaz?zd!!yKan>wL^Vb|2!tX@G%?`8~FeERId&oaH z_Ps03>T;u+-^f<4+7!Bgqk=_G3h?FzC*qN3V`A5P`Xq&t%Kd}W+V97r7}yR15Cj~S zJ!*3fY78{$gwEK_96jQ#vNu?bijlIY{ji_^x(zfluZeR462_O6EHx(L^Deln&Xu3# zM?%=8`-^X*_VTDflch&dSAotm>@VVv-vSnDu#F+lV70kQZJbIL_klAtv-DdGSmSK>|7O4)$44hNK0E-)z6eD%2F7vzcOxe)g zDPlni)#Y(pVs+i{@M_j|mJfNcg7^%V z4*PCzcW>i*nQ6#_r;R29C1pu*_}RO@dO|-&aKf!%e5_=pwqlR17D$6%WaW;I{$l&z z>x*X240@CGl9yx!e1lq!fq^eR(@1NWWcKfP&G3Q8Y6JRTZRJ*s)~2OI9J6F+4B3k= zgKnw0a+o?gygg>N;ne?+sI!WSt82nE1Of>f+%32UcMb0D?$&s4=>P$O2Y1)T-QC^Y z-QE40^RJn;=8hYhO`pB1_NjX7eI}#XInEtzQ#~sULlV7y?GH>MxDTGPe$cg>GYY7) zWus}|zL1Tocs-H({aO;=>~d7zt{T*iP-)>@kMR6g@$sl@JeQ``jmd0$cW#Aw_srO< zI(VTCjSLcxU~EM^QzYdr*C402WeH0`tlRj;50^Es>O-mk<=a1hy*J75^BO^OMq}Vb zW3VlJ#<2Z!Sy`fI=1H(tfOPFI95E-a!9nees78|55X^}A2E4SKm_G@#;aQ|@T_>rB z=C&ELY6TVcL6S5~w#gH$Zt$TxIx*e21xqcY+;cMK;NXVWfA6MS5vE(J9SBrj@zZcV z|7a7ZbW=TS8 zC{?L0Vl9c~R4&qB05>eqkSW@eHfn!CJ*PwLA zX=0I(>B&%j&L~j~~b`tZph{avUu&|e*yr7rlCBOfmj@kwDESR~A#h6tFy1HYZ zB}r>JJWwcqzF!ci(+t0^1)Ln|T3=;RHBrHQxg!|7zL+Ks#`n^y>4tTx_dF+F*=h2A z^oS=oKt_BnSHP*)vY?s56FfhRyHhaDpLUksiS6cxx>O$?k0_CD2D{SO9IsSbl{0N6ybH{-@v8l>IXMGoeXUutBj7&Xl4wN~ko{=yYh$>zqM zow74g4d*X&u|i9?xZum!5@h|4T>J?>%udw^P^;aHQ^Qb`=1W(5y-7rWDVo$|YD?x$ zh$*k=V|iRXq4n!>-)KogNz4WFRQTPP&f|qa5f~T5+EFFYTrC|hCzL-KUE%ji|Cel(&F7JisU3}<=9&TFx-<_`g*5&wYjZj@It5Ak3y4<#7hbpT`!! z11}#b3fs9$7UL;!vqptu0M%^&9wh!(PW^=7AOLOR7T_F<6bc*AW?d=*HSLURri!>1^qK*d4Dz2&~?` zPMc03szYH$;}LgJtrjwEA6z3_`V?;lwnZg~B96_<`u$SmgrbiH#;Ya7{CJo#lEbxC zGI;7i?sYIqPQ-?@^cx^q6JEmgOi)Nef}b;gorIMjq}jhqZ$?Iks_7Nby;YlQ5uFD9 z2*~bCczQ!4fPo!Z6d&v8C@-=(-M@+##KlE8`I?yYd70XzcF#69nr6(QFn#3roG3i9 z+LOf0+_u*5OzsqNMw8yc^!qmro`=Ptu~h4}G!@)(EKxw&-T(qaKbCP$8wXm_QwG=+ z7qGbCJ1r`Y%4<|&uePL|omle5vQ(sIh0gA^)e`ot|24r-B)>iF1Ip1H!5Fly3F_6b zv%}izU<1jcPjlN(9=)`%`WbhrZ8^!vUxPBid?2vKM8-ZoN{5MlazaNvr|cZNfh%)_ z%cE8FU{(D*P;1%`jc{wZMr_dhlIZ#PU~L8K!6#bj_}S~{ppB;>bq&^%pUI&EE=SXL zQMV;kXxC{$QkygZrLk>)w}DID5-fWH#m@`Pc@3VUQWWdH@kKfk&EOjs4;Kl-S+wcl zvy@mahDd$3v71DJDMgt_L25@XRFrw#9=9GZZ*jf#UBONEpLr-|DH-_i+QFzO_grWV zCvgDrHQW=noNHdONB}3PcEa(PYpQ*$k-3iBVA(OOzH!Ye z=Bti)++RWj3-cKO@JL2V2kV4ZKj~67@HupVeuCU!NB_uF!YvM+MT}<09rSW4Ag^Fk zgt;4nQ#|4?2lsmfc)N`YsotvNY`*wP7Fu_=9Vjm-Bdzy6M1fN6D%F@g#Qc}VrF;}? zkrlFe!dawuGfi1RBL_LzLE&D3Ej5QWOYu;ResIDXhMg-5;VsQXh}bKBTeYEqkCLA1 z7du-vu4?A3j}ChA#PgOveH63)5)XJt)Oe6?n??uw%vHo@SKSx<5g&zQS;VGmB5YI4 z9@A1&e|u@X?suVFc+tNaMp*6T@CxFV7J<_SYlVZcM*ke?^vE%C2WcB4XM{P7H41|> zIrYa?S08jxJ;sZbm#%2XoXmO)<{_r=0p8FPLF02A^e_V{>fJsq#d@>DLubfCz(jTa z+K6ukR+GL@(y_T4zJ+ue8>4**>qI}SXWOPZ(}4kxvQ3y10TX)-#M{YPm8C#nEqw-e zny_MbS-NuBrejwmHQJgRy|THS7n_5eG(0o(5nq)Nl&)rPZCMxUSlW~xeR*_A; zfea(Fwos#mFLKVgt=&ggHO3OfD(lG$uWwdOlowy$!(YYxro6O5x6;NNnU&uRoanN3 zH(qbuU`}k;1IUc=Q!w>0?)sW##4I`c5(g!Y-S{meq~QZ*E$JU3CYE}|WNhz4^jjQt zube}JCA!y@q%`ZiTf4~B*PGd@F#%O0)hP=j5VD(eV^z#}bPX5IOjUnsI4%U~(#@fr zQXlTRqr&+1%P$VBCb5(pKMO;DgQP;w$KY~n{DzRRVq>mr;O%^L&i8iHcjhrIH2LT%Y>2UEG|Rh?2+e-k#9Vie}lugk=Jr zb_sR->&a$1M8u}AzahC#zFmVrUZ8p4)c53!4;;)V(?Zvx`o<-EGJg;O6tT`p?^YFS z@4ad*L03(2)bFevvZrkgpxQmzY#w%7dY2WfxgUZZGkt6zGm0ne@n3Gm=-^}87RQy zeeKtRvAoru#I-ofa@tb2<3wznS5EddQA)=wY`3V& z9Fvli@-7q6QA;3v!q=0psjXX=ByheKGcE>2wi3?p{0F7>-3xAXWeW)Q?BpAzyf$H? zFQPl z;>)I_GU4@bOm_8R^AS$JiI$#6JN0>S zUBYiyW2gkdMZ2icT|qfpWJVvkKIrNI2T4A7WF3#<8Mzya^^NZKbr+I^xz_JO%dvdt z(oeLU5{Wt_R7^f)zgVRa_n==0bOCdRWvO%jzy-}8Kf?cm;#63xT+P=a#qgBQCwbEb zcNcgENiHPpwBld`bIa_KXM&n<>~ETN6W;dM27?4~ans?k`cCw2pJig`Re+M~O#URH zGOxBCpy8#IZ((DFTI9K~f(hmSG-{fry6j6ue9q15(5|#XR1k;J&cSJQEHb}b555y# zno;`?>dubBbb$_kGjT>^#r1qITSNQQzVci74h2c0K`F~yL`#(ulC;YnV} zvG#gX1+NHOu8~pCT^1RPznp%^M&>8dg?guChr3~lt2J(9V?^GnThg=_m1RnkMO{hB zZuUB)S?##YnTHs0Y%}ndT3}y7aNg3p{=jt!G((H8O2MH{c!K>_D$ z#C~7CTDN+8er^xb-rRQnYvj?ISGht+R%RSk7)xtN%>wG#WDPdnk3DZII@_+K-q=d{ z4a~G_aK5b|NQLyp>l<2xBlA?Z=khd3!U&AWCsCLXh?6?J$$_3YBm?W-sp}MgrUHzh zrs`Q@wdv&P-}f;!nI>qI-f9SZV`$dDuWm-G<~Cq&jHJC*Xp%FT-G^&w3^!m<(FNvX z-skce=rqB&8KGXqQ+(7kfZIM~>=MaZ5n(>2GZkOL0xc&lO=z-!eV6k;Qx;A*ebl&A zNfbxmc95ci(xqp7V<)>w2(*=p3yplUsM*Cn22^ipnU9hD6q!#Q*=sPa>5KJ9Z(IRK z1;nh!Y{(LI?v0B$pdgs(JW$ipLIad4;AgzUHEGqEhz>a#;DexcuVIU~?N5gfh=6|3 z&VNvUMN)nvg5dB`&+>&>GiuzUhtDZOQUIyLJ?0v_`4YcC|3W?ek=A22b-yI$54cb#=fGtbU7l_!!AZ&z#qh-naWX6vP+UGT!yz zkfI&K$9R|mez5bvGwmWl#$blLvQD~2ODds@6GM6ASx{z2V2FCcjS6^0mE<|$$1@~r z;ZLS=-BKg?MpWot-^Q`pHwgz=KgN~KsHfO}Q0us>3k6wTi^isaD-}7Q+9-M-2KNEp z)l4)(ujUh8#(>^nuKrb31X)}jG%%D*`$K7-w_H1M-VWd_2LoPyATnD26oHS#_UMBG1ify>2w9aRh{$vF!l{F!IAiE*e61 zLXXb*_azP=1*Lz%XW>H6{BHr8FQS>tM|8{D`}hqOFHyl{SM-Ye&|RR7DezwFg*G7) z_+hB8YtQ&~x|4>(1wqb>aC~j=`#KXmhhYqC0|nff&*oeBm;ay&PdVyzo}~g?QK%0z zqD}SiYHBzoIev@6lYCAeJO}g@V`MA7xZr#0=Yk)>vo?I(7G&!`!FTa6!w?vAK)^Bt zd~?c@4aNUK)jA2DU;w%X%eM^cnrNXnC?Omywii0Mb5eM_Dwdg4(;J_o`XsnhnUZ zxU_(J<3Q-HoFq254%A!AQ4ky~8`$+QiOFVtY#L&Bm4o4IQIsedrHM?lxh{J(b^Z;{ zny+f%gN8Z|SXs@F+L|optV^1YSy2j5ej0fO$#fS^l-|AeC6yN_d{PDvd`}4w=LvM# zH+R}Nxh5$B$M;Cv7s+ev8+4WV!NO`?`o|~)z0WcOKx6wd7z_CCYkWtg8|)g0Z)Z_R z!bWuk|BbdH(Bw_Vc7i%DfSuV{miB3cGKoi`M%=20{E{cF~ z!%x3tKhz!{>RQ1LS060EC+1x!EM2}YU98Q%5A$bR*CuZoasV2DpGl_RN5Jt0$Y1Vv zGGGxf(mHNq{Fz~gl+b7JNKD5kKslmd(Y~k#5dtJ1fR^na7)5zTe{|MLp6L`n=<3Ffyz|Exfi(Ne~;Kp;7 z-sz&RTcXNb;2N3Ti0Ro2te|qiT+gj9kUAf>heva2xi$v4%_;KvQJ-~eTG+s%)!!-AdjJ_2;;dAQ(2N4h9a`{tg_&| zW|W4kHp9c02EZ$P&Xc9m>MEp6cjg&mQpT8LYL00&5??+g5~2bWcDd>RQ>9 zl74)h+=-tuVd0uG1y07zL5R=vufNM@KR9_8ju{Do*wwSyRKOifj}mKKEe*`UGIm^r z9woa9wLcA*lSFxbs`u0K=xoS1mg@*}{u;*Noy7LRFNaU;X7irVrO&CWkizawlnU%k|k- z;RwFPu1KdoJbxFpDJ`XCF7dqwwN`ncSay-Y=@}9^h~fNuig-jx4D3I3Y=P*Gk8j^H+z&49L8Fv`2Xecf{3 zD7Vrx z4$$WBm0FM2aDhv%4sZ)8`Qr&&*=2QFpGdWN9*NqIf|)#l^Kq)SG6a8excgzIW{PWl z@5Bql*3qBtGwkq@=3KyVAwto6WQb_puVDFcTOv^|X>M>@0A1HIK?nY6} zW~iGay8Qgr50=K@xC*4}=y5Sx(R(4+hGH&j5+GR@XS~NokXMV6=>$`;=^-6`E>3Rs z=plFReK70!z;FM%ybibbgzAL=+4aCJw$1q@Y^zC5%at@T-7`V+Q*O_dj@`b#8NoA$ z?|Mncd2TPka+EueyAylBusz3Li;Y*Xn^x!$AbdAag63?;UdIA*9A!Y(NZfSR!N;O) z$$_iHcWGtJ`vd;!^oF6gW}&*$cY_ksH+@TkPq2;|l+#h0%CB#RdK4BKdC+%Cvfe%- zs3F7Y7Gd+iEBbmteF+4(xxP(Z5tP`4S;?KNlHq7$maNBv&L?~skcR-KU^%~NCyi=D zBKH%yX;1SCzTv#`g8T-a@inKElUM9&|DWNVXJJh)JK2A*AR5mHhKp}1gS+m2(u7Xh z-1D45TYvp1(PYispo61I6w52qpZI8=nO?qQ+^1~r?D*Y;YEf%5#s)H%Xg!H--avxb z2(oQznhCzRORrYt>;2;#{i`RVTfzz#MC+z;l$_KLH6t6A@MT2WG*H9@5sm! zHnea~oxd3*YvqGP>}O+xbx$;#Fb3=DlH1!Y1BcA_D2kT#5XYx^OXC<4a~C>#qv>Tc zqBlP}t81FCbh%hUHAd^uvua-TyX5 zNj@eP*i)(rc)4XEW9>|}I?t=J{3^O@Gd-o%T{NB>!1Tv$QV7R`I?}Vp2OAG%K!Hc6UWt~QjAsCbAzR-6- zu{n+5arn!RmmE-3*yrbRS%AX!a074Lh_Z^oSUBlijDN1Bgu>NfQW0;trZY=l|h|{^w`&e;scAKUl~a01F``(Er?v96m+| zI9q#r{^%7l|Goo11SSDUqy1qO$Y*@8!Poh3vzo$3w%O)#7BBoLK7M<1joSMW9V=sX zH|wQ0ECj2RZsVf~7js=6x|_vMl|+!d%&-z0o#YIpY5q`{^D948`oNo z+Y`$^h|7Y4^sg6q#LVyOqexY?vvMw*jbk%|cHT1RJe3kF0OpgsVZ3@CQ@hkEbY`M8 zq}lVK?e5gCgwJo)LsQ^5O0XJ1^0$x>Y}NF*@`*Xjc_u=EJaYLxIkmoedpfH~#O%D8 zW3(3>7%RW`L3Dzk4PxPKLqc8?j=H|%`+)E;ZCo|A)uTnYrA;oqH(g0K#K^m#Z7#sc z=4<|b9BbpSR?3H!9~Fg1kwzd4pKU!!UC$uEriQ&bBfU zn2H#tF0Tpe5Er_L&u%V}se<1ju6__em@=Ss? zn-$NBcipU#FS0T3dXs4Oi=!CX^fE=mB*aw(i>BBPert{mJvF<)-nLeaMV#E5;B)6J zhMuVZL7C)VaaRnUm&R0S(tdfp*RCa_W?SzEaZbeC<6hYc>EeRBxe%ApFQw_7Q7Y$N zTNqd~_1Sn>%#R^-bjW$38`R=?Jq;4t<&=^rABg(0!86mGW9E}8$)z(h}hiYFCCQBBbbEG=+dL) zsvpU)?40+9sP&Pu82DsmZeNztCj;p470fV5$_sOfb7Hjx*q!wT#tr{P%6GCSz;7b% zT2ZG4x%6&(Pb()aMF$H zmG2`rondN|UAd;K)Huq~c>)f9^xF`^6Q01B?ZX9QYuFALrlAsv39c z^2PH>N)k39%jzry{>yc0;w4q%h}f7Oo8U5*+T{z7ZRwrqW0)GZP~DrGEYDvkaka5`RF29 zu&yH7UYy9S#nZkZd>tWs%uiR67?7!*LLnaP{=$iP*HIL}-sYnrX%4Gee=W0+Xc>74 zpXN~h+EOW%CHbJ6kg=leX)z+-(nmy)mL$Lz(zSVIP>>8*!vrcFz}#p}+TBtZOetgv ziMkS6^vik6IqKBtc3a-53{E_1PTEF`XBC#`ci*aMPAuWsgQrCV=QT7fED%MECvr<` zpe`H^!qY>O^((ftzxP(-79~{I@Ss$>29=fYfvg}}WI3TvLBiO>B+&L1Tfa4){Q>L8 zi`!-j9BM%gj73=rKepN@LZ(rEMey17;*Q7Xgz>W7tb~!&$h^V2(ux$_i$-Z4jwO+Vz0B6qzo$QX`~9)F zC}?U{W<=X%rd4UMWj|y6iu%q5KK59{O*!x_vJm>bzf0ZtTIV@siGgDds4mme>6-VPhXL&ze)P zc^klOsRSoVhu?51R|eGn5i^5$6J-y{Pr|w&bRUd7+k6K(COUbSNePAUq229S2b5xd-4{tN56=??uhU;IL@}~E$fkd&Mqh@F3b)4+Gufu z?AqK((yrq-FUmhr)MItnPmS+|sz&@s1RttawFZNh3OI6UA1H^Ub;GpkoSIyae6H(# z(ELFx!9tYV>$nIf%O^J|Lcpg$-L3BG#-%Cuyc*(J@C}E`5@}D@VDivR6{W}Vjk4la z#$)M*tWRNLkXXKvsDhi$DfBtzp zZqT2zxs6eqj6-~`)U>xT`xD^9A}&06URWQ#L7oMi?Yfkn2k!R$E0Q0buj!{9$qK&H ztt5M(>d~`~0C8N+m*TwNdXue@Z?(4iDc*vRmnutQ^f6vp4et*!X)~%BxZpp0R>jM@A%FMnc7Nd1 zmft>p55pgNjCXjS*z7hR6iXS9U2a(rTbs!{1D;``cq!`Xibp__9W*g%#u4V{DF zcYyi!FU3;A6ewL6wIE#76na6_tGu1OE0E-4qNW!EeG1V*)i zmWGo0_V%;RjaESidR_zkY@!LNEU?A?QDYJ6LzGO=<1~6N zj_QNki^BBGNBgsk<>Pz^{!2dU^(gN1{Y%#xg_K1br8~|SS7;Y&}MN>o`sd#Q=xr22lCN+AUJh+5O)1AolACZA{u4_GAX~|?tH@2=I z-?}D>qjx4@nf;%$PMC4Gq1}4*L6**bogOj_Q_SnuV4uUT&+^mlwPugsn+Uy&7Bx}W z@AeSi^FIC#a{z8YRAl6}?6;y~D2$y@X$+SMj|q#OGQ&TPR!cty(UXcPem?0fGwE+t zfc8+!SMhO^*UnH`rTwsB+Hrf`WWV(>GW-XXD>48CnQ4ay-Qo8ljH!N75Bxc~Q>!9+ z=hR4w#Uz5}OQ-u#O5C0Xsv=Bps$z#URW{wu&__mltlBzUUD29`LdE}eDZ_aB*ED>< zsDuDB*-006tw)J@t+|qXQ~yahDP^=4M-F zBnw`mN+oo#myYphB*l?TYX+k31(h(DRb}dup;Z2KB|zPcR#0*t!PgbE7%2!lky2U6 zsHWiY<|EA&s?V!z$4{hI=>2v+P-;`PCe8KE&KXrzUtA_hg(rf&pXDv-&=fe-2e)JX zFsz$js(0gcXE`X$-!(c{4Arn=UOHYu)U9MK>y=rkLu!BtXd3YEM_7*OwfmGr8G9%t zgD@L!&O>7@g4-=fcG2Qn zH@lutR$E#tuW`5i{qwY;6ghuvh@`_~kK0EHKQgc1w)RV>M8w_hwT>Ml=>D4u$3U*u zF42YXNkdB}d14gfqvzJ|=eQz2YrW&lO4aRH^LuCaTZsUK2u-ZYsZJ*nx3DjcR|=LE zDep2uaOm94jn|r=G01m*BV!ZpK4|?_-JWjLYk4fqDYN(I-DZr*{f3`!W=E*X<~3Y2 zFGA_7YkIF!A_%$h)}dVQ5Y0`fGqf9i3N8^JZ(7$5i*Gb+2V@x4rwPRdLgDWu3P-!6 z9dSTYjyb{`9s0u#v5rukkQ|v~_L5@eOTEBJ0VBoy{CBFCL(R-^T}+l4)i95C38zbX zev6Aa@BHz#E_R~fX(y*A8dslI@;MSW)94Vn?edJ`CmZ^&IGpl8#q32Tke^(ZXeew2(YbH=w!eW&jS|@pDzB zk4mXu82Yu8UXR}nbnRHn^iWEwfs{#6D@FNWXRbc2t5nb=WzksELLDr%q_;tzMX1uK z2O(l%lxv?=$&eu2kfJm|moOO@+=p!F{+t{9xlG{7Db8}Gu3;Q&5hW@4$jC`luRJkL zWSA%95F3!|Uopn|A;qDAd-Sf)*Gy9@(r)@EVv->B!F4RRw8R{X{4h?g6j3s4VcW&c zMK?#xi9vsj@G2B*d>03{{sV5Mpn=&c4xF?}Za!oF%0R_=Ntw!#N!* z_y65E)qhC?=ikN?7CCl)pn;@Ys4WSgImyZ4!<-N##2%$^7fybOk@r5r-Lxv@G3+tY z4$67N-%JzxYdME@wH?)5w0{?n2_5gqk!QESwxEL{V{D%0k;jWJkzi??OB;w{vWbl9 zFxREHo(<(A&#hFJJBqf}36Ni&oR+cJ^cq_Fl2Go#a2bXgYCHxB8jI=p2$$xEweg^1 z9b9&#D_CZ}8rS}N1?tb+s*85R#lQ5HMRYu5bZ5{<_&YZSA*NJqM>mBvbSRpfJcvn8^j#A zO6Mdsch7%?2^-jXwNzDFKO@jh)|pWEEwaTH)}&G*l}5 zJu$2k{k*!t`2E)kIlG7WXS5BT4sW4VaEZXk@g%*s4}25VgKqyw_v}1RucpCT^JkQ+ zeLWM__C7}qNO1=JP4rQCe4q@Au->Crw~V!(z|feMqdjOs#%hwG#5?o%U&fv6)J&eV zsodL{K&P&pnZBbZ`V<)k7)URY!#GJEc=Y8vuKiR;LQfXjz2Bz0S0|>4n>mj{YKi)i z`qF75_j5GtG5d9MO@CX^xsRoiXe?oGxCU`zMI%faKguL3vj0949Fg?Rm{q}*C^ z80DCW$;E@hiB@dnx|K0ThsEJh-XSVwh>Ikqe>@locMnY3CpZI z4ab#2Mu>5}Iew|f|8Zd)6O>BeoIAU>kJ*XudCPZGy;Z?`aS1!iTc;wv51lAyxChTcz->CQWto)xQW z5OVU+k($M3t=lHx=`%%p4RXNs03p{3!t8`kpUtylv$p!$!~B!j4dza>;K-)J(-DY{ zHEpZR>Llm(@pvD(w;wjXRW(CekLlhGo37#tOK;#}TUIm$ker!kZ$0ok9PANJwNyVg zX49M<-Ak`^aI4o;Vge_t4i;D!HQm_HYUA*%uB9Q65-)k)C?JOq{lz!W6M zx1Q6hg%AI~qqrocX)|nx-2!=~Ka-#Qzc6^5yV6U}aJyvk49gZ@kGP5*T}KEu?H83q zbe<89cEGER%FJ%Bx4$v{!a%jlidM^#8ihCMps#(HZdAlUk!n6F?I50Xmhfc{VY*56 z8T+8G*EKgL(Ob*d4S=)e`mv$fKE;3C2(!aYk7nW!U9B~i)ghqzOvhy^)o7dxM+4--oz)@dH(n`PK08_y3@*XV4F;_VJQYH9llX3V;DcfmhMJ>1#Dl zVRW&#>*V}@Xd4HW#^8!e^tR|>QRnlv^U;5-8C_A>b3gRl3CbNUGdSq>(y_;AH4!rr zW99j1Y4(a^8qG}hK64)JQOb*9sttHS+(9H5TUAQ~e1bm&&pV>h9WC9x!ZG@a`YmH~ zEsrKkEvY^$Bos`JujSd)MTFhZB`hTaJg*s^N=RhTC4VyfPEPp%zOBzl%u3oN6=55; z>6cQMYb2FeiBm!z|9um`I~`|=05?rz^@?8=-jBbf{YY0%f(SBwGTUcb4rXoihtT1N zW&MBCREsW@MF*!5e)4>jGpHE4MLa(~vBxXv{ zY4IL{o$|vAB`jAqBG`ydwe>TZD1Bx^aD{zbesZJ&)`fsA4Ict2h%NusRUP#Sy`^O8 znXLc@@J#`S3Ny{Ye0(VgKc5kvjErxUC3$r~gjp&7?ISepHZPe3l^gOORLt@tZS{1T z^%WondR1)VJPy)Xbl}`XA)+@Ig2Su};oR&JvXoV(Uds_E@62)d4~hcl4$5R9^NqK~ ztTQhQnvoI(0=@A<(%tT4tLOM+;RedOSjSpY%MFz+OV7IG=~s4TwjCKc^7lh)RBdAt zxa?`r{hHHal2e7z6NlFFH@~R%yb8nNVR9F38&y8Q4OjY_8#UzUWWGX3x#aN$`>7 zH+E9H%in3UZs}x{n{VvIP(PqApVkUzy?#((HUf?r?Eo$(KEV^v^~g>c8@>IEC5Jm4 zF8F#JOp*z)yz^7ECYS}BE9~-^*)=S8nSE^RCrkaVHpNtp-0$7<5%d|6bOyM=f_ z8>*n#9{5!uH*BH1bvEofL4`a^IhM|spK-X3;lpF3*SNOu?_|>15np_=rhnl&2~p0$ z_U^6xjZ$M0@;aGL8a^XGGtPP&aq$*Zu=cK618VDH|5IwLAu+fHOTLXnn{PT$Cxfp6 zam!1XA0d)AbWq%XP=7pMXPL?3h9>~|L>&EpP$x8;aYJ)lOD_=KIjn@@UbEB&NcTBT z%He^==+MzE`S@a9DH<{5}^(X7L)R_x{Bt8Q%=d>q=%*DfS^L1n~)BsTm zi%I*$abHwE#*nz%_~CWTPA`&u`1|7$wH2?WChVn{O+XGZmJpE)Z}-|- zwSDV#$BRUNEFZPjkmp2Bw@!|t8}4tXflwHb8$O~JKTpuUOOxh2sTS}d z2VI(RIKmlRY{JUmE(L{@0?#W0%X+WvB|fi(0ql)JX_I9=+9`!2 z>Eie`@9Cub-w4^8Bfgd&a^xQc^($GAAR|EE1em=XdZ>%lXDZSCSs5qZj|L;2Fcwj^ zuGqA=Pw$ptH1a!1A+p)<(JmhelTZsrTkHwFA%9Smyeg}L9AFDZ)@tx5I@ znl-V|(@Wls*uAL0+7I2&!h^el}x*u~5l!;!5`MsjM=;ppP{GipUHML90 zL_|r_OOLw?4g zbvr#}0XnMNk{=1WCiyI&U(pUEES3|eJixfOJzwGGw*H*Td%vAi-p5#63lKe0v{DAOv-D1B*~PF9DWh z?+7fYM-F@}=954GitBv-y!jG_11LsbUxVD0MjwF}?1Ue^t`SWU>?p~OuZfDo>2_}8 zJQdTi%Cg?p{ddkqT0waE1)s!{0|Dv{i8J(tOI>LqAJ<2^viqgu`oU` zaRHlNq@g`sP$KIi5w$4?5XNk7x6iTq^eovie4DJ{V2Y&~-R-Rd3lJ2x53e3|f*$&L zU!j=+?Tqm2f^QcI4Y2e*>^GRiEE7ojc`zhOa4tAmcSpl=29-wTtI01`BtE5g#u5l% zkrcw8gY$*O@?c7=NAf#st}Zoq!7|Roq1DiqXj|SV+Ur7q7Bv2vP=*9uRfGDhcDRS& z^(qe6djQC5`wko+wEnw0p8)@&kG=St+lA~VqL6rgB_gO;0-rG2M&-qwTea=Gxf*$! z9C9uYQ+>FY~*o z)9qhxh{o1eHjq=xGVi@aOF0jYMxjl$1FjK!r_j~x={jzt&RU-=nA};lX$=!T79tJ- zzI<;85pfH+J*#mLomu@0i zU4FC;477&)PY!-z@0>%RcP!hJjLa6u)+gCoD?zE*oUzmP32>MTKDk}MVww2xfP3Wk z(0^P9d5q&_(Z4d8X15CT2&UCyDY4Ip@oDj=Fx6duHG%j}R{m}oot*n2a&gWXKgEnV zSsl~zB3|Y{ITC+a?oJ&u;4XCKpyxly_eQ$cev^z1;OCTS=4wiBJ&Y71mtb3eE}Y)Q z6(`{0_GOfYITQAHOwv|(GhcS$LM#>Jfd^zykq{qtjs`;XlRtze?JJT&0~60cax=AM zY33G@Bzeww`ctQaD_`^Nm<8Crc$j|QQ2P?lLNLJ#CbIx4P;0XrAD?hUbl%9nGs7boX1|jcZyoZ4PCtL6a{UU9g=^T<2h{D6z zPK@*8c4Ydgc!KdS-+ZorCTrZ&XH!zy1el)6OcUVPeVN>IdL5FZ#&T*cy+K{`&%11C zO<)p3hVbGy3)Z5Q3Zfvt23Ss)$8^McZoav2f6yc(v6J>{2hJe7%RSaB5|b#Blwz88 zXVYV`sZOi5ctK19SjI1ECMWCB7c8RT3Yq|XmclBk9L!njb925BfJ!jt@XtNQ0|Ew*7scx?VMeEzNIlHh6FxpoF;isNm@Z zuEg|`y~l(1zIKYMx`bx!AzTTyrN_GAI?AvOeCZrP_l1#sg##yG)W@g95e1lc9qCFv z4r73XJfiz8nM)*0xYMh7Du!`8qUtMq_v)73MFLUL4jQgj*C+QNph%LVSoP+HO@i0p zz&%V_6Ml@b`+{O0Fw7%lSvyiB&xSO1vo37Ync8WbtEN=c%4CJ%CrL%GNgN~!;1#*q z*-@S=i)+IB2}{0HO6E#R3_9898=t!g2Nh{%`C;n(esbobs<;wXNXt)*?R)3M zw_xvprT!$q7J0+&VU?uCxpXm!Im+P8d<+>sKBY6hN?zUir5YAtkE)6`A#}h@lKJ<@ zjz=EQSQW8oebgi-+F$K#cAQw)k&+k&E5K{;RFHV6I%S)G$L9=36l~oGzGBwzSWQlZ zg5Z*Jf8fr6c|<+!I@{li@4J~KeE+9g(PH8Zy{MJm?(+R39x&IWxY3|>%pmY`RXVYvV{Hg zJc4o zRAWr7bo3)%yd!{GuZz-=qmq~q%T+gTI9BlcAV4o`EC$h1-l+wj1wZ*$D$@I|xCPyd zb$k12Cs+*j;p=LZrukV#^%vOn&#QF+`1F&&iu@Fv8RU%qx%eQ}YI$6*#Xj_m7XQmE zP$^V!)SRWtKP`WAG;LrPur16LK&dfm!n8T8oS(43ey;_ zLp{o!c-h0toH6-IYNZ67)0MIGB?m$n1pP0|e_r=tjM23`=| zKWqxEn#9wvPrGGChILkP4Esf}f!vZXomHipfposJ(8lOADROq9%YtV zJ?@O$2J>?f74zyMN@qf50XWro#GuX?v?KWn^O8WMwa=xrX!HMMedc z!^+vlHLgpTbr_Uk)*#H`>AzJ} z^w|q+g!dZd0gBv3;&GBpY=i6UN;1CUXVGsfglu2z3bTB<&UWWspHaP1Dc&L_?AM}g zWl_JmA`ZP(o@roF%3~&ri6ocnC9a8|`=9bGYy-EQw?iwZcY=?>0{*AAXy4AyqDVcE zEB%&0mz0ad^f>m6BJ{7+bsCz{eztlpv%|YfI&Hj0EZqF_hr#b{b_2b)65o4ijzJG% zi$kAlhaqnP4-qnnNGjh)iqpsy)q@7y=n5k%A=!6#U6u?FL9xmA53HkgW|>Okc@e|4 zwNM*>JCw9jq+>Hq%afP(d@cmPI8Yq_pAYimj~#IA6Ku;uQ1|PngzwyIe|ayo*9kT$|WV0Icxdc zHUh)^&CpjKG4@nPY{+`55gJQY>|_7CZl~pCbsbvZ&-zz z3P5%3!P7G1%3aAq&AO94Imu18H}d2JhSDXX)yd_RmzWdroje9_g+NUkmk-NCvM2oN zuw^4i``ZE-%p2cXQn@RtzT$F__gxX+D?pYqe^B}S%qa_r|K_H{uZW%>5R0H;9!6FD zeFkSVY=?2dFfaR2Pf5-IB_hsl-H*k|1mR4;H)kNpz`&gsWG=6Ufhj#k;oC%?=D33SGha zE=wq>nrpv3lQ!{4d;u*OAEMj?c9JRPi2&w_>vIG+c%bHoNB@1B=i*>noe#q5DVUT* z?A-qyl3)oflxr?j`tMK8-RHO^Ce>B^l$hcbWVCzj7LkLd2U_{WUJpv*t9m;`j?j#O z?i=THWqEJ=RuYQsOjN zd%>P|gV1W@?h2#vY)ZRIN_Npl`$_e8xNsiy+G+|~R`w!pekJFLR#PPwVNn^k^-q$n zf43vJcn$#&k49u}fi*dW3VDSG=zCn|yFndEVemRHPs7?>gTmfzE*}Nvdt4nuwNsYq zy)2Y_k;j}*6|eIuT8Sa2bbG^X0Mh!M56xkf)pc398VcNYg9|>MT<`sydb{!nRJisr ziuyb@m(8I+tU9~rr{25hji1@J?=dQ-zD_wmCXdAk#C)T?vvY#d#{)lYBW~|-;67_R znM`CDq1ne#NbExxu5E$2-e?c=C~=*>!=f&2CTiIS^00gPtPO2#ZY4JQx~fW-{`;?Q z1qc8YJ5tsmiBw{hTl$A~?aM$FTMl~or(Ws42nXB_9FpcxOFJ2+ZB=Jgxah|BAxn>t z4mxP7@7g_GPc>IFotrjQED)C$FgJ=cX1Z4$IVEFB;i7Y4E#ljFxe%kmYAQ{`EY7?F z0+?vx)oKc9C3tLcIp+Ka=fP+wwso9b*UWkaqoKk#4GqfJSF-99Y*RQ~ZtY6!`m5Ll zZ8i%@Srtq7V|pIX0y!&DU|5Ayb5vBvMH%)PX&?Cynkj|h7=9g8H&ADNkEEH|o$)*t znBvbYqMUf{Cydm(lLw=0Cd8TQonQd&>aE4Hbnci>i&Z}qm}_VDVjs#6-fi5U8Qg88 zeJWxj-Vxa{#@z08hf=yRj%=^#94(HX5ezJ3FtdXg(AJM|RGsMYSC6#J{{RHC;?Z9% zI~_Uh(Z3R_GFhdsh4bYX1Xyqik>pRkDB^~UVUg8I42-e2(-S5-VldTBO<8hPWB(Saqo9Y((8Z$;t!iLC40;lE*1eVtR2S36=B zg4ctoi*hML**^oOgy;w1_COOV?Lk6Us0`>OtS*@eP%|05+w*ID8yz?b_mYSVbG~smZ7;TWbf4?`R;6bT3Gp2KoQHu3JWBkhyi7ne;xo>a|H_O$P0GHS1ngC1SV;m4B6vH0{_oq6_&}ba3BUe`Yi5B(*uQU zO?EK->+@4m+>&3!-Ea1PWGJXegAAkJ&(1@wyiX;#!}eBLttKS>+dp8(edTCjh8j3` zG|@H~`ULU9-)C%|fbiXsr>C^oll?$F|A_7aZW`Ydmn1-IF*@xbi_K%|bt{Gu6m5M@AwG7qSH4GRJXF}0Gedzx>D_q`sS7o6 zS-OVS?F5_LMb3_wiz&mc@jrTUDJ4!fE+Ab=gEMyk_3AiWe(yy+1``cCFU9=cr-BAT z%&coz&VxX$wO*0g%xDUpBS_l1XSB7tjZp;4BF(~iy+ktMwYM4=&Bu6KoF5Zqbvp=m z5%5&Dg9#NB&U17u)GWpqUi>n(&h{^7j)$tleOmi^MUzWZRCR5tisPcNx0RhmYbKQ= zv{90o8oJ5Ll1W+@Co!%j!3D*(l9q=w6u+facY3V%sI_tlRn=4B@bBuMk%Qt^Ul7IX zF{0>c80uAKc^-h$&keKx=FgUbLr2hDQgh>vcp~2vf2?&p@AR zH%$`=!)%o++{l}m?`sEBq8U}Rm~Ad#*YDraoD(ex*r(Vrxt{9|rDk1>;`P7olzWCA z4?R8VFQRJe4r==MzqmTV3)C8^+8io~xITU3`bVl7{iv?1?BTQy1MSJ8mYV~lhw9*N zoZg8t0ULiL9^*c6>{}4+*4Md%>_)B9;1p16xXyaL8)I70>ZP&^YSGfMzOIevG*e}0 zYJHbkBH0J3oYmeb%|SZLtelqWf)_P&LYm38QVgLr%v@Jh=k}%EjZ`Z7lP7t`OHVA^P?@#2$7lJhJ^NMw@Hv>2^Wv zr{4L+Op)dTExP#hUVg}N9i^(@)jQFS9RiXnD9uajvAWkyBegl*ncniOO|*rr5ztfU zIA>Eg`B#DLHxGjkk1TmW8olpZ&5f(W9fm$nIHq)rmCY_L0oq%wv|ckkReg4q6&tb9 zjk0VwRAu>_7GrB?dYrJ|k-a^mX*T}=4#Fv>j*3hYQyQ#x53 z(QZoxS5+-_X7uYLy+$i|&MIrFpUM{S2!_vLgfq|T8qu5T$L6xWTFAGBVgCR|QrX|{ zGHUbDTDG3EN-XTv=^{R+n zBSFfk%K-;P=W$~=KSD?KA5kNHpq^4Y2E&fXjkR6d(&uvy!fR!1NHW{8AUbd!)`s)_y&NR~db zEmav{1oTCtggKpuHRGsqiS)NOKmw8;PHzQ9vWc=p;O6FH(>j{`TBuJ-=yl@HxoI*d zpH^Yh;gWCZ+~XKN_J2jG*{!KXhJuh$^ zTndHMrZ?!an=`eJh_Z_icW2m>^IL{Fg`LNrC6(}{0NZMjz=NW+_<()NQ5ZV%32bQ; zc943i+)-PLT7=>|MTg;`z`3$WIWzGqC5mlrZChO3@0!AS4kbMX%M{uw3^PZ|odmC#MuXlMJuKyKH9WAKOi*!5O2$sHl#1vDI__(oa|5t3zP4xMhAM zcZ_D{K66d?gkqBjprJXP`fTIdf2uqJCSjgmt#&}33=uccw^7WaLuLr3oL*OCXD&%| zM-Qv1>XPr1iu5p;QHQ!2GsBuUu-p-+&1)i* zN0>RSHyYhnnik63xpcMD3Rp(gn5|2Sw*LV0x_GTN?m40pLiV|bm{|(!D>FKlxy0q<{cFwXR zcw0OU`*6O=>^R*Xl(@{|+^5uh)|x2WBW_cTGf}Y1&xzxc!sx4M=<8X`jS5^NYcWg% zJPm8NHqsd#e4Yg!tZXn+zDKpKSxMz_&hf00n=<@@ng*ST*JJe}BVOCPmTbP{YKvjz z`pTy`j+_Jx_T{`W6Q-bj+(0{O&pU>S|$+& zo@vc0QR<{~dGkO--%dHTQLDl!Ya3~xY46~EC_OeIU9+#<)Nd=W z;lcc5gm?7;YALEItEq)WEUcOr@FCyblOSI)#Hcl(#AGZQ?&>`wbme{^d(^DQ>Z!Xp zmKyNS+f%!EJV@dZQaYv>+I^I4cy%TvhgY}sN~oqkV>O&T$5kw_gU9BD)?n0iddmY` z@3u4}-l_^rTMhpJyYV+YpRud-jrj3K$XCr|r_B0Cs;Q)YXrAHS$rq)^spafcw{ZTvlk|%P2dt@M z?%izlN$X{Ofv#p|IjE_aAb6CN9lfW$YBaFU!sAy?( zG6`M*JPd=MgMR-21zTt_cTb0j%eQogT!W`8p}5Fon3fLU?L6We9_}kOX#CHIZP>iWF`dcX$PKoc!)zfNF}n z(fK^51KX!>&B@gA2JB?=eW|B+;JX$DyDNo4J-DC;-cluua9?RKct7~KhrnHMH`~bF z_930=*uQISu-5deKPHsgLM7Wt3HB(ZfBiuLUk{W0v5h}B3V50EB_;)~5sEnRHU9u} zLhLn{ui6jefP5~QgUDmq+Sl;Sh{}Dzs0e7?yYhI>{{T3X{--JNuSewGm7n|!L*r#v z>inHS%k)`a@g-W?gS**^N`3=#PS3dkYih_cVbuA!)xgh~QDWNdwie!%Px&;Y+KU~e z!$JL{{VwZ0t#`w+uB!sih75i0;R%#_svHt+H_`|wTMm{8<6KBP-?V)$>K+lm~f@==YOZKbU&x3BAv#tLCYV8aE z0OmkH=uzMfA4cNtJn=^lgF*qjHb>C4uKQS=r{oiGDfc@an=SXXQ=frLv&}!@Nv96A z>t;U%TLmO+1tX9A_x}LYQwi`+&yzYw9wn2%;^I_vq($V;le&^e{ps|Qh&-55-MR`X zAAgEvTX#N9DLH?#@9!Z{I;0rWA0Q$+L?Dd50n1@fsA~DU9fKBWAbM8C|Q5PQF0%XhP4+cO7!M4$SW7ZdcJSaA>hs&;?Xbr^fAztyPP3MeWo>tu6nBw+T# zx;Nmmo=PJ>LRCBe0D_#4^A)hi4q34`^ka|xD=*}uObPD)0PJ(G?|D`K02H&kQR?9F zoeL|YC)~DmV2zu>o8KWo_VuC7+1{qTgr2qwPfmg#^L1~5o_CLiK+9Bgd&@1AT--VM@a$rD*TVa zU51;@_Aate+x~+Q1LA_?wXLh#ycCF}jK>t$2TmiBFR}vL3sisjNC(6qc)tp-Yrvv{0-FidTqC$QpWVY&P=h@l^MEKqfY<3~b zS%Uun?$sb4wwLcIS@y%M=ej~WeBm6}vw!$+{$*3x@BPe> zbfIV5R*P=SevHPmGBRVOFJUbg2QMOmY%~UakEvsQaX}TlNGd<$PJ3tTNB-N=U;h9C z^{CqMn||Ww0?GlXb+}xt#v~mU+|#w~$o~K|BFDb^txnkXO;>dQ`-;EN{it~}ltHsq zGiA&fLg!e275@MPJ07Zvt8Q@FV|Id)KyS+6*KUT7PCB#uw|C2lVotp8mD3vyQ!+2HJW=`!=UK3#~(Jc%Q+(KsE$11G3fO+VDGm@sWsH?>{GGRTkJN?_>{vvOpVpejCXPP zm9)cC%R88M9kG}e6C{-mg7Zo1%{%jb{E=Tiql+^jW2XNA%Wa3n51OM4gEOjXpwG`d zpu6Cp`hJD2%Sy@TAM)bU;_EBx5onR9tCL1HI2rMG#HfuhCp4~fhxgF)i`L3rx}a=h zk(vJhfc(@>mlK!QtYkgVv+;G%Ljop-=-m~0@d_$`uB?JS=e%Fwg*y!MkN1j-nZe>D zl;!wvRw2RZqCJXu!Ri{Fx>KFBbX*{8^+*0(T6|q#oAjN0*|%7B>~b?d@E@9WW-Eo^ zha;W5sr{Tir+fJic?d;DFNxwM!X~zcAKcad0OsZH_@z9j()DH|QAoh*%tk6({;n2w zkAOEm^ctqJvbZ_0%Tmb5_2-o4KgtMbQbUKs33JbGL&fFSC&a4(pnFzTp|E;93X&-t z`C{Ka++QbX{K~Za8xNC>9Dn6k`y*W1bzQw+PerhIU=+aSYow3CkX`_F#-+NQk9hPI-j0O6ADFZ)`PrX`ZC5Fpw-Xlo+^pqhE!ztbCMH`2E z0;uht!_K~E7x`?BL2FdQ9G;Wnol(}57bsK4k;n6wr`He^)vulO@{1Z=< zTt(Clk(fJRzX_kMznA)?8#<|=qNjBAQ^y2j+k31Qc73UythziNmrwje?XdR`%?-n; z;m2MpD=XbwIoBkd8Qcf<5!O>O7WP`2f+NBoRZ=Q33FNJx_xKM1{e*HHGCnvpS3IbD4dg~@;ol*vsC{D5xhbj9hY*f0XKtq*CAne?y zfCm)f>!2bqwKT$}(Jj!WebVj6dY?H-q5>Z_DR%`+doIj`qTJao={&hBN)(H9yL42m zuB0I%+*e!$F|p#KbYqe#Np$9FRCcm{ZPYK6@L(k^n=iE021(r;U8wYI@j5LY8%`+j zs9|p*_binwPA8AXc(I3ge&+sbbX%364na&(5*KAoPFe#p1VL-kmV zNd7km51J^sN$fmg7}O_OV3>aUE%zx|k5)J9u;}048}0Y2IYL7pG+hmt&7`LNbuCOk z${qJ9;@S)*PBo2>{{S(izj}ni3XRx%9Nk#odRl{H5Y|yn+r?D`o(}~~W9A&Q55TFN zsi%+ptC@kA^@3U9Ke;I%BchI{wv@Dl)BscCP<>T=q<_q4KQ$n($07R0QqDX3B|e~U zRobB~$0}R(*h~Cjcq8X!Gd6;c^|4gJ{BddV3Ty&umM;LC4Vj05VNyei;q!Wxk^9|c zanZ*$Go0C2_7V1z47SD2WTc)m>_6pYr&%qVcH0A1mNo@7{?^S(i7M^=~FdJs$tnzWn7l%1avJtRavn1 zJK0w=uDU=dQdCpx1g>XyFUd+VDdN(ipFO#RK`_MA#XW>kVic3;ACUAqDabrWtJPAQ z4vJlJs%8q>BYJsVZij+kX{pFmILpUorVV<8LK?Uy^&hW8qCqM|>m;%PJI@7@+AK-< zjcCK^wT?4m`|tdR_rVp~EL`FAE`}#sc}AVx>W0r@K5o%hQK=(N?~1A8$&BF`dvNL| zFnat+??hW=z_rcH-&HM?k|)I1D$j*pAvCo;fY;Mqsz_^UX>@m_XMg6c7}E@3@lUW> zih3&M>*(Lm=(+f0d|Ko_T0nIgC5pDHjn+Pqoe$=o@8B#tmRR^X$HhcMjrEv_Q(_eL zdS=M}kI`5#w5Q(0*#WaN?OWunMOi#-vt`aZ^;Vxn8{4X?{5LPFBZAg)v%GO)D%j7~ zwZpw!jKwQ`9IZbj3GmcK?O(+qoR6%D!ra!gm6lvXX-& z*`BcRMyYD)>fzqg%Gnv$^HmwzmiE;E#*X73!m0+Bd5rtYJm7NZf^C3pE)Ppw{Wn!H z{LPcgDHV%Be7seNOB`Li$|E4&?zWuPc3q>Iz3zi&@Tu!$X*kofb6E?kLOR`mR)l=58He87b^|=&%lv$2x-+tksS)V5|2EMWr#IPIq zEs^57c<$qulf@$%$lGSMp{dC(y6aX!%)}W(Syc&Rp7%dE1H5%y?>?+Ik=|_|*c^T3 zCAWJ>3E?FI#x*xGFe~4FQnm8GnN3;a3RZ5V7+T<)y z=VEW0vq=^E&jin+WUM)>rE~uPbAb3JlsI_?lFfEt*SISRrXCv&O>H}PM~`~DC_X5$zIsQC3Iw+G$Z;br`l{*yR(PWwuTe>>FnqK z0GELG-BD&45ueU#-z9BN?Iv~Y;mCWeu1$MXPW)-|HzpqgroRaejIyl!KBBPS5vt!a z_H698;m_WPT_O!avIwamr*tfAd$~sqIHE4~l}tot!{+W8{u-&{cJdZHyNd!~^p{af zJaG%X?Fu$JdW|8APqzI60?Bh)+qu?I3cSzD3tb`ZQ^kb?+NpMa?g3toHbUDmtsWX6 z-eu()nx-1cO6eHZ2?k4aw<5Cx8?6t`9PW-mrNgXjy&KAHIG1JFIO7br_gQ&7ymJm= zb8>rjVRwqfvufvD@i%gJ`BgzbCqGW9;#`e)YfC85Sq|5rOK?4BSa+%>so8rCwu(17 z@AciKk)X8t#*WK%Ri8V~hd_~$_HLZ$x_G0&BL;8HN@CPqzVwh}$n4J7^IBXJV=4x*+t}cL73jEklKeWIfz|a=RZI=+J1rlHMsXY> zmXBp-rJ;g2Lj}i({()Cg$2nMP3<@myqo;52m7%7>VQsUiqN;){k-hCRJX|rHZOp0g z>_V3iW48}!e0n@^BgIQX7@~oWe*ikDpn|gz){36-k#RHKW`2JqdbS0_DM>Sej_cAo?jX{HiT z)3i5<8mb>o;kb4i8>?r$!G)PUtvi(WKAUVJhL~Bcm6tkt%DygOqhlqSc%iYq%dKI} zdAz%8Sz9xp!Eol6jt`O7aPPMdiBD$EVmPD4W;0tPk0RtrYct(@1g>W|_2qvO+WI); zkkUmZYstOCOIxpc85_2rXjzj#n9`mho{O{3Us(LSRf+MPoWL2njsA5rKUW8LS8zb_ zJ-Njz8s<{5lri*UuKReEmCdw~s>7*ia4O1rM()`8Z^M}!N&MEx`k}|3tHQAQx5tlC zPb{xCnXh>+{8zf^x?{6xW#@d4dv)=8BJTAQ>LZU#$}Q~D9>$BAy2FSKyR-oWt;FeQ zvAAj+`|kmW+dcdc?Wl;HDUvfy)UA2&T^t!}BD+rZc|~Lzo@ZC!vuF<;8Mf z)QM6cC}MHtnmIa)C|VWlN<7p#{{Uuh`JpDVF`(4+3�)>pi`{iV4P%{{M#m&<5=q*X{^6prW{wTA;)1N6FIH&wa<$>se6jA? z;!otTd!7S;8ZB1XIJSn8oI1plDexRFvP8>k_O)K0#>ZIg=47$vkrwO8L1<(yQC;rS zJ(O=2_PMUP64!Y;f;R0fekCKl9v?_Z@i+Ve%)QL6e3ca$casw-_pM&fL*|}L@e0uG z+}M>*o7}h#z&7XH3du_gp>5pO+qrY$=Pa^a^oi7P4_88%=9rr6xw>^%aO@_(7@S8% z1E2fnMy=KnuoPH!N%1Ls=6|v5g|75cF&It*ier-xGpBHm_RrD3)p`a6uo!+EM3o<> zRQLM71-8O=cDE5|F}KYrx}7xcTO2zBqr(~K+q{3~h|on9wJK-42+a@QOrXL4B8CXH@qI>WsIpJ=Ko zj!GI^f6SXtlCE&-s@LYPsFFd`gI0(XtJ)e0bCNeYrcROSJ}7*ZxTSZf*3w7atG+7L zJ{?a3dkkn-009OO77on$BKrdQ_vrTM^&R{{T6v zc_q>mL`FiLv4-fKky33$1(TB5D?$=-dqUvVD6m42x-eT~&0;o-2oS%08*<-|c<)v6Y%?-u&ii-)&8(qJt z*DzVcc7n4Sd#SMYI+~RF@^e3ub{~YYoxPT|@8(Lf z!AFP1X&%TxRiCvGM*ZC-EVVBj!)y?-h^Z~bNi>x7jB}=_jxpY|PpilAA8I-{{%fMy zxaEF&sb#5uJG(>@^!rsp$8PDE`l&iIf~f3A9j($RqoRlHo+z9cWN>{{4QKMJanYOI z-!%LmhHz~2st#((*=Kk0Xo=Hd6x9C!R|7|RMT8-|64;Mr8--N`D|nS4ipqOACQ?z@ zBCrdzQ*K<4LP9%2(lojSCg-c#Kbc#Cj)1o{O>Ar(GbNUA<{{VBNgNVO>aoOiMg}Fa zR439^L7Z{U@S>k@wn~+{R>%B}y63#V^uMO2FzHVg{8v7W@i$hgwH{P9YCR*CS-cpB z)%j1tW@cDu=aS#Ls%J-C3YL(#G_0xefHL|#CQ_k0bBa4yaF2_uwU(BfJ=?y@P20Z8 z#k*?umQPlSIR0uE?&6Mnw103Z$AUxH97;17` z1~L)NP5@(9GeoDo0Mn}N6HI}sGa)_*2NwX61j__zP+%@y(hc%pPTP4zrG(!I_eqjc)6dDNSm4HF}u3=nCXF$$e* zd+42Z@>7AW`K2v4aC>Z)lF2ghwb7r|@LK#U5OkC*A=kGRo5Wz;RcGbEt9T6NI+xSA z-nRvsntwiTHl(Pkj!3PUL}=vXpXP53)u<^H;y065BN0Udq6Dg2llD`+BU`45D%TxL zMq93BS=c>1zNB9j9`<&(*0Ol7sg2q@;*Tbhn_=rQM?JWGJbjyHIm2z@q?^fp(Z}k+ z8}HIq{v;+tj8(%X`WmOx$!vx2yD7JNw@tNJtvs2=D_G-ecHfwM9dNU~{{RQDY)4{o ztSN#@`gX#{Xv3MZT=BMr1eXbZR}%zed=}oPXs5)S!(CYU_jYhT=gbwbo5P5>e=!Q| zSnkl$pGREh+pUk@wa&n3CE+W5>a4pg57j<9d=++sK+)~CKM&Wz6pin1I|=L(lY6tVc)%12`uC0lbgvNk`VK;^;@ zHbn8<)lt|xJ(_oWon=L(%tH>Rm5!d8Sl&3072TcMGetZ!Sd6(TT=2m&_(!ik zM$Vn+2&y}$H#LYBw@&qA3&dMQ?d+6on@%t5*Hsf84Xje(Rn^_5H_f2^w1~wX6G1?8 zHNJH}+na~MS7y~gH`m1{;1Nn}Zw!(zM=W>!^`P3oj!B!ESJ{C-dmMT(yg8JyMdw<_ zD_`KQMT0%o9io-WLJxeemx`K_k9_-{0U3`8Y)rHA-Ax@c7|k21&gTz7W{t5j;mR>4 zQtt#r!6TbyW;$>}<&Spv-$UM`w$3YWGZ$t=DPsZ~6-pSv&16a-TNAFGt5-T^Jr_a& zZez<;YIs;Fvoqgy1VD!C(N529r9WBH>RHZQ!zy(oMbZG?(JQLjW2ti;$u!i_Gzdq6 zrbq?FT$I|F4hVfyn-eo|axo)jkOt;=!9w_(Ca0Q`o&z~_vU-DnPH^eTXhHKr=(XZH zrh{hLSQ2kD2dHL`b*^m{Y>gi!TBd=sH#B)e{zt`G_HLKInxM;1hRX!o$Qm_TSduCTMwEE3ztB5)}Iu}YE;HUxP zwOh#q8MJ2P$O2+}0ydDT6@Eye4>Q_lg zIM+N5%8Ow5ki{_JDRrigNe4o$W<>M@VA_44!+SMNixYr#?7!lU;rnNT;t$=)E3o;_ znJT*@+;}Q)iIRHF_o_8GJTtb=Y;q6ZZ{m<`#qwunSF@-|yuPc>Bc#M|c{5>^v(k^* zp3@JwqSTvhQBT>%C@#^)dVNQ|r}IeL9w`+}I~c>UMqY}sl78WJoIS-}EhCFiM6fBY zkD_wx^+4LJu(i#zkVoN_SY=DAFo(7`@q8!LkbS{vi$j{Ck{-$rYS>mi1}OJH_PUm} zzPu7~@f||Gg5p>-HH-z>nIk<(nWLHSRq1isj3z-#j`pKEM_L=%{(hb)4HfOhaTi_1 zq0QBVUi_18f-%rF+;}QA7$qH4ndE_?BK@6WnxANJYVKM<eQsad>yMRZ&a_5FKLA5y@85q%gXsjrr-Nb1lg5M(Hv5sv_KC zaJ7K(e-WM2mU zd2_vtb==0<*C$09Hhwo5Hj;DpD5O6Uy9oaPbH$|VGe^Ox)HZfMTzXOguTtx%@S|;> z#N_K-@$L-@O+>ohPNP3)Oz(?|A&oS7z7G%l%4U7V4XpHDPwCh{Vt#H#ahCr8wlG+^ zdE6u55J;+}GkHM6+J9Fx=Kc&R*k~W(>_O*)Xl;KNCPoaKc*lK)RLSzPeig1gi@&8b zUoub~f`&d^c2U68uzVV*P^GrT3`LxXYknC_4>_sC7{t6GBkxi-p0KBl+de*=`7C5x2t(g1?KuNQ%x09wn{$%oh)a6c%#t$bn zK!4$-f6c{9gt*7#+K`XdM>Eg7xkT_I@^eIZTMlvf+@=%E+`da`NB;n0N%)1>=b`d@ z15Ye2Ke;X?=zN+(8?+-0XWSFEy3uSv?x2i(f?)ls^jiy;g{Y$+Afel1yV%Lw{{X|q zAKa(g&quPdGo)~{{{TvZ$^b3E9MJ6x;vX=S4)TE^8#Odz>_R?aH_8AbX66H=L*^HG zLKed2XWEh$e8OKSANNF&{{YR2p8^#Vyr3Iw-0bd%eapO}X|uDA=*Qf<$_W1eWysz} zScl9fc}M>Mxavn&#y;d4O||Uod%^zz!^S>AKWRqqVO|cOp)h=ck8fT^%}(B1xS97U zw%fC^Gq;E6@sGI#hZiB676(i?f9X(6L|Y9`3$1K7@J`xkL>noT{{Y|{{{W?SG{D`6 z7UhPw{{Tu9*ZDb&4<*2!amla6d6amLAZhaos|$URz%NkPF3*y9&q!bQFDQ>pIiLA= zQ74*jPS}T-_FlHA>U_&T#FB#TZZOKouy|h+;drfSefU@cG$_`|`aOoK{{Z9|$Hiv$ zms;Efhn-j8vDe*OPfu6b&30adcf9`q)K(Gxm&*<)4=2+Pa?w=c6}WB(gL#y#k2@Y- z4+Gl1t0RC_Nr?GRubxk?eMA}h0u8_&*;L~-x_fPQjlr@0JOKPkY&(?0;K>!`!pGJi{-PY)odg>){^&R?o^I-T6Jok4Rjz&g&?D zhGS&oclZLb&DYK8^zaKmT|9E_g#()-NM$soZoHlY9vLrmQ2d&+`*#x?>Cl1o}RvqkTV0=Ey!}JiKEL0&M+MbzV_xr;9f3T8K+8 zri1+oJ>@?C0N~7D{{S!_m|5M81N?bjdRIsAvHaA&QLAd5g5wd%E@*t>*5)k!scXpm zHM=xN_*!55=6~r69g2YODb>TJ6kq!8wU`vqQ|!dAneB~+rK0CSe4%9PoX2@g#0wtR zk2HuM9QvalbuDJxpZ0D&{{YCR{{TuEuw9*)oc{pul>Y$wQ60SO;duA|03#p$Dwf0l z0Pd`p{{X^4_bLAXja>Htc7%WS#(?z0kKR_VZ73No6WiDWa`)K{!sx2;+Q|TWV8Wp}82H;_{W%^% zRycjSXLE}9e#Xg&Vr;}j`X_Syf^>Iee28FgbPs=Q_{{XbJ?ID-5PXxI?}ZYZy3^>i~d=!_g+-^WcS5?NvA~j}C#=uO8p45dLHM zAoI4r71t7~ynnEdvlqN^KJuQ1#wzxTf|R;CZ_}n6q4h_L_$*um(@{#M-k^h12>dD+8onCX~*;wt?k&v*xdvq^)~()Pn{ z{w43!pAxSK+sQo@u|k^)GEKdyd#8UJzkv55uA+>?XE!@7s5}#+>;&@SmWyn)ZV@gU zH=SY5b%v##E%+k%KGH*7=qla0oM;K)RpJK&!3V`KDChLBWsYI+C^nJJA#iQhR}0!V z;nI1YBbz5K<*JTWO$e4Jwd_37**kQ*D(kLH5pq(IEt{;m$y1TAWtS&eDmDyBVx$q0 zow_M066CIQQTp@5&ldoy&5Gf0pG%0-Gx@@!Si0mkO{c*k)6aAN00Rm96?3)tVEU*l zCh&^idXgAUXh2=Hq2E!1RiFIF289>+mlt=bgTWtr<-g>pw9>RL%CiR-+6g#1jsg56 z{pB#vk4wiCb3cKB2d1lb<;A&McR8&c?pY5r#OC_kPO<+0&1KHn`0{TmswKzD zqSIRGDdTPAsDXpM;2~JnF+(02=&9=>l4%XS8?Rx^tdz0gt$1Y(6K6lPe-E0DdLslu z(m9}#bY*}EC}U=8u*^ELdFv<1+pxP&0FS?GFg*IzKitFlENu=RWus+GZnMuDt5IST zQFdynTQq$~9~5=`hMW9ffd1Zd{{YIJ`6N4Ef^zet{{YIIs!~maVh!{X67lS{=bYJ~0#1Hbf^GW_Hq~(R;U-bTJ+b}@x z6;#9dlv3fXh~?g~{o{fLqPg0paTrBqyWG+EsE*XkPiF>}-SUNPv_kd_xmO0yxU+d9 zqmQ`pM&Wn|{{R$LdpI}7REKGCAO4fZKly+3MNSma$0+emhX{Pe(6OX*d2WeZq4){^ z01@J6)xzTU%Dd^@VDO-%9xp3H{vWrkD}TzJ^b2{v{*^l&v1b09$3O72f95F;Gmjn+ zP>+x1wF3cX+j3v<`%mj#@=LWY@s#>kXb=7je<@8kj?tgj(2wLRR(5)%dXljCs9l3s zN5z-$vO6Dm%o?quKk@X#{{WPKRGaOiKm8JC{{T=6MCe}$b7W>hlFIfjKsVYV-}}?y z01LNx>zmreCI0{*{E_yB#^ZyLXzb7Vo-BQAQm5n>eIJQ`^v|p#>qZ`Z5=!6JnD8apS@+K(FEF>uql~JJ*`S=fH-`0l@qztle#%08T01XT{xoA zVztzSGP(7HbCNkv4-N`lm87&X%;xbrcv%>$rWbRP(V0giRm{C6H&RbR@p0}d*`UP3 zZrn6eB&D*uYmZo`l9=!yR>X< zC(rSr{{V(R$bU4SN#i4o6vyI=WC=H68$H0UrSVb5ikSZZGGC@~A;%7g{{ZsTOLmaP zKFd?>2Y~OVt4AC!{{YIa{{RrxbHZK!0M$ajyKmV^xo1Rf7llvpB*WIiWKT89B4Meu+_GqX702xt+J3J0Aw-C~#6s+c) zXxNVfKv-QQnEo>Qnuj+->U01aLFK+2g4+40Y#=P;*naHih1m$`rGpo(r0mY!^FC;$ zMeJcZa8pMpDz!ExNm-*`XY?vl5oyd4C6v`0Br9*8ycQ8~J*#||S{-r$R5U1a;%S3tRHVm+p| zK&OuusHJafJ-hos63P<{P5UiZIVvs@S`DhhTz6CEjPsCi9^_gHDXSTpmZ~X-@c>7- zp%UTL&dr)8oAE=X+2}#f1K$g~oV1*g7mhVWeU_LdhM zmDCTWKW;Z&t69j-@z^T4MGZ|QTW?KO9G%&$eg#Zg=AP4S;sQCCk(4ILD8uc^_s z)omgGGT!#q{_+6uy|bHFi(xcWvs6}B)Z^HTJxSi<6+A8%^%~P-{{UCPVsTBjs;FpX zD_v#_G4eaIEIBlNTZq+HeSGf7I521eub@mf`$;Ir05~RI+*FSBR7a13WYKv)n=Ux^=F!X`{1>5? z`b#e@**S$a(m+m^E7c|$X7{e1D&*y!c7@{4a7g=PPR=;k%jN0=9n2#?cJB zLy5$Chx?H!@4$j_X$8ZgA2u;g*W{)BE>HP-w0OIMf>u}88`V#^kM?o8+IN*nU8=-s zDMRCt`^gAChCb83A@3mt!(_xN=-AH9By1KZHfMZzB9ydr)b+R$<6O|%Ct&Ewn&P*ifiO#49_##!QSK-657goHo37kQO){%0-KzQnC+k~ z4P%_=SPmrU5KKoBhFM{Xnc2?p9p|zZGQVmnYfoj`4sZMdOcJh1E9HEScV(9scQCWL zwwP(@{{TmJ{{TpSe&L{2qiZA4jk0r`B#Jpl2^b1Rqn`Ud=?PrYxRk&}OQ(w*d{pj? zZ{r5%xmu411^Mb0f6rXH4g;_c#WJ-}LWOC%$rHTl5vc0Te=3J>9Mbp0}6b_hv*y!Jy4S3i#<<M9`&d`B^R!5IU4zrHFAHVV4TIy=3vv7*HDHv5sv zYFKH8SeVuhYMv4@KDH0BF+Ss}4J0^aG&<$Z{{Xi4T&sXta#RzN71v0B6SY*Lvt?^z z=*<5B1>!D>)Xa8md4j%yo*_LAOfKOhZXYG!FO0X(AeW3%*urVkDaET&wO&H^E z#H!Ue{S7(DCErPV21nW?^jc$w?ayeoyCOy*ie~vjFWgm5#TX;&o9TQXb{c zoYSiesyr`gqpZzEh{fjBR^#ly^8WqDwtR-tRa3i+Qs3M{&0=_THLT2Zc;N7fY}Cd& zr!?veA%y<`4wqTa3d_*j;xS2{Ejp`FR9&}rP=#Vx_8*3})fG{)P9cL=Tfi*i_Nua` zO~w%eVnzS8w$xFVML@^a$aLu6iVQY-rnW~- ziq<}UcRUAx;1W-ZZ2knyf&2Ns#Cn_f@KbVWjwwEn#<3YAbkRp0G-uQf)8bVDJ`q`p z&lV);g)};x*Z!qibkkIvaMJdfcDEXDr@r&D52ht8Xgy>Vpesn&3EV z1;^GN%YGczTM^nEPZR$Dd8%yM;ip_pO08Sxvc%cNIN< z?4B;RWrwlqW9Y5XSX5}8ywq@z2ciNpgxTbYEQR8GPlRC)-PG1J&-)mCBmM)2y#<$P z@ytj5@1SNG0pT@XueVUa!`@M&n6;9*kVNSwd~mR8OWk0zb$f9@By<>EJovQ3_ARt} ze);U7FTw>}o9t4eTImPvopz4~ivWl*vBtp0F{}V`(KXB>2UTO(lh|vgrlqC5%{&dw za6Z$|;EP1owU%pi;;0gc#C;Ge&H0%AUYEtoUuo;Em2&c(&RmoW3%f;Drn(APT`S(v z81~Do-8;&9D_&)`le$f=k~ZeaPZJ{}Hh|jY40ThuUOOZYBQVPa>sq;Z)vHj zaVngYH22U8_ji@9!gd-ctv)FI^SI<5sPS0gj+$JfAB13aHLde}Dvhwh4zh4)9p!BB zy^o=xcJ`z6s-Ca)N4XNL$8d}#o2I>&93zWV7HoSGuFNSQZ7V-${wsWNWpcHmnn<9J zG_PcA9LuZ_N}Z{sjJi5DNml;=+|i@nQ2zj-olx-l%86=E@4G}sDmb8RnAU}?nku0z z_`W22bNQ@2BjfQYX|QT|dwfq<>V7DuPKnJ5l8QK5-VIY)$yyWgT>#Z1BPDaUa6|_RitSc;Li6RNE9?x z7?n?-Vv_G9_9OOK6|6T0ijke2UVV8F5{j}W#;!$gNMnEoj)700;FThzTI8u0Atka~ zStCkPPz!X0$u5{s3v}Vvf^JfHH9vQixukPg2Ul4|ryy1}hPJL3Ijzm6s|t76WoVQ& z!SSDnUWYc&;M7^S)r@ff=pB9w2ae(wr)_>WMSBYY*{RQzKEG^eKaXYlAke#mDMvH zcak{}^E_6y*Pfy}X!-|gfk%d7KGrQD?iwk6gsGF)#AQFsw2ILDcorPjXPT#cN9`W2 z$1WEGb)E)w?Etcj*}U4xJn|`-vh;)2W6z6~Lh93;Zv=x^RYm@5sNc4mKL`9({2GBr zvy?-HD}TRwvdjjVzO5?4CxcaY`9h@O79BjD`BTOa!KUgV{Gm)R z&>QNsCE#c|+jms&tHGcB_^6K8<5GQI4$fQTNTb@n%V$Pr=rI^wKl9?ef||L_3LGM?|1c98L;%^+5U4O_pfe_g9dX$ zSp^%k(#>xVaOI6|Gv3Wm_E!&1w9~h71tw*r$8JgTKfAU-JUeCCM zeyM}`LTR3zg4@`e{J~dh9ze~HsJpUZuejsby}k)2*}A$&x3f@59Ak^jS`QWLb7B;+ zHtw0e;)CKi^e%=-GBv^4YUML5wq71;F#EUJ)Av+^4+B(scSj@Kdo55pNY4&SvSf_} ziYWQDaiWBAYAe_cyR-pivE8kP6Xx_8W|QrX0XdPcRn%elWGwe!&@1<+n!I5MTQ<`Zd|(C+^t0m zV{3}H9YbMdgIi<lgv zQD@JuFrHg$U1Q>!YALfd)+=FxR@36o5gx?Hh)=)lon!WFq!DJ&{FaI=97k;Kvn{Ar zSw~F|2DEsoys&j(HK)k}l8HLnkIMf#)lku=j?W-q#(-O1yY;Il&VnA^iD zuIW{6_0ogQJtn2PcZ!cSlH8_AcYrlUWF;l~q_{z8*1Bmn(5`vx*e;43&$)6Gk|y6% zqf}M(u~Jh#@8M-)X z=95>IM`!TO+Z|t0-r4%Lbn!)IaXJ@q;+%$Xc4KDnQ^yG4nFLu|n5)cy?w!f#v?@9_ zw~AI;{gpdl1J-h$IGP!J)>E_ECPqhT`Y{HN8Qq z$l_a5h+=1V3wJS}VVqFbVQwcqT)LlNardpH0$7gMSK?*R)49;F@@L{u`0)2Q=c;wD zt%nkdQsMbomN=UO4?bv|7;uZU7~OfjJpj09qz$x8-GlL4yc5Y)bwwj;@fzr```PUU znce)_fIcN>oeARS+rddSMMThuW~!b@!1W(1h!*Z9$}`5_RHa_TFzPHCzDjuO*T6m6c0Mjk6N__uOP4-R2Q zUKHKZOxfufD0d}zH?S68Wve%kx}EOSEnEaUGfyR+UW7_J9CF!p+H}a&qB7^}%}82X znDQLgHLF*srhEqOrByQ1IQF8qdM;|6BP?8+8pmL`Ul{DaB`m(g5=9&}i zF7qLl@x3prPpBiX8Tf}NU4vA$t|x-fh-xElj!I;bKV7Q6sdZ(IB|~^75m6r%tZ|La z?Ka7x800$TN7bK^rcZky{;7QF--7XMVB#`UN~x;ASlJl6}5GU51Z%-&c1ZPt9G8tcjpCt^5`1 zKpJXGv=_C*_taF?64A)!o*c*GkGM6>w`YaBkjlz0_2{G}j-EQ!XNx2HgT+GpC7#p{ z7U-%$JotS`niph|n)emHpu}*Da}1VTje@E%+h;reN^J}N={A!BtdWva;?M~gGzHc_0*;zI z8xyB=rlTX>#Iv;D9T$$j3WT?{Pj3xWY@?C`nwGYvnD;!jWqAJpRdT&feVCFNoG6(3 zs7MER#@$NH60}3wf>Gkd=ad^qwHQ5{NsCJM4o|a(%^jxlv$Rys{W6v*m^wDfE*YzB z8?f4mVsuT+R8ipdz_@vwukdQ3&ntA*tqiMhx{ZB8uy$*X!lV|rU@zTL3Y8m5`yf|y(rt?<@**R?Xng=|= zud|zd6fse{s!i9d+l} zjuoq#_Ivq{6&4+gVmmt}o9U^Kuy}jADX={q?RH05+?9Gz=-TI(cKW5k@$5Stgcu#W zn%c(xAy{=0?RKmdYD*nX?i&(Ym?YPfY1gAh8vb zmu8ge`3{QhB-m^Qvl4U925I26<^UlXc_DZW7^kGp?k9;yckq_DbybY;1DsApUb2`? z3!3KWMyQ0X4dCv{;F|dJGdFUe$YJ%8;8?DAdY81Lt9q^F*!D7L+|tL3j|G&*Xg85( zZ?72mx0;(|u~Gj3c24fW))Ic@o$wlKFtC)fol#k>( zw4>NwCr6A^x=L5;AJ#_w9M2VISX%Dn3lqRZvx?eDT}xXZ37OBi-B4`;a6mBarQOWR z3~{Zbs^H1EM>oHbS{DM;0;DB6-IUuYCju81wCa&{&{uj_9QCf3E z$lZ3f-U>!J&Eo5!7-rPd);A?neAZ@Y`}&~w{hxlF=;rJ>w;C((mU9`|JU0`2su>e$ zYDl*FHjCSjymMZ4iQrZHGlJDYSk2@UO!-+=9;`PO*O)q7-Fp+8ZYmjLYnb*qjFLG8 zq>e`2uN~l}V0dOF5R+r@*z;QO#rL9^m7TO$TSxvRpMy%)Z5F@`MxD}NZ^1wp zU8WtpIv@TfnV&GOV*RbH!iWC=8sqS40vU$$Z*c4KH4peTHk1DVdup6?wifIA+@xfI z+iy;c8&9g*BkYZ>rrTo?WG zXkGsRHWqvuo3o$yW-9*xw}_vULIPcx^m{v6=X+R;-z^nf2>$@=EDzzHN{9ad)KvRE zb8I$$+Er9P=2dJS(Rn zR2{cw^wEyBaSxhLC_3R;e$_(<%`V)w^U*i$Vlj__Nw;0PdUpM~<`0?y+kdVBBYxD8 zh2Bu7-E6$g%k~(f@__B$7#Y^4G4n~~BmV$*W&@mz`@#yHw^nY~n`o z7JbQ{Pz|8*2nnZ7$C?CN-I#E8T8(YR~gqPfboH@AhT~({%5d3oo&v{!wdB{{S5i z$)#(tYI%+uf*9E6<)sAKWOgh60DmhT(z(ATl|PDWn`;XVK0Q&|WQ^XMhg$lRuT^tk z3t-q<%BSW(qeXjkRCd;1_CCGqctHOE;r{jJSmSTCSODr|zqzY@iB(lo!-KY+&Hn&$&O`VUr@<`0 z1kUWHzEUvPhcZ^Y zTP4G<#H{n5bUb}KU>H7$o!!v?0O-2UZNF>EO(6dO>}${7w3`d23sisd{{ZwX#@HMA zOoVj8PyV8&e|oRO(zsAZ-AWJrE6hBT0O+A)nzBf$L;MSh^$Ca+cj-&_HF<}Ui|%Pp zT6u~0xfp*;iu+OWk+OJR13njvVa#-LO;ftbn?N#>JNa|!jyc9Xk-=tuk%J}Q$P$_5 zV1Kgk7WJ*FKCDJeXof82Pp zzxa{=0IVxJGaF*^k&6bkqCceC02%-TS9w#yu?h?dvGOu0DJH6Iq>cBtYT!GCma{Lq zC-5@Z!Ptkf+Jjcmf6B4gRBdmR3fPCJBZz#$*^M?j{{Z}O{{YgmI95^RClEim5B{ZC z{!v<8y~W!dHa9}*clP5ki9MZK6q^_S0J^h|l&}wxRkq5OOh&U5r-v=&Hf7zXsu6ve z+1yZJeq$C`<1AwzF>SAuTS0#m_4b!-U9&jTOT42njsk-rJud65g?XE3>E@%MrIvP0 z7U}YEXark{(HN${@LVTa*Sfl^>~TL11Kw4NoJOX02;mK)hwMef_`CA5sfPWg^8T6n zEs>(Y>7#NCWknARs# zh}XXX!XJ`Lew9=|Qr>|5qw@Q+@S&}&ZedSxSq|;Q3tP+&S#EI$}%F0YSJ>_LYaD&49O}YW8 z_a>v$W|}H^T{T3p!x-ZCy1@dUXzFS^7B?7WO9f3?{{WWFJ|@bQp)FJFheuJ1)Hl)4K}+8}xsSkEKj_RteBN`4JPwdF zNAps8U3p|I&nw#-dY1sGyB)(?T*&8jOa8<|_5rofa1sddi65zX8nn0jdo!iM-OwEL5=X zCY6xJIKA$$`K-lW*H%u)3@(du&)d((+};X|cx<)j&M`UUtCNqUc7woh2+~Gs_R22Q zSXDc#U(Q3>hz%tl@bLCo@8*5zgmmqRpfRnm<-jSM9knX-HmOU8 z!A{JPF|m&A6|lfKCs}a{v{ss1*<8lkig*W-kVAi21ZC61N#dphD|FE~Fr8A^SGA3b zOrbuaqLP)4H8l}OZ?^CdnYOP9iTPl3wJ-kwmcws}vPwS^!XvJWwB1Jo(FTHiLuV>% zdvKm3k^GgKjj62+d*Yyq2*jw>^!u;EYGJw2}V+!@=W~5~y|iPl3go{i74@`#Zbt z3aj?h3UAfLSvT-gpT^3xcvMk(tc{)w0ZZnLYiwNQX5+R%{Z0v7{{Z7?Z|0*rQHne2 zuxOY+=1=(rIHiw|-sJYdAK7XGk;n1p`ms>M@jr@Tt=buQ;xR}60GAi$iHO)emiv@} ztU+uSb&JpS*tJ>kvq#Bs!JjK_Ep=R<$3BSPWP2%ESb?x1vs9kcQM~uLS&sswkAx8q zcd{45~+s6`v zaDkybN7YlV#NnWA=YMaL2Nj;E#IX!q<&EBLP0r5a;!#Xf5ZWqwOwmK>=IA&N5{2$7 zF=vS@A7RCjjsaVs!dVM$8*cK6GB(AaMuHkVHIVx@vZ1tg4`3Xajf2$!$K83ya7y|M zxEyWzG-gvxO2=jybonOXV=f#5wZ*EZpbJrhM()#l1uPh@Cx&S!=`fGC$K&~;%#4%y zrIwHuIGm|i6Hsjp4RxAdxRdNjr@-(;O@nS0R;vn%Ue;R`3^jPJ5%p5eP#eUvhXX>j_}yQ%#aZvGz>RMLkROTai( zxu)!OlKIq}e)P@3`$^lLu1cWsTPL*Em22smvfBqV58+hzJsg*EdZpl1ql;F4*Zz>2 zaVocdy~-WY9@1UkS0hEJal|VB0Pzwe^ZK9sM2QT4ytqa_(mV}9`Q=If0En0T%e?BN z_VRz3F6<@U^hbfHM@ab&XTJU`lYju~pO}4=f+XC^agnCyDzGZz4Y!-c??4YECX-}W z&w51%`B!=5j?hHU@}p<4)@pMe$l|eh)kmIUu4_1hlj64+)nv4ITiq^~&@46wO6uHg zgzIkE@jO2iw$fI@f-y@%$l9cFF5<5`f}<^)O8q&gjul)RnA5lfOow=*Y^iJ{(5|>X zvzaQwImNr^Qia1!f%l_Ts%K=xsa!z)WPgZ9sIh7sMVF_jYmY;rQCIBju(8hUy@RUGRAAA_bGOmFa3exJ z=~*evn=%MZSqL#KXAIE2wNQ>v+IqBq4TH$PRRuQQb&FWsnR#Qm#5KKqZr})g{u9fLk=RMCgK%sZXka zA2uGzHExAAI*R%p4&F1NL^LT2Zru^H*|hl0EZv#C1N-=VQ3h%=Hz^%L6Ezfax1y@p zYN(ECX>HxfP}4-Y34nxK!Z8;Fq&6p?`l5inv+KBt*DKkb)Al6atV6h1BeE^;(j*5v0Rn&s8g9 z=sBNq2`({-VttATyxJeO{wneCD&8XOI)$0)T*e+&^_5IJAH+ z;;3(FzVsy1Vpu$mmkpn>&NJ$ta?>2x<-

    RhJ-GZrRdI@lT1t=96%^;IuYuk#Avp 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

    boe*>u82EX>eJ1VsLxiZ@o^;R}Poducklz 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 o7;m>?$i~UxP`?(+g0J4Kg zB`lb=dn1MNZpf!?-L3eNY(5Ltomjxj4oE&fDVGg&gY{2q{smme_QL0B_&x!GU{QXF zM9ky$kL^F+N+l*D2L(VK;oQdscM!qoA;KkmOp@dPOWsbN^@4_)zXERm01tNh4{j3ckLbDV z)1z%=TtKnIkpwGv4I~uUZ9QJ;re|LA9zW=VVf#ZxiZgfh6##1+`1_WZ0&qBd@SoMm z@CQ_4&mmpz_g22?GQHeY7e?rgc%5Zx8m-{hLKdh_A^~*K8CzkMaF7=0nE7OjR;njr z6s?m3nXYcFj{fngpJzamXQ|8F+pt*nx*=GFe(sgxNm{@`_1$e2QJYUsgTqJhV9Ys!B=RR#?YTA7+oAsj+K(uyl~y{_>>~EYqqBo?9*h!<2;zm z&iIv5d|PJlY|V9JWSn~u>V5o>TE8e0$(gu)EN}ts$=WvSt%AnIeE^ale{n=AF$!81 zXR4i%j`wj{Oh%TbJ)seK^pT2~$ve9a3e`T((#IzDPe}fydpr_cUVk^+l4Dgk=wS9mC&qCYO)V5De zB}$x;D&&mtgJU>5YT|Q(GP}6&Sy{D5nN&jfBy(S(9MNnS7%;p>_gdW1oO=dr(7IUL zsMh0>$37>-`yRm>sNR>oy&ef$J2SODS4U3?mRDJf<8_nS{Bv`evpdxazCVt-vH4r1 zBh+VJ^zL2(n8r0GBQ{pH(6d`+S?5(q*#RB5k#69obyTtT7}nhJDQMWpIPvPSQq3%a z2Ih9Bu4QhPSzSHc=H%q7KBA08lsEpA*fBU@H{CnlfH(o>nE5ic!45d(_(akC%Cy+4 z3Q+?!A;| zxE9|mgntr@u-VGpM(S|i_off#QnA#WU0WFbb?4r8IPMdC?#{m9u326QT1@oy7_q!6 zlG(8q>CwtbHsc15g+rhGtI9m|4`wD=A+G-bp3tZKTt6rEE7XqPVP4Mk_#u^Be=DZ_ z9+ky|?Yhg(oroX&Mf?*5PV0BZoXRG9G!{Z(nRrZ#U zIZ z0v|z&x|7hJOiZ1*;d5+ty5`GmB@HmN9PVw(zek2iP;UOi6}&o%H#yIfQaK{I zgiW(lYxb?E<20>q&B+`MYo8x&Wa+R+OX;R{x!G=`yO{PJbAqwEs;OpsUgt748)%4% zvLU6X8o5X+WIt5PGpd%42;IrNlhn4CS6{n}K-S$mLV%)@q4$-}w|bxG*hkhq)>B?b zaM3l<$W4s8EUr-etVC$(+vu9x^<3()dmS3946&D6ig485lFsI>A6ZqrZ)LdvR8Fc# z5_}Ulaam=WOM@8RTO-Yf{dt4Nd)>GB9u+0#`R|K^2x~Er-RAU*1 zuX}Ph1ZcK1xQOeOH*n5PY8c#XdoB2 zU7&4LjNVi>*WjGv&Uqc8^i`Fz9T8U6vWA;~TPtH=8j`b>+ffD{*Fj4YXQ=rP6_~H8 zsHv0AF-nZ*lw*KhTzq-oZ1T!9*p}VaRJG7x@irE4Gry<3WF0s&zayPhRBw4C;HlNu z-Isg!F#gPO_oSqPvk@XF8@Pf001~^g!ebfjBkJT!OJpf>q*=4yf&pHXHz2 zY%^uxp^H4-fzjd94GH?g&?Jxacz5q@-gFG=f1)LaP)Qiv=Dkd&@;{*di)>;ttGHbo9B-D? z)c&V>F;5wh?v(INju03ikJMteOJk2H^+L92-J)lTaVkh)G8?;sX>>4|Pe89TBrHsH zjfI{HgtNL_!;%z|qOiExoE3H*TuMtN4O6p8boV$kUowk=mWK|m#%f&!1R2QGzd!&S z?p8dUxbfq1%IR|*pe}Te3~OBXo(vpTgAdr8QmLETo!u)faK~RazfBRiaB4l6j-GbY zx~=-}W^?#Et+-o{=Cm-@iGXl$XW9Bav5?RIhSc-;p701QwHdwNDg z2;}WwVX0B=1uZ>32GL7M)@6_!;iG`P^+oHa6tFzM+dK!^=7C~gNMmxxMHE|#Z6AJi z>viPte9w`eG|N1`*4GK9a#-^=(P;Di>(OuNshu4Z6xB_Nrp)a>AOQP{14kAigjPvS z1siIqtO=Va0>_S|^5!~nMrN#rYci8G$EbFJSMuLKJf^tsqQeb)L5yJ$Rp z3}761t5ov&y(=kWYaCe1FtMSc!>GQByCC!EG;^49TKw!ero#*r)%iw%bLxB7%<_LB z&&h{e^6=JU5#u;@9Z+NCb6Gg!Z41YGF4@^hhcGjP7%VSt0aK}_2BXe9HfZP5nxXWY z8&t?AW7sA(VdZQ73i$s3lKB~7II+ueBP=Jix|+sU#^{Yc@E)otuxbgZ-{&+@0_{8% zhVE%91W{$0W2hOpF2<_GEdXQO$mfvu8JkmWNm^l_%#!ua!qz{Kik*_ecZ>~XTL2k| zh1WmQ%Cs9HL5RUsQ%8uok;eRt&&u3$U-BOWb{hE|hhzhHQ1g;U9$(l{;rlI3ODvT# zO{o^q)*k-=@8G_t;eR8~hZLFRy3XN?DgF}0OJsa|r^3tnLhD}K$21|#k~g`JW}~L7 zeY6#^oz54%>}X_vaNvni$A?lwmJQaNN#lQd?Z3|QaZkG)r|CzRIJze0dt{7$`)&89 zGOUgdy7YOdzM6P1ds^CkcVKZRspK?5c9#aHrrD=e2%?5TF0KvKfqPh<3)A?Y%T9eu zj+te}rc_GqE^3U!1GOx-cwIERns>kK5EV%ATaePrYQBTtmIJgEcw{i{s<7Sp`(gGr zP}avmJKXw6n-6o_v#KcQT<=Ru6TV8U zxHcHpZ!>N?^B~o`RV1a^TO1?5iV-DcULo~ul0nqy)uxC_swyasUpmeQE`k^4xs$Y5_xJv31QBC$wf7EYol!WpkmR(nUB9@h%Y)aC zS+Pt9R;rG}^6L6`N8ZOJ;Y}qb(ou^w&5@l+Zv;+~R%3Irl8UM!G|$O-A7B;>bPuao z+m2E;%biB@+@>bT&)j-Sd+s0P+YW0)mGu(UJdP2&D?dM)TuWduR@1rBwpc`B`ab^v zdhu*GYBAgynIOfn2pBjAy5r|?jQ;@Ij?%g;kE*1pXYa6I| zY7<5!6_V0S?gDpqN)uhNOrxgHHX{={`YW^!yimCOt3INO&2ell`B|5I&%A0;N?o|Y zH<@U$Pc)Au%PRF3_uu5WGXDT4A8x)srG2t>8#RkXKK_oO<_WtDF}=|T+m5#v0U@W_ zh+pWNh&+yPPI+tK za%JjBcjCPs41Ws3njx?BFMnx~xrDfb&Ca#1P07_)$9$vVln_2Df6}LxKSmgRM{BF^ zzzcG^$A_OjYbD~2Y_aLR*OcQpm1Z?q>iWk=zLQhC&;$acfOU0;dbwF6-JF+ebFYdQ zH7gEhNbA@VzPE!8xaq}}T*F$?hgQqh%m=tC5im(JgSaqVK7dU=9ThD+51vU2fr zq^sIGxu;`sdU|QIo3KXS-@U}}`_wxxvu6UpAlf!!@JStU^J=J=+knG!mi%*b{)nC- ziRFvVr=_KjdTkc*y|U20U*vJ&d9F_UeF9Qq^`jr2N!bNVHDLNO-WK7nFYm=$`aYu! zhL;07dNT=qo%^r1LDK3`l`wux>~5i?8wY4x$Z}fD zI(mBY`g!VLt7fHv_RVfblEGopQnt3H3_sITOD(q^u_NsOc`ci08-l{=SX`!kCsdJk(NC;aEjO9`f}OU`ZGCx@d-3t=gkq4z zPc(E?jC6T`8tO+|`AYmK9`+zUg;;oj8>dxRUvij0Xyv6s=(mcI}#% z@(T>|>n#|262P#UStMg7s**a5az-xOJCQEwZYyC@DVsr>vni&HnG4IUW7Hm{V=+<{?z=%MHW<)`~w8PQLQIJpK*&S$5CU zu4gfgt}EpvQ`7mD2F&50gHbl3-NT)_m4m6MwElHnJD)V2b$k2=MN!p9bmK_YhA?Y8 z_*?fvf*7Z&ko1FWES z9V6KzbJHJObp7D2P}Mp@$ek~z0`SfIM)W=59f}HUS>h?>+~?39K=-V^Cx**{*S?Cc zFpr2M*gTvHTMa!uM*Wv9w2bw_bNfv}XzO1q!(Qf!*v0Sc%-+5|QJQ(#Q5IpL97jb+ zu&fq0QxRsm$r#e6w_@lhiaZh-*vgSSjC`EATqilCNcbG<+nOhX$im5>b6Q6cf10IT z6G3FHcBGJOr)$_POkKA|{t^s|8Y!GmU%#PAvFWm9eDJm&9 zkKV@YlaGP!C{&P}x$(1h`1LXK9qm*Gx1?(JrQWvADvcd$Cun5OXn!NftIlW%Y_x65 zbz{6!eH*=I+Uaf4+*3<(@zDuAkciur&AU3M7`S{&PrRVs=GO{viJQ!tkHgOu!%vbN69p-h%7v(VHv+xA%UnV*WO zMULY;HR!5Z>_UgV*C2Nv&23*84cAY(P^iP>k&esHh~$8~gk!jNHx7C^+r0MSevTgH zeB2#Zo>%PHY~FE5_fk&XK@PXgT*LO(y9_L(+87-qV?k8L>+c_kQ*k}FV1l8QyR&{u zDoVO+Mwm}UP}!qA!<5d}!O40uM&JsLc(ZHOCZkS@c*u}|^us5#7(|r}6;!U>*3*r<<(^A6&rsDKve?(ljnmMKqDg5pCR!&_&^_0f(G9Pi?o zZ(sK&+$bn9DqLd?ioTK8jzOsA!^|HAAs(^T55^#OPsv3*d&ry*1O~m+)74@cUfzdsN4-BSg zgh+KKv|f3W%}t3>dE_C{X*^z`>N$d?t)uz^rO#_z>^fKf0QCZS9_2=Tq@jl}g|3+O zf2)8~sTCyd-*ksOx41+0&0Fb_)Hl~nzLJGm8)HF8Tk>h}(0C)fPd>&nU2!P8`^1RapZXSE&e-)i5ce+bJb)q2rkQ(@Kuc~0w&h6 zgQG62(bb$juuMHp5B?s1nyIL%?R3!hDJGGy!ucP-DoaC*Hjc7|@XGe&kX?t4yof=z zTN0NJnfQH1VQx>-$#!yKebqyIa%&sUFWpwQj}G2b{UHXE(`s$apV1pO#t4CEkUIBW zTU|+p#k{MXk&ga91&XHHd{Rs_K}god!}{aL-E|E<9QuhJEY5XIoaB+qO{YRt+gDLp znV4)DBmK0Teh6fEbL%AER5{f$9&g}_!-uiDzqWo#%i8Af)44PBW*xKcs2Q@icFt!( z?nRkJPeCQ^i3vtj^}{ z<2(uGjbXTTFyPzCYv+G2a+{C`ZXGy;Oy*=^;7Ty;Ivg(s-vfHejFOsQ`5HZI$dd~WBLw#>zV18G|$TX(wP30ZjSmLm^~bFRKN7OHQoJz z-lw&VcB1*v{1c0hE$#kD z{FmYAyB%n-*e&zTkug~HFL#I`f&V#$9Tix#3*PS=y709pvj#0 zta6&&8y4EQEr>%^+O(dG^cLWYU~XW;9hKY(x)rr^?`i2B6PjV(U%xO1`m1|9+tJSB z%z&f*Dr6+FshEx%$9?GtPMrRkIBtV@>v$&Ls_etlE9{m5BaNEkQ z2;@~)I{Z`ScVJt^LVNfGspwR=7RFEP)p?zHeaZ@qPM#LtM>KaK6YUJL9JG)$e);3@ zQN1fe*KBOg_cefXD0N=aQq$&S4d2QC08hmOd{fmwHB|0@OY!(C)YwCs1M)U8_U7a6 z30#j-Ae#`xu^mgdaQA4{)cARJk+XPu@NdN*p~0CiZ|kk?zd`Ut2%@7FF5XBvatUaz zK(x37lQ&)++Bf2h!-mn&v$p2npixbT%`S}eY*n(lLvyOF7S|tK(b=bCLag~@lh=BC zAiu2ZDPw?pE%>HNt!d(?ikCL7;H`)Qc=1jE2IelXMuyLct&O&Bfi|w8uv17662oOu zqY`U-5bApJR3(w#Z#>U+-WW~NqI+j4TbmH4>DwzqQJXspa_Bjrm~(St5uT9W;*LJq z)W(hz)jQUew*C-_;k8y~;m*`>zc7bevvj@ck&y9l98?oDN!l7J&{g(>BtM3%XMkd#~%l#Tm%iP?pnCVX6U3RRo4Lqi+19ZcH!(P zbt%EYyj2ptoHgw+F8%G`?~0w$mu3f6ri`A`8iQ9dhi1;k6q~q7xnr5&!dTop)W;8>h;tv{@d-eRSqA<)f=$aJK2H%03>isPZqSKJEQAF-*Q?# zv(LkA{{RZ>e&dx_QnC}Qvcvps(P|`xnJ*S${K?FP#l5Guhdu}!Wux<^{Z(Ua-s>v| z5yWX5nc1E?tJU??(HBJ&QBNS^a_A6k^s~O@+rl{VV-!<7)yX}0sgfrGS(B!o^o+(T zXlTVV_eMS*k-DxFk8{~0;B@UK#qx9T9DZ`|ar zhBj*I%Fpv?nTUDB9N6#jrSqrSz^p`o(AHKD=0FfNl*dy9pXE*S zx_%-Dl|(j(>GYjQJu@oO)#0tuJWjB@e)0gvpHmJr@BaWQLtO_dc@SuwMJdeuMz4=G zba{^hTU351Ev`ahk0TRY9{lP(;8`X^F)oqr?^hzm6;X;BInAP;r~KAW6m-Wi z-p^+7?I8BO=X9U=S0pu*yy;wpmtmtrSyJDMRt!JZ6;((vKRct#{_i0ERo-<*KT#k; z%#s`k%6eim8j7HLAPRjX4r{fe z#i@^;2YXEiyF@3=B9Xm{ik*LZ=A;-q{{Zn5>HFwX+oh*0vCF4EX|UuIfuFO=?NP-* zBjWeI+%Lc`bwp4$M+~$SqP`kPvu55NRzT`1 zC98gU9q#0*D;1cml_kt)Vn3NweVeBrX*I*Ma)U5w#c}mlb5T@OGM%?B*P;|kheH%u z<R*J4w0wJBj-8gVtkgqgNm7vwkA2D zxAEYkH9%+^{{T{j)lMzlvx*I1h<{rXLT>tkFJ?pFqGdCVvbjpgA!*UKw={tZjIFz0 zxe60cP<=_&vc_@BxrE2BB8?H)Wc9R-c#V;~^?I53jayvfEDgUBM@3$)M@I|GU%Ne3 z3R&;_CXPX)(vxi6 zrr4?h(UaNiD=`)itd$|N-3wpZZi=kbZ8?E&yl9b8=4Oq{3%PV!wb$maQDYSphTWI5 zp;KUM>GUoKg15T`2%^R*t9Uyj`Gj6MJ2pU7mM}9}3KKgG#hFsw7*4$`kILJ(L?aP} zh8Jeh3XS9wHma4AH<;BqW_B|ZE{W7rJ67qc)RtR{hOp3;a^Qn02`rvc9;gP{If=oy zRcmotEH*s#6SRLaL39hMb@;s&8xx&0tyuh1Z7QlWM@G%tKG|8kv(`J^%y0{$(Y8W1n=4O>?$do&SfxsUMoTb$Z0@*4W7JC~wVQbkb}+m+$M{lqM6 z*SAg?ZDpBU!6a^L<9?yzfeGs~6RPkzTRJ6DD0P(V>>Tdgcm+Gx~7wef3+Wv=kY+KZu5t!Z3^~xv=Nou7Ec}6xau?1 zVa{xGKIF!IN1wy{D)FewZanG018m8q%-~$6sikxi%LPOZj%Ir7e-Ns=7Pp7ZbmMm9 z%N-Lle$r85*94oeRDcGzMM*i0XlsGsk&v~r2Mre&5ZkF6t8P)KdliPZXlocL-K)X* zYP0ooONZ?xRYhex*vg@H7B?_9@K@<36!lD%-l$p!ZZRrn4Ap8 zHku;TALkjgjgFA_CyH9RwK-w&)T1zA#Bgh4YP}UCagSFwik+8W7;tv+f2Qv#l#q&C zTDF+zG?V1C>;b*YIgU>rACEy(Gp!tumJ{9&^+@r^Y)eT?5H0PMR$NL~w=8YQ5HpI& zIkhD#-}~}u@?G?GWn*tyROSz{A7mw^By~{#01(0HT3;k?VeNF)6m+t1%(L}$5aDxB z%?lbB$v`&aW7MP1ws$92e`c;+Qe6a8=6cDgLPqnSE0ngX!>hX>WVQRpCFhdI>7;9$ z-o0^|jq&&xcohJsn5iMM;&0vlOc>b&%HFgmQ3cJgp#`keqpskUPZ zr#a+_)lz-A-JAL<*e*(aqOPY6uyDBdEx!z6wKfNe)lsw0;MY2cQakuYi0wYDU zm~9jHf(Feu?I!IXo{H-wYZOKC{&C2F=7E8Euy>}@@ENfhf zN(L?V7b`l(Lc>L9OtHI>zr-&Ji8=%!`$@Do#$iuS6%2pHncpx1tuo?)RDrAeO4Av|PJ}tG&b(vWIhw zVw8tVhR6ci#B)Rn!bf^Nyrp>1PaC6udfd|=LvDzu_*U?l&M9Msw5c_hJ^B%gq*o@i`n7($etgEQ#OobYX+y;3NBFCR!&^s zRzqbd-kucl6{BOO74C~8L}2k&A&fgd`PQ-1w5Ph6)>BnG)u;HWMjKx5VkUU4Byqqq zc9fQD+6aJ2Eu3h#lr2N?2_kbHxOXiScW7VB^2&! z+=|jxJ}N;OZlN)hb2+yxQwj&Wi;}uHtBcnkGI)0aEVE7}v^fVE5j~?Nvq4VRa?Wmr zk~6aYz*=GACaQfKE-8wLnfkGBf|jC^N=M{>77O3OX*O~XH^Hj0Cw*kM$>6KcN@pRw zN#c&)OF=Nz_IGmSD(x*?_;i`$^pGAQQ^c^T=-a$|ZyEV0DXPpZvF$NmiW__{5rVC` zp?$i9S3|1vwim-NtD<(iNc`5f2*)7AVcom2FyvM_O)3nsaTyNisn%}j>Yh$eAE-}o zvDG&gfwgpS)E#$s1!HcNqh~X2vxhdynAcZod)G0}$zbgQk&&JyXO?F%JUH<#Tu!&- zySa3vHJ-A^Dy<=LySx&*MuymN3J1&sbyXy+f2#v^H@e2=(QWdEw&zPIMPV;+jhFA} zsna>rNanq+1)A8a6f(Y2_PQ*gN05+XF+&Toy{~<=0a>M{4u#UyORM;k$SkmhlsiN> zzf*G|ze_9Fh9xZY@=2E@XGq6#(+qA&wOf~B^*LNHoZMGx1@!?-U$`&UP(r&k;I*{952>!v|U$!ORd->W>D|^9tBZ}%ne3jKV~>BtquuGhSP&1 zW6*kof~%H>fUsSXeM9%N_W75;hq-JiqocyxXqeJQm*?(ODlvH{en@m2G*JP&?Y-LB zM)&L;iQ+OybkGzqGWu}WRN3beNEpWFdEge81=*PnN{aVeo=)!cuY(F<6g0BbIksa^ z7_(PYzOr2yHTNQ$TZ#QIiHZtmG*VJ=w=#!iGRP>Qb%*N@LD6l;JR;Pz%-={VoZmvt zA{|dvsG+4awAr8a^6Gn)Od^ehiQL;$!YvT%-i<>MbN8oy#sl|6yvOGfPS%5n3&~@Uj zVRgoQ;6s&-7tW!o!+i2wl0SD1wRq!ydT?ZvQ9hg37PxrRPW8O`SY8R%{l$Mv)em&d z&{%8lRH(4(ig@3Whj2{Be##_?mqkI5XkD8SJ;8_ZsWJ6&Bn^s9x9{XNMg?O zt>47kfWP(^tB1s#a@>libc~15&gPfNq3vicps0q3Q=dPmWx&(4H0xyx9aW1@JPw1+ zpB=Mvwf-Fycx4r{PeCi z_SRP|G;~h-Me)*;0BToh$RL12q%54}8 z)bjrTL`dN?2!&Q9FoK}y*oL|ewz&DJpAzGDrA(FUp>`JbPS`x>d;v3y5u2wTYC5^1 zYZ)QU93!_OkCvSIsVdD)e2`(SY;0paFMY>9nip5Kcr^~sO+htGW}|rPoWnu*uC6bG zc`ulpvypgK#NSVZI&k-&NhF#AJUo09IK@RpMgthAcVN`qpXyhh)$Pmvjq^%KGGsRs zNuakCo2}X!{7LqjvU-v@Flf-ehvNSL9XRgT<)7)Z#j%PY`JeXW^-(zRDv4YAO-4XH zi1Y~ioX=J^=o1-DeAd$c005TMr4AcML^BMx=6WDlz94F*+(WD}oqNwu%@W6JMJz&^ z47gHBNbWyj=GViab7$ zX91sA7cej)nOjx6oB_ER@{SyP(#t7~*w)x=MwUq3ypQW4)OU_*t0l_z zRYdDB{EslS*tHOfX`*Yc_+E8cs))o=IFG5D{)eaTY?|r}a-`BQ!1lR^mQkX*>|P%= zkWE6%+Q5x0daQl}R?19FQq=Y%mG-|NM-lH^xpsc5M?mQ2jrxPbMV4BgRLwoipX(rF z$9lbl>`Qit%*t8msU(WTFuKL$@yp<+G_T!nH&>4K&Ny8{8X9zCzssVVl>MtkuJUEI z7zTU;#05=ThniWDrvE*%Etbf z=1x1;n^q?}JBEK`6r89)cd%g*Nb`Q??% zZ6;bBrl+mO@mT0+pzPT8&!b=#;^F~5`z>@kHwFy|j~0A&P|WcZl1AcOzy;OHCfsoL-WIzP>h1K<(w9pnbWMrTy#1`Cl8Feb~A&mDQJ3RKE?DX&|Php~-4+8ZI5;Evf2J9jmOM#IR^3 zqI^-z0ep;OwKwkW>ap}Rkj=4f-&RP;sUY?D~G+dG$*1>M6_5vE6=ELKcg_mRN^>1{+#6A zM<{LWz&W~n(VQzCmDH6uzo*>D8@qxVUm(9u7G7`5_*v!mejD-Up*(0i1u)A`G*uOH zInnO&fB-t?Jo$4$ac?`uaQNk$Elhxr{F(u7TI#MkY&#OcK9a-tf_oRt$(?e;(5dPn zp@RvEY%3Ap)y&qJDcIn05(WPNhQ(pUj#zl7pX}UIXsGb*l5`kW7U$GP-P5X0QrPdr z_4x~Z{&M34ZJE^&Zz0LsyLfmltTRIv&R0VnD}{6~1cL5B+-h_`1P+R=_|03Xu{u`2 zv35w#&4Tv+F70w0ph!$z9m$pqn18s-^QPEYz@bBS$=R@Ixj!4*IfI z!p=jlfaa@I*2p5c%}D{}o6^7XQ>Y};!E_X5(J{OE{=+$c5#*@NQ2L3o%lb@%gbdM) z@hNF&=Bs6ceA1M0`$xqSq=}Jw3Me(}{ZMwRGY==ySIcwu2LP@`47Cl)&cq{{xgH+Y zoYK2F{w)=O-J*Z}O{k%#j-S+PugsMVO;+Ze-KOU}0aHyT>5jJ$E~dlff}a7ImDp_ z;Ed0k9GSSgsy70WxhiQmIiOs)y6&*<+?W2a`1c|-5zU5H zy0WUDc*sv}hSwJ6E~lx+aU4pvfMM={K-k4Y*vB+mh~va*qPbCsKO5SLN?KY;;$=2x zNcUJ~2E(rbm}c5{=Dv~%Wt zE6J>>Y2aRNq!C9MzF+93!6^l1(A86yWYN-mKh;T7OD!~xj#k_8UHN6C=@T-aWvX^W z#}1cOvbY~tMJo%2yaICV7CG=qOC`>uuTYCIwA)8OC@WmiI|u0Vo z{E|j*6vvSqim=&I&lP1jnipM%Gqr4w6RSb^x|lposZz2 z)1ns`AG{n#6+5un`C{MCQ4kis?T!3YQ?%GPd(ns|6%@>nbg>->Q)qx@Jk4{3bUp<^SbS8mw|g6M8Ahc%r1qhFMbK5#(}3U7SUYll2vKQiR*mEJ zU2vQuX@SzehvKsDp`}qciLTDZ$PYeYR;i;CvwX*7BZL0{HD`7Xr?8j{qJOJ!c#ca+ zKm^d2J>8bFZY7+aI)!qB5X{Zg{s5jg=uryHHY%vIG1)Ds?m=oPWY1@16LLPxgQ4hC zF`_KnrX6z+k{e5i_FWA5yBZtuXOHHufY}>t&ESoV8pFGKv>c!=YdbQzyfh^{P~PsS z+H{z++HQ(6c{#cz5*G1GnXXhxDWz<0%3awi>5NSqnuWQyW?`XLX{C8>vuco6sf-3@ zb8`Ws$L^|FRa@{pU_3hPg#2PZk~2{e2Rpk!@jhLF3H?9cA-Bgk-3|%asvkZ8nX+jbzTioB{ZDb z$oP&08p5{f86*_A%wA;nVrmCl|pd3wLx{d=G1|%w+EK`K3_f4BC7OG@l^>?p|-S9+PQc zXYa@V0IKWKCpM>fUUgaNcD51!06D)PN@3_hmZpsU;7=V>>9SY|QcpwFA?kgoFXV4gow~!0c&i??{Fnc%qL21vbviQyv z%tn(Se&$Hdc%~dzz>at-VuA<9XrCoE`X8^S^pX3xgkK7)j<$k2n7B$fbR&rOC2$9i zip}iiCmcBCO&HRasz+{5AmPW{P+K3xff>6G1Khmsn+~R;td0t{xAc*o zH=aasZ*t#l9D~qMjxxMG-@-LntbU1=c$6`@w+w~X_nto_;I8vlwT_L=Zx3?L;xuN7 z`>)md(4P)S-4$GsPADrKc|TJz{cs$QcwMwn1BK`383z3oQdz<=JVv7r5klxDV?~IP z;lkbh$ZjRSiP@@XSof(o+kDs;;vS8V%A_S(6dl{7M7l~&ghvT z_Jxm+HJgmIv0uUG%QNYZ2lmIiilR}&fx|Jm@W~r^3C_#(;yzz;*lywtyK;titk%@T zVe?!{J}^Hc{{V#W_#eF&pq;f;A>m#$Rl_SI^;>@OqI8AYm1d6)lDcLvXbIH!Cgb!` zVbw9k4sBy3-OBq-=#RtjiLnMcK<397Ho524%64Jyg1kcLyf4idz^a_=8V<$xY_h9O zRV79-y^}&8Yjg`9*U7`Nfb$Ql!7T%uBvOOPm%1s4(=uvjm-`JS=w=H?JzP_6a@?}Q z`X$aTbjWOJt57a#bS81M$pzt1t+7V z_TF^P2jI1oor&V|Vy*f%f!3w{WSlphf0yr8aO^d)MY@H$a3`2 zR(6{OHM>t&I43ePtz#y2Mua_gFcBbmg(zDYJDX_bBru+K)ccV=mN=%vD5a{xr=CAj0(9%ub0i~%qrDl}t#E1Y!_Ep1 zEM^&`W1EuCBHa}B-LbMMyIrR%RS-9H$zyM$BFDKx;K3Gh_V_6&u^1qxnkjo>%T?~!w#QsXn z9%(TQ@5(qEbV1(Q%7SL7pzE>A8p7{+So#K0L_>)hEslWS<` zAap^}NH2XE_?rYKrjuu2rV>X{EYIdM5`P4&#jv_sY?Rn--+SkKN8WWyq}GL~D{)Ua z#3z~v92p_b0k)cIq2AQV?Bq@J*<~)s){bhuMRRG}dWx)_!&C5EO=AgU!&2@uv?e~6 zcFgkBGy&DxAg{*dkmaU<-^V8(hxJf8I*Nmus$9pR{FL1P06zB!T#_Drkn;dL(k!}lUF;ZmPn?P9NwQ?`!_$RBed0Zpo&z_4-pQ@?SI2(yoE z)>JS^!K#(tz6QO)X`^#m+XgfuD%}OJJM6j1`?)zpZ3JlX3PV-0T(vpp)}O|;E(*N2ol*x+Dp6$nWd-wlxaND z57{*e*lzGA3lvMuApM(Cd7M9G8v*wN+DM2RD1Uf=GK|ni_MDBHmDgQc6uYzQTz96L zHl0R^?6#^+{iWPg#*xEEwbdXkOVcbQ!SE%k@jKOPC1gmin; zkdJ&a5^yQ}@W1a`<-|G+IJkwb_scGN1et3C~ z1b#|Rx?Do1eCEe1LkI4q^SXhlm8bbtI$BIxt?zXsBajYRz$uk+;}oy-^c5^^_=a43 zLJ57?l~b8!ZvOzvqIA_^x6K*;R4w?eOj^CJXMBtyRhJ#Cm$By%0o;M6gXtOKXl{1@ z0F^veR2^LA+xS*!Vih5-{UR+oxg5f=SY3y))vVr0-N7Q#=&XO*Z~0dm$vHW{zOzya%9m-GpXE?jRk7CdcJA%Q_EclUW{mF~=G(nBbrP2} zthBDbf~09nUJG*osr@TZ=lbpWDZKuntjy_J5PB74(>H_L{#1sxpzwQb-qaxCbN#m2 zFVYkK)uEdCvW*sIQ^}Owx{hk>F<~{d zZib=KQqp zW~GZGC2(g>N-3g-qeGRC=7ZU=Vh@Do&8Ph+q&Spvx6*bNb@X*Khch)FB^azNH<7tJ z#{?dm4$GT%y5To3$pC{8b9-%eokscY>T}K>uZO=v38j#=bfSFm{{bQ-J8*69(L#KQ!Ibim=9n_Mj_@UanKe8)I)}NXVS#^iSM| zi@5;Hb4!r(Qrok9zVwL^x&+B(5wXNIE@0hq*a5{wN)1c*kI)Vs5Dbox%qO?L>0Crsa+wM@UMq-CA$FXQ2**Ay(_F4YR@p2cp;X;` zy7El8;*b|3GkXagMHAa+p^?=-D>=XVkr?Y)D=uARjRWX}ZM$6Js>=j&aCSlwi}qD& zigru;hpG=@FNN?wGhbpkqPTw3%}ZuamPQU}T(pzZzVc?8H5;NA&fdUC_TJNDbaf2N z7q0$FIjQDz+)iH=ijC9Lzc_wQV#w_l)W1emH%_W4?PGfEGZtk;dJF2k9tqo5M#-4& zAz&)xq^+lMiS567HL;kT;&mL3^>`&(V_J0Pg&~h#(^VWp7@@;ryz;leb5gCYhVxW$ z3|@;3i!}1K{T4$M+gggO(b2bZ&b-!tbv;~}<#dMpO06d5(BgY%JyvMw+q-Am;IpqX z)JdLKIqy74)mmi+Q+MW5h~tljinS5h6*eE4j&q!>2%Q%W38X$Yxy*7wUu`5!CT?Mt zOUmmaw2{Rd0cRvN`? z{6($r{$#LLI%Djh?4g#Ux6`WPC&S-nnh<-(>`5 z`G<-}G#y&yDTR(qbtnzd$N}{*G`B}Bp2h7=$indl*!vIV{q}?GvSXEn5Jnd&WxxWS^Qs` zn}+AW{CEL=B8#!(vVH;u1R#MhbE^bKvJuWJ({XJ zJy2+|39#86W;?eUF81B4Ka4>5iz=ehNKSvvX@%d4ZFawDD^+S5##c~BQqB$<_^T}| zJ2XbVFjZ&9uX0Q+Kmo<@DjaGZ-Bew%>PR$mJ?qW!&77{lvp!!>OUiaPLF3czUc&f! zg$v_su{t?e*RYEacv)UK>7H0h@WL+8M+DWq$F>wSzN-pt#}g0VYpi>za+wg?}>+rD1(qCT&~kBfUgN=Mn_Mr7-r-v);~x4bprwVwuxc13mo5Iz zjcvxf(YkCRia9%NblQ7-J{%R=33u2{JHO?CeaW$$vnY}am0B%miy+Dx29{Cb@)+yK zODV`1RV>@8oWqj1%Csm1pwjJZ58x&iMJC1If%be--?^v;JBu~dlv6~<0~Ovg>B7ZT z%fQA~hbS17o#N`x1U;CYERK$)(zZUvw^Xq`w83!GmDBGg{hV#g?|9^t$mSGs>5|kz z2D3`Y{9Le=dvT1`z0u+LV_;$S=61gU`JnRPyGM@9=T%l(KJFg?N6e|qCX)uo659M1 z3X*TqxAPxjJxKfqyoH3?yj_^44JIiQH*v=x1(~jO;-{Ai*`1$borqVqrg7{Glc#Vt z_m!2$Hi+VlbtMxw6eox+7k$3#EZXZz(8$STxpl%Z6?{=)zG~>MCD+~-R?dj#jmq0G z11njZN5*av4O_OJvk9Ty(a=Q0!+ia0M>~FK4Svw$II{z4Yup$;i0sktMcF?2wsWJg z<(B+VoJ$Of7H?vb-NhgjBW!*CJX76a!$kuoxVUw>{1k7jX!Tug^aSMgbcL=J;Q)nhDaidcN<$92PS9{c+vGF zs9-Mhe2;6G_UJ+4G}pOF%|n{ijvZO|D+|cx$F5ILj_)0nAxe>Evn7vvO(bXAVF)G& z?ATl_JY%~)2>8&14uUT5rAJKn+pZB;&u1gJr;9vH*JYmuEZ!Xn75dXWK@j*0G#j^E~c|-@kU;+6mA^D z#u^x{Z~j>8m0BI0!=RITAl^yNN!`3Z7bhp}9Y-hffkf-G2*WDzH`?M%yQq9ioy)ug zHm4KXj8WaX*f5Asu}Z+_TfOf50P$9XLq(S-;aZJFmnj2NoX|L_m9<1PTwIWpnw4p; zO|q0mN>?^GS)N&280z;~E0lvs?4BERHn(apY(1{cP}zv(8?Ljpeo*C*xwJI-2U4-i zk}6``?z-ryS7R7%8UFQ9(cHY=uN=lJGa2h#!O$VOVb0?#w~yj^tgjC@hZM@LgWuv6*P`YW;El`e0km7~FDc|U3md#02))Ky6( z{{VSM9X@ZWiNv0|EnN=Ez0J%R)80`RVA4{;Z07#}m1TKkHa;vL5Rmq_aD{D{L{Pia z&wFx5Sk}3@WOhT%1jM9dGdnA@p7c!iNNZ%KiY%1v{xT4k7QMU2Hp~M+d8a-5?9Crm zJ#w8*39FD3^)c{T`hg`JFEYAv-AGe?T&~ZeFe8eJlQWv#cp(+7dzvT9ZmCRx9dQ+h zBdVH_&TDshtU`tH=-Swz4d4Jm-zYLXjXTsSGmA%wPKFmqdwe=B zrGe9S$23|BaR|G(qJ(i#$Hnba7^4mBv8hd6J9B1xR8GZdV$?a${#5~9c;=msjf}T? zj+X*^pLri(63>oJA@p!t#d9RApNrf)6HtkuqNnXh=KItS#NdZYc(3wIhY6ljc|Yq{ z;=*8wzLn_gHv*=_YUSeQ#ub`597Ua)!(OPC?uwDQvbV&fsH%+NRaFei85Cram7{D1 zBR`#D)4cGHvZy)PVR`1_rfZyHe5cwa_wh*PlK5lymAv$tIxCoPI!b2fTgTj;OwU7prv?kCCo+ zROf&R45pm9?cj(ptev8IcjS<2p_>kQ%v;4!WU^67oOTG}6>d}3n_Md&Y}Tc$>_3q! zMGRoUEJsk~=j@goMjbSGMX-IKlMkFzS9YVlv-As}lMfq<$1m8NV#mQqTpPt)siSL) zswwik9Zis@HfKLCWCg)%T_klwTd%SeS!Z+fZv{7+wY)f}XDx}YbM#>1vCAvy&`8@c z&MH$gA*XcQEX5@yRTPqCJ-+1qs1#U^0RI3nV?|3|2p@WQ;rkt!iE(*6>C-k>0{$Ke z@ogPcS%7`YApL`_EsjA^8MxumKMTR?Fsjc>O4*s8Sv$S!T|}EoWUaI3Yj@Ic@CntD zGD_F}#+ZE3I>=j3B-Mu~7Rea<)^fSlhB{__WkJmU00q~>hvgYk;c;*3WUi6AGt?dY zmf4N^HwF-Xx}@iN5rJXtGeZ&jnr}%bk0fd^Yq34y^%{OkIrHCzV?QFebPS`R%{Wr8N+W*LQW)aZkw0 zBoC@>D;;+`KNYLl%x$=YOr@2YiyP+ThEwc>n5|A`OOO%G9izbLHhw`ZT<(%V$Z^qY zm)#S#iVQio-Zw^bC0DJ->G1r}(6zJA*N{Q$u{xUOILQA1G^OdAmwFk!bD3&yM+oCH z^wB&xe>7Z{YpY*S{pEb_k^ca*>s%Go#v2^&wA#l*uVj4BRZ3oP)CKa!pj7a>UGx0 zqB!!0YMjec!ElDlGo1UXN%ylL)^Td zoAdGD$6uEGcnMQb;rlN_O*?Ef&iA`gdX%+w0%p1F`pq+r;HcA1Hje{yTPt^sJW1p= z<<{QiN(1KSEIH?s+xsARua5Z`^8CH-`29OE)Mzl;Sg7PP)xC_8L!d6ud-|gj?zbdL z=C!Aewm~SQ7=<*DPn1mIp(5aE%fpJLJSG{0E~wr^6o7V}#PK7F_I@`k_@5tHMpkyo zdl9H^CrluM@r&PhTgY_r2r=`BSm` znfRg@rEOI^f(T-CFV{Kg)pce3chjBXZbQ*Q3^encHO&^d z)z|HF@CmdPqK)vwQzP@(lhd7(D`bxhq1@2ZzI@H?OkMeu6_xIFQzI?yixVN`@l}Tp zCUbOLnx{`pBdV4X_^OL8b9DQbQfxij=q0Ml=`Ql}?tKa|1zDz@(u~iYwgeXGm;2R0 zkK%Y$6RBz>mMGzh@3w9ykHL0v{BB+Su{O!=Rn(AC&i7#CEq5#3#F|oIi2~p~8}_`K5C=V~H|xM(Hrxr*>h1 zl!M~rN}FZ1&s967x7*MyrZXQ&xidnF5`S4%egP1s!z&G0eBE&#l%t^31$N+%&iJZD?S7sb32Z zw*3ORRSpq=;PchuuXOJ$^g=gqARF@Q_`H&RMuvmtBC2{*TH%Ca`N(XTrY_iddSH-q0<-DPsUDN2PUi7eIw)J_4OK` z++wLt(NR;qcCf;K&h@FFrF1awUfk13zBu`ovXn)`9$FU?Td$SLtG8Z1(0#Z>y1 zUin5=4wgn>Xa&QNUNdb)!j>n1;dPDlv}_-|%Qay!d;NI&`9>>#Q)ikthe*U6t#!88`ZcsTl`l%hV*hI{)d8z^M2Oma!e;$j5eC{l= z>l$>_*j0YfzZjX1uBWEZTSnVYdB4q4sHdQ+qst5pj!W?`Bv^M7qH)25wOg8M*ro@8 z{L~ecPQz+^-dC~Y@GRlMc42Y<0E;U$6N&8Xer)Mm6mLC7g<$G7daenaV|`3F{$RZZ zvPU;GVqOSCu_~C0uc!-Lve7W|QP;ONXH!&x_S<5j%{)D$K~oR!!s~^-`a%gCdFa@C z^jzpLy2}%q0y;X$b_`Q7*_+ul%{|k__^XlPd**hi;FxuWU%;(N*}59WyEM7m%$-oG z&48veIkdSqb_7Trl;59nH$NdlJVKH!PW}%TpTS%8areN03qBxP$QN?;T{c(Av)&TXWp9 zET}Z*&uwKdgRT_p#f!LB!6*K6GX2Uj;>OKWnOO8%EJlVJs$51|mQ__ULA`;Fu$iFn zaN)}RJ__D3we?t&O+-gFDjevn{qZk6KP;FLIi3d~rP1%lX% z<9)OeG`Hq-TzBB$*Xm!(MT^f>1vE5_iOhXQu`s(^9;-uyVIM|N=BSr>P)2#A@a5nZ zUM-@;WU7v@EiA?u_g7~@%$};vX4zC!QcDBrSs9R9d7FUdx8eBnjhE}GpC2|N0o00}Kj2!s| zdXj(_+co?8B}-^&=%lVbw(c>-5wvvi?rGa*4kxO7(ukY7i-$6+7YkV$Npp2k%}~f& ztC|VWT{5bvl(g=aUQ0h$Q9SZ~lSb&?&f6IGXl$n}w5b!mwo@kbx6!ch>a5gl37$tw zEK=_+kPzzz4&*m~EnJye=0~51&3h-+(#u56)P9)A%aS<|xpT&4{hG$tWvHXZs4)gf znwmi#@;=p?NaTEfHL0h->S`$IDx<7rRY-_UQv~y!V`&7$ZF_=woiBT=wg)vP7|6_Z zo9bz!-5WN=m*REkQEY1ytitdqAf&^i44B!~@I9vS{gMv7H9Ba%XXSiZbGPv7#`qk= z_PMoKp6)ymp+q&>m!dUfKJ&EeD%oIBA0LJ&?lDFP+0a(;IvcZP=vtJph zcx0oomB4g8N6Bb#Y*Gwc5uTm$RJxo=ypjjH%(lAmwoCCEcrHJc#g`oIV0Ck)EIJCuKzuS;}7qw&fi)X=~ODh`)2{&#pe1^e|HoDeh*cqWQ(P9;lRQbRq zkA=Bk9lfg_Ui25qm2`A|Q85ks*&8IKBJc5Syf|@NjCz+A#ddB-j6M%KiNZ!m90AA< zx)Y~n{?}E<^S_ej;rZC{f5Y;4$#Hp=O)RukE~lNnvB2^ps8QKyYBFM&Y;BRbB(>On z$MisKW6Z}lP`;m!HdYu~4uxK<#HX#np`@ypcqswhJn;jkxGJrUA!!R%RRl7a^%;hj zAn2`DQA3H*xOPkW^$Pj6F-MizSyvAO$?fQdLo2D|b6nh(I`=A+_Rbc~1yEsjN~r#- zL&4+hlv@qNw;892wq@;82kg&L+^=F-d{~t;oEzI3{{T?4Omy&7Yo%0Uk13nb_oi+1 zZfwzKjoFzX(5T{)NFMrp)(_%<;drwtSSOD$qH4%xSCs9Q`y&N70zZ~e6_yT-?I-2VWAue=iJz>ccUX+d*e+HX}}NXToQ zov&xiE5{{Qib0Dxf@B8^(4K$3tsd#ZdD~u|O*wO8)>gCm@*c zKi^ez0mkaEEJMyIU)Voc8TDR2G1Y3z(=Sy6gY7?JL8B)B0Onq!f~?Zdx|NnJ<=xbE z3tfp)M~ZK%qRL+@%ihDoRhO)zEoSa~!HhnRPihnSDpaByrcBJy9s%$=|b3ZYAk5%KS{8omVqAB9GX1#~y;*ynE;ULb`r%ip8G}JqzyrCr$-Rp( z;yA9T8@U9-fzjyz3JKkWVxY&s9qdP|PZs-^r$sv|ppK#^b|e=I&M`_iNgbm4$o(u` zBu^6*wfz(fSj_t+W)GBK$T*=(l+1iBd+;Zy2Sg1%{!3rbWBzn1UJi>UWBSWZC z7Dq0u>=XiTL!0Rv??~voHx9T>Ep&dj#d8gf!;lrGrDVOws?K8jHBVLBdpB|oM2zL$ zwZ|---Rd_+M;;06_Qz4}7B#a^5ZAZq3La192ao2r7(O|N<1p_ir)fOnIuYU!$?)jq zV}mk_@nQ8!&DQMR>TfxqmDE*C;cW-S9u4S|LS1#4+6)c2oeQCMk~3J}(GSCR?yn7) zQf&=8tTgk6H|9s;7Rotj@oGUmB&?b@b7PPJc1s?Tx+mdSi?U)Ax?JhJXy@+cw5$Xy zPSW7hwq{~fF5K5scCIP3d;dGtx(Vn`OSl zjj5Io0vqkIzem6CN{6C3w|1PAtTxffx3RiR*C+_)ipMi}CjoskCyg80;FES^ea8d} zfQxb9fn%6EsvOG7H|}u?ePWZS`zN_+C2iYqpf)YB;F?)n9v{+Lmk4YgdEIkNEF=+(Ylr+uZ7o>lWB|{r%bsTY?50#_wPBTx1*Zng0SIMM| zV2F;E;-IM{VdX$czovv zjz)jH!|~B-He(bO)B&#b!2bYL2MuefSr|uzS@oFvHk7v9mDr-9#%5uAi;m#UV>hegrXr0H|$}^3h_H5Z*!B)cY2(XMcddcN%F~_NS@KtNE$~f@(pI1>9=O(0a zy1-Ud)a^A$&FC=reMtEWb3I-6DVY8%M3}xYQ?)pRjfu{Viuuj@bw7e7hhf06kV4Ba zeEZ5;IyT1812QmhXMa+Q!hF`9;PH3dx-r2vrev+dVsjwNobh_1;^_{$lAmnK=LyqOv&HKY2c?sU>~5%Bkw zUW5qdVTz(k+0W|Z^)24Dk@{YwSG?o=YAt*bel#>UUzawSKHibCl#=Xn&qF4@U!@ zd&(>;2;jti4#oJzil5m-1|cZ>At%xm9GuXe(bkGC*OC-#Di7;aW}>6^?ncK!f|A7s z-p%`0f0-`wU)sC;$Q?#(y2vi_PH%VllJ6w@ZvOx>28Obw;DfelN9$a;)yzG#4GR_4 zLIqt%+ENPXoAyvz5+OBI7?hmY)hMoS7cmC0ySiQ2QHtn~+6qB5N7_I%#5uJ$aUa=J z+#U{4Rn=4B^zNRjR>v6TQnVUr8hu?5tVa{1!%pu${(eknFB8!W#CD>pv9DzteA1hN zkow2+LgS`vcFgRT=f(1Tcze|CqDs1oj7CQZ-J9$}&&QzgPo|ySHB;!!YSr;8*EunM5swKf|Z2YXQMSSNo4dF0zQkbIYZ;PR>8g{ZW+gM*@onW>L&^G6@U(+Cjo*dWZ5v;Mz)vPVW(8 zjkMk~@mD9qTb0g(C7tFo2NKm{{YOD7AnoO0~exme%SBTLo9ejYhAvh zqkr+l7IHquXThi*yAFklNak#u9b?fXTz~9FU6|R)pL0O~Ke+29{{RbNHne;A$8*rp zB$@A8ynw<3(=a9=KGBWKxyquH&a zmUl|*CP@3_lp;f7@%J~h>Nv;z$KUQ+=<$YS?B@RfGGw^hvbZsy7b9b^9v`tay`fu* zKsow0erT+F6^A!kipseM@dl5QkLj7tVp|yRDhjIU=4Ygq%=jRAscKt;VeNDneH?Fp zIi$OQ@V_)3rm*&!Js|^I=m&{a>ubPfk8E)D_MhMtNU0xI82Q_~gOqu={{RvPq->H} zr?^7z;+wDV_bas2am34g{{VSO*oojZwgXEml$2Ffuk7|C=1zzkLt%S2Rd$OBsh#1@ zZtQoW(9zP-GUq8h>ZNWr8=5$EBjkkaK+8#m!)H0S`JWUTvZ=LFI!3XqR1A-p=aW?} zkP1gRtD`KvKAF;>}59Nk)g9TcwnJ?o}zEbZ+vpz*qrwjVW{DByJp3v&ou4161d za@>QjCCr`7)y>nWM6-J*R&%cE3DHF_vNC>p)i z3%8W<`*Hi+t2%|Ji=CJFlRk=ro6-votAsPxYO4Ck#)DM<0HdOAp(mS$`w4^(lYGpr zZxwQuJ+n6G zoE=LWZoAH@M+YPpp{#UXvLMQ+T^3^I-2yexk5?*T#2LxH2^i$AGHaT_Qmd!m9XJFy z;!hgovT4NSL5#-XFJbRHRw^qT;}PQ{K_L;BfiR#7Kzfqt6y&9OA5uE zNm|L=?i_5gf~~{ZPl{zOx~v~%BPm!lc5iyH8wWNaD(1I#z#YTzQ#uw*+l;BsrG?xwj%vT9f%gf6^2r9H zg0mLpW^0r^Fjg{F<$ElnbY9d*2gyb<_bRNT%4~EURfbeZ%`+=3aFlD5pq1sNj78aY zy;UirGBwREaYc+py0xma+jDG|??6$44byd38ef;us}7H`Y`*o;#!2XcNgJgM)yjSA zvZ%Odq+zku0TjT>+vU_MlC{n*YqUhoxhSTKGj2GbN*NT>(AF}h7r03oOIRrM^@VGIy$C%L$};{t#X^4jc_?QC>m6aD*`z&@uwy6KvpcVx)F@*-5xdD%eksx zu#jkfzZIa$n&?5)Dw$}k+sH9&3bzP;N~W}cbdY+d^8Wl#J=R&AORs%bxz$odRSV&$ zV`O0(-C#D0VWfeMsKYZ!4;-Aw=DIM=j$D71E;g3?S}8%l6uYwA!1Cgl;CO|%XD?kO z-QR+tRwa*KLq&F)Q`&3!D^6^4GQ~y7dIpMFB(saG@xc>{T-rO=RXo-7@36~dD<^3- zdu`sU9QEZnVYRZFq_86};F`K|%Wiz8jZnfwc-$`iqa4qb)a6yF^i$K#`#D9`Gizv1 z==pjpNM$u#botvOw7N;LW5Nboys6S`6eik~I})s>bsW_H09m|^%r@@`Y_dr)ypMCc zvuKcWLCC3q$(sa&s|Am_5khb)#@fga>g7KJsw$e?;dZ;h3&A@y^)&wgv6%c0sHzQ1 zQ3Vz`Tq-AyHc1$hw(AWvMLb1USqztGsm^HVDdnzzR%p+AimvBlRc7y~Wek5}9@D?f zQc%4`L==%{sFjejtK0$@?0u5A{hdcGU+a7Q{$jk|vXPiR)kzB-aU8&}SQonUUB892`%1}L->#15#DAiU zy*0wU69JGr3UhwUhvCIpBGO$8*-EINh63lcfW+Nj)N$1=C$zX-3+(EqNdEw_9={uK zS!`H5-@#L;ZKiXMgR08Qwzbu5b1=FFu>HBaUm^LZK8VM$r{1!nM= zv7MyCY0DigQ#XN~xY^nu`?xH}_?8S_stDkvoB?s2?&Ny^0IF=be$8PqexF|%E#kqc zKH!An8*7K|pB@iH=taJ|O%J$oO60w1Vv>&>+BxQ?bynsIX$v*sVe>z7G3L8Jvoy{X z)v;fVy`%06&W4j0|Z`+#x0C)9S>`!TN zjAJmXt$2_2F}rr(m*P<3Vkw2q9@d@c1>LugUMa>fdxD716Ll_7x~sF;il6RLvtEK`d#vzmWK?eFn|JMp-n~8_AkO?9BkThtB10wlbm78v1hFhe<~+ zTBeMyrr1n3$nGgSL-9I@=yl*7nb!E(ZSb!rn>mC<+oyGGoZmMOfUsI85>3i#+G8Bo zI+2oySR#R~hB3*S1TqN>dqpsFzPc>`00n@%FQaYBW$Go=HLMGny5+-otgbn{Mr`L7QdL53&(IpJodkmLfdg=JtYc^cC?;jw4;@zpnS^mesTSW`C z-{LRj{36N^@RlQsKY6q}K~+0A?kW8YcIZ~JSqq-xQx~}&Rm=1nhwRP?g}3x721fgR zXBT_PQsKRp)WUs-Booo|#_uHivW=?_xfJ|$`1ChaSbcDC}DdW(d&V(q(h|xG5s1r-AmSg7!pQz&N_;Su(N?g%^)3P^HA>)Q8Eh8IZ7JD)VO^E7L9m4_F^9XlA6MhN>4U5 z5(t~bo(fh+yJeb+;I4v=?w)q%c;K+llcZe5j>Rzgj2jSiQ?|@-xIIz_UxSv6uT2eI~e;+|eSl=8=#+*+1x-CYxhfA^xcYa+>awQAobPir$; z;D**y(^WGp&^3ij&K6j+bro!tpfR=z3NU2EfE)t9QM0A3%}pzO3WE)zsHCsYJ1jCS zH!2|QK@DTw&>{5HOqMRwbUao0#%5cpdm{~Plr7BN)3Ym7GYX0O4a~r&0HZ)$zm7Y< zGqS50fb~>S1Dl07@m6EO`IlKsEoIB}=%U*) zD6mK<;dlGQmU#Wutfix9U~f$pA8Tjxji?Yc-i{dlYdkXEO>&xy^s#|v4rlI9q#3Gb zn77r?E+*4FpVjEB(?UfEzJ<@Z@Lg83EF&$N-g+W%VX|cod#!a85oOe?4w>gn+9}#m zz9!SuvEj`iXjBzdj*<3bTV>Tb&tbZAQLtrhXDGQZ98QiBTYR_iP}X54voPH@=)^T~ zOArmv^HzZYy6A~c*PKrkMj2S>PCI^jM5b z3ZDm=&6Tb!_8zpEBzFtN>aaQcZr@WLJ;7|Ej+Ysy6;zLH?ZJ7qCL#}_pHO+CG_`eD zHAt$Wec8>NmOQ*OFEM!MuVZ+`)ijUva9!Y#dp$X!mAIQ~@OQ%K9Lk$=;I>#kIYG2^ zZfmlMm@M`lAq&SgebJXm18lgl)XQ14vwmYKgSyr1joz~vf08`dW6I*@@Ki9GH}9sJ zR%9UL9t!NyJ~rk&3asqkg8UX*xgfC)(D7F=iiS^|%-2|O=!8@m9g;q8D3sZ7Yz|6? zaU#O~Qq;Zx7Sq*5Ta51EZb%>(dCkQ4p!jItR!v&}08%Yfb#({LcWrm3l-!=T;*DVx z8_DVDN2on4-W?Zw`!Hv%(VAGDON9pTnxN-@EC%-34V7-Ds9C8wywQx_r% z4ci@T+`MS%#|44GkvqA2;&&b6Vnw5-? z%_FW;jE)|vBylVvjkfJR+|-mO=k5h@ov3Dz$)Mn( z^Ki!8t41)^-h@(Yg~_`K5Pl!|hlLbytogB4xW#oAwCeJICg}Z{=`h$(Lx~8YzpK zeV;6$!kX;z1Djmdx_%L~GGTS>r+f{Ok^!Bu@n?U#pY%bXtEj~*-z-#emd9-JXB;)^ zbxy-)F=O&d-rn8C^rvX-ISJxfd=aH@{aBZ0SHg3mr|IlQ%#Q^Qe&R85HQ z4Mj#rMX6^EI`QC}iB-C%^jbGP_w}UB*$Y1m6%Bk67@g?`?opfHuXj{W6n#OEHkWw8 z8!r5xk8<)d;h6IF!L;@FA!Zp(4&c^1cEJ3OIkkP&yk7>PhHdL*nq0Qt=6-CQFY`m` zaH{&&K25`3!aW&~*k75|O^FYpXdgh?w~u>sNKT!un*RWxTj9L#Sy6TGXe*(pjz>?1 zGdU6JdiQv$uwv5!%1PpM6<`b9w$XHcP_R9pU=h954?JUKi5@2UFFnS#=C2g3eMD_# z6^23D*4%%xy{;dLo>N)IIcKM+)K5`|)90wfpkp~_Z$*%<+l(%fsnfl#t*IWvEo+Xv zm!3^oRf(V0)e)wy?2ox9!yeY>siY))@`;J!F}?!$sbiDZ z-M6$yLUmbZdEIfl87zbC%845tdu_ z%#1m){{XzzT>XgA3OqVf{_95A{{VgbR=Sr2rKi^`Z`Urr6?u({Ekk}P_RnnfHqE|X z)l>JMCZiPiWi>Nw#xz@^vgvwin(1ub+pH0@(f*D8n=Z*|@ z;^C=Laz3e?*$W)*0C7>6_iS{TuWqV$8Ka?mk7h$T7JNIR`MpkK$ti)u)@aZX`b8l0j>!!SU4y!q5TvJ5*$tOOI=Ie&&{EVhO zF>S{uwC=^cK4irxQ2_?-&?3H<~L{ z>^fQ(RME=jx^{r;`qA6_;m?Zse7+ZNIXb(;X=AHtlJPnbFR1+1AwM3&B5o4q`R?(| zlR*9<+&ZSvV{_C~$4@Ogo^N9DW1rp0bzaV5wN$&GJg0^W=Ez&GUt5yLgIpZj%f^$J znDgvfiN+_A-rRggcQuigEyRweKUXQdXQR4%*S6!kEY?#;Q9&1GomEz0riJ5WckSKa(?kvTBik1TrmXuOhbQK71K&Q?Fr%dI&)k1)N4A(8G2<)URS z-?7`es81diaNvFG-?kHL;MzT$-&DJGRYuEHmvGaGSp1$1{n)j`KN_Obi@oQP$l_aO z+#Z^0Og+tX&Lp~Xz<7RYw$|;FDznmIkNp&JllGn;yZ87g_E%!$#P@iXEZb7?jswO{ z_jDb|!;c<3J7l|ic!9W9%VN7*zOIsYK@Slmjk%EbYtx$6;lmB0rWjog_5&f^iJ7CX z)SHE^k1R~e*0qcr0MG@D+8iy;+6dW4mw8q*>gxe+ChL=){cL*gQKmTPQW$W2F0HPf zvDGya47ui%zSbI&Nw6M1LbB^l>|NeP5V% z2;+N{FB4%ntS!xcXqE|4h`EA?w#+s{OZztM9#`XKLan4@(+BCf2L0Av-^b2no}(=0 zvD*=~66G@x=K>#fnc0b@tj1x6s;T~L;xnAypghs-vyej2^TEhI#Zs47x={nCA?*xc z=0GG3bX}h!>yFkOb9pq_jtN(W;&qTaD=EZV*h}@!4=eW|=NoN2o2tq;!#CK?^YBHs zgjdq!lM<=@E~IwGYwia@%R%l#CXJKe^VIfcsc;cSdxp31qeCZVN!A4JJW_V|=KDw<41?}BPp>%+6DD8zV+i#M}TOAH^heXZ|O zZ>Xvcj*k6HZSz~>$tox``x54tJ}P-(=Xl@vD4By-#>+OMe#a@GxcIF*Dy64yW}{B` z-AVMdLv<~U{rQ%=CMEIK#C;hK?4VAh1b`h{`ewTrXu`OXla_p zf(6MxGEYFL;x!JZV<_mpzHK8X*l#zU^T}4yiIuU$_fbPHrZ?VOh57^3D9jS>nH4+t zf3&v~?^InaG!l8Eex;fj$J_BmDJOfg$0n0S^BsH;4x_?FJ9CG%fO{X+6ohu|Bbq} zsi$K<-QL^hw_SOnSQa5!MU2dADygWSEM&$cb;Ahec>(WUC(7aam#uA%O$H$cn9zBf z<=+>{yu1By14Wwa^b5)uf7>+YH|r()ir-P-kE73s?`ms2?=g~~+j95Z-zoUt?^qTO z_Ou`QvW4yc02Rgbxca&IZs_L7QdU)M#v>IKJ7tj4Ii0Um1D97GLryEvDJk*X6AQ#J z=p7YS@Qjc3cXu7W%bmj9JMW_Ny_T+i8Ra4MQ8Gykbk2V5j<$OaecXS&SEOTj?n;_W zL(N@7C7c{5*7pOU;cjch{%f{8^DJXbC)%rnZ2k>XhDYahQ`S~K`J<$lHtC~<+TCq# zXP%efvpDt(PZecURC%pUA!7^pkU1R(1V(z;p~O7<4|}O^su3{rpy*whi?&f#|bUj3O3G&J&RM6=f@1hs?@~F(GS1*erd@V(VyL&`_)e z#q}sjEXzx$v?qf_Awohiu50C8Rlr42# zGjr2(>mQGIdbbwT)q|b&6myT@Argmdsoc!2pmX^gj~4maZ0Fuli>9q~F9iH~d(j!` zy9ng=|c*>E-rv@)1Y#)Gd!H3zK2%q?_svBnOb)P3Pm zj(M=z!;7vD2m3D_3e{polET8~@#n-@0jQ+QoW{pV0ls+n``Vi27^SRi^!v!&dvRgp zot2Za>~hORG`MukmKWX=!RLqYzw=rOYN+a%>7aH=2i8VXu}68kvfZw+9FGDOXSR4B zn8nAD;6g19N!|c=h&({%rvNr4Mm&1=q1Fe8Jdu*t%Gbv31q#J5 zNOEtXeoOEQ%^Z@=OgF8wz|gH07A(u0vbWPHFb8+rLo$WPf zDx)!xQaF!a!4Ac!w}H%$P3NVE^mzQ$N^-ptlBzoD80uNVLGUTWEOx`=8oGv8SV^ld z$-{_SMNJV9xOECcW5qGT$O#!a4YRcg+qONoW2~$5P6UJloYyyxCBj1A1uG{!9NUEb z)KYNl6a{kDyH>i(yxhvyHQI$FwDL!<5!E(1T+?&_%G@S7qH`o>@tqG5;8tPSHX(t| z>bwf7NXXUj9v<<)t;?KA%u`(pW@l-5bOnZH% zt{nq>Pq-{kr<99xN3WoxhH5=f5lT({GcXdPw1lbCyCk@2ot_}2Ou`hwUNx zT&p;C+^s#MCT8$D-7*jyTnZuqu}m~ous$bl=8IV5>D+sY&sB$3Qb^Y`cUMevmUJVZ zg51skZNpp0EJiHpYB9&jNcOPP4cI4x&k_%ERO3mr*pHo1Gqvnr^B&@@;#8t|Tt^YX zWOj29-C`3{xvr00=0nTv55;YPyAn1crYy2Ou5O2l7Z@%pRiywRz|jIB|?S2*6(IxVO`i zOl-@?@>y~!G0M+9tkN-~7&IOY{7P5Y(Xz`^kJRt#8@Q!m^l*+0{L0W__;WiE9I>!) z9Xxy2QPDUSG-VGQ2POr0LMh9x?CO;6_)uX7`JsUJ7^G;vv6^tm*>T{9)bCXu?ccWmQ^iWg($ zwEK#FAY`)}t-ID{vlVfyyPHxipkxmEy?NW7mqe*6VVg9vJ3ClDx;FNhdOe(f1&zv? zlVVSi`D1m@Je{X}PKv9{!QwYLvEM**UDoj^qo|?W?_zUV8^2ix4|q!(XefJeLB4tY zeA@hw6scjRig6BCZymx%@;`zu%35ekn^RRKY=-@YI?V&WR4~*>B$th@n7p3D5h_eN zvCVXoHMFen<76hLhO2VNHl2~u$I*?~;)&7$EFtCXzf$BjDr~Z3%;_zzs?cc3k*#Sd z?1ZUihB%(k?E2qCMkyHP=(FM5hk(ZE&yp!gBSlZ~iz}HXulp;WaFMqS?<>A z(;-We1JyFmcLu3hO5>}XmdwdyWNqy_$`EIp>LSzaod?Zdjs{1rUwKlaXRyzrjJniR zIF5|aD^SuyOy5NlM}I$xutGpJM#kN4sZu^z;`N@;t3MK8^&51}YRTZTJzVC5DfP2S z!>|-=CC2V^iZ*>jrLBfG>DxWZtFZ}P>NTuYtQRF|>Kt784{h!!ZZPb%ARY{el8FIy z7af!I*_;0WD#{uy;X>3b{s6Aus)mw1-53Lq1K<>@f!AD-IyUxv5JlB4p*eR10xl(u zXfJbFerH6z7RO^gfE3fe5%W(v5^29^uw}HdcAZunoSi1sCfKm%xwj5!PDXa2*krp! zESO$R&h5GPdNV&VIdHYmrp0xp8E$PC!X7*mvfI{D=-m`g)vi`VE1DNK@J>J|P6-;F zsX|=4DLuhOQ&&$z4)&$(7T`IRpRUF#aR!fCmYLibJ!hz@(7kRu6%(BeC#R|Z0HvNK zXXch#+MVq0^O=WRWMbg}hAgF)Cxi_3znJtz@a!C)O;weQ;v*apt)GQDN(rhTcIGer zqubd7xFeLbP*F9`cchbMgdp@y znwmO>_W1QycU>BzdtDzCsdfXd!$>*Y-A1BjXyN144W2LC*0N>Is1H-pc|Iq$@Af^i!%dk59(g-&x=nlxlnX7LSE=|5IuNK zg`V%nf<&Ck9Waf&l)bJEcAUzJjr7$32;SC6c#dl5!`;9+0bcD5(~|7s*H#7`;(oP6 z@dOXZ-%S4ik^&)Odo9eKa}QffC+=#cW!&b%#L?z3Yb|DT@jxhT{{S@OBysTKtGcPO zo5PqhznbfHKykacxhDpvanW)DJ9b^%s?8ZM?6q8QIbCGX&^6$dIOVAP=%xP#_?K-}lpgnjNR zH`GmEHdtSG{?piJf}R*4q-Uel`*IW-7-+*@Cad(59v9%j$3#jBNhNrZ%+WTG(#s}7 z$z+k-0PgQvDjYSmy}2Ch{WE9~i&Uv_tGe&d1uacmX;|PLuiT}?u@+Ip;5e+b^GQ`B zob4EbPf=ei=PO;OG{~Vmn{~uP3w3i!V8k63u{RJb=e z81B;_nFMT6GwoRrjwW+{iocr>*7E1QT;fjnY)b+IH>s z;CLZ;ql}LMuDfq*tejYdpJ#IG{ZSff+m}1E;bKA!ea+rf#^2fA>6naL`j;LXz6!t6 z1U>U*w*l}`9AKCFnfjm*;pKPH#Ct7VacMtcWXEFi4`sghDhKW)iO$OsQrfJ(rIknH zGV#pb{?dc##~w1YAPH`2{?)&kIMd6`_C4rP#EEV9sw0TW?6y*XI>^gg+k189m(aA_ z%fSGSrlwP*Pq#93Q|{{A-6>punIJFcRITGGLx@t2^e9o)yZ#=^L4?*jUD5*K#Ob*+ z;-ff}V@ANE7$srjm?w-5e`;3?^>vZ3Z_=G0wUbUN{{XPirG5w_W1jhMZ{AVIK^c%U zFCJ*vM(j#^=_^O`1sTL9=R1GQiZ=(N4%S^ig*)inF}j?{*aS6i{k@Y7Q~5qbdvS-2 z8pkKFQ9|38ntRJpu+F-9PYvQ|^O-+Uf96_8RZ}&+m>d38SmI5;W-EUxHUis8R_l5T zCyX+%`xZroe8svp%Z+T`YRPN{j2^7FwCgDb3jTB3`IW;wu5Yho!sqt8S3#f{JbdMH zifRZVE&;C5THmm7p5FwXaR;?4P)f1VLN#)qbxoGxiYaGtvwkXiYfl(>&=8+A4TZQl!q;Te#Z?YyoF2L&@fNzCgxSVzz8_RVyhk6RqetoKz5FaZKAkinG6g+K06P88+7~!jd|u#)q(=nnC)lR3??u zcAWIUjIlCS=3|r$FOBXTE!9_#c?q$4vu8@%=14BVP!5GoKqy_F-YVraQ1x7bt1KCK za9t?Aqmq-^xLj<4RZe1i9N&;q{%6AV17Q;^<_*eNl24;6A9{H` zLS4Z|SpHjKm*Th1)j;U(ti87ILRn-;Cgqa(ql7WuVpqT=^#2XqnQ3L z%@=%kYNb2@%yS&v%sf-=`%tH4%nxJQ_|FH93zlvvDzI0%^uC&u>mIqe6!ONrC( zX`jQ_VfC5fqT~6A)0`5tsa+aqjX*jnOHGx6K~M&Ps*xb8SqO6-(F(xozK+FYpqJ`u zJ8}0EeZV=ED?5!*zb5uAB!{-oa@z~|ry6mgvU_@}SaoZ0EH)aZ@gmReD(ec*DWW}c zTO?2p3F(Q*1U5WWPLD5Xp75r!a0uRmE3_LYON_UD51^~#oOA9!-iyyMEGnxFozT@p z<`H{8*?1iP06vS_-v~O56)NmL3__jI)( znu1R4ehO%6nLBiLtEX-0-Va6Dj$88MxNF+%Z{EVmKHCAhQmf%dHWvr(GT#Mh#j&?D z+|~iaodT_=NR!wQ$+m`wJ9kLe;uCa%w;$%vC_L*LtL*v=IzI16{{W8!X!@t8k~&;^ zw|w@;8`#%^_gH8bO|+Dk%S6}LJbuN!k>cZ`r5*uAzI63@t7=afCw6au;1MPU#LSVk ztY<)(sk(e>vd+&I95~sH-aq1W9|cXgMLZaU64X9Qr@r?yI{Nkd(TggT`Z16Fo54ZK zxX{+<*4PBAyVof zpZCf8hvK}n)k+x2L%Rpvs#at#4$SX*=B|xB3cJcR4JHZZ{}88Ei^647}MUE{6&ptXRw$! zVdQq4{#?{j!)SDKNMYipqN2nxYUt@`simG-O_L`TT_C5#B8nNM zyp}EpL8l%HXxkjfM{Drrriv2h_8QywaawrxZWlYY{o(!22;~OOwl-anHXpqsWFW#S z=hVfKyx#XBw3|C086M~N1+0$@iZ8Rh0Q5*D}Cb3zeQk5R<^+)s4UYuJsY$K;~MaCtELF(lQJ zROdD~XdiOZ(o$1V(=s|(84P&`sL&SMVXXi~9y^F?%2?=Q`*XVPw}9ZJJ1z@%n1y_` zZ)Xk>kCwkRpmdFo)^e>p;n6rTR>xzg=;>&o4W*}!5&Mm|%~(-VyLm|)yOgS#-}?^7 z8tEul@%p#?lr*p~(}y|Eew@(?xc9U(Gpi8#2`^6J(#y;Fc|hiR-jn zyzRS*uQfv&h{=MMGCPb! zf}Hx;+Fa1=?i_}{a{3%Ejl4|fT&!7Cs}AnIl5zI(9|EReteez}CwtXwOAMXVQp-H9 zFN^}fGyz`XWm>DOrlftQm8|aKehIP3QBm~}XnDUth+))p?Wbd*f;Mj%sSVeMGKfb; zc)2a6&^BRG$Xw~_9Kq5(H1Ss{aLQ;+-|X3W-QCuzMTb+u-%+Hi42+F3*@|87M%i_uY4g3r4w=MpGXLH32U4{hKboGOO?2?9S+;8|tYn*JVInjOO6f%7c}fD_gzO zIw5r~CDsm11=UGaG|tKD1p$V9y{4mZVeWHoU!t%m16u39g07>pGrF6LnCk?~jG3f= zVZ4zl>Y!wEBX?kNL0vBMG>7VA;oehE22f%SPVx=0ocf^F{W50e&l5=NDQC zbv^40vY6w#xi+H=X4#JgJEpKlG0ZE>;&hO=Gb0zt!Dd-2ovWG2a^;-Q%xPy|Yf(rG z_2`6c4ie{nl^4Fs>s$kGn#$ZWHb{4Ja~xKjQsH)-s~bruJ(I;~c6%23KCm^;>`BBR zSdAm7r@MG@3Rs=IV3Cd0cG)aUx_YCnBw3s4k#z=E@N<3T2-%ESO;6_1J5~)5>0u6S z+v2?Z<-)f1sOngV^;JjV?)FvP=0j)br3ap5@#Lwvz^^o@9?D~=t8(40Xhtra4T{(5 zRCQ;gmY^3hcpaxOtg;uD-K|DROwD9{L+S$fCO*Q0=-Qc!j%zI&+yiw{0hp!r70@;e z3fju`c03}Tt?I3Sc$G5(o5@aN2@MlHn470GYKI1u(E!#pfa)&W1pF46lU6b_*FRnZ zg5AMQ91Iy+GXZO>!yew%ZkWmNI_hY|o2!WXM<*5I^^~$UzOs2;+k4N-`urEu4gj!& z(RohZ&{D-z_rBIccGFPR9ndz4Sg3#_fwN&(Zw52H5MnghWNpD-e;l?u!KSNOgW?&Pl(|td*v`z`-za{DpbW*}2cLFt7{Ci^^+o_?{@v^CqQ54R&t;46>%-#fi zehXi-ds`kR&!e$Su+@z&ct1`{&8cf9p{cW*k>iYK@J6!J;&l7iU1E0;!?;;4J_(PSE^af)D>Bpi7{?c$YKU=`Y?Lf?^K+2!2$L|%s{Lwx z8$V_d%4{QZPnEf8qwCdeZjuj0v!(f^m(ol=1Mo-bsF_I7B~$Z}!JL9aR@!!Mss8}Z zp#n)?a_f`9VRPB(erl&oY|R**O+_Txw{32mQ|M@hUrOwq=c-!gR^hPcqssS#sOl8< zHJI@Eotr$ZU}w!t>^l!@F85x;?IGA+I^0fXQp-yxofB&@xBmb|vWEboiK4EdxdR2u z3$*yCxhexvY~3wqY{6)Ho@k8qlo$m*N_I3Ga36}PjO`mE8;U%j4r>`(Sv2xG?(r(| z#@}hRcM-=Wu9?LD07XtNE-qE#(Y>W^D8}nEonSbXr=mJpqobsJ&eq&KP#ck+X`QLn z{lQqMl-E?b{{X0q)EtTLNkd2Uo+K&8k;Ze%^Y<;WgeS8UBP;QmrusG>Q&E9Kl} zhBliH$l#HlXH}8a6%t7^`1Z6`C8jlW&kS}>YP9&RT(ptXM@qrE(@l6UHz_M*=M7}E z@<~SaN4wDPKJw@KtK0Q+02M&E* zG;y*+pn2EtLNTmXXl9P4Dt+8@#to+8Z_~rYSI2RjBm5UaaV$Zyz1o&%?Yi7Xrr~7q zUnxRdJ~}))isG74BvMp$7vrw0FOU3xB$}-*ayR%~)e~V8*3_~n*e{R=YR;sef*%Kz z90vnzkjq)VpHf+yw7iQG+G^Zhsq)V}gvcymr*RC^yMnIBDzee~ zvHjXL7N)`~OjmoENgvo8SAQ47;o|d*V|g|N%r<h`2TBe8u#PX2R9-4bqHUVpK1;1TW}(3gK^!KkO9xw-S1CQ~amyzK7e;Ely~Jk&kSzoIMep2w24z$DcvbF5oYfwhA~SUrjACjpb&mYeOp9qjf0S0rv`I8W>K9Elh#CV zNa2>L#(%40E>OpM$es^JHB%?udp5e)n#qTh&lGr9#n@ylXo5BqD)YUe#GFZ9PM(U5L}TRY|Nsy4GkMIegLDsAzDf!4_8MjAnE4 z*amC;`<8nUijqm6RZ9Ht)av4FIxmpq`8S)A?l;zfb1 zB|s9g7P-wjl1NG$1T@dD4t$q6036S9?waT-{1`qdOAIkfEN_wK@tE!l2-jb}{mVwl zMDs;SiRF@}!!}P;c=xQxtEuzRNlOJ~HB+@Q$!!SK5&pJDA%aXPg08WylC{^6u)GUf zt*#f&{LU`^+hLN~t*F7amMHV@Xr_#}a~pj^ID5**W4LLKws>6wshJ@%L>}O5IdCV3 z4{|lMSj)WThjSOMM9(}N`wct?O;rl)W}(yqpAlqFpLv~=du(q)e--o}$9+kTKc-xo zuQkRXbsYY4lZKMBt9tvCba;oDzD%>oBbveBXxENK-OF2!P&RnC!zt5W1%{R#%#Wm# zhNYM0-eG+l^BmFYwObKYhG7)goRtw(H05-Wv6gE=@#FGGX#AjIut6O)WEC(Lk6$Qr zJ|OTxJd|xKF+4VXlf@sM(Z+n-pKc?|#4Rllql$UyvB&0;m$4fj-o{ID(~a%@>b%Z; zth%m@Z-EH5p8~0--i%h9fv)U4XLoRK8}}@Z)?@CjmJGD=Q|`~940WDwrL^jsM~UHB zYw-!DqjpM}UKu+qcWpY_$A^#Ps#RB0(LRG2!`Yn1Tm$5F*_aD!?z)L2^B20iCd~PT zEEUyl^KmHv#$9&{^;N`!4mC9t56P{y=YF?D+}i5wA(+si#~r7Ojg~S&_Yiqg;QjzBcp~1 zUgrzcxQl3dD|>dweGwanvn9&2vMp^c7z~+mJ|Od*x3h`Uz;#{!050o}x%g+?wYBt7 z&yDY-dyk`TqelDx0KQ06wC`>aIFfj&hp8D2xsY}D^;2V5ob4`-wY&F=jdW`e`ZqFI zUnKBI{obP{paIl!3(Voh%sjfeJ)|+kiq<`tT|AM})5U2FpKD(JVFLO}Nedq4GSHlX zo(A_J%Y}EOssPk!=9`FcT zVm;_RHZ2H>7_x6EtV{Fp&Buxy%J;>LS@B6{vzxm93Mr$frf7&pX3~sbYTzXBr0%WCYwwlV&z|3Vd_a zL5o*a>kRCc!UkJQ*xL8Mk8(e-STkavW-C<%vujGn@*lLPhYPxSmWOi9*2)5v{{UvrgQbF+qIOlt zCk?z5{fc&Tdyf|%%@)G2l76=?ck3bP+@8v*nhHl!2sc&?7XHc@1dva-bNwV=Qz7Zl ztzBjxxYe!f6ehBd&LQn+M+4D4gCdocac2#)*`$m_sM$}u%^O>D#b;u4u}I>6zAPz+EtR0Px)E?toO=_FoxexI`$&Gd{Ri3n)PiET zkgJo-sb6Yvdvbl}z#+Bt)Uq++mZ8#c$T{`?%54NDS%fh^*H1LArJ3>1tJr;x9eAZx z3d}O3o#f18a&igchP~Ef8DdSZz^Ts5d^He(|V&?qS+H6jpu!qSMw!hla%RI8C zLq`k-XIIM|;{ZpK@AoL;f+}`De%DA(s5ueU5~!r3tYfl0tsF-#%B@#RC~R(%TMUE2 zXS33jdElcFdA>kgU!N|P@$OaUozTJAmv#x#+Gw-`9iBV~=&F`R`02%%PaAYT9m_jN ze9*dm!`|`;1n?K;s!%OURURXS?j(M!v3Y+c^FHNi)y$`uH_xIJkw;)2>)iM7`_M>a zp5e}lCPyGT1#U4k&4!e2rh|cDXco6uaSI+yKPr`>!m->cS|>K8lCrLG=$_6;mHKP$ zQBMSuMKq8>B-IVk`^Man)D$wi42mijRN)SDqk;aA$nM;3@#u`~#w##wC!V?0G*wp( zV>>U6<4|vLeg%0v*lT%3wUm^SVf6lFF&{dows8(?WOqKr&RdTDtIrre+HiMN$UaML z1kqCBa!XR}+|vw^#{FHFfVuZ9YlX3fTmJwTC*r+7f&DjGF z`Hr)tkHX;}%&XYlUegICd-DxA#vv#2PWswyRKXCx!yRAP~mwau3?C)+OI zy}WYLYKU-=mraqkZTcoz)U&!ba#Is_=(}*wafVYy!!e83QPf1qb4e3h-WL#0vt=Z7 z&zC!)dss%cJPOc7N@;SC4+UQr!wjFL(mK*N`>|7c-KMtI^~X;2JW}q>&jZK3EvcA> zqB!A|<&HGcAJU-b8U3Sw6{^6oXF+T_rgq63gFQU_q;E_0LUAepX7j2{qF^-~o;nmZ zDWirgvS#`{#^ifckLo*<4?uOeJ3xY0Qn9nj$9j^o%4{DKbdU22=Qn-@;+xr-y>6^x z@PiKUa!mkueC~~+{{UG``yY4oTR3-8(+Qic#nvggVZ;N!S5nWITCJFnOG@@V-MCJ^ z9FodK{ufMO?0+(X zTn-_b@k=Yu{L5S9tjmK{H&`W)CAAWD@lJ}CqO@X5QsR2Y58V}o@Z!Q_?(-?JJ=yLkNExfHCEc6(e8G$~&a z!=D*(3~RHF+YhSo`Jirq!4~!`#unfBq4DkuYf9>RhHmF}Xy3r}LTj*{)Q*xTWO(>I zbSZD}dsD){N~(;Y67SeTV0yZXmEY{N_BJT28FHB)1Wk+UgazH+Qoy^W9SE z;t|zH*bmkjuTH~p24Yxjbxq<&Z^xSR{9AKV9%x?E1y={L*9>^?S9Tv85l-r9 zo!FGv-`IHKv}r4Qe#%=eaLSn1Aw+XIgo<0;tFj;%5|r$PAqOe}%$`X7trt2--L71P zMwOr-9e&NygJmRb>}r@|b4`yVfpk1nPs5{|UI&@{)Ai@cP{pwpQBl0T+5xI@OqSA7 zP{Q^)4#i0~C7KH<_D5)$g4Rg-wmN8J02w3KCApA>(!oAGi~xPDPji2&FOJci7QPzj zB5TeXNSm+xwH=Dm<{nl4- z?X`?g=9ugsN7V4%AF4k7NDWF`S#WS8GaT2j@F8{2Gy-TePi>@byh3fR+m!Jiq7EF8 zgD+;-sNUOZrIs_3IOWAQGkppa8Hr)=S5eDPP}|2K*SPfy4-_-u*vsha-=0i>Lnqr{ zUXb?XC@wvMMT$`F%d$w$+%j`xf~iqp4X#~piiWZl&c{an1X%bap{jJIN?MlgYU#9* zpNQ^Kk=u3Ep;rT|b6F-EQ>>KS4^|!p63SweHzW%bjr5X3h{Nl{>-V#mS{i9%s-fPo z*_h^B6eh(STC7rG^Hg&KPZgWODO@4TBd+(|=f{aeHi}a;)U;#T^so0M5tvIH5FjQo zMY+j|N9)s`-+O!3s|}n~P_g0H)8wnw#>wG)M=hip-3{4lqZaatT^|7~_i{>}$Lb;z zLgpS}WNP5uO!hm60=8Y~COJv^(eFem$w%nk=#LP7NTvr>=J0pp!$TZcubb35;xb0O$1ifJO(iWn*riXMRX0QG4n%YxyWX^LLK|j=_Wn!> zVW%C8o4cb2 zAQYmJ)lJPaax;{9wf-eN6RCN`)@n|Q#%YTi!{^Zo!aj5@Ez(?u*k70ia9g6&Ig>(w}>BUyb2~O zD6690KP(SFuY*<};%^rG)hdc(8P&NyVGfP2hIh*oT_1S-dZBG?C3KiPSC*b9#{Lyh zG#mJ_=%Ssp_p#C2Y)S(%chGKq;Q)UCp;N zMlc%2Ih=Z~s3R_ktS>Qw{%L^``dyqIYYkKP4R3m>1e=*J$npHu`-7`^E0hw!JbJ08 zD_eIu$`{tf8+$#p!gSY39Dci+6&F^@=C}<4u6s_qwMNgX?6u5pjBV9dRZAvr)sqNF zg>{DO&2n;TW>qX>vgHxcJ~vs8Opmfc0_@9)3Td4XS=?0baVMVfAI)gsAaPll&i23f zru&o_>{?U%)02H#bsg@g)&cD3kZ5d>C!QBPk_V)^YmJjLT~TcO>CwvQ&D!fIlHE;( zwD;96Yigly6(CHUPc+g}l+t@Chemrkr7q}_7@srpvAMdat7|FfU%G3z^ZkZ$@hBE7 z0tac%vj-A|)?=qDqo8X@=QH>PLZW%=X2~aS{z&2Cd%RQOqcS{1#&6y^4H(Z8%}CUW zq9;$9ce?#&lZWz-XpSF;OF7LGT?;wSC$4-tA~e`caFH!z_tFkrhq+vIgto)5z?_F_ zyi|15O|(tU{w3u+yV`SVc@8kJbcTzg81Wz+V1IwtR(`>GY%rWSYSnsAyk?O9d2 zax@lh-cCqWYjjll8iNd;0JT6$zbQSdDKZ17LM(g~u}LdVjz-g9fog7BDC4W;BYo4IH4-C(b>79_$uPyqIFyUpPpA2h` z_MO=u&!O=_<)d_2;|y$M@rC~YRQ~`DidEvLtDM#~kYVq;9ov#_0Cy@f)>Bb8aYvF# z0PV0eGT&qs}{Y@8Ul(-i1p=m6v05<`UTIy)5sX-dXeC_miWJAp4iMR3{^C ze$V-rJ1A$?wV%wE&qM6U-VSP(&Oc>l1w?%6BmV$0m6dJEKS*!+k+G(OcIDcSatG&Q zl}mrjQ4B2RsdMIbcv{bO)7f=j;+W@Iu4qv2n-oux?rS3*vUq$Ds_aG5H+CB6<2(no zC*%-%(%nuW987qD?KT&D$AbrVQ}-ca8EZb&FmWX4={!oBIz2?SO>M`i2;dS{Vlcqh z0_K;2%IGxyiU@Sd!DPxhS@DXk)f-wvJ$Ii~gS@W5_I9&q?Nw7Npu_t6Qg~mNdfdYW zE*C~AsUmC;x0m8iKY9~tz8{8C;Sjrb+mQWa&*Fa|tKt}z?T#alB@J#RoVkp4fe5IR z^@mf*B%zu^BlnVOxsmT1cRImwYq-0LnS-&a4NOGPZ1(D=VTwOmE2qn&b8#PXty73W z3~p$4c{+Y6ZCYLs(K}7N^>}Y>cp+Ksz zN$GoRcJZGAfwel8VfCcR=KF~)%Yji@kjDA4=)s~_H+I(&+a3gWrc?kK97l()eaW;} zypqLf9cPc4L6a+)BW=}GrKpq_3I70C``@A=Bu$jaDOqkhe3U zZ~0Y5PfHs{U3#aSL+rHxOU~(HZjeWy`zj-ek76q!X0QUA=VyS*fuT=6lkEQh)S7E% zWj|UKNucX)gX!HFy0=p7rTWwsnTKKv=u7_MOFXa0;-I#Oj~Dwx!qV zfPIPLqng81o^S(uKNS?E&TaW!0HRY6-g3I%#9%O~> z;!gxj%EnqK8y{~s4N(et-5z|c(DCk7T^s4&k;&0I`g=!BRisOKDAYbQk^@TBb(WCGmfYTp~XvdnT@wpMk(N^XJzP1siSwO>mKz1f=IOu zvFZ`CACeQqYLYz7I-w9^a>8uwM>JL(LY||GtWyi3&T5JASly}2Bx>FY#j`fyAZ;~8 zyDs3ahqR$`$F0Ja8THEK6%imNZrR!;sjcA0pja<*F)wEqA| zL-cKHtu%h4`mIyDCdZQTV%cdX62|L3JwaZhviS6P{RoZjwOm5a2c4E#WBGJ(=lG)c zO)Ui~<(qYP!_f+;ppq%YWfZQbs&6sCj)ffJqkKT8E|arx%ziq_Jl46brK|q{rTz%3 z<1IR@DDldSB#LZTG}Na^>IS8s#rdM+zcAV)sV>PQ62$h&85a*6 zERn8Jtr6EyRz;dT%66tW`oN+993FFp<1eFs`@L4I?kh|VQnPr)8I~OJ=_F@64|qlJ zy77qNvCr*|Bpu;vo;#h4R2#DC6j4iU3Ye~Ry6J9_I><7mYHgE-iBdTs0F75JOJNJ6 zBSWZJEuh$_YufsX2Q~_xC+w5nw#qqT<`$D8-|gY`6tz?{ZYyAPaskhn@!+ezosw$Z z3ieD-2c^Ynoefhs@Oa`6P=CJl=Q!@oR^bw7%fEx|vAjG-A>ORIz-T6PEev{|Xk(lx zT-Kh`U3JmOT6>mP!RS6(4Z(B6tz&g+qE|tOdCQ`6@1SEfC*x&u7)?{%EV@QI^H9`J z=TFn>*tNr!<5^|JC_Nn5+>pr}K5at4eYWO!zrM;*ghe6ETRgRf_wXRBqY!7}2kZDQqE*t|3DU-1dvJ?p(=cpGYa*{{92vRG1Y! zEu(QPX?S^IC%F|!Y%Q2<(rYyPzUF>v+!R#w{;M_WbygQ3ZOWcAPHONP=mWAB)4T)j zD&p+B#^gK>hrueS`LW=(42Sh^Aw`%swBBC?R}`gn9x;egpJDDk@AN`TePDTg%bL1R z-}in=xry#f4egHBg z9i#6jMY6&+4`y&{Ivh4R=5D*m-JJaNM@hdG%DTwT=T6?`ZJ5@ucWAQvXHOkOm~`_t z>|};B(!^izT0%hLgl!aUs=~x^xu!uQTn1}s4bK}62(!S#`3|&D?IceY9975*Pt7|SFa-jK`=`u6YNX}8}en^b)=7r5X3b}!0 zr@{v5mdNve%@QXpw5Lym;xjk>-YQYZ%K%4h(I$Crj!ZDGFnV%BeP}pNI zsd5EC=I^9yUD@J10>}BDEnM*YPQG~v*35oU{rIEXJ0OIJ9mX$T-WM0i^NY8Fb!cvt zBfBQcn!KlR6PGSj0O|1fWyPywnYS0-FlIKgGf9Urt+OI*V1DYP2JatZziPtIg49w* zeB58XdpsH5k0a#x$x=EI#mUm)@ykslIem5!@>eI48c1C&OtHZj_T+GA_>>N_ZLn%X zl9AHlb9AR=+x~NA{MSp8ZmMkb*P@NC_2at_xgN60Z0%8=d_=x2!QW@en&ezu>!&rU zVY@Dv%4(L&td(+UWSS4!O*$uL0bav!e?6m`x~==VSi!dqNbB6ZjI)^gdKq|Cju%N5 zeo8uq?%K}Mv?hisO&y{eEZgIA>IHaR`6D}0_FKSlJyI5ioUP@=rkd6c%Nt?Lr&7Xe zykKBZV>a8gn*4oE#+VV&*+fJ%7;sjM<)qK2cAiqy)wYfw-zzg)SmT+kf2Ma6&>+m3UG`|&>ob|^ zn@37&K=ul4vFF~ETbsQE)8Nr`QT`X<% zXNs?dVlv^CA=#}TFt*#saT-j_%JvYv{{TE!bJM2lDDzU>?*lf0Ok=i<;)-JUJE>;g zMBc|f?)5}ur0qG)c{~@T$DGP;IdYwSs^U~Z^f{jGLe9tNWpjBgJWZCecM|V%9gblJ zmeWV-o*{1%hL(3z)QKAF1+%2Z-z7Mciow%6dd$4SEriy(DK}2wv*qLM8cej?eTIbHW9@KGgfwx=g%6Xj&aKW0N7iMFKw{8@w=#y zQP04(M|OYB!{WTAS}B8b(o|o#p!Jx9l!P{>CbIt7TXF6d-sOz#ULQpPY!&p-8J5|?CWc<&1YuNITxBRA_KV$nm$WOd^7xm*28^z1T4pF!DuIsDc6D(RS!N& zpsKQ-$S0?{M99HtKNT+Qxm~8C2a9x6NFt>#*DiqjmC9>CzUqJcEL)A|U2L z#vrB!qBTxxFoB zQR+mbeAM)HPYreS_$sp1I$1Y#jkhvW!wHPkJ9q6P>X{MGCq4tYSC!6}(p0;557_2Y z36M#W7H_A%uRH=bM}f-}esfmc^ZrTiL3UYi^{NC zIKMzWfx$@)6Y3wG?r?7)mcWD)LJOW6(to}wlZVtf*L8xK@Wo2UIJu!wqr_WLi8>s% zXA7vb)u-IWX19_a=Tt>7d!6XP<=l(S10kA0n?U|*DRN9)8qE4~T=_$b_4N$;IppOR zWx`#W!!bN!XylE~Wh*^-3v?siw3|P%LTYHLv6osfE+IcF^j9&RsDg|1Og*i$G`Qdt zOurF&*R_D$D`#SKrLA<<;&`9QWwBkLsKnmj9g;E04yme^vS&I+T`X;AZmWE7*P5G9 zJ~5HR@k2`;e%Fd9{ZF|@$TJrZ<)tK0L3L9TsLv;uMC%SR6iTvY&`~+xta!5)bddud z`8!W`uO-T`$MRO3;z?yZ4YZPIJBL-G!l*Y&R@*%M0Dm6|!^!i(_GpzT9oU zy<_L5l3zs=9QU3HBATht znL{$Y=Rs$1S}Eqh_Hs!f#2(6;pukHrXfOSpO3Y$@Q1EkvvX2U&wMc!;*+;zJ`q^{w z??1y`wls9UeSpBoWq+N-J8`krAZw|=Bm!)93MNTUUy3))<8dY;?Mto2U@A7d6zy*D z7gK)+ABq$mRaA391E2o@GEN^gz8?;6c_pgE_O6#Z{*Qw9Iv4W%5Y3|UgO1~|M#}n# zA>HYcm828nsuVEhm*uIcbN>M4z|>Zc2A2N-qtV9*`)|~)xx<7T1csKTR%T^B=KN%t z-!)<^Iww4DUSzPkom81OP zD4y}e5$?E25T2;+BBhkR+?((BC(9NcRSax_(nBPCNp}an9rbW zmu0LAvmJQqwBs44r>4x-ztOOpWz#o#=(CViI!&U6uRL!$oaMTIqP>f44E0T(Ho6F7 z0I=k3^ZU;Q8SrJD#!|}ZT-LHmcjxVyMwjGJy4QMlUy_l6^TgBaFe>$C^S=B7_BeR@ zO)|+u>iYz0f~uPc!K$k29PRlwjhp}gaXhW!qotCKt#@gwFOFgjtf_Ew{{TjZk4)T$ z;#S#7l+_@dLlBZ|^%A+)cP{Rp^?wM%q=lfn{pzES?l<}&^brcmuRfdVDg8nA-PLUH zno}HG`5S2@9|6%C(XU~+WRpHRN>=F2N$5G0yJdw(Pg@y_u^i0Noh+@VxxI7r1&5TZu5#Mfxa>*Utz<7UE=4Z`kF0Jrr#yre(4H8trzOIaJ$qvfE zI-ea-={ezm?^;$@=SSP37%TE-v!MSt2*EbwR z&qafzrF^kW;{O0g5xDVHt1&&>cWrZ6;58v~XZ&_NnQk9>Ahs=z(np+8Wqaha%*WUR zfE^GjIGv2txu$l*8$PmU^6=qul9GZ8z0LI^!$#mI| z#^dXXBNrHX70cw~vJj!7NZ=&|_D z5cppuG@iVAu=NXnjnCR@jIitF=TvpI6xCGtr3>8+R1UZ!LL4}c3wxKUI~|8>Fy>;k z?%c~@DkJ^j#d(EoKbh7(Q=}561j%DRDEj?!l z!tjhw0IGZHw{i^6mpgzg=X1m3!2#KrPAP@gVa#TC-L+Kw0M65MuXNx4y zV9+WqWlaMePFpykjlfL8?#}QF@#?iSuZIA}rt|oo8CBbYcWN1bS)`r`(c^Jb)0&T? z-6J=ykUz8SU$2g(c^scA%c~t&Wv?LEyph9#Zl3ns_}I(19GW z9QAX^E<>~e-XBV!Hv zn+pU_6r&i95j8LEE%G;6Og+tZD_q#0X^g-KM-ayI@LfMPeS_osUdM!zzs_fU_p8TI@oNvOG^N?1;umADY(jO_oYCPrGB_5=QXt*l(^o*PF-5 ztaR(o8E74!P{aG~C2dsv*(L1!(Lg#M9`QPwcIHz=tscf!kWBY^ExD2%Ef&MSSBxR@_v;zuFghvMyJ zMjZ`z+h*=g;uQ_VkmQpkg|#6Y*}N)Uqch=c(vml}T8a5E4`si+d2|4k+as2{VD?rF zT1R47gcrl9jhPwHPVx7&b6%?@UGvQ=n#kBLc>n@|kwpwq(^Ijr!w|^E4gsNNwu=?> zxdt0b?JwJZE04e}F^IKK62xDOSMMK~K^B5PxOkpub!^R*{$kv$;A+bqpaX*kLDfrB zP~1KdxXNZX6zn|u$nNj&f^HE(6+^c*-~mW1+QSqAMO~4ABuMtkYz2uKu~xr-BafOY zdgzR^#FezSSj1QGMh#VbwAisI}(~HCUf^>GD5<`)O1(&a~#ArcMX#qr)4yce12;Pk($CT zHNEV33-}>eeI-UQHEZF>4KobWNL(+N-P}9uZn4$fHOw}5)#DKF*wzc@W%yd1?JscUD6c9z#yqCb{jNh?x1>@^9XHZ+?{y>MkcKdD%r*C1 zEbR>SFx1IYQ0D_1FAzMB=?+OIfwmt0<>O`cNrv=wPNB?-Ow4PT+i-iXRaZ~@%_ST%P)C{WV_zZS z_wn&n#MEt{Ga_z(w!O{_{@E&QP_4phCZiL#E65kqq902sE#04*HtNYG&3AS=cB~Le z$eT|l@s7~(?p?fj=^0N6Y?Xw>`=-S!WM+x3X*?RcJ;q*;RL8oh-m`(?q@EBPot~ji zbS`vSyN6XXJwVP@u~i{#E#mFb53QwhnChrl+~8VR{{U#-Xw2}K%ep8tZr<$vq6`X} zc%g7i1qFua|=0$(H1^hm|31TUwsc&{h{8O zL07slK_vHt{{XsGb7A`q{{H}_D@*l}yK?Y2#Qfvjh+ws1D%LptTXT6ze!1c+aqx9QN6Sk z4RzSj*6mfDJVCcEvQZ;l!Oc&#h1CPF*kdlp=VbmRJEngG_cJsS3z;F2xo>Z2y%xuF1d<6H#^)DRs_^)yZ>3{&;71UwK>RNl zj!Q#PD@Z=1pMgdl5G`|Es~kQ{FH?qyShKL4Rn*lku)gMAm*nN>(>E?+I3lhi2E|Ik3WDj( z(4f{x3y!I*ld5`P%z&GzH$W!xQJD*L%z(7b6RZxN%C8LBo!ihUH-WG0@Ev#{Bde9P z@VU-jdyisfx~cIuSmQtEclV+>wHVF498T2S4<9do6^T>cLX>`Uw3_{`9Rl(QLL3 zF#2u$zg;Gz{{Vdz>{13*GEpOL$wo)3+Hf2KY^}3(;8I&Tv317{#Hx07vsOOxQ{U!4 zABsPW;8gW-Ig&)#ncu`L&eY-Zh*@7t*s7vC#vb6dI36n=H-kZ1&uDr<_8d5b!yOeS zHL~t=@R|JTka4A(Ux!401lrs?81yc8npKW4&8NWgMrNgCoPH}gjO@K8Aj`_kl5&}v zA9^;Mi%{$EDpsD#z(b7Vn=NST*z8vhAFLj{WBcm0*hVu!jni-N>W0bHhetESAhn?u zNxOc$3QC9!CouI?ek#lbvbS|7E(kSVE$t|u7|U)-!Dd&u1mPQGZI2YuSq-GY9aPUf zqU>T6;_N@P1KB7&4O=T=-#0=Hq+#O64k2$J7qE0#jj5xP2F5;;r)Od82Bm|WZbol% zt)|CRHL}F^o*euTt(n9lj!LXK(%v}BofFSaf8UCe6~vg_DUPOn%~#c)gPHdrkDxJ7 z2gRh3jw6`nsFt9V*5a~OJA;jf@PuAaBxU}>8;4|)g_1Xgt?)%4IigJ&D6o=k{phLU zl&->dhMuH)l}xkyoDqszOx3x04N`5LF8c>_xIQ-O3Bsj=F7Zfj%qdk_2y0QucY_$ngf8PD$j07bEnbBIuNhIVLte1EQ|d_ST!F0XNN>Epf;k|`uI84BE2WTntx)hvbWECP=~7J=d%uc$- zuBXkTKdWaShvuWY^fOnB&{1aIPj~%>YKJ=*#H)YY>DvTw!zDl?EXuG0OV+dC`+q-w6j#aZ$cc(}uSAS@$c?b_JeC=sE5s| z<#QoCWM{1){oaGUWOvt@kjJc?hZe(sz1>!KC2cibbLNvYy1m@Jr}**>9TL*gIo7G0 zSMgxv6x1}7=4oV`IWhA*&-7OOG-o9RwMIneO!pSp9erfs6QrHYV{dM1>{NTlUD`%9 zDrUAgn&QUTIRvc6`MC`mJnCMnnKMr36(M!xdy0lXYq?1uEP>6}g_JSTw{_TdOY%Gu z_hv(8w%t|1Ej1%MZr&b=9@*=dJshz&A>{Vy@lmpYx!pD$F5*scztuk#qBU)-U}WrR zhwLizU`KT4(Z1)1WAr2Y??%?6OODTnW~HfSufIfMn$gL8I(Je`{dY1uvhm%>s@indRZSEP z^sd*UjtoxHhBL6k%%ERNvw6C&i*YC0KB@Ps)@jw6f;l6w>MG*r8@bun2H)9G(#lIR zJ+^;;HF6R=Om>A{%@*w@>;-Uz5o!XvfDKWVG{VXUa83de5?v^YM>gzj$5fAF;`Q5Q zVZ@{c$%LdX?4}d3)=tbgs`-j>Cn`Z|BiMQFS*W$encbP|LmB-VWBZ5hS^5#15Dp*s zd;Cg^>_MlI*zjE#98;#!PXMFfsMY~%bt#URC~}u@Pu;bx?I)rpaJWhPsia@IO&mFR zpo$IDjR850(?sSG!A(xclY)65E@N|X;1CSWbsVma2%RkN$i-f(5{?q+soL2j9Q~2v zP=e_y9_b7B?;K>4NSXcjCao{lV-m{?ql@%d4->)VP-JcmV{*CyCr_<^+?_w?JbkD`eqEKZ$L=^&rA=5Bw{=?*s8y z{++KpTL;hcO*p-O+JpSR)jug!`X3Vi0K>F+$`rJ?CMS>|(SRLZoN-J*=x2-$<|rxg z3h5%hoH%jeqBH~s35au+n13-%fcKWwVbP#5(Hg{mBJ{YPQl2-9VoeO7fSA10|sb3bnx~XX>9wCJ}th>E5V_W-d z?*#{%CpOYO+s1y-aUaAM*l68Q`kX!~ADNEb$=9!nn-11;gXqdxKiW85HB4^c@W4;{ zB8InP;^BqC{{ZU$0MS*b!^}B@SlCb4_8;NVP!SgwMj4Vudk^DoqmfZ!ptQKA%e&RX zV)s*z#X{^`0FPGTZ9o1l)E;)q8XU&AFGToako{+`!oeCbU#4)q)@p1fHc7~qG$EBW zf;aD~HGH2}9BtRe-3L;u)>bx+?v5<4nS-`Zs~>Ui?&O6B8rr7~`>x@6CqA?Lhd>hv zDk>$dsmjL2UOj;B#3QS^yZhj*Lr)zuocDT3j~Db)K^zoNE2E%>~Ef=?Xiv`)}aCohGIAZk zS*@;)o+mlZ;D$FNswx=^9CKRBIa!Imt?pzT2Qr|nteUazzKm7u*0Rmx%?gmW7PlmT z2OQ2zYxYKins655mzoTOX?|gFvDY?%E6XE^&whid6@HSs{Vk%qeN_$c=h%5yQTw^HjQzMu9x=KC)05oP{j7YsXR3wtkfKbZy; zPWGJF9*O1>-(jg}3>+H*lhmwu{{ZEw2F~GpW5i@<{{Srk2;98uy0Ukgzlm+XnH@t{ zPZyiTZ={{qIY50*~}DX8vH*LZdpAHo%$-314ATX19WfSJ2W8AIZcLdcP28k(f$GV4omtKF08Uwwz%-#TV z@K!13b98pM;;g<0%*PCtAr3J;l3eyOAZ>E4AtN_|w>=d9R7;Zl{_Q9UWYd_9ghMjG2#sH2m-A=60Uhk^d{gutr)kkIWNKTl3zWkq zx8Y!be)F^0(I}J;-cZ~-GHH--8lWe1;@+}oySVUC2A(BLWA6MAX#<))RPEu)qtSN; z=z?9sF*=+d8>GbPn%(6waRl2-iyk^~M0T5M@g1gV%LW?m~GrFJ}3^MM(ex9 zWtSE<_Nwi5rM%YQo+Rw5j;s(70s7C9e04|lpAfVqjp0v>kF=n;;?wXX#0 z4|1%@N%pi-2^<}xwCbjW&TMDaYH6aUYjZnA+um;EtBFlSxt!}Ta8RYly&kc-$C|qp zeN0TSr_gGJI(q zaOVR~8hwDPtckT>7MYHj&fPp+4N8{r>=Zt$@}_>UZ6) z%+6j2l_nrhW$GD4JPdGq8A)9ExBJJc`2xwY#6Du#NFf-our7;B$Lj7G64vicK2l3w8X_YE7YV z?9SGZf)%HndahQx#)xwzrk}LO*;RBQ`_3%)uD?{HHyqYYDDy~jBrct; z?5S*Sp3vk3BBEi%s((9>x3tB^7P&e&OAoAtDb&x|)+JvK#bv{5SycmE!p=745vNBR zn{eBdKB5aZv&))FmFieFD^HH$jH-pr&IhC&>d_WnQ?vNw*ajpfA5ibC3)ShWA;c(| zRZQ!~@$gvZj-5E=vM%DecLfVHuokM*(+4rlb8Z#2!~)d!paBW3z^2~OdTLUAB|H9P zEe!>AE+-E5nfi}jGwU$-s?UfaRTK`6q*c;L=qj1*js$cnw=c8y)B|Ls4k$(&k4IM^ zq^@t9R{R?$cqqM#O^TZ|lob%(CpiVfYaw^+@f*plq^cy?C1iI0O_`F+b3 z9UPKYx*1sLOn+DpCFnI9Yf)1s>k6meAGepXJ?LF#%i~qB&0jT4d+8g%Gmzn}#g%1= z?Uk#kY?-Oy^%=ydcWsT92xFyv4NKVe-|eC?O4(U<@L1S;AsJ6{LID|vy(uK|O(e&t zTJdsRS#ojAqBqFM+jlvksv#?;HifQ#eWq1#M+~8QSZ6GG*-p1r zpLGRG<8gEH3vx??(!u62%3GdoL3!7Qj|HLK2DJpjm}B#(59+3O!Cun6e$Bcjl^sQ7 z6u(<5NAqj&R3D6)4q9qi9(un&_uw>1Q?(29q-wmgs(lCaxU+ow08M;=&0b5u1=8ZJ?DV;tMofFhZeG0hPtXo3tmTQr|$4ZV-Y~y zv9YnUxwZ*xGfbk#u?FUT>kMJ*=^t;9R++L?0h`LFNmnBQ`sZoGUdXUUUsM~X6%m?8 zG1hB9{1VE5`ig3H;Z9^RHa1&;;4Hl2qXUjpy@md5Ja@5;*0J$kp%7%W?~kRz!Bhht zAyUU_+csSJIx(u0dqrJ`zs<2mZ<)$&dUaat4xz53osIP_BxivaSz4IeEIA*jM=%#< zsg1m!5og1KP-O>9ch}~mibstP1;R##<>sV(&4MRBN40|7O4W{%x<<#v$~Vq92DtaE zwSL)9K>p0Gn2*`EHp7KRpuLPOagr5XAGDvGKjuaBU4X2`lEP zmhseFGbbGoAE0q;QQ}(Hy7uPb_YMelI~6_~6DZ5~gg;Zt-+)tcUN{X@?fqp_-3}i| zsnL&ni@xnXC06qccNMd1oaO`UXb-?Bj@wYtQVMz+4ddCszRhpIAho+ojbaV6s+$8Y zbcMM`$C{k7R-;!Q5r$wuI<}%X?Z*EAkX33n*9fF*+e;IwUO0Or;;_b2b$i_N)Vlut zQU^CBi&_uxsq8d8TeVoFYi%3bO&=RGkH?B7usD>bXr9TX&Si_AQL4z9OnQfK3jWSw z5m4FZ^ds!#dP zG7o{#7p21^j=_wuAG(dlOB8JEr-p#L-fhW?g`$sZW{)mGD;B1Z-WzmT-KS}y$Ed4$ zIDmcV?IVbp?dz&rJpD?xm2y=~nJB4e#H+T4f9Y2CS|# zmobjB2Q@yzrDh>hG>(bBpiZTj+y}KbIAoRXc4mN?QrE%S4q9tOvv%jrnZ3$v?1m>u z=V%ouWqH-jXz%V-YpXBED21Fm)2E~rwU3a8o-fgX4t*n=Sm;Bu$n8n#)mvqtZ=B7n z@_LNurlY0GT_m4fAi3`DQl+X|ebfRLH$lYpzY?y+5RJAiwYZe(c!O9k{)%j$)lOAV z*w1G&ty542V4qbnkFdlw@KjI1u0P6@EU6tilTJ!%Dx(B~7y5+QCdGtLpS0^I;!K8~ zm;&!e4Z^IXu@dN6-q&Rl!0`vr)b8BxLnjm-hH+U&$s6liRcrtmuZrQ%AH{X!mb|v} z!xdCF8i$36uEFG|uXs6f6QSshV3?VS;+kh@G)8M^nO769s^!Bw#g@Md&l!|uA&xp& zv~nAW)rs2pSF?%wXYlN;1}K&3f2nEbQd#pn8bSJo(G7)k?_$?Sx9F z4VJEv@@26a-35f0%i?~8t4wp5FHK$-P|CP>XV)ARgA<#mS*l6hNjoH3N{ZIHjg!aB zYuvdxc>e9hOo}D8j&`ber^tIQS+g_u&Utpd>g;m1MzDuj>T==KRL!InptCE|<&I3m zWe7_pOm#y;+}!r&x%yT1gK<)VZ|tjL8zGd{j%K0R!o40K$vtkuUV&w#hF12Ngw)`I z?l3;bqBvY6Zi*A8p%aqBxXR6#>uFzSH$l^)mRv@fTsEZ3l)g3|DCr)!b6alpmD-w0 zdRj=^3vBu1*THphXW1EJpeUr>(mBVa{wuK94MrhDOn+&d_zhEPM_@+YX5Qe8Y@`9$ zon>SAQ$!fg9wl|l-Rk#dxgcMyX9oG|aC>4z4FetZka) zRvJ;cU@f)9?u(Xyf0?z~wW^%(S@z+@ABnu1uBwf67Lma$aw-iUWQ+KsG&2UfHf=Z+ z1EK)rx2Z~ghh@gjezRcHmlqR=nBZ#^h zMsFk>N#GR#Y9Vi;dy6`9PNnl4_nIx)JW5ssl;WnM7fn+47rWp*5h&?KA5FY>*BwVt zuHpMTQ;t-KF!x6!W7j#fUYUmAm`29X`PFQ#tFE@6lSf5{d1-jfvlus%`6Z|NS81v| z(viKb$FzKUcq`7HhH9v483So>`d?5M@c~oX4WxD@HvX;oBX8BfKJv2Fc#TFR{H}IL z2L=unSHa63TGwxYB+&>MW#HFUL#NefnTPE_&xa-I)el6v9 z8k|YyF~^6qk$-CAWYU;h)nJ;e-HFWA0Bhfs?OtEcWuQE5sB}pze~z> zW=n!Q&m=z-@~e+kZy5{QhsS*Ex2y+``Yh8h>9XFYcGC`w)T@-ZOm4Q~mGU04I>Bj| z4jEnK!bt;6)mWU)nqB>5j?}(R3V$$uThvb2e{vmGq79#(bDE}G53tS%oH#utKdQ!$ zzv8u$Pe-;+hX`>$qfvkI$()SSY~!WYu2(;}XcmGv#^QZp<}Xlk_5 z(A^r)kdQdK$xcYv9QRu4E>e3EY^2;O?~sC>9{OlsEKPNoYy!JL)?xAqD&lO0HvcPdCqMDi);s$9Tb9ZoRLFO&^SvICaoXgYL0eHtQs+kI+}s=RQ%5|0U^BNo=T86>4vI>5 z?<8-Jg3)Pd<*AmaMBQJ+uAYivhzRA0(B?eVVEC8RZqZQaOo8va&6Dl3|6_w-G4A?KdHD#c#nb^#2old*kWs*aAG)l_0! zju@?BU~O6-U-Q9WHsM)@~(* zf{p&Cu2FEAdplZcHnR}i(?gd&wr3-zq@I9kP#TB@EqzTTMp9Vv!g*=ULrE-c#2EpV z*)`WSxphwSN~($EWg|0|@$GO6EGM1W2p5>-B89HJ5bJV`pWxzZXl(ccfFb{KHZ+rJCWXcSZ z2WsxefLdjo{;@M3&2&;R+1%E-uVCYu8pE;5+Fiq{svAGM?0aDIgfZ69CDo; zKssLBJJvp$tU*x9n7u+T?&dwq(spMMrj8kFVx@|D=MO_9uI$C8x_&F4pY6ugMw+)0 z8&8D3mkw*7k~agw;~ENZQ)_$wY1p+DC18CBW$M81X49>Nl8+>OsvI zmv+J8I4V`xabcXgDDC2iCtbzK`MIFv3XY&XSv1gMI%11h`Hd+&2cSmvq<+ zvtM{yteq@W_)KP6_BFXnj|=rxc8?pa8${}QsbrFxo$b#~%Ud;s)51-@_JWde&(l-&7wTnn|MHM*NYz?zAzxNZZjn z6vL-=WX{a-2d~g;#Z{oAnyRJLG%w%1=FI-R!>aT+v7gz`mRIuZI|=~FKsLXu#_Fl? z+6KE(a`Nx1Z!&rSy>kh{=G}SxD>sM3ojlJE$ zXs9rjQbNES>yCelZU=@wCOW32x0+3S5uq3woe@bTC1mumWG>FmI;q`^(>pU{W0~^` zoUXHM-3jaWq1BSMHtyP%lqEdOpVV_yFO1tnHYl>QHv+6i=}WDdEd-i2Cq2%{8L1^f zyljll9eCUpduefzG~Y%*?!ynI>HUQc35>dt;)bowFueLXI(HuBN2RPriPUmBqBiG* z{bYSdRN7ga8$>R3H zIi9Kr=O&rVds;x|r)6$zHSw|b0Q#D6N`&!Yu)2}^_FH_*2?rJqH&!uyqpQZ@h6iSb z8g>Zm9rc8JMLqGFdO+v7-kFWv_O5!Nf<4}MyM^qtxXb3A#xUzuQL>&qtgUIu87{Lj z@zn5FD`u#rrWk!!p&%I}czxUM=!MbL)lkv8uRMNj6qb%RyV@Lm-t^Om8mGQjv5cSB z&K;(`%PYsb4b zHVEfsB-F65S`h4}cC$-gkndhE^1mW*=Zj7`xErz#;WZ?qo2rx5*gbU41*r>b`fEzc(k^p^SF6f;I`ND5H^*>K_MW-0DlU_uXgr za>Yin~Rl>D=dj27LF_aanS?N%RyPlqwAFv=arivb$h0}kED=;dRhdo;1o zj}>FI=3HeeW?!(UDa(>GzF$9IF# zUX8X~_O2_>Cz&zwjV;5WJr!06D{1GbnckQUM++WSPpOtVs++%9LASi~Dve8ltd>Z7 z1E*UpAyOO0e-$XpBW#*y<2!x-$=A zXWkL@b90Z!xkF7?QHMp|&j)*zZE@*lmEoDriZ-5V*=wqMdD|T~ z5PF3Jn9I0Dn;`4O3LWzfH%8bQ*R|91w?tqL7Dp&$!uw7hOV4c(oV_YJRZkg4y?mrs)g}M6J(6>W7b*wJBVO)PpjF=$3XL| z>EzXqPi3c|6Ma`KwiCBhl@s}vGZ)cS-@o;5@I1ZiRi;b&!0;j3CYn+kBS&XYu~>tr ztjFqOGW}CBSnwmgZCG;ZvNK0)dGn4EgYrTcoKFlmWn(Hw`?c(U<&v$8vPE&I`7Kr< zOC3ZnYnz>fS>w55KsZJq>It2APO!*&bXO@!T1nUY8R z=IXVD2p|v>v8%SK%zs_DiXT#ojAaXYl#JhN%PF8-$PrLJ1X)tz1 z-pxB$I?4Ghds>Z1j%-^L#J}BQ+(Xwkmi{86hXxbPyq)q@NzW#Y9xgmlxTzwz&h7CE z%R63=)BxK=X;URAu;xI_xtjp{5%Kt|)UCT zN!gxn3w4%POh+N0Pm*HR+9tL!-TA29I~w0wCa0^~U9q_;V+a9MP4Mc{Qo( zBBh1XR6ipJRguN<=hqiT+@cmAQSQ(I&E0$zD(p^K+UlyA>`$ov@7!-jV-H4Yy|fybY-B;)VyP5mDX^ilSvw!hU@ ze1*p|-I?V=c1fmvM9z{%^Wd(-M(0v8t@(FGu?Tw_P7N-9aGFtiOuvp zMbk3W%yJ0ZrOv7;WXj8)iV)f7dz{vDPj#E{!(K4N{aQ4ek#!cJTL)BD_ zJ3t$vm{Qb9qj{yZby_ZD@a3zEe9pZ7DgjGVNYBt7+Nxf3@^bM0iO}Ko5XqZ6t={2f zF$`hNzm13Zf^wddQSA$5XPZ{85@GG(OmL`6TC0K8M}?3IQu%s%~1i zn#&=cB9w_nO!4K2Pf7B`K3Nx1&@W*M5(@M zovv?oYbM23_)nzF_|Fhh*k9VwM>VqL%c)dr6)=dWvt8JD&O8(-gw&>O)J=PL(XcSx z%E;M?{ko`!@}seX0c4@B`zYto5Jr7ABG!K>A9`@Za5(<9vC@Ax1Z zuz`A~xc!EOqS`qy$nZzA4P~9}yz}^=m^(q4&hG=|br$&olC{!F*os&9FqG)<`ngTp zML)l@_oDIR^%V5%iWs9AMXr04ZpZNnJ*da>s@U4F!Lc*y(zJNIDF)4AQhLsUKNl`` zCyBrQDZqC$1p}t4c5L+$ALmBP%Fx-_T74yK01k~(j2@N0S&84nDjkrHE?uBT#)Ul3 z2#LMAhd=q!{{XQE2($c9($=+w^0};F)RKhM+a@8(xI*EyW)s*tu*C~I;;+>8nb zNZ9o{u6&N*8mqW-%$Pa#jxEU>at?h{84hOVIyG>FolCR|e`i-F4BUbL0O=&%H|(`b zW!6#=Zrk=+mm`05OQ2nG`=|!wYJO0YFblVc2UsQWYGIV+_EKg%+?X!B+PhU9*IfZE z{{V$`{{V$WnI`chrp?hoOnVL;=|q~SpmmGcmXX3e_9ALC#OXQ(SK)M3tr&GR{A9qkrDaT?k@Mv;;IM(z2-%Z6Y%*k=WwKimpVx-eKF=c{{S+o)zwVa2EpjbW!_lp zIG?f)BqJ2X+atqg%=Ui4j<@-b;I72z<%N-F(2K(%;y-ksxge(=9{F11Gj}Z>q+{&MVcBZXYY-dQBOTUr*=r3`k45Rqo_spb7wIc)-taXmU>!GU6ky34wJpz2h8^b z6|#E{!|*&y9G@(ZNl8i%Zb=(!TaX8z$!(}``Yak9%^Xc-$8G-6w^FT5J7aE8>jj*| zv8~={>GG4;q8WC%En;}QbnSC*w|9Ut#;IznNDZJkC$@rpGm8y{-JV{xY7*s+jvCSAU$S^4CzT!RmwaI*s~% z>ar;618wH77X8&()s+E`E~=1!IaJ?QS0TThNpIsR>XyX~9N(~${Hiky&Epfa{nRj5 zRk!{kPxF+&NY(SGdAC<1RBi}bL7UMzM(o_!^;lvx95=5205X-BjMllA?nbEGaDY2p zj<;0&rM}CV&gl*-D?Pg?jwbFU*^}~VOn)Sn0O;ogjKrP8vV2s75j@(&c_9i6W}=6( z?@bRdQHJ@ZEf#nkX$GWo3pOhwkl4W0H9UaSk2h&a1d8=7v;$8pdgCf{AIA9`-|2Hdfu9vezetd=O+dm+hP3E~n7zK3DgH~mR|gLe@7C`R)7I?7Qj zquNLs>?U!+_fbBIcJazp(NQ4c-J01JTo);~o%5)Y%K_IE&n6dW` zKx!%?4uS0sx&dGw;E%`Jg`O8eYh%k)xV zkuN(S`l(oZT9!w-w;4w@1DiMPQg4a&)3<|~deJIR0Fl0t&LYRb4>a+O4q%Rh$fnB- zQnR$i->RS;PaF}p&ey!FkvMvxwzuyn#TX|jcB8LyUBQ9cyS0CM0?5kk56#MULmX!9 zZM)F-)nt=*nXGxaxB92Du3@HRw*ZJY(ap>hFQAFq#{7rmp^mM_*UG11CsOOCN)y8* z9hn)Nbyb~6*LInwayENR%Bz}7lpewDEkAdM1$vhosHZl6Xb!4rsHFzs?U9`n6Jg`l z%Vdmpml&j~ZKUiTs`l@*nm0AIK?Yu7U9hVcbsn<*-qZPX1b%=f&Ja;)N%(mMG*A{4_ zZ&fIEQ?CTbB6ytF`&LKxH)+ldR4M0ndRa6e@>M5^g}QS?CW9%_D>l|$J+jPnLRj6N zH)_M&qak7TD{40n7-ehy3;jo)OL;3x4|i41l+&jiwuLH0sWc%9Co~=^WyAu6gx6uw z)kTs<_#TNU@rsNo;tWSL)V{?0OFxVAMNDd}^zCyT(%XWsx9vl5IyvGJ#P+^2E(qae z6>K}kU1lIPm<*1RiQCF!tKd96-4>q@#Hq1bZ16jWti#2gDOs;3&r!^9e0yCfs+$DWz@4$*tvZ6hkF-%T#DxE13YL4`?z;&M{GmyO-H$?5$S&qqv(R=v7$O5k## z;JQB3eO@1p_V?#b2ND7jA2--Y8$wf*=8R!Dq>rhq6>W1j6%K1B9L|?RvCt`YhK23@V;vjH z@54Q~dfaZRIBX@j>wy2Ewt0kcn*&T2==2RCcqfQCk=^B*=#`#gC-t6r?OL)aCkAYrs5WB;g z-V4|^#+T1FO0~bUW`Bb7J(zQ3Gm_Tbk!Kyt9NXdO>9%(etfUTP5?ewG{Tp@aPb5Wec4(QM zl=O6`ljLso{{8?X7)Av|YF;W^=S7Gf22bN5w%X3*%gnCYHbcpJ*t*_DlJ z2X=@Z4dL2(jWu93sVlRfw$ft8pG0kPRj@0S>gd-reeL@Tj4 z>2T+VH+i2xg^0_vxZW+M9TRDXR(757HVQGa__ihKaVp0F#NSi*a=5>Jg0r;#rHa(o7a5vEW_$faFmAg%g;yHxV?$~)o?7wkBa|5fK;(C`TOzrm$ zX@+=)ZqfqRhs}2Jqcz>Z4|XCN+ciLCo@3A;2+b=4doQx8>d-W6ZdHFZH@n^MQL(mt zgMKIr26-K)WG6)kGY6Mm+WZu;MVYyB>&X$r@N7#I{{XwFpHfF0oCkR(!A0~pC%3v` zbpo>of^quD+W!EE)mcJzdK!v69+sM|ySW5*wqR{;sHYX?XEl{~VRtriYH~ueQ9uQ@ zC`QgY)NiMDhMqz{6j&WS$VCsJ+8W3Y>sZ+W?fAKQb9|ZhHPAZng({~(CF1Z_?!9M= zSUv4{kW8YE+cAu;i|~M!?58$}>A4iOznF2t8eH{rbDGp0-IUW}30?8LY+Bv{e1C zIDLh_X|&TaHfY?$r#wCFwp#@mXV=iuQ%g&d?Umo=P|b(2%W!77^`EOBuBte&%p#QL$kIZ1XDrz3`va2^teZ^E_bQ)8*VVsP-@L7U{)~FD zHA-fQjr$4SSv{kmJ{Lh#L|oVUh?C8|R;lA_ss?Ii=O>8F1+C(pH62ARALk+~%wKyK zaJHdya&u2{wlOm{YiK7iz8VcrX@@uj4l7ND;n<<45mY)cQVAIccYg$4w`$aZLt|fvq8Wk@H+yC!Fn)COX-gLE*0v$z$chsBsD0$f`0vIh_eS zJ*#VbC6CLpYKeqrcem4#(1o4Ha7z(Y6KqQKxwak9G0$ZC>v9?&hQE5w;}`}q>N7Lw zow;rPuTx{dmDllpRJrSD%MTAc4i0F$oFB~=!s-EQsb+SEh0v*Gjym_m=Q`l)cH31g z%x@3PsNlW-0CCK*H6!V!a6CB`B^yho&GtB}ER9TDuSu-7!VEQmm8`(G6>0C8Jo$Bj(R z!T72Rdr?2!uEU8%mBLJ*th^=TQ0^R5j>O@PrI5L~p7q0@4W650p4!aO%d2v%PSnmM z+D1gzU69A~S}JI)&E{(~Yw%dBnX!tQUhCdNuW(v?Y&CaJDq5#BROZd3EY)bRSj`^F z=YEq^yu9C`S#lj!nS+f?qBXU|ts80S8ruliy19IKMnAIAvn&I@R7wcU$0$Q%Ia_Sp z5j-Y9>E1h+pUIb&-+;_W{*>nQRavHGHEXY1InC{r2-7#sbmQrb_O9?;`>2T4#aSQ? zR0MA%1u{D?R89(zB4zmnN+y%9#Y{^Z>pIC@DtKMqwkBo{?IH6!d|c-!<*96D*;EqZ zwD60)$>WZU_d*9~=m0_S97VCc(bMr9(<(6vj7v!U931}us;FdRb4O0x@8m^;E=iUp3#=WtMA@=;L#{PtbHvE{Tn^mFz19 zp1HY;vPM?Z3BYM1W=}V3*f`xNY$Z0%!&jPFG_~z*6gAi!kVNSqcJK~Q;=O5`Jw+k7 zr?<%is@Q6mLp-gnYX!*w{v|)CR~M195vhi3u7A1z0GhoPBTqJxb{=}WMRyUxp_%Su z@{-PB1*pNNfO;)i(5)tNjSbS)R^gRGs}HE$Kd%vQ@8FHoZG6&yzqarFrxlBZ(o@)G zbT;eit8A=i>*8}Q&60^<6Jw zqtiw?^Gf5R*sF(UR;D+iw@q0^h%>VGf|c|oy0O;^O%x6zH!xL`7V*Bdf`T}n({sUI zc#e{R)wNEu0JyrFOg9v)j|`&SM(@%k7Vz&`H@HRZUfg@iv0GMZs-ICOuKpL~65-T> zXZh3H=pywm?YVD;I!;w{3!;^+xYnklKx79?;p{NJyW)IuGW$!!`~tZ%36mvF>4@a+mTp?f)|mMlGc&WfI;g>EAgC9 z7?RbMwKZ=#WDc;myOLyheNPwe>0=)iqK5>nota&`qh~?I6oUb!gSReepVjV4Y984* zFsL18M-;V3?Z1LIOM%qN-%BpyK8$bTj|MTmt6CHDTTBcH)-~jFey8S$ zF|oH?sx9`pLb-?G)8bXJQ$*&*Wxs9w1(tbdCzI-g%DIvQo2N8m62N1@r({(%8~40k z;kiH_2z%mnYj4?t0k4Y6a?9v-RhFrdx3ie4Q&rR*Sjz&YnzUbZ#x;x`RJ2sDt7n|c z^&AIk%C35wrXI5s?sPk@}l!!&CyUk|^H)05yL3gRdpejuPE2)vczhZXt1%H@ z0mwap$RPQ*d^GV=0_OV7wUZy(U6{_ZOsSj0#i)%mW>>N)bvDj#+^F^gMomvtzLIyb zxwU$ET}5Ig=F!&E!y#ivrsYoPn+_ejZwsZCDQV<_7CT0ebmwIH$%~=P=H$EhcrHHs zuHKSB2%1{Q9NGY_%MS9Hjb?`+NXW@!?ZPptoRPd>9T!JtT|*ejDQ0mmy^-7wvDBC} z&JAt%nJjtpKO{JoI()J_BQAC5t;H@A3v4B8k5cQUpO{k=by5QPBzKCX#-Av5yh^oI zX)0tHwC+)E+v+!pc=(56%vCVO5MyF)eq}&smMO#Ien*aB$?>;#`#H8f>Nn+c{hlfH z8cSSVBi(&?DB`Ahc0t(jy+=r$&8Q^l-HE7x*XA%>*oj$(tbKWes1~27Q);*8`lGLc zqZD%B@m5DIJLI@Mz5f8KZhUl4uB?X>s>>A=5yH+Tni4)sKi;HcgbdFc+#k=Cg3B%m zz3d9&aK#J^iUzvG-CDs;`oDF$vo}PS^$0w(&RGk~vk|XVIK*V= zy>xw>_|EWxy1GJ6yaFFdU58e=j)JkK!sKSkerilcs2Jpxk7*1CRmCOWmYw4thTDd?1+i zKXLy6)fCyBPC6V`I(oM_Qoa4Vazu8E321Ds%h;2LbCysCIwyx_6Gdh}@GETbnPX!- zYuu@eXdrWhPtISX=FztJ^H51z>iY8ftefa=K;#ER17)_+)mS9d^|=i6%nWApi~EiH zx&BvL3inS>h55@H5WiyiHP^j-t@wFk%XZs-8ENVtQ8iUV^gIxWkr#Go9DdXONMnw= zuc_e2Sh@0C!X2?>92R# zH-H?<369az!L+-|sdsOdH%9pQn-1Zs67lq?AbZv9<$-84Z-E1&S3YQ0mJaqBLQuYBM9J{ag zl@0^5{{Tn+nON4E=kR9{06e?h)T5vQtGO>*i;q)v$Cha2k&wperFKBUa=iZl6T~FP zF*nNnDPr~q8*&~c5!zgB^|e1nQM~In&Lxzd7pZ?J+BFQn-lxFu-=u21upU+%35(7 zJwTdi+pBhu1?0>~*P!qLI{7`LwRH0lYGO zgVA25oK-Q*m95{$qxukw*HOoa(l{PmdzNO?Q_qpwRYmF_+Bcz9DI1AXNejkTdJA?B zPZZMXNSPdMW_OY4ADJ47(N|MEW#wrYZJ|LYqZD&V8Fhgjj`XZn&W?EZPHWiP6WAw! z_oymha}RCTwS~t4?^4iDQ%g-VY1mnSb22sNYYMO9XsQV*S`?0 z$A-16V_Mry#!I`|R4C(gud^EGk*V-k-svl=-7_7#YYwFF(~?vprl>H()#uTRyVM-* z$r_($YN6Q}_J?~(HW=bAA$c;g=Gy25!Q-mW%{)@h=CQ2|1lq|3Q=3lcds#Ew_Ov8$ zHsPY1h(4kycTRL|aNYj)iPV#DWNps!H93`c5bWK&_V)!VWTlRc$8jae^l$cjFY#0x zZzlC`J3~`I=Qy$&ec&b9YIV0xA0uHMJ%QV=~~ z4m>()vim<>1{>unlA^FgX>(+gd%yzIW3NKJ9}#vJQ%zM{Pg3_%$lcVz?cP`)e*yAe zH~iI;IhDt4xVh*4v5Oz5OFL^y&NO^EJRD%p-wRZUPLXrJqenVqoUIxlY=vGukJXAp-B$y-rC z_#dU?eZ!B3MSBmzrJAaG$g5?7iclX6IlD|J?Oj)=6YUe+Yu^;_&L3f+_ovs?QsEfg zJg~M}o#mML*z1;CrTDI_6Iv=bC&FcP6|%NyY6iTlP>e=`OfI)Gex=6jJVaF7ji~D9b7q^&*Xx`AIV;&k0c z(in8js>>YFo!iLuN#x4 z{usWr`z&ufy-#|5Lmt|fIvL{Ko&d7r$H6+AHudeVhYhYVVwi1ZHA^HJAG?$jrvq<_ z%)|}e8tq!JvB>z`ByQ>Bo9W-Ly!B9 zkmjX^zJ_XNOHWZ0zzr4{43L>ZfFc6-8C&1GLAo`Wu3Q)zdZ>WpiBmem}h#>I&37t(CgE$EqJAb4)4a zZb=UZ`!-COwmMo0rcB2+?m9n%WE~Gew3IcG%6IT+@x&fTRb3lk-!>OArVV$nvDdeF zR2eg=OD2L_$Lvkh_h0#@dv1(oUdve1O(5-`6`#jx9O@4_4bM}B_9XuRnE~hSMKG*J zEK-rsk4HRXSj)O|9m(|$aBrRlYZcimGkWYiZjjin#$uwo3iC(1Je0r|AGaCceal0@ zi!Up~YM-PDD-e_~F6o_^xD zu4wlx-qB$!#IVV!kF+ze^dUQ9F?V7(JE&@1`dtrU_u^Z~r|dKYTZ5F*PiEQb9t*Cb zgzktrw`!{_An4|)g~zm{BssQn00t?5(qd5Ls)4f(yvMy~qHaC18IB(Bq;SE;2{^EK zFFQ6+HxXyjG*Q1WoO-|xy*>W`6!#h2TL;Dkh<1fz@z^7+teKg6 z5ow?7JBra^_~iyCN4=$;uePO}96UlFMG!2J&Tg_j#H&j`Nj!%=6;72ga6fEyP%+;| zV!`|=s<`(#Lt5w7VzNt5rtIW}{tCg8JYNo#kMwghQV+1<&%mlh9M#Q1@oYhuO+Icj zN$LdbI~#^PCpAO;JY9=(JwK|T$~iF_-#)4L0)ke=C?~AIUsWrdWctlfeV?rJj4mfR z*EZM0aaT-jG|!7JgcX^?Df zB>kD!z^Iw(f_hmOsDw$Kyrf|t1RerLW|eUjq1oDp3OOmWeN*r5DxN)>pA(L;uD0`! zi2jN!B5lSo7~m!wv-l#I)i(PLd-C?;IsX7ZlCQxCP*O(bZzJ92BIW13US&NrdcE$L z{E$7Jn|nkU?_NDWBw)(Wx5oHIOzAJ`wX7YccZ2QjgPX`8D*go z;`qHb8rh?#m9j|})=lik-QIrgC1Y!`10iIK1AIE$zpUOq#fs zZlUZ#2fsyDmYvlTIpfqxHkOi{$n4yDlBRod$&hJoD77^i5nHmrqk9<~@@3Tt4gkfR z2D-%%5pL<2GU?u?jy%nCik;28W1<2EMjF(z4%kx$_Clvwh*MFu+t*#=kV@SuM56a{ zsaIc1N%fD+{(%Rr$7<>t;LNZ`-0eylBfhTGj%zEENrLrmIZ-{MiMyEp00bUb^G@vD zv&~IBv9aJPkCprB4*(L|POhk^hAT1rxdi%J;2J+iY&n%-l$8d~ z%+RItIfGnZ+PYn#^+!WAu+O_|o0F#`Zj!CCOzzWIRR}0IZS{3LRk}PoHl?k~m(-B2 z8ca%;&fe#jT-)5BY<2KcX3E;A+sM1L&w3#(8{4B_anT@b)XmKw3+h#4%Rgz$j>D)i z*z0`^-k#hT`!;dlcsU)S#i}4>sp=b72;&>{dp*ZrkHuwbDQPNN<19^%Pqxi9>YBq{ zNh34Oo+z|?YpI9%+2RV)RP`A+WlmiufR4G7Srl|9c;_~0yS-L> z*HYEfR&zVpPB9QwY}MQz=^XxiZl@8*=JuZNd(&Rmjd(6#kT=&rIni6}sK{XZ zE2WH{E>U@@JR0RjgBi1M)()}-Ujc3NNP3j)Y!=f&7kPfY$@l|5K#cIXCgo@OF&9k0 z?#ok5r`ck%$|3F4Ks*z-6m4&As{RdEv(lFF>DkZPR_%rjUFUD_&;;44u*yickELiG zW`E!m_CBZ>9VfQs1x_Ii7o#4YZ?GN1#Hx6XH2ToU;AC_(-C66t{{V1QL|v9QE1?H~ zA6k5V$WLi4MDtfp;Qs(glh|gAXYmy1X`L&>V{ZB5ff_NM9Z?!g5=mKk@beopkC zqWe<4{tdFElE|TOx|@?9?{Z<9A;F5Rf^tQ)`|-pzp(gwHTB1s*Y^Fk&H}58{L2S8_ zX9*IZI_tBp$Wk1m)_X_uAUiTl$&Qu=`qH#0orqG$$1+=rSj z7WV602ktZlAi(LrSuFB+%9e|?XN@&;wU(ma`I7!go@9Nx*oW{lc(rliR1yB6zV_em zR+$trw#;KkgFscG*^g!%GWKGwss2#W^RlrX2_%iXXc|BBrCOV=x_TXeqQI&+xwMdf z126a4SQs1f+DgY;_Zk`zYm}Oxb`E9*M|-`}$#1suRk*O)D79@YL%%3fXK3Q)wJ3CV zuzOIQkjJ}kqia|?1szpxE3+O!SH!W1s9Nab%QZ(#+B3wgW+{tE=e@c2l|QVJ z`Zho7_j6g?k4spVH!Vcjob2!5$j1Tw^+7ul%=g6Y{QOJ(nEW{vP-m@?!Ysl+Zf*{c zehpd-B9*vxG_?(jIE(>s-XGnTXRr!PGAP+8erL#aFFaI`69XLC8+LnO>EJ@QgbYU+ zs+?0&-kF-;hE9U~%1NnTK5UUYc+Cjrnv$@-R^-p=;~C?AZ(Mcvb6V^tX$~Vq=G8f| z)Wz$bz3UMjn%&fo$z#|&<9Fm$mN>clz}r+s^@EegUj!n}jbd1v=6j=Ktj>K(7A!b5 zJ&kP8??bFR((fV8`Xs?m>*NAuCzE7Xz^Ktx*TjA{E#f{%D9)GZ7++w zRAtQ#cV#B>>r^ad4sUBk5oiV1a%dosQ?oZJ0vQX;*ACH6T1x>Of^LrWT&01)#iO+d z2(pmdbV_yL)n+F8&UXaoNZ8xx{pA5)cH-NX**feW-ig|uYrQ`!8q2#|Xn>85y}5B( z-IJi*(Z04;_U1Na{>WKo11yYgJF}h%ks{ z98az}t9e@|Y1#s-zBWK~Z)_M<(fU;v5vzujclZQ7~DW{||YCB-~XsEiC&CFxqIV5Y0 zZf!%_IcS!6D-`%ZO{<~H=p=(0z%{!ZXiN+>n z(aFASNbI>A2)xQZ)tzL=QIYDss=y9@{7JPr$2%-D?x?92(^}|ZJNi9Axa(C5AI7S z9+EyvI1cik!8K1wgS$UzO2-~*xE|#A$8P8~r%cHGXKIv84+UCKJm%#nus1<0O>%T{ z(Cl4i7Zxn)oL??VaeE%UdU&8y*wZp!wW6vdF`I{3Wu86p>s5|gZMNTRaO`%JVbnNW zKsHe0Q6n3fpdKu>?S8l5O2@t!oxw8q)cjNPc70^HxaS@^gDkd)z~J7(Zt_+esqfWx zZmVRHI@b*ztTJfiZNvWn>Q$W9J-1O9Ikm_Fd&fqUR5DE@LfJI1spF_*zRi*vU3C<4 zH#BZkr^CVZn5JiER=HS?q2t%oBVnDMilPH{=5XVxWHm%;9lLn zk@g?lfT0FCHcYcNIS278kYbQI`a36aLnp#yiM@uZE{)M?BP@D^Xg1Kw$yhQuPhwUo z3dt$RbZ^t-jL~fq3CmHG9=wtRzzzjLJRO%^OAOIY%dzb$UM;amfZWp4>sXCJ?_P_s z+e$GgzKpGPr;K_t)nY1O&8G`0qkTs>nm4(Rk5ED~$8n}PY3#0PjM%1w)eYI5ppR&9 z(AT-5wjtXcK<0^-*>l;aRJ(Q8T{N!Xg&vw(loacrD!w!}Y6muPRZALs)#v6Ki0qEfSRhO(j@vNujgq8VQ5 zxG6U{lVqNX-HL$QnEwEayS-nF3AD;Mg)=UM?7kr$A%y_>*(2iY<_@@c>Z;=VV?l@!z?MVCuUv}mM}k+$+a!3V^)qKgjfm$yGoe+8N|RI85_p8}r_sdJ^vQ%dolJbv3g(|kFOUK*j5)Q_PIsfq2LmQE55 zUL%t9%vzp0Dcsqj-ceLO=l31dbUlBn&*Jz6Ru>DZXq)G_bc52zmgR$}R#q~URm_#U zx4F0KomUa3JNUI{wmBj5)5R4_{MuaOi0%r_E+9j9Q))PBjTX?)HKvYu^tT?;p0c6! zut6Yg-wc8G?&hmjQ{_9@{;uBzdjP0|E25J^@nE;(%Sy5>$x zG^vZjy~AW3*Z3regv5loZE(`@O6(RavxH| z-i6oV_}mZAedKC>DTUm76~icSipXngAcjdHa1rLajmID^SCeeLqQ!(x(>om*_%BnS z!m#=e_j*`^{@K;v61={+3_oor9hNpap#K2nD?F!$xIJ!?VLlfF{{ZEI@ZzJ4<&wve zhX?-vy4=sPBfbSlMrYqLSfyJKw~t z-Co^dvNgh;&7@~@Zhj~FAQRO|S2Lxko>_^$vOK$AdW%)2?z11+d>!IAStWDrsfD(0 zz0Uj=R~N^p#U}Jj^LkNpyUoQ5x=VqZ?ET1wdz&21yqtQ3u9~BBxO4Ny1@%!nLC;S0 z2c6iw2VF8~X=-xQ?>rzZNLu_P*#J*O4FE@^H&*6J4Nj5{1>EQeo7*Zx$!#u#On4y-^Bh) zU54zg1%#Z`cywX>camO5Y2H)PFC=*89kQ5~D{nTSpChkl@dL*8Mk&0ORl69D8p_z| z1d*5enU0?Q7qS;P{{VJDv6%OGmLF03<}!PVxr#gNI|SG)4+x2lk`F$f+Q~l)_cwrA zmYl50%(1X?4X{ze+Rfap2(GKFWo-?u>~7!R_oZU7h(me_kJ#7Xs<7r@cXIOnPCCnP zPvd3054z&Haa?YqAyve|j!@3u)@F?U2(^&Bb-$xWIMZ_=ch6P723pOZEZ#JFia;cD zdZH*a6UPifbD*|+ofS&Wv%{&|Xyx8aG|3B0hvlcudwBYId0}?ZIk}kNdKHV=+eKT6 z(Va3$p4_ZQ6vL0>IGJ#zrH%%5sD7i|+kNO<_(aaeBbO1Zd*4tDZxB4h3qa6lf4{oq zUO4JD6YUNYgD^I}z9`?xnXd2hjZo^1w5Y3VnS@~To?H5d2%F*ut?~+;CKZR_ru0;C zK=3V`arl*Nl*>{tZ3fWQV>5{=+Qv381%r8ATiQ5j=#4z|k89wPFnw?DlC4oj-OJwQ zH{OIpOM4b{@n1DAy*(S{ax+bcG1;8ZV@-P~>D!)1wX7UZ1wuMGbGtLLSzMsOC~K-= z`a!bP$Gq*s8;`0xg465uo24<9h1BgP9}Dt8$4TBeDC5NDs)smZm==d?Td?%>@kg`N z5DKm30uJy&f!j&DKSZGf^OdFH@OXT3SI*5N1nUaaCxcj)jqq%btz6 ziM7jMjI!85$hj2%0IP0iXaakMwJN13FSohh?cx8t|RB=;p8=11|{{WI3hSWC_rOy1LBlWt_;ka!0gIp=t=jnHz z00qyVFVl)#!!{2cufdKfO<79bJE)$+cYth7@7d;+xL2HP+wlsC+Z@r87EcAc!7x}V zc78Bx>lqmbu*tFpTaB&Xs`F6=>nj@vZIthDzi>Q$OO||#$g7T&jE|*zw@+|9$Wk%S znjl?OAS3szqIJt$@a`(Sw7b&dn%Cpnvg?tXNeQLJXkAH&RPQ9Vhc$=;f@84#{E@x% z@0yx{w~(>c<$InT7H!nBMPn1MZ;~Z~&t9%Y4D1WSyv7p zQ20w?)CX7ruMxwNiMUob1uSe7yNY*e*-M4bJMqzC*^A=1Ep90cG`AB|1_PG%_n&(8 zNZ%&X$ABC*y{~06ca?m32Izavzk2g|_;2=fOtddij8BB%G}G2W`a{O=*3#e;cOF*& zo(9O>A8L`0Kdc$`JdgBVUF9Nr>9GMy=h_xW*k>c(%b&?s*=@IW6^B*fSpI3~geBDP zI{yIjw-d{u`1kej{Ats)WpWzwnSsz$$4fjBL@J${`8ol6=)AF#0@pFlZR6&T;B^w> zSi~3JK9-g{zV5$(C%>AbwG^zT#^f;Q%QjDW7c1KMoY#L(CpLKgR4FS>B-cKnn%R5E2B9%sHbwBRwOrYFs}Mb6EkG*E#`y{{R)+%RF{x7a<}RxyRN6RL5Fc zXE!$$sM|e~hYNi?_*|~sPjKko>+t3eLa`2ziJTqS-J3iftDA>8o$#!tjLUCpf^ZJ| zNq~}6gGTF?{{V9Bw@hR-i8onT`x|_f>=y|FM@;_FJV{Z~)4E!&;0^ujLmOF353((( zS>;zeDdRN)lM9iZu&=qTdu_XzJY~*$8(XeaJJ~>8FAb!sX>@hB}96rq0r~ zeW8K8shhn%Cq#O#Q8p&`muMADl!>uWR^n&%gs^xuG!vHm$z1v6<)%J`DN7{JbzzPa z=R9t*73Zy`8DGsh8rW){;2mpfxNa8Y*K!m*jOEJfjw6Zt{^gyHCpM1KJBGTgHq+xT+6+U^XYAx)3>=3NR(E##k|S$u z&bd_Obd@t5-`=dUmffd()cc<|I`QvP!4aMMa8cW5r1Wl@HrPKzQJA$<4Gn9XqJ@y| z+hCaZ$YYNsr{M?H?M-}C?rUYSw(xUWH;n!DY6!Bi#oDJJKXC;|Va#d2RZgP;ZtKxGtnTIg z5jY`qbKSa)c&pxMPPvxSrm*4}=w$SbbQb5yNHGDzrHy+&+c>RVMIbG3E%8CBFi7Rh z=C>hN*p%ZD%G~tw-@`&YQ5sBd5TfAi`v)V(;1}DasL3iQ{LSkHKY6H zreP)8woN3MM(JA2+Pw5?F#JxM2w5E?Z@Tq5Y0U|i22(ISjowIjlBR+hd3#k;*!_W^ zTEtW8F}lj8<&t-JF+j>niEQkdJLGaD1XS(p!06ZyGsGga*gYiOspoWuz19h&1}r`& z9I`%Im-J@@T9*c@b8Q?^(nr+lQMhTLgR>4%qMi{kW3%dzQG;gb;%%YUJDGeYbKf;Qv|~$*~oD$Dvmh!af@3`Ip*VXI2-rsvlRj2 zh0pfFKeAZ6Agp!~Q0DoyP&>Q*qsX4{gk$s-cwKCiZPqex8U5erxIE)^lUXK}M36cb zF|kR!9k~hM2Z=+>Vxv5{?7_fvSE?j?se}w~r+$_l6*_4d4K|GD&!XtV(>i5DbWma0 z1GCjXiT#-9snFFmwvJg`!F~qzOrO)@4{Ldw`rHxhBV=EUFv%0Qa6&HWpTXy#@LFY_ z7-PJsnEsS20hXIEZg4mrfmMP!iK5-W{o~Ir8-RE)!Om^RirapQYm zq7Q^Qtdh=qMa8e0#A(LqE^WwtG1TTT8<((uL<+U66+70s){^$WK)E=w`<{kV z!GhxmsdimAfP?+?vWCNcJOY)^KSxOueOu_E2h)c08hn>_ENZchvQ3rT%Dl`Dnlc>s zIp^T0+_q;sp;l@!m$9PFZlAoKTl^+#-8uGdAm)xA(N>MdI*|2Z*R6BUJC#=`CruUN zDsd+N01$J>59pv^^uxtif(_PZ=IWaeX_=SdbwpabXLpK%YKBqMzE?Yfu{4{!$D++* zm8`3o?9F&$<9-B=Uz*bx$0{9&Ru>mkOWQBxena2QO@!f+x#5HT>Zezq*|VCjO2JVx zt0elEzOVP(wzvi!VW;2B-%U2A{D(zMmnoo%j+8OFGBIGNGD9rYFLy<9c{h{TdXb^< zX#~zvx#43ErJ8oxjq$p6BN>K9G2X@Qx{j&vHsMb^wE11WZ*9X)?rMK3K^YEZ#-TL2 zJ{jzzc5=*+zaUYvi?ed{)U_FFyDfHP!qFvT2ZFbRNGP8^W;Of9SQE)thqZ_?-3e2_ zVP34}tdiWcNinrE0Z4mQPA7pkD6}qu8cDM`fcrO9ZiNeEZ7jQfY9|sjEwU#R6q0)L z?)sifro*F+xuL3T{cXt|)3hwA5Kc2Sudv{z-_glZ$Ijf4`(ab4f^7TE*J9jLC;FJe zI?Lrd7JVKST_YpIWpH`D^Zx)M9 zogHJvJL7wFPMT&4VEoOv8g)>0sb_USZn5?y9a^@`n$@N_L0>uGncZ@QJJxb9Tt;v{!w`4+t}A>!BKse}WUQv9jr7lJ87st6 zlF)daJ_sHtFbW?i(zj``DJdg$I5EABAe)nWkO|OgkKi>WwO(Rc(+Kp3#08DosvJD+ z)g@JPWSCN$>8nkR`(E|u^XqqRjC^9bU4m@&1yyX=bh62XU6IpD*~`f}ZsXy7I%uw8 zcsAm-*sXV@t$Q*?59(SzS-O=a1uWH5it5H#1D+`P1NM)A;ENw~#x3WMeKj17WFtu=KH2<} zwqFjL5y!0qtsN-OH2yrj>U$lHy+e$84kv;iJFMKfmCAu>9P{o&opSeI-l-bVVr{+Z z#8K}Jf=HRzxK%cb78ni^=^Os@H=~R3KH!Bj+hL2EnxCU--RL6LTW}vYo7qF^B{2G&0e!mPpF33}@m{=2cBeR40wiW8&7?x+v%i<*Q`Qen{iuOTOi9 zR?|-ul1Gz6?Yp(&kZmxGVVH~_aUWsh>lx6l#xU6Hpx(!$#7YX`9kEHpVpX9aA$$B%W^@GxQ~Ja1#j{)|n(Wx!@J=p|iy5 znVq}cammK%`t}0bru~k~d*uEFEHKYLN+vq-!gGP+ujZ@>qxvFRY2tCIitmO_7YAKc zc&j|t769y$JD)u|pf;Np>1M~I!eN%t(t#xNp*^)a8i)qX~x6{22#b|bG8`{h(4Z-s~HaR4kSf1f?p}Be1 z`dszqfYH`gVw-UMGLot><}~kMo*SEz24j2bbQ<-#@_9HW{57kX#w!#RZ>Yj+{Mt&A zH;m%=@2j}!#PLVjvvipBxv@(6tUPWS=%@3Hq?3N8-J2kEvd4zu?1`~jwA60uE9Tf-lgT?vB&WNwf={h$oi*>!4|?2Tn9!GJBa0Q5dY95# zrj|-aH#9+lz>sw|=cBac*F9aeZLNw7PZMObRmT4SHx{&Quq1<&UfgxmuHIjhFrRO> zcNDljFHm80JFK2;OmaapyG$eZx%icD6P^mXVKXy9RS#{M`P-G&e;36+#JLPo!Anye z%gJeOd-5l{T~u&Eic!TL>UNzj@*Qxx{x?13$L>YJHZcI6A&J53f$2x$l9GM=Af`}a z6HQe!Y8jC5e%qcV(<| zp6feN#6|%ZVxllspu6cWQK~*IiDn-7u%D1 zH@ymUra0RAil=AGz#mnfJx_Pws?<(undutl!gxkKc|RfCk~k%)sbTu+ooya%Asy(v z7-^?F*S~o;GC6o41WyfhERfXB-Q6%Y-Lc)40y*;LuR_h`G_=Q8)9~+M;C;&IkVyGy z=iw+UH$yJ^8JR2i(w*GB@t^MD8#TDLMmp+2RYSav{Bl0T9(+^|!fWW*_`Lb2t126R znk7Lrly&ZblI3K*wprR<*ZY)}a5}C>NN4Ta`?@w6NojEy8@_%UE>E{fFW?lEnBX#H zHIE%xR?o$0u%SUuG_9^w{G#2tdpL2 zWz|}XXsT)28Rt^R-8*#otCd?8)^_RGz(+XUl;7?{X2LN_Hg+YF!<5Vfd{Xc>GZxX* zO3clIDaSG#q>mYbcaJ!8pf~5k;<8VUQQCeT9-iGR>_TY7TMdA$l0V$4Zf}}2dv52d zj!5qWx%B11RiF-$?;+N=KfPw)td-2(GA-ji-8{d6R^Y|VCBRlm0X(W1Z=VmEE+cI< zG|q9emrpNl%|c?vDuWze#!foI;HIa>=mGS;j!u&{-xWHhKI#X}TFHq1SB{}|b{u6p=pNQi-e-Xw3eMC~n6thXIh(V2ARJ>q zX`hk+#xX$ni??mN>F*?ezZv2^%So`fu$rCtTi^9#c}`E*JiW^^M~)i0c;cyZOws*Z z!-S3J{ZtXk{2vx%wEdic=b|e|m4aNI! zc9uzM&XKUf>7Sqr2eg=>o@YiJ>oeBxKhYf8oMghm6b|jW;hr4af^5zb{7VxPKk8vR zUz^6a@E>|rQtWqRFh^0+dCf~QNd0Vhi*OzTn$(eTbb+mFLm8tO6V$C$+;7o7Cvq#C z7c)&$2}rs{C5BYOfO8$HorF7ztOAvU7T?uU4XKASZSM;ih?i{c(7}yD-$NnEFz)C1 zt=sjA{Sa(l501K$NMGtoIP^VJmq2duPYWl7+2fFBVeTmavde5XB>34=fYrLwQj%i7 zHh)jKYL1AZ$?7}XicsK?F7UU4nUXeE>!Pk#1R7Vzm)78_%SzcB*~??Z9t!A`<*`Y- zzYP#fE;+F9Pd}dF&vqSJ&2zIxo_)(X^!6!+)5}AO)3lee%&2D{9`)+g5?U#rmqxIF zvpAL?OmOV8HL^1&2mWgIRzMmWdP#86xqNa)Muc_z&@6t9urqq;cW=FozgRk<@QS=L zaWy-g9`L)cI2MDUD>RU$p@5A1$l{wJ180l+sXNNtd?mYe0TS%ad zu=+hg7w)pm&q(SxUD?e`D71|G9SB7>YPdR`^in&wPwIEG`YMd-z!sA!9l; z4~YJV>(9wavlY?hlT8RgD&rAVIm3j4{{WiP;*o&x?z~oi5O3(&xx#PmDv?y)NEzG4 zKG^XKXA_%KM#)aBmOsCW#)H@eX!c%VE*ko0J6d=AinOTUt~5Ba;C~C4?t8d=mYzB} zs-K;{jz6~dEY>{}sPQIM#@;q3#Bup8H3a5*U~_1%3#e8uM^8;k+{e?usoUYN9(4=C!-rc>u8W*t4o9-@bh0^WlD>gOKk}EdKyW#~<46 zF^$WJ&g}VF9Dc#|S^Ql}1miv?`6H%ltnu5E+K_ni3Cxdr!M)LpJ&5yYIoz!sG}QQQ zBQm!0NDI&AR#vNO_)Zy1gHeg6dqd8m`f}u{*4MhSOP6{!of-J5aXNbHnWmlD$vpTA zbm)v>RFesXK!Pv;(eL07R3@xZ;SQPNN%R9y&VKY(CPhxy1M*FMTipwWZXDH0YnHnD z_mmR$@zOLLwgEvLS)_UDtcH>BQ5j=_+VM!Vo+#TJ928Sk!wVgokX7cEX;|kMZrRaL zs4a>YG;u0!N|^r1HX$`bb$;!g8K=z$t?hce)tA~BvdHY3aOSE$t2LO`WMJ2-%PgDB zbgwO%K=`O;FYP-mthh}hp6?XdW-n!yeVRzB86=Vcn!}20@E+55t?I0>2E)8RHAK}n zJFnu6jUVRCYiwNQcAA}$HP0@01xhK~G=L68UwrY$5MXmbkzRIya7`TZRj8 zWtCW}A_p;-hwiJ4u7~ZcuGQgYI9tzM6uE6H9sPv>t%0rWO3^sV*hY3LSKWYSn9 zat~{gxeYu~)AT&b4<08?B!D&9`yn`X6_XC5~nZfx~MDscK*&0gKa-?V0mgyypiedTMW1JtO6)^HvDRPk2H z6CLLcXKZ(DRJ4cMnArd{_ zdk5_!cW8Kz^gt%VDJs1^Gu=x++h+w)&aA^^&r-)Q@bic?zlh*gn>VA=RblnC`QUS& zd4lanig|NdJ25xju+ZWxot|*_?#SU$PTn8H-XrcuY4M3;hdoAGns3|3WAOn!kinhZ zt7Qr!Q0v<=jyWNzi##&5;d3Gvb^dC+5Ju2RX`?y#M&s~Ta8~ZHsLQ!T5d3^+nfrk$ zk7*-=2LP6a^czQq&sO`zn01-_ZTq8;Mqr|)!<(aX&CH%Y@~3p&mo_fIRh&a}6UA1O zv)?I`SGk}CR$1G7GnX~a4spBk{{Wdr?aXJjD@SsB25H2n0t!PlGk7`0G~zI~UDJ=r z8wtJ3wN&NCVvkJBXNrN?&S!RCo4Jifz>&J((sO<2XVMe9UByWq`Y7Kt$Jb+7{{WdN zM!>0bZS|#S{$$rxQ%9+N{53*%k2-JZzxi8Bl89uJ)^%C`0Lx&EC9&X7&tl~hz4|Dh ziLyOC5I?@l<(@I&s*lgACG}#d{{St5 zBFq}6F0;9VqbwB6z@oL~mP6L={{Td2ZUQ{j6X_ef{y9MW)Fuhsb2`2O;M=W4cs&e% zs%MT>IHjhIy^RlYG&adchL;@0)pLL4vnW%H8HDEgHbL+7CKt6_NE}?y zhnXIDxiH`Ra$rQu7~=M>HBf~@!z%A-FuH2TCj3)8>D-#3XiH>)`}uy-ZuS2FX((q@ z@*|C#$zIklb2=qx@J2^{PXs!*7LF!5Dqmk)%>MvYgPpJbgPN_0V=Z+&mh?2Ep93fK zSt|P1OJ=>7&8UMn9{2YwvdLZ(R${=h&W>H&I^J(-{vVp59W0fE8Cko9o})iIsi`R4 zB;IjS?c@1$9t%%};N7k5Q+phl*TqV0MTFpPsk+k8XD(2kK~0TtD_lRAmVv_>a-F&Flcq8Z>Uc(%oI#I>WytJy(>5!Pj`9^ zcFd9;{C=qQ+0BQ)!A!=r!!r=NI@bq1;kS4mm4o$->N~<9#|n7!LG^PBgV7^NQ9N`} zW_zywL1k+y>M<(O>XEI7AW;d!_s{c}T!D2)uAMAPd#GGNm&Ix)Ob#Ny}no!#(H-L^L9 zqB6EUPXVvNB4~C(lg=@}IeS`TrDq@BKa$)uUs8kYg&3sS$mRCxPVo40M?*TH&y^%? z8U183qDILyvK}4%5ekF4r+GnZWD!z2{9mG?fK^U2PR5^X=TS>LW0~(df^rW5#Yqt# zq|Wcvi#1W6!gfMk^=!AlnoTq+;@Mc~BX*0a&ChZl1dpVCyg8zAI{mo)L=_RGj{TJ+ zw6<%V(RDGi1iX8dw=*+bN)pL!16}7{arVWD@JohQW{Ytqw)F``>u7~lB(a{F6^{;* z8Jr7j_|Mu>x#ka4!MtOg&zcu0+)U$|{X!{8SSsneO|*lEQPt80=5|EO(P^a)Zsq(f zp*)c4x-k>pT~WiW7}dsB;q5R*KVVla_oQf9h1o2 z4w|b>tU70RE;*H%=mVQ@=9b$2wT_C3i*s<_f#{f6GRQS%sjkI$2Q1B1SyW?fvhLH~ z*k|p@$EpnDT57CZ+>Gv1GjQE=I_jgTa(bPse3WjmHs*jM{K=;JY}D?OkfLn6bAVP!m)~Y%(x<-B2zZQ4c$G zx<7*NMC~%9L4sVS{FH(~S#Yj8jwfb0Y*k0mNg2F(NK819+9?v{b5Cuy(KO1z?I6(*48z)W{zwV;gY4*CaoO7lEOwzID)qFS zR1t?{aVg?9gP5QvGj>ziSvxp4MHsP8x9=uPabgbrV{P{-9StpOZNdKla;0J$aNG4v z5{vXBibP5FaiHd7-iN;re0hOo?fb~oIGmK$Y`wO1<`-0k)p~ecXZIk%B9?kr-WgpF zaxqD@4~Mf`7IF62tGT!A%+Gp-)K_b_Zuq0XYpH7}u_orGouu^Oerh@39iVwEQ{XW_ zH))5cSE;eu`b{48)WSaBABqfqma3-*#2Hgh>&9+-!u5P36N4VZMO{0aoDWDp730w3 zG*!**Ik3N>)8>j`IOFgvL6s28nwjU)4puzYSxvOU>FTygl|C6_tfXaCJFds^?kU+; z8gy+Hk||47I^0T+4rXeah~ww0wfG}K-7YW^)a;gR+~$Ritnz~hYng^pzH|FS*=NM8 zb}_b9wT0euh_!?EG@U<)r_~oXsbU*ZhG65;)U!X>;(iMwi}^&BSaMO*?m^Q$_5$7u z&RvT<{X;i5=6g=~l-Sz&-s3c`FYkBYt)0wfEOX4W0X&7TH+hcWed5c|_D$P49UOB> z1B8zNnu#?8`0xwJp9WUDBb{NzX*MHjzKoO1s#w`5q&>Lbt*^{oDlxBghByRS;L1Vf z9d$ODR#pruQ2?*NYn<5Mu1wc&yea8+rO-chiqq~-?HR-0(PeS{HEFv%6UK_QJwz3e z32EkJjN@=swVtf@n&r!q6eSa+An2aQW@=#x>=r`qw0h;slS7jn6W1X3po~s|wRF#k z+#D8n4Xdc5seL5bO}iTKBccBETUjG(n_{yV?jK?+BW>RwuWoi%jb8T3ZDz!}b{ta# ziN)gk*a!E?U|$ydH>}AU#1-o-#Ab%oP&=^eXX)=lc8_K$_KpW)SW}w?bYkyk+wMP~ z_HVLmd6Or6S(xty6lBC$M-i&MS4X^Mi}y3fq>O!qh~#{D^i&8f(cd*}tZAsLMj=PJ z%+UV+iseNaqhNO!`u=Ml9Yg8n618iv+*P$S_I6jWj@u6fra9@3SndYYVziLvX_q{L$)+DheA(PZM_p@gB#D9(y>nKgCxUhD-H1)`6p-WTJt?)3jcFz-uUkw!0kHi21IEh@wbWf^ z8II!O^;5bQaj^c1S73N94BhT2Uj%mhZUFo^tWF`e+d*8-)9d`&K9Dpw=f~oKK0Wk~ zmPubT_>&{9jhoSGcH0HR{T>@i>Z8=VD}HM|iEWlGTbeM~DWN==-9YbgKo~6FRjafO z(a9N2onrRf{{VX3I2Me`7f#6iXDA(B(dz1uUnRe~n(3I%D02l}QS33kD&sI|U98V) zW{BbujTyy6>73@@fVw60WKlQOX}1+!^tNo)(HTQ3GmoZq-R~SeYgtP`B5jz~z&n-5>1o@m-Ml^SKxJt* zR-KPzlTR#)g3u>7_AjUy_s$9Iu%hFdT*m> zEzOsLnUULyNOf$V#+^M~JtH$z&lF?#-DS}ukhupmH)x^%0AfBy@rmts!0MtqPXzCD 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%0A$rLDM>wB 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%0D^J)F{SS(Vt^%F@< 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ʛn)~pZW|WnCbiWimnVZ@zyAO=&2Ba$V%vno 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¥D=1|JlNnIP_ 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

    -Q|sHiuT_kUD&zOoS{)nVVF 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%0D(}%rDlHBs? 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

    Hw!7romh(I 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ÐJ*=XiPY6Sm*iTk z$FxKo!l}1BZq=_**mrwU8*J@9DLm$+am)B2KTo;Z@8VK37JI#@zs#3NUBB#4&ZNt8 z1Xu4%=X1r{V_MJPaUXJ^%t+t1$ehpPQnIQOsBNv$+>-imcfYY1@p{$MHc$TzPMm+Hg)4)c(_+m($1euJ`uQvu?2{nQx`5hlRf-DDsbwNA+0D zo-boc%NocX!R^ibDVyqZ`qrtuSpJW_ZDR7Jv{5&;ia_u<-XN^Q<%bvI>Z)h|040_U zrk93xccn4F?$C5j?kQdzN7Q;;epqo%a8f_T_EuTtp0H@_I+_0f{J;7yDDzmkWw&zg zG|Q`Vf0<4A_@8&O(Rp7Fe1@Wlq;d>>tge6B{u~>wA5(tk1M^-MAZB0c z+Hmnp{A_@H- zh3%`kB&MG;vpw!0>EN#pDUXu59a*JIo0lc;`K1TYx$oh}qDktb4d1^lhXfk7vRQ2> zsKLM7u`a&YV)mCKR-fZf$Zbm>_6)-}@-O(^T)VF%W)$ zcESso2LfC1SBX`K%Xcm%y+!;McOJwWkx_(`M)lk9+1Ovz${wj<{r?U%> zR3}heiQ-aZgfyYD>2Bmel8|3Bimi=1G|nFX0D`@TwB&a%4!#IpB6HWhgD+tjDOV}V z9v#GAU(H6%SPycY*4D|pMF6OxL{5qz&%`rOJdIbs_pu|IlVatd-kq5@f8NFj|Z4YwE zK`gKv$D8v$)v4;@#3>yVy4-O=Dx#ANp66O?tnLkr$wx4ysLgTeKQ^BAvZk)4tfz3R%HXo} zNSikGmye#83U)@w*yA(W0T$OqUG-5!*EX50w=Z(bZ5|{gU}K)__vPG(ka?QuF)1S9 zsTc57=M5Di{2U5%2rMPYe!*@;#sQNdL;WXQReeWOCz{_%T6;4;5)rysb=$h zRym!(@mq&T12>slrlm$u(q`4p=oQ#yGQ{T{0ShCD;>M$~O`x&4@I-JdSQuFx&eRJj z1LEIhI#?M|O!#GO*zsbKg-FL1@zUso@tvf?CBd;*L6gzC<%cp5>&nIKTUmj}jNx*D z_3`$>UP&l4^Ex-^czigkl=h90T;_Xh&%Vp0oso7~p|=Fb$mg4MQ2=;+O4CX|F>_o` z$#V_0>96LImhBwf-;qy@*z4k&N=>r@2%^9$AV~SxIVX3Xf1lSvuvT4x!rY3 zy%yC%`F(7>3N#UyU%@xC?Q%*-XHE$>87;jt8GLAmRs2by4bFuQc#LV~e~#2r|tC z!kQW0?BYx5(%e)Bi0vhIe3=~gTc&LjTrS6VAQZc^r-(~!eVsXt5+7JyD*&^J(FAs! zdamNv63dT}N;!C3uHwgbz9=(q+0nNj-^n*A8s_+??%U7gkZJqf5Dl=qua~_ox;ZQiJRJ%NVdVAK6lM!Um4@%h?%q&gDPUPt1d_A^0+|pBc_!#EzA$Gj% zpgEdy%H2Akv>55pvi2X$qw&@}UVLhvDmeqMDp~Va9_I>feKNrWFL*dDJCM|u|y@_el#mt-N@?4YgDbr>=prU!O7eDaS0a_ABR&ByGc6 zr|%=XJ5bz{(>b;h3yb%0TD__AQ7sN?%o0~rz(G5+#D9Me1&PCBsiVZ$*VDJ zdZc-=zcdF~m&_f*ik>1}-QSy%uju<%cB<7aB}GlV+MUv0L2hW=NnRbGF8=_jG}t@U z;jXJoN#xUOF&u_0HzQxKZS5a@mZpcuUNJL6tE(xX2Z%>#9%I|h94(;IL*y98)hS$?(6%~?j9Wu9bZ}K>1d}v%g5r5(0Mi5 z%ID>77rP&BM+V#Cy=mKX95H0V@RsE2{>W7)+e}(bCYG9ne--SPY=bLDp8Jx4RO0TaIjeDMx|95N2zw~n8|fa<@8TR1=A);R zwC5Xqk)x4%IU#Oi6)R1-pT$j@u14i!8yN0U3}%`ruaUMK-}tH(8)pm}8i<9t1iZBS zQ`OSXe9}HgkAkLSh8)H3YY!9#yK7r4&M|Lf{x?`5Q)9Es>anaJ6{L*qY@Jt6AGYJ& z$yb*dr-*3S$MLyhrLU`-*OlLLu1;-S?h3S)u6?K+1xLCzp|fond2no3zc;xB@mxUr zNsTYN9IP$T?Pv1zRcEWHsQTI5enCfjY1z>sL7Q%=+AdsxTMP74vDseC+FPe31;x~l zwe;YTFFJUnc*^ZlCF(S{4oV7FdTSQx)lWOJvo~hu{Ckqp_S4|Fpsj(>NbgS<9`HG< z#9J`y_be?XRJ8N5Xx(DoAJuKCDw|zM%7$?~dx%P>Br^7M^5&$M(nQGzAX6#@$Z>VA z#X1mOM)nVK2~gNb;&PPh?-_moaZQz`M~0m`_=R#BedApV8^`2;tq_PY)9-r>y~)rj z10SOgv)Jog_SLPbqGc`*1ES6Kq(7y=)BRRW#{65u;GFUsN>@cLdFf?st$*w(HFZNo*9MX(QdJNCcXC3L8FJg zc`GIWf*95wH)e!;)`JV$%u0>9OZ@H;%70tpqT&+ben}^dkDmdrj$!*5tPi;UYXyyA z7`_bs)+a$NG3r}!@!-9BhitIPyejfr7Z8^&(Vy4c_EMe`Ef zbS%*RYdu2Y1yC;4gjr}tjLq&UM%A&HH}s6CZy2kC{@+AX+OZ^Xf4?$lFFEqM_Wk8z8akS{;(mPMVSi^Q37}_{lTN9#!iNyBgcOLsHlE);nM@+|9 z%<#c(_3JdyvWpIak}pyi!!63-YMyy$*~}|oaBMBX)lT!-ha>8(L7YcVk}QzM&J1RO zQl6qZM*3{Ja?Gh0RN`-UXK@E|!(|p`t#r?HbnUt3{y|%%rfeOzyF8ugl=RWS%(45* zr;F_+782a0?V4|}IU`FHnxZIKyq)b}SzLE+nM%h+N5y0@jiju_Bz9?B0Y0EsFg=9E zG3STJ1E7QU({xqVPc*?X9A>W&neM1_z38UQ>@Lu4OoBQJ4ct8Dn?|ox!2F%;?$5AP zVlQo6?bh;oqujT26?ma7GG!lj_l6MQ;Pkfsbyr* z_WdT24*|_;quN@k#(Ad6;WvSrdDNbc7I<|+F`Av2z+b<{YhScDi#6T3!*qkcfgO*6fQYUQHBHZu{%4tlxUM^DU0#QWCg3c&EZ0hXkt zZu6Xv)!KKh{7*>i#NoRWi{f^YrOm_X$REUd_#>~w@I8>Gyew?h0h&ntP5SpDSk}_F z52tx+uJfQgmSYN~lNPD^Lcd5FbFd$6NEO3`^>ckIi14?fzJPa?oyT#xF}a-t4s$4C z_hpBdcm%G@Xds%aa15SvL6TqX)~qSD>vnAyDZzjdL0Nyps+gh=%4BT7L*hy0`xT zq?%zT+pI!Twps@h2n?m>7^Ub;5s<_g8B&KfL2V(o!k__7sWPi zJpS%$o1ZI;@Yfb^3i3mQ#?dA`OExW(WR(7Lo zFy>SUC}N)xobrcNZn4!f;Xc{Kqy+V5H$K0}b=akG_ z7i-w+r(`@MkI}{lO*KCCt~^;}S1B6`+&>JUWwwiGoiHEpR2)0*PmR!;t#jSQTfZ$F24h{T++k248y{E)+EWpdTk5Q0lf^L}B-1z&K8AaSqP_WCE z)%A;@xAoKh0Z7WI+hE+I!4BTv?4J~@JzJu~W+uvumlNaBTV!*|?XnTZ5>2#TpC6_a%8sAjiUQtW*j8l+D~H~ze7dcOtkYf} za*>wL{rl8R)L){JgdJVtfEzq{s$O#`qmM1DmS$c{@$XW^EJfU+n#_KxbjHlMNINT^ ztV(CFp(AWvX4z4m;kxwI6PLfm51!?YJr?PvQV!dl%F5(=YnfMo4>!1VxvK-B2>$>S zz2(U}A-cIC@6k|kCojDd+4w~GuXJF%p_*un?7Ll_spE+N0=fQ1TEeu%aIgt7w~dpV z8)9pn?WYME+YI(6iB_s8qKci;iEn>``TLV_xtW@s$ARuwu<8f>4ZU-0T=Vcz;nc#a zP1~Q6{dpr(wUktXH_q3*@(Oax^r-=+j5VMh9efo{-eT)3lDL+7ygwBN^nwmv9eb6} zM4NEvSOInI&w`t32=hqCWMpQx_a{Fs2v;!-|<>0 z_WJ{hCpx2cM|Qs@=225eGdGQOimP7~X3yjKuQxx3$DUo4+f99D-0ZXyIrR8VO-$VF z*%$Y$Om${Az0GSw9!v6f9{%M@eHouO#V}6ss`Pj`apImCWkw)$6Sm!!ak{Cx5w-2l zeB27AWzDB|6yZ1xuw5x8?1nkc)445x)3TW~uaLO*LE&{>^136d?zGtmFj==z-Hv0f z>kt(|P+TlqqD||E7kHh(+KR&I$r==Qr@uB`t6hB4=V^ct{qyFmNOuKXVq56dPURtWvVkE@65b)+?2o90Y4 zc2-%lnADBa4XOVCDkDd*xXna487LiR-69Lu@C%pF#c2d zr~d%i%>Mwa#iAY&56w^cJb$zLb(Hh3-RFH*dB?40tzq(Y!uYgb{Xl+c50kbA{{Y_2 z;rjvkqx_yf+5I}n8Qs_iwPm{5f?I+)!Q5mkCA3&OFf3LYCQj+IN4zgBwY6H!p9Q!C z7H_Wd^0Vj4Tz40Q)k%v}wrE)^SmQJ&I6U;!>b11E%jcwqq855QmiLZ71)O=!#m&=G z?o?=tFzup<@7^h=4h5OJB-^6%vd3+#F(@7DJK}+yN+)A)poxt;sPjGi zf#{}ukVN(}XEYg2nSN`UEtwhgm&wabOEX7sjC4Z8+L0)5x})|X)f7}hI3 z&(t!SIjX6g89Ui~IC9s!zfL@sWYamdPJ*Y`rF)@0F49NCMUQVJyfI8i5p2w@pU$cO z0B0jbwdrmiJh-cSBVRQ>D#}XEF|pCj3-!+rC%3~(_bNf%n@5y0+DxvdIESQ(&W@@b zV|aF=$;C<`U4+SpRK6_nJ{L?0*mX#JaY-LmNx|cyErwK6ZC=XF42{W* zVV;smL#*Nl6Jx}E-vlsABtD9vzHNl8=DksSxPNY9XysLmj3u7QDRS?5xn&o>URaU9Dka} zEWb#@LreDz$rv_cIWQ?Aqq)y6X$ezCFBWHX&?056!>Pkxtz3fnIYt*m@XZsYZX059 z$xud&btmyBVVbuKC;|_JQYW}{?a;^Wyxxr!!m;~^}h88k-XBoUI@``Hum1rQtyhZ zauSClMzg+m?xfy0sIF74gW1<1agc<|q$l^18%)^`9Li1M=BkNooXLk0fwiDP;GMi< zePvsJ(W!<~c%-eTGYh)QubYo$L7hm_P-O=yoszdjUpH09CpTFtLot}i{v%}=2k7oHv81r{o08W`M9dYb*8Rb~E`svfkh z_a}WVQh#3M8dqr2@k^*#*5cJ8^{M{=Ow@CGf6A7JXwW3#?4W}ln10Q7)6;#J&^tl9 z6r;Tb`gU*me+A!9Py3$)4$yY#ju%0Gov1%!{HcDLsQ&<${!|XoVfpgtnGW&aScLsK zQTCbsRKHG7`=102!OhS-QslP;2;-CesMic`qwO&RaC*fkKz^C1>mR`<(={J$zvV#f z2V7j6+B)SyzL==}q<`gHaf*+$&+?#lgAS7`bxdRL!3BOTJGi~SsLS@k>d?)U?jE{{Ytg7txKzAI~etdTFhN=QF7( zk9lgHQ8Kafp`?hm;+6tCo&6L(X-&b@QJ;$XJ=0K0>tWPq#vp$M85n8fgwg*1^&$Bq zN7?hInb96J5j)1^Be2Rdsl%YR@qTOQvj!4);M8aN8k^>L8RLRc{{WDFNFARzy9T6o zte|CwJo>7$V3b^4PyYZ>UrHP|XZ@@OhsPlNlCuuL2BQL_9t{KVOm=*@>GxpUIOBIp4dLeJ$1mftl}Y>C9DbW~7JAiacv zwg=;)^u3JoDEe6$UtI&9@!H*&06uHi>D@y@%TiE5ABBRD;}VZ%Kkwd<+Qkekp`>hV zrJc4KgJ)~;vX%9Y%o^Hxd&zGFL+P1^vmf{GTydE>v4~WnoL3=#OPs${-}5Ik7LVGA z!7i)q1T{;T1yAWZem%6mNK+m!a7L)yTm&6c?{8^T^XgyPr#7;e_N_*#cwEd1>#D-8 zm-g*W6*TAd%}l%|Hat@Vfu_ncQ3vhXp^|!h-(J+TeimksGR{&p!NTEC^N1YV7qvc~ zSev6|ZIBn2DEn6hy0vrWjxSy9YI-EAm0?>=`&OrUFG|p=6{(v zm303Aw`ci~7FQ^I>JQqrFxFF#*0lj;a;fx%H`_{a8e#3E7Os-&ld(E%zO%o|s~k|~9z+8jI6cd;LBzvfH4U^dR*^CQSG($gL=MgCB#)L~T8IgZ^n&3JvZ zwu=42>yNa6hH6@RrutSj{r>>f45-<9DOy7_FmyVEP|V0=%5-7p%IbANgRAm;7?IT! z*<+9!-aQHNzfTmA!95GV+L$#nh#F5%=!^VLpL*V=mWMXZ7ai$P$Fe*!R{sFJRMLMR zZNDBrHD)R*%0{|MS>UaMsCK^&A2f1YE|P2ZGJgh$e49R6b3ry!-*NXJy#NZev{IKE zh`iQMx5MJ8u(_{uW1X@wXpJrrl_gc!#6Vp>LdHn+?7P)*a;EcNO*T$R-!)Viiy?lY@JnWbdJ7fF z$?&kt886|y=d4A4l$>g>5R#(`f(j~M)yDP*8*(I`XXW!=gRwhTPqi30WnDXIYUyO% z)STL6KG;2Yj^*a~uFlk9)f0h7QzUF4#&YYImB;{JuMK;bqj??K%B&)v5Us1D-HC%Y zMeXQK{`Ka3{CN1dZPuG{=WX(K-+4L1aryyOfU(izP@hI~U9*p};&@w#cP|7Z$==q} zKD+!SwRBE{6ouv}Uq1`*%0~vP70G8W-|3e(-HXO)W_wO%KX!V5u8UWRY{gK(=`qOL8>y!T_II>(*P_ij zmY_X>(Ka~-q&>h}t?!`suR_A{iabZjRR$dQI8PN#i!z&J1nYha>27|yxF$cg2EOsd z7|&~JQ#1M~g3Af*|(~aZO{FKk5j$YgNk*dYvSj|>`%=WS8#>-Lk%R_RzFM2v@B$o?xkMw#5 zGQm-<*?sSBEgx+{A?IVX`06_aJ-DcDh1VR_LSr9?R8q(@x4B6fmKHsnh}CPQWj%CR zUz84AQ0HNRue@%)h_OLYjpZgl?$;kxTbZrPPERY}swF`S9ShqoR%y*umIlt-vCS_B zh~N}j72+~)!OfMO&Qer4k;#-Xz#nX+6i(2GD@Qy`?Kg&}pg)3JC1>W2nfW!hG09aD zI2Js1KpOaSL?OJwM-BvYL+6g7EjJo~;64L|d7&$D6a!-+BPXDYF$-aym#W93$lpU_cz!ZxGn}x;&G*R=~*( zk1^xijZ$LIhcmLsMwdCdD)ZtpV_4i2u6(jm#&gKP?JPNdYNo&e-BC5tGO^WDu-TF2 z(&@DD<9L=JCaa~ESX+CCx3b%gOIwL!wN8`FY4DmF818)_?L1iMcmOT$S$zs?C~+4^WSy@h z{kJQ4ZUc8xZ#;ajt9{8OxX|Nx7DrW~u47QOhIV!|DefJ>?IYqOuQ1MHib>5o#@Cm-w;=7akspFo#dfBWS{a>D8!riP$o)BstaVNz{O@Fs zYo2t!D=n;bf_xqtYKLchC!V?be7*}WiPF(cQun~l7uARX@y2AKnZwwzLTV*@WVa1I zD^EvG$}Z8TlO&u*Z|{nS{3P1RA5j#!A-<*h25EG*05JLGr<-`*@NdmX>~45X+}6lC zJ=X}vE3>t@br`ELG{L|~I2Dz7F}d;1%$-Lu;;v~lVm+uKwisPDyz?m?wiRL4jwqo6 z?6;S_0}@m4Il8Fj-4=ky-rZBs5t|*vC6&)@e1IN7)(T2YUZ!l()UlH?*SwrT>wZW; zZT+T>TBq{L*J*DAXtvo<(K=dTEjya#e*XaX$q218MJw`lfRgw830;NDBvAUU@cydH z%r(!+E@;lAc5QnpD^S5$B8AO!J7)g?1qAgCf*#g|$Nf@2(ar(UoCmv#hOCN-f#kqG zB|Q^MhHSK$mK7yrv&R``YcsqcvgU-%43BN%9R6r?C!QC*kyJT=+-U6$!l@{;-Os%v z7>-xR5Rx}H(gDLud(_rs(L8$Rk6)Sx6s492fa-~1c&t=a@ySrvNfx=23wUlIaKkfl zwn**6HLROch)G>A%GnqP4&`5aNn4A$R=0CcDZReIS7R*0t0ZA;axwh#cO-jWpu-}U z4v@<3+l|Goq7U?g>1tm{TGnMYzH6dlyvY-UExq))a-mY#<71=^ZOPP>4Y}Bb*_Ewu z*TX=h!|^KNFk?L+A8%iu^+TT0Uv|4dM}Lac`K2Zeg+VU$&!1E4TaLE3a6sB|h(c`* zS783Ijv9T+@St>dlAZCsJ{iNlC`By0`6jEVYe#o0A(Gb1OIr8Szj7aL9m;C^4b);a zG^}$biLZl&&DD5uIt;zGWO?ixyRYDq9jC5rStWJsIkxGaPhszKx3p|v;z(0Q;CmX# z*{5Icid!+w^&A3QH!Yv4_7GA`JM^4iH+j=wF;O&=vm@!rGYqjs5(O;82d zv_ZOVEP2^TG4}n3_x7|voEkOd%}WR_Wzc(QV#Y*}-J8K>U}DTZv*h8&ydZQVSAmr4 z^H!eFb2w>laz-dI0V~`aD~uA4090y%R!b)8ZkP8UE{k&a zPRDvP#ae<_5*#$PsaUC6`!)l1=s9vmOs%ED?s zD>tuc#oRfon4L!Ysn*uYm>sQhj`gIT5^(B&vbb>vHoQ|`Cc0_;>txbzn2sEEOoU=} z+jFXY>~3^ap_B&LJBaspt0dT4rix8I^4vHL6jQWj&&z@Lrn^IMrXw>f?GGP<6su7f z$Q{UPt6Ig^<)A9zZfxy)RWdEdil~<#RlzOI?p@E1B-UH|`_h4I$L>stHjM{2FS%`L zq~2~_{{Sq0YY_H_Mbg1*FqurW&^!Cl2DK|ko;-84&w>|*ksVW*I5GbKBxZj{R33E% zAXLY9i8;J%c%UxgQs$61g}zo)WjAOXl+|u7lQHZLN*nrXbOfpbG}2{;`LwmrDZ`AC zxbXazf>#F7J?54D|`@PEJCxo}P#X0fP%FCBzwYYIn zXwsQ=j-0RVPKPLay?`t|Z91z4jy_VmPXymJb02c<8lz)N3~`OF4e9==vD+rPE(a^z z4^3AapJl_Ul_lSh+l;y;j&l!byh!=;Roo;7-2U$rhU|WRy*O%sJ%?fkwnJ=vuzDg- z%PTX-%lE$(j5Es=!eN+rbVukh9>(;x%;q{K1h}=)Ki4PM??v$JPjvT1JH6;>V;;@x zGLY_nnqvbcZtc$XI25c)L027HtoWsN@1Rs2M>RolEoycfiM|;G6&*P8DA#4o-p9ka zB!brAqAWK)R_H&nhOh}JZJPJ_EhOgj&TnLb7JewQxzUX*h(VL)^FZ&jsrN0W2`qKE za|@kz+Qnq%j?>8xCj?VuYJ_i+k=(T&E4FYr{dwbp3wNHzFvXsD+Lm{*)F+F2Yfe>AB9+zy3nqm)R@+=`J(G~vy8@01Og zdtdaGBXqUow=VVQM?$&qin>R__S`>2x1_uSi$tAMbUZXiHje^07Ap9IUAU82$w5f< ziPFoX9F*=l@m+P_ zw{Q3JK^FGo$6t_290P6r>Y1*EEyp)B3m_aUM?~YMiJ`*x@z;`d`S9;SoNb*T>D{k# zL#MT<_by-#IynHOjR|)ImJZBQqKwTm8Pyv901eaw=`)Ql>hM#RQYuOWTgc`2uCqzg zDAVS&bh|SB@O01gahsl<-4w6cX5HB*jjTGGy4F$NE3IYSZ1&3Dw?yz(*3?euY2SBo zvElPX*nsk^9KOJUSwBPs&p|86Y9y+Hp$Bn%OszJ<-3r zf{%T>w)L(S?&4|s2S{jZl z7w}ELp>ufT7gkD`lo_IuGTW9u;VuI+=-E@)wsG)M%PX{yH$Hs|Y?))s&Zg$yia@0A zdpT^zsuppKGqUJP=3U#c3#fkKq*W5?A7x z!1dUjKGs#r+rG9qThKP;Pk^ca{swE!OVRSA3 z0A}HA&)m>H^@93JQT24~XO644mD6#TCxU%%wJo6{pqDUCosu>&IlyfS~xLl26p2ufkPjHoux%1|` zL7S58+p@aNQnDV;Y0bA3_6!=f;UQzP=+$L{INNt+;H1-rUI^K3M=9sYA--E4O7V|P zGV%8&zBcx{cc3Z_HRKmq4La(q2%1Z>zHV_?vlxjr?3W z0)XJ_9}B6SAeNk6%@+75yEoU8;2W0z0D58`TEM^u5zp^LuuM

    qK%r!kSZO-2c(8F@355#-xPR-4D^!zvru{w!26e-S7GzvwJxWf zx`U^B^bw)Ebl2RLdU|Y19o1wFlEU}qJ?NQeJkYQV*Vf$lFF@E&OS7+I+v-Z}zV%4# zP8#RtWn{Sx&9u>J=mkCuaj0DQcnhGe&KFTr8<#J9l4D_eV=h}jh1xy4yK~|Y8!8RDoHPpf zH;e;WA>y=jcXLCqniHRe8){eO&(lm|A*0wZrF`jHzduT-cMVemW?= z0KHBLvo(KRv-FqdSi%Y!Ho)v``G?Wc!Yy)Rl#6?j$ipXY_6cK{bq@ZjH^x0v@lo1_ zbonjWGDWH}0sP@N{>nCBpZDtF&(;e}4z@096Tu<<$#7D(#T&W@4*bgaaQA)9WEgk83m*tVdIK@bf!CYdjnsB zz%m7gmcYdLNUN%LvYvf8Ee!HeVQ{(9Iyk`K6l9|* zu-$i+4|Ctfk)W{QoQws&zMHwf5FZ)gtsNW9Ji#z{S8==gTc?C!`@30=FAVWFCBPq-^? z#;R*OG`VRZKd+ncO68%T{3~McEt-T)Gh0(XSwAJHp`ykymfn^I(o&Dt%9sZ6DY7heO+@a- zE1Rx)9oS*}hs>`y+W!D7c!o2*r=>1z8i2_AEVq9%@v`&UiK_7_H`UYUAHL-rLo@eO z@o(fF;r@$kcrl;YvduiT6(E`RX!AT2=efkW_JWm%CQ9C=WCpC;`oMW}NYqaKi1O>VX zX2N;OWO_i(9sOKWs%C4N>S!G2kJde&+5DAC>ZVY|xsBPRw`}z8OdDA^>_Z=@ zIN98PqN#6opJ_o+DTR^7#@kTPvOa@AfT2mVuaNp_+RJfAC@`8zLz%3xXSVc)Rznx9 zVQ-gunu-}QIfEP6hnZ1*0T)usiBZiJKc{;I&6~o@&#_1h6+%~NAJ{9^=EdkXW`W?h zJj7`qGJJV2GsN2J>Pa41k>Hox=lP|_k%jKWkmTq-3(>Y;8Nemkh|VzT>_WN{Vr45F zM`T*gV_eAhsv8c&;-i`$DzbzuB|0--4uNY*!6! z%AjfoYcDk2;|H{|zFIB`jFU1sACa2)Tq|SIf!fXe5Q%+Ib8|%5Al!%WHdy5iA(7hOfm+S4B7>lJRU_@wVQC|QIc5ts%Au7-rk4{xtiTv?FP3x1#X(CmRdI7 zspN;p8ybCEn{h7D6_1X(bM9E=r1bmZz|oWje|n*q?I~_13!j{p0*bOy--4-(+DRjn zaba{UNtc?5bAmFI$h(o}-jqqq5)gSywu0T&~Ncc6L=& z+-y1>O4yLIPlyUu0$r|(F~<45>RkhM<<$XQ=Ub}s^IzA^}|iL=IRzwKKZ0`bSl+B{T}7oDT7HO{BDw}n22b2*v1>Z`MIORp|N%y)RJl+6-DcD=a()Se3FH`x$Ia=ET=f2^tEQHWt_Ky`=ovcm~&=;*@SFLRQ z!BnMnspV* z4RZU_bsGECkqGRjy5}+MsjvIWGS66h(+HR>Y?SG*K%JGtGEiHSE3-BmV#}{MM5Sou)2r^A{+eAd^pmtu0g$>Su^}xGMhuOVQ@Dt0Eo_ zTTVJ#V|M0S?O-2fFP4axnYyoLDFkn`;s#8atR60IK1(yTSe$iRUn}90c@FFhkz#hxbI0E)~3U1u+YrScJ6z2!_%q`_i7+!Z5au8?(aik#3^QF zNUfF#Z++7^`s-0CeRBU{F;eR2=iq21q zI~B&Ks?O)!?#22J2*-#1hj*u7ScH46@q4l`UsowH>@x(%@<~w4k}&%5>8F0HJxd{^ zppGG-vacO$r^KBb9@oPTr?u@V%L^{y%%gv^cx5gZPc=1E{{TtBC>aGq0m*NAF72M# zs>b%P$Qjooa{epNqs8s7Yy8$yKWN`i3!l7b{$-t+pN6Kp$==S%^;`JK7t#C>8t*2J zjgEaaW88W@qk0C-x;TdUT)dd3$ymyboWv-qJ8qHr4cXj$5(r*i z9}6-_IPz&*X|}fvtFe2Yg^ zCcYYcQIdJTqn&{7Av|>B?oSh#>SL*bp|Dj%I};CVeV5-$9`$+jaP2O7tUoOtJwyzX zQ-@nP`)umoy*aIT`K~w5p_d%7gT!#77HL@4i*X2BCEZRNF9^-S=(mikW+r^rwT-5( z0D?}9c^`2=af}SL?rCmE{p-=0OE(<0YuX60UDP{_MZR}KASXNZJ#22W#y$T4X{@v{ zlVnYgXk)P1+|XnMv!Ffdln!(c+_}1wt^V~P7^jX%g`V8(I)dFkDt1I!Al&t9~kKg!g7f=4&L+#J?_zXrZXRgbp3~Y!u>2;iq5| zyFN>v*Bs0WkY4u=Tu8 z8*)^3e*$Dviuu^rop(3ahqQkLep#f6l0}uI$Sm{CZ-yV5ElW1;wz1D{V9RTtkKe&r zE@NAjx~S=+aIoiNe&u3@7R@B`$mWV#QF&j?^aI6g&Wb?)0HdkhQ7_gwdNx0odaVnj zmVC~2-u*MZ-!)RIqDsl1G@4(4=n}G1CXM1bs!MINSQRyWOpP^-yloE38ZJS-`0^i$ zt5FPdV^61!c$fsvh)E-?EDf$!b&WLycXjBsm=+mJQ8Nv3Y;nAMcD07KH|nsL$~NewH%MUT`4#DIOPT=h}Z z38XR8#@px#0d2?Y%5qkQ6D><1jjem+>%e!dO%5Lp7RM0%QtlunA;1v926!AHDnP*#vdZYjmU zHpzx(9^}*226mj+c0ynyo0GdJGw*fDyWGCY?fZ|iq#c#XOl`KVOuUD=G{*ipkP1LZ zbWA#XNfHO$b;?Vwx&hzJqJ3*3;oJL{9y;(tYn!=~xTJRJJL}%=4ro=Ss(ZM(QZguv zrC&x@Ew2ew<-%B9A5rr|8#R>ebITpNen;C!^eDK9wG^z9osKQYMuzU-Mu$ZG`v>b| z{{S+@SNSKxre!`L`pT0%PGeH+;GO1#>B&%clFS*pips(K)>zilPem0?`)&UKGG90! zX{*golRQ5zn5A(40OhHp$(%#f#&I9>Bz_*3zq&&){qJ(~W8~^~aM~RXdcGbVgtp=4#({zXVL9_VDV@_dIyK5dCUI*d2y;g zyu8o+FSaAq+W8NQ08ehtZK(BjtNw=mN=JvJ@7v8T_nPx>q4xSOS7}&$VrS%+%)FsD zjx$JnSl`J9;psc@kkkd{#y=>-h9^RQln=onlgdMXUxq*6sK5PQk}7|BFPs(ThOf#? zeVj1-KQ-S<`A2UWJURaW&2Pm6{{YqLo^pQI{YiZ3-)VWD)BaGK#|EK34_*Ey+u_G% zsZaj^EkM)K{OI#??>HRXyx06$wypK{VlQ;JPX7QI?O^q`PD9}>zXT0ECw@NC?f(Gp zf7HC!{CBi1`puB3_e=c}f7(7M-(O@ahx7jcL{rn#H?GU;f7FyrJ+2GQf9*E0t-JPL z5dQ!-^iBT&wMhZ(?5-#BOJh$=bkK53zVBXY-zu>B&)M8mTlWG}pnC{jTij^{Mdz;{ia^(ERD&X?L7I_O4!hJg;om z*~AC`0E@Xid0g3VYI?SK)4TFPYPZ6wLB;n^^T++Af&T!tjgDeaP8hewCw@v{D?glxck(s+nt*~{T-wK06H`^TJJkQY02Js)ypW&v%n=A zO5Lf!o$BKldH(?A!}Ci}^;(ZOY4(!0(j6Sov!CKDEdK!XQiuNltB=h{G3+xf{*$Bs z0P3y$(bf+mrgIarmnZqy=7KXE!(FGJ(jWd>6TXn5cdJIs?f(EUOHg?l^Rf1qHlQHe!I#(n0I6`1$kZN2_v4;ayYb1*LPUp}UE(x; zMYsO|ywscT-f9=VAKQ}eLI;su_wO|~d_Q##-zDD_BefG{Yva+caQ6US~Bf`13(*Q+y8>H6fG^4nud{b0yyo-v0n93u0UG_LKMH z?YRrzkL{`3@%Ea9Y)gLBoA!OAKYSAJf(vW==KZAY=tKAIPv12$we9P9xpwiNX%F87 zyYL!?ZGU*h+1jXiz+7iRZFhLoo5f3i-jmKhc_Fpz%dh*&hW!1cyW{qdJ1@20ypYLn zZBpJJw7WI^q_j4_9ej~DD`e31)FL#Pt9N;3;y4k_XYXX;CB3B2vrI8ce`_;5LY6w( zXZo_WW<>XHu1?;B9@@OkJPK8n69A@VY>f3Ka6zloJ|5#rLv>*ad47BLIG zaghMouu4~(w={nJ6*+KfsI`V%z;exGVminr^<{6xPjHZ8>u{#Xe@mrsKW~BfjS$m= zkqe`zsm{yXvHWyiia>L0bqbwE7fU{+xer!ofb(jacf~k#-=Yo~%WltqBvOxQ**p*m z_BNamkWMYRC;tGM(0F&PB=~(@J8UvlL(PwGBnqLXG+S)Ir@M@Mvv=oic9_-~c0lJ2sjvSrK z!BFyTkvXST)7lOLGy?S^aI7Ml-l`xc;s?Noij>lw8ZZ+4QZ&fzqlBW3O3e7SF>U|o^- z&;Y4IcUA0p*SD`Fc9`!d-|Y2NB_vE8(^axwi2CNtGZuRM(E7NWJ6)SDy;Zsxg!m;q zoXbDeRjYy79oo|4Uf`ji9c?2E9C{8a3_gL?xP&mb^@JY|za?(67X#~ZL~ux(hnevi zctIJryl9xJyH!>ttb-4Y-i|F#+z{g)uI#r@a$%9v)lF9;u4MTH_Beli60s=Xa}$RP zjwo|Ca<$BtLeFg#CjS6Gf(%8ZkY>{S`<3yhBW)xSI!N-zryjOeUyDySt(x}d)kPe+ zY~0si`6P60k+);HaQ^r$nXb~}&V`^mv=1KSS~{lB?KJc5SvTBvPqE8_d=(FdONVLw z_$6RzW|~IZBkgP5EOix*?HOCcpG8W7s-9D4y2a<4xFT+cddF^^{{T{vwVDianu*Wz z>UT)PVSL<`@1?K`tntyoBm@hN&)%~pf_FX6mru!9WG{^N8qo2;gu0%_DMYl4&m&wJ zd)@kJ-mbjGI|JXOWD>)g#M_Dl`pTBWGdH<`7T1!`80V)pE^`CDzYZyVGHo4KhC{sE zR5t$rVCmz<5PnLkaLwy%4bDwhnffWtPdLaNb$R58)^8|bj#FD^KZKCF-*R^YYVjO4 zDCwOmB6ANzrTf-Z^Giz;oZmKfcid|tKB zk1RQbvPZz%yr(eHv{*hP4D=G>6;$?)mt2L{&Ps!4BXip7oXs*k_$cv6Uq!RDG)-r?%z%uL`6U3%;aIuzW8K1)4il7%LB*7fC+4%*&f8+RyFA}{=JbvIOlHHbr}I!lk5CLGQ%#2NCj{P1*0}0V z8>cY?=WlSVJ4`zZZ0`M}&NuPZ39Z|lZn{wa06c60#>|gEFUR{RElq7JnBf%`?Dfxe zP7Hzlv!{BkXe`y&*H>T8DxWa@=W3lD*jA->^`aL`lK%h%d6-Q!ECjW$()aIK z*HXTgUCixsBpROudkd3sU!D1%3w1ow0;U=u*ET1-Ogd;TqmGiMN@*u+WV~l5y4t5c zYC#jEZ1=dkF542W;n}M@IO) z9rd%V!D}I-!)u-+#p(RYXN$y5B{^*DKR-VmD?je z1+iDOl*(O~b>KY{zj}_~JDojnD%92gNxH zYQqGnh(FGwb36JdYAN9l5XRkl^C;tS!5L?q&m{SNuyDV{K{VKXW+cjr7#$9sxZlW? zTTa2ZIa~vsaCxce>3t>K?FH@?irDhR9oPH!D48x=e_6WRAeSMiX7P|mm<~GevTbn@ z$jAKr6&U7pbBQBsZqB?Fnwf<}(Sp|XB?OOonWHvsb-(pedOVkNmlEc-{gGu1?t5+8 zZMdKzVQDTO*-M%>xz2OD?4co`^+@4!r%i5vnrRy^9s^YBdM8wRxriKWn;#G}S)EnN zd7Lwt+|j4K0b;bk+E!9iMZ1zeU$uXaB~~kgn0CM?xRlloPHTsXjDY6fJAfPlL1~kg zc8B&8_wJC}vu^cLJ#z;;KojHidbQpN3pt$w^=m+Qz4;}Yz4d;#urwuBeBsP^nb!k{ zXQz5$s3%a|fP6S}L9KbgX%W57$)VS|PgNO`lt|xPYKF@=mr~zR6vE^+RPJkXlEJ{B zI)+H<*^*ql<_>yzA-JCMDxk+ZP2QJQV2WxQtG$|WvPZ(|%BRR&+nq;nLWLix4lU!s zCQ#Pu@93qPoy~shFK#k-fbz0)J5P0;q2jF>DzYo^;i^`^T;EBdva-VLx^zo!#hiqo zbvs(z$(yfO7kH~S0E5%_v`q%hc4s$_Gz3Hz<_D11l5fvMjEN6$0PW_t6%*!jWev@JJ<0HZ*4(==8u%a+PHBguo$7N=)MmbxD!j7Ywi@40^*}g) zVi)E$OB`pGhU&Kan0KfOo|;zYvEjqx9o8Kt4+9L8QJ5Md_qN0?(E!$)KxX4m^IGqJA?cc`-e9t z0yXbZIxXuT3%KzYO(NKJXQGYn>~RO&iW*T-8{})7=?0}@;dGSwqwL$p>XJI&Pn zhB)caB|#fxvm%G%R~zrs@=lIdv?0qRnoRi<6V?LiyzCydEU@PEOooNn`?Y6 zZa(xw2M#@_bzB@vd&v2vwTK6hTt0kHiqtyiCG$Jpo8OyGJ>K=s$~~7JeaWsoxc4JO za5}len!OX6=GnZE`+(OB+66r{$eX`pEnH%405P9Jr5)ciQBZnYpT1JFnoV)@s}$rEu(k^N?SX3p~`j zn>TlG4bdET(b5K;E`at!du?s3qNt9zWwTz&Mu{akgMYvDO}1@Y?(SCU;}DlU+*H$u znH0eNf!?gJ*}bh3A5>3gkKttni8+tMqDHxJ);N!fhtC{dKzD+a=?e#Ts-#hXWX{{1 z_%Nh^*Z+?UJ!^YBoe*=APdKXQiGcX{_FHo5eJ4uMG>YomB9@z>%|{n%@L zZ~C~d7UR?>p|-CM#KVi8+_pE)5ocwQq3!h#$zo|?lu5mhm+vhm9bO%02HM<4WP;|^8Ri_0b#A4snwUu4M?dPME7x{r6#?9}O~dB%EPgj0!(~#I?`Y)B zu9m;e45@K+P}B!@;ZFKC-x-WL5ccbDyP6Khk=h)BC5OxBm|k}~h_`~M<_4EHg_ML2 zj{G^JyFZ9u^m%=rs7_wXk4`BrV30`9>>xI;0{+dEfuoLXQ2Zjbm6YDQd(j(M>BE|e z0XCav;>Pf)qicOLeIp;B)GrvQifUQk49v*(Xz*9if=%9LyI;w9{{WOtmoqW=trLA9 z)=2t+%~m%-=Em9_wg~|oPk6fSKC_xRmD**vcLli_rd@RA6Ge+a?$@=&KTcXETeJC~ z7fwCN8-kDF*6{pS{zs zB>9cp9h*ykROV&Nr#(H%jxEmN!ry`cq>qA(o1Ijy$$w{_sy=$=(^KMtCr+JHfgB5X z{mHJ;x;s;JfaVv?Vst&E9?riprMRcuAH7AD+51^QMsTbSYN>|t+qim;P2_*Fqb%fB zwxJ9%ORHJKPYZ>l!?to^Qpu`Wk~?~V*E;a`Sy`mRX=&eh*wM(IcH_kISEa;rH#-|* z4;Q!TiN@ka}kb4)lmQACb-g7T$$9O*11zOo$ zd$n~o$kA{26Et|4$U*~tZdbEZg8h`kJjs{!SiRxTWfPcyAN}nB-eeI z4TYU$R-T;AJdb4jxtioVZ`zQGd5h?t{vai7LRD;bXi%Img9D)zKMcH=Z0NR z!`!vUpY~P+nS)E(eNLVBP`b@~rF*pG6YDA81!r$TZakDujq<&jT-=MQS!UrPajB8v z)Y+c?B=P|ibd~a1(^t9?Yh(&7##Uu6vpA9yzej6*B)kx(JVoos=^ky(>Cs5w+>k{Z z2Og=WwuUQu&$5O1yGPVgw)_DvQWpTJk>KaBPx?K?=6l`mat%|B)I!%D(=^~3g4FFS zp|*QvJ>|)pVq>I(*Oj*krnU&1qa0VBOOMq%)ym%fDx{V5b6mcnO@Dg9Js#eW?0z_n zgJ1`}P^jBD_(v_z{I;w#F-uhDGB&zdo@^L3aas&NWgj$7eMMs^Wr{)^$uzc_8>q_2 zs3(fnV>oUTPl?phNXRP*+`3nb5o_=op)Rhkmkkw7mLS((LB~!!f4eF6#}dY|I;wav zN~o%1rHDli;kID_aq;W4K(*P?kk@=J?(LZGay zhM|w?!)) z+@N-J)b#hGVZ!{=BnL0Dl*k8%w+`X2RMzR3mb;(1 z2M?x?({wif0975Et-9afrllh9vwefFB+Yp@{Sw)j;M}@8+|)TpbehP&5G9-W=AtSz9Aq=DV=q2w5gj z-MzOq$i^KoiV;liSIB$1D75SsnC7Mj?5XJF5=7?kvVt#5Oz6)Yen~L-Ju{;{=tzhI zhfPX<+U+RW?H;_;!zj$4IA1E3Ct2PJmbQcc09O><<3vt=YXCJR0bd-)JjR*!b>@DI z3lT2*vHQuL#^<7%y1A9Lj+O81`yZODWsi>auClo_5(;=@`$}8H*59gweF$rs=eNBh zr;7Qr{B%quGI9xrp~{(<6JVNqUI+;cj2iG#!-&+!>bb8S3alE&@#W1kd^q#`5(6~& zln%D@&_Af)iHhFM-Iiu`3nFB`Z&e_4ksR^8%p;gjL9%3&w~j?Qrcf;QHRF!F z7IGYBRa9T(36V!O})r#3QT<`%zaziER}1xO*)H zP`kmOG>E~pzJ0WJE_l|2ph~qP24U9Th7lCtr zN19g<5nAinhg+Mf&H_lcZs2&Sr?&Fp+!fdU+6LVHxA0G=?E5t}7`rLi=P!F-e{Ow#0S%jP<%N!I3>(Ra`sw%&2CT%T z^1pjf{#;AHyCwqL_8ZHIPox`7Sy5SvRQbjyQ0d?Q05RGR0m(q=cVAZK>F`gEl4;lr zo6FvYXbxkM78RBZ;zxoz8Q+ ze3L6{e#4MInbTZb>@(E&q2{iJx1lZvifO7m^u!s zr)CIuvuge;Kt@HlWti5P$k23Avke8g>YUs0BfrHN!?t%A#9?JjR1bS4*FOM_J7Oh) zx$z46YFqIfd{$X}2x(HE+A352vpCw*J_0jG~m z6;WBgW@f?W*Zu4K^i$f^AQW`ti*+4Tj*+zR-T8Fj0&Asg4ZFXpbsZd)Q*Wo?$Z`Q% z2}wyMberk3G7vr}jI%|AWR@?iwZjJmd$Scg+RbK+U5r<->@tr9V=-)XyXw6RRJ=)X z;io^jWu978pOhGG%Lh@r9omWa5WiMHePh%87D}c%d@|G2H+eB7@WGpf_&MF$BO6V$ z)pa<7nV?z|rIIdS>$T5MAn!TgtCyXp6JnB7RcG~wF# zo{b#O!FYBpi`VTgF(xUERB!4e;0}#o=+VdpcIcX_-zv2bvvGl8kzwq~^^!P9;ct@3 zRpPVa^Y8IWiR+)%M`%0;0HY0HHfvhIoqm0mEUi5_&)CZh83%s=lheCW=7j4KeQgr% zb-R?)MY%F)>D%C=IA^R{teR%?VpC2>2iZk6Up1+Y$1eoi%GUZuYC5a=XKrk-_^0n? z_S(`r(Y0(b({?ObU^%PQwNXbC8=FzCx+x5l!H(avCqCqiijHvjd^j9L1)(3#m4vMBb`pVpL##?cvmU%-FY3$#!qOR>zUyxl4p0{U-U07r= z4Vhho!)?5S6`Yzd-}E3)-k@Kf(BcqP$EV3ERvbEkR?xmfqbAydU3&-ZH6E)+-x3#&0!`>0s&V{VyO?5QTxvgW4pK_+k z?2Qd&EU&UN4$o~BWB&j~*-U&`8=0v{3rKvG?TmD8k=Q1C3*;3M=i&TH^0N=@ObhF3 zIQfIU?os*WS<$qykLE{qrv`q^!Ai;Xu8_I1(#dPbVSQ{*UOX+T0BR)5a?33x{GE<7 zVi_-yfLoiBM75vthw~!1J|5gsC&?pSk|U_iWtgh2tBSUGVtaBm{{Unyahpx>zVA9e ztzaF>ER&sl;@`>@6InOw9q>{4#O01T-EJ#hguM1tI?=kJ+p({zG)_C*_ut9hgfPi9 zO)DPvSje`UK?N7nICCl@$sDqc@neI19re`cH0G9HX@Nd>hGum0hH%fWUylV5k-@sX z+I4dFJbIe1WHxIJ+1e9Jk6@M3dCnPMC9Vdpd``EmtFs4OddEu*F_?8T9f{%|a@e7p zIQ2L%`_@-Dax;`WM~UH4J+w8lL%h}fzsxEB0LI%ycw#bpztL)EG_h#i!GC*HGfxyv zd}nrU%h+%QVRFOs8cqJ$v$dN*?8ViS+rRn+1F_6vZqw=>Prvb6Mo7`4oYwb#X|AY+ zuKL^9B3vi@PtWa~b}fyack|o1rABcKWS`a_ura#|s(ha$Jx~edp+C4-LTaj7jfo5AC;z ze66`Y{tENF<_2pUths-aeV%Jmb0E3{R!5-dXECBmA7u}-=1WQ zz$zuq8N2Lp?IZ9p)Qp}fn&v*4v4ZE$Hm@O|STy{G7X1~OkrR^lFPou}B zqtBWqxJdH%k;NU9(#w9A8AL`ylD+l>f7)q?DFqG@mk94 z4r%bMp{2<9*i2LKy|@r~6^*N&p1GELwHkxM$Eq!e?XEG4Z0#-=jnsMUbkc`MQ1^E1 zFQdBKsn*L(ak%lP8r9$(*jw8|)J8Nb8l&PNs<9?u@B=$DRu)27RjfmfDhQ`0(npR2#P zbh4*eiioh;80{a_X{rlJUizxhJkdI;W@U~x9T^w{k3~IFKFM7Z1BMX+2c z_0#X_ooYyqqc(H zhB;-XlA=7Jkh1=;00k?lWseD`#HD@BQ_O6SEvyCmMEkCvwHV7WgNH*6Jv9t565|~^ zwZ9J0u;`#NzDj7}kayFZ(02;^QzA9Ak9C7O-Zg}sLpuRHKRHCttqqjTi391m4)5JPivRjC2d zj?6995sDGdK$|gK9}lUT8Rl$Gd=VSTCjbXTbUQ0=Cn0}w>^i0Nm>8oOcM|rUextwK zp_WFSdg?ooG5xgOk_n97&4SZX#kq$&{;|VT+=O8Cjh0~deO!8@P7ae(pj{YZ&n%I- z`IB@B#AV=`w$_uf6L$1bkQ1aKsjb&kjL9@@)L;{;oxo+XjlDS}3^oh6rcF@{S+4BG zP@1&yIya(67x#lblg@}lRdNCymrnFuq4G2lrNWaTx=Xkx7LmotG#ZsgLo4~F-N)Ke zW*1$&A7Mx`)=v#3bgp3@=|QM zDl%1x;F1UBk+wbRtCslI7HP>@cKcRLDK$>|4A#|P6_$L-`sgBkU{$7ymhS85x zXsZYR051I2$9hul{{V$fhS>&ew$_dtRZ`#Q3SaQX*AM>ss!xl8)wW~%soTO)p|(r> zJ+_U}n@=UX^8QKRMD5#sU88Hik)M*)XGmP0q3x7*AGgDX&@lf1@}?%5FDL{50Hfdj zN1At8ENr}iEZT>zx@-4{{Zr)Erw}6(p=B`NoZ}4-}y;v zbe4tR#=w)${G|_P3_tv<`mK{>dhO%Up|(5eZz)ax0ENSkgFmY8r@W;%ju(fY_(tV_8ZH)f_68S?Ky9c5F04e;}9kAQTKC@@(B=B)tJ^Syglef?NNgmjP+EyC`ly?Pf9S;5Fa$uKxhF>LPt61BegiYS!;Cj|DL=>;eI17u z+vw_V@&sxP##8>*wo}@|>VW?MOXRu+AH zHk7C{Z+&8Oa3JCTI~xdhl~#Vk#}sK&dKXxaDSCF>}Je!!s16*Hv;~a z@>cFHqaH1AUFUvE;7oe8;ag-i+=MIk-QQCvd962ZcZ%ikSI3*;D@j0dM9}JIR*HJN^s)q-byc&Kn=(=Br3$ zqrY_j0M$5bCc{U;^qu~n`l@qzC)sCz!^qDE*+u^VWIH&1tT=eQrJ=w36#oDKY-^j? zo&YMZ0NIwwyM;@=)BgZe7yifaU$Ecv6rc7%g7R~j;luAsul=6?0PJ`E$@Y7c z^&|fPmmkd`@=1exGuMChQhyW#`5wW6xT>km-0OZRzxGFmx74q!Xa4{#Bk@O1`y2lN zvHt-3D8t*MDyy0O_ot5~@U^|1TM-`xo<2*1TV`X}i##SjnnC2!pf|I$xVu03as1KO z{>Ja@fBwsW^>OS?o({L-lm5)AJ&mWt$Mb(w2>CR`y^XHKz4JTsO+HO=q3UgZA^!mD z4*b*C{f&>0CfKueZr9>$@ptu0{{Uy0_;+J%F(LfcS^oh0JK9Ein`4MK#-RRb4#4e; zTj;j7sGj-APgnLg{{U?P*iEg8uHEgmcfF~f;N7@xtlNoyo&bLY6`MKbGMbUp^!r!n z?|U4i{{WbasQ&=N-c<(;qrdaF{{XEFu?qwH-^+S_{87I zXFiAWqz=1BZ}NUhXz>e<+~3`#FZc!csnWK}ON}Ok;oUoIL!0H1W0mQKN5fXDHv``z4?% zcE4}qwjQCZ5L^SR8-N)md-Bd0A0Hp;UQ#P*u0Q;)v{{Zs)ehP2< zP1;a>CdAbL03}!E)Oi~eK2!0*teX*tFm)1wKlG#?RIvf;?1gY0&cEE%L;lopruzFK zSl|9$Kl;_f%EfT{&5p$V&-~hh@+Lf~OP251j76Wz{S$|kXfs*(79`L9RED1`4jQ{; zF@Jr(B<6Wsqss3%*?e*_`;j%@c?o$QME?NoUW^{r35$W$LH>z9?Q;z0h2sADf9k2n zY_aw5>{NKsC%^h7!R2=X4ZGsR8RJUi@B3oe!RtD>fB2*S z03}oY)HXXWYMT%qGzaoY{{U(m3GFtde;otAByawUOaB1&zq1F8RO7~-{{WJeo>n$q z_WDJ`{{Y3_KLjZGN%DL4uh#TVANJR?_>sF?h6Q-`Bin5Yc%>>L6M)AxYSD*g?jeMF*qpR@tUzvf|{{YgpIDR>^ z7=&zx1IMuHx3Rgm5Wi47IUvV8;dh+{OL{)iP4N3j(sm%({mMZ%?;(59_LA>_;_D+r zV+^Rb7OPO#K0j6NA94iA$0sS7P)D_*R}<{iMT`E?p75^2R}Ag!KjN}c)PD+@v-_0j z`!&kE^mO$j(#F?!^Fm<7q;8qBj`eyhQG|L{IfvwumEDHaQ#ARc`PpN5XVs)EzAJ*n zB@Mg-;iMzH>ZL5Tfp{<8=!{G zdubwRGSkNIuQt)mwvNkUZF}32@TiPVV;VDQqWf^sG0c&)S!ImTsfs>*{l zEm)7@OBesgU&vQoS4v>yomEr6;i`?xA0_u2Y-DzJ!lt%P-E>tQ#cODAe z4zT6w6?*a8%2!ev{1X%Z0AaxvTW-M@&C^wB)fC3S%F%s$&@G%fu-E?p%PQ>9HO$ei z2e0O{ts+N98GD|6AwI@#YOc~x<`hw3>~)^)WcVxCZ8Is%m9;LsblP+m9R15JT~zE( z6Pm612j6xxatI4giYVyZ_}twUAtqPdu2TYcHVy2Np&Y&HA6JhLxinRnvfH1PH16&^jlEw^mz^1uZQE zl@&l7!V#>GI%&;lgQB7pbPtfV*J;Vo4xW-)el57k^IE?|*tc>0Tw~&TsNWMNW3%+) zoS~RxtOn)Q(GjA=j2(x1ij`#?QB9UNa=NNryC9xLRe`pGp_8++?zReCw&S22R%VkB zWj|{*jkux_d36-#La#IS&FuLr-swTzC6*2ZJWhr zYox1lXrt!<;6NY0dnOnvj6QiPL~YA+!9FYl7dhgNj#sw&xTp6Aa{>5Gl^;nh&op3{;40M!cO*u_RGSm~t73F*Kg&%2IiXnWH% z`$8fTHZ$iP3~9=hg&BBYmOtaW3A(`Iw@X1vFb_oBHxF!{Tx8Bvx&Z$=SHYzGX5jPvTqo@_Uz zjt6&frii>dAxntRO;dzbHfZ7?Np{=6`@NLhq#9S*&9M4Ckoo2l1xyhGagb&sTWWuz z-Qb&dg;!Mhtv1TU%)q~M3%~^0=Z%K|v3P#MNmo0B^-ZP`i;oR%szXISA5|No-r>wA z(UULYEo<3Lklwfd0J1pLF~?JfNli@=dp8V}jE~bb+uhzdm5{{t5|XzLuQ)w*Ff`8t zb2Dvy2R(H>j*B6Pis4wvjwvM1n_TRdkGybQh1E{l%+gCC-h$0taPWANPM7cGl$rrJ z)(=yIRJt0*IypH5#Ezoeyilm+k*vP;?CEu=+KfKFHp2s}XOatCM)zDWe|*+h!uZ>( zRflWzE@gnb5u|EcV*K@$gTfpUr08H(gH$DPHaMOP+W;U0uN-j#G1dy4z5jHmnWJ z%KrcYt-}jk*S+p&7q_j!RGomyZ(7F42$=&9)+n7AY}rOz4!z3Z&Abf_Zf}x~t~Rlv z?zz|8fQXHKUMfh1vvo`vouJ?qm_a{hLE*sw=117Sw||jU4`xSaP*k1SOlAyV}xjQ8D9zW4ERb7AvH@}t86S|Tp+kU+M{{VH9@X1|IHJi-q z;Hy4YOBi=(0H$V^4t2BY5T&eAtDproEpH*ssbcGX2Tk8lp-#H&=aPlgcb zGXQ#|8-1?BP9KTBc=$^4Zh%-djw6M&UZb>_Q!xq&B9Dl>*n7hB2jy;dKd?Zt_bB7b zV<>395v9@`!-`TJmgTkywzj#hwPZ}k*5So5(jR~HQiIvmRH&NSfXY)d9VMG#m&GOB zB4-Ux9y;(#qg(y(LXKtf>%~2UWq2G96&p1p)zwJS(H5C`pdys|-yKyceSV7Ti%wvC zN~YpNeV6mq0LgnS9jz_LijFt-T-Nyar@H5dj;Wv=qS<^<6EdOZ!!5M3)ZwuRF#A7? z#mdc5)4HmvHs;fv`K#L&?eQ=I+fx4L$C7Ym{hEZ^GBRz-T}c6rkg1l_2qor5jO$#ocNK| zSDu-UYo{D-s-(5lRU7z3Z+^DyT|u-M99XpT&h;w0^I)q z70;!`OtSI{@5?{5V0 zDQVZA5|W%+*Ed$&^GtO!a;Y3`-PKCy+F0&|0aI`sTv@~JM6eKHe38GIx$SgSvRgr= z`t(;Yrv}!B@y$M3sS^2i}JYd$#V=PC6^N!6y>8PCg-0mU7dP zoB-pSMVgWqHU{QAR1cdu%6N29zDGH_y2%-Qw&nOB(`K_k>Bi~NI`0M9f`kixDe>I8 z{SpiR0IJo^(GPjbY!MzEmuqpaL^@{LLEuVIR|{~>!&M_U2C1HK_XtU`w;|N1i0rei zwOk0xeC^QM+Hn5(svBR#X>j^>LTTsT0et7DihWiNF!`f&)eU%f*4(-M${H&`*y>!^ z3m84KR{sKU=UK(}lF)dGuN3mX|aTVDqZ@AfR_{U>Lw$0J%07 zB~Mv~;&=@9s%&hM#QN6-Q>m*Ic;u4dvbq>zlJK0`fu~=JmRYK?iqYq_4w^!3ypi2B z?o>?$1z_B;=Z)st_P+IT(K2S|9FD6eJsn;RP$XkpZmi&q;drZR8J~eS-VEIn+H75x z7S(oN$Eu|jRMeGDilNpH7B}hQh`Ftmf>@o)pAq7rsfs%4cQx*@XEY%+4sG8U^$*;r z%NJ?!b2=+DP2Dmuc#R5mb3}C_PDhW50G`WKG}B1a*Iy8b)yI-f?j>dLdXF{4GUn_R zt*aTD_vW?EiZW7%FTHUcQ~UkpC$jFmRFXP6*J1TqI?=p>e-*c;sBJ?%8=67XEF7_2 zzRDwkVgiRkbe!V ziBs%m(pA~e;W7^Xo+)>bXeHs7&C1&Ngv&QCtKYBUwv?Vow$`(YB7}F@8Kd$Qv<{Fu zuM~nm1bs|Zr`QrWnj+D89@y$u=c#m$9qzJ=&4}vx z>Bc@et^CQmxg6WY1dr-R^Qh`5p07d20Gcn8)Pn5~ZVcMP^7tEOgiBa){AM9F%U{wY`sH!>Y54V%UXlNZnZG z0e6g=4LWo9s?;s?S)9#zpU9}WTkTrWB90)}xz1|^&lf6{F~b8p9;5ZuI<=+KIh;dp z>$^a!aDHBV(iI&wQ#X!wR*s5CRSwgK6Z^`fEn%s9vwDYHy6Muec8fBLe2`l>%4CVm zYiw_SStU&Sygx4vUb19j*1n6Tj81jr2}o^n?vjGWOI%$Ag{DcFcl&%i5vo|k@piPg z_o{R0B8n{TZ8oow)tEBWuB1gMi!Sw?$!0z zxiU}%OS`|mX|&jkZLAsI(fr((KE9amCVSdI=gAsTSmT}9_g_kHfFWLsk?L)HueVvm>9h^ zLs=91AI62%;k6XAKP%n2J-s>vf_>?5eubqKqpS{l+bfz_1&HxlVaahS&Kf{r%-MS& zUq>iSFdR|W?EDk8&VlcMlczw0)J0cERQMl~Y@EiLF3dS5LI=-4>5H1lcX!oNeiK+Y zPjq#YLne~?JreF%<_*-XD^m)Js-h;jvi95G(Gj9hOzt}P zXp*8>{ifyziCJ9ev6Yu$X}2tVa=TH)wL<-agz>F-@otM>npjvE*XRLi~moIrDnt-x^b3(_Aq(Zh|`b{Wj3;W={au2u`8T?c|`)p7yaX=g6I zy{80)-@?1U=74ZHwBn|Y!GiAMpv}`oD>|2O`;e55u;IsuyO%lIcGoa-@3K-Em-9d} z_HM4=R|yDfzA53Jx6Gy8>wLc-#Q@OnTHKU@#58)kak^=}-P!!C7hAWkR0OB0KsCQj zQUh$)%AKieuik@A6n1Ng=#weQ>hR*69CugCt;dO0Bd2_%XY3A#@l&;FS>2Q0_;;tW z864X&zT?y0uEz{<+3ss@IR0u^GzLGk(5GWckx?^t9A4|+he6F)-L@v!XgHMSW()x3 zU3=z1qHxv6wXeBDecXWkg=4do&XCajoP`nwDr>=^mUg!(;5 zu_^U{hO$hyC0u7l2o23{mr6RGdXI8gNR}Y%-o~jlyRFlTkeeuTd=P!8t9304qHCLZ zE)Rk=16#bg-~lCKG5O6!d)wNyV&3%N2oSd~s?_mI2S18k;QiFy?X!Xv6mnEZ8w^?B+_qRJlWNM$lj3gkNO;@YDs2jk#M>i#StMXS2i~WP z&E(CM?Poh5%&qkX0fAu=ZlIuy^?cfrs^U8#h1X`1nci%8_a(5!Ige@ebNKi1Qd3q` zQM@{yqF7JvJ5PB0RqD-{#VAXph0U5aTx~Pz>+VvrOutu^m+FcaT;{~g z(q$jVsa4&HG&$aE&3@bYDsSU=d`gRWPt~%(sR`X<+NhPe`_mm)5M_p!<^A$dn8`YE zS8(hkIs4hQMW+segU$|VG`cAc9}^p+FKt!2cmz$qAe{Fb3vbaYVW zbFN1Ke)T0)RCHACmRB@rv6zK)mD6hL#;PgR)zVhYejuYb4hACqGO4}0b^+u%r(l>% z1VTqLoE8rNUU;RJrP0-MzhYI=%dmWdgTPEk)fOCwY#|eLH5s8Vyb54b3?5I zeRuWlLY(hCozH(^jUMIzsz6B2V(N;AaO3$SxE)^3VN}n=@xRil^fd52`Y;jGhP~@0 ziC1rq;t#84ii|X5_Rq~L=4eZ&ra`w@uG3XXM?ox9I)+5XXbt<%1&hX|+DP$d(c)~L z8kqIdo%lH}2_*PMOcPMKt*OtScv=q*8XYv%XlpSXPZzI#A&E;H=W_!)4GjUK!|_?n zBvr^C3&NdD-ThmgB>b-LQD2&7wU+gYN$1Ml+ckOV(O9IS{{V=a#NSMclebaf=2wYl zQ9&%yZt2?4;p@o$5sqZ?vU)AF*ldte zPV7aj-&W1_Q0DB%er`Pap9^S&Vi?5oRX!RyeDe{I9py)}4|99_`F+&ot9@0l{4+M~ z?6lP!GAiJ{NHPtI-U(Be^;A#hZ6`-ty*N_M9|yFl*&VzS#lgN_OPgy|-OArxjc85XMtJD2 zfO5EpU&TDa3wuqvTTof0kCV7{TqBY%Ro48G7g9&svs6x}e0(`2uw-?T#@w%M{1nEy zwHc!A0)GuvX9ouA)c9;(0=_?KzLq7iZ$%hon`J5Wb>x%-z-6-Z`28@dSb;H7Ke!!G zN@13&6WosCF$p1&xxIucjveMl^aW^3e#?qZ9tvY%*CtpJsWg>fd9C=}WZzWp@0oj^)6liR27TzZx3#U3TSnKFiu?(!~eN!dSf~YD~J9kecoy#)aGZWg? zXfa7QbPqg^hy-`tccc$(l9Aa-dnLDLR0nWf!FMlmBqzwn`+wu62C1?Zvhz5k?YL!)8MJ& zIQ>-{1X0S@)IYZ)#(-ayzp4jY75hU^=%O(89^loM7{geLX)zO98)luRFm6Uss?Z9< zSDSF>1M94Q>nrYg1ZtlWb`?zpL~U!&1AZ19R+dCn`hinXh0hp!nD%zZ;)h{!##rL_ z$s~Y$7KW0dD$%^m)-q9dgTxdHCPhb%RMNXOoxrL5CJIo8xvtLK%so}gNh2oNTJgb6 zM@;WDXC)2|O}=ea^bLBQmXs>+*rj}q-7@d?$^nRM?6fV;*0xCa+$}3BX-t(g(|S20 zdF&pZDR9|CSn6rDW5wBZq`En{p|SgYw7U#sZWD-Fl1Ju!Eks+`!6#P%abwoREe0pI zyHT|mgmt)uf0;fQ_i;x52Z_tg}k+wHfNfuG_!#xRez=O1&4`|hBx z*^i`HDx$319%4p#&%ZnK>Zg9qRFiCuXNvlY3=;yYrew7Aw39;S_GFI45!W!{ zriW+ns54}ui(WTv{`HSePucc-(}7`+!&_9xvQ60;u3M&qu7P=_R$rtlTr|w$J`3$k zPh>E>Mgq;(oAI{qM&GG#1@m{6&48C;WQwLu#PrqjI7K8~hcUxjJ-jt;po7Sc^S2Ld zZ<4ofHJ0}tDl!3MyNY~|yWDeFE@AXu3$Tr+{{Xz{2mHXjKCZJ6!m9q4!^ItGq`RiW z>Y@?};kBN1=s57w=YsPXbi^qfe`r4S?mH=H>np2YK-%a`TcaL;f_#nU_9ouP~n*@SdnGB3+e?HeG zS@<;%I2-d?i0H)iPrhJErfE)hcARzA>bs2u!GY39_X7h*V(K?w)P1W!+X2OBDCwWR zer_2G?=*9m?$0g?ry$S;E)xT!bJ+t;hKsAP>U^wZl&#~*8G;8u-F?ZGaTD3&f4x`K zrJ$@o4Wcnv#i2TMSFrptriOpy4t!2Z3aWfl%?vhvLfp+R1J<>`<;_2xjO&K) z;lIZ7*{#`nC$;#FF^ECClNpd5!}ZA+1OR>9P+C^aLFHo-^PIMm4+cAZoYo#3(L6BY zk<~famMIlnWOi~y8*cqLC`|!&*Si+p<{oRg$b4_bc+;0xCuEGjlue$b6I0?)#Ms+Z zOmdDz*1i4qUTud#BsDcr7TKSY_MB4d3VA*w+6tDE6cHZNpOsEvWjNd z$J!n3Baedieit;jOlyOik5_EgItS3Q0Nyq~1Xv&TJ{;`2d9XsUkNcWqn}8oOj!_1? z1fb084>tvR8UFxBHa^#2q-=1(U!F00q z+g^GvE1TrgX@IPhbAs=LWX#nrLWww|Vo{{Sju*gbV6XYo%V^cG|A%z9Yw#8gBb z^8_zQrI1BN_P2wt#X{+C4YIX!;ry3AK6@4Tym#>N9An8&IfK#9QXfrGPYVl+!}6OB z;#OutMjh*4(Tgu;@`H+sU6Piay@@J_h<3Hh#Qn?1s@u2>A=!Wyu;4sb()=!b`MCRL z@jhM{@#m~m={#EMyb|J=W2t5nQnpBD;%%b8fn!*1(msO?#wYqZsxy)*rf46~ z5`9zNk7F2hP8(C^c(XKr)YS&){{R$B_2R3q<%OuPj}dsL#;M#`(e?5A%so!JfvTwN zBk0&2QyZIIhr9Lh^1s>~LHm{LTM3pLm$~fpavdHWWlLv;eLm9C?x4`Ww$43|YX1P5 z)-!ANGYx{93i?H|x$;!pgSG9*2>}R+mY#e->vO-93}MoSBYSg9L%L4ws$t!+FBew8LjR|*8QWR3_lH)qNgP^ z6VCCiqh;;hd%Mv(I#^+*e9v=V&g#C*V)a-iKQxiDIUBm&9PZ>Dro53u7>Yp%%;3#Q zJkLHWqYU<(vD8aPJhHLZiNFD+?eAR-FP0GZGR=GKbI@z}DXQaj94v8jL*(bv#axbp zW@9nYZ*#^Y55FsO`-M?Vrp>#s%Stuq-e|_rx=?XZly8bRP3bakW-onD&cffH%oEovbc^JEezRTt2rK_ zZbSjC%u>mRLs?AbPwF3W9pNt8D>n0D0BT{;w?`;2sPQT)+2E5}Qb7lp8vY8V8HLY_ zLp$m6-XPaoHMrexGn%aKIt0dyX9{_V+Qv7Y1RJV%ZcN#^T^FdJWc1Rulk_|nx5^AR6{ z%JNC=tj3E=SqxDJo@xV&#mT9-J`V+bKxQ+Fvk7nQC+v#>!sLeB_mpzK$*>U#Fnnf? zp@)ZV#Dm^kMZ5G_Uy+2ms_8(^E770zCVeda*JJ*qLHkdeJw>GN5ou*!^b7r|zhohPl4G zo&Hs%%2eHpI~Z`+BW?UizfLQgh6Y3EJ=YiczlWKl3CzMK|oC{{S+rxuNFgDH%yX?OT|mz}ipo6-VsiOa39K z`w^!3r8n%7dAtMIYCJ1xf5deo*o`mvo~VARB_8Gv*)?|RoAymXZDE^bUmvjrzlB(b zZ}E6rX425RyxkA90k$mo_axm?9x*jd!e45c*fh^5*rDvcj*sX0CI0}l3i$s3;HgiI z{{SQt&1raz6J19MZPNO9pVXs{+xoW)I|-!W$@cse3AUzLU4Jl%pU?de(F|nUE>Yg) zBdDP*PGccllDi*!xYM+MGLPxg&5j-pP#Q?ulg;4fsJ5~((a$n?$D8(D??a4q*1BPe zoS$0A8yXnwd~)zlZaoO%fbJm6>n`(1$Lnl?wu|Z7U+t^DoTU3pKjsmC;!?K_i!Jx= zLG7UWZj+96-%Qc-dwje7BU;LU zTk9up+Bm!ZrIw3jvD4aa9f&=L+hhgT_oqvNVzm94XsZ}|;y-#j;rl+drZdIO%eTz- zT(ZrfuZ-&y?D77oOn8iKzG*&5?q5l1%!lnYCS&%Rvl+1-PWah&`w|}8en<^Q@UGuG zlbW+0bBTV@cbsBBwfLh)wx7-&_L`byJ*(ya05Z)Qs`0LN{E`~F{{Xk}Njr@=l;!ol zDcjzzSx-8yKdnqN*M8Llaj)Ng_1ABJ_N=kjtUPCOX>Cit;vN2E&95?ywrsX33!i_j z{{X3EgmnY;?*9NXaPxt#_fye)lXV(Zlwx z{{S*khQsYk{{T`n8^1lJKHOLLCEv%yO2OZmVSbH(X0)zd^n5q^*#b)2alNPJ_|L&O z8drYItS`~*_GNNkGkEo9c>ZK7ZP|jI++v8P`JE~M0Edg-)re$ujP)xe;r5h*Y*D-_ zo=`T|x{8SLqk#VaDsR!)Z#oKZ@&%R{jxQf%&!>A+jx&l!>q{5CscwG9mXGKxB=(y@ zOghQ@lel-960DSws|JWa_q zS%(70@gDUz5!yW+(bCt9?RBJY2aOyRN{q}IF&JAkBZTbYJWyI3LY`s_FUUaPc!YMB z5jk>CsQX`BR2 zk3GjCJV8aNrj{ILIICSGERmOBI$HNy{j~B<`bb^y= zX4UN8+SGZzc^`)Pyl2IaHXQhXyrJ6DL7m#VG4UW380Rv|&(f|w1vX|!HS@E8uqe~> zZyXxlcK)a)&h~L#&~}ml3GgddEHP5C)h*X`$nff`Ap&vv#U&(k5#_lZvK`fDnF~Z& zOTVHZ1MwQC)y(VM-BhTA#(vioovkDgp`)g#pm1}Y9E9j|A=PxUQb}oBrx1wJ56}VX zRjA8kr`<}-?EAW`XC|p-gFBZiTzC#DJqx=o_w+?8Fw+~evA2x#4nyT>8XjF&RyoX= zWi)JZ2%YSa-mbD@?M6^KDpp9zL{HaG!CC|uZ)GTq_JQP}fzF#)^+n*qWds@J$Stk; z0G`cDvlTJ#dBk4SxW0Jf+XF*8LvRm*f&(NDCg4p7Cw3T%+`s{~={6foB=LEvr1%|K9{WvVmelv^WkG)l6>~*lwBO6aq znXiL)ZX`SV(IKQGwG^#*9FMJJ1y%=V4UN6NCh4!LXyVNU!jbb$6Zf5{wNCX&<^DvC1O*XF?L&p0aT(cO1S{|vinMQnqUb%tuCsrKpH-4HW2!l;thOu zYub2UkwafRZf1?Q3y!J~_Xx`Y>>Wt(Oh8?S5D{s(Y3r)8{8lqg_O?FVv_Faxp4O6V zGTfjx+dGQj6X1A+Sf}Xti(@XPovb#vZw(I@E+MAT$|PDjAs;DpV9 z!pdj8wOQZ9Tc6~T8lfaRx3!|&&YvWyj8g4`<7jlvea4x?ta|bO!m!MD392k)rN9&V z*JwGD$pC+u?%Y`0TbgSq+am}OUBlKVr!)q}qX4Ab$6pRDhX`hQ0tg;1%Uo(RUt4$u z)si}TZPbl!b^#clHQank$>CUb6+SCZPgyIVrkVL4G4?zB7phcwAEv+=1|n*oi(%7P zvPdjiK^N3?`FE(gf#$fyRwETiY?WEh+sqFR7wCsSwH4gv+zvb!scpv3>>S$>CMkhI zEe0`3AZ)OV@(B&>L+_+y0A1{j2-SH*q`ih)b61XAD&o#%*3!x;LCdC=)lA%}lC)*l zPAbrV9J-XbxhEFguCs4ox-o5CpzrQT8*a_}UHmMSoqi_}z28TN@TOcD5 zIj1n^_at$AzN@q!-yTZSBQmzINtrq4Ql7r;mWXbO(MFl)g%v|k9#_HH} zJ56?jss8j;;B4nxs)}bbv%jS=CdzdRC~Ow0PEhOha^n9U3Zbgm`eFcZ);n8tbpgla=RyJ zYJ3v~JM!tOpLhcpOKv##=#F9WQ+01R+E#OA%t8mYGyV~gD02UT-P zVF5OzFfe%wx6v!-|fM2wh<3S^SP~Wm@09 zk&kO~=PWw-B&WMhM5V#4zvjH>Y%s>*_>-n%Jq<_S&2H(X&0-y(wb0G1iVRZ?bu>=T zJbsXP^jz3oRo_oHBhfnU;1@>=ruw~0btR#n_Z5A5$Nh2Q_ zWv%P`l~y+ThPLG$mOu-ng{{|Ds#P$uW{F~Ly4&KE%(NWi*#|EU3Pw|B8M8NCRPj^g z&Rwmo{Z)_%?6sO3qULI*k&SD!H-PtiQaYKX!!vFIwD%Cqr-9@CssS@Et6F= z7BN2Z7-`$>5^b4Yj0h>j0k=9|@j~dC=h(cJ8CoHPeEK64f$~*3=S%P>K$3+R=CzjL zV7fA7evYz=!Y1-$q<3ek-0gJN`bRPXr>agSkD8S?^+xy6FFIS z>eMC>*F@@hTiE=Sdpi!FwEM<&2R9_qTlN^{hd9e)qrqN#wHrMAKDJrm%ei*G3r~e& zAoh-1bM8i}Y2mA07$EbFXe3lDZb~Yph1P{wS6yK_(Sm=q1aN z*J0tJpj-<*Z3z3dRkoWz=wu^Iy?tcXK_gCc%Yw8Ea^E(b?wm;nDB-D3W~IAu^_v*$ z%i^PqHKp9R>&o3N(Galq_;E~hF-^uR^VI;6yR(}!d8v45(~m_|wUM`0{{Uf29EXcJ zalcdq;5F9pQ!`x6^(~?9P{*jb=kV`RGVOcWn&2QSK0?M_uH|FVPlZbFKaTu03SozD zTIc4`oW0Aaq1{)on5+P|$r6=l1A%+(pyE)v(|N;q3tan=24)4rvQWyR$5gw&;1-Ei zoxq-g!sv}NcXT&8aU~6S8fDhT=(NPPk=+uZnXVE#zDM?~>+9}N2%KA&FC=J2(%kQM zoJy-vGhG#fY<7O$>Sv?nhM3S&b!u!-|)7=EKLs>%MC~)#AnzVZIbnO5zV(3N)4u9(<{cXQ_p4FL=H`gR;>V<*X97E|#Ae`% z!9EZ4B~u?y`fK$P7WilnA*QM+;*L2T%v+xYRMRj%#$OKP7Lmm(^q1~j-ptz zm?wNzdlA z86>jyn9blHyrP<|;M}t&iGeRTs+qYTJERk*|@i(MKCxBFg7?p&_o5E7>D-xYcXvXERVn@yrF2o({~=^w;rP z9hR)8k|sqwxdCOb-W24ekZqWkTz?Af>wR4O7PgxQ!DC=_wGodOqHL39DO+bc2iy0S zTMs;BLEl!#IQ`3x8HrDoTK$y8}0k5tiDrdqHpNbEgqw@>OwfC)frq_}z=S(-?+_Hc{`@d9`NQ;*}c9h`Rk5V28gLmT#=8shIx& z7KrOdho*ml{GZ|ZuLU6^tG}wADy@dXdr;ER+;nZ%lX>e-W4d$ny~~qbRP&j+S}m#R zZshuZ+4g$T@_~U;w$yY{gWcIx=JKRk*KRP^ALbTbRAqlRdy*GSeWz-lNIN|Wr^=2b z^6lL`QI3y8C)@mDU-*caAN#gg(C1$(+}$|c)<|by&3?SOs`_wlj?cANq|CGH(D`vH znV;z@oPV0gd+OuM*>A-}YawaXsq~O;u9vz;xD8KxuB=g)IJucy-*3Oc3i?_I&aSYw zw{ksAF`o@(P|C<(&5i?y-S1PBRH<^v*55scUKZ-B)-yGl*E>Of4~nf(i#5{*=g-u1 z?@&`pCVRw8cAD$=>&arI{%ZMqaXH0*ehLY8);Nozil2DK5cAt0pL#k|*!4t=fxWial7zaWSIFk}$>rRK&$iH1H+Lll z?lHr+nZn*GCSnoPPq~LH+3@%3s^g^EB?N$GCC%~RmLA4#)x3Hr{K@Qx+U#7P4l2}b z%D~~ns*QwfmLT_oz;OIiqnWL2`E>`6a)PG9Ueoxh&a9?|@(E>QfZ{VCgekEd*~-?~ zUf1zanxQLR8!n>b)_5=245^rt@m(f(Y@4_GG7PBs#yCL$=PeaU&!yU5b1O&0G*F`-(Hp}BI0JH=J2kZ&wqbHxD!GQ2Y9PVN>&Ba?X@$F79K zo=VrezTj}^uQa$i@9as<0d7$r7ds=;O9W-^?OUDGCkHLE>wDcdeDPvk;G*JJ6Qa#d za`RI@HdZq$^m{t=P@0JcZS2%=iVW%!>9NQ(ZqRn*6bz&MhX0^0uQi?L37>&bP zpRRXXg_PWnN`FS2pIYSaqkU^j!CMaL%%>8T>Gg`AMxFwG3TUvv+HGaK$-UI(Ut2a` z%{`8@b#{qvjYUUcuP<>jwA-sxPQs)=t&dJ-%ITgc^OwHBe`Q7IrdQe+v)fW%!5gHb zEh(pNXG+7|6x7rk#@>s&#+`-b!_qp!vo2|Yz zA&Uo?hjLhb=Vvi*B;uUd%Xl|lr71j*M439ff`1=nFpk{%E-kn6scrrEF5+*&0T#D) zo5?6`n&IE~Cjr@aYedTrv&&QiO}HHgGMU^H&o6pLwZGLgn`Y&?PP0L|PKp=QNF%0W zN}2OL#^vfe1F+gWI|hd>9872Y$MFjDs|&qnX8vR>p3iATn=Wtfia=1* z6U8&nGPT1phAK+A+kBQCOSvac1uYXZRZqk4QV9G`pjou+Y14_|gjUN7n)6)v?nea; zb~@<`n?}bmolucSHCx>0wbOT=3Y3OXPG09g=Lq_!nNhqTc4pJwuD%ExW;wafFwP$J z9$1>&HH{j2jN+^q9TbvSb{;uBRhF+Tjs?6QsZ!5Y8=0+ZM_#`5Mb;X*)*R3mpFCOf zW@zYnrVZ@TU9HJ(WmI6w{JaQPsgCl2@bP%Lxj;nBqqOZ$Qjo~j_D3G&8U7oh7;YNr zUL|u{JXG2VhtWw;?C;D1(bLoAW%Bk13#n=8_bdz=WE@n|xJKKRm{oZ^2C8Tql#YCE zq6d-Z#ZENLcv&!zNc;NDQVX42>!^S?w-q=8!618d(Ja%$NeiZ#-IfIu)lpKy=gQ`b zb6E^a5|Vi9U}?&6%ehecWbcDBydCFf?P_dQByaE)<2+IP$}>% zDUrg)>A-b8N~#a8t`sotqjlsu4&(-BZu3TRx$o9P&~;3nt#wg%abxxT7GwKW?cXbkO>$D&DPH_Hng^TYco^UCY) zW8-a9wC#q9nbOStEzJOs(#J;ENi*A@i6?>^S%}G8cX4S=&%eD#Q&#%Znf-`a$fr|M zwrY3JQ2zinqK`}Se{euHl8{cv9L<83FRY#V{5#a4&cw4(QAFx$5v+vqnDr-z_wau1 zY+>=n)_JuId?Wl%QoTQ8b{I=Y%Irzaro-YJ%RjSl1ptMz^*wI84`_2{?PcnwExuvHMIIh)6a8IY zZ+;3dr6&#TyTM2}U*D?iza;x`{=&%70e0)Bf^qNV@Unl%b6sM4v_U!+`d0(PRc|i7 zue_?!TROeMC-*Gs;+ehj@Vao-D}c}a@=C^xw;i1l1@A3R(=GFGOO?H=d(xIP>%~fy z>i+=TiD`8Z&{hFNr0I9^=y=+vXGnGsl53|8aB5xA! z=(#Og7DnslJQU&(c=xAA8nwF_ZODDDx;q{jxY9V7^?> zkjGWm&ex#rD{ znzhI7PIOzQf-@U@kvdjyAaFXbA3V2hbw+Zo3&U{E2jrpiM;NmgaN~Z6&17xfI?m7q z10a%3Lv%_|&r1+)U|g8yx$!ZD?#Rv^$l=4LySpv1DjBfJqiB;WNdEY%+I$&EV}5Sa zbg|V|sxCN?m6>$t%Dib}k-49{w|i2x z8&=FR2D7*A=%J`<9juwX+&${c;DM~PZ|_xRbC0avAKs}F)dn$&(Y5j6Sd~s4n~8zM zUfeIPzVtT{+TF62XGK%A7?@z`RQBKC;1@+Pf=637A99*|SH$h^Q2Xe4d{WWlpY0qw zVYabTyC%`%MmWbhrxWqI#$z~@b~9e;yhgsNwr^n6Ol2T+x&Ht~t=$-6nm2L>=CG5x z^SQrdm97i5$1a5Ba(g2imjmFM%^T|IIH?@tlzt0iSKe;S5_XFta6b)J+JnkHHWQ7< zQ%w|=RK<>L^yS;U_Zkp&)P2|SSqNinlQFJs*`HKWt{g6hwNXmnb8f4qIe%n!(w%NC zh09d>nr2ELDKbAkouYNHTP>dQjkDNoerX`A-I#+9?ht`8gAFi=L=kSzzN)hp6F}yD zR=d6Dtz>1xhEr7g*xS$LUu7K&f%D5>_DY+)scg1T8RtX|eygI#y9~oXzDr-N(;J83 zpR$kUvi|@Fg@0cr&;Hc*a!K7YnOU6lW|sJ>j`EYUB)_p(JIgry)?3W5k@}{e<|*D~ zgoe7%N3T~KedzxH2Z()qnrQr_?CfRMimKN83E%dcv$;*8tnchBsiVUF%zreVVTBX= zznZV`c#G@Sul~|@cXgM|>$rV|Q~uDf8{aKZ{zab{ein7g&+{%Aeh_pqM33;e$JebJ ze4yYNEtaSJiHzH<3_nKHpBA77g9{n06hr&*OgMHO!*vnSC9O+ABiX7==?1I0BPx~U2x|+Kr~G?(g_`8A{y}=osB>o z)N@wvBy+n#eEh@q^t(Za)yW($EM`kAPTfW4ILkL}&o`KvAJ>oMw77hR&&=l#LF3?r z)J^{Y+cBBFLx($x^u8?XcIM~v9%YDj_Ijju1eAMQNd_591k|#LAdE8XcMv(En_Y#B zEtM^2)Jd#=6e606jyx_oWv6S&0pykRKOSSrhnJC^0R2D$zqnQAZFUw}tQ9x!vWeSU zg&DINdYg0LqNW%%Q(Wdi%?`Ix3S1%0`iO^B(f&3J{;o?$Z=lhz(aIwO+jgp+BegUY z(6iA>$Fqq%6So*h&3K{jrje&h^kTYs2$Lgf87S+p12bBySA14v)_nB52 zlT>DwO90zvFYCvb%>Xp`J??W}Iyez)s2)?X|F6#*86khd}_#7A9Z9Z=-{I?PLY{4=CCLLZa(=X;1A1$~i zEGoSCxufw|V-^?3Bp&pvq@bTOV~Q;~$4xv$FLICm}Z;>QWsA5J{;x!&0*#CL3S zN4W4wg|takRNSpM2!v3>DG|Fjap;+cQ9cY!;QFP9hfb=p@e_>lWkv?s=$vA0o)PVt z@{2wlPxL0#LG+Fnz&z_L1Gw`RPKAstb3?5DH{__|7<4tPc6_nUKfP8zQePQ5I@r}> z`!Sk{n3fq@+(!eN&S?iRg{P75_Z1!&MI{FMXyt3+s1^@88w=fIFf3;p*&I{~T*e9A zl1LA!AU#6#D!trwPY|)JjB8<|LFT$JW0YLM>*2#OOggfrgXtJ4TwNpq!KB!BNWO;0 zTN?w_658FWk87r)gyHR=bqvm$E86>_2m#!?&5gA8tk=>4o+mglxz97eD$c8IZENNX z-H74HZtf}Ngv#!Wa@1+Ck%3iW4{kR-X5%3@rE$^PbQiD}{=&6}#k0~rrkXilh1YKg zqn@GeB0+5$;lN(n_iM>#;}sONan@7RKuxY#IJ3s-n4Ho{NlqnYhUh|+--XYJ2kY*FW<+a#&{$a8xowXB00otcQ%#3MhRpZ3eODWw zPFVg7v9@n@xbZ}2aG{6K7-YNFNe#qc0m{c)N{PMCe zE#SK_o_6Q9Qcrd^%Dm5f+Q{WjJZaNbWs$86CcyMW-5Tu1%F2hj%}vkEO!)4Y8Wn^D zfY&|UkToR=t*qZ@-%(t}sZ~Io=T7=XW#p>l6e{$=8kKiZdQEN zr73qI!AQi>8FMpo>aDVlNa+0S%y#Da1J6`krj(M7jMPcdgNa2>Slf}ls7}M!S=zZ3GW2cx(}Z##RjyYetdKFypreuRJl@{TyiJs*ELLW@ zvBb(yPZIELZv?w5N|ex#6zi#H<91!+J9u~>>+d~rsr!$8e6Vm5JlB=$&tJZqSUw%EU6=22>Wxn-O z3;8bX9W`zXg-JWl0( z1q@ZRF3dyLHw-Vfo60m;ZrRA`A0E>{+(Ql|zD?X+sLixp$=!p& zJapz)7MJMkyp@QnC_{zn8?PdSRN^#oRJnq(D_-E{3TGY=`(`Uiw0lv9M&?lC)l6mY zl4l7(@XdP;DjY4Csq?L{=t)?f3){PUlaPpnD{v`Tw`_XSD-=}ed z{{R(#n6Ha^Qdq6l~Wz9*=bG7`;GqqDnmPMirNJQo0LC<@iF-fq z4YD7QeU!OJ+3`&Dz9qGe_BA6b3mf&VLhJ$dee1IX7@@_b9?L!Jh9xwH{gGrg_SCMw zF_i#g>0uwN#+1{HUxh1u?m^79Zm!_CR1dO{uv6(F&W=CxS$EPAo;0jOJm>cl{O;dn z143U&L;nDUZ@Dzr!^Bem0Mw{?-&~12^Q&V((1+4+kN98umwhh~{{V$|`IR3$W?xaM zJn^5hNc1Ez#s>cYy1V?zexLsU;Qs*XLq&9dVX3CMpSX_$Lf_&ydo=$57go%Ve2Qwgzq-%2JZJTwpht-xQcsKJ|V_fXNUeFX{5qqCz zOT0WR#hzH>`BdNGv}cs9w5MonH585jaGng`aR=s{e5P&7{d$ZkpTR~){;3MgnmlQ& z62A$=%N_&R_C#c92T`kgl}f4Sr_JXy^-v9Oyot@R7t;2!%Un%9=9Yc4+IioedZ<0o z02Ntr{9a>uw{P#@vuwoS&>33G@VuaX>F%y%X2yMcoAK7%Gx2xh<)!C|k!%7+S zv2W}D0O|!l=_ef1v;xa}99*WyY=feOD{&pvPJN0N(B5X-za(gl2-W2}; z6;tVP$|x6oGI_yFj{{UfJ*lgU>gXxG?JDg*lq_nWNU)k85`YYL{;W|C@ z{#7>|e=D7%OgyG-mVDIo7*v196TbYxQJ-jbrx2`?wkp^#x~Gs(bxcH!R z;xC=He6Ah}S_Z{YnT7tD7l>iA22|6&6CfqGa5uMmNnU0#2%RI3om@9VlTUr` zb#+ipFMbV?pVf$n1Kf!kO7zTk%Th=Z&`?5~+z=8JJZ#4}yleS(`&7vCiXWbK&BH z5oJT~l(pAZvp+4?AY(X&OS^Rc0OnWeG3-sPAELnj0OvwlsO33zKyj)mBa_al*>)eS zw=VSf_LaHqQ%dN2`Fv42ddO#M3t#JSRTEj-OjXV82J6W1)oL)kscUS?rn&L;96}#m zgHqKONY?J==Jse0i2P6qG2lmftBBG<*n|~l^i%b7^MvvQ z^zT0Ysa3vsu5Jm5{{Zv6I;pfxb}NVCVlDpw2j<>g-L5%H9CUXMJVn=@IyTf8<8$ma z0OjFv-=g(jDIQNMaHCmUhq=NJuBoJBi&*|!*0%XwZwrOxpGd_OnKK&l8Fn5Y6&T~z zRq5}ZL2#*Q_A3%Db4i||(chs1`mdZ@eb9{Ske1)WL-#LM@^|H2>{+d)#VO^jpr{6_ zBTpMz=FDskYmhRL&zD8!lGC-6_Zfy_=?Kkx5_yeg*=>?^k$Ovn1iY$?c0FxU6!EuTG(mW!=<>Y zb33-;KhPqTu06i=DpBnYVP%ry@Ef`~+rvwzaj@adb?*#53QgOt3g*7llAcdD&33j% z5!(lWO~vpwiU;B}eW)#WfyJIbnwmN}=4WM{i)v1RB|bArvu=FTR61EXQ%3I3i?61O zPCdqXU9*wEY8@M4ZhXuR)4g1F6%7y))zmegdXBGZs_W-_Fzh-g3-cbsd1`(^2{F}T zPt8>9_SV^#W;KO^lkFrhGtIENR_X2aw|POOlB%fYs-8pK9bm2QSsYngrGkagbm*-D z8#>BJF=}}|K@;=7{Vi|3SFD2#HT5~?zom2iZ8a*jvc>G^Kh;xoZIJ8Ws4l)NH1=5b zo_9`)C`&BYw*1LMJjv%a?X9wWbkgS;a;BBs)ZL;g8=*Qb-$WYcwbnO8prfb4X}6V3 zX{aLJ9w;?o%`2SOv}vjVU0BIaZK|zAapiQ4b9DafocW&>I1TOc?o@>G!!w@OSn*8a z68`{akX*+A-BC(vtR?Isx{_Vz+ll;r#DFZh^%yYLDrvOj=YLezsZC63^M*HG1Nx<@ zrizcSC2Z1LTX15MrxY%T#Y+=u;^&u%_o^2oR0CHfT!2N(mmoPkp1sErs%T5Vf>0Nr zmLeW1oZ$A~E}C#u$!T@c8)fyEH(e5;JvCgEhV9_3`P*ia?{h)p>giypSUZcXh|^&1 znv;LMXn!d95~fnyZ@ZC6?5wNK#i+m0M`I`um8P~-a(ifqP7sp{gbrFHD~ zIJLt|>c?s{*Pj)br>yi9=n3%~gq4$5~Nf8HP_@z;d}7Sw-+{EiF_s zzA-dT56E?9i%*8)yHADTkEg=%N$Kc*v5@B(b8)+KdcAbAb#}~QGS&%cswIPZ%6-o><=ab$1GuyA0jpIDJEzBQLI< z{6V-QUTWn=H;G~sK5Dnd44RP}Y!v`k!)s>Dd{X(a%Hr1XSLc&_?$(b3k3^Y3BQFbS z$pK4o*tY|9JP;X31-gHKB`bsSTsafN;b!PK<-N7;Kvpzn9eqaKR(w(y+p}}1<*$m- zzBuJBv$Y?+$wKJig|?BlzdoPQ01gZ=&1V_f%U?{q6#oE6Q(^RvlQraUus@2sEo~Te z^S87-5NgVY)K6x&Ko5cf39MN67iv`(L<8K%y4oV_fJoO}*0QTzNF#UW=>inm=+yNSy#BI*DyMbKu)i~qo$k@nSeWkt*HC$?n={EG)1v$ z>jS7&9|lum=8l)*JXXehCRbs?3VJ!}W?>)h?J|zO$RkdFhZOo9fXDF`J9V?TgzSuH zOhzzt;o2an*)s7_!y_|tXz<{h6Jk0$HLY>r7S1mt`)=<=Pl3wZ=J%dh;{bT)D(C%% z?F3SOpNZf&X||$z)5E|w@kYj;f4|*FkA&`OvlMnU{!y?uF}}?{ zX%ET74|q#98RU|g`?>a`5}z*-OHZe{`33aqm7`BSq^qZb#m>J!Tl)&mCyaUc$>@U` zIg!ViTUjxWBy=&owAgmh;uiMZQM(TDu@?9$j@$i-qoibbf0J5C2-A66P-G|MjnSqm zEIzXN6qX?Uq37QcCEAs$any#$4|Pl@izM_}|duH)oP$#x zWPBwYd0lB@5#kgVIYUn#d>0#6oKLfGKNhJCmC>?J*g1XcJy#3qDqhh0vghw!jag6x;T;!J64#Ip0*QnhwLEl4=R&J%&fvc;{|PCJod5TN_zT9It{M z9h&0LzfMWe%^d9Qvm^O*T5Tw$1+%zzb<}t%VzZB}%b!JBc>`u(b6c(TQ!t8o#`A&W zf4v(8t8)c4_z*|+Lm1-R#IemBf2zHRkmy{<^J{HXRc>T)G8o%%2in%dRZ@~J1;FXo zv!dsa80_-LuDYsoNamN{Fw^DUt2$F5)y*SSa4ou_mke&E--4S9gw;=Xa2$Qgr7R6L zBQdt1{wqUG51UhTB{ZaYyv~1({mPCdQ@Ns=Yx?{z{qR>O?7@`!=KlZ=^bWnouC^Lb z?^B;o6wVw|k$Ft-my0 zk|G1I)1Pu3KnC&7JuTg$GY|oe<_8o2{Azv6GB-j{5tOucTcWj!&Ar5?9Gjx0nB~pF z+WZh5EMP~Qm&rj%i0-CiWObW+_gyUWJdW#g zA6FA*hcMDX(M^S7LMgI6+I`6)wK&cW%vPQ7KPZrWRGhu*%&RFRqN;QgwXA$(j^*og zbxf+J)y)N#)Sz2efQ&*JE2(vzgE<{XRF4|-;T_wfoB5}1+}k*7_atG;Z1(C0K3!6> zL6yfgz5U6wDUs3WTXoExySF+0j=jperE_dLb5Gv4F1brTBq-O<5pXVdE_{_iTN_{5 zbGibMx+gjLTVcsmjjf7t+P#VZ{T*Zc-rKJ2f4)k~;d`y><@V1-QVCnRecao#U+k+a ztZsYDpzHaeD_Ncx;vc)dzmZlcB9?kLIC~zw-EIf+RUa!2y;FaJh0>VMwPAbx=mUL* z<{9Aw}2decT|aUqRd@)5o3PktY%~_GR!R9HAE{U+)z60 zzuot8zX4!0@KJ7nE6(lq9gd+nlFy%6bV%#E z#Pn7nk6%}kdkWPKsTxN6`)9-|t~2L5&M1ueoL!eKhMg39vK!jdt@tBhNJ(b?Y3z}u zt_O(dtdP-feyIpy+=11`K3 zn14rpZqAyX(yUu%{8L=XGF(340k6XG76xW#0zDw;QH@8Wi&hnZ!~E(xkXhn-Xtj{m zOHU+>ZlIg%$uz80={9oSBFYG2WI@(@hHf3nXP+~Jq~UUte@`1hb8hp+0WdWAL6Ne& zjwu@?A&xDBF7>>CMSxY-84YZO2tF&=U_{cP76FWL~rGpJ0HRX!Xw1ugNr4 z!IvmwpU+O^V-NFMdY?+hk;hfBfKav|L{Vxlt2(74B|Dfp zy?SJIO$~8w=nm~Ht5?MqD@^KYyrwsNl=crXpBR=V2_?-OX5@Bs(@tE_`L>ooZW|$I z;n!7jX{jo3R{a?^Q%iFA=F8OIiUHW&3%8Z;;Hzh)mu(YfA)AK|_qhRK@zwIsO;VYLRUp$+TbsHcpyg3IVq{$ z$ICAe9tq@z=M$Tl;z#0|a^-RV07Wwy6h?u??zOnC%hlKJ z?_I~VIE`+sQr12PxxuY|Z^-gvql!s$Zke15U$vl9 zai5cES&q?9G-6j|wzn6Hunyw6 z?m(58jO4yIyF<~v5Y}%ceq633o2#EkK7PZqTygu+>MTAANOzCqIQ~g&m9TswrU@mU zSN01nZe!-JxzyB_8JbT!@>HvFH%iBdcsou?i@gI_{v`YsbS}#yoLu1U!B3p-V$2=b zRl&@_pjNZQ|fDx$nzzSUj;MfbZ>KV@aLIP-nS=d_U}sR^EUbJei|jzlkXfeIj_@#<5up_ zGVswun)>#23MV{gU~Yt_7pZ+T{*l?mx#_AV(*s%QHU5ZABZMt?XT*w_BllT&9aV2TrfoBzmDke652&xJl4l3Cxh_Y;s%bA{GqWs=_Qy4GS{9@Y zik-rnC=v}ispG4HIGqvH>!9xMLon9GERsy@(b#&2OZTOyk|-YMx1OtM=}WJ~yxuQr z_W35TK39pP;!yTo-j+ve$rq=W^i1w|0nNz`JGC6w;i{5PUhQ?SuDldIw-MRN&gY_< zqRz4Y_#n@kDMpezJ2>2F@lZL>Z>sGFUK%GlM?k>GyD)zf(L*gfurxW2ykv9XWEu&5 zJKPMevE%SpXr+!CXE!~sXOgJJE^Nik>%`!mN=A42|Lg6ret+H}lRVb!#qs+u`tx4~4nI%fATLZ{p6S**(H zUD@VKa|J8two@E!;_OK7j?1rw*FpBzx1BVB?C~7Z+U>d1?prFqC-yIvg18) z&EwQgAW&~P=VOJwYE{|?YsBy!Iwnap4IQVnehMd1)R*O*`@3-gx`g=X;fUXLpQdyg zA382|p=JB?B@xXmS9|SsZR3U8qHUUeri27B!5n(GQ{Jp^Tn}a36lTEc^&g!zzRm2Y zgc&K3_VquacKZ2)vVOVW@==}Zo9g5mt1yW7UXv&` z&(TZR8JyO)f&!<+g+^fukQ4BkD;v$O9s;cs_T2B=9!-VSgB zsz%n*#@jW`SzEaA&2_{Z_OgrhM$@L2TuPHDFaC<8xV=1C@@9We>Vt?_@2qwDbW(2P zX9n8b(XpfgsncQ+%H)E-LBih8aaiwQa?xn<$xoX-onLz_{(-rBlG@>T zaQLM?PsJe08?R4tT{!kpvvzK-U3TWaYYQ8$wcFmKyLr1#{zwNiA!~!QBZ}t;@;HTO z55p^QCx%he$n)IYJ}X~^c|2rxn-`wvj^&?;32hd!RJeU!B{u4ko%0{u{8qyX@@P$^ z#wv1i+_R6pZ7G`#3|pF5qk({X8hq0n=?-hU>2^-hQepI%TQ^vJEOGUJKZ=mV`8!T` ziblzAYl2W_mG_CRc|mOfX}46u*OThEUWnBm&ecn2PVLJTiki$L0gKW-ra{PRP&OG! zfL2f1f1zi86>?ZGtQtJ^GO#>xzZ44)+gi%L#S>dh!_V5cy#+DJDRo6uxjE;V+Mz?3 zp4Lq>a#1m`#(!9NpeCAX*Y9S2am2n&0%P$Sc+IJqzkl026)EPPqgh_(_izC{C`r|H zG;PY(dEB1{g+ijXrm^;tR)!5j7~lZvsY^U@HQlDZ+E{Z6l(lTsHJzU1#1NKtHJZ7; z3rYO#N6kZ=&Rz?k>wJxxfp$M%IBJ| zM^%?2!+RVLaxiTqF28Ap_e`rfAGI5}vxkC`2{%&*avuvMtAx^4I38beZx#m*X@OX& z;g)-s*_YIRRi}cHt!2Yn0>{!wF6hT=m_=i)sf$4^*>6!rfO*alG149io8{hd)18pR zTP*#Ta^{!LB;nc};ZA_7HGZyB0629jr7SMp2_8B7t*InFF>f@2E)bO_@ ztidp*Vf442}q*g_TvBL&i9BSjqV{PfJNt zjMOq}uEZ?*xLLq>De&wfs}rpAy1dd%} z?o_ttZt)$wuL13K9uEohRGGDT`%mxg;1+SV%kxumJs8Nt8*lVZ)0>i=8LtlXx?cU> zF~X(&_dYU7N*rxfeS5w8|D{Si?PT zR!d|1s?7~6t1DopGVb@r*E-p2>GleSMvdisk9ofa+k(d~OmX(Pj@Zh0^38Fn14Uyg z4a(-UTbjR&;SgZ^Lh3kQB#aCXyZh2o#M$vWNFLnL$o~MB6&E?K%FtEV9cN`FOB7N# zi$Nj3?yp_KX)yX4Y|&E1skf{1Mxw-EYjU{6bQ63?(uFb~^2Dw5?O1LJ4c=uZsa*jFZ$I+>D}+R8e~TO}@LyH;_!t%YMq z$eG&LP9-E1tZuoSBY5|F(#;{39@Cm^E})^7OSoojfU)uLR7?AagPnIfy>=f;$39@! zxr2@QT~8eFi#)pa;-H>pLrm<>b)?`?3DncoM_Tw3bO{R&~_IQpK_o}9UI5`eOZ3VcF^g4QqY8rRM z>c>>nyjtVC?o#1o%}D8*=9>?-u3lt>v`f*s(&l5^+h_N5*;*ux)^+5Ml5YP1Q098= z7k^6x%v_p1&3hux3BL86MYy0T_MNM9Tbi)O8Cz#|6mb?*Qg7+AFmykPj(Hy)Gu^=V zazI>;0V7=nPh$Ep{{Wiv%IZ02Fb0z_u8y6}jm>esd!1DrUY@HLs$}&W zjpHK&zfSHR{)WJAC{etd4CdkEiEn$ONZu~SGr=}x&?O*#6zZh zOwpWen#%hg!KpS%z8M6Qz6M4$Htt5{!Z7-hA5zWWvXW}n%h?(ZY8F%+_YH4wM`|{= z91w;8#xMYoQA8$u^!a0$gM08zCw5(zUhYe;W@mdij!s7CLTp$gm5pP=?WY9C(i54? zYe)p~P*uBp(8%*MnZG41Ek@yxN7}O=+f_5sBQZBCi`d-{!6xOrLt3uXQnj?ts-$M| zgI9v>LaiL}nr2Guv4T0dbYYyZI7GnRTmJw^UAc%g!Od=??5A&GcM0PE05Wyr4|Zu{ zw+m)f+J4567$VDjjW+$=6O1w2RxwSQAKJ70$)(W!xX<$^+J456Zd;MpYwy4Iqr|?jOE&nfYqB)nk~{r_If^nfqP%a z{{Z8!JLKQE>S_vlc%6~C^Xqq~h?owIkAj?O3lk2H^;f3jGj_qQM*jenA&sA5id{J7 zOJUmediu!m`v^>I`wi3gQW#=9SsIXwH?-#e0GTw{>)A`k>?7Po$&B~4cbmt@BS-S7 zH0Q}DhKTSqi**Pfy^XT8DH_&#Hg4GNG9EtU$Q;;>%f37m)0t##%bNRpmRSV}vWK~> z^#>xCAd)6oygKkvJ9)d&x~lU@Q4KWiZiIowKuY+UWXi_sc=szfOfU1Nxav1X>a`Jk ztqyawEDGku$Y-9TE0K*v|@4AK1xd(j?0^pW{--l$2qNaoo#Jo z;X9pd?cvREM_pLM;SyJ~e$T2m*O6CXsFHWpJ~q1`lFSFEH5)5i95KprzqiktTqa3f zh*b#pV>|bqz%NIO9}Z4RxgBhjbxfKpw`PQ$c=70|dDxZsoXlqINPQR=J>>o>^%fZ% zmAm)VM*NqQfa__`+@+?XXsLX(v%vEyBmvXFu8*Zy_kbr5k)5u|Mr$iAR3eMfvmn#F z@lJLXM?GY7K78cJ3+hAlw zeERZMFd5B0BOOf6+`#9M`Huh%$tyiwB$RdTj(^rZ=e5Y9b!K`t?xB{&xoRUkayT1~ zI&!~7&z>5MCQm_w2NB^|#vwcG`dD|=^s}&s789fOw-InV_}iS=B~zfJtg0TgmLDaa z$1$n4ixYzrs)`8eg*0^181Imb#o4S*fL{E0aauYy)4^Fa8(i1NPZ;!>g`Q5n3V89< z@|=ZmIDbr*K`Uft zJR82>ase(YHEo2?bM?@2RcR)gd&uXziQoadF5IA@Nr z?v9=&z3#c*NuUTdrodyvU0WkGJU%v4W`&f&#rG$WNZsMX1|3y9WQCG%1-m>y1tlY5 zrD)wTqR760^-WuAu&O*dnT`*Pg6rwam&F(u6Y4P7=_;qQBRQf-3b|(PP4VpUU+o=Ajo|Z9M^V4ck3A}VSJ}QNTrjigr15iYhxOXRatQo&$1U*-1=TCvoXH2tbsnU z_r7%BJ4>>(GWpov3Lia+H-kH^A9oZYYQD;hLIV zy`rPUB&?>AM~SH-H?xiVPHw;EPpH`~h^c?*TTv|&`7)`5f#aUvdeOrTZWo$*dR@r9 z!N@GEGifmba>&@H)7ywHEbz~NWp(lAhQ8)fFDICD-UTk%VNySc9gu(Zm95_G>mv?s z5rkFKjuvOGI)k5wxj{A|1k7-s0mEJoGY|*vRj4scM-Gk9&{oS&4fKoFXdkvE#^d#>BY*M4 zKMN^;#yG1@@=?F|;v?=VZx1HF{$uLl`HWwlc`%W;eglfrAKcDJ{{Sn>YySZ3!Q(Sq zjYrfy(>MPBQr-UmjjPDB=qO0{r2haH&Hn(>yg%lbPFP*|{{T!2sr;3m(S9!-`LWU_ zKM(R)_GO1?aXKgUe)8V?w##~Uz0TFxH3{!gyJ=}<`rV$Pe|Wd#jdOm-Za>oj^iPxV zsM`7M-EaQ2chMUP?IYVM!}`f@zbO0Hpd5b*BP^RMN_)eb{{Ys6(Tm_N(ruKbKjpv7 zD%UaG_`gpf#wjq!3!}sFxUo3+myTaDsnA0goiIJJzL|$K+m`l&2OD>6a<(FSBe6h!V6mdvp@ii;e^iD;`9Shd%OA;=OzR&NeOvM^P>=$H5@G z2zI1++@HA)uGtNmk)TmeEeOa5oj(0BYa&wlL z?Bjvf{e-VJIeM!4Sx+=K5Qb@~m?_(>^|N(JPf40LdDR=Ex3*hvirLU?#yr?*>S-vL z`0m&G;1UOkMrYYPR=OKYMBRG5qvv&%`54c1UOMxEMM^c?Gv1TUX@UO$cZq8%JfCBf z)bdF7Kp4Y+tsD>+VbezEZyy-=Xs-@gm#UkFmAuZB{-LR+ikN<(s^6NqydKiH#o6_v z?^oG6RP%aq`l#0$3RCMq(cZ2$5Z2!_QaUYfnJ&}^zY3#w23x^L^iCY#u57;Lept(W zrzpguntiDq6gve^X4FyR6V4fTyj(Z$2)+}xTQh}7Bf)kD6Rxcw?#!79c>?`O1Hq+d z-@2UV;ch9Pq|#Kfs)n*!Y2vwLjJ4Qp$6JmI9Ju>_T4R=*Oivr~vxw7r90j;sC$!De z821K^buM|a1NU|45L!D2%el%Zdk`>9=}1-$}r)QYbLig%9qNXDN$%KEsCeaAAE(h?-zag zG1vHA6#oDl*HX2@o5^K!4@`}3{+5;J^^(=n7FJNs`dOlWaU&gK2V?VTPPn9f9rqA+sGY>-H{{Ysm9#iV(eo^Ggre}_pKm5YO zJ8br^K54PHO@6FnN6D&aJfLl5KCxo)u<^Npj<>`t@5ZrzQxDT@HrAl_o#d9JU;aq{ z0QhO&<2QlZ@=I0jg`fRm%8x2rat;2Mp(FnQkem6X{{XdJx95pai+}J#{{XL1czHhu z^)UT^``W{{6whU(@=b_k{{ZAj{{SRDU8%sD_c{Jb>OtlWD{t_!1^)nR8*V@PA%@$& zgYn)a{{Xd3w0rX$OAl}V0Eub;0PPaIJcr*8*Z%;#X`5ZMT>O{TGx#al{S=Pc&6IYM zc{jwr{Z+sHau5FiYkOmBHm?eHpZGKX0PzB6{jTkxzv*~K{{X2w{{Z4F{*Ns__6it4*`m+|P61*ctM1`uOAf+&<(kZz|ht_gT1>9}j$V z96!wRhreq!mbZz*d zc-BuhU=|+br~ALO>krV>eoiYV)(l$;KgUsT&0mkm-ZeCN*^6N=1CMR`d+f1qucxcl zs+NuC{{SJsl8el+DNX7y*4wOcG=2#G0CV$4+TB0N9y5oe zV;DvM0P}yM&QL?-{x;gTXECYIERJqpfOz|nAqSH8KF-+vp^)+!2_ElAv$ywmJ=PhhJ*KolQ=(RixbURfRl^#)WsEx^ug2*Li2eKlZ$64hjftDAvTdV&7>Lo=68?oWwQ+YARH=MKE{{WhhtpzPM(L(Yt zKPEV49L+5H*`xV}n~#dDa?2meY?|`Jw+Yz+Srl>Y)ieV!5*b@@YaY>ql?R0UAdMDkc{2FtfM#ueADsae|RPFx&k<*>p z-WrH(dhj4EGvv?rqUn#YS$0omV2#;4sbH7yG5!*)?kz=x;qT2)wYYX759~DI-*OkB zZeyl`Jpw*SuL?Jo7L5PhB&Zq#kFC)ovng=2>3& zWa}O7-tnhZ6m=C*w#HsMYOP{bRTa?FzjW_IaB@3Mf1-hcS2Sd$akqljc!5{bHR47; zCQf6Bw|d{~opoJ4&tjOg^|*wTv@J3^2;9 z&~RFlhU}e08%quaLqk*8?7t{@;9BND%@8;&t$h>i4E4GWt%~l}$L>LKEN5b;qj18hYoV#naA)8eI^6#NcH+GXzJa**A00##SOs-0A-pxA z_GUrFj&DA9)C(Zk?#*Fa=d!p_oCVVmYlEKV`8 zmNx$YUI?Ww)QUQJBB!IC497nHI>QW{I1=7kaJuNu+dMIv{H3O&tJ#|Rn##-v6BHm2 zBRO2=0&jO5*?eqPX_%D}-`=XSBo~B`C*n7dX}~c=6ph;OqRPZb8+wf^hGe)yxyJjI-#s%IL2GAyH%H`Y|+T( zz1xYI>~kL;2$Xodl;k$LCcInggMRgUXJdT~w9>@Kwz4t^zpw8K)uNq_YqH2W^Fi=@ zZwtjKql`8z@#*S>RMOLa$-eCsO3s5~SP^Dv>2q6&1CpzS;&nJ(WOXs`02+5ZboVU- zsaowBJn`G?Kl4HHDDfIxKxfNYO_1BOXIOG4sOpwb=1s;Av~;+;H*WnJsh_KVG1MM? z{T7Z18BrVP>N`wuw!Jzp7mE>LV3W+@rf_+9 zg@#z^wl#Ydr(_X*6<^w?k&g3O$E?HlN$6LAZH~ZF!#C2Hd=kDp`bb%+Vd^+vy?rnQ zIJFC@D%+ak;PV~+A!4hr7~{rWL0?%FG;=d7azBIbdv|H>)@lEK4;l}UD{2wM25==YE6U35{NPjM=$ zNO20fzQsc~o3?Qm9PXePWi}e@tY;5wtS=@K=~f0w^xiMpo?Xmmkad%&@M>C0$lW$s z&V6(6M9Z(5?r=;1Zx}fer!HHs1=Z<0Er;xVE-SyQptV6H=gvq2xNr+Umg6ta%cQ*WJm?--VCH_gp3c;my#FXuMd1?xbyXfR3c690#?uGEwzB1kfj+_#{re?y(qiabP`LA~zw;VNHm{FOT znD!Yh!2^}GF+X0{A95&hSs;p_JRhlBho3`CW z(;q7%jqW-QYOCjg#m7G+!tB+LseF=DO4HW*Ds^+Qrp#-28}^hFoccG1JE$x>MOK19 z_PLJeHBe8Z>{W=1OC5b}s%=bTiQ<@w+7WJ?(gflIbWK8?;*lvxfaIycy_=*!BI~ZQ z?`Z($Sn<(wgF(^PN#47joDdEyBZ}ZU@J?)@vE?hS3v6_^RH{pRGhT?iK6yP988VI6 zU?EKeW^i}BA`~(YROk=jl?@&rgF9(tbVqdz@PI_c)*5jRRB^47t-)&mt7~lk07%I_ zmxIg@l2;PP7@X12lxB-=YMVnQ5sgyCh*Ori&5&sL-)#st;ikWZl+`Ouj8xUp(nC?Y zk~(e~E(z01p5#)O6Nl&=fzB0eE#lGzvoF_` z2WJv$s_fD61MgKM@^!N`P?uNvOWD8x)wJ&3k>CWH{1=!C2| zo-vxR20%f%$6Fru4*6!e~Iu?jD zV|sXXPmY-R)5b?wACf8NaY;v{P6U1kFf!*h5Ww#50HT$)W!&c;Hd0LuWO`4MzrgX*KhG;wb@kXQBEG~{QCL>(RO-N?(ylt+BhKnHcBf>~jQa65617k8+N(d`QI zJl|V6XZO-XSmW=#wF=ENY^v4V^&t0mt~`%zx6zaslrEY#+j*&8eNkTcq>?AL@r#4t zKfA3BCM7-)$41Phj|Rhu2k!oe6-FKBw315MavPIx=%N@^Ty~nnRuRQpf+o)nQr42* zB=J>E8HtgG%bl^6GioyGGLzS$(K}oiYrNVSrF4CP&yXq`iJ6qOvOH)#$*eUJhfN_ONu+?4kl55%HvD_Okk7Yp}yp|sFRDGzg7ld0kYG~&tLH?4E`eR*9~ zpEXran#btC)oG4K5j;kEmu{P&=b3QBUgifDH&LaL3TRtVSjv3Ohqvhu%~_UMFq~is zWxQZJi)=MpV^dYI{3_aJY05?V_$yVK)nw$(H&HULd0P62y+Oyny>sTxo_@=|;;jfO z>TM;sM;PPxsu)1tK5D0XcOMlNAud{Le$*?}u=%YdQS$>k&=zB}Tc;$ZP#W&yl-%l5 z2+Z4ZKt7ijnw8oAIGQ~zt-7ZQ#^LQT zcAKTNJrzpWgKa3vEvY>fni|$tQU?yddgsPtb)Umj(6@u*GHBO1y^TTeTFQFEQBEXg zgbP211ILQEfFDvU5k3mha*Hgy87Q zdU*9v%QRuRLtTHxHJW03o7;7P{{9KkK)}FXt*`l}M%s^Cv;J!-EigHEO}4%03&KWe z+G!iR>D-#>Mo>pP-@#Q5Ejf#A;Fo;fC!#}38`m@f9O2@n6B!`@xz1_5)lBU+?RE)C zylz%BI?cEPwaGE2q+Pf?EccZW0@+6a_Z}*Gf@6d;F9E86n;zlKYQ;SZTbu%FS^JiTZV&w z6)Pj%vdz-p*-N~)6y{_m$Aypyoc*OGFyG1|Yi?6xh`UB}S{fQbMNAx9+dR@MPp5&j zkmPG`CAIe}V$emrdwa<#8rH*_X|w~98DEI=bFE?69F-E>b8jDccoBP!Hd4AG)0`~T z9xEW2Hlr)qC%Vf;O(odoJ+3;E4_|-xWWaT8B#}?&ak}h0M?`-G#MwMMi5$^yP^vF( z?7h8oLthi9qz;YOWB3%PdLhTfy;XMd+l| z4j1Z@YaR`7w-hR-J=~kd@Zza0ymgJ?n?ua#-U<8rHs`0qy=HLyO~ryaT-@DJR#Xiy zmsKaUn7$oPj!;caD{@#`H|FQWFDtB~nu4+Pl?-zq9*2_kZSy$iY8#K>jmD{8BpF#- z7(23gqk1+252AeA*&5%e(DtqH@K&QS#K-#t4Q|vun6+ja_rTXVk`G)xqloWQ)Ya9# zH`PCM3)!zP^h-)nb6b0tapa($orH@v$BFR^ftaucbk^wvRWJ6f&-$$iP-^=QYEew* zKeE*S05o`hZ1*ZbDP#L>*MYZ0?GhvNH)gxCsXW3X#mZqUSH66TTd?qUpTwtO2bx4U zH;C0Jf;^7=dMOJ}XqM=kt?YCh)7hTEmxi7E5*Xr;+_zQ40L?fazj~S&_p=D|>CB$x zH!TEo_&BL9Y;NR=(qZu7^v{6y;1txbJ}0{?c#TeE_s{0~hH)3a6^+V*Q%7bv z9WBP{%L&TnhS(k;q@fblL?qpI4;QP3mC`-KvNCm9(n1BA0aHyOrE47%Z?31kMIAfp z+5*?H=(#~U9`8tx=(brevTncH=b8-6O)GeA1I);!Y(!w43U z&9+T7>D4vW8@75KLUlyViMH(&J%&uKXH8NLoLRSz(T;v9NTLE9`J3LG9%(Z+PwXg! zw=a#kt>3Bv?*=&o&Y<<^p{UH_29v*#{f=Dm7)<-MiCHB{rHj zTshCayg3yaGOYwq%PAS3ot$onInT+PGjG?T%u814XNSc**iR$DJYw~vTRUyVW73wI zPc@Eg#!RH!f#j$Rqc{!VZSF(=0K`&@IQmQJs2dsih1s{Qs%O}Htc=CCk<883DTcT+gqQ6NJX6r``+2JbE@oiu<&*swZmw$wdh~hl zor=dE9M(Zh^Qkc1zlaD`Z<6X_{q7%Mo-@IZwf;O1ed8CsfPTH26~?L}*D`s8cJ|Dh}du-QF4oFOp#K+`x4voUsyGXJXD&U!i*L8|s$7^)^@-|bNc#CZdY%Qz% zl}9&qnX$dLI*!eW@kW8fPoU3hbV$jZ*_=c3_xLK^zAu%!C|WO{w&26y0u(3bXDf@J zZi%j{wyt*#ePlJ!ux85F8~*nN(LnK-xtjj~7X*|h%BK3QZOyN$d`=Gbt}Lk9ZW-IE zYuZ`s%VEanP6!oyD+@Ky9W_^Ih?0@)%-gcXXE%~e@f$O0bXvMR9rSnvc!b<#l*evX z0XZ1ul4(w8v~|b;qgW%ilx`fs=70>jWWTFra|4`14D8QhMxCWplyMdbrf|&PT=7Gu z!|xS``YX;ik=(i6cIocbu4vUk?gQ@kU6=7lY&1OHUO#AkI(jP?eAEjy)nX794V z2LZrYAnWf-Xt_E))C}FzMA%q41lv2bS3gYF%Vg$5G}dfPaPLVwG_;*dY!jIQlz`ug zD+UjhyULgN=XV8Cw`#Dw9j=a@t)4;AP)i;J^4;U#ZuQgScxDF22R*Y-_9OgOM-kd= zPZ)kix$FnnjSqAYQZqel?T@%>^t59*p4Z}7mtq$AvpI%w0RnU`$|kIPU}5JYuHvG8 zHd@Crf-T7Xv-NVM;(oGcxR!H!mFY{)tz&KGaWsFZ}bK3Y$&F=Zli$w-+wU)h&Uw z_#G~!%#1kjQ&=^Z=%2$*K|?;a1A?HInm``r@;p(xIftlp(}Dp7y}@6CZp$8BYbOe? zVleOF&dp0cfc26lyS&nIft-{#{KMD!0!|w5hOwR zyn9x%wMQ@qT?6#@r$DEzqdP%frKH^EbNHy~ppC5UyT0XHbFHa!hw~^(Y|cHS%jBCR zq9*SqlE8e_M79<>NjnT2P-=>|Vih?{oW>1MqEArj+{F5UR&lozL0Mnod&dy+G5|hs=Tat<+c*i%M zsLIS{>Y_{s2O*zH)wQ|Ev@xDTsv}z{&usqXa}uv?U5Nf2EP}n>+uf%{gqGgbR_N^m za~%SJ=BVzCD7>dLy9`xpF%bhdaB6z3Qkt%|JU%S3`u4I8bIm8DZt_FG2QG>^DksX; z=bWA#t<_!L3_bp7hvlBR`aVIzG2EyT*)XCU{oL4z9fop;$Gs51uo|lB_DL%wsjHCa zIO=-%E4wqYGuKuK!*}&k8^56OJK>VD3u4Ii_jb@kIl*6jP29zg*O zNBg_2p#xO>IAx~p=u;{_tJTuVT0071bf`-kvgYM=E8CYa%#wOy*5+%w3g+dt6b_I# zR`gifq}V~-;&94%19hrSDLuuSQieHTzK_1i6F`_-}k0X%kuSJf^+}UWS ze?3-n0?Hzp?q>ouDA=6c-Muwjx$#DmCI0}Y@eIA3Im2FV3YIU6*Uv!XEjwe~{{H|~ z9N3I-ybO+ZV{co5Rq<(>Xl=shUeeDFDJrdGF|+>9TBz&U@X2n{^rj2t&~ya zf-|@U*Gy|Rmk^ZmsBrfM*ZhB;OIh+?1ufM()rIcp3h!-4Snb{& zGmk>PkMQGT1AQ~W=1u+I(Or*5f_eNEI7rW{wd#2*gR*)owxh;}uDsO4FEtY{!@XLj z8IE2JFtbh`(;nK1!bxsy4H|-C=}_4@qh!jF(de z9DB6{BvePvB&~(@7+cyZLp>x9;cw`f4$-oFHuG-7 z3CSQX)tsDk_=FE=C8TC*j5c{-t&HyKS?Y(djwae3^fWkEH$GO04w74$9Mw!A4*vj% zMguhT@W9%-X?-MQzS>(*6tGuAT^F8*?(=@H>|2hg3*+p@$9nMml+<{gB_%YF)iu|C zX963c9KGrFfMzUOnC5F=b04k~Dr@1VYbr9h?|5>u$U`w~`@zB5I_>1G*HuSUz}igZ zk@9-3q&?>bwVVDR`ie(MxX9R@bIlLJBoScS=l#1_shnO7^E*4WxKmAHYV#b7W1Pb$ z0LF6fDbAO6Y&GYceh7Rpx6*pICsX;UCvIol=^Sk3%^)Tvd~&((b(q1gRRr~}iJ7<; za0q@LO;szL?l-os$vbZ{UPuF#iCCYN_#BJhd>r?%q?>L?msv-4TTD zvlq*p^5_)u#vK)=^vrneF!cNpE|1euvl~sa81*gj3<{2w;9g1D5Z&;-+y|@oEnNoA zY_=&5Y78$5st5j1BK_;4^l#%+b^~<2Gi30 z2aV+PkU;(15<1*iFJa;Lt`C>N$&BxX@a*Ex8{)N7Y=!|G&WYF#8VKgdtPm`JW-v&w z3d!KY>7bH0?jFY4#cpS8(Bu^lY>!~EBS5p8Km)dG5omV^&*Hq^4t)Nsmbx;+b+zOZ zw44^IQ0)Xd`_Q}`Uj?Q8*XoSSKlWa$wZ=A~cp(1(W77Ws8v7i5Je=KB=0mo4X?Bd> ze3z(HLFZH;jRo!s^4xdP?LHji!r=VZu3_dmuy7=GxY+zxiTtPHyS^>(9Qs*nc0Q*J zJ-Uh$yo?SnZ>?{=X0W+8lE)WhTwcS8(QKU~sBsEf;q@*%sXRKYZYdDJwxXsn178@s zqtC-BUQZX8?i!?`o=UleD|3)9ZWjZNs5T(?L$~;AxEDr2_lqMKE-d`45;?$oWtwT< z+=p!z>AOjQOB5Ts%J5En*KU^ZwyUFy#i__=8NuptEGrRZD{pFN$osee8U@c4=JZYv z*_aR7j31iyO0!u{O^9S`qc5d!Cx)8eRpt150NJ*EfWdCAFUv5#s^5?3$M`HQ8 zDtMsFhRJ@dzr|nuRA;$U#+n8XBe??Ky?WXDt}K18y91zWeyQK*{;7uq!@pqRr`rCg zu3+dxk4;Lh=?ON>yf3Mi@0X#{X%@`v{vTVlSba3~yT~6eZI5xW0AF2rC*$}|5H_zA zf}WRg3^Nunk-E(m8rX0~JfFnrcHRdaL?O~1?#V#$35`ZMiBx9#+Nm6{`nmVMTjR%$ zl|~VVW&LIP7pdaFFvmBw1O2+L9q6+bwLhz$?Oic7*d`qj?9;paKn=W)&H*O!g0zCTY3-IpXs zP*hhjSJuax+sluN>d9Q{nt35>ZrA5MJ?XVC%~<-bTr}e5(kMI^YBbIC4GNDJO|u;=ho zM(AdJOc6UfBh`;Oc5I=;=7%KBk+;d3z<+!cO_i|EPd5nV86@Xn)p+^)cVO0G?jo8J zb-OZr7MBaORF(~Hx(oH>fno7SEG&*5+Zidb{o5^W&eOI`W!anPX=61HJcYDV4zyz} z4jlZy@X=cR;C^UWc3NOh*aWL`xVr~ne;R|F_+I}2auZQK-sZR1;<_SQO_alY=DpQ& zH__ARKY87K$o4&nM}*VLuR#`q0oKh50+nX}#43oMqFWs{G*;2X5a_s`q?ELJ*Y2&Inbp-w4bMoh8 z`&}G(OYNV=KoyLlhuGue#GxBOj@3H|ti!3IXoGcd{&xf)!{DvHtj&u}G0S%nO}o>f zq&21VotAGdE_LDxQ`eD|^7JZ9R)(_#r=Co0(TO5y$o@JG^!Vh#Lvx%?_ZsAC^WBxG zbo7Fq&dk9P1Kr-X)DZ7**qnaA`6%oE0AsT2sy2Vxp1J*O!m7(vhdQ_PcSy+cez~?O z<}9t%SBfUdj6m0OW5PB60AwP@;l-DJBEWxzKh3b?!xNAEsv3$>3w=iDs2K;?YBm1= zXSL~Q;TpEGC;XHKAm45`e=>+Qj^f6tSxp)CTB>;V&Z5sB+G>T8F|YNSuKA;W!&e$c zeTJvn62AIBw4NNp?KMm0jJAzxh16|4TWrAOJ;T|y z-RqXio12P})Uy`rE{TGUW;WZ`e3INEfpoUAtt3-Kezh*9&ngJ$9$V|RL|~RS=FZigTv*?2G32qS z804PSL;!a&OmVoJ&cwBkJoj;aYa%Cmc*@3jwR7=W*qfFdQ*-|Sme&3ua%J%&Y4R&j z>{2nQg18Ug)A3pTt=&%)HH@OH0hhexy^s_%(pA>N=TuiuGr{72rGmdpi(@n_-P2Vu z?E4iA%swK>{{SDX@VW9Qx4kw# z1p}$ZFwM*7#r8>)%^w*l8~{D`Boza3%s&!{MTB57(QdnMCF0gM=t|EX3vb;Qd2##- zVwLogv$QaqD7MdDK(P`?C$4D;U1mV)$h|H1sr7aGiT|cDQ^#^by-}wi0Ij zB9b5cwtj0&cy2${o#e**7-kb+lPJRF;HpoC)kpP|u3=PJwVPWf98tgI36oSDw~o2E5W4 zeaV^4{cnn3<9^a}JzEt9^Rurc=;Sxi+z=G%=^AIwI%=$8(KZg!d!=YD8M7xwTXzh| z32F}Vne5H)KwV*=jvv_KtF3YY(HbNSy&gQiARuc+_ z4lHt%VoV%q-0u`Wc;B?1$yxSMp|KyPAslF%{$%ltz&PR2+r3AJ(p6U<(dlQYc{Z~f z{pyMxmf8WK*~;(oTqw%P?ORj&dLgL7U^eDd!)VVeE}Gp-l*eW9xS@2i;FU12eYV*Q z+<}-mxjT-QOYNt%-|-<0?O`;}P8(BA!dwZ5xIW69bi31NqRx@jq9c|@x-yMH+KLUS z!Z;nDlz%u#cAE*~^b@t~WFSKs^>Z%sc#pR9xDtvcLAoIp+3ieC%?>3X zxBR9N^9ubw+Ic{#?9t+tFFdUTe~VB-xoOeg=(;(igo6!bOk{Ioth2mWs%KhQG0!TM z9fI2GvOdK;P5I~)o6jmvHZ*v_x}Loc+bQ+MD#2Xr(8{{WhElep#jf@PqQ7nLfeJ_Av-hxZQYzZYnI_fCGs zc|@Jg5>w-|GTI3-k_Z0)wfvQXwOdZo;{C6AdDNCg82M#Las8v0S8a`VyCD0T7ItU& zk$vKWyqoRAz|DkWC#m{mpZ@@OqyGT1?W`He+4}NN{{UqGAO6)AW;c!Hu-hy}hnaKR z__cS_dq6+?`Kq__AO2+@?$6Ng0iEQRXU-rZ+`#9BxH0JU5^jpM)n0Le7?)kpsT z*P}mA<4)tZHU9v~kPn**Q;Oq~>UQf8XMNlFG$Z}b`YzF0kH}6pR&7y9g<;Gb-q9)l z0H)u1wI`D;f!TLGyGOPZ@KsnH#UW%eb=9|fi1!5psp_g(BP#a86{>~e&t#SIfo|{| z0;v|w;gFosRcAJ}^IV@2e-e#l{{Si}af}}Ub{ZhrO3XtPWBX;2FoPHz!<++8yI;Un zF3jyMO@%hk;twBhGg>|OA!%wIQ5_cUEV%@=JHDaKaCm{i3qFCT50NBve^ zOIe6v56?kWED}ZyvO3@2_sJiF%I@1l$1+LqshResq&oQJkPniqrc?T+Wj`$Gt)z3r zZJmYuO9O^)0y%tDnB!LY7l!-AsJ@lJLvbc639IdwU zh1;nZ?jZK=H2yD=%o>U~+U?6-2;>W|Z+bA@{?PkDdMrn1Dc&n7YO5qMSiWN7S~>QQ z3x5`h8m*zk-&-|Ms(f`a@qIglW5(^bzp8c(w>aj`Nhrdx8e+*u)zn42Xd|A48{5Cd z5PmUPww19#H_^ipsl0K<#+X|p`CjCdS*z>9xBmcOxSly#iq9PNnRk(kTyybGrmbt4 zl3cb+w0M193yBIGMvu(u8ZK=pa3hffawtrDjQ*9)W%=e?O2Uk~8L8hSusy+!9lV+w zeC^_=hiR&)YJ`EZ`JeziJ^iq4^9rOjPNSSeUz{F)nlT5P%GW$(2fZ?~FJb#|XR2f~ zM99I=Nh7k21^BDZ+l&UH86d2c*#?A$5>6~;C@^5~;ehO+#M=NaiWO(LzkMvjv z($wI1vngxoUjew(*k|jn1Ztv3MOB+SUri>gJV07pVM_K*oWvu<{Ty{pro^Hd*zoJN zW_Psdr}akhN*8T54C)%VTFRyk<791%GYvVL>Nt*FO_zw_*qrc99ML_@nw|F?xG!7T z&7)>BPRfWq4QwaU$H?_I=zdF+JapR}zigfz40J36(bG)EJhDh+W!WLQ27pkZ2zCI4fH8$=a-vt(L%H~>lja)_>H#3+oui&o7v@=2I4pWd^s`!hU zD?@|0+Wn*;>o6W$uuo*=DW!$|7AgM#|*%ZGpjs<@Rf zFO$E5`QH6`Y<1bV^S3iAZOtruu}}-MSP^m>h}Tl(k>|N~8w>Z~xvj`J-Fg_^$2nh) zQRi{bBQ36~Sh0#N2KF#b^(qWY42HI0Hd|yGj|47UA_-W>Ikw~NcP@@TJa4vnW~W?t zn1s$}Q=;hU3z>N|=Bw0E7#iobuCccY{f-SO;=|YQp)kquyj}9+1zTWx2D4Co)0k3#XXjRj=GeN3rQc7{iSnm{5NpV zw=>$&^D0Md9wQF5HB>PE?)K;V_n}O&N(Z@V4$D!)_4ws89n4rC#a5FJ!64DtjIaI% ziz8qgd3J{7@mxYGTY|ti$v-`AKO~-ehjzDAUl$++X46ma#djMb2DPotmX08raXCYK z3}ZT=Dek0q20#3&Xs9Y=)6L)SZHL7;;&nV)`zHDQQ`@aXzvj^aKhTwz?J=w!?p^e2 zqxI*DFFQF`e6n_LEB)?7Xz6I?qjToagP|_9?u4rdA&LhVR5w2z6Jeex$0HHfwfSvv!@(MZZT`{W`&~tVM~lbh5`1EgQW|#^ z@^*6zi-PM82jINoqBqSZdF7U8o+a+N_?0a!;$w>>k%CWL4F~oWhwcm@H;CYPCnko~ zBBz9#<;~YNiu@F`5`Lk-=2h*M*5Tfxj=}D;Z`DxP$I&$0Lt4Syn#xAUKdac|bJbR( zu4%~|nC?7Qww1J!(gE4OdO#7vQggQ`V?VN>mUlVe7kDD|_*092M$4_AV(Sa6;f>Kf z!d$?!N8j)8NC`2l49xd8Uf+e2D&=f+`2(y^q&?lruKxglYn!0pp?ukm-2OVJKWC)+2L=BDS^>qwY1JOSVkvQMvUB3x>4}~Di(3fF^#74h}+v7N92RjO8DUr zIoW{J1Kzf=Y+l%6%ylbvR~T+x+q&IjScZ=p{_sK;x;zkBK2|C?+Wlxft8VO`OMYfwghQCnkl@4?J#!}|0l5GC~ zl6*8;tI8fDJAl=cFdm$pklW&o!qd&#_}YDDusZ0@1xZI+M_T#Z=58|G ztR6yP!gh}udv#}=NYNQR{h|K=r8++<8#hguVBSlx_>U*eD1Q#Uf&T!hFDA&w9~EPw z9lhbn9i9d6*8DtCR_w;n)KfT7U^twHW?MXQ82}#cUj$6~aN4L@mkhzMJSm5_=qWYv z)x>;|Y)i_glp5>##?jQo+kT;~hfm~aN0acgP2@*!E7%^fSlJeiT zr{lns8V8>O;!`!u`s+mc;KQFWgnTQZ%xWlfH7!>S#P3)tDRWpqL+(;yb*B-Mo=3LU2LAvaXt1E8BxHB7$=tkE zD%fF(&TCuSW~0Gvh^gbWbijO4I!1_cN3L*h;GuJ0BN*J)92~ChDYvZ6l#BD>{)PLoU8uGBw0eAurxiRvFvf;eA zs3>K#H*d@>_b4Tl#bA42JqlZVzoW)Ivhcu)VltTWG1?ZC8j?X`tE7fy4 zNu49Q-`s$LpyqyJp`F{fpWoF?K+l=3_XQ1LHx}u~l0^b5C9`r!?jrvH4yu&S4u}!0 z{z__$vQG0O?~_dvw`^+w%fusX6(WKAr#!mC{M4eF`j^>G!P&P?H~Z79GhF=m6m0aH z3#@%5NZvcqo<2QRt|?np2+r?F1^sRzV{*53*+lT1N?2_Pxl{sQJGen!npTG?} ztf)gPsHbLrR@b#*GTA~?Pk7AHp} zGBW(wdUvlr!?6d^Rt7(qIo9I~#9KT}YuwX&WGAAK@|x-iFzV?k>a#N3FVn5lqK&z3 z+`gwD1?jswZN6L5ej3Lnce!`QO$lFRmq*Y!=CTl0SlzK;P1-8XIdhEW_Nb996iao zJ2&Poq?j~K>vBnA8V+9-nvl9T20G2YRV1{#quYJ+vp=k_vKCU+FvUA(%r)dK$GmC9 z53dF}{e3Kb_ds36u__w8HikNCJ;c$l38WUYzyJ+?H|f<2Bud=Q%WB*4;sIgeLVL2b>+exK-I_O^s0ihe#w&5SDxE}~j;FocmB(KvtlI@nVb?~g zHDKp)ZzVi(z29ct6nm5QztKn=Y{Y4DnJnBe-!CNLE%h$F`1_PBkcjQXeo5f8wcNU- zX%0Z$ICrkr?^vI1hEQaRqB|y74Om%liaatj%m9V{xR6 zx$#or7=xNbCDuH_=#_!F-ZO(WxcDly0A}`dVO61;*7UXo`N7MPB*W5Y%fx_qtUT9_o$$SuewXiFg}g1%jcEss_$=nrV9uy$s-x5PgMd`2 zlQc_9ZQ1S#%yW)zVD(UmUN|w<9BtgYf7t^rMAVw+fXk;ex*Wvi>Z9JUdcXRUh$X(y zia?HRXE%C?z%ST#PKT13#J=4V_j-pr`|&_ky+m3JuN}_OI8_H~S!FYt1dr`@FQ?+V z2whV<7~aDT#(%vlbPkI1$+~N_BaebR9TX4{b85kK$ng4lM*$m~aj&^pmovSIUwe9u z#DBc@}wcF+dt{grwON6hwiwLdPZ3JoE9t6dl|$=G1zM;&;7cSN9`31X60 zy{wIzoAMm*?pajPDmKAMPnnr)Z?7~57_W5g-Ip{2aI970u=%ix7dM8T3IxL>mUj%- zz0w9pLU)%udh$f!W=8gt*$IXhUxz`-BLt3h+S_tJ)dr2g87~`oYkmrRt%@GjUwX3? zFjKP9X1N;oDs>_WB)_nKOeaa#VbtD zbQ!J&rBbiNUp-Z$;HqYnMB*8#=bMt!Vr`zy0sbCgJmfzlUHz611UF|}{{XV|ul@J? zwO4A*qFG;UZ=^C736*T6gfRwcwGY*B#(eF!er%8c>4 zS)TftTLTUI9CQkXkkn_WsC9G1CUgm=1PMW4CO`)^O&S zeC3C;m4u~A#*&6#L?D--?dC}+0SY5-qUOfPyy{R z&Cq?WUFwsedOfwosTko`PRRl1sQ!xS+C84e9vNE{5y{@u_wZSP6pi&=eLc!KU3R&$ zMB8)hrJ~bSKF8r0voA+p<`Qlm90>c+++WH3czzFP>K{FA!DBM$@vZeihIrT;1hP|( zIwCaNMT^oFW}Z5j*~$EVDRn*RjjEupqc8KCIpZ0RZS6Mrs`1BmIG1N$rxx2%IDv>! zxM^Zu(%`yWGi5Q>xzWVP-tKVrPr~*|b2ph>48^Ury~;r2mj3m&o5_U7GpKPGvVDi@ zRFG_iCK(U=Nv?az=G_In3QF$72Lm?kj*Xwb^{2wN8lMz5IHfI2oS6&9k5q8s8#NU+ z@@7+8q@RYjL)o(!CNnF(ii%o$agrw+0nd+eB67)UEr*hlMl-U=@2>=F7NTjuW~7Hk zL@vSLtwBa8X`zL$l0g##F86W*%0b$DoA!YU*zMG ziiNEw?VbvB2N{P!M-!!~exJVU1S-32sOYmrLe2B~@NdOr=BmW8lf9Mu#(lTC%?h*R z!|08qcb?7mBhjP8s?zkkSBqkp)9oYN2iRv1dZ(6(i~Z_c@BN&AiB+e>s;d1PT-YQ1 zoP2%io>(BZ_0~F@erohF zlQDLe=7ScW5@2J4H1R{_tbDJyZ^c)1VD`EWY1Zrm&?Kl}FL$+jC$NFV*0SpX_^uZ| z2`MLXu^f4seA+6&67UPHWJWj$Ae^9E`zmR}SkOhky%X}at@XGk8@Gy&+0{w8&dtF@ z`1?7F6t=!%ekxj8SJqC*TI+Q^$%NQm82ZTrLu}3-3ss6>amBOVi%BVnKIBIT!=j{w zHYU0E8lMGg5~zlbhEF(kw}6W!w6L_UJDYK^Po4o$3$L2|m3XDyzfK1K00nk8Tfu0M z4Pky)Hq7Rv&6VyPj<@KqVt8>7dCOa+>`>NyPMkpbD%fi9`mt3D9n5G|w@AoZ=gR9a z9adWlt~8Q8xw`~eTdS>-tcHf=XZOV*eO+9Yvvzf34vDjv;H1bhl9hwa+n@VB^x9fE zaVo(RJzMH}1O==g4K;Ne*S693tsQM+F#2uV9ow~qxh^IgDwng!Y1EaNuC09Yc6EH3 zDM}~0N{Q^p+?`%eF7m5BK`X>8`ndQWMD;1tIkB_NA$9Ndj~q$qbsR8HJD&|BF8f{m z7!|2=2*RYtYO;2tq>t-g*SIZ)BVP>_Kblfy0fN>X0P#U+F<4>2qk|8pbUGaGd%-v7 z(L%`wtmibYe5K0yIdpuo-!t8*KfIZ%pP9|~6vLK2+nw&@t2+{cq4HC+Hhpzkk#Py# z8wO4f3XMHHvrW2#SDi`Z2YFLR8|oXo-r6|9&oSVYnX7F_hcV29+ncJSxXEnPSZAbr z^p>OW9m`#@`yVx2o^43aN&4B32**EqyRmx>CL-|4c4UQz(oRwRvD@kmfuwfN?Av3X z7q_I7i)s7a)&1PLq@~TH+T0t-W*Y21fsC!jWqy-(hG zRaY^)-v0o&bOVs&nQ14UYMPndJo6IyXOZ2fyQwR#GU%f!avsMEzUdEBqUKn5cc)m4 z*K&h2*k-cgI>3_vptBKIWFFtU8 zbytoT7O-;%<=%+a$C<1=Kv7i9%s zE5xjfXb&YQi~etym_`eHHC}zmMn@P^<+B~?>-Q;H5CzuF{S<~PGewojdRC{8 z(s%@a4~NqLP?}-s?ZZW*!(+VNMV5JFp<2lWCKXdT&_xTK@C)av4@&*-+Iyt=lD*Sz zY6T|2;}T}EG|pf?E5q>Uz@{9U$k(&{ULGz^PHM6}dxt7`;SIs(VCFxny3dyqhHVs< z!&uSG*?XCKa)8qZIuLm)AX+VY@leFj*nk`W`<0l-X4!S%v5R)SuH;J(gtTuDHAWb7 zP8y9z7;9L}zNg@~#Wix8JG-^)@w%SPyR$XcO^Zg~s&(93W;gmRBQ#RR4-Ts(w9*fy za%O2U3w|qaOB8LBJg(Q*x8vZjvC%&e#%myM@#ZNVyeC2cI-OMIbfv5!jyiliR@FB0 z9b;#3=iG+Z%Oz$Y`6g>loq^nlw;qNG9lP|JScmioMAN=^Zy%H%I($|#TX#%K3e!hK z=wf#9?-uaWQj}Fn=ov`IdN}~S?bx>;iWJfsZ`%I=HI($znBSS)Pu=2{SOGCvV(Mt$ zXvZ?8Gs^`ak3VOqRbmWu`@!1-Ugd1hCi8kCbK$>$_^wR+FBqsLY_VlJfycG*RwbjV zrHPp`n906O+}Xf)4kP&zXE zgKh+ML}_s8V!~OS+Gir%E{tJYF373e>fR;#1Ezr%sG}0e5Q(h}isf@<@+YR)@!!Y^ zfwEOV*J%hGJNc^k(cf3H0oelH?Gf*z+}Zc}oL_Dnf)|U?Hj*9V0Kz~$zx!__*q%yo zN7#^;#ACRQnlW&J$uz$gd6_=ed=~Z$1%nExUWi0M;Vf{w&_c= z$qB4fXAE9l>w|6S^P!UY&<9BSIa8&}N&@|J5#p7QEQg<>xZQ05# zR}8VdPnRcptu-e7j(=ydt&`YZ+1(B9ZobSQU`K%D`%mcO9Sk9 z-10qC6>&0L(oXk1_SNW=s7>7bf!VryyOpY1Q%g0*mI~D!BPK2_YpfO13tJ{fHQMT{ zX(aKCk-gfO&YYHdX@SJuC!-@>3O8MdvWbrMUm^8JPV%!+7YEt=ZK~3K%8Ig_P;^h(tRzCF`eX3_ESy3*1*8o0Bu z*Js?KhEnNoBN}hb`m4BIjPeKN5u5i83Ua26@UR;-x}Ujpw4iI~?fgngoY7WgE#Q)O zUHN%*P=IQiK~#v@z1h=_Jh@W4GgE zOL!(`^l*^bXJwF?LtB~bi5J2&Y>^i_+(&YoO-E@k&!ng%EpMl$xsScP!ogD2O-EG9 znps^8ksF7HSc@-Jj`BL=v;kgqwDeKYZ532(W20lcKpy={*NX4$r|Zk;ee|RG=K?j!Q+#@TBDmwP5%J1*oku*%fjRGE9PC1$Lcn7X<)>u<#c8C?;`=c-UC2KqBLx2dxhc>5 z%lr|~{`TiT{4oBgE(k4v!Tf9Ku=Mk@Cewf4IBUDl-WRH2P5%I5M&jFm@;(dAafedH zkKtyzo=M=;dN<`PIe`ZKIF`Oo%ncMoP-X(td)?sD+P!BV}a^{1&3QAmac>`Qp$hCwz z$3buEipTVvlT+f@RW9-hVr8C5Skl%sTJ|Si7rs^KBD51;vZ_YDcS0%{bbGrtwxfvt z!t)F=<7M@C3y*KoChF(GQA(-Z}xF~ z&k_m7KSpPGx}%P^_%!{({{S>Xp5AE_y09wPz`hk!!_GUeb1zlrwE@~5W!KcdA%?87^~ zqF?b_O_{wO%I!6G3&px09u!cDvGMza0WbgA>t|@BaXph2o?Al{=AKOIA~Z`$Rhv0O3;u z-o3wx{{W5V^8Wy396SBm1JotLJr|WMHQi;m{V6chdRlYCPq{58qwbxv4k1B_05OX1{z;SXQ&M5H*pyb9c0rJ9 zG@3L4)UP|^{{UxKFQvhb;JL$_OAxnKsZKYBxsPCER(BrNzXUR)2-*5WcWo9P`}A-> zaZvfL0$ZjtLVude)ZgjFs3!bR5Az38M$2~hrq(*A^@CV{ok;_*h-PH0YlGRSz3d7F^c3gY zzw@{AO?J;#{;xKlyb*bFzUcZ`wML?jcw~jUsO~**(f+7Rcti#9vGtt!w%>{jc6Szc zs@YAG9f9KzvCcc#?agMnH1w(yONHTZPHH!s$%IxKSf0KE-QKlWRc_(9g(NI%#Zwv# zhmah;_2gJpWn2={;q|h)?-L0P_-F}UrL)sTJ9D#6B&nyNI*A<(KJz`xMnJ1l!4+Se zij2ZT9pM4i&h9@YB~0y^o2VIb&t2!$XLotBgANX6GXuEV_w8}fT*z4Td=`!MIDIum zbNBCSdm;YEBjfK`pD8$%H7!*PQon;9>v-GpL@IWmL5D>}higz9X=E+ZD{<~8N9Nj*n9*gx*NyAgXD!)sgX`cipTv9fk%nguR z+qhAEFA>qy?H(8W)z6c|`#bzc@*d_Q^_ZWX782ZzVsophxiRo7+PN$X{2(D3f~X><|9yIx$?iEAAtIHnD3YzF4a zrfUZ)o+C3Rk>04`%%(T0;z4_oqSZTAq|oY`bxsxr=S4QE73JA7x5wb7HF;PgYpeu% z_3%ULDnxB`r%pi#sHig+2RlKl1QnP7kp#fzER~Pxqxpo4@f!9zAW~{#52|Mi}pD-u9J?y|r_$oqyeGk=4F~6QZj6x!L|@ zV$uH9tIyd~_}graN$2vNQL)jzGg8It%GE-%7@(&;s;IvofLOORzT2}V2E^ZH=Weahn6I~AkI;vC)xYw_5c_gU;7D>`tN{{Z5Cps& z(8rh5Bf0czAGI@z4oa!2li726AsdL#2fEx>ZUc49?y7qqQ6o_&H+z$J?iv?=)Q0Xy+IjJEZsOb= z@939xX?^uSB^LSIL#)+Tat8-H-jIWL5y1Pbj>)la&N{y9x6XEh=BeE+`n$&Jwpv@> z-8?(iw>3jE#$%q=DR;+-cPplqtlgUjYLrc424@esQ{EEW=3RScyRLw=B@!~_zx8uY z-T>Wre-fwJZ-Gx14DUcmnYmOI5wzIy=A`V~MH}R3?EUBg?~5tdK$)7_9WBLMoy}}s zwU4<_b4cT^oYm|s(&AW+9L$!AwpwWb_1NwQkB1~?J-XW{+kf#sAbXDNH~#=a&6!*e zXD+LPBb4pQ8~_vD&w$<9X1?>vyVR{U3Q zrVaHPnS1^zSnRF!yizouq@3N0g&<`?Zm}p?E81)yWbsv2*4?i`Br#4+%nttmDo-$R zZfuzf?>wx_Z0$~MbxvF7Q%vSjyl`_-Ivf(ZtlEvSNc-N|z&d!@3OI#8`y_t~idyMI z9OpLH)lHPzC+wck#@%qYzroG_0PC!xsKD`9d;h-_EN?vw`7?gD;h1-_OD=qZ|fj) znD(=?(^Vu`jzMMiq-W^i*)A8VOfV=w%Q)zMi$wWnL~Q?gCt1DfXe zW&6-ki1Hn)C3Yc~T&?lUpHZ=_)0+_1aQiA|SJuPAD36PJEc-F}W6vas2(td85_Gk5x`+jq^3UwOS=9a|;|9 zp$Ub=J@<9l$5jKRWO^Pex1vUNT#8AHL%z!|&2yn8mJe_@5;5b5BTzx*W6f90`5D=E zfZzQR31*G956O`u+RSdTFQ}-gndegZr7}3_Ym!d73wQ*z1*g?*$=6<1P_f2VxQAPk zb-?wVU^$c-&7H)69cvya%?=}*wZH?a&zV{t9h*&cRwAg&X(D%Hm_TgktHk*W8<372 zbmq6XCMXp9?h@bkpFthoPRC<%6}uOZ++&>=baR`KsC^&`dQF;k7~JPw{CMH`lr^n& z*w944YF@*~PVOr|HL)BylMQ5rfIj+<6h0c+sN~*9rtgUEDs0-`i?;N!#$d%Lr)$Bn zmfH7&e(+U{BNOx5ZQPH%g@)%fiW`MuSavb7_=Pd7WOaMDZsU={iq$X~n5yOJTv+LVKW+vhl;`DnfjZWLxb_+*_Y@{r17PXnZJIPsenJ19 z7`MXf%**)fu6HS0&S@gnCr2RQ%c>DYEG=-!A=6IJ1qDR~Q(R6X0jQEt-usn7+aHIx2TQh?1a=>`xgQU~M(-+7!~Xzx>^99nI@D9Tay$#1 z08Re@wcK&MFddq2h8oY!Yca|vaIV=cmyLz>UQuXRIOT$hNq-Qk8V!M`(p{m%D?8(* z%0374SDEF9X^lSPXbGSnEl>&eimw!_mlB?q zm6AwxF*74?%#pxRF`kDKrIy&4Jka?PTPDA zpA}rF@x|_<=Q-Mad+aCI&^s- zavSRXuJp@WiVZzQRZU6FJo3s%?H_-=L>tSpl#%TJ0AVXEbmPS^jN0}IZKiHZv zO|`o~KsDa7baI&8m?jj71=Cp9>U>Ip#ivoHRUNx4xHSRVF0tm3I^g?|4M%ZW%rd_Z zrIrY!inccH=j?#j+tqNlJ8|LoprCw|gl9c2npPsjDgoJ}TIE^3%FTA8#-q zs&Uvz!dsJ(Q!t12_I|2pEvyC6Iiz^!(G{1;b}5Py=j>)JhR#1*4(Nk^ ztuOhDD7oW5D(P4TI7Qjbq8YSJ1jhWXzPxo_i8qmrwuPh3a7vk(&hLe!f7Yqg`494o zUhqDFdu`5Ys6e-Uo>Q6Q`%hZ)s$qC;?4WSh?@o5>fpd=~>NNiV{O+4u3}w~0wg-kV z@eitX$I9O{tnx*&@JN1}@}+@5_VI?AR>*YfOUK-+v>JI>$U9x9k;HIZ=?hP3m%g{| zUauz3c@V=LYQ43^>*XAL)tVo8kN*IgQH`kbAwtJR4$5QrqldRsQDFOcN%$kN>E?K4 z%+AT%kX()&2Q*riS@OP0M>bF9X*%g(0l8bId1cv}2j#&0li?8ti#A#Ez1np-FaH2i zb$FYOvHty+Jj3OXGs2_L=FAh<{g&R4>aQXAQF-%?qsE=a@!k+^{zTb)rg<@- zXl@te@_a(Z_Qa|#2?LmMk$K2&9^BiuH-{31%GSeE+2A=2oYU$y_15`&Wdu$bACtTT z3}EJCy}!!Vsudsn@E%aHY{HIwK7b8Q;+4Pr-eu>~;*T(H+Y>St`+Df9(90xwgmPq0 ztR0(7OUf^lJWk$swRO?kloALB!IoLK$%*50JmMI&Rah6hrj^eB0Mt|1CKGDBPkOZ=>%o<_!UGh1u$ zOJ%W|d@+(zW{)nK8+G@kbkot(Ig#i_g$aq%_Jd`TJM$VTC#b1z?<4J#LV5V#xhe0F%vdmmelpxc_OhtBz*3o7MvA&guT>WdBs z;7!+}P+}Mn!eEG2G|Y1w1|GKXfb#BBQ9-+9?ws?bYti@ zaX`aOn7YJYPrXyBeH?V%m%BLY-Ni)tDh6i8?#EvhPH^bj3)_BYz!jQLe2ktaU9A?@ z$PG<>bqx7osC+jERyy1fnP+2SyIbz)p%Ok>92*mI0C;#R(AZUGCyL`HHrCZkQuzHt zClUUNNld~i88rFLxO7gbl6mXmWh}b5*j~f$=#Ne0`xk-tmUy2avGuLul|8fLc3J^r zZ^PuC#;`X}?#ks(0aHY6Q!L=6nr3AUYn}VVtCYeyrgKZU-rd$0 zy008yW^?$aPbZ|z&c>P$fVWqPMFfr%)eSjEZznQ(DC=UHDF>ZXxspES<=kwavKVbn zC$zNY47-X~iDr5AbnD`XZC)kxj?mQQccY6$PiK7qz9;Up9NAA1n}w5v?(>#Mn&R9K z1vNyCjr*eR0_2rig`!HQJ=_NcXkBz>NAC|6IBrrqP2i(owqwJZ=Y6yCKq<)d1of~(!&uqbE8OBvq5Kf2C$sT9GI^x+_$$TX&vV+_ zg&i0a_*31Rw)dvywvEeVf>ERI{{YP@wS(3?t-~_4e9X5EFY78b5@yaa>IJ)yAU5^8 z!5C{m=i}m^EWxGCcd?>yE#h11jW4B_8(r7Sob<9=X{3I66IOZC6bAZ=Kx8L2(3$3Ru^pUr)c#j24YtX4`yy`6cCTY|$+*Utq zHhVYwLXWd0j&OAG{;4obSnn9j+Qu$9En_8YkvYRDWSn|y#UbhA;(Vto+mQ29W{dv5;#sY915EOY@k zb~uNB)Pq>K%W~Y;>-nQwJJ^PLkEWJfl_-pOi??UjmevM(` z7By>9=xlP7)_^lvK3!XPCjfX@-0y&$tC0Y~m(581%OkAr>QuWz7>b>a%rn%P-lmb+*qwv4{g@+DMz{AL*{vNf&Ip!b9ZYAZzM$rZW#{8p+=&5_K0T}Qggq|q}* z@$phyVdkavn$AT*6tAPG5)U06%la(_F^3p^JX(%nXP+UKa7%4(xm!)P_$_lJXuoHf zS};S43v!G8_ci8}l~q*rA@Y z>RmK!%}j5{l3O{GK3xIznPl6>Sm7UH{ME2oBQ7#Cs+TNd*>Al)tTG`fA zkI8eYp(XBr6Y}@0^2=(Gdk>7o3#uk#WCr6`dVni0uArx5Etc$lwr#XL{m4~DFe1Xl zFhRt2%iZ$_PCs%PQ&iT-1KV;2y$R~4MmJH3#W@)m)-&uXti|^e0_t{=d)*3UTw`7u zYuuf^99Zjtrm5)DJ06f?Q@po4hd}<|5*%^oHQk>#5%=h-`K(euF?P1_;G}|vBHa1h zAJd1;9Z_^9%Kh^lywGzwvm25qV-cCeh24iT zz}%kYP8UNneV568d=<=Ij%JwRjqPJ*_4)8wO3Yl)&{Wd5{p3pK2|I?FyS@Janv7=E zWRZ5i9Bn+Z!IC{XJ53Ppr<^{n3yxi-n~}NocdiD$D*Yv7Q9|*Rx98Ds(U{dXGc58l znr#K|>Z@M8*SztdCr->#Cp59OgT* zqOSvlt_*ux4^z=yIU7&d-RKonM&oChZIq>P(30n$dY)MOI_A>+Rh%N7&}{W93vHl& zz3R9PfLkN^aM*drEntA}4yn+Nu#$jP5UPmgC&5k5>o) zosSA`$fljWNjK?bEOGCP2LMINwOxjoa9O2|_h9XV&~;O8mC>A(Zv7+paZuDtn#A!fboBeM=DyduWFpy`9d;?XX{I=%nn`7oH)vn`y04>UWY3kvvs>op)nArA+lk^w z$qs!iU7%U-TH%(t(-xa_OPU z%jNf?xV9OHU|5utc#RY3C%!?vZxh^jcdEjUrby&$jcC6-!5y|*Qlgv9-hmXhLqBw0lOnzo-)kz$Wgn-9b4vENCDZx=&8!}Ij3-HaT?kOs1 zD4#Rl=DJMc_sytQB!(T(4Qp6+Cfow2QRo^wHx~CTAXPMQ$C!pR^Vg#7)Hn4Tr(OxK zbKRKo3O>WT)AU;glpg@N%M8j))5!`lT?I>R#^t3FXI| zd(u8a({t*DXh{Up()L5#@yr!vn6sMOy^U{pR8Cvma<-|G$0WbH(4Nzws%&1KS34`- z&bQHB6^(Or)n!>8T@Q*+IF+_=dxu^@QCQXbGwivFVH3u!%2s9^UU>9(q_~n+hfDOf`ReFBkz%*^=Iat4kHCeW;t0WaZ;B-ePYO$geIl0#HhdBYn%Yo z0_0wsZ1E^rYRYEL&SX1O7cJ~s?jLe#Yr$T?b1w_?K~XFw-sH3^(>Ek~$%id3rISW=Sc+|=#pvD~`D3XAui~#& zZDbYEGCJ6u0|CEKnP?{$F-wWeS*sjw$MUx|QeUYJ?l zbk{z5EH)g|Iitk~uiME+W>QkJJNsqVD>nKnsqIr)F77^Wn~HCqQd8y>6#jD{{dAtM z!5TS=(~c*L=9+n0$T`V2fOsgp>kFaGBF$S;Ilt8Y{80JjtF4>#ijC)Y29E_4vr^K< zlk)h4g zn-IySGCjr4cez%!UeA55w>XSjH%)*&vALW0*{K)IUE-C?N@HVaEzC7a4(wlsnkbnl zCoc}Fc4jTp)j)Om2PY2hd~T!Tn))Y?Qs>1Wa!}AuWxdO__;XW2NBX3rp@!O*b429q zzTZBIlqS<(uO(^3lJM?da-5e8B<242Bp~zS_bJ0~sn8@Xx3%1*NO+rY3|H_r+HCz* z8(U5~YKh?BHW$B;eU&3GO&0h<&E|eOSqrR|TF1IsT;py7rIW7dPi@ZY+!DE?mn1U^ znjYQS+kZu3n$wVTD~2n*$FpTxnY*f&=IeDpRglLmBdOooW4PU8>mhY5Yn#&l006af z)H0opmGAX9tfnJaDyny%(?iWT47)+O<}R<&Iia4i9SetOX0?>JG5%_T?q^m`$YSP7 z)lgHzgi>aEyL?_%92O|)Xx&tOcMIRSQpE8SP+Uv904WCIIFYK8c=tQFDzeGu?7Kd_ z!(ZG99V01X-%0DAQHSqUcaMa+Qs-wUUiDEY#|y*7JWagve|K6D6nHip<}~iTOrY-`j1bRR}Roa~%IDA5MMb^DEOfBVnD15d4mYh9hj}+p@p1 z8wtOOl~{{>*A9qpEM04X*PvN1DZWUsEaN@%>G z`Amxgr+&=rgPO_MGE`QxgdIbAy4?9MB8CmdxwFW1FFZ--a+U}qiY7I@ZFAmx)ZPwR zx3I<~k=1 zs0I;y-G2nrVqM&x?LEOXp4WgtQ^Y^roo4gmtiml$JOZzX+jVc>R@{?pfnDXe{h7CCzg@Yqwj`gf#cZX)@3aXl5P zXq_`$3v{;?aynMFD{-;aBUgryIQqOgt5eVxw&m9aOeM;|!__TCTM1)BZ(+qvQ$LIg z)ZwxJ0Pz8B;cc{7yiZ(j31|G(x&qJlu3wXUMwli7{mN!G&G1c(c2$Vmn%vi&a%$k+ zb?T;>o{L4%jdjw>!{a$E!u-@)5mLqki%*8d*$Y2OAL%~js=}l6L$tBlt1IPte>d1? zKr}T~43A%lUTKFq2&g2AM)uDS0=Ir!Y8$!0=<{l3biUxy76v@6iI(+k8sgi7 zlKC)@4xBh@gY7}|RIxSMxR?A9#^uTCtoG13uEgVvagCpP^m6pZDFJ-ID=@RNJN3F` zW3!vT;1!sg>sj6Y<&;u-Sb&o;Z@f)e@y`cZ-7hA-tw8OL6Y{7t#J7%BWywL$>OUrHj{Ih z+oG`)PBObAZQ`-WCZ-hsx|h z!mem0m5yT_9({Dz$ASlg;S%Gu@MUAX(iejx%WMJW7p*#$HsR616LpWT=DhEd&oP>H zabfvp>#XXhc60-ZZ7m>oZS1f{ywrAqZIzEU85~Cj1?EmyPMNvl4r_qQIR5};W45Nc z)5A_Okj~KyU0*X|ifN0xHaf33tj|45-PiiBTj629zPSEITJU6do7ry_E6Ihd4cCpv zWzn?7V%Il8@l(f4CwtuvUK-zkUZt)xA4u7v5=Eo!sQ#)PFG!u6fHp*_M(fbIu4IPy z2Tcdyy9%dZA?7XP8cWE{YlS&wskL=VXvIbt`EuL`@$d+J1tZKZaLs-P!D{5Ir}WT7 z&s~}C%TR<+Hc2XbF45lZ3zzG*`e2gM+Gk7JxzoXC>fG^(I3GwE#CI*`DGTFe*^tN% zx6?(7tcB6nz0PxPbr;Zg>bK*~mROqOPZT0nJ9x zDd=L&I4AlozX%qF;h;JDn|u}LhMd{i$L>`3gc~`HdA^qXRn7CA=;h0l`h;-)!i7NT zT4<{>=DcUG01+svrNfIn-S%OAy#D~vK~m8xa=p9;oyy(|hc><`8#PAZl%skEmw&{l z&(Xo%rKDs}r>Snc;rAhKjl1yS%TDA|5Z=wR*mRF?2e^NK1ztJ>lnw)qsyO{8B}a>q zZqZZIVeNik_Ov{W4|<+xw-Dxyt#Rg0BvWP~G2#<%`)}Obu<)=qMtOC{(TA`Yog`+` zwb9sE-@oux>l_2wP9G!7y6{&k%c<)oc;M&p?)RxELubXRLvpl77`Z%;G_cRK+e9{Q~vf+qPvn`vUwI%;R2@&Nj~v zZ9X*>V_fFJRyc;<$DM+)kIzdk5rdjnPeVxA#6pZ*34eXZpATzQrP}-?&w^HA(N5W> zrvg~WZc~_RZhi~Nro^iRv=t6}PU=8K+ra7g1@8QPXOFfyT|J_D%4bb1qjgeDWCk-p z00&dh1?9L*ZWsjKuVX*nSFqC3;~19DZrMc0cb8$2mTzQt6VIvB?_NcO7P|?mYh9xq zAir=YRnz=U`|^%Yo&93vHT>Ex<`20=i`(eBn{W{oH81;wC;nJX#T)+3svq*o`V9X7 zt$BERR>p9jp{Avl9VzN5*g@~+uToCKyUD@B;IwjK?ZF$M9Ikjpc)V zULN4E;`M8MogS{bvTxWtN`?Vv+&b6QTP3%0(z8TOyF-drI_?3<&TnSk(u@*wIOwF^ zSF0d#1+iRQz$j z?V6tVlBL5%_HSsT>qYkhxHvzvtC!QyXmIH(W{wIfH&s+RJmNT6cO5Q%3M%X}Y&NIO z>*yt-n=SHB5oxzwc`teLAArY0vaiQWT54;(8(!v(BW{`=I`dkcz1cW6$7O11p2qpy zOfpkV&5r`(UWb8Rrkq=RsQ6(PzEP(=5lkXjB!*lzq1}i5UHyl5FGKPpvJ}|WeO@_< z(Y9!4NP;NjZQHy8?k4>QRp|8FpUvlg ztTphmbaKjDcGXWExrs>pR@cf7$xX9(aD zQf-ziv+!at%y7z2J>C{ue%_52I^Ru5>%k$oAX>pSJx2Go)_R$4NVccLy=(9~sJ$Fi z?(8}%%=7qk@m_u_WiZgxLiaN94SR^@wYw}wn}&@n!}+PF9-DBr;7Xa|?N)ARa|)e?g~5*2=Q;1@uv}}+`hxhm++dYf4VX{o@$I^ImR4R6N z5XW%`)Kjx}3(fbB;qzW^%K2DH=Dx4^+%Wj_wrsqvxpzBoP?ul#JXZccCp3Y-q~dbF z_!cBM`zS$zMw7#k7C3@!+~Rer_3mOpojQZ<95W-8LxM*cnpYe%M#p3rlmc z*92%*V(l)t)FK#lWVF9mmnSg2?hl=3jIW2z{{SWb0OR~zlJanPuSwYrq-{PSOGSvk z(U*1C*jl|mV=?~#IgDWykGzqK)4cI59FKzZ zvCdiAJ~m^Y4p)zp@Y9l`aqK_%58R}7nkXgKDF^NqRjg+nY`5jXNwix?+38t_(mOO@ zdPnj$1zF-|=pF)@|oyYG<6ox9N_O#A}3?f#SoVkNf9|at**27Dy(Kva$=cz)bAidV* z_#`RO+-C4n5*psuE-ITQ+(hovN&YPq53F(3&eUpvu{}_Qw;C$GdR*5G+0}PA$a6i{ zw^Y#PoZYJcrAcR*^8IF30nt=G&CmZ6z!-;YHDrgz#+ z2IBmZUhQ?!uubV6(qA}z$7<`cvw?E&45ZKNPp&XX>)WDJLT`-Vw&&T=Ia5`gX7N#(0BgCcFKEB5 z@l~9_J*I_4Pu~u0>YmER>1Qgp?Q5e_0e0A+ZF!Y|pIJ)EkXY_WZa@>MoHE$xQmWXN z`JuNz717i*w$5T{$XR!Il*T$SY|YbM6sc-Du-4lnfKmyYCkJ+wNnS%;X5<5_f{oL= zf%l{rcY~XfZw8%}OM7nMoxZ+>*6u)C5)RP|w}+F}J>}ccG`pH!0{NBTySJN9itYR3 zuvcrFBnYu8lGf6qw!(;rmn8<)|K@8qdw;9bL)xhQtGJdvPt&aNHT zOzk%@4!1SeCyt6at&;pcG~r-&Mo8A()Kbt&nN0+10)& z`UrL4IH)(T7Qgls?VY0CjSvwRH!b)ibFY|i*W8%-Sm`gobm*1NV2SNMxjax8F!@;8 zsQ0e02Z`bDL{2K!Z<`CVf<@oR+fi=?pJ;Q=oitY=bZ%|9XqL!YDxoWHnYZsyy5+Z3 zVs`35nYILRSK^7XXAb3}y`&muzBB7u=i-txxsyio;r&&a;ti7_&;xrF6rekgu0I3= z!-JdJ@za0_v&U}Rf1*fo_JH}TG0e=458-V`asr4pdx+`HIJw7<^iFd%)w+HPNTFnf z-M2Ex3a*i@a5Y%{U2E7 zIo*fqdMYfDtnHlx{dD?<8?oGYrfsztG`q^Y9;vxVyo~6wb=9)J6Ow1@`5sJ#?!C{y zqLTu~9f#EB&FBxW(#mb9!@iEhgT}DRE(%*h8cayh&z+fEIfCn4DXX$?-77w%@V|bj zF$J1AUS&X*naq1^d0pHBVBwIzvy>MbU#0XvCF;XxaQOCiC?=ho$B`orT|l+04=aV_ zE|J_g7IR*Of@9+rh7UN(3_{mRf#yjK6j0FAev<{V68`|R_FwyJR(tpv9$ zf9{?i>b)|uvJ*CDw(*X9JC=LOB^ay2aQQnqiwlqv^7-c|? z7=}hUkTUl1Ag-5ce4*Ac#!PCljXX;wY+w3ptWwP32pOC$eM6IFapvyd_o`QuOZsp< zm?qL=O)}PEwJ!u4I;Lm7{dKufyJ8s-CTvPO+V*R8(HDxf&5B6Ifb&BtF%Ugxf7GiS z?M72UmDmgvl#)*sL!~Si%H~_&#SX*U4)NRW8BrRF*GW%1I0yCUgv3mIJN^rJ#)!%w z3=V4=%Zq{FtGZ?vxHbml`S_^AL%21^m;?LKT84s2U)pZ$bVqFxvm+d}KX-b$6(gPN zxucc4mAGl+g_%Qj`(;aR-IEb=#*dqnZrdoYR>L-Js*q zIyW`FthYRpnJn8kTlLihbW%Q+Oxarh0OM|pK}8M`i^F`5rK%iS-9!8Jb&b3f-9>kz&c`;+BVo08xBmdI$^QV?D)k#xwXP-!_OBR`mi0}1gnZp) zA*d3u%`Ndk15`IWnIqpVqE9Aok=|X>UwHOWiGhT9xAjh-A}J2ewv~1XD#Q( z?dkU_B+}s!7P!XiE7*M%JtuBQG@kw=MNTNB3 zfx42Ddn4Q3Zsip&55CAV>3wa}np-^t_U~hxPl8rcK2KGdf%h%VF3(cO>$%pqa<}Gq zbtu;;1FAa~m|;awUf|YR{ZRZunbACF(AxdpE79FsgT>hsvtQl03oo_v(^gc%>UT7~ zk&!27De*kDPEe80ODt9~1rF&hVKP3FDX$1DI%P&OPrHsTfWzI>zf{RjVbDY<1_;V@|ERehw zxw;;F6^eOaY<7|RzCSMYQYiQJA~v2T_wMS2E*iqy-PS)Z6#<$}=o#DMJQCHxyPH?v z!-(g>GB&ZtE4Us!wfLY5(bndtbWh4Mb?4$yTsoJ3Al<#9Ky&vj{P9!Kxq*&z-;nrs zDJa`fESt#cEcSHdQm{RDWUCtvdVFeDd9>OGhiVEJF3C%XZEWyT&*;nCVR+y`I-9J0 z99WG+JJ~B*$VWH3rxm5b_KrLw5RJnaYs)S@TU)NDOMBLK7)IOd_Btxzr;?s}y~_w} zjXZ|~^3<%Wu&hd#w^dH)8XLv@m!Q_|ZDbWPKAyF+nVw#AupT2_O3P!_c)lRlRW;9% zl6_+XG#@?+@yqZu+~fH59aK@%K|s)5d%V~YZ@Fe_A`Y5Lcjgj9#2r2=*2q=h^mS5I zv}@)v9p_B5UJ&Twjwz(OSYb zhLVR4b4wiQ4;7xoA*!Wz`;GJ+-YIEYFPnCo>zztr9Wxt<;^JR)o&RqdKZ^bI6&RF+tdn9X! z0F%5!=fE(k?#l)%5i2pmU6d-j7l7`K5EU)$O7);;5ef}_;wc- z_6N2wN7ffb98B!`w_y!ts98Z7pXy``=g{%KmNRVhBRu5}*-MuL}j2q!{#j-DuE2KuqU zIj@X%&A3?}&1iFGzP8nANU+9aF70qpx!b(J^gMVgkcQGR)4M3R)lsPQ(mCw)4c@Z? zI~}th<6Xa@!6ljS($!qZSl}EZZQSOI>6=1zzrk*NwfQr_b}o|$t->VSL2ouR@6?bk z<0bi4+#| zhKoK(=-65gZ5&B+iQ(Qq6*gsZmR}7eng(Fq(l{4)*zvmP^0~GjJ{DYa6WZ3=YMmT> z^Ebni(V5Q6lQ7HQ(GIJXp{{vyy-;k>8ru`ZA=5Zzw^6U+l~yW%g2zAB*NRQ!I4M{f z+I=}DZkdL}{?6Nc`E`uN;ahcEd?Ncf{AS+O2jGwHOT^M%3W|&_FN0IW8@H#@Z}-E>eB1 zF~)vDBfw>vx6Pqrr+dM$j^y_X0C@bCzK_WU+ZZF7n+t1m>R9<$EvGVgeAlY^8KJ^4 z2r(>vl8YvJw=q6VNV7(MKfQl&Ua+~b~J-0sIHA(#uv& z{IrqP(mtAJN4s}Ei_WpE9!w(;bZ`2za>w-xaf0G4mLU;+*mxB#Glnx6ppu=) zcv$%Nq$ShKch+s$tA`a4f%7*uO9eaObtKQHm5yV<)OaK^+5N2Aazk?kC>myPJr=gc z8VDibqRZ0BzpsUZfq2ns>Rov<^dEA(8Rmfcw;Baw4~!X{?8>yD9eR#F3f&0wPU^I* z$%-7*?_uN#_#hZj%Mb(BM=Al9c>(s=P%JyMI|28ss>LR5Ut3jO!rXPTw>9kVk8-A5 zIQBtOXx-}mZb&=V65rijph-?~1=mb{hqY_!p5oj4Di_Fa*>%5_0TanNh~vh}7ao~y z^A_TyzGfwkC(r77z-!={p=OQ0K$uIoGcSQwOb)%Hc5!Qz*HO;GGi4ee)%RmK4dTT8 z&5v!p+AC4fPn1aKM#gKY{8vRyEcGFg@U^aZBuHrJO;qCFQ`KokfbKW-$9HOfr_|m^FbpO884ftwD7V;y zpC#Se$ODUQbJELuTZPeA(!QRmnUX~(tkb3Kui(B~*#7`6*!IQj{XP=fT1v`Fcf7DY zg{}=fte~{@xzu~?wWt38o{fQy&49hGww*8E+Tgh_$JyI`pz@1>Y`ztXzYldoi<&c* zhjxYU#QT?(*HU27o72}y%U|92Dwv+qS7TU>W+h!FYPz{hvYem|MS$sGhB~0THgau2W4V>0?#~%cL3$A3%&6~t@E3Q@+EXxE_ zvnk_#J?U^vN%(z8f@gX=@aU#=VWTr$r!N&&q6WR0qtZ(&LsL@#mM6KIhiVT*DH&=*=#$N7^P!NgS0yPl%hsR_5h03Js)TB zD5i&Xn~u7pf;NU~?*9OC^9(h$qJEwg)v z!E||n(~=VNTzh8Z!sNJbpdi@vL0;Cijtt}ny?aFTuvXB?9Y(R8HRP~!U^J9Cl%eiv zhC5i4s_~$dm}R05ntM9~Usr?(}Y>)2c-F^XfBUuQvx!W`m+cP?V;hW^Wi^{7! zowLcsJeV)hQa#eOw8Dx|UP%|$#^+Ekn}>?aEVR-{@j8rKdn241r@N9DH1f+MoE3+L znH=Ua+<#eTAp(~_^&myCj&43=8AuZHvs2|u}O;-tl zhlWnY$9Ers`%huZ zn#QyM8aNA%SGg7{aL;#4@@5@a@?Q4#2jZi2jvkfI?T!hi^2uSZUgch{OwYb<#A~IS zro`rJ*c~miUtShgp_-z4rWogRB=$6QxQ^r!Y|=H?%m~yB+yZ_bB(!xdd*^Ur=3B$^ zSm%z~V{|z*o2-yaStO5cVtZujg5vUy(LM;AqA28h%dSqQ+^#RG16<)Oy6`7eo)LLf zLuR|N^HXMdZSplr$m0$BN)q6GpTTU%@X|Fdw=%596Axw6-%V2^b0laT$xLj|t9z0( z(KU@X8EwGbM=*#MTbZ%9LZg-@-`00Ol7eW1Y(x3|+|g&Yllwigq9F`0N7^Ddnm$M* z*o<&B&XKYk9QGW2%Rz{p;Bg+)7)SY5LlQllrPkKvc{t_e>1B_FSK@A(CuU@Evix&@ ze3USHj`e>PT(}qAUVshWZWrRWxjFi;Qjxp^`_XA@8rJN_DC4D~S-MDVFRg28j^oaB zTN{e@zg75!mi)Ep_PoX|A{TEhRp@3iaBq)kRF2s*aaJin%Hr&r{p(7?EVEq0mw$St zSs>py2D^uc1tXXtXa&lpOGBs6zvQ&xiOQol?RI!1-IMD%HPW@bYCk0ts$3h{fA`gO z>6*hJZgA&2s&?s_MrOCa+^Pwx9MO|5mkI22=P;2PArT!cX3lIy!--bnmjsB~W=8e_ zuV-HLBhkgjTPL!niagnwYjN!AqQiS{kmunQn`>DuJ6cRM*KaI7 z-({y^1@0U!T;s!D7FgF3=eg}`wbxD;=CsF;U)fXA?HKD2 z_Hq9JMJD0-t|GsRaHXkh`z^`$Eqp>LJB?cBXfM;o$+F@*$k@)&0>w^g%ZoR!Xf3%u z_1n5gnf0w|U_8yuxvmq8j&XKY$)dVvfu+T|j(t=nwVumdfT@+)eNVwe=Nsi#omISR zhUwb#DmP5x+Yc3SH3O~9%bZy&wadc(vRN)j=2BQ3!OgY)3eb2A(1&p3n&Q!>_eB%8 zA=f#Ff|?vYqO&ojr;YVOp{Z7hHDEEe85^eHO#Pf@s}O_%8P4QJ4}0+tw)GF@oSt9C;jLMpG^hxn5=t~qqCcoD_(IK zHp=eM;+puwdrjxBLu3RnhDlYG^X|sCBlAUKtYs@LM^AVD+HF2xilq%SW=BlvV;$%6 zQ%i|c!uK{NT=(!nmC?^p=_;P*+nk&ShjOnqRV*!V8KnLV099%$9Z~IZ{pCV#nXad> zSf3GerOoW*?%=3C-(vT_1ig}bxs@B8rM_s`H03SL*$IxbV!m$lhUKnt%Az*r-8iNl zc9!e&Og^f0`yp@_bGwrSWtuOWlCa4JKnu0}JXLTzU>2!GhM9N;G%RVA*U+bC?A<^P zZpii2yc_I~=#rgh4B2!gJ(Cdqd^Jty>wkUecX^rz3!zIC#2LM7=&uI@o5NHpE5#t~ zaOkX=dbvhMBxK-2xg>bARR+&)Jhi&DNfYay7&IKpm2XKYpnXHbM+^Ls*r}s}AQ_b{ zB|Bkdna7X0Spag&V2aM&m<6>uXrFI_c2GP@QUJ|<2<%%%A|JXGH3B$V=_GccO(cyO zfp@tHtfrc(OS*P|5#AQmYpZ0c%y=^Qw}KaAB!D85;YW`BuNg03t5U$`*^Xm?`K!k` zXpByawb|EH<73)CG-9fV`JHdnR{i%UIiVjfv<9I~bGCWU7J*E^a$+3693=+;wYXzr9g)L>x<{dwcXz z8Qa=x8Szt~bGL<_K8=@x^bog~MC$4Kt+%F9%cCS2(x&$kGAZ6IZQw5}_xT>yp z@@8oqZ%i)X_-#%nQ|Fk5U^s~R0pPuJW;RNj525;N9djwEAZGAKCV&CW-;!Jp1j4p& z1pfdMZ4E?1HZVP`JO%gwIg-4~ZT9yO+nK{$-!;ObB*jmg*Zt@B{ofL&VSCCal)P#>nw#Lo$m1iSEQ*$aDQBGZ^F&wDdGb_EOn(@0cH0 z9aDpO{p%`jAaFdtc_y8!{{VJQwa2Pyb%WEw75IgVo884K zXS49v+?0&%@!*l3wZeH)X`&)ncTU$Y4&<>N)cWal6eP9x?0~IG-RpC=DOpuP3JAb! zk6l%Y@HZp7?p0|VV`x7WYP<}fE_}VHMlIAdAnWH&)iNP-;H|Nvn)8~LIQ?R*zAnf-lcR`dR;G+GjOenpO0<#Yn*KLh zj5a$o1IYoy+j-yO5qwV*hXKH9u?d}F0|_1Hl3aN9%TYPqN0xb3#G%A?<{El;XZk*$ zBl>4IKXS}uzZDZClCG+1$=`XZWHP$_{{YchwY5D8`(KZTPB|WKcgc~K_MCdG-Xu)8 ztk>mla?r+o7i*tsW}bJIGe~$6c&&2um~?jr-IaPag3WUO0DbDCEL-5N!D$9nl9r)h z&6(YiWKxl~$mi)`ehP&%Y}=j%5{z!*bBgH3CYs}`iFbO1;APF5;G}e!etc9QoR;au zXohoXru6KGyE#BU(L9kXVqrcfIp{1s$YX7j!-|z1_Pa^U)Y~_SOb0i)J^|_6a_QWQ z=mbdd_t_4acXwdxbvBK_o}aZpE!Z45NBv9E;s_vc}I1TPAbGR*L^&ZM5!U}ysN@8lNOXK*Tk zS}Utq*z$prFzp9b;C!t5?db61xGl5zKhXF~+WfiXmC^zB0pLBsXdrHCadlJ-&$1u@ z$)mV01Cu`2b=m1b(029Uoha-&&Cms5@vyu(+9x&*_uQ?}MGo=ONXtk8wntbV^m=+rL+LVulRcGqsG_K5 zX1T`TIQ3_O?E14zG2;?Ab1P^gwpK{iWIV2*@@Guyipt7^26!R7S>J01T_2;NbFk=V z?2X)KL(bgPK1=e&vlEe&UajkkK5gNatD~Tn-nosVV_4QRL3=b0ios#=w*KX}+jG2V z9{&J>#Nm3s+`0HN@#S_U#vQrB=6hVwK)v#;Em?xPF$-mo0B&Aw$MRdOcPOI`J+^Zl zRZ7Y#O6(?*I$SOaTDA*F_FGUs`}675cj2C#`NkS72C8h%rfzme#pS}*RlLE0`?opS z`X9f+Xo$q<=;Rd8NhK>U=@{(+=c)-ib6P{0g!9d*T{!2K-1iVEp?Ix)Ze^Z0+1(V; zh@fVzZn~@W5th>q#-QufSEY!TXL~dn72Sq=jBN6;LnsFEKe*kzJ?iuLZzO(u4KASV zM`%kL!v4JzpJuamTJ1W!f~6lVoeP}LTyR7-XDO<7`|978IXpS4G!oOcdr0Q%!u|@= zGtyN?=$m-n@IYrXbvgQ~$J<}Ea8Xh^eJ-a*?@vlQ4T z=i}xKBiku1l^Y#>N|%$7qxFF-B>*0CI{$Q zCo$c0%u{Btyk!3Xv>coDK;XV(51pPqHt)Ps^6}sBej|ur^1BLjLwNT^ zxO+g#WP7Y4zpxv_#P#YIw?7V+9AVj@j-7zI zM#dXql=Ht^Ti?wP{{Ri(xUFPWb(nNhz9ZT$)Yx!oF60+i2l86}<#@FoDY6Wo8laKT zRxz)H5N+%7^^XEO^jD?-0B1ebFv`n^-0wBc-g&rj<8|v;*1=)d^Q;=3v{hCEu5JXG zyZ4&?tMvZvslJX(KBfwz6s&?t0ggwsfJOVj{1)?THbW4j!(PdtbHfMw+!rmF4M=xF zHNU+($>ee45LIl(EdBfrjnY%RagN&dPfmZ?UHpF|8#ftTG<)N3(Q^^O(3A2jHGvQP zn;p*uX#{VN19+2&gp2%Ee*&|%X5D07whmm;?Ua3tG>$vp#4ldi#%}gjHw}AsURAYm ziRQzY$9BxEu<>{FUdgiX5wp)@^pcue5z|ZEc>e&)W4s-o66&l9Nc`RM%KO-QoC>ET z!WyO+>1}2m4^&zCU~A%QbFtd%$G=oIt)vk0?N1f*(dmR&NCrm=T%Wd+Hxbo&9w|vn zL$s4&IE&o`63x7dVZn_&$mRgQ1?(7|L=>2O)fH2+7#J?%SCeh2mmI_5#-gH?lvKxb z+279g)bkb{SF!Lt`Sj=J%Tel>6;u?MOt@7oW2)wcpGu}n=;Xid<~GrJb_UyF^`ZO> zjv9B}GM5&4z}Q;p82Kz@cz&b~0{nnNrp3h>^JrMt3Xfm4!;KvaL(7e$0fuoZI0t*Hg=bRG4Fm$6%?{W?9JuI>tp3FvtNb8-}rh19|3+w?MbzK*SD8_QbrHztV$1lA?$lJW>-dAsh2)qv_p9zo!$HQ*X)JJ{vw{9owf=JpALkM=}o z_tkBr(-_0ap`W+f!kjB!_q#lpBoP&wBA6CVLxMjcw&7 z9XwBtJT9QkR(Nj99ivI_ArxbMy$k;Uo&vTSO0Al4_4kt-e&w19$ayrtu=>9$)RdL9 z?4Aw8leLf4uDg3DUgLESl`LYXYj&!u7ltRzfZ-6-(V9{{{WUi ze&VoRPH6=&FH4VxVTaYN&IN%{3Tfb=iU%?VUhmYCujGZ*;_ajCIjsjKe3_A7 zCPa#v?(6SjzP&*g`_^A*B6U78AeSxoUvVLG{{W}qpZ9a+@-x4b58Bx`!HuP91d;2c zi)+0*oBmE0k@BbCt6QJXlImBxPJjK7Ka*-uFS03$j1Z7A`Y zI@S%`wkMI%T$D#NZjNR)NZvIM)Gt3WFlH=cLqNDjF#KAgC|Kuq*jb#8?(6<5$N4|O z+&7m6ba8yU`BcaD0y$!RRtn~_W(%5f?GJ(Ev5a$?_clg4IT@qa_SlPYy7k&x$ZF!= zLi^i8-QtFA9?a9@)b5r%u-7-#lZEZc%ZKCqtoSneT+gETpFaNpT(5=`4Xlz1n>SE+ z_g!q_tU2MXrkA%F5(C~BpD;^DRQhVRIvJt693GG0)q)w^*E_KA4|nz#*L+Wrz>3mp#XrQDQR3LqRms^&7aIYFLT4@At1xUA|8r6UbF=BPDF?mUp?qg1~eG`?{elvdUb@ z8*+LkODSu?`JwX8_-b7wPq7}~MWmX5Mf7c=qmoLeG|g_n<`p?@DTUCpwpps8`J|F} z$s_J>sVU5v(UA7N!R$IorMCI9=#O@^+jW?`>PFn6JWw-utB zv@G&9?-oVov60ql&(;#!c1SqKAb-smsBsl8aQ^O#6fG4)S?z-cdiDhT(tsd z+Cy!X4aDGcZ2Y&e=iZFvB-=HVbHXN#!#(^~b2VIi00%f79PJhQNngJ8wBf29G&`ri zweaYqqL>PS@mgOUJiH{wdtJT8M>t*A`RH>nkmymA+o5TCVj|8q3EtgX{X z5xg?!o!an4L=@Z`r;C?)q+g1jz%)B6Q?p-QistGtZ^QCdp{0S$2Q`xIqtHnX%IkIJ zl*mDK@`P+qKsezbBv$Ru>JfdvT z_cu|lza_7w@`JFrTL^~&mHpx-u5M42mOs`mVDbnycNeO7WK{FWPJl7L-I3aFC7WMS z9(LiqY9&6lXIv4S2+Hn=w5 zM?2o;{%V#pPpX0+z09fxN%;DJg{xNbimYLI89u3?KzHnbB?wy zE2A!6N$NA}9yc8ACfTf=ycv2gSAUfp2NQ+#xW>xG15T%NlpFQEfwCWm?B2rd9Paad zpo<85j*-scZn_s*-t*w9bNJp+x_{fv_l*fRjSbbhFJz|jPqDDR)q7(`{{RV?-~Md_ z$F^I^?gcbXi)iG;Aa;^6mR8Ab@LCAJy)1rKIe3tCd8NTQhc0SB;#!O2&}_6%bFc~L zd?W%3+vIUDW*ZZBZVX_kD;n%Nl1x4~#`tPGZ|Ck)u~qk_*@5J*K`@dbXKQUxsNG`b z`ls+#qArP!n>DS(`;}}j)J1mZW@4$E^J=wASDM#<9vu_shj!;bHSTrpPEZo!Nxwp+ zVGd}M;-5S@O}&DU45s{wq$XkBJ1deH_f7>eGDFDgHv3!^@N(vlFNY;kSlCOQnKY~AX=UBRkAjdNN29d^iRii}gA=XCfKbNZJ3SB% z8XZ>h8dmLRllWZ=bJpRY$1UBiQNiBuuoJbuzbmaC#%&w+e;?mS_W89?-AXtMb@wG_ z(2e?me;`7Y)uVl z{{V-n5T66ZdHp>^@y6$wTpm4gU9N}vFHOcFZ~c(Y_qO^rpkJsU{%gwlx%9aCcYI8D zlgxJ!iC)aPFLR==G)&8sX634~Tr_y)ZgZ>VEWN6>~-&z}DU6{1yBY$<8f_(~8Qxv^1QI&DG<$ersu-I8EhTna$QY_By*$ z(}I?gHX8U~sSadrkZ&yD2x+%J1?(7J&Ea@6V+?_lKK9QeZ`SM0Ho`s5*wwqT3#8s? z+b74*GqyxrH8$7Q;j|buE)?{+Iv2X+9=w)q<@wFsz+87DIL&{YHaEBSV4L+QE5(^- zyNLHGoBXDc+Hgq2>pb%o9t*dYZeGp1v`PzYaOR#~w+nts$l&WX=PSRysz*s?xc8`d zHs`@}yW6k#_#him6J~|iu&^?dvK zrxrQA1)b4BH6yfZU2=I|%2?ygCS#i**SMz5E=S2PO&Q!(K&V_UZ|tTswVOBorN!MF zV3$$Fx~3hKj%$f^te7<_XtEEre~?jX*){P%JAOuv*O5yR1^T;^X=_ibqG-Db2n&n= zzTL@L8}oX(JJV?;+)tgYxYZK>0DNy@y}doI9qKL62bL$s{{S6zPiJefmoemt)Zy-c z=a(;s9tw*X_MG1S{SmOQxpQ9bS$N$<%eB`!TZ$=D8=XtM9v%p3F3>qWg^D^qIjLl0 z)xF&QjT}{%&3c!=)&SU^?qyoT*x0an1-6-Geu3%6`@&pRpDT@b@i%*U|uH1G&* zWP7yfUAZY&W_41P*9jP;+VvoZOu~%U!c`(NW=B`M$CDw`-W@uGJ)>+37NY zmm@jZ6pI0dKUJ@~ zSt@Y2s$|fe`*|K?qFtf0u;NhGv5peBcV@N!0KO`{MO6SUY>kk#AMBzSo)JSwv{E^e z#2Dwe?%}b7HnlZzm7$#RSAAg1ZvD z4#>-Pyhq#!MXJP6;ZJ04?UQcxR|46$*F!X=mSY8r`FQfOuEn8Unc3=WQkrPpT<9uE zuX zfX@U_Ng#05jBT{$b?B#Mr;v;;%*vp&i-OIfP3@wu*xhD;FEzToXdFP6izrTAAfLlBt2E#O$=7s z;jv-+Lil5iutjUy{dw5|Fw{|zByM{_8asxI+^Z__nthR}lM}-r^O&N$A5{l4%=mS` zdh%Cd^*FX5#?(HJk6RarfNMN%oW2B5j;^+7T-?sde$})eB|LQZsgHcevOD@mvqA#i z(cu(WWPnp+xMgu4tKPKS9|Qi1Y(|3+^VU+*&~E_%lb1kw>(j+e$oA1}w#;DI-5ZV> zPglFplT~YtEz0~&(Rwq5;Id6eCK%ZRj=A4$N5k(_Fx)#G*{nOWiLsl*oUx6{b>vS4 zVzO#Fs9gH0eDYfQI^>?KAo1zxH$L60cxb3@-s=;Z{{RG)*n_0Z2Wzp%qNrqfXm)oE zFY7L*dKe&ilegYK1U6ZvoQARbG5P&&3bUNYXmfa#BvhftvgZqHr{Ag#G|R#$9i5Z($vF^S6Rd;Osv0c(Rq-uTw>RJ&nE^B4TG`Znsg)}tun@5c| zI4o%+L4A1WRlF*?2+9*s$e9rjr&?ru}%chs`JyORkp|P+%!ulqysSuDC((fE=%&{ zwzmVH_IV;$MJUgAY6nH6-t^_wVU|mPlI(5|cNgZ2a<%jw?Q4t_FMUH)*2c#6V*`#*cnkOV>#Czmiao?N{72pW5cdbjGfqS+SWYJBWMgw#pmq=5f*IPJ z37CyL>*LaSR0o#oA@x%>072xBQ#B=+W_)i6uGHqn+`k&tvUX&0j3`!%1=d=`eX%pt=~IG}RrTYf~W>V;lA4q<*w z;GwO*9H_(;k;@KeIl$}13Vqu5w=0y@L|u^1{=b^*W^0^zDdVMl$5&(nRXr^$X{2$I zU3nhllphduy@t0{any`~xt;6e`zqe@7@waluA4huBX_QM6T_8|0t76P`b)=8a=#o6 zh2iD*09i0W6hk}TW8S0excdEz+ouEts%AjgU6)g@a=TGV`P#{cuWlW|Qn-Uwvs3-* zmDRO8IbYlm45^x0qUvsAnN}%jSp}o@o_LV0Q$ZH+IsKA)sf%NRXG@!hBn3K%GBt$e zvG^)=aJU@Nw~1EeY|}pF_GilJWu%p{YUbE=a$5jS!(__ynWL#pmXcvhB#v#F-mmXm z<6_%)g>cfvQAxYr-GmI_@k?rEDItz&Bw&@S;22L|%c`{c14_%t`16hJfLZ!>hL=f59CvKh%_7P+I{mIginjQKjn^srlwy^k zuI8&{QNtIU9J%Zf3M@U;^*OhIVc_0eRj8`_R}J8efq139W@n#K8?#_4{8T{#6OmhGv)YT&|V!m%nk>_M-4BxDZ`b7CU*bBC*E0bt@do`rc8 zO&%39@Ya{M^2kKI&AZmF90O&{&JpI0J6yke$Hw7s_{T2Q(e(CQFA`;2HGZIckt^!p zbkj@y=sji)1Qg7~FrDEMzS2jU*Kc<(lDmc0Ho711nq2*zlbX*iEMTmPRXi8J=g#}hj;#3rF=BUHU!lY939K5 zYbqWNnh$pcq;(z?*sRt#8~vqHqLza2oxb|I%cFFT(=%14GB&o%YjozC zGPLQGCTO>^)10NP)m)>m%v{WtwTOOO+TK5oim|b4yOU`hX%b(XSmc&zgELrhu;{fIPRJZmmT6r5$&6pO&gdKvG7CxTKHNEKjneH#B}16Q zlU5M${sa!8EWI}4{@z}hQ5hI?8JygqfM381EVX+`d;5+50KWyVtIaMM1ckBK#t+0@ zWpNNP$X(3*0`c+w&r>hz&$u*6Vc+sZDOw8wLyT{9*|=znQA3g|715WcJf1}8;{p2e zDE)0SD>inzH@8C(`D%kv4$I4tipfknJzFMj5gV*$w)uZYlRdd}FmM`suB}r7Smrx0 z0agT)ncfQ21mw)^7fx~K!b|{WL9cm1p8=L<=We4>-_01P{{VWp;77=)pKR{G4n50m zKM<&EDBbL{-lg+8zECvTU9-76$C8v!BY*uRr()C(G?k-66@XkQ>oRK=qxX?kR2dzR z^W%PsJG;(rm;SDZ?N3lK)Rm*Q=DV}19%N~AiF2>5*1fjhNY^(w1KheiDu|o;yl&F^ zCErEWmnNbHxaPed<{{SNy?O#sU zoEp}P0_%iHy_RJebQikx3T>6aBzPWR!+m{Yr_B>)$l+N5^E}oz=kvKyepUbC`1yX`F5oYj(zx~L zqB5{Z;vIW0XnxD#A}I;OqU?MB02DTS3ki*&j4m$M_tk5UJimrnarO6JTj+-uUfPR% z(=#`S(%o06GXbNK`D4SP15nX*eZ=q{p9Rgi4+cI&nARoyI zwOQoz@w$h>Pb=bymvfrSDi6ftzF3&)kM1Co8;v;XqI|%1TyyKncfO`=%jH4?#L9=?F|JfcH_2t+oBZwOAy4nH1RkO+(2KK zb51io`K*S`iH;1){W+$(gLkcb?Y}_lmCceE+h`!+&Hd_>s_18~m^d}ifqh@Y;-+Q` zPZ7;gQJ&pDH21n^ds=a@;G1UU^scqj2k#(<{nnl#`|s4Qysp*Fy}lMzP9+3cw@thH zm0n8PiE|SDKETi*2tH`xZQS;b<{|YJrekQD&^f=sRwVOwol-|;ungMqKsr->OTBc+ z_0h@h9hX@%Hw$G`lA>2!Gqdqgzf;=iq&=qT+D_c{b+l2lQa-ksd(=6ab>fI_SWB(( zDUs85E^?0ac1U}oeo@%e@JsY`<+?N8uTLW)Xls5w6!bC7J8yoL(JsSbw74x*L9y&H zTAK)?rG!3NWRRa>h^0KGt#jJVPgLepwr9GoUR=2gDf)@qI{Hbj=fwnpgN^h|WrJOP z0o7<7y{l{5-685w%Gx;TCbK2DvZ<1#Ru1gx!0MEO4z0ERtDcuHE_mKtAQ?5YQe>4QLI4t~DcX~bO*s>qp>ifab# zufHu-Nm^X@TPe&?7nz7vRhBf%Xy2}l0U3@VJvK?Qybyi}P8SP2=G<+=r^Os1(Dcru zBUXHs6;$xSQB^$9Q~Hs}`+&ImtGH@7cdm7^f;p%%A6G798Xa-q-iWvzyM!u?Um1J6 zQv+ZQB`wDc*%A)q@Or!YEa)$?@4YAabY0!qUDMS_7y#qS=>@N%kha;rNw>3oR00m| zf1+^Z%HN9ZMsA4>hKDh46bD}_jQdtkKf=3S(LhqD)_6yK(GV@c4V<4mkD?`e6setW z-nZbC`nMV``(4R>hktfbWDT?QR;i>7%+l)>0PC8?Nx}CXD=MKMV%!w-NLe3si#(Z>MqSv0hd&!8G)^1TVWI^wl0d z$Xioa4iSdcViUT;78C1Q>%?6&xQ%@E^%}`g{o!86@ths9?_8YuX(ToccW2_HeS;o& zTY~0+lzh`FNNqEZMfFlRRo-n#@;L&t%+NfU2M%+?#rr$&ulc(7jTRcq^LG~x_=5Ai_9UzWoJ2bOfoex7f9!3;z>=v zWCV{rzTz&D=YdH_H2(6Qk-$%x?y&y&_bS5feT%K$p2u(r8h6O~i=Own_UfOO?XhcZ z)iBA~x3D^?AtGk?cWAP(^z>gRGPCrcTGDgfm+)S#4osohc#E$b*r}UGh(npy1X+6y z3omDK_kW`KzvVdYKXcOf*TTq&*>g2ri?tSBNzqd88+Pe!6x7k%GhW96#q*nVTA^DW z?m#(lP%s`Rf+s#xJ%g^m6>6BW_UU8Yudw84Qq92KF z<9qp?)vwD%*^f8ds>`75Q(N>@5)LMuU&AT~{ThC-*>!Muvch`sz4Mv^8+Qs&3N4Q{uSLdxt}@k#1)vdLD! z$~=0e2=rjq{mA0Tvi*Z?F)-n>O5F=qWtih=TfJ*D$WFZ$muQciP-JhluYQXQD|2KI z%H3~u>hWVN^5o4e9y?J5Jdk!@1f=JU?$cd#=&8(1u``eaE0~@e<}Zz+Slq|!e5$*p z4YOl&UIv7Q>K9hD$m~v)@IB3&u*(9&$g0suVsEW;#>nm_=_JEoWYI_HeY6^BJtenU zf#ABhy)w!iWMjKU&d$Mf$xEkep60gprP}x~7Q+r518U|Xg%)YVGX)XGw`iV&?~esbh%wa73bR>LAS5$}M!-TFg4Ojyl>J zs#&RK7miro3tl>c6@UR34r%aTpYrf$j!#Fn)n|`*+l-;$Xn5HMnZ^py98ow%bbI^y ztqF}H!eN&Ds${8K3#Y>*gvjV0BzZHl)@AvHgu$@5VXvANQ_mh-jPI8B=f}NzBgL%u zWdL(44~$~?b`^LLTn_wln7}FSu23Nd-OuF@GHQ1HohAuVZ0>lU7LiqXby~Ye39N zpGU^$I?Nq(3*E)Tk_pfalQR3j@f)Y z-)FX~4BD(J3ffwT*)xTur!KSOaN-C*B8klw^|lSSiut1qma7J@t)r7P6%e?MJ%=}r zqnF8hiv}r;Y+XJrfnqVqQ5;#G%-0VfcA7~#5zCietLFYs!kFdTA5Tkt z_R4BN`6Iyalafn*vO&auf7NJl%sPgAJ=kMnY;em7jy4Vqu+WZ*4Ti0tuh{rb9^8+O z&hwC5GjBM!pBw4is`)^cN^O^(rX0+CO>hs*!r>EtQgP1`9(tJDUO(qXIG+<7(8%6E z8My@>8ylssnfbj&TzIN9qk8xt9joyJiqJ(9DA@8@Zyx3Jc*m2K{I1diTS<5yV;R&Q zyw%zkxM5SV{H~vXU`%ZT>kUgp)gv$gx(fqkN|;rOddAB4YAx$^{)=l0QQRu5M}kts z$6v9_L(k)?p^NQvu)JCd9IwwVTfa*(yTPt^w_Z2m zyzIU<7b|jgPJ1VYlW8%kNFd)#`6`2K3Ht!`C17eX2UOMy>PW2|I{M(~c%yR|aXcz| zGb>q{;qE*yZB%jLuth<+%iEN3HqZrpd|2`NMqHOKVc4B#(iB0>b69Q5inM&7WAkoc zsj6q2!~|uGiLJODN(>?q2Nt!)*YE&y_bW6Qd+}}aBXb{-neW~f)=NC1U3qP2Yeb9{ zP`#Q9i}3Hdun+?Xrq!$+SrREmCbZ9zD(ENY2D(bo6=H9 zb9)3XuaD`EFSd69AMC&9P;G{g(ztc}RNFppg*=b8o3_I^px!Hp>6%`S#KuP(lcnB@vIY5$iPmT z+m-wdtB>R3=GOe#J!ffLB=QGOGhL%8DbK>oMX>d>k?c;+(|OEW`ida<euZ#yrE%c3Wbo;TYw6B%ZnSpaV}IwD%o5X7&S* zYW*+gepcs_uggKF!YZE~Ug{b^_?}}TM{>=jw05gWZ>MyOC*-#-cmDw7eh)DHW(j|r)>~m|^Z5hX z>KE~*bw&I`0sIz!>JWn&Tl0Q11@TTYo^zqp2*seGD73|SfJ%yh6j9@KlzoM@@2GGhxqy}m761|XsW9vXJ@t@+XQC6 ztEoIV{G`7O{Q$nldp?RsjeDL`u&E4m>~~kE2%AraRzsVFvsiyQP+@=W!1N_WTX6}e z-%`}nLB0`L>}G2NZAH<%Ua8geP|okx4qU&{0fYYTrE&Jh+^o{om|Ez)i{IX}n8|kN zxm!He`^mhyahSuOZRAgGUht^x^8#I(j>lq7qQ#?>H!*~sJqXoX@{ufm zNKs|c?hZd5KQ&Ua{43#cZYUo#j{3q+!3o+dHja{-8mcMW@h~~qc@fU*Lz%sZ*};(o zkg0I=(G0vux^R@~ZI#yh1sB85=&xKoH(-u zbt7Bntrk49kIXNh_&+Z2<@EV4r_peHoz9v1M}k*6O7=0Xdj&-~5)KywT~(RgX`UM1 z2v*PG75Gg^eQP&&KWKDBs_rUXXKBrS=f~unm`tPPzE2#(mnl6d&TUe{T7=ZQEmOej zbVj;UydB7Ntunqz4wlx-p^*c3kjWv@;>O)UP?B=`&I(wM=<+c07f^|eO>=uW3kXOU z=|E;~(v!~HA%VRQ+EpAzOLSG=*?w&N5Eg3OH(LF-Dg^%O?dzmv-sccGmCtbvcdDj` zIuco#s=UJ4n0j2R(VVoGbG7EH_P2nyEx=janq!95sa+QM7i(lrYKP^s8^@Y#(l-*R zf;g%7asj(z2Q&Q^uA5{iVxyLPPFEe%3$4Mo9phh`^ns9XG!s?$Ey3T0+WU{+UofT;% z0sTisqETXid86#+=q_yUn!Mw@r-k40!WUU9eA(H#i!0QI_)R*E!8@nrN8k6Jwi)xk{H=Rcd$UbB8;Za|-PQ?Wm_@$DW4hF>7U}a|Tn9 zUZd>7BjIH>91$c9bNHs--ra($W|v#18?GP?dsYfGdseQF`J5FfWXkY+I-*sUFuS=2 z*7xj-YPHAGDEv;%9$@C_(N6geXLh(DR1%WRrQEKs1AN^USxqW>OT2$4F5Wv!_o(&$ zscwGKm84{&OZ?Qlb!x5SqV4WRy875(RLwEATl7)p*8DE3@3S_=+9@}j`E@`)DEmvh z(>LRmT{`q!C+n1TKuVU^_b5e6MUGzo00iMZ?b`RCA1rr?#38QF8?<+NyXQsRIDSft zonr5Qg3}gsQifMJI0stFTGqVNzTK@3h(t3wA{;s*OsRB?*IqYFfa8qF-&egfdN=%v zA-c&vR{Lo&dP79}9KE#mLa(D{=ytUMQ2X+RfJLo|#W7hX4#~hB-GyauXk~1TKe|^y^ z96-X$waqyXHI4AmT*o6lW;l4Jx~MnT)4gjbw%R&2U)up*C*Ms+#kt57O#A^{v`! zYvsOTc-qJbd@`kJ?Ee6KlNjcP^&B-yWc7e|iS9s2&$aPOV}DlaBPhF%%c4!`&3xAR zASd8;`KT%zb~tb>xlZ3-?I>oH{`UnyF#iA-XeKpFCbl_rvX3Yq(O=;P*qwN2oojGP za`+_x6RHV43H>FFE=L(z9DRxD&jOk{sz&F)>6 zo<`Y{+sC43WdXvuL9CK*7{-6D{>^=0B4&S7 zeK|-Eqr!N7w*(K)(`4@cWd58ziOIBeJYt}NAAwY+#&HS#XSJMk4GI@K(F;1= zdzEt_41Kik?oMGMZFJL2{{XC&&*r1z*LHgA+@s9SZ{f)+Bxkd(oR*|UMB!t@y%1@s zjk#GntUbyTFQLhkM7DHo(as8JRIZ8cX7Su?gh3Qi$&vbBh&&P5U6fv3MUZDREZLjY zX^*7QGqZH9W>VIcbmXLm1A~KH+Xd8^kSuU_G)f}JGqIEb^YK|<3ii+9cxxc1-Us@h ziW6?l)~^+ddrJ29ZEj04T4U_y;JP^Nv&$@^8{Mlzhqi)jJ<>WR@0oucI+O=>e8peF zT1@#vt~=AnL+Y|`!?&Gb=aYAv z>vDLTlzIG;_B*re!Rr|8I}@hFFzTnf&7_V|dk!rljmI=JO#H#6+&*idkIf#+m|JP1 zA@=2=zu>m<(cnH&;$g$;BEUAKj0}>BeJQHQ8aapAC#Mj3A6Sa60}U499Q$wP}%x|Xh(XOI^SN7@}moJNYC`+3?t$NDX0mTfn|;^#AlidID%}369TV%s_7>binzjhWlYaLM6i+ewJUVDt8F=7)dkvYE>jaMKbzuPJneMMeW#jAr>z{Dyd(baCptD4?;P9 zOXok6`9CA$Ufh12oETx8vb=U}i`se|&VC!b8iVHVYqVh0ZWTCTS+p&v5DC)khD==J~wSJm-k- z_}?3^pbd8~wzfAzrwrfNOOOq9MCn6=B$3*O$7DMYjxE+~oOqS>l6|fplXcBwLFE4c z2^f`qWTSBUicr}ie2oro9dB@N!rT_q5yws`hR2<|vmqkgE#1jryqjZe!git5(`!#x z9`8PHP}=(Z(TbL`4X3TI60ovYkUD{7=5t|gcGgR0F=L5!t##(UQRB(9P`}uc5O3ZI z2ku^pQ&GC64tE}Y9abO8F=XChQrE+$IA5Z!NE~<%lDA17@VfjzzG(%BS~6d=!DVZEHB$Du+d{uqcTkUbDN*p zYU^LJGLvo!cwGHXT!4P^wFGd~7d8AxKICi%QM8$nfdc;ue-q!rJ~+EI#)))#@V?ftdB9U-G)cP-ReTUJWjq=JBP_uH2bq3W!{t9 zJVp4caX9ZX^}o3hZ5#U%O4i&TT%agcpEt<^TaXPuyQ)U4(n)CjZeQ3$YHAF%Iy;Y6 z{%VWqOc|=>YhQnoU_%VrYTPj1wZ3yrCuegd@|J*l8`)jjI_wh~FxBC%^JzY<^zt{f z2V0F6Qdy;_cysdb(K;sT`Cpf?K56Un9R!)H7)DXcMWT-n5@rs2SQd4GqAcaQxZ3_G z?D04@C$}}Ns&p^MgkjG5$#Zj7#28d9?Bx#YnPzttXI3&-i=SmymXg0iG*ZUGe$V%1 z0e5O}_D536h_e`6%io9!3?iYC!yfs$#mF53qfsNKYZzUq(#6;Q!j3qnb2|-iAH|?o z_)yhWAt#>xj_unA4qo-B!SMW2rS$d1nb;1!p>S+`IC0{#*e(Z%;vvR3B$&j)`!iE- z?^U_Naf<8?jyBDxledxlh|sL6U5N~ClD1PxiO))GI|2F~FLw?fg3nN4rxB?QuCJz~ z-x6N=noEyUrw%-H`_`Ip>_)54bGjYps1Cm$^-P+QqL#PL<7`i78)mjc{r9Ay=&?LD zmKZ7A_$GZj05V3~Uc%hf$g$c9Uz9oQzcHXd<${z_3fhM59{qLT7JnGWnp?S~W_ugh zH;SI3HM>V1%}`*_x;8d?(*FQlOQwVyy5Dw|S^8{0XmNUHoGu1P$3L>iyRtgyMeX0i zilc?g=M*k8Q{{Nz5BK-2q!`DTQAZvX6Z4j8WaLjD?~;Cv=2*oRD}mSfzBf+VTAOGF zfPhZAe|jRAUM*Q8WW!=)QVNL38M`Njx}z1lFJFyfQet?VvYYn7GK;Ws)TpP}`g$hE zG!k3qez~O~jy*Io%Z{F&DmUq>Xv- zw^ioVw3YO`PaLv)5?=a)ZnycZe$-*|!Ge7!PgN1SFJo&0d&&O*ML-7=#3`s}5Yts* z^Ra^LEPrT{cwF-z4}#X`pk2uZCUsc^)BUHhUebo=x2J_(e#CgtL7U zdt`NYM0!22#OJSMb@lj09KdY<05#Ff2fF9xrjQoeGM&|Is+P5ko z@dS9Q8$(4;j%@8MG;l=^nza2)Kwm*~*OxM|xLzSegJN6gnIi}VgujlzC0;BKM#pxe z7{ux3hPrm{O9&Qah5G*hdMw2r%wQu5mTKH$k(07FNFXoDUPmEvJ;PNl35sFZrC?<5 zm9)Xc%J=91S25f(XH1b)VbMt=;<=E$@aI%jQ?yi*aLKjP zml5$RaZ9#TAMVunTtZ=MOvhgK=DhO}+YADx?2iYQH(XvzSO*R#L%=PY>FAq04pjm7h6 z(Q7szY%|!h?@lzB;<^72bsFxY=Y>c zY_Pj@=DtRYka`thQ?f|1Pb*u*DpZyC9Q72Rk5)Chl-{p%FrnOI1TKlA2dT zJ^MLZsXvm^*HPCT6VGu+-bX&bmfFPf`5}8NH3YSdIFzl=1%x+suXU@(AgZjbh0k_K zVmffq$x~!q0g}^5?196FdaC#gPwct8IU?AVHun;H8`uDFym>GAknJ21{TgTVK%AO_FATV)D- zHm+KHT9Q~DZQJkN(EOBKTH{{JGqRf(H3QnoNx~g>aC$2|fzM;|@jy1ZPtbQ`nfsPd z>m@wy4a_>}boxobE_=6N0edLKZK%(iE^)88a`z*+eHR&dT)!#I8sn}ZXJbmgK zx=A4Hxy?8EBvUx7PcZE|@Je`G>OZ26*3&jeE^#Hg_J1#WYIL{Vxc>n2Top)SfE>?n ztz)k%D~J+2zrRjj83vF+e^+mftNRw<6_BjV6=MQD+wqXA>HSZZ&{RLXBj%O3-zfaeUnc&Zf??S@AH>$8u7 zzR4LbY`JySFaYe$c2GDQt(b{mIJvxcFf-t;t^ zGRKnAdLwCBny?eVc9A(xW%lRAQllHkxSXoxOR|>^&Wdt0HG~>=cX2`SANTfpx{he$ zsou05Xmk+-7`Z)Mq~BJtz`W+-atr)>Wq_DV+A{em$is zT&6IFyveQ8oe_7e=GgEjkxZwLDZ8BBzOrphu5ov)z{He>Qtk7ZnampTN<`5cjvdL2 zW8EvA>-eUbB+r$(vLF&r=W6bKc_{ZCi)OWr&w{%}3yV7~zI}D%u7bcrcUtg3M-U8P z-M;+DKi?#@))2cpqq#S+OAKw27fkLv4~JC~DNLs9Zd-lILBk|WbcOnjbx=OLvzxzx zOEX);r!@;&9PL}npW>(=O^Fj?_cvZ?(>3BJWqsrR_^Qs1#nNQ$l9W{g8|>Xc?S&?j ze*|>*Z`M2e;+aoW{?X0A{FMl&4rn2^OTE{y=OwiZ%_L>v{LdSx-9_h9Fb8YH*3k|# zc5}OuwGJUHF+VG;NxGXxmfeTM80L?x1D{_M>1B{m?;Vtj*c09Uh;N=q)7o|K_ov5+ z)Ik>LJ){%B{{Vc_Qb$WmP{%e`Fg#w}olwFIV%$Z&$?uTKBjh+9Ltf>0-6tuyD(^`ij%~-TpnQAEea~m8?oQqarVkD5 z9x3v)cBJmOTRExtE+Xm~9Rv6u-dZPF%@5)v=CU(JWM*dN-Vc~X@H|U;$5PFf)|UsbF?trc*1n-8IYuz)+aHR!+w)kL390IZL=LfMJlYkd!m*g^ zEgYIj(63G7(K}_$+D$jgJzYV))UF4$+?j63xFE0pzO3X{E}|Dx$-Ah{ z8^>Nnde*Jfd{Ep=1f#`sZ<^fy0BmSdvA!Id_VVWrW!eQ74{J-U1~0Nz_-<(-Z=AvN z2nEJ`uWg7IvC&SNcaW^ zmtJbSp>dx!O%hUAn&(sI&E2nZsZ%4HQs%cy+vJEa7O)8!le@dB;YSqhd6y`*m(8l3 zn2iKXG;Af^{`8YT1KpFFtjV7YLN>m@Xb*>qm`-v(Ho7RPh%`N%$;LL`{DOF}_ot8n zw`Ryv763RWSP#8FLi_eY>s|WrKr{ySi&PaScN?wGMP;B#YiOpRf;!xKhMD@t`I~gI zx|?1e-pz=&b%jG2_9AY*)>ynq0~UET0_MYt+ifWk&_6DgIR}N77PZbT*WJ_o7m0_u z_Am8Ok1kL$>GuR)ATsHe$Tc&C`#eX<9Ht$S7~nNpWl@6d8!W&NH=mNZwDL9$kE(Y$ zEgjP-Arj4(mBCefrAT1HF!)A*%1_Ih&x_9_S1s#>dFz5- zMQr1ndG$|Ju2LArvhon?Sy_lUyaCA)r`bB=6NBFvzdaE;ZJUk^&ZwxlJuI^Nc~$*v zU_20*+QyVp7yvnrz9^G0`e<8b=Ig7pPs+xd2Dh2jNBGu{^0AJmrQP_V5z5B2U9R^x z@l-d5h;52#FB)dG{{VSZ_>=OSzGeIfy0AAm>wfDhZp1qP7PjD6d%3FQBmjM@EwT9A zc(Kdm=T4Gy+V!pYD9fB}X4}W0O7MGDa_p|-nW1knlhYfWzR`m0uDhM@(Kjo3sbuW8 zx4UAeSBlWnw(`##ZTr{zl`~3OG`3Y6nlGkX`;dygv!SQbET_ikG}~uWRC3Z%>VCsX z`_m16T&>Rb`}ryp;xur`=Sfi*uJp7 z-0vJY1p26EuWRud+|0x2?S5nWp_5QnP3f^p&B*s(;1qAf=X-L+mYJXO_@8=@cH-AM zM_;Lt+Nw2{NrqB1Iw&1Hon+CzDU)JVRR!(N*x9a;>G4$zkdtudKlxL=A#Jz=%?F|g z?AyzggO&KD6Ga*9`a+y3+3jo9J9ivyac+rh(9Jbd*z?(AKvXll`tIe;%Kb#cCavVD zaA>w(9Mjk^dc7^orMK?b{{RwogL{%%-)H>Fl0t2m^S3mN(es@;a_z9gF4& z4xHJp1vEwjY+2%)Qhg=(SgW*j@1M3^p!X=w=pPG68Ag}=+m$Ra$t`9{8)k91R-%G9 zo2z~5M>(;x)w1Nd4XD)7PBZQr+n?T4h8bS&%$clsqEg}{H_m=Q7-a zI|F0D-qwrdzcpeyR|kej=3IXAuN$OxLj2c%?<+FW#0b7?^-APN&qn68&XL+G$02)* zy+-r=)rsk!83HHBZLY4mX#F9XB+NWN6o``f#Psuab}iQi|b`Jk@D4=RynO@?aftmZghgB`k%oxHcjU8 zO=DK3^m+{e)Fc+27(2Pfw+d;bYhun_uSFZGn@559)R}C}EL0d>RX!t5{O-#AO}HxR zts;s?*0IkHxZ&Iq$pIAMy`V?jp`*=3O!h|aZ=Xd3*yObM!vTwUE%HZGSPb7p=0}@9 zPIvD_s3^S?A1fQY1KbppxNA*I>)q({i`eOIw@_8%u!A%)OOS!1#;BNVmT@YhONTkR za!DYtBkx(b+DkKsXgzrpGtVt)bhFFY9=Sh)h)(Hj)^;Ia(RAU4qP-2%V>`N?+>u8l zJ#%ZrijNr-wN!4BnxZoOOpF>3J=gd5Ysm$b+t#^^;CP<|A-40Wh~>dnp|8UmV~4cn z`0`0{!{(mAH$ZR+B_X+vZCIEwl344YPjN1?M+SVH^Eda_~cN-Eq0kawR675Ht<8^(Oh5>L<6;0NaTbL4PQM{HaM^hZ{gT@cxSfv)+@+ z4DLS7C*r*ggPv9A{JZ789+L+4J1XTk14UXeG7GD5*f&+?R@lhK5EIG*olPu(#IaxQ1ZI+!TCnUF350LUBlAL`7B&HjNTO5-t zP{+%kiW~=Kz zeCMJwhoRN~)YSooAEBZIbP>O4Da?&ZF!9pSA~{u9aiUO7e^%7Fdbj}3UO<4?h?Wrg{1 zLGh4W{{a41a*ooAQ}(!OhGQ{|?mb~D?eH4BL~izWE=)AUd-AN0lUDx#>_Z9tyubR2 z*khvG9j~(u{ta1QCj#3O82hWvPRo0m;K3ttR> zrpa%&{;N4xNcgd7hGy8FJrwcZE54Ymquxamq|K)U792vFCb}20;znGa^{LuAc`7K~ z6LNwd&$(l2Dcu%i_ly!|%-v7H5Oxzg+r5r06*u7X zw1+j8=VjL{(<>`Qh{9VH+}7ka)liC9qp4)GMZC$wwZUjHsyQK}4t7$@4|2=DBU_aF zUgftATZNP@Wpp#t=420h&l@Jb8CcgBb_W}B3#kl{NX^|w=e+Pwtd-JDnbWpz{!65^ zu?$hVk2CuhA9B&`q@Y^Q)2hqB=ATAD9d0;A;a2-;vMAk@SaL*ZOBo^i&q#Nok zI^8}^$>8w5S=!7`9NOW9LnGokGM*S9Zt1Uh&=**a(dK^T=vzrsiun)4@ER(7MqFls zsvY%J1zopc!N)%Ao8-Opf@25U$@0DLH(_j@X!FE!zmae-fl6uD3?T8&iTg9cs zYEJ+@UMl$Uyi;RYQfWl^J{?eFGmBk@!$YqC9mnE_N4umM-v?l8VC!AnuAlf^9s6}< zd2(s7pDDXlv^%Kr+)7taw2kdOHK5)!8=ID`F4_5LH5dh6&FtO{O+kg!Q;1BDX)*?u z_JB9H4K9DG!DIU|jcnCy6!_gQn#)%Js{s9z)N&)3JP?<&vzP5L%YUWExs)%dm*w@o z#Nc>7%j^~#=9I0yO)Pa1zDJEoZfwpcKn2f&@{ca~#uKy?;2%Ze6xFdp>6s*y`m_=n zZJX6T;;}g1KKw$ClL*74shXNNnHyOnuIV48hk*EW(QUS$1*E|6TmxilVqvSJrge1E zIE%6J6Pdp~d^?vW9344(+vRtcc)arqqy}o4rE^_NBMe}cY6o%TqM?EHzK@BGoHFu7 zUe-|4K9lujPaXpfF@rv;nfr>Wachk)ugQ9`%V;h;PhCk*OBAhq6qYAlZf|4mUc3JQ z&i?>_O$HTJv@WV(WntXz12xLd1iP2yvRhvSk!(gA1G2torC>bn05@K<APfEciAscap+6A8y3(AnFl6Ds^#Gc{Hc0q@B`1S5m?bZ5|Eu{MBu(+8iTp ze3sEc6=ZW`u)^AjVJ$6l3w?WB0C}t|)s>jV4Gb^R3PxHX$(Pi)ju$*vG~(@X%KMFO zb6Oknc-Fyy;x&z~1@(b-JNhAD-eBGBMGO>)cNuy%Peeqdrf?Z8Zc` z(9=d^EPb40AZl;kRt=Su(Lz5(X?wLf8V7%XTX1FDEUO&mpq?8IdBIr_d=TW&WYpMm z=!aueu8N8E8`tCy7di~?C+ILg{e4T}*L(@k5bjAXmD=cwd>iEA*nK}}6d6h3j< zk@}K6bzIW#YxI0VEaEDfH(2SOK1$5un{vpQ=_BII@93Qzt)h?;^}daxh~cW0l^g1J zvAJvozDO*%ZZ91pnLA@Fmex76weNK;WhEo3T--jQ2=_c#WxI*yM!W*7CWmj@Tpkfg zNi#$4G&%Yd+(xb}Ua(MBR7Z!hFV{(H4KJ$>1DM+@r^_j3XDO z5t^oCjNFpbd#z~N?6}SqM5u3c-XtrPI{{Zn_6qHVnTi!h{!;iUVjL@~}-cR6WGvuB06F*1EQ%d4J zj@!QF7R_w#8RVB^@jOzhqkkY~@>x3C;f!t1GHil*C)z4ZKN#9Qovf*foHnvrm^aT2 z7Cx}K>16C$wvWoT)75O|#NVhRPUY%27|Z_v&l9vRJS4+oKPH8cz?k}<{&pIY#^;inr+Pda zJ6wMivZEWXF8HLpjtv?A0I&KdO3;rd)LFKF$_5kam)2Fs?kuoRrHse6`w$(+=m#+P zh6|!w3egVNZM`YyTGyZFj_L_oBipTw9Vja!_%*7NP*%Lt{{ZvF?9}b`YOu#g@DdaY z4#FRT{{ZvQWXX~$?d?ol24MKfasL1?f5BecYS!WYP<)-@rR`%Mc;54%4JEBNJ`O8G zwe)^(<%eQ%X17TU^s*o1CBJz}`cup?M&&rWPwMKWXS+F6>7<3Q>Bl+vBN)UFb|sH7 zjrA+)IJ=N>KXL^Il>RTe$)jO}*EU)TNSx2B1bA~qri#)D2Mpupv6yvk;<5(0{fyw- zxoZm8JPdBR-E~B)BgsJbaL}I>Zw_&SMq5!NLh6*lQA3feamWdO?g7ORqk+=I z$(f^B9n(riH+Nq4AJ)gOxmA#Mb#;d{`J{Q0I;OG2MfIK6NcmqrV91@P5||so@dt0b z(rz4MayuFImMYU_bxT<7+zlkWahsUzvJ@w>s0Gq z6I#vhc|j`bqw}l!%tWi{r>bk;9Xzj&7H4zCtQJzM5PWhxwkaPN(7%`DzKi(F*Mdsq z=bv`gYV9P~9L2Qgt4Sz@k~FgUq$p{;jfe3>Hzvgd`>DV;2v$=t~@XR(u&_^(fF zQpF@<8%d#Qce<5{tmYPbcs&}=yqmD3MM6!OEEQcC~5p2A8^a)y8T@`@n=IO78xf0p&O;wN6iTxxNJHTDtq4{dFesBx2 z^B|oR)D?bjKJaDJ@>uds<798cl*2C7=(A!tE(135l9jKiXy)w&);nnSlCu{gC(r2l zusY57erQcye)dfHoL>HCq8?==_OhFCJYy4RnLG_p0wc@4-mx9x0A*yOIe5z%hE-bW1^0*sz**A7d~+;!}iI z(5R^z#PSH z)7f0m`($@i_C=Z;<-LQZsz*fL90*7em968$PHFypKGKVJ%$7WtZdwj*NCkakOLF!~ zqVhXdR-FqDVj9(1@wVV_BZ_dUY6^xz?Cy63bLkdxYmnGLHVVLnrMAsvtP-xrSkuQ# zDMXj{yY)l-*`H}UciFJhy=P*j5(lx@@KDO&=kyFz@=6P`zy75eqYuTd> z)$JBdbwn5S+Ip%?!kT!#LuD_~Fy-}}pMbHyi!ZFumwy*)E1IbsA)KD%pG6Se9*+TY zdfd9XaGD|TRSp>Q#p{L=M;Gwoj{|jU&LiZb-bM}kDW64IzPf3{z~J`)sEA}7on<^V zSuNUCUr0x{r&SZEmrdGIV;GV&Pb{#W!-6N#o@kr?H zU=uR9CP_Dg+G|JiF5Yx&d4t+b$hd*Y*FEWyUF(VMa6fu=$!PH6tKQ6Y((iwH0WNL? zavubw^ZV3!jmP4eU-rG|30)u>raI#{YeJaU3*6~_Qs%a!q5>HS9Ps(Ns-8G0W>&IChS%ZIx4;w^t_ExV!IE1|k4AwDlt*cuz<4N~TEoNori?gb?Pj`>lu->F*Lam44P4?Mx|`>{6~ji( zP1E3+=24GwTY)4vj77Pe#Qy-LBl|5(ij)&$!B6IqaC2R+_jMOdBDd1gbFrBZ7Jt;FixPXY0>>g-sIunB&wEo{3?;s+M=cS! zJcoJ2XO4kAlSbca-z78f*opORf8J0WAf66)_st#$l-_p6wcWPZC|!#Yqjev|xtKh` zqV8!5%P{!--?rY^;-7@+LD-E$vjEnp9O;j2<f|VB=1qS3Tig7&()~yG!}$gMLA^^BRMQstDD+y0d+;u&eq+`_pP(yac`}3 z0=k*;$nNe5;hANKF6v*i!s>cRu?VK#MBREGipX@iHCC|K6JEyk3hrJKt5XGjAkR$A z-L<-{^bE&@?pn&h+0F4#MQ!}Tzr&S3_@@2JIk2Nj*B4874xAQ|-mS}X zs&mBWw?^0j&0aa|v>k%V+vI+avMyyU^v&Wppe~8=pK}W1Ukf7PR_$^!^J&>hTDgVlWcH(y~FXW3D`#8(?1ZyZFsBL!s%(>O>OBSGL+R*!cKj%4~q>)lwJ4xbL4n63*f zlr?SPB|Eon{%dG`>mI#*Q}Ou&ucfTQYaK_5QOk!_H$xol*M;sl-;X81&C6o%iq$vD zW;0t%DE6BP!*SYX#v>*1Wt`iao^Cqw3Va&3$>t?b99WLd>)(fW zysdlL?hdh;X6eTAvO7l0o4UY{@4b6wBmNxnb+DAUz@nw4#$O1In|yC9jyB9d2aq>B z19%mQt=g@E!7%s7v)eUYT~%4wf6{Gs?Tps$yNNgCGVs*$*C|VcR^w4cTZlfUwU7$?0q{1JVe+Iqd6#J8~K zd=nc<8Q_1us4UQcT+^mR*Gda=<+b?q3OP8j=#K8NCe zA;bN7A`0!H#xW*2wOEBrk-JjNeN(4$2;_n z{M*SGd~51QrOosHE*RU5TBHN$=`YUr_#rri?~a3g8@O@pX`(7i8rS7+Kp1pFOd-_M zMJEXd73uvwW2eU6f2+xsLEAe~zQ*B|?zOe-Ep2sSbN8W^5x(T}S*$vWI$TPWKd@OQ zwzuB3IF%f*KJz`Vrjg`}aa1t++>wT2jg)#I{Q8nEgw(Or?8^Nt5vsVi^^a_ga|?83^s(!8BrT$&nlVXy* z&?vh1%s6r#+|dZB2bwyqj&tp8Gkk8V#@eX}WN|oj@LLQ6W-&Uf3c9~E1`1%-7~kuY z)M;%w+^NeT&bqQ0A>H_^T9D8{CFxHaNx2*1nc%SoUGqZXrPwk8{am!vM&6 z6K-8lYJmfo$f0X;M$LMAl=es@xND4?$4i~2@V znj-oLWU7(Fv_~}43tOG1F1$&16t)9RTc&HX<*@04xdaZwgn z?Z^7v7^%ZuiD9)bilMBM7lK&E@*R3;hCv5lKYHAUi9FADa$5odnzE9DM^UwvF_CV^ z5r4T1j(XaLZs%jz2Q0Snz0kVx%WYlpoPONpWZfO8{ zpn?oKX{BUf+RPcOP5Ipoz}z6L0%kVWJ%($`kGWp1hB}5a2YU;tu-UN6$SSG(1V1&N z?JdJXi$hhj_)Ds*eC|1FaPmj4$Jo7u-$VV|smwerSd*BoX4T^ESJ7S<8_rhi0p*Y2**AjusYOfZFv z82d1Xv9UlndOW?N-hU)AgBPpaIgv#0E;o_Ax-#ARSxZ+e^3XD9sw5&VTuqOUM3Kv1 zByva}xjaeD+8}fZ=}GY_Dj9G|sw!yf9X>-~9dHO56Wp;5k`qkoN$Q;qJFM`@pK#7L zzxFP+^cdS{u&2cKPdnu%_kM(0*11?bQwpnblA-hxkRNfKx6{7dl|rcSJO!=A-18(- zK_3UP;lkJI7RGulm!r(~P{C6*M{jujK<*9Xvn<-8cXV;#)HJUnA$V=AYuipA6mFLX z+6+P<{IG8L=X-Vdr;$T(DaB0#simT&G_D%%+p8Kmjcg5q(rhNhY~C$}O)et&Av?es zX9(MF{{Vl%4xeV~yv|vqb;}v`Y|{L1@K^RX2a^%Q>Tu~DD2LYG28PMhRP{m7=zKAgTM zKMlq42?M<=Am-3Hb6)ix9fuZQ&EVmCJ-^=tU{TODw-Uu2`ZNoo<`~v&=E>spFMpfX zQxp2Pu(oC%SGXhKu<_H??1m)q7o9^%CT_&qaK4}w>@^Viwn^d2OlIvW4WfdNX)uhn zEo5`EPsL8d$Z1;qYHK!mHNUCE0pN-X3LFfBG!<`?iFt2e_?~^?X|Sz|rjI2lr4fn@i;ElyDMFlL)$TX9U`Dm;|K@5*}Y^(#O zinS&Qh|f>wQN+#5?_-+A!me9vp{ZBad3JR z3ZdKM+sa8gtc9vDu!(>i0r?{k*B0k#ZkMtARbckOzzcYV%$1SM_nsU)RV7Cf%Irb+ zb^8M4nkZ(Bd9#=`CsETyY0w79>2q^c3z}Z*<^XCu6Kjux(oXmrylZ`Zb?7xqEaGXi z_Cb?V+EvX_lG!iRn9`Pkmq2L)&z0PtvE6xl;|#R+5n_LTfb3C zZm&q-w}OY0X_&u_PqLy!!&e%(Nn9cGRWye@)zl1HO^;Q{5@oTd}tul#`wby=7c&DXY)O8w;3>Qq`*I$7A zRoB28&2-a;g05Yex8ZPt>@QKbn?*jwN3x8lf}aVD`jNCT@&U>27P#y4C=)G{M>N~} zDOdwf{{Wq$YeO@;Gr4f#@hMGDN41Jdg4c$-O*x|XY^=LRqDO4F3QXIYo!S+1r;lZG)bPlyxqpE(NW%_$k~EXtB-grif#fc;DL5Zpl4KGCwin zWn0x?w>4sIW^v*9D(YuX2iO7-3|F}eA#-SAV=hD%eG@33cYKU;ED(MK!*w(s8$XOeB-4yT|{?^xG&fybhgKqF&y4DF=e9wnDoO*zOrO(w&Njm*l| zUCp>WkZ}>wuDeqEKK^MnIgdoV?ZV@VOCjVlY2KLbH~#FN@NNj^4<6;f9s^!!8J4#X zid_fp#oUx4D0$J*jLpxoX-a6D35)@b;rAGCUExb-Lmxdp*9O%G^zt^^#%E|yNz z+qCb=0Jk9DiR7B^P;=EjB1>Ek_wP%(2F@M{z_&)=_HNEoZUtJ5`p~`Hda4m+h=~Jq z((3!!nk?*dUCnKcVU#4S+{x=_)1UXjR)6U73FF{(J>K$pbIpZ9w04fKCiqZv-4P)*hjT2^Is z+uol;jn?4(kt?Tw3*;zPo2?pel_?Fjj%XjmsbSdN7AD3B-;zg**z!H;n1vkGbk2>E z?n&1Cked_Dh*MHL392Ju>Br=<_|--QT?~$WD_J-iNy6!q?2SwizM^{e$$dv>OL*O8 zUJPaSc5bCDE*=~j+h@8%DwhgW+FHRXa0WDPz^=?W+M*4v$lr zqz-F=W?fd79>7`WAW>0T8){JbaGFSUbXM-oZ9>Z`sX|=QcV=$9$Vy{tb6-pA+!e?o zbBJSF+i|~eQ+*XsIYpoj^#sY*J(C(p(qU=3S&nkdUi=1dz5CHQJ~9isaUC!MsUByD?3*0TfJPO!RqQW zhcebEpxFA?YU$!1%Vjn%v;f_-XgTVfTk~20u`}iW0D6r~HXY|jS6L$O8HWQNp0_nV z5az*-P}ILhM<^v}hQm{zUcJZpQ~vGk2FgSj<+EE zmLj$gCUj@AFMj~Hn4Ev1LVB=!Tr4=OZXp=o-Pv_#+Fk_9R>#muyk${l6v$omu6M~2 zqo*CG9NEH#8yNu0z#`Oe2WytyRAu=3B`|eAW`p1%5 zM(R&HaM8I!PdJmCoT9NDekts*%yOg(*<>x(HMpreLsHxGNG5E0x$&k=iqJqkB=-Cj zXp?KpTcu_B=!H~mb`uw>`=N5}Ppj`veS?1$mWLm#t)$+u&5k#4 z>Y*}CDR7diUKiv7G^o?hJP`eC>=qXFklKxiGnZcVPULKF#|* zvW**mKa>hl{_hrZf3!jwRkoFqX56wib-t)x6|*>|DI)|_?qELI;o`N}catVI(pOb# zH7sS57REw+TM)!wk;)X!0;HXH&Ku-Un8!52t9X{ z3V8hm3mrMP6L1h)K||!Wk`l>r3h5+1zD6`z7#~3F>}(BeY&^>~b-pVfS&w6QzNPz! z$o3t}#SawJvG(gL9U<=2qd~01e4#Vy@c1{K3E}YQfXi337`|uJ)NUc~uxh9Dv{30w z17q(zRcUG^s@6xk{{Vt|3%+fHQI|SehgC`YoqSYJ#og-CvN~pSx2^9bPqsDhG&0^7a(dIgs!pd}0p%YEy8{1;12+4Wj%hy5cLCc8y1owqHUE=@VEP>OFg z1;y>K=WZAARq5w~qGvO;3AUHur*u_wvCJ-t-^8Z#2ulE$HgGv`2?BY$+v>l!Z?ct; zNh2QjHqYmN7E>~2z}qqHw|eRE2F0hW5~8`l7KqETJPv%+MXl|E>nP>KhDSFmZ^r5) zi5&UES-{*BC1N*A2)AkM@8ptbVx6vTT#254F@$GhZ0&9ozIhb!xMj#k5|^U~t)Oib z(VUISbF-W$Z%Yu8N`>FL`%Taf!n$do>qIk}^ix%XOGT%_hm=;Q~pf8s^la>I8q z$4z_?=R`|&W}Hzfe6dpu?{t0L5k)c>%x%sxFm)=t-=se)>LY(J7^SP0oVCsjbH%NG zS|PO!iaK2EW=T0BLK>%+c|)$LXRVHsn|VKM+dzVxS^ zu3(`GoLhfMxGn5Ut-2}bAQ5DIdAl4?fYzC#b8_37I~8>lEe(6@cr86CXwylR&5gHv zjr2rt%nm3fbyZGNKSRJPu(ldnQ6uu)>vRVi#~)SbDcs=C);y;nQe#->ofp$m_96D) z*4+?TqGOmdJ0yI{=o;A_e^7BHbL15oGt_6OKNH-vo&$`V=YheD;5aDel;13UHB2tv zdNAu`_W0c^0EV0U2neNXqo;RiRE{u9?aIpKMT9v{T?dF&DUIX@h~w*UPAPa?kOqq7 zTsfi-%dC3cQDOA(+b(>>VOWmMlfC6)NxNE8EI~LQ1=c)yE+>Wb zx^dH9hzO=O%g)Sw@NYa<}IWzZ>j zX8y{6X1)uE=g}aw?w7p^Ar~6*Q9NHyACj9)z8zF<0JhnX5q~wVovvR5-pNb;scbm? z{{Vt%1D_=OeqnXHKDRAOHWV5E0D0eqf+#Ey+Ffy3yQBG{V@8h!IT_lO#9NB)Dd1Y& z%Q|jmoultghf_=&JLzUs|^&RrJ72FG)HPhg;QM)DSHs29< z{{Rnfn)FsPfnIyCfXTHuyN|OI2gd8s>6>@D`Y%7_{{UwAdRSv^>vB?o+1Dy~ZS^YD zF}1$3^Q%~v2mpQiJeC*AZZExj7$gqY>t^m8g51~QFyS~%^|L#%3op{=qVY3VE+>dj zT~q7S67qiq>;C{5@%v@pFTOgPGQ@aCeU8;TbJ(ON@iX`Z#@=C>~Zv{)7e z=N6uQAsYDq08aH&2%~JoOD?U{kW=yPqI|6LDkoYtX!1FtW~!)jq@3y`Jh-62yT^tOt5=6cBZL6kD8}qnn$y`0>#6rDZX+*pvsgy@ z$BxoUz_IDVDCq zaZDx+q`?Iwvbq@~e)W?xiyQ&)>VQK}w>V5&iaLsV_y(c#xL(|~aSKz1yLX+PbzNBJ z!Bd&8?C}fazIH!LFHc{CIg}53QSBHvgBj#GzGj6t)!?E;$kqyvn@FW-RWOK zUp_~1?KUz}e`Egu%&gCo*vQzpe$Mto{{T^1%wd8}j+L(e0K*gi07}hyI_+!~B!}(E z{{XGatAc%%%~L#>tL{1RRBNJSm0QoY5o(%eZ-a(iRZ7ZdNh9NKQdlmgdu{k&wt_b{ zhGQG-Nh>29POEsPk(QX=#clD{7%;gj@-+uf@I2UgJ50&@|6wZUtuDC%adnv`*-1=4p5by>M+Dr&HYR|dDubL6>q zw6(_~@GXpHb`tAqcV7#0_biT9n;txuq10hDPJ$X-t3qhgg9vjo^17+y`jPPBPpWqTc!BS*C+=EZsezT)T|9gv zFDBp1Z<3Oa4u=UCZ4?gBXM3J(F5)gq=;2|>QSF`_+WZ=6i?SL~yo~1K$d7s(&Vxoa|u<*>20O;#Vv50z{mYA}elduACGRU@r5)lY=SVmUK4ta_U-FvV*sam;47 z7Ou+rs_C6GpRSiasQuBvcPKX^G7eVh;bq6i@i4;o{I@K$1)ijx+?>MH45Q%Mb54AJJ%?B*_qQ%4zVvehw%k8Z(Kt*Z}!jq7v9 zF5eNV>A3G~vA$mW{{YVuvxZzN3EC)NGd6(vwB6Ca)jsEa>(B7tC-f5e9LBcK5v!gl zq7RCa2;3Uhkl@jnolVaxkIU94^5Nv;5WoZ&jdPwVU;=7GO8GL~y0o0RO}Jj`&U~Wz zLD>9P$;B?n?3*g-X&X`{kiHX@tOd?Kv#v>bzq?h#!+AYrG~X%U-~M;qmTu5(i}8w} z*VEw4X&gIJxE#0VrHS_{-cfNTS9w{-=4+jn7m8h7z_GSI1BwB#-cS#d{5u?r4t-1A ziqkcb$&$he8*m-2heCQ;0FM`>rESeERGIr_<;@w%;&_$SIPZIvWpCS|j970rc9Rs% zlhPR8I$Hk#lE1K%mtnY_G0n;U03B9pZLfw*3+SJsTjtsKfSJy2H&y6%t=Lm1`Z|gT zeBc2l@#an+1=krp7j34B4WFgoO4c0XPG;Oqm8=)bH5LPcI+mLQo}#6lxaN{pwV~N< zat66ait_4>s>Q106%`Rg_qb^H#eD}(N+<0OC>@l#20quYg}QU*vgG5(llw0mtn@8V zF@3h$=1q!MzM^WQa`D18anqmxa8SidmlJuTqMywKghXWRTn>8jxWD45j7Mpq$sm%Z z4CAoi!5zWqbWkyvtke4KOh%*%V4a!DIvq$*64m5 z7GLO0Xz1#z58s%kKW6F~X30?oaxarHDzsL;Mw4i;sC<@v8thV*3h3kvk_jFIt$UXa z?N(6N;Y|UuVvt$BKZ49q?EF=gGD6zMFvc!UTdUvUYFJsklC{!B5(I4Q|-J312KYY+2pMc=B!VvSYT&vRz$4OQwK^ojvzf zor*(*)`(!IiHtAp$XlCEw(v%FuNI-hu_z*f-dr>c6#^m}GqwK$0SxT2>W z%+05L*F%c!1|a)GJA+1s%?%%Rh@K%|DK&-(WbSEp{tew1tyoZj7cpC|l zk7x}%(zc?iVF#gb$iXh7v-waR%36Y zZdz!Yzl(+aPW=$+_P-I9n$@g{&|iaETYr7gJP=IS6f|;Wl6SlTa#>;bl>Y!Uz~+X~ z&sV(U$t}m-qP6seHX_+4dtDn3V#%`M)NwdEJ>ko)j#aR!J`o&IL*~wOkCTr;v|AAz z6uW7MhGi#EU+zQMRM$Vv!(24i!@XJA85rHL!|lP7Tkt|!EF)wl+TSU7g$q3#Fx0+E zih|pS*>9Oz-z9h<*}p2=SA{w4dts+#pUAZ855TE5a}%Eer`yWfY`f^IVhkst0{;La zi{U48<$r1?=}SgFD{1I#Bgy3}N0N=C!+-GgRd9fNfGCVo?);`=6P`cexTW|!srEt^ zQdMnTFR?B+F}E(;8dYpjzHhde!^i6OTEpEV(@*U-0!=TJjka^NVKfi-7|8q7*pz#( zD7z-#`E}#nk)=ZU1UUZCRt-1UO(jpjzw%e{sKDF(k(;lb{No4kO)oU^u;VwA{gT8Z z_1O6UJ{tc3^DEM^Y(^}54A^XLEV(7bV0N6d#^6V|tY4Nq9y|-lz6nIhcaYNJ88epH z+0Bv1nz!V>r_cP9VQ{_Ib{UPv(0UB{zy0AxUYdJ=J4!@&-q3--R>^cG3fP*-Jp^_v z7Vbs%w!>+5ft{Ngx0CMyX2V2gasL1;ESfY}T$J^dvbLI*Eao!7;mr801F?KYT6R>_ zWtoEPVJ!ns@2bh*ZZTJ~MrrvFw6ToX9=)4NR(Z6+c52F)aM)#JQ2|x2h#Zw8j@CgI zQ@bIYvi|_0zCm`%(75{(J~f@Jlhe3n(%SS!H^F7$yN)bUuMLY3b|%kA%=QrhWEJhL zHI*(k8@Yowgt5N39ae`5Ikq~G^=IOQJP)L#Z`z9AB^guFywr7cxLkOYHLW|(Mp=@? zXiq&41wuHn14$cUtjQit*<&52y%dgp=Fc)WJGLaa_h?i&9kDO5$B9??^@4H@SOKADCBW2q{9d)acVWRPV|^Q=NR zcYFKC#DdYssaB|E#BoQ8K~&ZQ9blPfT` zE00~gi0yVCHqK2B8fv4SGIzeEtWQ63&ix}&-po?nh5rCnbZI4Ne5O=y_NwjS8v_Ty zWhrcN3Q@?^upfw7ap!)QYTr2~S{TPDs&FdF@Pkzx(a7-k*_J$wjrd!*p<^4Yr+n1# zy|J;x1H+ej;Itca==Rd29y`Xr-H?7u824tVd-}a;$DOlv8A&SDUMoC1%6yG1aP+60 z?aQD;S&8mw-%XLFl0P{*-%EAyQer-}{ntZ}8!e+My&fgHrk)nW+>=`O?p+2V>Uip+ zjg84tz{7uH*ZkECz&F7lm$u@WK^SXW3ua?t&Lsd`@nx_0CV9j{Dwv-GUL~;)euad8 zf8MG9*KTvQ-Q_jY7~6CyVw<%MRXb>%JKQcGuc7KxFglv=Z9`w`S-m^%iERC8j=r-i zvOZYGPU|7AV2){{dw4v9?m-<#JtQoje-osTux{Vd*Vg4M4yFP@P{|(h!;#^<9d4Jk zlOxJAIn8aYs^ab4t)TuSf?7D>bxr2YY@A0_G86huQ#z1-O5r5?N~X7x z;%1E3a+?ie{g-^w*l;egu4^J0u8`KSBSy3c@X=JLXgQoX^is0EKi>DI%U2AVX3B!9 zQI>~(DqBWh84rOFBGcz74yzbnP z?m=0CP3%G8szM_eKF|6g^`44HI5oe~6MU9qt;`{n{{X8Ue&tY9LSA9Y)jRnGN-_s> zwH=$mI#RA*hxhMGymt<%j5(We!8*r@QB|_vs_$m`t=^Q~CwOvzL2>J4UE`H0zcihn z70b6Ge^ZF5+3Ku*#JwPeEWe)Q3A%`~`tkP=*ds|Cf}xh8KL&qdqT z<^I9}Wg*OU@~9q9#YkV-^=-{U={IND_oov{Z_Pc8Jb3}&qZ1N!;m+z^>2Hrz!o*D> zy{6~}idgdvUCBip*|a?oDp~1=)$`k4am$zz}J%Xy^y8YxM+c-Y#Y;inVrYGTQz6P&(?U0 zk>+!GG{q?B*;7}E;Q@|jb^!P1@Zf%0EbUzbD4YZJzcB7LBAQe^9a8QL&pi$fJ>zu|Pxh-S%y8cmTOD`B{I;4Ll^4cr=vBV`n#8MeleP#caJz z8{jmt&)Y85=QqcSwLg;Gm#AlEl1TK>vS$y+?^;inH|SXT*pS}9cC0#s$dvIr$Jx<( z)+yvxm5p;~>m1(0x*CG$ zbay40bj7FE?^mfYXrN`D#}RL|mRNWbCY6qG_wepQu@^geeq2;vPg9elZQ|t&*pw5+ zlykkhd{p6uJCJ_-7W=ha%7;fT@PA=ca4mbrWY-g-=<1EMvEpz#leF(!l3}d_OuBJD zngvSc#Uq26VaHxwQ|c-Nkp?xbU>e-;QS{;W7j`FRySKqtlMu{DrQn3z33}U&+_}wT zp5inL<`NfW)=msz-4xVPnB?7uaMcZpQ4<_8{{VefixI*i!*MtnO^Cr=9H46*t$%9z zn{`H3LzIT@Am(WaNATOl8OLd;nXiANHv!B=Tu^pk1pps1;WY9~9e2!A2s zq@>zPicBgBRZ!UIq=r0>&nBha z!5W$yLswBOh2hTP{Qm&eQNLxxXa@_TPHi?(>k(~y6mrwkIJ)o9bNp74qO0a}qPA?- z;oO)B7VNiA@B8pm`J_&r>=NXR3xbjwQ8S%+ZIEZ=sF1we?#o&^{{X6EIqZ3YtQi2~D|#N+Bq5l6=Y@`YL6G02fYn=$ zovpKktnD102gP4zA4Y!HSmsD<=Wx&xtIEc*dxu|=vM7i>hqe0TJc4yb8CE+%nly6P zl9(wKLR2=-$Q-gmCZhLUw`)Ag7LU$6181-??Y^^Gw{% zdw}EXEONqMZF|;$*0yGb=E%S}erRm*UwM}=GNXFQ4-c+-ig{&JZCrd z2SaXr)9F~+N#?1Qj*}tKck=ji=&87!{`mIfc{e5BH8d^LNb=V++vD7)bk3xSjvBj} z<`oe;<7jJI(bT6#T<6*Ot~Cd}O#_wKbX9PQx@XGO(eN!<(BT`Yl|4Th^ODGK&RcS*e#OhlP zy|PH*-l3{Hn=!8Jb?AhNwyBdCUn^V%#)E*iq}dp(#YJ6I(&p5^hXZ0Xy2Ki@6<~L0 zhJmkt6iJn4c%PH8e%U9AG!|+aBhMsWsRTdY_bO$*mOrzn9~EkHH$V+Q8t2mKjBzXu z4Qnnw&ptl{1O`*d&ecg5q$4|;5BJ4S5H%BI%F%ItpER&i#q^h($lDXr-;Rj|hk3kg z^z^Mg;kpkJs#H->nH?y~EI4#1m2D`cqF^%QPV%Ow^>02nY#W8IBFi^#=X1=J;;cL zjt2TkT1W@lRcdFTfsAusAP0%!6VP?7l36@#jDr%)t^mt_sAtRYs+gx3i;62J( z{2Xk}c(0^;pP=YK{)jjoJoWLH3Va@_M}fq|NYlMntipD)9Np85HVEU5`SZy9yaCfN zTS#$=n(8K0!4s};oQC#v-OlRS;nK&$pz&UZY3e;+M#e0rKeN>nRL@san19|c#*rXyR8?G;rPCnJXSheF$0#@c^;mAR`PX$PCS#jLf1xhXbS$lb1k z5j(>+Oou+bp7NM#YW$sGwG(e9rM!$kXpgvsE+-vr4Lh4m#)#N2aNYqQpBrp4I60U5 zko-=t)KSjin;>R?fKUT)`mOYNWzC-^zlyy{Ag7*JGcHFQ=KR)L9B@$fLo8Wq-;SJ7 zvsBzi3e6KeZ7t7UXacp^jt3n)vCWzD%gZs--UvV<#jy%mEgK>cf=LCsSbfTzIA$X( z?#{@@L!mC?Z^1!};%1JK@y!HV@@=HIHYtRXz45xt`=@xs*ZZix-E{AkU1}XSL%=F$qETe=+d6Sf{TCxleWzL9 zD=x7H-4mi~hGCaP^6cP~pd3<7r|#JvKgih0-6(3fg~=FWinrhr}eKH;@DGAV4w&t?ChAc`Ry$sq0NGKbrQp5f4Y)JWv|K*G+LNg|F=^ zK65*GyTw&zKwe$M>Xh(cwerg885}QnQUkR2sOlgmCPrpA;*L5t`oboUMnY}c-&Nm+ zs=F4}gR@1t{{WUas<9SHHKc2Ew)gzf8H0{l9dLM(pBNpW*D~XZMuM(cqi3w<8`(oj z!8vu^qd2DG^#UkgA5o`ul3-O#f{DfL^@YDXtDcgzS$pJWYxjKB8L1_j*3E9YQTk|v z%-%PO zHC1x9Io#mp+D&YjQ**0he2tBrh8w2G9&+g=ZbzH^Ijg(UAFFH}Z}3fd%6o3%?o3Og zV`zwrW_7yqQ;A!i<3rI?-kBcjyF}pE@N;)#sZBkXH?iclZ3*McMHKZ74agqT_a?eB z8=2X1o;}HrghrZ?mpJ;)_@oYKKCi(hhfLodi9qaIH$F;QLS?xY%VhS3w}(ASP1{;+ z#IC)w0^SHRyjh^;w^Qy_p5i9XdlurYUB0Q)RZX_-1I0?ka<^qO}0a4a=HQc0&w!ZHpR9hNS7QFM`UOI~#2O09%hA@3~Z{ zYj-oW@E_`kM;)J;y4#9^T5}q~{$7Rxu9CM_aDKsHKnVG`CfHrYPq6 z$7ncss8D28Ww7NeZ;yg=s|-cqj?io1lA@kQ$m8mOJ=gn{BNg84&vzT1R_cQhsFEpR z-pQAFZ2@-$LO8eY05-#!(1iC>$-v-PJU>H#M8?K-xD$y3yLH1aHXh%ZGYp^E3mL z*<2F`(r)tGPC1fV2EuY=<@`#kqjO&GWOFKf&yTY1HvaCV7LqGFOLIZRKORHf?_Hri z2Y*E?q5WeysEFoLQ7_rMmt1AnQN=G0cDG$~#2^y)*M}9v9yzR**Ke%f=(r#ep01sZ zd8g(hH)~Xy9zWPk&@^4#{zwU1a@@n8A<%fMloJBiMDJV+g+SW+JKm(HlXW)maqiOL zRyS1{O~u!VAd@qEN_+Cm$4MU>=QmbJ-uqUt*6NmDHJal#L#DkJ?otpXhj#uWRc~kU zPcxfwGnyC`Nx^B%GUQOzLS`AGb)*BA1P02YEZVoUEvMwG1DE%0&+t`n98^ybf?Y`J z@0uYzW;1>x@KHf8ejGZc%RCS<##dRRs)Bm9Q^j{>&~Pg?JyYtQ=RMX3k`*BHwuX=& zw{L(_#f;KUY&1RVGQiQGNa%+X;*G1UYu*~@vj;l%;>F!RDI#M6mzkdX`-7_O!Vn;5h25#S3Qph3F z=ER-@zudL3PeX-au7)Yv`yEzCC=6qUW)ZE!tZ&sxOgnGwUc&mNK*e@H1oU|+rEq@| zdI72#H2cjr+{4Wwh$AQq?~`Ni$@( z+Tr4%1W6Mb*K;Uy&6ChU)|MbAc8?(8>7tet-DvZ^hF|>@IuM> zvzY3M(o_I$#RcieICsq|Q9v7fL~e)@+=Pqjh+BE> zcc7g~3u)nVV|AN*{1ujG9j+Yx$|DP%#m(!7{=;Qs)2OprS$3L}V84mA-ACLBtOiK#-GdfZ8|;V?L}HGyHi zoE9dssq)WpmNs=p%|kIPAWH+B_FRGwP=nOO1f9Jtp$ov}#$%m*Ck?lbZ7mZsTbs%| zOCN3B0J0f{#4_CS)f%M)apA-j!OfSKcNFj`Nf0Dkj~{}AY$G2+K|c(VYw%X-8d}?* za)WGPe47zm_Hl)q&jnu>Epp1kmh@Ohrxx#I+|=HjwZmtDg*4rvZCTOqrp z($-9lU*Xq}a{CDRdQvX;M(+@{I7ZY%77!t#+&&2>O$@tjUjG15k+D&mX)!r^OB+{;{m;}de;M_ofZTGr+bS81@y z`q$;Ar_bKBm~WFhnx<#2pUs(j+e@HR=^7)WiZ;7|S5((-S(5zE^;#-?D+t0N z?Yll+Wm2u%JUWSiwEmEfU}zFX{{TTzYy&GQclDCwVbqSH9j3tW3;+VyAl`M8Rg|sT zyk8O_l+E3P_CGR(Nl4-8aXR*nx!hduf;2SSR_)alD_s>McZ6~5 zw9uY$wF?#4buN_j?wF5mO$WhOsKl!$HZ!_0_9Nh)k4dMZU}fvE9pslf9duDLs+p~| zEj_f*zq^{KSO>1}dUP4*Hi8KzKP1g8vee97cUheBa8TuI1A%wLiYZHgS5k9zkwp0gtlbAYs?U+m_LH*q zb@-q-xOT0mQ5Or}f|bzv)^>@;ow{awbmD_So7T2sn{VB+vz3wiZ8l7EqZ(&u@jye` z;8!>t*UNP;oI*cZ)W=mqc)6qbkPx}qgR>}H22gl(Qo2mmBZ=gqAi1_3c%)_Sn=Zjta8WP3PYnu?MI4OGC3wGG6>5Vdbxx(4E#{q$OGh}3t;;4*2+~eSeE1`=J3cqZouf$ul}yK0 zZl;Q+j;futQ9E|yuW-83w*tcAeLLFMO&o_?y80f4GOh}!pkz3QY#(fQD)ktQk+4%y zGd#`WPeI(O=R(#avyew1G;_rW=_f=kYzndhEs}G@Zr%75Y#GBd)nyVMPgBDfZKZSF zobbr&DeqzJPZY$f;($?3&CD&-Uqk+gOC|@}@6pRG@T@ElJhL6j8dHvS1|hf%>kTqpELHjV9&akiIR zca#JSu^n8cdGtd1bx_L_;GM!&xre8Mo^g0sIP<@9q^j0CD?#omtu@10*|qQPQ`Ne` z`SsJmG8S4ub8@<==}VFS0KNxswyN}|%>;Lg&X0#SC@QhgpqwQ8k;la1gipM>k_}eYX7rLCn zcXpoQa<1TdXrpDrM{A0gxU4}gLP2gR-YE&Qd%olaS?%WUQS8tC+cTY|-c*&^Qa;@7 znX}qqdAhu-`~kKw2H&-yNbWx*@ZcNZn&&iY+8op=6|G`=71r#f?H1iA2QG*XvB>Xo zW7n(GY{j;%>?@ZykErnk~h zJ;;#mLum!;CbPJrUI|k;YoN=bk%Q!#Z~3P)*0JQE&l)n`DeM~ilUd!sT}TIJ=c3M; zS=TQPs&Qjt8*Zv518W64KbwJBWT=^j-M(m)GG>bCY7o$V!_b)%?e`iJ>mk0xgFs+Frh2f`@E_y2Ljk7Y{$Y#;vEy1w&Oy_5QOE6{P zO5)?f@@3X9EVYi=eZ9tCTQe}2U+7{x$t}$C3o#saW{qe)PvV^x@?7%B>&YP{+6O2b3bevet0Yzo{tb>Ojg<$Yyiu}qUT_)*_922)f61NaBMdr~u#QNkR zF0*qEDn}5ZBVMbT<+`gEFxdB#x=xEpPB(D_m(;oshex}L{4c66Gq-eZD|{K`s_e&8 z!uKk(?|$VuHf7agBaUJ}(P)soep9++Bgf#f$5*)b-5SQH-p>AjSp;U9c85Rcg&p!- zlcn?lE%Sd8Mq7`~AQsm%M>X2zPRpPrwm?^X$-3%Fr%=|xS008Zcn^Xq`DC}{D*cE~DONsgJ9X=Z)oxG*(i}Pvxm!xhTmndtH zn-W7IY=Pfl5t@=(>Na`4ua8>~ni$9)c<4LyMX0LbqnJI_k;h}r;18Pee~|e7@$l>T z`RF6+&aJT=PXe@5XY_Y5xsHVRAsCJ+v!cEAGGo|841T4ORWNJJ>QqefgRxXmyh*hf zcMW%P=KHR`N_;MD-D32wE;?VtWNb7!+}_CIs!~cNW8BUTvdC>$m3^8xUz*_<#8XWv zEOC5B%x$&fr_Bnc^3}8Sw9JZnI+-S5?a4~e7 z0ETyms)Bhth_}hr82$Nw^_AnemzVr&5yDwP78i$7$CDvB+~*N%Ta~(@lwMml!wI$sb8UgjH6vHg>?l%(mtJ94r;Nc6E}*@#j*o zxujfMPWAJAzFYjIS3Qx%RTVyM10bPkB=qe9ehZG&`DMnSsg62~V8=?+B-^TX!05mi z)U*S@9TzTN#Am(tkvEpT+P}%WYp_Z1-6>T$F#dZ`R9R*F*_kLi)p7-oE7vDY#S(Kucq^# zITB>vk5`#l8V@B{y={GE6YD79l7X%=XL)eb!8!g+B#UN_H7+YgAb95-E)65{3?7gZ&mbq}iRR(=i)AP7S~G~ge=wRiHziD9 z>812qapf%BXP1v}B4qn*R`=xkVZ`waVIP7USuW5;G}M)o;umg`M>EgNU3=TAeznrc_WiKhBqoPn`SUPBM`>%np`TC zvc96J<~Z4y4SY_TaVuN59!Rl$fup3U#4&0*rdCQ}XpA@zLrbo10JVoz>lnw7>Rb~K zj~3XfnwD)29U!TL&Lzy*t*%RG0X(@ISm;SvzbV^wgl*rF>@uUzAfm>o>wu}lAAS2? z8d&_J?2G2ibme@)%ZDG4^?vLxhSMJp9Ge4uF=Of<5YF(xc%6Cl_^(j%gX9!!j>t`o zP-3sd%x`Y?Gfvh3!|e+bz}wukxPOsc7Z%t`O7EtsAg>G(RK5ME;~)}SlKql2=gWq= zdizctkKm7lO9gcl(U_#j>$Hvs!|+@@{{YBzv#Rmpp58y?_sFix;~NQv;`Q>^Nj+N( zj}givXx7%S9IeLdTL+N8C&2n#CVBq=^D3nL92Uz6!l|%aCJZ`}f;b=qF{8Yb%%I*- zHjn%(u-J|w&#%k5hxpx~_;L3yGas4F%ggrP4Z8jwX|SG6wqG9dgS53@MYa1ohe_r% z&`k2{$lGT(zW_lZ{G2)=+im21t@49QLxEw;hKCgak&t^ZTh}(|2CLTmoox8oeSyPp z@+~=weKG3yc8|k{xjSw)@`GV;A3doX`q{4?B_mzho&NxXM>lfuvhBm=@^W+Z!_qUu z9aqlVV?lx7wJ>1R^t8gRh|3($XFRUUa!$ICc&yzv8fB!Nf(Y3mh>&<$8S^-6t7>sf zU9PFbE2VtXNYjGJkq8v|mNal#&eB+=U=w3O0rKApax9zKeriq_QoI0J;aU5#MWV>l%-^S5t2>rcv5?cm*x}dI=g(3SpdywdM_Ihe z*zch#?R`@l4o2lUx$;k_giWhjzzO?S;Hb(=X@hu@Y@*c$k-mwL9UFU*&7R89IUt+**%0()4Gi1dmLdr$0DoJhEIq(nkjYN+!Eg8 zRO6;8p4Kt1j32Yf0Chv)sq>0#u-{Eu4vL8P2SrnQr!>8qY2cv4+C2U9x$essUO=k# zJJ}|D&X)Gn@=c|v5yv)nINsj-Do~T8k~}@q$md+1!Od$G4J+j}Q@&R|a~yXh^hsHX zKCm(-MA-6ca_g&DY;s3gtghTk*_i3>Dl#ZoY98u+{&x;qsi3M6OgnBI&n0#AG47ol zRSkF==%AL7rz3-%am1|lrD>%GM@OFWKUbAo5PzL|2DdT%RMRk1(bUvCM|yzwsIV$o zjIq}}mx4Qs_ytKzQ|5Shj-FT9;CAw>6wo&jd%VJS$GgZb*&VTZkm}R<>q(cH&e`ENpXm;2;NFu8$qVq?QKm;izenOv8o#K~&qrB}F^S zIA|Mx!7`#c%3ZPB$?{$0xOs>8MgIULPYul;C*=!w>-m&3d&3;I_z`c@53P~S8{96N zJIu6LZj%5JWKqKgfJc7r}GLj3f#`#(HwJPoc6zlx7$&z;~q1wLz* zQ=gP16eiCD8%aw~Q#K0Pm?NGshz`Tr2-Y`%P5NHz&v4nFh3v1CsVMTo{5uylQ1)~M zuMPs;J1b3s?KAer41HwOt)==i9AqFh*SKi{=ZD%T6>c9jHWB4U0^GiHP{SV}bB#V_ zPD;bawnmP+TvHEzEnkvqinp0%BEV)NPlBMy)b4hu6pa%GNYnEUcJ% zg^fC@wa4oGe+AKxra36O`|Fo*=#c3D0G_F3A~`x}x%Ma4@6}T!oufL@TlPp|yNvd# zV{UE(?JC4|)i^e92DqIxON9~il_&miDP94I!8>Q;Y}-kO#Qp}PU*UBepVHdXi~BEa zi3X{U=4EjEkP1>6iBr7(u4cdBj%~~>rP}O5nYuzAC1CMrzs~3m9~qw$q=bI9pfG#% z3l2a0PK>{>-qY1fU0)?^p1hAE+y-C4WkCkrRj(Lzw=Zf3I@SfD74g zS3UJwasL2RXYA~GjgJtLHu{V@4{#_k*Idm;_J9wh9C&fM4&%(W>v`#oLvDSP%X`$O z*>9T3q*?B}xh6t19jYgeij2O{J~sZU_7!Ze9aJ?Dw>#U<`KsF^>~wb^R9asBKIBgk!0PbWBB*=YG!+A} zBRF57=&0`fZhc8c!GhijyUnqP$>3se{8hZ8Dy>r7xP>9>aDqnWjy%C!THL+rSH$MN z-1w%L-+LA~U#|pgBi#XE!pU650`A{>mMVEBHVw9(zLWIF9eRgn5aA^gt#VxsZRGX)dXX2T=cY=F^NS+1#WU<(I@lrZ6Gg+=pWv=1s zaYz@pe#`sP7gTn;eksDmw+p?UUHua?373v%f0<2BC01MKa&U{S0kQtk>wc)zo&a zDu_r2tl#>Q8ClOy1Zoc{ck_0=E~z}?a$Va|?-|FrcJZ7`k*GYJW~j>U+Le`c15C=k z@tmD>o7VHuEkWfws^@cZ`ZdCNM`trs7j5oS!?~S8H3yXbbvSK~><+4>M3T%#Zd&xR zmd-l1Cp>k_qJp5f5M0|1znVb7m}{EFO39^ex%5$xLvNPJpz|$ECw)Y^UG@vN@8;zY zHq`0MRm6eCscH`?xAK11PW0{knQx!PSIj?q`|6Xwwc?(j-B|O77Tmjs!^Jav{!em- z{{RG`%{&~9LAsNC{{Xk~OTT#F^$%wL%715`i10U3I;GM!#oGK7Cf%;rdF?KCS8#V? z$pd|1n~wwn=rql!{{UO15_VkSmrj40iO$u>-KPx~GhGg2-h$dwDD_9n?z&-@v7+q( z7XJX$nt`*o{k!&T6Sud`>e)uyUg_57+3!K@rdzdFe8)YH0HwcW)=|GH%n<>GYv_Ai zZn#WKb93)ZEwgiUPH6%6%cB(~G*ypgwJkYu+O zLAr48AhWxc-M~BlPY&mn*h|6*2Vlr-Apbb}xv`L*~UR z9`^7rozBzVcq&`neQ)TyGe@|k^s)UPYx`XKPZ4ghVwKRIvCiiFY*pBH$7^WYyMt;m zIM_LFZ}*_Z&N+zT#Ul?O`y=UL`Yyw++a0K#?sVHhT_NY`Rcei)#;S#;#ASb5+kzW+ z2D;pCq{{yQvYg|_dV=Lob|F$)?9#bHW|7CV^w&m57WbwZ2;$2t)JEz{j?oLdCB4cq zD06OHmw0&fPrylb^Wc|HSuo3PE!N3~bDt<}kMSTS>}Az0+u_wCW01GIUmMH{cKw$(@|{{Wx3@JqtWK?srh@*1B7r`hZz;y9Bdg|3q14_B8o zCYq4cRWhCiSiev2u8Z6}p6qDCLnM|jO>4;aYyOrWisAV@^9*n8wis{AZ-m1J&+NVD zc1WR&$ssy&*N@`77ZAoNDRDeQH9L3HJju%75?s)H0kZWUDR}E3iI_xh$ru7^rvt&G z)o;GnKIQZCstsj*Ra5xN{{Vm-7GED5G2J|_mS)AowDQL27zOn0ed-JwYVj?c$0%_e zJ@GPXM;^qjyB^Xl+O>_WdXA`NN9!0l8>;V!M)_TpqWwFUZny20-oc3ZLB{r*1jO*n zOX&XqH>r--fsPjH24^0N#iEVnfy{qxnq0f_TO1yI(OkKt0nOdZE*rU;NRC|0c{fvr zGZk!WX*RzT+RDl*%vF#_B_$}P&l^qT97~;Yc#(ePpO#a5^}3sman(U6;dfZ-wDd;} zVh1ksG`PFOcqdX?l8CkprJv@5*mJXW^si=Da>;h~FJaae&3VMMWz2h;_p^sfbyG|( zYF5KL;@`FTIF|g>(Z`k?>~5WNCRIXPTK8qp>a0PMc^MO3riCqqNQvJ&aOn&0?#s-r z4iwhaRx&vspa6mr(_lhe25P}x*x1({;0)pi0e|Y5h0=)XgV`?=bKIuYFIHiaOFS_N z+9SC>s;60i?y97Ga_=Kxz0Y?PLK=CUQue-k0oVkjsG+QilOtbylYY`k3-fsG+IJ2% z{8h#n8xXUcn}=cZh^44@Oq@H_+_B`!_Fm(biBOt`MzxYiG`Ku;LM4UHk=D!&^gI>p zfHNz7L#@vx9MYHz!`o{Fg1t0Vaj}s?*1kfdmO6;r+lzAXrTQktSG%Ee8s6RW=javM z3g0-VaIJP`JZMlA;hcu$bA2G@d7<;xIMldI{O!Gw+%}Q}h-I2qv60?GdvN!v^c0lr zt)8H{wz+#R>VS9@fNKPiz0%}!8snm|OEh%wxvy@7l2llssHnx7$meinwfiL zTK7vExqp7-`Rz3iWx8EKESs8s-ckAY_bSmHOzqLnE3V_Of5lp3gq^M&{cc_8F{*cH zjJD#fQq3fqa<;w6XwpX}?eER4_+3Uu{!P|v1I<4%4sbjN5Sm-Lrr!?J4ylE@HnNIG zKiBKpuu;<1#OK~;TeeHamN!&no@%${K8`WV`|e8U*|~F@#fgxqs;8W}%H1_=w0g$d zvEY1=NMwzyzqt1+v@6%`GaSL>#8$t)O*j+j3yK))V{e(B9^!>lzS zMhhd6%x@m2fKnQ1>s;tuCzm5Tl^F3FgRGOdgc*~&LoU5P5~gKqhqBT*CZ>{`7Y59B zZ1&LbMkz5U=k!>PW7Kd9Ek;`-By?`QwN@#ls4-`mkqn#(=z+JRQsR^tT|VxWjmU29 z#)G|9lO1Mvx!r(n{dg>$CNsRJ-H4(Y_}@z?gv^!Uj(eC1*8GR$k?ps^=EkvlnCGT^ zMgld?-3xpY?Y(QLaIqWP+mL7VxU?Jb(N@5ShIrwnmpErvci;Qufq6wUVi@%m6i;(E zaGUn8sXvvFYxK7(LUEGWo&=YMBKEHBYBMzM7 z5aA7-yP2*t<>AzwLd(_QlHglb`V!WY6UVq%l|k=S_=9lWo~@~F?6NpZ;*&T8oVOo$ z&15!X6|0&SLs<5g%x-hK+VjyDt%f{bWNBL`qx}`K5;V4#`32`S^urITv=Yid)C25k z*ZT+!_R-+=jhWRmMFSuVwvN9Jt36GL)KWQuid&!AmfUyvEiMO*%UQE|t1E3Jj3I&U z9EUscQ&Un$1Y6kPf$w1A$5|k&7B3)$&aI$pBnOOth~TJCw+@a+Qnv!7n6rVI--iTI z)b%xunc^&$;n0q2Iah>3e>iNdWPn=7??7LgqO!7rQs}8*y9vn)b-Khx>Y1$=V?h_a zzZ7mP8VB|&u{iY?wrgA8b)TrFufr=`Vr!oOByWcTkRGCKG!%BIiMz+~Cr_HF>{>`B zbh10J%h`jXpz5(14b110``i;<{30?V^wZ53HIS*ML&QZQ3q(iUmm=mUFXkvUEVY2RLvK=AtM35>+j33Mb(GRe6a}olZBI@KqAlCr;g?P}PkkhrGd@=^4NpY`a=Z}dIlA#9@lurS zaS;c4ig>X%i358hnx!ODN-oN!PQNQ^%qJ+wu4#pVZTeY`aOC9IXEU)T(^} zAz*WABe4m;KuSGnTVtit>xz>z9hBG?xDS#eL5s&(=-%5&^7x@YLd3&o&u`^c>9F=w zyf{Bm%}tPn=BjjT-W>-EW>uLivsA{`#N&JC=rp>h_+8q*T<4~o7eg$qwVhx%-DjXG zFmqVP2USN297i1wJ}MaLev32bow8d&?oh{7xSH{5_i?{=s;zvDsB51*xgV*~z=TXf zBPREqL1*e&V&;-{KhaRAs?6KDy`DqyOv^i=%rtv7 zx#6O!=^Ww3pbq%0g|d&41BIA~|mE3RG*{0|Q6&RSkxL*S-6JR;pawfN(DA ztBi&2zYB6w(ir>X%y_L02cyE7X4?9o8-}^LOSSG=D+ut|T3f+w#>+EZe2>1jx5-5p z)@J+Er$g&oit1*AGrda@e_3sPGG4!BnRU7#$z1~-+PLOC6%5ww{{Te=G@>ITW`3vl zxh#SAy-k^?cPkXq?bGd^0E zE_W_>a%-c_6NfIUtkSXIUF!WIY|U}X+Y1wa1gXSKfWx8de&mNo+1fC1QB_Lq<%9cU z@J)=qT>a`)d|(+I<0Zw9a#y*bj_w}hnMPjAxLWBZknWtxjCW#zA(7H!V=?&eX z7YIEXf4+&1wbY&C`yEtvzNcMMH(U3$>XzE+{TExA{)yZG2cN+J&t!O6arIB)pRQYs zw!hk3ZZi%8iUGG5zF!5`?AZ95{wW+C%a0Y>mgeAl&GV1Tk#QTNR@x8Y@%*R>nlV3LNSTr$5$ zy4+OQ26m1y4IXgr#}8M9mU1@@$S0!QOe4goJ1)Fuh*>JiH&M>`Uzo zQqk)8>)&`CP!p+T6KtT-o~$Yx0dg*C2tUWz7v1ZJ`+-5_MHxF5T3dUZ`hbdDWKJVKYv*%Ry?%G&oP zG_@?*vv!?h@>SpIH7Z>TK+N425q=&Axk>3=(Yd;e#gSaw?_A2+&uPx=@;%B~j#wVy z@hYV>fVS@76&{wIh*kd8)>B7`RmRMr@6kaHT(0@9arT><+{%w9rJtlKi*=We?yO#3}sA0IcH)KN^U;OGfXJA96Q|#Mb6_4Oh?ntJjvkgX4MQid0f%`J+$)kPP1R5|S*> zxa;mlq3p>E4>5J+^5*n-@fxPMU?3JRKMdXq+2Z{VoX*u)&yd(o^qHy$n1 zu4Hj%_ic|i^{<(whjCe14;|F6i{Mj1w-0NYIW`m>jA9Ray=sXa?#xu5Mn*-l^aA}X zzSEBH8DA;M><%ytE@{iBJjx;f%mc4wEnFsws4%&&(2MX*mx~>lqn{CJ?Jkj<|VY4W(Q2?XKCJC!ZOm|0+#Kg- zk=eV-Ln|X~jyO^DAaNQ< z8|a-Fx9=<=#HuCL&-kdk@RO^)32b$2<;BNq(*FR|s?CfrX`Qz3So0&!VVT7}qDeH} zNKvuXp?*6R?VUsP!%qhxEW_uJ_F#A1r)CLW{t;Mr**%_?jw;e_f1+p7*38zkzf|b< za<|&u+xV0J0K+m5URJR#(Opox7@5tuV}B(d()B0yW4|)BNrA%V$(nf&EgGy029KNN zOS~OH-&-r2+Lp>K?2gbr=j4z52}IWF*C-i>QE#1Sou^cHhtwl_N37);k*3|JEf}Pw z4eZ77Q9c+yWW;uZs0rP*jz0v)TP^r?D&{;H3^4}wGa!v8o2*UvtBKP2kRl9wB&G&L$9Q~IA&4*vXLjVn##q7}j zD;*e=wRFMCVB)>~wGFpq7%JqARuS(M1*sOU74e$3+%J3bMA2p^Tl6 z^ka>`6uxU2k@CkYa!aTPXVDmZjDF#=i(5kN6?t&lm@T?l2VFEzngQ!(`p&8G3t5bOh4#>gX`+p3T8Ck@aZyO{?p;wa zR@ieoR=UjR!3~Z^#Min^+3)XD#{`n(GG^WJQ(^TOhOUmfpZ0G*v`L4=_?tVjXX$h@ zQ58$wBN)>5X{MI%Q&P{nYYuk{4N8j@&_~UjGd+=SA-1eK>(K^?&{S3f1h1kk;|txy z_Z~=uc->SJfg9r7SnBriP*vjCbh)YODdS|E&RcNrL3K=bQZdoXnoIT8$W-_y>UnA@ zoZAtvD=Tz{l0xS-*0!KR{X`= zzIt#$CN`6F*Iy?kTSdo7-&Vl<#jLWmO+2By!tX{#ob*GZ4UyvcbPCKf7}=ElSm1*d z!{lXM6!FyiM_ck8ZmHDZ^%#HY45)7IK8mz;GI`S^$&r!kqpr0O$qj8Y;mv5z_o`db z#&ME1ww~1)ZN~i&{91|BvhO3zU_APGtJsN`53GDGc1s)N%b*;!@KzzHnxpi2G65hu z6|OmzjD2%`cMtEmBv!k;75rZemXbjuy-i3wkod_gcdKRBF5xXw5Z1Wnwq)l>FO+am zLfK4CF}0v`JQq0Ff;2!#SPqIgh~gdZ=%wE>{;iZ!+~l^FDZpA=2fR7GmZYe$Gx`d#f{S5L`ns~}ub?b-8t9nj8~azX=36LF zzwc@Sg&K2lPae@6Q*Zm;Dbf2^OdW5KO>=uU=oGdcq{&Fi?zTWxw`DMk8}Lu)0&V{Q zuW2A@#Kp$Oq!0XZLk9b|+rQ0_!?y0U5ODq+oTx9Q9F$0hs&z6s-d- zx^e!iDrd6%ORe6dV{PNc`I95FwNqsrGc4-j>j{z(buARznuo^z1QFn=$03S9;IF^s=KV8xD6drPn}Wv#}ZdCK3AE6^#dS?f3Z)p_>8ILAYY$Qzvb$@vXd#+J5H(ROoQ zZ^)ai@xB^3k6st!(RsGiVt-C!ZfhLxHK({|YQp1*S{g`ahS{Y23rBe zV)ll#;&`^{j=XgG55%oDHC^U7Tf-gcB+z$vtd1QW%ieitnT}9Lm+wr(oD7x@y_7RuFnH;MIZzIYrix<5x{UNSaY%oS*RYlJa4YP3cy^r zh6z4v)>kkceyDzFo9qaG^hT|oFe(z#(+M=rHMgx~&ohUXa6gFvM9G5N{`8XF@D!We z3;zJ7QvU!X2k}FE)*#SMWd8s(gc}^lC?V&YJri|yAvf}Y_@p?_2F+WCRzBafp30D= zryj~7K}`W`v%wkhMKnifsRz|y@sH!2l;80zqw4VL7I?Ikp^lOP>eIwOkSPo-Z?e(+ zscg2+vuSa*&L^ao%^n6oVQsYctppfXl^j+WE5f{{m8dnNYO(*HfCmSTXSBm z=QORl4&!asL3FU;R~@KO!4lTQFr!RU0p*t#-l=Ci9LrB2t^WY$f5q_12`g%GY%sDmW+9C}?lwerPsj}>(QNp| zWZDNn3*Oz^DMp!1xR);bEtJ?dYpdsJXV1Cc6BB=lOpto@3)CynTN# zcD9pe&c{nthhaE#EfuaQ*_oYnw-BV*SwYxpR~9o8iZ?XO$GE?(?`?g{M?TO7*VkdO%h-Hx zGDuzPxVJ&v2hWPgM<8bcQ&9)ZCQTVR)PsG06Nnv6-K2@-Vbtk3R*TJehCJ zCO2(htDy2{9Sw9+Lp!l1mNHH`LmWOD_$fS@gB2DXP|j7yKZb(;00j?~o#>{bGdfJ- zOLqBKBfd+pW`BVo#j79sHugudF~pXgb>tV+cGty~&;I~1%sN&#Yj&1d9@yD5ZV^51 zur||*qqMO>N959;k{Q`iA*vEM2Ypx~s@q&bnw!&Pl)miLcj_;o=h11|TpNbe)l@qE zX-?-euViR|?B>qP770^`);-3uycb)JMsebJ^(&*}Vh>g0qIm3tY!>;ye>;1+gki>BsI{aMoOlP7IPMBYS%iG0b-> zf;B~ali`#&M%dRwhrzgxN&zFrVs#JdN)>Ppy4hRVZKA{WZ*CbTC7w9zDNQ>c8w{3k zIfcVPI)J0+W4;?9aNoJ=_{D8q4jU`*`d>P(crB)fFm89-OOv1ji6@X>Fk|><{g&-b z4lPxSVOZur9Z9OL!nXvrF#N<4?^gQW+7^<>07k3UJf-<&!>~LMQtafud5zUDwkPBu zQv;@Q960nI^QRvN*{TX^jibo zuE6n}H*GN5ZKS|!&f-?&m4pk6YFQ(BIC${X8yldzRfNA~v+ZUF10a1M&tFdv4P{&d zSCZZtfV+X?yx$~s`2F1Z!pY4lNiG3@fr!+Jtah9NaSY% z58ZBk7oF|+Zqj*A*-e!FL?zgbSpC+6ljC9!@h=_nbLB2iC;Mwt6Qz=)XD6w1C680P zVRvR$gRQ{SjwCNb*qywW}bm$GK-e zM~@`i+IiW0%jGj3J4@v*u2xIDq{G0aryj@ySG(SM_b*Y}uPZneF346@VYRKErlGHn zk&JL8y4K9$#jOWZdoQ1%4~nVuvODyn$F+N#br&BJulU{%rEYnbHeNLZ;`Ebc61PTZ zPaugl+r8VHpH3y#LFv64WErklE_=JL_o?Hp!{KAwJ|Pqj{{WeF?$0g@;K~d>mX@+l zRD<$aU8?^8zo!{(W-T)+aCSU7xaBB!^IPsiacnCN#A}~a-J!#p9j;u)>AXYibc^da|l8l;)GaDx8D_+3Qj5f)(UUx_MTrEsm*TC7@Hk~nVQBjbB0-HUAK9hj@0d#pb4 zszljL1;LJoEt$su0Gb&rj&XBa7J%sf2!znw3xG;Lyrrx#*0OkvLg=o-7Gz@6dn}A+^X2j|pl*?5iKfZNRL4#IK zW_*!4IN@%29VbEXS@iz^vu)*~f=F`JR8qqLH*kES$HhlcCLI+ph74a1f*z5(cz#P7 z#tCR5WNm96AA6o-ysPxM9E~h|)iK5$r(w6Z+>W{fa^m=8G%sZ}XPs1$kT66>y>4y6 z4W`5y<`0UdS2|)vugrL)uE0KpY!wcy&due8+rzy!uV-s3*}tZ$igp3O`Zs*|{8e}* zwrw>GO#K>;cgWFV_q%``Y@H6(MOj%%3uqr6X#mb=zdr;im}KzA=$ywe0qG>}QN-GK zaf&BXwb?hV)cB@vdf7RsBl5GfxOHUlF_qL1mI)n~d10s@6(5uwPM)u1w$xIVzC1oE zT3fK_9hee5*_H#!Ei4mlizbz=ERvmQAXA%|J=zm^SL>Cn2oze?58s0EpR4@9``pcvM?qw3PcjE(aDbC(*J( zY0NKUUFgpc97VwQ=n<+*R*ra$oWO%eBR2i&kePyDW7+cUCMcqS=^)i_eRLMMT( zH*3juppn3mjQJ|^fwNdX$I;y|yET zE-mLD_5T1x=(~PngJUaY4QMh;26NPzST$Zvuy~Cl@P8?76)`x=6txiMb+>>CO~5wp zTb;JWqp9*AgJLFDkzQzp!>%(m%`YC}(|(pp)Y;@W$`e|4y0R8!9)+?_UTfjiw7k7>?^B=kUmvkemy|<=Ozv@3vP1VQ-ZVE@{vaFL^o}Fnsyl*Z zZ8jtS04?k${`3PE%zzZS@2ohVWK&i`;RL_vQ|D% z=#N71eZ-(R*RSA9{wpi)kHXt&nJm??o)ShR9mFVhSl=G0Cr{BHJ|r%sk?*GSmUCfe zxGA=11GF|Dt)zJPSg8C{39K2g=zF3Gm2ra%-7tE>`}{)K`H+L#58=CJpTar>wX{Z?fj?def>g7UR#p`b|aK}XzGlF=&%hN`QMUL4i26vDA-A&KQgmqfmGZW(l0`Co*4m)l0S-kf50 zHZ?!bADh{-UHi!OTV#126{d)K*;)rah(z?{HP=SoU6-|#sAY#fotvx1{?R}*zKQyi za_;{Ca-Mi!8}3`D1q^3U+`c^)yGGWarJ8=sZQ;!nrNhHMwbv>vD1z5Jh0#Hwxb;Uh zmC11rn9`2hqHd|aXGrce@u{9~+32D&+Q2vZDcO_ED7nEM()pDb{XbtQueaM)bBN?{gi4p$!54amml>^6K>ma z;EjaFf{ol@XbK~QQ63qSg+qr1uJecS%H9aw8Zo#vS?VmXd|6PAwxyT;wYtU&gR-LanXJJq3vei8Or0?TeE1e*~xB>VAGl<7#VeA5AxXp!<}z_g&kr2 z*B=#*ONGf7IGO%b{LzoqGyJJ6?7H#qO}8`iS?#8h7e|)aBfs#446wx}yQuGPvZSyn zrZ;g8{{Td6X+_vID~)A*!IyUy5nAs2+haZk*9YmIi=P$iEYHKrGN1i>6(Sw4G zmIz+6GQzZ3%M z65F$?k6gYS)BFDb`J@79nCpM4fA^|sx7k27-lwvdIQJ*mW$;~>_f-UUJ)k&oU2u52 z;-zGFKCc9uqUVN$wxr+)*y4Rvb_imU9OGMcP}IdVEE(D8&p*vggFAR%5$xC({1j~A zh9E%f@%$4-Hg3^tbO?cgsSPmT9sPuMiqLt9xm-haRw4`x(=~|W+@5J>?PY7P!B~Qh zsIuN~D~RJ}rP?1_V`E?r?A-NTx>uQp)#T0Q^RRV$Y(6Sza4bTh?v6Tnca7q}-A9l0 zQ+Y9->i(WVyS}-Pie1n=c&!9m7mZ2AmQX*5s=(N6aBzXc`I@u(`2Nr7W%_1JP9JBA zdrPnCEjuHD3d_QIM@@Mjlj&}ztQ^rAK4-Z{wrP-Il zZ8b{`{=(z4%=XzK=j$WuVm_T`Af=1orgTineq7PV?Ct)ev8O-HM<&i9_0%<#9gLwJ44v{A5-dhxm|h+)-GHqu1qTZ!tZ!3pBsJbEp$&RMp19eWaq zw{E)A0qZ8m zODm?3`h)nC?ur;kYqtJJ`}@?Xsq$SFJ$B#W(A2y2kFe)(!tj1A3+Nnw8ll-7748&cms;fqbQh)k#H-(pFP;CWcWoXQP{_KPBk9L65%@kYY8Hwt4a#fcmlD zjfXA^lb42NpK9A17xL9aiYyS6LyJq2ob*gHvXKpt;~UtejbmHgMd4@lj(H z52&nT3z~Ckta~B6EVYwK%IrQ;H<$Zd`0z&KBQ=~3 zM)|#udK-yHy2Re@43UaVB3<1~(2o)Lr(;&l6SDsRqN5FSta_xFUtWpRTaRa|LP2k` z5D){FVDjeMRdt6mK^%ChMYd*+fOSlHwaa_z6$iDhiQSyYtgXCG90)^Y z8AFc?@J|{vtTT3-z*$(Qa4osZajI)K5*P0}TyjxF=U6=WdzOi!9Fvc5ez#?>Gvu??_LmW4GucuXRl13eg(MOBrC@AZ2Zw|F0cQNf4Lh~m(?l6P+$a(^kk{lIZn z@r()BXVpJ`!2TgfK*?mEHeScztvWGP3!lAq{hc@!37N6P;gQ2dSW7!v$s3pfudIM` zB8{zdIop1B(MtD58I(D<0@ls=D?zZC8F}paP5W)oclaVZK~aJ?0TfgeRDO2wB$A*o zTHM1=BgW|f7swqHlDF4zvG4qcRZ{M3QN@|0Gl}o#?nzGPTthZdetqfE$mm+EZ(1dVAGqg(8**SWA?V z&nk+bk2&4Lqhsfp19eMW{{TenhSxo=3Qs-G*ERC#rl;bUKqANf$I ze#Zx@6!?oEd!#MQ0JXoq2`Fn^_h#X4y!zksPpCS1L^D|Fa&=3GKq~PzL&6Ys>uzdX zMn*|S;O6%8+;@LZf{LFdEk5zivEVyaK0XPBx{8w~Avl%LmYxeyTmH>nSA5|>l}lR$rh#ERYmC?XTmx3 zDNt54HSUs4b6@)^tnkDcVMAN!_q4o!+iZc`3_qR5o zNevr>ovvTJf*HcAcW-qx&2)kGBJLV>D)XtGG|zZ@Y&em{2!Jzrm^;%jkUA?dI5JC~ z@~1|zN@1v}WOBP(+QUnM-lWDUyw<7ig}DbF;;KF^+=5u$s+sjuIj%Bl(#>zcd(sN@ zxQx{EGFCgr=!nOssNl}PC|3R$*?wRvG*uAJ%&u*mbsh>p!zOE++H*#6e+7P$Xr!?0 zk;3`EyDa?F50WR^TOR!tI899tZ~(IZ-e5)}A@9}Ajt9c^!)xk0rP(c+WCQpi6^xYsqm zyZi>KqcG7N&wDB}vyZKh%i<{|KI|14PG$+HN z#Zci`oi#|rY2wx!NuP;e9o;&n9@UJ~;xa=20HK`}b7#M#exD6=>B)J__3$0(6Tp0bgjq0>F=;zp<4Zc8mZRR*2zf+id5(HaM_ z(TSP8%==tu>wGS)PmfX3m%9}JB-45sbFdFl)(2m~9YA|37-Mje znaMZ!C3K9G*{!fqhdgrnPu$K$^4i*z`7r8;Z0EJ6 z`umjZ6L3kkdv|bG@T=1YhiFQQ86wHrYqy;GE`3Z9HO=ig_xqI8jd{OkKWf(Cd5da= zoIa+uSf{blZS z*SvS6kT|0wF@9THUWvYMzIS1|YK%0`CT!IAf5OAVf|iz)x}Vbph_912i*o(Ss? zO%5A~QMk$HCdS6ybi{l0!}SrNJs2r7RM4 z-MjjxyJhfMvmZ5Z@OK4;WbC_$bJ(v%i&ZyB>$!caAZehVV=&hX2EB&YzFU4Ogu4v> zG1s&K_Sze#jn#OzixZ3kz0m9HU0IK6D)>Ju{{Wb#UR3AV8R(kq)eL*U{a(EKs>cDu zw@=AWBgL*B%M^8+PXV!-CwPXdk?mCrk7=%FeyM2Yb}*HgMkNfRH7m6Eq4Ei0)$DKs z`{=!0nEoFwoAooM!)o+<;(nab)-{~3C8l#`sbI@sv@_cyBOJM{g?$bVDW;gy!1u-m zy$|BCvp8qh$CB3woU+;(U2RLai>YZqzo~O|5z0;7!}zoxlDSOL$EV3&UXn>>+{vfD z{0Dj&Q7m&wVcD_a%Kre^SL#TPYdOA;^Wv$#kJ4W=di$0pmWw28d)(}R>HYLlKNo{8 zT#oV0qH8W%?pOQM4LrnI74UC7Igq%b*I;qTNN9>(NP}GQ)iw+jUXT zG)B!1&?z6ejjp^+&;*QvHydVlqnZLC2{v(cx~4GO)^ms86@zB>M-T5*j3S--j3sL_7&1d7vC(hQ|m%=K*`Jb9#J zgkIK!>YXcWbFr>I37C%0;)V$~F4S|nHH*+Px|zkU?cXyVvJ%|-Xxh=j_gX9$5{_mH zd0nXBrzoa%`I`K$%pTo6%FdC&cID9$$8h3*OM`&X=rC~Hy4=6LR4Qa??Kd`Wj*8Ej z2pS!q*5Z4U4K#+IcpY|hDGa9|0o=GMh_vZXYamg*z&9psY*$|-S%bTG;F30(b#{qU zh={u`UE-=u1ll={bNjdiM=3gH)N@jhH0?Il;-O)*)N@FEJDkDCMRK9C7=s%9IrfzC zmNpjymDki=H*{T^`Fp!T1g%dKVr!%g?e$3{uBBj=&Ck#CS6>gC#lM#;BNn+G{{WS> zK&7jSZ0^kK1J9UL1)!>mp}IFEy7f*PAGQ4u`cNZ>K5Jj_R}8NtS+>yt>c(1;*K<$w zR3K-e?P!TQ7f9C!|b zfG+joXNH8MIE^%Sk)^s^>QlBJT32J!#S5b+&BN?C@hHYANt#Fa+!gXa$?|pOeOK}K z{kgVUIK)*K9Fba9UEt>CqVrq6#jU;7*y7#j+^fvF?dn}cxTS9RHQev;MyXEinjuuQ z?YNQcZ$x4!!=48vTvzULa_dhcb{fG|S^&U6Kfh1yU2lqSnnd0#x5)_FjAp7Fa;BP} zc)=Ww;NEvAE2=R{jeRSJ!F|`q^MtRI<)3vC+FD4BJ09Gif_y~gWfY{ z@6j+~6Bdr&$AV*|%v?+Op!UB>fznRf)Kxk%b+BqJO|v*B>uV&p@Y!eMu97C`=AzoRN_KFw5k4$6$)ic;ZegzIsH=~U8yOwO@Za%XcuQlIGk?Uo;pQe4< zEVQlFkVX|*cbnmrwr6so9ytbq%#+-w7~L*g<&b#jiH?fourp-UuDX^3YG+?JH3Kn< zQ}(^eW@2=KnM}6vO5$@p9PG{@4B8EPBrFW=p9hs^C>+3km@QUQ_%Z{ zVW;#*=5>jE)q-9#2S4EDYky2nuMiwk-kko-{{S*Nj_M;;y3V$jx~B)PBg?cX-Jm7c z$?kGSVf5v$%GUn?nH@&L3H6jySex`mK8=Lt{{ZWgP7x8{?mxVrQMNB>FL)z4bh-^2 zKyAyM7XGJXDJx%^N4=Kl2c{S4jXls}mK z)z3DNv(UM@I&}A{aM4OXNn^K+Jc_-$dyU`NkC+Zq4p$mL<_-2-fNO3^?2acxk-3No z$16P>U7eQZk$^Xc1$sTXfsxw%yKDZcddR7#rr$=~hBM)Ast;wunrzb;*d91E>N=^) zDpau=YL>bOwb{m_v&*WoPVUTWb4PE0RUM2|!xf&~l5z1vU9?qVCvM!q#@(J@a?0Y; zST1J~_6KA48TqLrk7jXRNp`2D)U1)9xw*G;cYZ2#wT3aWH?fpk zt919OZ^X%|eGVfNINh&fwEPs0tfv(04t$xz?E7dt%6X)YYfL+B2S@WBDk@XZ7Mhnf zETA{5RJCP|sn;t3;;OK2AG&O|AzY}XB=08IPFxffR&$Q}`5R?grw3(OeM1?NL&aG! zF#3(%m13KHcW)bJDo8vO2Az(+hmww1oZngcqO}k?vTsYS!Y`@^Jw(z}=Pj^j?{QTs zZ-esYW0=Qw_@Y#kMM-Gnu97?I4-h)&gwx3KT=LwOR)J}>&TYsR_a~tTD`Td_;u#*& z@veN@towFV&#>pG^nRH;*$bkbTZDU*>q!5QVV76YM_`4jzvzv%aVdpL&qg>lTnZhkqkdvLH_{xMGd6& z-gy9tP=CL_rs&_f8G11`28f088-)J=XQFEdqGy6qEpLjzkz=vKeQw zh-=YHQGw!=ac8Qd-Lm%8&HN6Y^f~x-WSN~DSHA<9UyT=`s4FR|Tj(C+Z3?xZ)N=@4 z6-hlDFKo1;+pa|Ub0skaZGR-bwEMv zxTe@;x{&&*3wu4lAR{*TYM6aj6#H}Jqnk)vfNmFk)6aS&!@&*0t>*XdL~q$qR9_!@ zaN}>9ZocI4_KU0(DDXQuoAFaJ-1sQtBZ3>t}P_#OkN6 zqIdWk6vZCwk;UlQer{S^r1ltWV-WM)LDGJ$nhw^UDR9_;hvujT6K3_|i%^TVPZVSO zDj@Tgp5vI+34W&MrS6E-NJKevG!7_hv~O!mEcq(2^zMI;b&(1-+q5$9RARCFTB3A~ z?fzX9;3&a6ygGND8@C^l^8JiA+K9>I$Gv)1B<BI7d z>vreN;g?(TKrzaT)QHZ4FmH9Dq{JBwYl+o_i=G;+jyqDi7r_%65|qTBQwtf^4(Z;C62Hq%(P+z!1gpusTbVwl4z z!>&EI_j4%aRT-tkoDTubW0rc$OV@?yq8+CX^i#`BPGgm~7T38?O$%=0o0ZkQ(+*;P z)jhM&N1J}_$MCCrJ6HZ6+88QBvQtQRa(ExfO}l3C)=hmb`klbBx{fF2pJAu1>6b9z zMZ)Er*t}TcSRb28?@vf9Z_IK(1*Fq1i%E7=O9`kE$&uV77DTHZONTN_%C}^JjO~!p zefli)M%K2APeUlGq}{u~uMhb@iH|NmW2=Wh!_9o5?IUWicp#w5Q$stfYC1S;V}DoP zyzKo;h~>e1P^5~B6sp<0UWy}yV~k{gbqL|3kNrh?)*VDBaC_y}QKIy1lm7tR+AraM-ccGbdlNhm?e_Mf7Rtcca=iYn z*Y&-^s*Uvly?$h-06- zkCbd&x$$o)cE2B%OUo?Ho*E*|xi^kFJG)e0Vs^F+H^}5zQ}D@Zr`}Ej+VBG|c%2Va zBg(x4X!d&wcNacmd;b6rRCCF`!eZM&{r9lqkC0?!10qSsgK4m*X>Ni5JuBO_@)qutyE)_3SUOVsmM1I!W^ zo&HZ3?WFLUki#rbWkYw2>6=AEXz@CTs3s6j;7e@FcXC#~fyLmB#k8&-4hSAG1!N(O zosW!nt@wGcxlbv}(io(1!=byqf$b+aw2)6vxi*joP_o*F1n*~EZgnf#W`^YE9Jr^$ znl3GNMJC~n)wbZ^P~;bz^|jNh23+*PJI@3hDj%& zr8?7Z)2_$TPLP#Hq*W_RJ?%47BcwW%svu$SB;<)^d{{Vcc zJFNgBG1-iJngG9Y`Xk8J$BmcS+KhJ;k0o7O3x;v5aE{l`*Y_-klAj~>v^b-2J*T5= zY^3_A9^mZmJk5y~AAfT7?Xs(qpJ4I%;x>{jK6iuC(Us!!eB6Gd;=$F|!{j<@n5yb) zr(xc2r;<&0*tnfjYY&^hDAU7|r-2s10dtz|bts*69c0*4n5;aJ8ZcAlmN;c>z$g)EV84NR=KV@8}tXX$Va_0VaH z0k;x4+7PRj?&fv86%pP(C>R>p*gZ(W z78g88@hj+hJUb4;u%Sgmhtov_Y$1{41bfNj-bxv;+apP_dnZqaQ@eR1fR=gk+j!&n z4qeFcV`Uj#!26fVe4mq-)z&^FcH@lKm&+LD6BY}HOx(>lgX&&tvU;)VY}WJ(1++!7 zRz~izuU6WKsA_hLX(y|yY%#}D@l4F%Urr<*I`^+1tCmL)9_+*pd{@?Re@SbLKNg=u zgbM0y@0_w7O@o=n-0rK?QL>tS+ofcmz_%MF81E*Siw;}5Q(}1=EIo6Br@tYh+i0tC zU`C~Z(8|XQw>)(2Q#WPhk+)@KG4XYgSfX_;JTk)Uh1^bEE{;-CHxa_!R4CoNjQ)`( zTQm+uMbANx{{RYNKVkq60$-wRyDM8BnV=`R;cg{@q6#?YFj_Fj20l#~Y!6?W%TQF& zMGVu_%GoEsuNQy!&w%%$XR^Kl+kjWTSGBP=>(p>1w&C>HQ?^X7QJPT;ra$ zD(>(Z_hOa60c)1nDX`kv@CMgaQOmojm4Sd|4(#`I@k?}U8oLXk!=C0pw~+I7j);97 zBs0i2^X?e#1nYHbJSP)tpCq(xl0Gga!o$CcZ8kE>Dz;TNovxBFSR<2wzcg)QZZvpZ zH9q?brIOdP%SUS5$yaLXE8mB~iFuq9tS0QcM{TEv`tVtaHio9Eu*o}O$l+|9hxgvK zIJVYe`%Q&W#{40%(>3`-kTKVLfY5889Mq<>_?|aWJkmh;8yg1@G{5vi;+k^~R#jg9 zxO%@^gVs{kx;mIAf~lUob284?yTLkx0wQ4gh$sI5Er-9k9gSlQr*u@pQC!F#e%hX; zxQz62L@J`HW378S#>&&8mDY-%%-_+OQ;bnZTOAcsSw&GG%p5oo@d(-=Ja`Q5W3yA_ zu(0igA(|-jQvF$kcJt|e^k%kdSew0#>?Za%zN4*`3||kYuKg;GUrf(l&Eh}N2B}$# z!!0nStCmM@xLv#tijnx7Mi^NP?cK?zc()WHoKVR9-D6~9iTc9s9zDuQaM#dco^B_J z<0yM%1BgbAt%hgRLRmPej`w?`KOa?U6-1Ra8Co;Xlw@0`_P!; zs1jZ|*`U6S3hh2Ei_`AhCEj06U&HW7dJ3P(-qz9PXv1Gp&$kPMf)R*dShgM8#BjOb zVfNn5J~mtEHtQLrdxri;WaG>uRK8T}n%uQC^wlGs_@;Y!x!pP4tj671f4vckOiL8R zX|Ua%n!cgF?QLI+8wr61_rgquC5!{`A?%gU_}i{{ZW3x{nFik2;R444u@o zMsH)n-`{!$)Ug~&rxcQUy4iEiV+X=_MY*_BG>?f`_+9!mE<6Rt!D}`$ zOV(D5-|*jZjQ;?tu=XK_$!dH>oXZ*VH$rh68qMK%5I#tj9(#2`-?G2K2d;7RoV^&9 z3(e@;6;Zs{w?=sYP$ac=iP9YnQXh!zD_YMg49lyo0NZ;1R{GWf|vA0&Q zUIAR&V9w~t55ZJ<{R$TzRzz$agVc^pdL73Lgr5c1ho?S3HEy*_%9@(~vF1KX8uog3 z4@v zxSdeqL~gPTNfz?5Hg)`y)$H`3Y*9D$R zCi5xRRIHh;n>KDLGoy9?07Vqy(B|QyM!h>jo1?fC$i_xnl65G5m_kdncqJ%|jXNo9 z7US({#a5PAwDw%#%#~^OZw?_ewXQC^xFcZ{G8fIOd4FYCJ#wy!HiPW+*F`Zb$_{Q< z_$C!9+6*oZYqUYLSh)S@#eA{u9D4EOf-v7#eAPl3!CYMno!@j0esf#LzJ7RW%V36 zCYay$96VKOr@lY4Y<|~y2|(t!hYd>|!s%~r(QCiU!5SU${kw~Mmuf9;nl8EI*Dm7U zQQc9Y-yhqpbE~`3ZrU~ON^^aeB^UkS-i;3U{>TN0w3u8J63K9UaZ zDd@YvIi}ps_hzwU?{5TC6p@qR!bUqgG$mEUDcu~|hJsJQQ}mewGPuS$E0DWG7~kPf z-GQeDuHJ^|TWcwhZ8O*^ca2gxCv@XPT~-}kgl%s;*fXm?G#A@2LsRdNqEm%(YY+IQ@;9G{FEi#k;>n^w`W!iW*`fk(72r0h){2w=8Vtb z?p$PV6eS_yaGFa;9?EuR@^V3M??eMgBabka;QKrhY5uFPZ8D(U+B|jfOv~9%*PqQh zDCP4&L2i9DN-lGBQVn$ExPUWRyaE9&*}o#E!tC5)o&1Bv@6j|2%u5}kcz8Av;_FI^U;NzMBbUW)B5rJMw0XXCIB$dk?2{xXU7`gLuIs zcbC@Vn&<7P+eu@ktEgu3nXw3U)Vj(&-E?OwcTex+z3T*`*y`G7EO18vWp zxbp8SAFx<$J~6knI7IEuPb8O^eY-TCK0k8$d6*^@3?dd%#Kt#(3lEdYuNb!N)7#Bi zgW==;Dy86bm-?hQb{oohPyYZfx8l7k=qxAy00$D8v@|g`!Wi`TuRpe5llspv`Zo>Y zcjx~AmXr4@5n(iD!a66u{{Y`L=`1vn+_8)v4YF~miLJX>j`#38-_y!An+2$+!1s-y z^HygAc=iKp@Yecxs+&EBzM>d%Q_CfR&AV;wZX}*Sa9*d1*HTY|R>3*5B#F_Rka&wM zKF#7(cqxjeXFAr%SjTH?ciQ^#)pp}=Mti@L4jkONvrpkvWx%N=lQu_p)Q6yYiXy$Uqgq|MLuzT{JJ%Ob7u9mUOO!9V;bSa{ULKa?#qyw$&3U*pLh>bf?`ip2JIvM7V|wcvPg zLH>=ZVYqWUuDuqa*c0J%O+&Tl@9Kd%iwr+iRO4gK!D%U0W;{0$%Hqd2Pu{Yh55uuG z%>1rym(O<$y7fn6!`Z>L7H9DSh*MLxm6GpX(!wro?upWXY}ve4W9c6RXOFC&&6P2? zEVYr7&}y_lOW_ekneJ?!4k{Pzejf`QVS+-VY7Y7tk=RpEJ@?@Ke-t{ls%VUm&+CFk zx)6&^w{;)z^lcXAUHB~BWo<=uWR+9p4{^V$m7zwR!mAi@ItbZsf+|jDj@J|?3Kp!L z+?qHd%;T@cNDFZua`Jlpq_IfX!u1aEUujCM?4r zGj8h~`ykjo$nWxirH;Hb_m zY`m|p=Bz;@oto*>3xH1>saQ*!fA5lkt_MS+xg%}IL9Nen9l+f1y4xDguEg!z^LoIm zLBZPc;!ynAo9kF`{;JGRwSm^&eO?=ZT^ z`V8Sp(x%O_v^tk7I~ovg+@}@Qh7l{}-vPj8=l+Tsj4+Ah-8sWs zf!)1A4=O=5~;!nXD#G@F7AyZuJyNg(Mc>!;Iyij~4 z^t5<;=cayo>WY2Y?gZ*B_mxtE6Em6VCv=;;1~6te0CD5skXW7&VHR_)#&$sEZX_y@ zQMJ$AhS|2dlmQX2YmfBh_@a0u^wgA-dE5<=`S0s%r(Wa*hEd6f&}U{)PJoA5z;WWb zTG-*j>Df^K07;$Flh){4vFFrcKsBv&F5)uZMEd!OhH1;1$RQSB;l&{7tD~LlWK6IE z_wMgip3uY4Kat{x(bbIhYwRs@M^!HQ(n#WU1Fsaolr-ZLw_K&q|0Hc=!t7{y` z?wOQlJ+1@25yB&=qNkd^Ou5~pAnGhQo=9wP)X9V5HB(QXNj1~wsz5Lp^z}))No2~` zvR=Ty6h53f7P4aJFb>ftnp*mY)yy7WV09hVSD?7~BMsfX`?F!k`?4R2xWgvlxpEPE zo{LD#2A>=cs*<&|q8evPNz_@RQ`e6~CX`29&f8l2jLa{@1oi`Br+Zi&*7ncc)ilO# z=<>K8Chk|v+oN`6@ZoOdQb^xW#}MC0&Lk=-uP0zwy+{V8%O{_1=MA@7&GB)MYkBVb1+{g*Uore>tI_i=( zkZ;W;JDZ=k$ZDlBLT*H^zk7Kgl9?LU+B~A)-PEp`p@(|*fy63ryP7gNruwKQE*d+< z8ZM#|JV5KX+Wh$<7g%aPfP)Cq-Q+ZBuFYFbP{$Oc9YFMno}Ii&Dj2L zdThJNA0(dwAE(B&ZV($eUTU{m|u7E<9?wn z0SG4D$-2#8eX-CYo3=YxvXXfYCft4qII(5Jn(UlEuY$2bJdoBhQOfrRno1U-WYIQV z>vT6g2)B9@Ur`-q^_3bu_df-Gw`gkR$Yp{j$9+pQHt|zFhYPEhG`}ZsDS#R*Mym{_ z-qF=a!qVH{)g5#_%X_dsP_T$wRaJ}_ps(U@*lq2p9z06S)M5BLSmrg(8s~dD+upLW z#~+?NwU%JHB-`;+r?Bl$lueh$=v^CMB+~)dcxPwuSgIYUmkg{E(&{o;=XWpcEc+#a z&2Tya`?gh>8t<&jYh3{@FErS;Ao`rmjpW|QYwD^g&PLTcULab^#Y9G0XSI#t>L{?x zB5Xy@biR$O>>K!9Fn${p)w4N{bA)Z?9d1aiFqV+zh3+70ugyeo>Wn|?rEnIqh7(gy zJESk(1F7#w8u@0%E8TuA;o9U8IH9S6CuVnG1EJ`I)Z){_B#mrQjWa0Y$9MCF*5=4a z1oZc4gIlhop{;1j#={`ub<6$tuEXePu;zzPJ9nD4zL6Q&J?yf3P&PllPI%*SLr?ur^V z9K`5&`rH%Yjwqth-Gj^XLQuhgUHz$V`63Ze8dG@R>gjG8COUo7L&L3;MJ%(EP9@CS z9zH1rpFI;ZT+IG%T~r0mm7-odv2)?g4w$jDa~DeB{vNkZXk{iZECNE$T(Ql+k5yV! z8pZKSXW>rCD_<;~IRnjR-&s7-hP~Oq7T52(k8td_9--Abnl1b7n=QDLt-6&=XfsAOSqI5p>=42GdtN}Jxl4tEacMf zCVP(q*NSuJo>p$&_c@~EbRASdy71GQYCEyoyR4Gst+!^$9By<<2^yB&1d=8U`AK(r zBMfYHn%3la*G}bGjcc@KhvcS%Bu~ud-0;yPtQlPvyWSjnB=g6H-+#mIPQF~-mhk@o zRUTZidKNYP6m5*It9Y5A^&@7w}1;&3GKZH9e#ln=2?}_9TzN z+?1kfBmV#uDCe&v8uaCwy2@SDA^n%M8*n`nP~1_%_UDGNhyMUG`js!y)8)He1MRP@ z5HB`7pB|sQmN=(r7Jj|XLPj?gOw3&dokH#GvF5un3-Ks;s;Y^TY_0ot1QB1ZhgDh^aLdoq6j@BTrbZz1p}#VKK1Txi7p?C zjgd@F@>-t27g-wH9T*pmjozR-*#JOgjhUI-%oGeV zx%Yc}2Sq|TavI08v-NnkXWcqj=c;1?b8>MOcMlaj z68Vg5k1p}#ap-__F)$s`;m1_%#AMrss!C?Msr$z_kIKqvV0%~{$=clmW{zpr_8*<=unT5T?dyso&YEWxLe%A5yU`!SOt{6jPRWwJ*_FlQ`ki zjXurSq5lAhD2cXv3n>Oaho9E|33VS*yxZvN=JBGb_ppr<4J?iI>0SO+>BAYIKk*G7 zE>9TE5B@4A{{R{~pVhA{%JHd*!@;J>rtLO6&wEb=>Z2E-Kd*sF=X7pwtpmq>lj=UR z$+KHGW!CquV~KaGrI)FnqxkMAJ#RT*duf2{gU) z@?MrO%2_15?1}m(Hvz&O#*R0msQS_7M1tKiq%C*aXt!1Ahi9;J{{R6O+?oCv!b@-F z9`NLKA64fu0dd}bNZ#?Wv^R<7w658lC>!o1_dER)jsr^HW!4P#zAF=l7NDn8y*t-ZxUkAa-cWt)_5RlTcgr`l`5fQ|PLg-R+sedU*M-o4>CI~ zxBX_GV*~IX$TIXVPu{O?oiROR43Z5m2Lsx^%PX`@71HA%d z4G*8=G}2Ipv49Jgz1)=t;ASQ{?|X6q_ioQDfm`GG^8T=<2hvoB`qx zt%^`!atvCQidO#syn<|Wu>$LF4$0y1+bdmb1Kp~@eJxWth0^5>gxfft zD(~8iIzMgQ_HK(K<`BoE)zOY-+*4f^4BcN`_jf0t(?4wK!+R`ph1+c?^^6RGk zIbMBT(+6`=)CqasGga$4SNszF8;VV)60@J)I5$C=f>z^uC0?WlA>342U%ao zp{N^AiMBS~hEi@-J=P$2J+}BSz4-Y_$0Ox=ar>=7mSSA&&ULz`?p|2p=KIqtg;gd^ zsg<4TZ!R<1=N$s` zAP$ecuf=zomi@1CKmH7f&2epf{CTu4I}IjY#e0R1*+jp=K7|t>=yk+!1okg+dH(-+cph5{{WaMABE#_`uIgl0)JNz z*t}VOgYOS&(OS!|4+7tcu;^;zK9>!jPL1H9GsfK{rJQ)Qs_#E(=}aw)ExjUXY(Hv6 zA)b@8OCRq|-(mjK+!gIQc37?k{@y8a$G}uIc4{-iT|3uWoSh!qcc7h@r17L9{%cZ( z(+(5HoMDRkO5gIMz%tUegY;ecM=aJKyqC@RS?#~^a!P4s99#bYQal2Qs=?FZo#%DK zH>^Ayqw^{4>bv~kisJ;$?DoIRj{z%j3fAeJ{{ZGr`d+kgbc(TUK=xcx6FB=p9s>UW z)A)pZC6S&wsRqx|7T8Ck&VbZBU7ZEXAtqW7mWYb6HbaqmF0M0Il)dM7(ZBSB{r#2tv#i4IX~n{plM zlLlCvN_pMIpo-TYB^=Uaiut${1ay?*R=V!U@U2fqVbToGeXrby+E8=G?}{T&jLi_U z+o07d6`biC6Pj6L-sM`?&39?dXd|ko#2b{gr2G_9V3F~PR}P@1vIdVVGcn9|PDGB2 zM#`qg2x!#X*M6uB_irDgSoCNp;yLv2g=Davg2Jx#rbwF~S=7IITdJlu0@ z(~<#Ik5@=cY+jFzxhsOYcwgvWlQ}m9P^P8J+HYuq zsVIyT(F31*V`F}69HO9%F+N6b4pV+FI;CWC($wz*x6!+WxDRq8n;JP^tJj^mraHW=ZI-Su-_PvMO=%|R>6GIEL{fz5h z!ba+0WnCkoZkHY(HI}ZVl9El)Zl!4HY9AC#-ge7J4vH%6+}@Bj@3xm!1!g9tskUg{ zuQ9;rt3os;{O0so(9JZcjEmn zqrz)y;*soockF$=8R^_rC$aSpbfx?73F-GKWrT?txMPFEJ9c%IYrtQv!l|QduZE$- z-&k{S{{TR$)5_U0MFwE-4T*N1^&a(+HO59*jY8=4EPO6(X4lmqns{F=JJ{zs84tYy ztb|h3hM8l2nyn;LGG5G$-N-nU0~C%(>+(JAeZ}sz^s%bMLD#c%4S<9_o}N| z>wq-XZwWmq7kl#XL@@g{sl?{>IU&?z*8A1kL;6=v!gtY*N9w6E`p+r{%qi#}P+HfB z#mWdavo>$gxpIH>S!jhZF__ZF$F>Ofe?|0`&QjA+c{-S~2-#9G zR7@26w#6e{dwu>3=_#>xVg5|(C39WaqlZ$L#R2U4-S;W%b=!Av;;9Tq ziQ4bm_bV{X6wUN9#(W%>kdpnKU8c8EMtu^F-#%(VqdXE0B}VslZO`&fDmQgJ5Dntr zxjCfdx^BN|E&Dlr=IVks_IP{LGms&1*!UrQzq%eA9-&*0)wy!Tw?vcMN}O+iW0lQwU$pu2^62Rx~(Q{{Z=7oZXAs zJhv66{{Ysl_o(`F_I;bSH!Eyf@4-hnBAxuM!^cI6{{RbZR86p`m-#A(=9w-NwN%Y? zkKf26VUyPez;QP2OX$zo?({v4sdXN~Gj`^QB$3|ho+{%SGr5k`jwNAyoL5%VVpTK} z)MusKQhhaABfWPDKeZ&1v9NQ#@FaMlvm3sj{(_?7iMX-W8^Z(de~o|f5~h7o9yVK zr}|oqE-z!;yH)(9B zwJbo*-PI0(*{n|lVu~(&xZPF>%Am(&{RXPe(XhA`f!NXh)N{CGh~MJ2Sj?BftB+X9 z$Lwa6^@pTj{MSxCkUfZul#k>>%+<&SKpn?YR*M&udA?r#R$g;?9c}|efsE6=ce8#C zTtMf`h+V_A%bE{IbJcO`8_N1C*j5c+jnqCII-S#&3%u}a2U2-0&K2a!o&qJsXLVGZ zcM$ekJBd-2ax~I^Bl|k)ye}5V%Uamu9&a1VhJ@-*xib{PiJM-txc$ zUK)NDQnFYhZc1l2v-UN){8QztjtF;k4t3r>&&S}Z=To5xaU2{`xrPWd9A4WCtm7vz zmj+85fZq1?Q0m&IZiIQRY+h5JJ1FVt!<%M5w(`VmX)YIu%Yox=tYtTyLT(=jc3br1 zcp_8zUaW#gG5Z5l`|!PKHy$|(f*O`OozjS|I=_kdDy+ro!*7+b+lEOd`OhxTuG;kyka~?z;dzJ4fbv{zC3_l8=X>kTk1MlXxYc9^nzGm1P z+wBcC;GaGxJx(nq4%bBSB$ozGVcdf6EI8F}I}HT2QpG0b(KJV(4gl-oPNh#4?s8>> zkY{9`D@U?>RNPZxB8qx9Pf|e!cfWQ$0{;Nv7%iFPmkm3K zUfHv9wmpueW8BdEk7vM@=6sB1Jeg^x7sJOXV{@uxyR_ao`++M6_0i0bQ}d{N3=R}I2x-xFWId;S4&S>>ZK<>HnaZJ5Dd6Z77s{k!q(@=fw@ zwV19Eu#jQU*R~2tWP4&JCi*f-C$-<+vz}FIomWjl{{Uln{{XpN*lHG3?4=B@bDmi< zw{VZ*`LB08W?u?Q<^KSa+i)o>Xl0_KWSQw^&m*5BvpAhgwK|PW&w8_nZ0-+?GH}?P zPcwlV$on=uZNX(Q>~|R1^Al!+eFgrmZAcu*An1ynxxz$~%IbQ^Og^y6Eq@Sum&0>$ zb4<5`edA}4`pu5RaMuA*i`TH70crTG)*}mOW}6PKb7#Zm);Gz-w}?08rxmcm{Gs94 z)k~>c6^|xL;oIY`zdcaxvc>R>LW-UWdRA6d#N&6w+cXYiMc2chJ{k4oh{{cFJl_z( z#t~2s-OmACsL4mYu?7kl+T%1zm zfU3%AoiMiW1FiFDu0ZR_tF7LqF=v<;d<&Az9luoD4q?l*#c<2IM@H@gwyalDR8?;2 zA(gDT=hKP!D)e*4=>ZM1`J-_{(NZ6o+6#c59?L&VRIvG_G;kevLf1$9pBs5W1OEWA zuKxhk)C_9(BHIS+o>Ac(pFtq`gZL`>xBZ-)++W%1j@3h1Nd_T@RM6E7^z~6X8Aa`O zxLE7pr+Km!itRQLf)?&>MrCv%;K^Vwqj;}^X{G*I*77?klw@sLFK5{-!-+xwhFgr{DoIhI?=;9ZC!OcTb=d}YrSjo$_ciEQ+~S{ ze6s9R5D6cOI{ermaUtk`UJRdz=l;`S)>H+zST8@%%!X zg9w6pim78ZjwcS#V7WSwGyttDMmw`uJ|}_V@?sPewQ?QhJe`=NewW~K=Fk(}#e2D5 z#IAWiFF^8JjBRG#V^ma?SmfVF;SjXUAoOCvphuXrg5pbcz4`LG_qao{4d<=T@n0Wo zR>^H`Mjwf7HpSfyo_~)oKkKt5P?LIKs;%Q`cPYnlv=XK(HV-q3ACSw}b z3zEH7U9OL4e4=BG!+kyxG@Ht4vKE_`4BoYkuYOC+w(JqKPs^pW_*(1O;hM%u=F0il zrp|UenAW_1;y^(*)|r%el_6^yHxwmVapPs_-bL}rD)t7C39QQCphix4u)$JA=gyK8li2jo! z8EEf)4>Cs$ZSP)YJeKE{6}`rF+!m|ycY!^G~3*p=I%fPhF)AXAg?dO zu*w+(a^dwZe3A1!1+_Q-099(M0*4L3>uPZtUE9QB7~ejc@HQ7bFU1VN_E#On@H|Hq z!YNzkGz|SFP3URMVq9!UxE42Eczv^Wv9oK`5w~htBrU4L@WC0@Y2^T$eUNSUp!LPj zR@BmAxn_=;_VcEDcH-iGD`)=zV%4>HJ{?&_RRoWyk36?w7Cqbo7maMZdjVPIc-|t( zs->si2q5)i2ZhH~SZ9u2s%{nr#YexuA6*@El2*qVeoWT2zaX1SM~N6=maWW%k_`Qg zWq2IyISyx%7ikaa6pwTfo;P+?ZjThi_C@%O9XwRo-xv}}BT05rE(p{P2bfx<%1W$4 zwekozua5Q-WjRP6FPb+mld6nP7%F40rHZCjXOc7Ov%5>IOcix;#v+2ESj2~0I>B0l z3nEv@=Q-dHv&~JH@l`CI)rqOWaRMyd@sna(cDmff#|6IGUnp&X)bw&tHIirS&kli? z;z&IfX_y8fj#e@)^L-Gpd;1}c>UpzTk3Pr+UUN8v9!dn zjB6CziROk{XxM4k;Q884gN?dbJ7_jCx_km@skVujjX?ce4FQ(t{oNJ8ac?@LeMIb$ z@rRZG9hLU+zdm}ZRoM0)Lx;W`Zw0KQ!lj(#k~il%b>MB{xxVeI!!tp%IHn;%9Tf#T zXRXPd@P~06^*Su&MgV82k}ArG>1wH5VU#`I&|a&D95RuRV_Pv^>82yG49&2y;tNi{ zG#6?%ZR2L<$3voqxX9K$nR8q`*qu(6>&HXMYbqXL4Q3-t3!#cum~VYiW@9w&!(7Kf zl5wCA`mgUk3fK59x;gh&79I*rND91?XRrgBs08(LvIruyhn{bma*|Vm&NDwN%PoE9AUoB;he1O6 z6PeGM?+(6h^jfnRl8*#^1n+IK2#05Z;%wwxWAJ4YU*DtCMURg_8!Z(#_K;nlP#fz-ig$eP5sAzqT|Q;4h+0@ZFsU} z+~~I;7BpLmSI0$_j*ofP{SwzvRbiEmqQoNH&cUACbWj2h72l3iDY(kbCwwi9otbo# zwr|Bawo=hEqG^ZJ7P6}5x3zsc{1Ss8X6!!E@iumvCJOQ!7pUM~c=AdEJmfW#x;9$( zJTLwCrPoGA;HF+1-;@eL-q??*&?ousUfv%&WGpxCH8_IuRvw8%?lr}HXD zO_{>R{ZD0SG@8kiyRPf>?*H0@~sEYioNNgBwNBl=2`J2T?}>1h7|3ocGi?Hc3gDg&Dj zu4w8I>wmJN{nB{&t9Vh~QdEw*m0lYhGC|VouL|bPoUV|%rNf52($dP?-05W5#%iZG zmDFLjKC@QLMDq;d-4sGrz@AM>970C0?weajwi>1%Eu>oKYQ*| zZ7i9#ml{9(beH(1Y~jArQ@_~^c|YYS{{Z@Hzt~QpyWCE+47bUp{1BKMy2k`ZLNE6t zU~chR$&azyKye8h^yKwT^$EE6DB`NkTWBQ?#a!bV;uI~gW>N=KrJ0P_LF3Z<|pOL!|iZL)5R+#k2`c= z;G3T%x_!whgPBYse<5r4E_Rx!1RCmePAyE+^G^cDR0D^#oBb@Q)zk=>6!U1y=5>%t z$pn(R>Y-Xk)sq#9=uOK5zG}I+7gN(U&X`+~{{U5K6Ta-`9|dM9ob1KAe|=R~6U9pr z0iyf@m0PI0cEx9xW`8Dsu8OnjvgsRcI+uTXD4#y^5pH)r;G(kb;^Ug#eE$H-`8iy= z%i%Yk)P1*qn?&9G{{Xdj`I8qd`bQ7d%l4ChHy!J|Zn#uVFP2v*f?I*dk~(5Orhl}C zqNDb%{{S*yIGgsa{{S+KfHMHQKt#V^Ft;_|D;y&ASkHS?bx2QCbi{pZ{{U&*TPXdX`B!=C z{bJTC{q|j!>3u9$K1U?{r}N|cCUZ^|?){WU`Bhy~rS!2s@_9dNK6vl4)!uwT`nIb1 zR~B?~K8_>&o=@2&ik^3uKAJoA;F;!hd`&Y{o~ldpPo^dQM=$K2WkNquYku-?nNjkK z{-pKDym*iDIe%#U#*lk1UFH;deOW)urCg7vi2nd5m-dI~>MXvjpXN*E6k~&=Q&}aE z^spc0a{kc$A5He0lguf)xT)78>0&?0<^7@a3U9Ra-eXPnoTjquseLR@{H|Zx6Gaav zxgn&BC$8l-Rn|w*#b4#}{>Lz#rFIuV=5uDAIQ_{!pQ06_tIcHu8;~7fP);Rq;Ih9P z29xJ<$?dnK@{t`ay%f52Z{n{r%G^VREWdK|ldD$@-@LQG3x@lRasEr1eqN;)mL|hT zBy@BVimMEdeX@JU5^TKIwppjds&N{*-&Kg!NuAP2?R-8T1lGvdS(VMZh`ziPXS)5b z4lBv|KTnSI<9(0uoLrokeO^)TC;0sy&24lTtz|5=Es8gW?rm`5EpvNmYy4NHf7^x^ zcNf8kwWE+@3Hau+@uoWYr4G%RFgN#?Ul+l{JU5%g`TqdP^yawn`j2Y=0JiK1{-YJ~ z%HRIEJO0}6E+(H7J}qzNyi)%Fyt@A7uljEbgZ*2P?CBPb53B2H68`{9;yL`kE7z(#qwM{2Tq38dzgM!uhl+}mXy|Gq?CagZ zc{#CmxqJF4VVUq8&2_qR;m+yh@NtvvULVS3mHVE|%H~qUDhoB`cIj^QOBCDkSQuiC zVlS!hUUMEVRaF>`)ef-zhbeVNw_DA?M-E5*Ue#jX=EkU z^)7E|{0;kPeAAgF&B3?2M!1h_POC{YcO{ofT+w+i-kL-wH){SWEW?3F=9cTp1+u>_ zyE$&E%IP!qU7~w{&g1>)qdzWpS1D8*+N-#4@?ZPnq^6QXCQ|2G-`^C`Vea@VH1a^! z4eN7rza;G_p25xa{{X)AA#o=C$u0{$TMx-64Ni+Cy4{2iH=G9PZC#^e7}1Eha~LzvfgO6QinO zI{yGNu~#8IaHb49^ndZAzXCOtj9L&Lo@h;BV^zw=e686?xy^_97YrOX|n3L3WdLH3ZedgON{ z6ZB(`XHvQ+T;|e$z#px zw#V>8D&XC}Gh3=PQFA7ph6Pq=+FP#?$vi1#0%Mc2+3b}rU>TgXLg@E$*t?pMnRzYP z)%a{$2=xy&Ua}_T5)Et;KwR9+8Vldt6w^jzr**g=xiEtXsPlUG` zKMp$RgGO7D&u?sKM|zo%?-{zx>rC;SX46aC;HHUHUp$VnbD9`9`~Lt1)mU_ObZ?on z?%u$34IH|tDjMi2avcaZH{qv0?~=E?r!34ezS?QS-m=L-km0k<3}%X7O&4t0*3*y0 z9dvQb;Vf;u(e@tk*PYdTG%`F%j^4%q)b_ZGa8ge51%|cxRTX)FkXwC$o zHPYsh(nZ6W&Hd_=UIgF(%$4EtTsN+who91@Sz!;IoW_A@TtyQ zM+q4_T(88cu-1q-t=%`$4sE#kt8^vxTQ`VbE!|)*rGPg-1oQ&wB-{`SoDUIi#ZQOT zdChAhmquI}5AKdAdrP32(!I>J?RN0$tTMKaF{7Ma)n0(y*v(Z|B~w|rXpA!?OdOll zE9yMo1Y>4)N7YGhTKWx1{{U4&inaiCcCO+1s}pYLkUF8)xZ=lN!B0@J=I~6$G1@aG ze^?I-s#wJ&G$%1;LngQON4Z*>H&eqSo0-w*z*DQC^UN!?F7U)O?R&}swRSJ&J1GVe z3$yS2B%i`~_;CEt`bx;+!(8^Z&ynIkclHpfi5zNPUhdZq59ph`c%{l6VRd>_MFVLo zVsiyfNi`sM^i^9OZ4rD^vv;5OdUxmTc5OT_ z!-p%PrhqWBI|H)6yy~x1;;>QSuBW495#s|5C% ztN5-xQ#~i$Z(DZqQZg2@CztnW`KXUN0+z|&v zF$!JtKCyzupEW_?UyhbjVf7wuQZK;qLQpW4xZ70n;u;9iS;VQ^1yhSYt;Xu0Aic%f zAT2{Fj+x^!gd6)wnXO^bJ%yw5>X2Tg$QxqscU5`Kiax+{rArGX)VDRi)f3#b_L|o7 zN~Lxw#H|6Gl;GMc$lW`;xfI$gK5hHJ(VWg;IU}^VWJg+xhO@sgH~FYgc#=6{lX%|U zwI6Z?Q795_*zBGkJy!l49|JO4roJK_$Fx<)Z0^Md`dnLc(1rp>g~15f?dP;nLK^G3 zLO|Be=lLn+qil`OlR_@FwK!(SKt|&jmTa7F5N-75p!r!>{{Uk}^>wee_o}h5DE4M4 zBN96+1C70Jim6$Enp%-0ZO+C6e$V2xtf^$)jtA%C$4wL7W{xh)ngHq3s(Kq`sp(~G z*2$BJw=FuNCJK|NeTN?fanerhT>Uzww3=D`I{oPCU6db7P}+R2ZhbolYbk4ncKNKX zy3ziS4shpabx!lT&d?LeERLhI9POOMXUyXihW%S@6Fb=}&lz%ct z3V?3+xb^KLM{;B7_D;5rW=wU<#@679OATaxq!IySURf%d{Kf9d{vPD*{Y*^t`C7-l z8ZOL4bqtN5HTPB-BaB+NMaKzrEc9*F5u>8Y#~Jera#>bIrKA}*(>GtaK6!T#?=rLj z)jGCwNfRWM*&`y}^_9dinu@UKPF>J9_$MLz7M7wp8DjR^jrpd%X<(c|a0IJyQNxsW?)z)eHEuw}*-|LxxpC$L|=}$=2mMhP9Y} zcE^yH+uF8)OwFYN-=gn;()s<}H20*NYRoi`V{XQ^`dpvyg0oLc7VFn$L#X6{*JI*W zgGUpoZ++;^ajF()m|pL2Mu%3T6@s3chG}DaTOie$Ts|v3CM{7cW;eRwRnGC6&hfh7 z%-86ihNMddL!Rt&tS^3wK-nc=$)f<*!9CHs8gSvEJiirXhSoE2wwC09v=OvI%&qjC z&p@G;oV13wv~7EZe|+Crjc$Vf0430tZmibY`svEZEr+@nw#D4pe{x;WIm=yrIA%np zh_veO0IG=1?8bAl2Gjs?eZA#KY&35GRIVvt$T+>(nGptlKT1|1V9FsYtM!HeoC!LXFT%r_OXu>IjJvy@2}ZH^k;kHf7|EOx=AXzXj$T^aW|}HN{>%l<$(ZY8>*ZsJ zZvk|mZs^$1?~06^t%;q}THGs#(&g1r$W+*btLg`DI$FljyB1P3Y zT3Bisy`Ej!;;S0hOz?X0NcoOS_HqN@g$zYKJWYEy?sy{49m=1Y#~n+a*ER2u@XfD( zf}|?l9GM_QY;M%O zz8{KYuPkg8FCq6F&RrC-#TD{PK23doNo^VSoB6Jdt&#REX(O*L^lY@b=COM<5kCCa zGA5VUR)-RqmCSyJY%AF7}3Rlb(QeVU0G{HcDJ z#mD?Zk3Uc&LrXjSMXlF*7kTwtc+W4*K+ISs1lv{x##jGU1L@kNErexk3IR zyL(hnKl|#t>9|j=g~U7a1Zb9qKVAO-h>gi=c9Fs;JlXbt>u<~bRWGHfi@|msAGy|D z=h%O>hiUvs3$+_XJE_Ad-2pY0)*z96kJ$Y?9hLhhCq8pm+?ZrpWhL4M|L!cMoBy zvb4k6W3>Degkm^z<=2j=2X6!n*DnrglsJHE^F+r7>%mSAV&Yq`e;X??R))2niKDzX zk^-rgwsU_Cxbl$C=Koj9hDFN?7Wh45gW~3(fFY5m9S@NcJMXi zbhrwqw_@(UB>v0DCxTXi&!ljeVga-d;eOxZtGc3u%;{jGa1QG0C?zy`U6VJz`l_)= zA$!}!gOUQw^2anzXl_B?qk^h>eA}s9!1Hnw{*n!AhU-rCN@~d}BoE7MhvD2+MG5aK zW#KG^D5a^B*K@o}kmHC{H;k?q)j;a$kLz82iKK7Lh}U}(jnLA!St^(U&$_nW)&BsQ zGtY1AM{e}gK4qYdpc#G%hQ5Wo8sr6z5^>Od>84v|v-M05{U=Kq?7{JJZ`1LH-K}U@ zyw?LWxFrFnhs^+a`$phg1O6NpZ}Akxz}?6Bkc&6uo^6mGi3gzhDa2);%BBYAyRc@I zci6=5&3zw2kW<*URu_zfW?bbEC;{g;vPu;*ss-IHI0&Pawsvamty0X|KgVVvt%S1yHr*t@j#QwNpzqx0z zn#WVaxMpDY^IvJfcP5`T&Gy@{dg-_It~`c=qK|mkV$APhUpmk+yA!B>W z^gTx(x;wLUf;PIT{PAQ9g%#z)@xc0y*r-Y zb=8Ju&H(AJB?|`fnlRUKKJR+D8wKR;dYx8TRpS!G4p_j=$DdR|vO9GCTG>HQq>O3l zpI(Y^J6$eUHd#6(OT2KA&Mx2=O*Da&?Q5-hE>m1=WIf5`UP^ZQ+}38D)4XC%V0M9o zs_v+h%<~5}?tRLTYg1b({akt~#D0xV&T<>0WSx_|&hy#qMo+31CRyIxxqC?_fzTQQRmr(;{x{1G$1v$(YX*!Gf)A=w@JV}Kf~b+V1*U~n3zK76ck4R5_v&Z5A# z(M=w$ti6A5oS_Q z(X%w2v&U3Aw-;pDp^3kO)hG>ZL}kF`7UOimiM+R5rrN6KIlg^vyUo}d47q#)VPTkr zceYQ0f1iWwJMglvVC!USKpN?xQX5D1kd(rz@ksL%dmM^kG3CzZ>haA-zU*5s#X~7? zs9p7Z&=cjmb2lr;!^J1sX>O;Au0z@`*Ej_2{IRz3Ww*^G7lT~r+~7y=D{RE-qc?N( z7F9Qpmgww9y(ld%IA05%EPKD>sypM!20)D;&UBZ*N(gniK1B|)voxZ zq8fe%=RY$Z*ADk6eu*N%&2`QE6?$Av@jtfbGsl7>7A(mbcY33uMWiudQQpqbuAXL6 zHPACxk88OQ-a|V*8|+mdqPKEypFV%d0YQtZ-wb4bXA!Q4-sO>MPQ^@p@dW2lu(AJ&{FEq^-XcmlRHY^Nwc#N7`4g z{osw~HG$`uS9y~!)HDwN0L@Datjyg7?ck#?DjB7f)sJL7o!dB-dTMRav2EF7b)BZf z8ymrjT!rJ|;;d2Q&Yr#W@;>dTEU&U2OW4VWo=b7 zv`%l<3tz*E+@m(zZ)1(_2cL2 z)jQ}5i(dUol-q)cU!N^hu6Hn?7;GDSy7#EB%=o9g*+-z!0EOL~rMU0`H2RwKPA9Xc zBm*2ur(12y$X6e!Aycn5rg1q?5@G)U?$N8)0E@eVr9-78Wn35STebKpp)_t6^|>sC zY0tI5{{YMjR>E)U*<_h%Hmdx$r{t?2R5uy5zYD3EE?-;KRLiyg1tTTa>z>8!agK31 z@UogOSyA3!+2O9L!zUbbTjsOMD{IU?vU;x^;M(rdOTHbV?SG=o(&i$;yip364L;A; zNO<|Xjs3+p4yALOy?&>?s@BmLH)L@~k7g6_T|8KRYAs+qlt-H$t&^oam#MoYG)|S= z7#E#+8G*CnSftO;M8@lz#cT0=Kvh;bkvY4#^cUgcx~dhWbLuC2j?&`jp2^`KOyaD3 zzwWg5&QAh*Ayn{BTT>k@9k;tn^aq;sd=fvRDA`WdSTjR@B=gmIzdPj4JUZj;w+RkP-7~e! z^Iii<5M)db;uyI90FA@N&a~#M^yAcTYsFn}VXirN3o4NNXS1!f@KaAFSiO;cJy*Tz zIe#jdt(ccv`Ywl4ugyorx8S9wxXtif)uQDrM?H@OV9F`z+~dq>hf)iW23=LmT!9lI z9xH4kEP?TZYyzjI>1H-U{&iW}_6EN7q{mza15^AYEbhn)dE<|F;~?xgqTfyn7Y)_K>`Vv1oz8TMJfVI-Fw$^WIB8t?oH+%-9y5A%; z;&n1+8JZvM4vKnAdX@|(?qlbvkdR2_ZlzGIG;O1Ftj`>e)Q6~27d66}({KA6!R6wp z)z?8wPUrn&#{u4>bk7vC86D{5?ThlV54?1&mS^fC*SS>1HkfC9WmBCy+|B3Qrj4Y} zxt3SS1cJl0qYv~+gtjQyCUaQ%Bz?8z`6BPi<~Vtu{Weu%dp%3ZZq3ufuzCNjoZA zEV(!afOz+>8`wRfn`SnE5kBsMuhCS8@V6t&P}Z zKP7Wv@%CWb0Z7;>L#icwnWlA(wdHkR%OqpXFqe+hWyajEcHDfBy^)@tr)BAAGqyR} zUjE*f7b~|MJA7#?EV9*VrrLK%*FDT}EEgoXPl?pQ{v2e~&+Sx_3Gw29&lXxa7&7k( zx49a^Fe+Ja%9_fINsz%xH!k0a^nZ!8lsmaKrJ1B+h2v%`dMi(`ZwYe zJ0m04j)ba^?GDLSR(Yi>F$u4GJ?`x3&q9LZyX;1h+q!uOi1s-Pb0+Cy@pI11bMTGn zL+Lly?E@-a=UPkY!5KZXcet~9l)u}1h=V=TYT2H53lp+*k0C& zBNlr(tbXo_m(qqglYOw?y=bT`cNJ}RueN@cPakEMp{sW8i)>Yol$sy@L!18qnL{0; z+=%Q!ANH3?{{YBR{{ZtT{LlP3Ik>;G)}7G@!Zv3O!k=9$Vc*YMNuF7IPJ2(Yue02X zlCv92wqs{mQ@X)x@h8&6C6jR0!ILix6p= zkZM{4ZVq#Qbhx(H*Y93`Ur8+`HdnqWvSr>8>>YTZ)U_1Os&gjK19=gxk9zbhmdpBc z%$~92Qxw_?8TN{UW?-hCqNqnJSy6nkhUNs`;B)84LI6}31nHZg6br)%n~X#Dt8q zngxq^HrM6Hs=bY1@Ikg1#O!8SU~tO&-?CcQbLo38G4fV6E{d}Xem>gjO6SPgBCOu! zre{XF#^UE&n>VhPzUOHx@H!7Dc%~y3H%KWe;$t^(yg9FSP+a0hmtJp6IcuV2_PnRc zEcKQ6-_i5Wosp98#=A{z)km?rSzoc(RZTc#azR?hM=TOIi0Th5E~xEJC+AyZSyKbI z-M!lfBW`M)eI6`K4kel72Jy6N&3Wt5c6Hprj_3AOF; z`<8OI27PWHNnUh~~-hI!Bxp8RP3`cTG(FL9fv~L z_-DB~{r>d7;ao;3Gt#zsqseh0;rANWU3~U4wub?{{UYt zi5=%pxq1UeAGB2R!4o8f^u$OW{{U=Qj!PF`hGP&;>ZZW?;F3~7jn}h5(%|qim&vUC@LR!zg8CY?$i>NIi!u0u)@iA z**?&Y$DX9EZEhJ;Rfj;x-{!nCvrm5lfb+&;HB{%%K8}h8M0aerX8!<($xT@__|6{2 zQ_Axu^`-H#x5(XYW0BVQB-#jQpvm{QP6juL&X3}iV^1Y?UtR71ZZSIYmG>+k%O>9?ij~d z`-n$nt&V&`mX)%_BNzZC7hGxHsAE`FL|aSxD;)jd4`B%O10$A+&^?vg_D!e&ay|D% zaLPDnwu=aRI}&-z4o-si)T`Ll99VWM3##I9GBY{s5vcJO>Y${WKk+Rb(|U6(phwFg zzKS!yZ4vZ@mUX*=Ya}=5qj2o%yG<|2eq-`-xN_R|@binye5OQOwo%R-oH~`D_Zyxo zCicD=GCi3I3*XC__PMe}9D|2%R4)Gt#k-;!Jukrubjaap8o+IqAvC@viqC zE85Bl{F6+BK2p`{Scj9ETBvt)^^SxCaeEtm$Srr1I_PlM3TMGnJ0E+85J>5+i{0b? zTjOQ-;??wEc;5FDT zC5TjF5k5D`8%2$~`QPtbJmfD2=l=jVmk%#qKQYmV1haMH)jJuF(w8~dY_E>oSzLOPha3O(5@JP#g~jl;${XGar5|ZeO~~s(<+>4e^vI z@vQR3j@HplE4j$=_mnoW4dpxC_BHn}LUzpH=QF(5Av%&Ce>GNJlfzvM(B_;nVW`id z-;epIHsl;m8QG{W0=I!JG{^r=~ zt7DrtRa=WPx*1|50ek6taleX{*nTGJXyTeEi&*mTSn+YiMqfLFETx$%rczLR6#kP^ z&Vc?Zu3-)rA^qa5(&0F@CT9v)Ysa(|TIwu9JT=X21my2N&jHk)<>+DZc(44Umf?^g zBvo8}gtYKfVin?^k1J#hGHT!fxA)B~)OAq3#niKadE`(;Dq?=}Cr=x|BI5C#bo-Y~ z=EL@mm1;62qXUKhL@u6Az$c}WG0ln`tz&>pl190fIc^jBnEuPHL3_yHc@0*pVm$`Z z;BIDI@rj7{wB2Pc8eZegZFV{~ou|MD{{Rm8J}p>t@=J?;EOmCm;}RKhyi!-YHuAP( z(%qx^D|;scYBr)cvs=+fZ{XfOmjP?97X`s*jJ7xecuJ zZ(thwJyjFX>!KrwH+JyHI>&a0?$3scw{g!=IhWB~p!8Jlmo>T{y;FRak(soy7x=B7 z$n1qaKeH3p*VQ`DW6G`c$%as@uOpYs;XG3MA zIBjd2PWfI2j5AZ^5BaJ7m8dZ~KR3JW#g_SkxU#bPdU)e;{?XNOGcKG012bC;*?Y=U zUt7K#+}AJEWlgP<(}HtwE2E1Ydvo(;FQqy4eUwCHQUjUyJOXUJLg;Xt+6{4Yv|I(a z@K4KPpSo^cQY1J_oY?1XW`Z71xe{Zqrvv;*ZXN?ibF3+ZFUY|50XUMVkDr3LEp!s ze~R?@{{XAyIi|C_CyG_exGfmDTEggN#c>#DDfE_iWCuZE#m8QORz@~9XzBLT3zk<| zo8sSj1O&46SA^bLtqw3Y6J@I-!!a1^D{Hb|Ss-z=e8z6pgpF)DYHYH&ztE==beJ7O zrKEIuts_m?`|#8aJM~g+bv(5DZ;S8ZaNbU2X*>%^7AQs71^YJVZk*OQ`rh3<8t6EaYjY}yz;=6TX{u$}Dv4QDOfwoPmsq`{ z+G!;H`e}PzPvtjxS&88IqkD8OqqJ}0(Bf`mWuK0IaX4hDQBlt&H29&&d_q>;aoMjJ}<&bE)KvOA$PW0txOa?9}c50JZ5U z<6~JL(hPNn3zmXbvuUWAww0Kk499M2@QGrvW`xHhTIXK;y7(%&j5sE%5smD~!L~aJ z#mn6J>t)L+IsnoMZk)I%HeU;i9NJ2JK3vRXq2!Us2H)>qfwZ->_}vcBY|S)U;S`LO zmiu640C-p|=aQyxwwHYGUOFOAjllbq%)C>}gC5b5sG+E%ubz%vu~bJk>c^2MkA}Cp zE4AA=He(fni+{fo!@b@X*m1GvpbKL|hQ+m;Lxb&gBUs2M{{VSmZN_E?0e&3xzk(a( z8mXI0fYRf1IZG)jrKLO#+H}4ALMB$&FAg$V&(DA|9fli1%BN@ZffJdRfF|8ja9jZ5 z_)afcXWg7Kn|+Wr`^_9}d+F+^#ROjOdXgx>Zt=~# z0*k+*Wb<}IIRSs4HO=z5FCQJT>i+;0@$u*R6CC|H^6v|u?@9n90M`4{Kp91}x}FOQ z9KEm|_iOTBGsFJpEbRR&=2`LnE?qwn&j32ZkoPEvx^W#>WnWp3iKpbenfA)%O|n(X zv|6Fb60SgZ1;ujj?4TrMhWfkuC}yfT^10Tsc(8J(S^%jI;<)+op5DK}<-6*bO4IIA zM`s&{aO&4RMha=7Mg)l-{-vSjtGm;A~nYVbYkg3J~Ta2jObo^x?JSwbW& z@9T9bk)GGjqKg5}EM}Y!0+GeM6TN$Xqt;;iCT z26D=<=-rWk6Pk(MKp5-ZI%GD~q;3GO1p7nw=DKfP1gc!8#XqE_AX2H;qTDq2jGZZx)Wd_}{r! zHw+fz^SZSSElf=Yc&&T!;-ac7PU6;F^83|8I}J11-DD!d`~X%--W;#sN5N35fz6H2 z&2SIN5lVCF%bgNMu5Nwl^IIdWs0oplmgOJamebQJa}A^%k2QCBmA3YK)hwWDcyd>6 z12a2IszQX#Yie9LW(dv)P(08y@r2vlhE|6CU~dAX!e=e2e0iH`cy_s_2c~XHryfq` zox&TPEv@_#ztqjsPl8Pjjne-B-PEB=7-?zWJ>9q3O?%MjWNRC%+QHuIBY49>!)Rvd zc>ZWbe2~SvhAfYHVa|U8-WFM@F8(G+8ppS-!kVJH&L#vopfgL2FZ~dyh3Z+l&ppd7atN@P+IZ~iGj=`7II#yr!yIzjFbK=Y_nWCI;{~r_cP%^ut3^jG zOJ*^*HtcG&(pK?$*l`?6I*4iA9BhrOb4`w*YyJJmeBeh?_P0PdS;_2=HfuYF_ERb% zYieD8A9AB`aBsD#I>6smSaxL0J7D}%fFa(<;inew#oz0Whkn3%2)k>MSLS*e70OR4+DIJzI zoEyi!`l7PoE-=jKU7hg&M|e7_0x8SG+1u_^5yKse!?=#R3wWzEvp$`!F-rElakiX0 z`UFCc&8MT8kITP%Y)3l}^g&^JVUh8Fk zi}hUiYGXDn@A#=?qphA6F_iAG*W#EDkJsY5M*|@vf+-%$;<5lmJ%Q@3N3oU8)<>~{ z0i7qBPD@)J#gNZSKfzjyWM~JkBabu&9V+w~_J0g!p^ej)RXD;Z;?_ETI-uTiB9c#4 zt}15X^-k18<>+2(8+BtEqb&_@X^rZE<%bweQ=953*?~$~a`u9?4-Yyy-Hz@`IbwF} z)wtnv!2}HKGDA)qE80NjqmK%K++5?#qZ74`Ypmx1YZYE5?wscKZ12G!pz0Wbc3igV zm6WarDk&{Jo7qs7$TN8T$VxX}KULQ2ZVB0*Sz_hP4R&j~%0U-SNCw_X2nF0VB~2L3 z$0bKYg#OH&!(TzTfei@MAGQn ztFr0+^GqTmvu}!0){kc7`;*w?F1&|TA&g%(UMLE+)DNhp0v9wE8~E8pM+4(;ZLQFb z{{R$LJzhIHa(Z8Hx8i#?OF`$DM*jd3rhR*c?l2rOX6dc(?%;q|?HumU6kLvycq+2v zl_vwH!x}P23!Y1ZwSE5UAxl27T3xEd>#+!gbu|)9$n^m7RY(9`b9C)yQ^OPHkOt~i z3v`wn2rZSM--=`4Ejf#C_##fCk_uo3?&Gg|uTgqtW_!5u=kG#x9PGvV=J%(zKWjFe z`6tBYx@I-*)4fYmA8ci9^fx1_YFFKy!MU4ms!1#}Gb?q{=lkwgDCsQrXVtIN_zo)E z^>o5_vRIt=^vb7c*bGofGxD@@zfBdXVe~I{Y}Pz`f*~-9?reF5_0vOc@5Kq0d$sLn zs#PBLkAcjca1V!77Ppoc3F%G`4rat!>Y1p1sQSQ4F_pbm{o1pu%Qw?KQ!l z#rL9g*l>xC5=)@L5diTR5|f)7fu6E=}E@dh@zq#?K(kb2napG@G|hUUO;2*{+)% zBh8O%n(U@GxtXnP5Bi`T9Vu&^AItmVyLA&=a_a-ny)O0bW0{$@O!evYZ*fUUw_5hy zan~}Mn3$XD=I5s)+@hurE$#=Oa=#o5hl{Lv`1QKaB}i-HWP}X7dRaeo*klbp^$gPP zq!w=@dnL|fe`(wY6&q2+<~|>CltUA&PE)4@l#w=5ek3yCUS%0}ZrzQ(&WUB7myR2X z@zKX;J1w>QS_J1|@f%t0)mvpYUK|yZ4Y+jGVR>}gaX_<#3w>+H^CTES5XN>`%Tdw#fX7cIXlYM=QT52FJ7*0?s}R;~@N9@}(93}YyFa&A`Tv%k@4 z_3AGa4F?d*e3$QBWyAsX8~$WSvhC5`_x`JcUD`Ybx~uxdc;I2GtK#^Ylg}mXUMAc4 zc@#y_jW6O;NF3dwzp9_6qrNg<^jq6R$5c3Rr?R?jr%t6b^&C}9)0Qf}baJ}%zXaX% zZq(EKdMgfb%l+_BmdTp=bXv;9&pM~Ru{-Wb=M=o6aPJDFq~~>=c3+QoM9v=9ex1s; zmHz-brpn-0?NfyGjo{aOl>p-2(RIKIeKT7wyiWjtm(D560dw3PWyW}aYjC1-n|tNs zaqdutw?C`h@IYJhhH`cMS9#naoxWTZSIRPg-xPrF81A~DEIPI^u1lL}yU)Sm&RxJN zFNjRQ)6(Go0DTou+^^R{56J*}kj+;n?hOW~!~6IvLl3PPhW0UjKIA_NowTwChjHdn zk2}nJFV#(p%*ES zsBZW*j_jTZ)fT<;G^kq8=^4;!kXT^g9Q%Jn$2G0ZZ|}WBJ&vz;0;XhT%?|cCAeEeV zO>sOdm};AMTm4nHQ*U9jb$+^)Mf8;*y3DZXoH&Wo$nHEqvRaF1Iojl>GL~0&Ywk{( zmVEC4x&>QOt%dtK_^!4805pz?@o{aek&Yp{s#Alq6)AI0xqH+^j{s7$E=!aHwC!I+ z&3InWq#2kX@>lIK`Y@!@VP9Yg#UlxEoy{y+KvxIE5W#V=n4l<@ztP@iNy= z;xz|buZkie?}fYudlAD$_4XNB*_~5CBkd(OX}9B$>OLG7%YXS770-_yJ&)tRH0ppd zTq=(2dhPe-R;oorO?%oKAOPvX3wAJXmUd**lK9>ZJ$roz;S}_4pAe3)J<*1a*y@YN z6DDS6y$y>IhDV5+_c-^d>nD8_5xy=jeV3z;v}NbR&U~R%M~CeU@E9X-k|67zOUi0$ z-&a$<&1{3Py${QS-4;JeL-d}AA9yw^%;UC9yvJ4dUk4xdrF^%|%l*p^&AW@;bM9Il zn8WvU-f=IlE~phG2N180nZEPfw@it!utwbj1(#1IdYWO!kL2qYHP=+}e$(mV>-a0| z11h0cbBxlnHw*CSxmygew`&@Da8kzG7aj|kEdKyof_NJCR!w1#0j+Tka7znBjj_-H zbotx*ICl$`)T1jTap<$jadMfbEN$$I8`)codMOF}dZ-`|ymrb63gmY%3;S=?b7bBp z11y&=;MF4qw?n-}ucsx=&?^`EfzVxHTDXI{koT(*#y*gZy%?aq;9&bw*;!$>B{Tm3 zXBtXF8?8fH{{Xad1kARnrD66*+>`$Rp+Cnb%{<&CVrWR-ODlE;{w zz&~|F`mM`eOI%6lwT$W8uxw;?lr?ymgR>KwUa3?~Q#S@VjOJB*gfwR0FMi6}Sc+L4 zH9@?ua2-3B2$>sxz#UTr(dFzpukT7FXSB@AO{C&S1~$nALA|GVruoEKY#P!0Y59bD zdg=BCxaDP=r!jRK3(K789pIyU%_pE8Q;f|G7Vs$9X(h%-ABEIBIOROb>1K@fTI=Na zD1@zPv$EMOjVHL^=X%=w681y%cO?#Zo$WU2Mr7dZpnb`0T0e3edoI(7?osaLjkgYO zU(H<&vwML1ONhHb`x=m%Dubo_S#M<9wavLkg)CWa=C;ZiaL6Rg==%j5AjW0Ay^@$* z2BRn;NjyfLZPQgFL`HSg!pORs*&0I`YrLtQI*KbX<1KN z$GO=6I+db|2xUf}K zR4$Tgd(@NLwu`B;Q&{m75pK+UZtfv6qa2Q!rOoqs2P4|D!(WD$s~MWv9|U@f>z_gt z@x%sc8>{cnxdo1;(a*jgtR(Bm6k;h$nlignsk2qwbj@UXZrpu|28Er;hB&IBsg9xB zwtHtai1(-*W`(=PzB2QrxDbVH1l#9FF>XgUNfW~#ATzQgdqbLaI)qCI7KzV1&5*dX ziv3ZHKS*!Go!0q!MP9kPzZ5obH|`xZD3I4SXK^~Avwd@qE7@lRM&>tx<;4!D9+95( zN#nDlyO03IKsvwLn+ffkhKool%^~bxn!kqYRUkjJx}it)Zn`0cpVFj1xSjMO#?YVr zo&&4Gi)DqdnVtUtGwuo7Omg8gk=wV* z>n`K}0JOP!1Y){fc} zJ$^|rKFt)4ciTOqgnUJu1EdZNkB zI=b!PlGf1h2nG>g;+GB!^Xt{H6XP# zehSbWo9|4ekMw4CZ`f1ivqk;tXgPw?d#6uzJ?Zh;O@_G>i%s)#)f&NQT~yI4+i1a5 zuuLT4FW$dOc=`2PIHGGQp{1tCTuTbNkA?#%wQG5qv zt1*MUdtC(xH*}BE;B-eYeUFNsaZ`%Dvq^i1b7}8dO6s#uX1*^&lR+D@wPlunrOZv5 zXt3-!QQ@uJ!4o)+N15>`1{@nEIln!)<7LS_u8LwM(%>(AdK#Muhv1~c@ThR=5ZN9ABy5RcWkV6D;)fS?a+7KONrICS4`*C zMG3x^(}K%lRn=2wy+-kaTZW)Dm3WmV8AvkLdCmR2*SY3YF=H_9L*DJ#I`!~a`U-h* zYWV4g4m!J+deTnVDJ0z&weK9V=o8Z+Lx|H=v@p+O#Y*UZN13#<Wh(adx zZfnTbI%L?jUP&3A*XO{aL0=Q9n-blM>0r+oEU>n|KLws{_A0>9FQjLv{)+6Q^xvwx zaw^YoIiJLitya%tl;E-PQo}ooBz@jK^*$jyrbh?8yOzH}%?6;wpGR0Hdp*U<^w^ax zWjm)4NGIcCpjp}FU5=k}2z5lUfCmDA;x!LDR_PD^#ip%4n-F7A1{p$L{ z+fh8ijvqLgxg+`OugPn6C(3>qv->pqI56Bp5ve8eNMnc=!*i!T>+tulC98W)IFZ#- z)Q%Yo^Z{$OBW-E+cV%%(DtKfVja~P0`z*hAP%mSCD=uCeYKGkRhCCmE7G7(FxJ8FyvU;a@b>(ZQ zajas!yDf)o)8=dFaQR)jJsiCW zkDb;c_&ya~ipiFa2`7=~J)`w)-gyP7nwFx9cT-e1B#auYjtR7N^sF9Y>1kwUf$VVA zyhu0rtF@TsBxLj2wnro004KNwmRMzS{{W`g zfLg(67$2Fs+UT=QKBPp*sj)mrHI-5VJ$pXF-OEQtA45|eDfE%)W75bdj*gNSRY>_G zc;}n&N3i*rX(E4WLUq4HPiJ!Q(mU62ajDB5SzO-nRy6WYejzdboEIrVs}pC1`LKMUHeoyO{41{aP{*2>;2hGw|) z@9rw5BegV}Jv*u~DlA5lmF}~u_d(Gz+G}E5JZ)v*K2~-!X6bQA8L>WX=JCOLlNC{# z&Ln}_bB`gYzYZ#V8_KrWQ*2DQCMO*&T{G$5Ovq+e&mIuR)`9qr%!RLZ%d8lI&PaE#i{{ZOQ4(k=??ZdGtn)g2`94>p2NpWZ1I4J!j zz;oafH8`Wbhj|b=m9U#j#@6OVm#c)-(~~T>cBuwGiOGch3p43qri%A_+uC?NNj$yC z5Q-*Em9p;xZ?AAyC8RR9dp`7lFL2dfC&5hjGjRLgT>265T?F*cCEH`OTPd?!RSrMt zCB&&1$ROPbH`WgYyujiK%s}`rJHuS*S!%4#fDJ&k?bll>v9-1Jtd3{41`aO`y@D?9 zplIIh-F)xT!H;8xo%$s(*6G?TVf_J-;T2F)!Ugg_);;9)S=?2X0A8wDCV1C7-EnT@ zS|-yvkIpG|~OXw*W44gIi z_;N+&#IWkjD{$Ja%inDaI38gS!YE{pSRYl2KAMJR+0Kpj;d=w6x`X$p)L`_dXqenS zr_O1#es}Ub?tW_wuaeqWFt0LWrfp**n~RQKN<3Z|$dd$g41aId(^7f=099uiZ1LcDeMD|# zG|rC2<=|>~54y+28&EbUNnb)>qQmK5R?L^p9*yI}ptp*&?VH4KndqzW8VD+B9{bui z4Q;KQI(`8Pt;F$s7()gdh`#dNlM94^c-$?H%VKfjTM<<@(X+EdBcv>f?0f79J=*(% zVH0+$zY(uyABEv9sGdvi#`H$e0KTN?5v&hp@w&LN3XPznY;qDKWDI*qdqBPJ4=bLF z%qF0(q{Se_%Ob+*6aa=}{rV2WD%Hbp-<@v5bAobB23^S5lsw!hMsKP2ihuw354O5_><r6}_gYm|)cNQ#sLxOLD=|+z9A^$4`N?58png6Wy@9kj60f{prrcpr)seh6tpY zg_k`~iqh9o;k8hTj780Ojyu02t;+h@WN~=tC58#;E2CotvNJ7@UML6A(_!>AEU2r& zB)_m=mnjFlTwmg!QHWF=N)d)OS~dn3hnE9;ojCXu>^~Bvs;Lk&(@bxy`nOJ<5qWEB zDR8IKQL-^}dw83jZ^2CgksL=6#2FoIPO86SJepV`wK#EpB>8ClADheAdG0^iMyaI6 zju(9;ME970yWsq^Mku_X zY{h1d#92!IllDi)hs}9>atBXS8E&~h1TD=HOz`Hl))v)yoWI0ya^2SW{EV@E1xr~& zSrC0KWD^6e*zsbg-8i?|3+Ki)@vu5Kxt#1BVe+yiO^)LfmUK9z?90GsBoB^@%;f(7 z@!WmkT^Rho+uO@u&$OGEx9t0zysDSVHa||^(jLm8&h59&6sGc~z}r?}?!QX%u{(x*}3c|e6&{_W^SJljM8KH9e$LUy&S~y57*~q<@0|T z@^JHUZI3P&^0-QMEs1(_VJ>cFxvw40OAInZ_uGQu%ZE8U#ayT1J4UJFy>Pna#bVFD zG@Msn>xP=BB3{YY?A)YIw`I#*4w~&7s!RUzQa^ccHeDEIgLV5!xsG31J6>srM)X_# zY^UWtVWwyETxC4+pB3IKv`6_Izxxie^oW?;-qcZh+MzJgyVj+E{{SFUpW#SVqQ6oRJ71j(ag!NRedku$GRJvDG$~+WD$^H*}x_ZC!g{3zc zk}ZGL{!jkN`Z%)g@@Ik0Z@;Pp{{5Ct4W_T8h72BG_iQneG6-L9M)KpBpWf7scn+H1 z)fh~Du8Rw{TQ4M-l$fmqPJZ-XBOC4T`?dJ5SK$8uCzmep<*j(J!;3kVgDbYB^U~jS z8)S~c`u-?W@yYJ&yS#wta@gCwNH%*Low;9!$_doG+w(LLCGu?NTKJX;;$nvEONH72g#hgv1qUS3P1ZZsQ&=zq+jJ*&t))> zI4)oH&ybJt@L^ArYSHTA(SMWrrXMF*h~bFA{!{s_-R;FLU>4YaH_!Pm@$q@nJe}gA zr*jo#50UK8>gCWWO&zqmbD-M01$Hii|I#` zf7zzg@i9Q}=Ux8*X4_ZFo)7-2y=ODICEht{Km3D}^j}6im;TPSv~i__{{X6_cayEI zI(e*L{Z)F|k>1a}c4u(po&Nyx4o}efIJ|%U&UU16qi^}bPy0ODFx_as>I>O7uKR!W zF5f>dt^WX0ul4><)Gwop#GQp#;J>0`P;NcA`^PiIb=RTo)*kBY8PyH->HBy4*PSuJ z;5cw1>+OGw`LpG4_I$_B;QCqY{XWmdc8ixURpz-eMrIud=hMAEy>LL6URsKMyu<3K zJOyweBiaA)_eqglct^59Qj=ri*ELJ1E!el#tl{H^9+}& z?6N-oC!Zb*8j-C7f;vxUkI2;X1U7!XxJJ=ZVpxOUFp5(&#A-=5*4`+M4%kUY}zB8qJ5gcF=_|7*=k`XpZ6x= z?zqzCaWXI?3rVr{dUT@28qMpDah6i;35jtaS+v zqg_{NWnCg?K2kM1TeVdCU9;Fs&&y9=OEKR>FU(k$o`<~Y^GPl%ht1@blpc8(pT%3g zY!7vb8M%KcH(78872CFF&y}fkhxPpKv>OeH(_tHFPg7SrAg6O(8IkU=7iqQ6EqR>~ zO6SKeHHk|TgW`Q$uVcpo(&BESEN!)GR|bK>R=n+<Zd#=Q&qPYE?hZw!l53G z?~UDg@&5otJT7Q{XS&0eb?wBIjsfkrWFEdB-l{u#(Y@9-`1p4P;PZTI#h-j%d+@)J z!{+c_JpHD7cW&`bDpKJrRvcp-R9*S5y{;U)W4FZo&I`rMWg_IOmhK~0B}h=GB}ltO z0`gVsMq(|;MLov0<*L_V8x4nJIBa#5RTG0DHUieL;Jn|T@_7C~A8hN={yPhKHy9xq zal4(vs&I_oSMXk${{Us!FA-HJNPL&z`E;t6yOAK7Ud^2|w(=3>+~z{z(4-R`}oh52up{aCLHwx;*}}^aJF&i15VU@=ZQUXiu$( zzvL7D09N?l`ybQE=jK7~15|=R_P+qV1OCZqy^K;({Gl-UC8aw3EbH?nqUrwts{C*L zhttV}mB9N=9qOa5buYb_qn{;IQTo`U{p|@q?52$9%wfa%LVxPNAO8Sh^y|*}7k6_~ zQaE|jF79j450Z#S9A)12gx~upiKIX2P6vu#>c1cV0Acj&Jy}Eq@;#b(Dq>R{u8H~{ zS6le@ViTFZah$WTPlBygur$?1?x<)}{;Bc*0QPD0a$~OEDIXghn%Qi%KlXDAfBGWt z!900Bi?w?1`cnS@Rrufg522IKr-IFRFGFRGu^aL0?p~n(04B_r{{W&bAIbexfA&<# zGk>)iZ{hx{N&K(J{{Yy3kCV@+%Ubx}?K=Mes(kXb&&(b1TeIY{HnzhQZ@ItKGycn1 zTmJxhH^(paNBXbF{{Yy1444O&@^VHHTD=GU%3|k>f6x*SB@lAO8~#t~m-?^A{{Yy1 z448<^8zT;D>%*x$7ou%WDMN?tkI+;#P)OLI9(7YQLyM&2mAx7VFCLdvW%69s=F5(; zgDKJR5-;vLd>5PJ6m^tUu6+50PP^iG=e>@+*8D#&i=X;r+mDM^?s^=q+3MvMv6L8ypiJ&}R>F&|n)mUx`#k&q_u4yRx;ZXB)9eMUcm1rxLnd+YN>B)zS;}(OaB06yE=HjrT+Ej{{XFgYHXJNgq(Ojm%@hY#Yqm&y9c2}sy1w1SaWjt&a`zpYZ(YH*jw??i^{{Z}kf5tSQ z7Jgo5F2>_kvif&qkgfaa;T^<-f`0oOvgcgRIdbFSNJk>ocs z!&}+lM_-nkzwa@k(FMd`*og)l( zP8#tDlNaT0ai-u<6JG?odmNtVAhMrMVOy-#6KWpNJR6T^UOzm-Z9(sR7UG}ZO z?)PL7+@98m7UF5h9~B*4TpQ7t*gLk2vu0|mOP+lgJOOvjOy4K@^zmCtU4Wyc)~d12571jhp{BsL zY6^CCTKzS@RN#4yEfqnYI)=Tr8j;NSs`KF0?x~Q9c{L>Zy;rUouu36lu;yvZarmn8 z;`6n+qGWNipY~G>9vy_@(P6SvvX@y6$vrK>BwG!ONGu|4zl>>_w9^YQ5&{BTL;m}6+ zwz^m3<9iMWd4?#+jg7d!HzPAiXk-J1L@a4D4qiXq(V#6GX(MJv!LNTL=Sdz;!&(jb zD(!jgcYk`MV+oPX;cb0n1pDU}*ttci_PZ&9R+sMcYw}L8^>bMXIoEVf9_3N4$k#iV z(Of3YvFxZRAd(#UvX|eFD<-3?PiXVh_$dxz+i^V8fb1mJ_dq~5gE2Z;bfM+BLwnT4 zy_XEhheqEu?WU*-mvnxsc_ab+`GaLM^li($Pesfm5q?LHazHpmd-iy7Opff4$1ftT zzbP&QFxOR3w66sMeilt@V{UA%X#V&qqt?zk zTkuR76hvk`i*c&3E_Srrof# zJB5%D>6O`<(a&8G`crsAhPE7#IYwq{$rQt+%*>~!hXmqilLLEJTze+Lw&r+QNBZj= zqT=di4BT|?OpXn^9OIV5s#ZlEuI!^#!unm-w+`f_A8FR*>hTGOZu=mP9Kvo=53HU+ z4e#bTCjGCnfaY=2ww)`0H!kd?cVU`o{r9H1*UU--!Cx87lXmA^wYRXj?j7pqo5()T ze|LYm7{Vl_!)c_JcpCSRMyC!EOZ zmu9v2sN;#!za(wUN?4+Fuk5$Q5~V(6u3PxGng;Z7!=j^ue>+_J4^-*>ekxdT>S$S& zv<%kQIj_M|uBmlw{kK_zh0X1zzjCLP4{|gIKg8#NqKFUUKRc)@vH50%#>kk<@wajj z!K;A-R2Nv`)h=^wT$+@G&1IO4LtqfLM+P@uHa`^uqpH{nSE-GT zbJ`q7Yl51nm)mj8Z7=X$!!?&=H(h;hI1p}<$zWS^)9oc-w`6esE-9x?6x7f??QvsV zOnQ(M(}rl%bHIKH9Vn-X!02pjLv%`MY(?`h--4O&Ls7lX*1c@gF29t#vF}2N7;MB6urYDP)n^L2>-m;q3FjYU94K-~Dol+->ns)9_68 z!Qe0MU2Z`NM(*2@+WuTte;Ai}TH)+#qR_AiqQ5(7erqjTBV(+2JVMTzFk2P9q)Q6J zgqftO&~hEhz8OKiV=5?Ayz{4oBp(v@LI=q?=b?PCTrJ2z=@9E#f$g)>rA_ zbj-@vShtBO@55>7ADXH9k$aATM#jP-qp7Hs(XuA`n%_lEx{^vN_ftL1d)hC41A@}f zz0$)s(XI5F+46Al7wEF}w9>~^=SwbfNxSoO`;|%$7LlRB&9eu=J2Bwa-8ImGpwmR4 zn3;2+A2h;ON@2`g?gN((daCI+vN}VW$4`=e@<;J&PZd2pPBA&ztO5eDhcg`Px`BN< zb4(@8hjucKcjOi9(nQCWYGaUc3Y7B!5xZ7q>DCof&5FKJ-WEHqOrU`bMQ;MJ)_K(C>A&96Zkg# zkHK?V=+T*V_a`^hPs{5Z&Ed;}T@FG$_UN;)xcGnW^JCp1>sgg3do*dI`33uYI*aN15%ZT}# z`<2R@ik@3rHkza#Yrfj`Q%c?DU^KVh6j^e%{{X*#8!aVgVza))fRg`afiI7g|IhG{=vBC0w=5FAnR)5hu6d$GHxzlPPc<_^t3`pNOX{j1Ki%$BJax zTE{!PUP<<6YqQBgR&uh(iCr#QrR})&=(vtW-TnzAmn$52a@8=()1h-){K?uDppSZO zn@g+a7~{}a5j$^XBUi}hQk(Uha9GIccl;-ULul99L%)w@6QMic+ z4f*J)6tLLL53O_Hq}}eyd{n?ReD1A?86;PGt)`thra{v-&kj(!!P&!Gbu-D2(YudT z#~{$~Kvs%F8}HQ{idY*+B$8cv9*94hI#-OGe~W@3+Fi^!rE^{f-N%ZIf?qgzbEGe8 zBe%g)mP0(*OS=P)Yfl@go=c8q_5kDWQb$F*(C9!}g?CX$aC7A5e-&Bo%QLwKa_(2( z81|iFJ=av@0^!BC0^;g|C>y-01^gA~XmfUL$w2dCnZ6y#(VLsQpTS8u&y|)iI>SOj zg_W_mfE?X4{;I`urHYtH*Xhjzl3edMZMD^0hoMdTUzop^sh>&4#tn0u{FNvsaLm{G zinHDwe#)&Lgz78cnv}G+wZ|_Hf!D`WC)r4^*HC$@BAz#AhC%BdyzZL4D5bf}Wy)Gw zXH`xjZ^Z_QE@g7B4is#=r)!pp6cb{t+59VLX=*b* zYH^%Ds2bm`{!8a#?A$c6`gdn2pH<|O3XPgSawKB%Ka{x6IdXd6$8U8ETW34l+k)rX z{>rl!JSyUJZev++qNu=`OG%$C-UZJh5cz~KL%qo2K)U(q!-eyU-0goOn0(NdhnBPv z&0oZ1Y_dTJcDKLDW^jyNo~A2C){;Ggr_CLwwN+Cj8fN0K%a5%+@5{>kv`FK$)S0zp zboK-9UU{gB>(RWjjqW8yF!ePb1FFE$K_*=#sL zP3Mv~SMWzj*Io%(6Jdx#-7=?ot=C04<+@YB@wd@1bT=q?j5}#H;LwSSM)wDJp|l>C z9G%0GpTz?QQsR6Rg86;QJxd>Na+6H1D+aLhXEHeZBHGZ>37jvoap^s1s^_9IpQ0O9JS???t?vKC=bGlk98dobN}x<9mL z)YR?uZK}__`a2yoy6@utu0CI3Sd)fU4gjiIMuXPAs^%trKz;t@P)7M=3~pv$g7k3o z^YZq+fj4~}#$A5&ewPWP-+rA^&^jS;L~!oJF1QDu6ker}$d}kl)Pd zf5?~oH-yLP(bIpBBx9;6YO+r&WQ>aoB1|z}*{lYI9jWRAO|w{Jnm&$`{Hj0jo(Rod zhSPtQ9X@Zx(zd}+sKl_){HCe8BXvDsY`ZJ7^6|mqd(&C6yE7YdzXy$q_n*>(oszVm z^*dz^B=3x}#46n#V*dd6V`U3$>>8Ml;kVqOsMvj#nYN0H%}?$-^Hpg!mRk8T#>g3c zZdC5Y>LHTS?gh#_QtKJaOUacBANmaQvikP*A0A%>0=HqYoI6(2`P4j~7op3vqAywv z^nF=nY8-zLFtS|IN1I%O`tVovDlQS^6Jgl2Eq3ybabfmvq7_qFx@J~r{`T2>@WiO* zZj}vq{rf6)m?qES5@xBQrFs3w0DeloukAMn&->ett-H??_@oxUX}qs2AQNe|XHL-1a;Ka>0s)YC&m`QV?Ck=kFq zdA>1(R$%p>Z(hq-dg0d=_bbOaO3ejm80FTpMYDDFmv)D(qCo3$;H(H?XL#41clRP< zJ2x}(-0>)W4gjZfzkL=5GhN=Y$)+fcg|DYo0~`d*JqnfgCEb-7kGFE(3Kr5!SxVfJ zHhYE+BY;8i9A&PN?uRK3=i${-XdA4(t11&aGu+e5{CxitV=+>BOLQ_oA3IoD=}?LbMqml|``JYd=3$8;^z znmb5$aKbZbWC}1GSk4@lfsxsxxjc%k=F{;)r*Pjo`s?yUnRG6sjrEUzxkM1c{atiA zrQV!7DkA>?R_JY5JK%r46~R_$&!KSOQ7klmksv=}$YnLMJGI3T!-(^lKY=^wL-wWD z!>LC?RqP3&xEx2`hV4PMH6uHmQJfY(_B}Z4@C8rcD1&{XaqdLsH#)frgSCvvdK5zb zk>vG4f$25JAK;HT>2iT#qWIkW>=Ex}Dv-Q$MncoxehTgoEr+weRYM&1GfvWVj$Im+gQpvFKqk3vQ--;UZeO(2`xf_G zR0lX0cC&Iru`z0YTc0#jzk(Zz9>jg+0d^tig|xS{o=&c_l0K5cJgZuDBrmT|^taU|0++KJA$!B)j zp`!<7D>Hp%-_u1>ro()mw45TSWzfr<-?%S8qqwlk%Ig#4<{>TzH?w+aqqGCD9)ZK8PKcHMr3uk0;xvdk|~Eq9XKTrRr==` zXflkqBFGzs?9;Tx7dsocm=8W8E!|iEIBCl0Jv=2#OBD^Zb0Ta>Xp03uNcw9 zCz4?4vck*i_p24OZk`9XHk?6CrmT*pOE#ULjv3yiti|7lwSsNY-hTF)E_SN0MA~{N z_wHs!AGO!|E3vpax!Bg0b2+V|5mU5uerV`RpbR>f{{UVJ3O%i!U7MUn*fWCWMqkJd zA1(>#T(nGM8J3Qvk;j%h6P))dpG;NHL+56rJBhImD-%Z^k$9zubz?vfRYFt9vtAS(At6nTbIGqmrOAb_8eHQVCpLt8d<&JWZ&e5J>!t zBKHpI_xsR00AN*2fwEM&`?r8H1Kh5#KC!#$Tbp^Q z<_H?hrL7uY!BCh&={*abVf(4o0$Cs0b8~gg#X?1)$?bu1g0%%pyx%jot<#r2s9~2j zp^iV!0wU(RrH*LIGmd&&!K^bJV9%}oNz2 zKdTeV&}gY?c+2T8peWt_Xnr;0n+W72C`h+sNdihVDPf;rwdst~;htbqX z`RwQVA*sJ5lz{hCG8#WMYh2D`{wk}@IfP}+pP4)r%8K~2zbs6VonOsWnrBq8hjhr} zW%w&NDq@T>I*5B3Ts(3iS)hT~m1CP#JMwYtI>2*5u-R&RQAL!;&o=T+`MyeMot)?|VP!?rx>vfkmM!}M)tUbE z_;L0zu55TrSLQS7JXU%=i${k`D@OWu_l&%jp9%sPSu33F+c@|vy*?oE=$n-XPRH8$=I+naD?b-QDhymU)hw39jPjtScKH;eKGM-!;?%s+iG z^uXi;hJ%{CV0#S)%3_!%!^aN8nt!L^YbC`WBu#Yg%rj+;&+LHRZrfkq#?C*pZ?4$v zHlJ%}ZB93ekI||mfJFLPGUna5w}|9;cqynnq+%3X83r+d;El#S<=|Au9KEO>8X7}` zMr-i4mbR(buGrG!*c>>{(BSxn&wUQ@Q44B2BC1@c(X!w;>uqi0!D=2Kgw#t8dPyAN z6J^VAppGUvki#8?-Fx?xFACjN%T*;zySKRK2ZpBPsc{%x1v4IHWS6~* z7Jrn{9gT_?P~s9!*A_D`2V1HSjLl0?h-af@jEpwKzmAFuS)_rEV4rs!nz(WxbqlL1 z#az3>*0Zy2ioZKHs)4jFz-il4nU9mU59F=V)>2Ye#~bRH7~x<`ZK@T7N3__@23#sE z^z^I%`lCx8ym%-i!7#9M(4h)uF|kBW41cd0$a4)q$u#(Q5Wz z62x$g-4;1P21!VaNXbTV-fgA2@Im~a?8RjGJMlUlqhoO@d*`5ZB1<>fH_gEKBG|4m zwNlAXOBFpB7Q5yay}|F`LW?wQ7STmDRvRWC9Ih};>y|N~*d7FxkJ{~r#3(j$ik}j9 zVAc9E$xN9VLAfHsg}Z{(J}UZL5)4ME&Tukaj~22STQ*s2iaFX1`?Qj+W`#VWl zB-Lx5Y^9`(!2p({BdTV1WuEU3>@CI{i<~XV zRR`4J^|;G?&X+6MO|9QzJ>;G%KZ(nYVXb6Qvehg(P1-noY>G0Xr_Pxs9TS8uBnC$F zr-|-I=b|{BErTM4x?5*5IO%RYIh7%hrL4s%rjlCvs%_aGh5+CT9p7PK4?R)3Ty^+~ zj#(QikJNZNfO>_S^S4pgigQo7lQ{+Bm>miC-4&yfo^w4_MMs-J8E5wUS-DssE!R>u zT6)SUAG>7CH@1e{RvTzp4Fqu0Q?e-cEgIUWF3d^HF5WpKr()Ur5YNwTHJ=r5RX9UQ@-BcRJ=IS~Gg2k5$gszIGvg==p5_7U-aLdB| z-xS#54r8wCi(PfbPY!Cu8-__Uy}Zz+7i%5e$4yF@wWEWq^V3h7g~!n5cfYwTueFusMIBxGYZVF=~q@{~9 zy--#;e10sywlPzZ#`g~LqmK+9e^X6IQdsiC*)7wmwM*rB#;YZ6&$nI@K`x&B!|_;3 zQhtSyau4RAg21x;mkxi$d|dtF*Xv~VNOt=Ve9*-$6-+Og`3DDU?nPn8sAsA3b~-@v zYyodo=I?G+(LLH82d0ZrOi0>{I5$n<7xx9{a{mAa@&5o3z8tq(9XmsWweMrAV_}Th z_vPi6w66xk$U%fNH|Rq}uM z?ow~FIr3n`gSm7}%H@lt+I(%)Zk4rB8*(uZy*hob#;I%^%17K^)wlFq*Z%;=dB1D_ z04Em6gKcvE0GTk|%OuUS#EUaJmIruUFZkwh>*38m%$8sNKhHf6@-S-M)pI}TvdvQM zk*ulRd4@tYCpLh0tJ^uX5N!ozY!Okto?}XCq$S?ZKsu~){v)3Wy)JU&L|<`Y7Y8iE ze52sTAm`H6un}><>Ef?YZFU)3Pb~4lJ0XwPC8M9cP5vw7N!rDC$M!auO^uX)N>CaI zD#X5qqWiL2#><~kP9fhp-GWA|n*1(r()&8?&2=7v%9FN_0S_!Vr7(L9h%QPo{15*C zrj*C|m4AcsKlLv7{?^GLrjScCcY3Y#-Vp8>oj3Wyf6{nicViKzCf{r${7!lQ01@9G z+2%JLOT1EU`K9yP4jy>`KgVQ-yAI3#{{T(?aGm(P-};W&{?F`FjM{~H~yoxKerN37k8v5vtqc-0e$@P5A%eXqV0Z>5&m$G@wtEX9ixfu zI{rP$M<4FV0b$pF7x{u-&jBkF{{S14{{T_iAbp!%O#Y806O%`~=7zjprVF{Y&8j5v za^so3QOU#0uS{~W9r>o+OS|gkq}`5dFQLi$XSj?G%dN<#9yck`#B(?t)=m+2bw|+8 z^fwH>mv^Ub^s-&q8m07e{{Yl&9j(PEziYIgl>L?4wKSi?*k~K&oE4M^(Pv~-f zhT)y(;<-O{A^RbA@2X!zlk{7NWr>r*=pX7x!+WnFtfM%6Y}Bvg8PmagDT}UPy!UT# z*y$=^#2J_wdk^<;Ut9kGE`d-YjqDkh!Tq?OO{E1xcDJV&d+ z{C&?J+1)pe#jwbaYORj`1<~UeWQQv%+jG^VeAl1Yrwrjo*RH$#Zx+419l(wwPN|nd zHfs@eRWy{+y67|Gj5F;v@p-tf4tE;m%a?u%*tv4$$Tu!s;<*9KlJZIH zpgD5o$OZoHxpMFB=prs$l?Fx2mmoPRMahDLe+1zeBi8u1AlTL{XyGu&mw4`d0?acK zs$`-@%<%S`gMJGP`KC8dLxPxA5F(!%K2a9NpG~ISY0;ijZQa9MK0=QJh*YPl7|(e#2Q-;@sa_4 z)t0^Ir$6}olOFbXTk&1|%a<#2Id=ugJ(L+(+qLe?d-ey3UblqO8ax`35BXtvo)=1L zD=A_c?<5yqxW3fzY`z0;pmD!F zESh@o3C1!uynhm(5Y7Ek6_^EHAQUhz`w~Bd=!QIPjom0_(pR=Oto;g<~)g>0? zC-SAT<8*RTHy;>^j^LytmEH z-Bn}SKbqf%n=U)NE{f0C1Y0SEL91!qZucWJbkS3{EKF>63T@Tfs(6TBO%}YLCq7B6 zvMorE8@H!a>jAGXlIZMsd(t{0AKbXiw?6yxP1m)_DQV%!b&5vsADZjgExKv^%dN-N zI&u8aM7rb9E&%Z4ox9D$hgEYMeHPMK?m_B4eAL-k%-l~OxgNVb z-OMj*4;@{>1)m(ksGRXFWLfQQw&%%up9ACa&RL!_(;iIcTP=8f9s!NX2I`j$o#sZ_ z#5C~fbz#0uHo~UP7&PEo!uH_32B&ZFn9JEmyM`NScI&4NbmWK4wcAHCdsvHyhb8(Z zHrcxJa%SQ3L$w40JWQrPzU6kC$qi#OKDQa9r5fJan=4Y{xTMbXwemdo=%I9zNdDaN zzWrRURVf+d&jW#t_eWbTT#O%A!-!4Xg4btyYuebgPe9ls z!|7t(!B5z=vK?=J^0dOL3?iM8M@1I!@(sPbNm(2wO!Zy2J9iMeH5;Ur?sU9(+r|! zF`TRy=&jRbFUo(>0VzApOWaS%JF^=@a<=@`mde*Pyp59_(ZSl@>4!0{_0EcB`nL7k z-jgrc%Vu=fMAAlIX#p8_Ue7E16py%WoRoInKefwMCUgTq=I)918>{fSQOAArheY6e zT`j}?Pzv^))||CM>c;9u5z|nL6WDk>EUPlk)y=+6WeGjDEgY@KqLev>uHE|=_az>% zJr`Rpe#>+7@IfOjkA1z#X@#y*WxL+vrnd>^Hsx{6!{U{UC7$AgA>Fy42j1sj0jh4F zWvt?#6kDR_7vCVgmv&ssb7rI8suV_Oboh_Nq%9-W@wrIXIGm$Pd=sy8?E*O60MqKZ z+-#A+c86!GQd|q~mrhByC)Pkl?LBPWZd6vYePuhfwcWz$yg~xBgDr^dX1Zag)4VHA zw+>1&4=;iNyQ{ag%Ucy)(L8E$_p7ZI&D!P7bH}OOeNqZ8ZJVEkyK0aoU1f8)aV)fId-c0S$>+|>p+6_iu9*71JcK-ke z6(nspdkeeS+>-vcYl4^(8)44mpdA&%a^~T~w4R%q&lbzC4wg>S@b0n$kE{5rcw4f_ z?wmz(aiBnR@17Chz`5+83Kywi6mgUJ?;RtwhU*h3#gPOQ9{cK<6ADZu^;f=YB z?I3aCs-%lG-igmX#fH54smW&+=&DmpC8xV{SgE5qpP0Jr8vGL@j#jqs&~+S=G2M*E zg}f7-KsU{9X}59B+UyhpxuMN*=%XVyf^Y}a?S2Vv2kzVZ)gbX|n%1^wF^z7Y>Qzar zjnh(JSY9f2H?i|iq@a?oHeLgXMV&Y$rq3ONcqptuxl+U;E!UyCWQ`5BS6_+^5_c7G z^iZ;evw6kkJXzD;orlrKQB)ZB*}D9?pjveamfN;A!0~#p_@AA`zT8!+ffgBNHQB)` zq_xbAfzkWYXS5X*khPijxec#l%~8xcCrvx2c4zmM5^ZF1?hQ-HA`GEE*4L8g+kI5* zh&7$AXhlXM&BHB|jAUjG;jhU`;Py9NFV!e>GLMd&kevix{yTXt?&9k^0AgV{3KSumhgF|1C z>OSPLp5C63>icll`M5b;!+-3Qtr1gn$2P}`NXw&rgRHOCVO4l-PU^BLBRp77K807i zWM!SBN5{QJ#*)P_-CfOf`YDTdi~=^_I)#xi{{Sw&vX(oyvm3Qy7PTH6{JE#>51N{q zx*8_P$lB+>I2SF@C}TCQg~znUbvgyn!A-hzo%Nq3ojs%y8mXNm{-e160Da2jcy8&I zYqa8}!YLz?VV&(8vPeGfxmc`oAbaC(Vn;C zc^Bh#y+Y*95klz>g4|YGj*ootEV?rH?>AbhSjRUjxm@>fK~3T=v$SQ(!zvfIaplU_ zTagE%f>{i5WzBF#w)={+6+7J){-N8r$i2(HXQHtT6ty0!uFGFIcP|wnJ{pELZQI<@ z83yF(VmYc+@kuUwR5v7^5~KLrVE zw~ht20BQ;$Obt^qJ+>_8+=bRVEqvLW?GK838##m)_BfphQwp}kaf?)T}?Xxi)@6l8eZ(pvNRiYf}oFisnH8xd&YqKyi#`ioB7vtU4 zLtw`|MX4dYJXM!HoLt>H<^0lM(n(KMmzF{w{r4+al~ZPTWKL*}n(54}>b9d5qO4>tc|NyixjT=$ny8g`G`PHVcgaFy*E3qutiMd%uXy64yZcvl zfYU{Cv#2*BLhH4ss8dQ?pP>FF3&Xos;&r;OlhS0&wUwSp-sT3sGnxVsR^gq_FXBm7 z>SQ^0Ol*&uO#owcKiFFRl=5>V@_F7k-NZY+;EeJdM~dm=x^w3?#bJ0&elI5GiVXed zfF3B<{hDI3uo>zijC2~?-n}8Nq{H)4(nQ$U$Jmk0G8YMIt{m)=XnViWZ*pPPkHUPM z;nY(Dh(FGGh6T2z!LS-;`W!kY6UVYSB(0*|m~EduwISS;w3Lm@ye{F$so2s}M}+0G z@ak)Scd6d~D+oVEVSeY7+T?%)}{XdtRvq^%Q0|soC(yFUk#R5MCZBJ*4I<@DcmE>>hKI+A4vQ)*#OA$ zE%8*Nr+od18Ivy_i`a!^CAWO-eojY%1B>AJMP!b*uFY;8Wpj}?57Q48;y1iX?g0+- z*A@uf?C?L|azBae<6$m+B}<=S!R_hZghz!WGNMicU2-RG}qMDWa&Bgk5xOb(qQK-Y^q>0jIZb8WiH@R9_-0If6$i}l< z5Q5d=?}g8ETi6QaR8luuN#ZWR-* zsPhq2TWCq*rHU#?fZXok#Tx~sr>FWlY39mbpl52zm9FP|D({&FR5~f8-LUX~6$Mo( zqn{ymb{-EL!U7Z8b3k8M;4;BUvG{xe{fMdB0qy~OqZ`^MjqcTef>*sVx_4mF`IN2{ z*)(8xD_wbi$#MNmWP0Dn=P>QHjC*MBUnDTUvBypUQ;3OxbKc@Vf8(OTGPZYOQb=C! zT%zL@teY^*>v8u5#XdB{9}d~_dt}j?XzAwP(Y4XMjeA_VtG;nq7z@U@Vd2TCE{ zhq(81_@flg#N}>i>D?nghzoeGK2AM*bm5yXcJ)Ey|q>iw_ z)@Ns9wadjEoO7>+IW%lHkg0m?%tdM@KmgupQZLDH=;B^H~c0XIVX>Mf`j?~=b zY#!$QEtfX2$A5CK{{YbE549r3(?wB>;?+2&ClyF#gISY6!OH7k#<7$%ku!#cJBEbM zVS7N~=S;UGCZ;>X;jgTS(H{1~I~Ez?VWe z+e?*tnY9zJOW6R6-?4?i&N0hi1TlsuMSJjYo}|sXD_5@ zO%ti3maUGF(zq$;HrLc`K!J~Y+a1p##^`IY8j85a>DLZAfy4l_ETW#R;h$@thZU^C z@WF;sx$bkGcz1WFsSjofuQ7O$uAg{E$yuYt>nD&0wtS8@xzGTrR$>(Gsm}ca2OdFJ z8%qY6AD+jD1ZWLnvQ)M}=;v@?{CTRi2BMCfN?!N9zrDuku;Sa-i?-q4-l>(?n?ILyGhq4}c#SX+oiBHBX)KpA)1XU=&ndts7Up2;e`9~*}!xKsO5_HD24 zqeE?n)78}wjn?ZUxt@u`6RC8W4DsJn>sV>mxnzZ8Wuc9icNpM56%*s8jJeUh#Ev(2 z8}v^@ZADHxVy2mldvlR*TbGIpE->cA8d)B9bM8X#Bbw&sZoGnthb+u)OW8dQh>H0m zpChHWKXRprOTVde+V5FMQXJ!)Hsym~1!fpwFoGRxrVvt9NeoVFGk=?svqx7Wvpz>R zLBUfk6z#rVJj%O32i7^7IB`fMH4gP0?4Tx-_Fb8pds=){($2w|*;|ll?@{jIjgFRi zS{OAzD;+F;qque8toXdPQow^xiMnR`tpS7|^-S~U&fK!)$Tde)ZK*p+Prq^C@^9RS<5W;% z6t0?P+V{E5U=Jmq?a1vi+vF9;NmA&Y6TL^9pYMWN*O0~6QcFcyH9bR|9TyAp9aTbk z_IM-vVB6wspZ1a1j}B`;dpDx!#`r+?2_9TOG3Hg>csWIe$GgK>@e1Z$Y;xrzn$E5( zk~t_{>vo){k)gabP&^$wI(MmAtkl@^)lr_BSk7YI3BB`Z5er*BeI5ms4?lEsx+nc# z4(%1-jQt{D`+N$uO)l-u4&VlXI#@)Ebdd1ktKLDIHic-#apk|g@BGwU#kA3MZo4w} zv`l-5;)6dci*s_}?obj35A;^4OPvec_Uh6T_i@Jj*>3)+1#mU&vqdGcwZQ4sJ@Y;0 z!&E|(0;rxHAW=-LfzU@Zf# zA8zCm4FT2n90E4|Uv3stkf~wieQo{S3aLM&yRG%)i9$%sdLgw|H7+@lf*9f1{7~wH zc^Q6Jx+N>Q2K&&;iy8Fc-l__onD#yBmL7dP$M+E0LD<#Eg$9z({0ZMe8?>j=QjU?E ztriwC;cztcS*@ZstdF`c>a{eQQN}t(KIK1v2~KTWGrK%oQ3$(P@8VF%Ki;MzsaL6u znKO?~P^AnXTuOKMBgaO%=oSb)Jmnqcl}IK%{`A0kF&&}o(9@6HKyh;50`~J2yI`SS|+Yhl#2h?4NqGg;!|REwOJjO z3RvI7I_FMmm7#$gO_JH;1RX5o=Qn!((;EAA;Dx@T7+JW6Cmj08B;SH_swa+u@w?RE zN8+a49+xJh!-HPgppAfodo^S#_FH9fD5a-#^=x<~_9ftY_PBxlm7|I&YgivETqGmG z1FSTdW+3=Y8*}mBKj;3cW?QP#O`qAiO`V2nN?NAP8{eIq%L{m$r`E%cMJD!|TsCO_ z#%!egbXmvM)|NeyH<>qMkqjnrNkcPg_mxx2>M-)<$C8}5rSnU$))lqU`PZA`G|i=u z4o?NY6`$LwWXATA2_VeMSYZGc@F%LfO$7}sOpaPQW=u7?*YDt<#BixGi6SulUjiB2 zqaTfiId+2Ox#gOCFM^%3b2qhpa(Q*#d+>;4G498(#4_dw_4Sbor^Pq#kb^4BiWik=0Xn z4=qES=G8$1`bh0mA7x6ZXLCH>Y`Fo@8)&AEDl);AS4Q@YMr(cQ8ENV%^Ow{%VIH>{ zjT0SC$I&vTzIzT$(}JQKq4SBM%v#_9)#rkrc})Pjr)ZU5 z-%$?t4rw-$q?}ALBk1F9oi*mCscB9+Np})RU3+SKyUME!&Vkn)Io%b&v1louG*xXI zxks&+f&7#dcr^HfrVvXONZn%c>jU09l_;2qo@U23Tg8_7hYfnDAreIenU_0{9*D%) zJ}F6u$xLO5@Y?qIn<2EDx@aVpPTj5pc_ubvTOB1(WlLKn>|Oh)rX^2LCeN~}ET36m zbOy^l{O={sH$`x~HY&DcnryCh%STIi_52Vl{HaBhG2y4go&hMRbQ2xZvRj%Vh+$(4 zaJ07)UypJe$Xz{4gM3dU)3MAxPd=u59`?N7mYNP_LnR&@%E=p1KJ3Tr<+b!s;ZHPp zhz@0m2FEsv&Lu-HojS43-#~0$TF+2&xcpXk!ED%@PgNkvMAFM~E<|0kl(V<6*FaA! z-P92rj;UMruh9GvbvGmT0T(b6Zhwvl6y-w8}JLo)*>AzG~^%WP8qG!pFb4K}Sl-aB4xD2b%&-^%9KQC8#l zW+gb65q2+#J)iihjM{z*wk3emQQ@&wQ&w-!>lkfzdyu*}i1UKR$oJTc!%k|YG}N?^ zS5{2eoakd3v>i>m%5;>_!5o%ziEf7dR~$m37fB;p)?Y$8DB!!PUS987_bH_&A53Lw zm8@yq_3DbZ6~f_*cUOV3s&ED5&y;*DgW=(s{Vhh~K7FfR$<>j^8}AFl-VEVNKXfLmk7aw=QcQ^8=+0?KEkj;8&et`(KD**yqw%og`STLn1N99eYcg9nJ0= zrz?bOV>TxfpA&+;^;DEl3%}F8+sk)p@lkDN2Z>9JQ`0kXQ#EZ#Y;rN&cmN6D2Q-v3 zvb$ebw3}-T(oj&+0LL@*c4W|wX8Nnu7zQy(j5xBgIVm3USU3^>o+vgSOzn`uH#0S? z#pRTrM&RPcj)vrG#Yd0rEp{l(JY?K?i84y~ZXEZXX8Lj~I+v(Jh>GkWU{X2LO-#m@ zgUI|=N*VFWTtW2g%E>pG40#6u&yIrL`@ZgwKf~q-B zoB5SZErzl`L2<-%wbU4fF-=7a<&QL(G}lb$`X$8cF&X!9LlduV*;7SFQIXcCX^%_Z z--#447qWsl|Mh&!&@;yCoX>W}Z6m zCa83elZhQlTwe*NmYyFtmYPSpQ2gxTdfi;C*=OMK3ZUkgKF36Yo;SI7o6k)YvJ;!? z+kH=7NL2F}s!a~tQouG!~{!*8s61MQIe>ew1;R&;16(Du{j`d1-YK^%|W_$6I$uW zr)@1Pdgu#vxAaH>VOV^y#O7jgNcXdV&!>)x^zqb7oz02fliatMwljuP)3Pr_W)=@* zd~Q4yc%IBl4tw0kGHC~59#uEXkG3n=5I1c=^W&%XZk>NJirQ?dKp;KzSiR`hQUo-qb3HfJ^G zIUSA~Xn3d19=pS!TY8Tq_1K;zJ!J+XN;ii&jrv;s=pHY!xULH};=Y1FW7jy3Hl4WGNcAcW?+^NzzY+`lYVmWe5 zWsku~U>mJn*8G(LA&mHGbi#b0%y>Oh zO0rGs>6d7XL z90lRpJ?&xlv16NTeF0-bE;n17K_lEzTwTZfDTTcEd;+1ifJ2YXZUmNm)vD^|Q$H_U}UCSo7^pERw}ptyWWUnjC_TLASvdw(veXSCi;@qf1zjUgwJh+^=Q(gNXbU z&7Q?)!ExqQLi-nk8~SA{uU)W?e^qk~kFz9yvo`o$JW=`d?uR=>fDp{?u)i%;no!o_ zRX}J7x)+MJ^D_MkAyUL226&}pjIq$=upo06<=(5+xv|U%b%E7co}zl`-&IpS`e$fu z>acVjI;wS6bG!nkYuG(pH1kxxT*UI}Yjak7pE_7ETuspE`EcWV@UZ^?R3em~*Lb(R z5!ngFJ|~FC@72(_6Z2SdV>IZ-veLt9YEa)$Gema-mvOQ<@i}e-Kfi(#Fx}E&%=>J= z!}=@q$9LrS6PN8&2>uo-c|W60KkVB1gvV#LS{T`K>T+$~;s{4^NE-mR__Nx zYyK)qNZ4@=jirAWDVa0<%?=+hvh(A{q4jmFW1^D2s#&AYZo^LwWE%zN;m5k_%Q-!~ z=CPt|VzJpTnxXIa6LomtazV54<1#WfQ%e2ZchHlsTE(COrPtuVR%y{Rz3$7R*5l`N`l&fy z*I7BnTQu;s%FE-)adiC8w2Jq-eAASSxgtQdKeAmbHlnU&e@DdMR#|`g zsZM4ccI!O<0R2>{K9{2!c9TvoN0&_Bva{w)_nuRm5no#Fu%x%%Se9`py{{Ta`{ipL+o;6ed0Gy=rJAcGa{&h^_ zVDO2@#lSB5Y_+%ZcKh6qr^osozwL8y@xrQq{;E@i6&$LkJ}*>;I7jL%o%Hlx)K0Qr zOONzBf7;$z{{U+zy~p!Tb7}^Hs$D;QRQi6OFJ+Qn<^2k}+y2(K zbti>H{{ZJ)8B`l_SyTRXQJDD$wGx+##-X1O!JN}9 zl4R|$9_}cJo*ARNC1t;fLp@_D&Q`gl=TBRO`K!YmFukNke|9!jG8&1Yr+A6t(u)#( zp0?%UkO18W1r#H9JkTFwQQ%azUhfuLn|!Y}Ju}+$njChfNp4SVl&Lbd#l38zSH%s@d5!KEsi<(JaNANi^&kwusHM5i~ zo~L;$Zo$LF8mObC5J+6sjSi&@!f`4ZJU-G&{pIhKt^8FSQx|=6van=`U$gn5WsJcY z@$&L>Z`4DFRvIixva^Nt9YI^yHr@q!-5f5OrL7BpB~)<3nnz@0Z3AB5uZHSfu>MC4 z<&R%yq*=#pW1AssA#U#c_@cB})h%ez+qd*9Y}vE1p%_<+1Zql zl<9G2C|_Ak8{Ek%7{WX5uW`>X%KC|XQmET3S$Bq32>O*EbaD*wy|OTIBZ4;$;eSNo z#dVc>>c&vOWtZF)8hxduo=mQbb>EumZg|V8*B_6`o;|Ui1($cHHzbVD6PosQNJW(} zvtB6_H4`=pc_neMV{WDhCeu&5qHKR`-`o`Ema(9p=Ny>EUP}obmxb2P0hGT2yWOmA zuszEaeOA{Dbv-Q%aLne6!usiBZAm3x9o1p;G401O2-~Rc)mYaFLPwQ=zO@vB|PtnN9x{uRoE&a zsfbAotRV8?W!E#Gw}Y1lCNp*%yMpImRPx8QnVj7fveBFp-|kAlUBM%}CdC^LNNf*l z-jUM93o}amgNm&^eHf&j&8TK=+pVuV8z{>;8u9UEmGKz-QeE~VE5oic8+apoD@^7! z)47@+2g8cZ#=|VZql=A}_JWzTv@x)80dsNr%WrSy=k)k`MEuf}iryOt#_@JE9p>kW?Tj_1g^|j&e^wcTeGw@4b}OF@~nQ&!W$E&JuDGdQw*J^y2pS# zm(2YC0ENZ!v+bMez7Fu>7=G5_Ez#T0@}>>3!N;{I{z8MANKY87p2{k6HDdDr0MR}> z(E5~A?UoKWzES*(zsDE=_2rSD{HUQOf|~XbH{O`+Hkw{7{{W>Q=${~#UJQAAG7+^>IZ8uPinp^CLOHV{I)oxOUXl+dj+;U z^RBCju{DLg_voMc2M6rFy?W2nxIIkHmI~HAfB;gRqQWB4)vWigGQlbu88bs#Gxq!d zQq@ExlTI8|<@^^9?XUTHJsbQ@f#3c4ss8}tTnurph~p_Fv`X_22PE1DF2v zi~PwB)!-xl0HQE|op`~B#^G)SPROFmnEwD_KlBa{+5Z5Qlh?n+`##>+(oqlQQU3so z_H!nfq(ylYv~dpzP>vg+q;(A1F8mTkl-Fwm88fvfC?Vtq|ze zg+J(j9KOCy2juAA%3S2sQB!3I(!B(5fjh^Pmh1%S6ye~G2LrXj}w~Rzv@mfmiXuRY& zHMu2baoPU(EB^pV_}Kpd#J;{lIFFSKR8MFiiZPI#dz43RF}k>O`NLQbHh)!@#USmm zXtX4D zk0tYSPYq?Rm>bWt?@!RRz;Zx1M#j0t-H=esLByTYT<>}&;CD`Nb-UGbN_WCTt&kPz zX~ZVuOXyYT#jMwB{SyO5a1SGOXbU;SH-Z7C-K(U0Ov~Eks&R|6n16lih-hoi5)%QW z0R8KmV|#@>5nnMb@h7U0z!@_h9Mp^kN%IaC_Yx8Zn2uK*-aS$VyDg6!T}C~kf_KUR(oO>Cv^W=btv?T)i2H15^Hp)9(xh~9Ye7)8{F_AH^ zyLkTqd{Q>x<~%H(#@ye6Qr^wDTj6vBc5fWLo{6{Jk(;&B>TI326Rn3Hi5;zjoAE#) zyIHP*H(pL?=5N(GrNy`4I`aS|%HZ99zZ3#+)hiorJVykYc8E`4x$ScKAQDLI&sE*& zyQXKj%&ZVEf4}CUBzCUU1P{vG!0@-rxh_y*?RI(V+^6i{G1C110Iww-&HYykTzc0) zMC*O44!sgsp71&59Fv_N4%Vb=*+^^+i@XRxGlpkzaQl-7PR+QIrq_amk`1!(KqqCy z0^K!S=LR>hxxxHf$6JnzsY%J3r&I&3(tTFwkVj$zonha}O>dRb5ZPI72ne$Fd-1uxJ}#0;M#& zKV2s4b32+q;I!gG;dZ*fEFK(1!(8iVwUl*j4Ge!FWF%89oA@VjZm!K_*yYU2G2Wop zs8ai0%4jzBNaK~i-_3D3G%mkeCJXaHyfTWB_=S9Q>^3qVf-yD^Plry%NhbK%7ZTe5 zdU55|RKjG6hO5q`f7P|zI2UqIVtBLbrp!AG=(F>)zI_Nyj53onP%*CRb0L*=^3>)I z$z!i)MNsQw-KuJ5rzB2Eu2j_Po;?!Y{mB&3#%=8Cg11GA7e3ythaT0DIE!iFc2Q>! zcOE*X!x77$BYY1VD;tvT*wXr>&eb`94|tMxsyRmt%_Ck4YMHN@k7m8f7-4j-u>S0t zy&|yX?$<|HEc_1Ad+|zN%UEeb%cKidC9Hl*uG1#@u(E`PX z++EV}AH1IEB!&Szjdtz-0KBTnGo+Jvf6*MprQKnXwXU}E*B{jh&`+E--)n~wo&}qf zc#^7UZFO~$hcTU=0HDovvgCIo!FKCOrsax2#NA$N8E!1p^7nieMcXH}_$s=ZHv?P76nq%|!gl)NS`$#h_ z99o9)>a52+aKyr5&7!RhJxObw6dBJzr;3otUdnkT+z0-%m(2emGsBi?b@>FzG+2)D@x&RUjkWtK z?D7r;-lm@9GX#awRx(L4mNSRJ5}aOV1H^x--w#0xv~R58&g#tuxruGG*T?Wxo&e3v zE0i|fJe@iFm1GmXLlYe?TicELAz(>}%EcBgv)j-D0mz96~L_8>t|w71fTVV+B94rb3p&yPDab zovqWI-EZ_$K|B29Q&Br{n~6L$RZT-(4t%`RqN6nw@2VY~n)Ds$*h?hxQ_Z@TCe6qmMc>WvQSS+{aOcEUBk zG)r+0Y(&im0;qyA880LOl);A+So@Hll?qDN|&&7+>P|3QeiMDE+cEh}P z+t%gUEN>HEt7H|a#9^hkZ;1FO!zh)k1+BjnAiyW5bDZwjMCm4FEMPhORNOSv4o&-7 zJY0Ex2|M{)RoA$2{_K}Qn$F|*EcDxCZn`KRBmC~!?HL;Iva~Ih?{&MmD$E(1nB}?V zswZwdfK57P{8Nrwg&*2?FYi>+M>~P<3L~Csoy9wMlRJ>)6N!7CBZax-c7SqTgR=WC z9tTXy%BJV4BRL;qqT38v<#cYz>`XXg{Qm$EYhqUvynJsrXW%VrUC?ARL z*=(E;%DUG(v{>7P(I%Ysx;R+b9!^ryRfbF=;M(b75j_>O9l zV}#Weo^WcOz&HTw3wNWeEs>eKI_v#bQIfb23;6rLyDO%7n`6IvHk}MqNXuI{R2ri! zJE2b3fCXsQm3YOj+aN3){&Z zs)I8@4CFynrV<0%)LW899eDXQpy)?t%dsp%8YqJq+0ApO1vBZNIqc?VEl`|%h-b+! zvcQQEL+7t8dxSY{)TOZDoFW$U^|%m4ztfSu9LH>pe-gD;4*le}PC6l&gpDl8mB0_hR7OEF0ToN0$LV|BK03oZj*N2W!^J?x zzGvyE;Gas-1x`W7y{g%)Uj6|~6)cr-zRlA1FYC=uO$1dFhDhdsZ*#!)_$t`dURj?_ zO_*-Y!DfTtfUNvJXzE-CqhQn=+AcVRbgXkj*!P7Cp{%HiAw2mQdhi}9976|w9SD@U zuW2?ymstdo#piW8-1>>q$x}-CUryYS^!wB_n4Ge}$Q=`0M+4xmQb|zR9{0Vn0zRz$ z=t(f^;x##6p^Rr1OXhJ;=QGVwxg^+f;D%1wMMK6-%$NT4Q&T}44b4#Zj}!pcQ{5n0 zDk^-<&q*1{BRXAB`YMsne&LPNP;-A_7v5%Lp_*1y!u?6%!`_8ORN*tkIYSsvb;44T zH_X;_;W;eGexA(zgobBzu9(_>9 zNa`7#J6(5|k}tz5J41;yvn#U!&f1%-@14sQEs}ZM#vfn0-`|2c43zDUw%f7#i)rs! z<%4{AHRYqD#A)0ZGc;S`v^aJu!rZQP@~kXXlx=8iZP%J91|=9^A-4Ydu3Y$b?Bn?w z_93-W`NdTuo0qbN?%k2YmlYl{jmHgS4SZRi;ia6Uud5VzRMjP&wzBrkWv&=?nqkSD zw`!Gj=AONj?QVX@5AQ``jt5-14YgV7`ns8D>G8^VJtM(nj2eJCj%b`UQB8)!Q7f_+ zGURkuabdK$qjKR>Nyh9x7Fo!psDho6(YH9$ct5B2WNQ}1=^Kacvp2NMU%?K7lB$L5 zm_4~T+m~|F8K_wa<5gx1J|bM*+qAcG9~_X&PAOz;n!{IByQ^$_kGV&P7@%hQ zH?~FrZv)91Pi05pjHz>}#P@uU0KB_fbmRA}Ff`Z>N_aQ(au@a%R|~{o!=!uaHDUMa zwRk;V8HnQ2G*wAf{nI327cFCsxk=pu-`Knnu)1cyHm_ z=8Ixd(o?q&hGyjRc+25Ae?H)J)#wlM``U2NyWMapziRnFrFx*0S zU=@{>Qn+R|xmoNh4sB-EhdKM`$j%6IurYcFuo|2?R>(^pd~B%2hhb3Q@?%t(m0UAZ zv+Y?i}WBA_o7Dr)ooXQ71t!3f_j*A@(6{F87JJcbK;T1*nzh^itXXy{MQ#JF2!b+IGZN>rGf(aiEdUmL4G_GFPcY5 zce^?0n^iOEz;iN-@e8X=Ht$6rY2B=c`zpm9W9eS&OX$hHx*_7uW^Z9h6mBdTdsjRX zu}h*&``u=5I$7Kk!L6t4wg)is?JK6TEH;hIr;F2`H{^wbQ!K(sC2mw<`$Y(InJ$QA!#f*SD8)qaU0KmpQqP?C~7DP!=6Z zTN93alWY7ctW&#;?Pz%Z{mS6azRuk_>YC=?6%soyrM{gz(+5&|R=DTtt??P9T;cli6=o6MzgB5y;%Qn@Ki ze>Bt2F?X)!o9dgd6&v#CJ6fm4Y|j4xxo8A%OB$D+ffjhaZu5Jfm~5gdoWE;N1Z?T5 zjJ=V*%e+1aWW<>-??j7(oqivZ9X6FNXw&jU1ar6(q8lx@nz<6S^L{9Fw-XH90-&)4 z!!>Jr%DqBezj)vP{_d#Kf-_~xIjeM+50?6AsscP^+uTi`!DXz7meY7L%OhGun6n6f zLbY4gHW%IeBf5|eP4$m)<8^8+Xl6s{2oSiQit8n0bPsEs+uVdH4gz(Z=c+FpmqD;X z1XCUviZ01T-P&lsRH{L7Lwsf6X~AjXb)g5N7FMQ4I~8->?`d_ynriwvzWzxKFK-!qt$ORUx7Oj+ zQQtQA4~%`wyzVRORTue?G`iy9svTPAZ{hAKUr|l%R5r>9rJ^s+YaOTVp+b6I$u1DH zh*6HvmPhg6)A*v;6b;9w-P6<5W1ZoImDQ12v7KSW{&tgW}W8>jdhU#iDvr`p+=ALt?( z9?o7U-<&tMQ0F%w99BOb!lgB}RZMhunfxE27U-agtWmx*Gvs>@7|ymmP#fGY5e}Wk zHd-=uexYcDam?KDx!3vo*Pp|+^m)WCfxy2@@(WppW7O2~ev;?1_8^9vAySEm*v!nA zD+nbFHi=`CwK>Y{UCk&YXNM{Y7m?~0=oF-APz(XGMf>ORyei?FtFIX*befRvX#-(h-l)o#*xeu2ZqnFb&KKKt^j1?HI9f_4~A#X=V!I-4^DSiVIo?bfwu(qEZ>T^Q-T;^l2ZKk*4&UDe_0H;ypNut z?&EL|B-muCqA|i2s;D>U2P5h&DpTJ3mBk z4Z*4Wz|T+V&?@Wo&qljN^LH<0Sr z6VP`iouG<|lIA(Az%Hsw8@Gp_dNERGijaoV7Y5H zb-AQo53ZthJIVGrcqY_I=$XjdihJv1Y>sV1cit)qWfIs1wSa1XnYB|+2KHA-BjDG$ zInzsbG&?|}gD&CMZns1*_~CXW1kq<_Uvf9$H5L^P{Q}na?A`@MCh{yUDIR#4n{)F-VifTG zP8~@Pg92KIr_2yTiPSOdh6H*p+=@|arypFm*0lyK&V#SI-hT?lsm z!-o($D|Or0FtDh`7AsE_UTKKE(ajU{vSY#H z@Uoz=$ti0wYfRVCJ9b5%>)WoXQ-f2{Hc!%>y966Ox8>Kp1awpqR&V6EyE2=6 zf4u@NM8AThQF{M)sEy#cD7) z=&C7ThH9`ijn}XR1aZWhj#WvBxwN#5FMdqgX`s~gPL~y_b6o7QNc&nD53o9gCeZAj z$ZPP;D^f%O(rV%Cv28`4np^6EziMdu&uJJtHLS9>9fw!yFI-# zTU+$+D?hhbwkuaPJw03zQb#q}pL!0R=Gp_#fyN9Z^#TO~|y7zd}dgh=R;F0H>On@I16x=Q7XYwV0OCQ-(Sy@1Yb=#Di5!wrF$lPwsq_;^FW+^Bib0~S3$T zBy~p2JGPdK4<0K^K}8-XN&d}ro_k7K{F6N0*0gooCxGI2HB=F2w-z^cej#V8{Fh;JwntD- z=nIFo<6-^xtyb~eGjLDLdGcQ|$NaxPAFAH`d~3+7{GM$V9?P0vJb-Dufy3@AC0i7< z5^n3MWTbH>+slud`Y=tGgPf9QM^wzS!4%B@0GPm6v%&uWp ztAuiILCe@)-&?SIFE1U9IhXV2RD*fTwLl*TEOyqKO3)Wi}}xwpSs5{kCbAm zS|i!Y;6GatC^TpEXfEejy4&wwgFeCIH1su5MH45yc?L&~M?N-KTG|@?E|NHF=qIOm zlZj@Z(Ry58Gl!G<;DZ@An8bhPIFPwoEzIp^k=s1ndeEndoFw6Qlk-5X>8cU+&6Z;{E{Pq*%g z?y#DL?EYque&k!p(KF%`L>+DIJ+ITfXEqu}VZKs#PW9rbsHXP|fPMi@o5sT5kSfUC z9F$)g<`NLDt1hB>ie9~Mn5yS2I@w~(@v8N#<;S0xh&@#pee zVV8*+-^nnkcazHF&dae#H-(uUuDbG2Vc?cYZ7*dspc;@I?khz86qy^E*SDtC>PiY+N8yS*x?0>;wr|=Tdn}A8t*vn^!4{7Iwb6PrFr@ zmTb*&;6DU=YvgOO213_q3}fPTD>g3d*IN8sb;m0|pO*P-g}E*J)UjsmTZ%~FGB-@R z3+wlyEW)Sa8LuzRbzcqzcRKL`c&#lYTf9039Xl63^;-_X8yBXlcJbi)p31vbTNGj3 z&mf}Ef%1qL=9gbYE%NVPFTil_QcEeGP2o&E{Q0b{D^XSJK_Ko@(wx+>o)>2o9ZzbK zR&`-ZLT`sce|1GlQr6$OA!~20i?raEFuIiz-@|3rZxzJ1J%ep+Zk@#4$%AY-@=MOe za_#T+q7dFK=lHc2UiBha9?bE3Bizj$P}47A-U-g`;ICH0zovT}-&h?GiYFIAk?!rqqV+y5emd8Q^Z5Ms zPL(3%-tvmO`MxO^Y0uuB09#K|8%q=eOvf?nWtByChNx9y(iR@WbO~?@IBM$-{{U7n zUdztT_RaMi7|tFEXkChLirTjdrFMcV-3HnUYD!Yrq58m1WL$MOQ^oSJzO3eV($(t=xyQ-2Wc9>dSZvaqgiCsNQ-gvm(KHqMO4j=cf zSzk!99GST(X&7Hp)()!8Ty3Yr;Agh`xT{+^16^Icf9kagB=YFbJz;A8)79mpr>1Xa z<1q^}6po4FM!LjmuHzLRbBRkJH*YTmKqD--OM?!aavWY0@_cwWp9*_vFbB--AFH+a1(=dYK1V+{6{E+h3>alSJ9GuM zBf(|{s`I~wA0Hp>o&2SJOp>v!bF^TvNA^-f3#y)TYaNG()n>;PsA>8y0J-|f2A$U* zf-wD`$e(9P`3c6WOXGs~!#~J=NY-8+7hSwR)$`vv%gasVL0QeKHHN$y@tz-mT5KLqI|5Aw{^e(ADB^@~VSa?_4vR!v!NXQ^A!oLs*-Q-T z+ncH(@Y-|tU>oK5Dzna#oX)ymko@X=$&l=zr(#K*DE^Rw0Mnl zkzmb`zVb*tZg=PIvdlKRp|8v(aJIZrJ)@}xcGAa`M-NV=1k%c~&h5|f__4)PbF zom7swncvZBu*v0{2Z_&h$hiJd`7CWTPMV>yw~LLIixi!-xKko;Wzq{}=m!;eXJ+kZ z@_6yft`Y}gxU;JsSi<2L;4jmv7yQafXiV~kby8O~teI12zb>pX#}Bg=tOk_S zVk|beZlv^EQ_o*jXZB_y$RwEQ!5#~%ig???`TU)^HTpSnMa!Y)m&J950=tJ5!1YTj zskPxZT09D=kkc|ZxuLhYy3lW+CDxUse-g*TVGdKtDRsT8FB6kJ*VXWSxJg?4@Rxe+ z;i{9-S4lH59Z{v?AxugxIpZs}UB8z7 zr)jUf9fxMYxd#_Vb=#(%I{3L{gwEvm3vo{KsePGTKbakmZA%~ly{4}7czZ`Cb(&@^ zRU2G)t~o5G`gX0l=0{@K+wl5%4pRe0mr;3}Ba!gsXttvMuA@{fn?+UjRM6v(l55MA zg4{~Fr z#uJhXtLL~QQI!~HYc;qk_?8^}BC*cn8R2%OZ`fjSJUFWMNNf8O4n+P6;{k0w`k=E_ z@9V>lslgr5wASTiR47%S(<5=@f4{j9jJGahrO=A$8zhihR*gwdeEGOLPVeuEG#4dk zFLS7U(Ws*FnPq~`Z7H4fcb&+K=m73v}a9=iR?7B`sV%kx(bSy=YFExITo z1jOs43zgY>PUFn2jC3u5HgpSuAekc=HI_lqMH@ zha<-Pkn6fK;9QE<3rOxp$X!@5yH|Lvv1O6^I^8#Vc&$Ao-g~nUy!~Y<$b1UQ!fkHh zp+|ORR{7M_PvKO<@){}2(2m67648k|A(&j5Ygpg5G9QA`J|bw{32zJCWZYc@&Ld6M zw@VA)t4a%_kUO(*d8;*Y8Ei_f`9zRIBX~G!RKr+Dev4Er(mT;UKAb-E@tWWbI{yHC zmq20Mi5u&?L)@I^`rUeFr$GngPytM%$g!eO9~gPQAD;BxSJTgpeCGINv3^EasVeA6tr702<(U zenwapaVdV7P*K@Es5w(QP|7TpJwdprEvHt%xw+rJN~XH2DP9=Y`SaUxwqrdIGdZ5)){p`Hsrh3?~Wh0<&N#9@&z6caK>>2IC+WOoA zLR;GGr%gOec2;G5iPUhik}Bv30qt`SJ8=9EYO)xMF2=cpe)q*d3HwULbg;_sVLEf{ z*;V1i2D27f7~t+U`;%S-ZPS{COA|x07jpO@jQ|}~`@<{@W8ZwY{>pY<$ZJ}eYx_EX zd{7Z(KV?eH_OWmMON?*I9oL%TU!gwaC2Y^xvs+Xiszq7AZW%KSTdpWJhgl-C~207em;%tUOW4=?% z`g2g?UT?a~4GWFEyvPc1;}t>f5V|-=cBz+|x%a4^_txjRLmQqN<~6)EzfTnARXw!s z49YTUZ}UJ~udQ_*PFj5<0>mcy)hx6@p_ZM7_wKhp@9{$moiy5Z-tK3jeO)a^8vkJC(<7DKD!c*ItNj1oMaqd$qI&!X=4s%iD(Se#MsNSF}Vr0 ze8_~gabeWa!aH{tH$gszt}wb*<&l>AT@~y<2R~m{=LQ}Z;>! zCD%DjtfZzjfzRMHvk)CEM&-APs&G#mKeAL$k|Q9JcjSAfO{N0!Hl;G~uV1W%tm&^AbH*<2*;-4mv& z4rFn?uCU^Phdw(><}_=6aw6)8p`S*(C9h+_XOm2FT&b2RUcmiq@x!9CQ!u1^m>B5~ zJM`!Ns)Wvs&&VBiTR%~5rpJ;cj^lK=#RU}c!5b@S$%a$=MgS~LfCGV0)3K~`ChbP+ zX~TkxFp6h2`9VE(`JvF&zU+8wbU$*s%Glo9JDQxaT*-Bl_SqX=+ktDp`?4t+F*Hgv z>*37%khm!hUEp=c;H*y36%(b2{k=V}lEUKO47@s8hf6%3xdTgv+{69ym0OcdPhhc%jYD4$L6|mj(o1x%wqS=!B%{+$E&iHTM(~o zIhyA-=c0ldp*%am;I!K+w#j`aX7J*nt(SmzKfOl{MW3dQ??dLLkVxqyc7A8IqBdGs zbeGXc%G*2{JweCuRU0c>!F>k~IAa~M%zXPi=)JyPS<63VEh(- zDv1MieT9>}>CLm==7>P``7HJMYvHM*t$jp}jn8avJQVWMJ;lOLTxbZ4O^p<+;2Idvr{ZQrjBrB=I|_Z-*zl)L8XmrLrkLfe|w z#NzFGcOW%&us1WB-R8E{7G*&?7dJqHd6Y05{i1a`^12h1Rueld#+THEQ_ow!0nN$O zj)>>c6;)K;aZi+Jc=TEMX{#u+Pc#_?%RO)Jf^nFgG@_!g0obv*@KM&z$6|Y`cIbVw zhs7g|+r~Yh9wehwki`_@q0ea!7w}9dR>bPU%X=JpDT|zF-$_^-Y_|^XQa(uGicQ|P z)l`*o72eV#mm=KqLAgjXJ3u_E7aAD6v73}_P3nL z;DB!Te;|-*enmBoWVKGr+v})0c&TFowxmZ(mKFwFs`ZWBRY=!4x8t1vMr<~QIGpg! z+xb}!5lH5_p^muXt%+oH1a%E{g}J6hh*ZDw@w%~jIDk@() ziH@98y zqa3pXJk~K`Z&?8~G!L4o(`Jk^))(Zi2wvHlFP^YHhU0>-gO50D>={A7W4q$0z75Qd zh<5CGER?&8v{h0HwmUSJ?d0Ka6jKdtU0no4)GidmO#M_?b!<(9QA*s5Ad8ejmaeZ3 zE`_tS(*SZ^$}(4Dj7^BSp{`@cC#gYeSUEdYMq2ussUG6!vy_gll4>_o7@r*f0Bmqs zc^&H1vOUsAQR|rg-vwdVjXcpf%=@xI>K+$D#T8qa=I3zgPpYj)6C;E%?%~BT-mXW9 zGALOLOlgMJJ(UI{OEqmIVwJ9A!PfjO#Xk+BZC)pl&T|+BeR+=(jLSpjjd6-r^F7Nv zve53s-B)ME3-9_?e3cEC6bn{i%`i+LxSt7qdIIlP+?g4^idZU#Df z#OeL~7V`-h-0P>RtHmDR9j72TB%2Scqo-u`F-aV3HaAg;YUr5%05W8jz03M1J7{q_ zs#j9fO4r6s&D+}3p;|=kPFlXuZ9BOelBM4dFb;cjymL&aqLNnKjI%fuW_&%-Qh0Sr zjjMUUk)iEx5JDwQXhSEF){JxSLFwscsLdR1ZGk4|kXI{7rh*!5*E~v#TEvf;rOq#F zyg6A-8-$+DrB#GC)_()?Q_WQNv^E_FUhjI7Eks~vaCM03(Lg1hHuheWWOJ+^Zy$=f z+&V0sr)DQ#%>hy=WzOeH=Q)aLoXK9yjpnD0o;Z$UnDOJmR-7Bne0BPKthR0{rxO;knRZ3b@oMz(v5mOr| zqU}2G96BZgohzcLbZ&Nb9=w%VW8T#V4J@rcJnzo-H25omidr~CucdP@%%%*En|WuP zp!^h~k&4e*{#8X;RO=N8=0=;tl~9;avJ#_^Z0kF@kb+~%+~0DXs2}NId%Fb&jw#fE?_(K zR-uqm#_>Cy9jg5l8i+d>1?G`;>=P|^_w!rp} zYnl!L&ETi2aCDXpwYsRZ$)^*kSLrP_6ab-(&+3V=wno@>x*bge{Kf}2#a}@%e%1Lc z9b{%2N%OlgAe)7pW$Xy#6<~~!k<2b7Juuqtvuw3yTk{$#l(>`O?7i0<)f_5424rw9iy{=%^vfNQ;5Spi*zrldQ+nl$O{y%}4< z0*tmY9$Rw5sv^p|S(^41JUowb6p|ZmY^+Av9L&w+s>kYUp++#+sbr=F)eK|)3TQ?* z-~pCBI;OgwNi#V3n<7Gg{>?*8we?5lrA(E9oy;A1qC*O24$lQn zIG^;bi+@>dR#_F6m9 z>bR+BrV%~PG9Hfm)y7aoeOvKIW7{Y6D^IeJ;Dawkvid!ryqqxheVb^jX2wT@#@WNB z%=Qg!myNsmc&(fpVM&L;De3T+#@fW~SNvK6)zs=cSPA3vM+Q*P@bwo|1T+POKi@Zaym9SZz72 zjgYrX-69Lxsb_6&c(RN<0`?d2T==l+&6=m3kvBY?NaT8=`(KB#*i*MqZ=chJzAGDo zZYbn?DzgaW7Plr862w?j>V)!#0Y1LaEK9kjE|G&!PlGkxcEw+A|VVH8leuiIVC#soO~))3?~YPDy`&=jgPj2GO0sYX(DA#;yD=2Y;;7WnbqulO*=PoNg2>Gd_8P z^y&}iSuQh&30lLeK{l-gqP zWfbv38FK4sdv_qyRZno%`k!yPMK$bZNMUY9PU#8Ia{zdt^3$+Gynb#9UpjGM6F()m zTk%z8CW@(!GPJS4lf2-W0Mr>PWOEDttlH(=xT@8#?jFEp&!z5<;=e~aDtR!S)HOk$ zqz2zB&Yg4|(CBEYYo7Mi2D5f9PepRGs*w>SFFl?EyMnJcaerG~UC9(o%NwpZ-0=SZ zMP2g@{;v*W=BUX?-CSPVccNxV9YP~xyBzo`OqH1(Aajj}4Bs^RY)U50mUx^PFTqWQ zlAcykv(6mHK1b*giW*8f>Myfwya?G%@nYGhMuO-gPd#nb2;1y^znYn_g;Hu=} z?Qssj6+sp4yU4b*i$ zDhXk?VFUej=CK>i?r2VEemn=sPRkC#%ZLNmW8ds*VPu=y<88i#sH20?yu zO40bDl)gkZh1PtvRInDFdZn<$nWZee@j1nVQ_J#JB@e^kWRA;eb^b2?S_SCP`5wfN zqpHQIa`hKhX7VpfRW|awXddtUsD+Z*Y2xph%zN1!&)xq35{az874EV58QFNPp0=`Y zcnaKJO7==Ke>a{_8C7jh0ueWkcJNFjaOl2}hspNI)0?vaiRb=f$saXx9hksreyaqe zXYv9*XxZuWByO?2uVhY)x}du(53>g*-|$~bMTXGFtax=KfBdKq$y*ULH?YV6AG=_U zmsiZw;P{1fxv8+~nKa@X{S%?tEO*y9OyFDFZNByNxod{KpA4zC*Va?mb$r)84T;g% zOGhkckjtCyMDQ()$Es>YR8$Tzk#I`-8JYM8H~gVUM4sfXL#x9NlMSTAs=Vr<@KY1Z zpbF%EMsW!aX)!p(xb|)MuVfKD-`7OrPnTX7JaZ#wr<1|tTAMgESe&ow1%lDgc{Ras z=$#vPq!F)d-|$;jQfqwH)j8DdwqX0CV@#VopKPpUk9HR4kZv=)luj+3z+iiv%p#Kg z?H`IPA}-;ZMBz#@>ZH}8ik=VmdRQU;1^}fq%6+vi;xX*qaf_pE;EjYPSvy^{+s$_z z*J`)9IdyB7Zh8FB6$_@*yj^fFb9KzEZiwL2?ao%av%nxJZqGKS7(s5Wa<{rEcWwm% zOj5Tus+=jhIjY!edH(?FN*YOU9eJm)r{<^ayF{LDIk{Z6zN?bub-h%=yCWP|WwxPC zTJC8#eOti+4UR_wu)bSceTt@cN{_{Q4qnHzs>1nh8Fm^I{{T3D>P{7AJb@3=aj*Qg zek<3cws(A2k$>~QWi|NVJOw*H73@#F@0XH!dkXxNRThpHx<_PZGB~Stzw}(_!D#I3 z-lW+qT8XkyO;d@wdTJQEY=AgiyOsO-{p%?_RdlqJlx~&MRnpBLQ8eI<8pbcxa(!}aZ@x=-MZcP)Oa5s#b=}0 z9CEUrvb0mac;T0JCy#`V97yg6-DlG{jL_25RW_;Ng@Ea68(foN??5)A8N(sMp*VFc zUVAIX@r-6r%N~9!XM*ic541Q_@T$q;rk*UZ#xoE_uVN0Cx50VF(&3dmGgVGxo(IDt zGvsE31JA>~UD(>(5^bXMpEqrzh`f^G-q$T|IiRVSrqxvKHV0XSIwr#UYL>iBpHq;X zNVbRvdvTi;wYCJ}KLj^ECnnsx=jLHLphppdbUOZ*gK52+D zo|*gR8!_$W%Kd)?5QfiTxP!2I+(LrC%|$tU(nBWKdKj3wKW*rP&*KF1w16% zBXuP4R;JpS@m4yPrYPf%L6gwDw1MBM%Tz-JBu=FniH-Un%}8pf;-bW8{MEjJjec(1 z_>FI(WUikHXk|0;)>TsM)+12bMnxm-P#w^4@4t_F&FtlDxJ=bGe5HiPekW8mj;?5{ zV1}Lhvkbf4<2dFDbHe3~nAKxsyRW8jeTmrJnVHX~qkUB1SkF-G`i_^-1$@s(6x+z# z6Cdun`R=o5v6t0JGchNSdt?`B@=l9wv54dko_L=H_1(7C3*NEGOw%_1;LyfYAvI>3u35Y$9Y2l`& z!?|g^m|iI{NDg23Xs&!Ny$)_W$NYaxub9T=GUeR#^lChkx3!cjE}~i4%LQ7if zshL$HcrVX#{{Xji(eqQu4z6yUR82jVJL=ygSq~#}pgyXP26cvCWhQ|omstr)W+9q7 z$|E~ma!nf~AHLhCn`GB2tVgC@81iL@oNGN2qh_{#x%qyth`vE1Jj2iRjG3 z)q8X!-n}?XbA#FOQN9XkD!k%ac%L{o-WCkk95r3IfB7C4d&Qsl{{WYjuuL#3yYNV*CqGRNjR}=l{sp2~`gyL}0#XL`ADFcLA z9cu%rT|9sOLBqM&Wx;g9Va{lY$2VYwETy~n+&Pu58xMqr_9v-e|;M_T6dRuRmgOt@GqF(h_yi*HxXddqKQ&-MTk7^{l!v`TQ6DQI1@B zGt7(@%I~+QteJ`p%rx<>Bzqx@!rf`(BKP&xOjBgB`kH|D(&z`;ABxlb-XHyPQ#3)eP!22%MvqUj~xPm9msyz%=Rv>6|2CtQnPF#Ok~)`@Wc04MY`&_$l6IJJy& zCzA5Nk@*~X%yGvjul#;rPqoSAn7u=0#cL!POC2+<;5dAhHe_lgF3;lb)!1zJ>!RU- z;-ifPNd8~yy>32!DUQ25-d*LLuEHsUs<)D5b0g);`wK!QH*q;tN=!bgmK?roDS6|2 zerkQiSnV2lEItUoBM;j?wNkFKP+Y;F?)+6RlAdU1mF_-n{_e_v#V9((C;3#~Y(HtT zyD|LNYuZWa8^w};l_lTy9q&u(1voVwbu6GBY zf;-RIX?*b2b^AW5fX*+bi8tE+0Qt&$Lri&cPSW;JvE4p7l!4t`j?f+K-?EVUx+Tqa zxVJ7(?&-V6=C)>oZVI+qIO_KvWhk)Y?@@_ov*T)r~0lWeWbpo zKe3~%1AUb11rBQ)=5Xqry>AfY{-!^%q?sGfMy|JI#Pw0;Z`#o&@NvzeeewN`AICB1 zg5q!rO3yfNsV}eH-ijA?MV+S|Re7y5a=ES7iqngq94_|9my5nORaWZJWU8wi>Ny<@ zt#D=g4=UH(z0NLNbH{SNbC-)QJ7p$`dpbL!<8OlRv=+6DdF@+V+J}d61l>=E;&S26 zd!lO#oy_uDiu@89x0wTM@--t(dZ0BMKRhQ(5WM`b%Nw`SaeS^GOm%4{+8WtoEZ!Cl z?GU%Q(mLeatL?$62}Ee{47POIqpnxl?>7$=+^TdCx+)5agP_V;@l zYa6KDPnDsB5u(aXgH*>Wn`@4#<%Nv+K298+w{(XRnX}fsu=+8hd==U%me63*J+Ab# z8#kx}nu(Ys&W}EDqZma|;MV*?onLN`sl}A*wII^@EQnW83Tjv!8t_OY-{e&IZWkkK z+r4Ij>qS>g+PJrJYxpY14a(-``FP=+lhZYU&lNMLmG1$;nq5$K`-sM#6RKs%q&vlBN`s3$!uG?!&5DGZ@^bt#98Q z?_zk3cbn6}MGO0J-+6Am7Lt_z0JEu!oZ{`+z1C+6!K9W=a= z=zLB-Eby}{)b=@o;ss{F$-dcEtYtHKcw(H4%tt##-0q)mAv~Y`K0$JX(zY3l94b1F|iu>}I947=)P}nl_Tw z>&Pa*538n;?PhM53I|ZsFlKaa1FA2rE?h2Mw!4Rx!Am7U4eX11(C0rh%bm|u=EpPJ zkOz1r^GTR{OtMOo8Ev#_^^T;Yf}SV0G1b;uD2{qqq;tDPqU$S#Va}Rx_h=r{p!^6ZyM(D3e0#_VeAbDU%6Rk15w(0wE0#**{!!#WbYV0(`b2Ykwatf`& z3$qI@?4!L|iLvCefx*%1_w!T5lpB|5vC6c-vqmzBd9-WpP>)vO*5<9oV=_87XdVc< zh8Ql#vD{-iU1heqM=%9|@yKtlMP1gHNIM_Cow zy$#@n&lr<8XNIShk-g&sTps=$P>HP^k853^*8LWk)Lc~~Eq0|@rl|8es45xkNq_I$ zsfUQo%i7=ylX}@Rd;V&zjQZB@rz3GWvg#!p#(UO77^Q3&lbXiZKK=_y6;o%zXewiM z%`n|asN?x2$YEz4ZaEc(Jd$54>)~GwpZ%Wb3%yot{B=AI$*sr~{Gb(#b7t67MeF{x@80U^yR^lLYl_mfs}Y+Ud`q zf2AdW-+!7me_$QlPC(7C(23TF-_PMU( zsPRfj%-~$z56Lw2;bEudfKuRf;GDua>7}kzZncHKjV_#f^+J+&atUlt9TPJH!;d>9 z4k51liVWfb*WkIQvu?7f3l;inqj1E)bZ+-o6MPH;(vJn);Jd2<+nt>&#S6` zVWTMTO=a7oekcXkE~+CYu6M;wNG)}pU^sXvop!ayg}=Q}9dnm4&>eltyF7SXis50C zzg5@fPzubMT<%;?Ma7o+q_-jQ;ir02d;E3qKt$vGI)il6AswF0za+YU2jZApcHi3w z2j8DAAt?lCQU?R~uG5He0g{d8VZdET$i#VqiP|>L;-<_?ZrypH8H5?PFFe`Dg*rX~&yXi_jT;B&XyO5ijc1=0w_Ouh2y_a}z3 z_c?pgmVv8yS#)h}^>PT7kB7x5V;tRdzfBX&K-ir-_N;6_=itd=&1H1>FLO2`^tmCmvOtY~)*D)kl_z3s_7Y$KE1 zWnWlLp!by&+sA!p9=*r|brrDChqv{>edt`+o2RC9ZewrNQ7IA{Dnz&DlIf`=F5OJY zKFPnqTdTyRs(sFbqNwb>pg65Q#bNj@eN^<=q;7ncyk|Xyk#3@EG|1y4SMb*AMq%|% zYhEFEW4Ju%54~-fv$%6MjnYF4g%l?FT zR*1=SvF9huB5Chg36fo}!kut`T0 zVpc`Gb+6lUiwkSiX9aWKWox87gWHr^+UlPl(bLoCrl*b<-rC=XG!f<11@8@HZ5)Pz z>cMny!x8OX$5HsH>RMW<#A;wJjy$7MH11U?&0Z&2xD&fM1mBu-fi*0SFI;myJ?OOz zQDD(aG_LKCeq0csxp0}`FKBa4?~R?ORXLI2zPp*F?k&J7><^8Z%cKO{zrbs%yA^9= z!(@uGjq*bv>`2R9oj<#vwt^bj1TS%CVS|X~hf#;iJ)N7h!(cVC(D|+%1_bGwERt(` zG2ef~xo3Cg6L^^Te0l!>M1>b*Y=<;ZyV&*q^#&_a`DsLQH|mC+-B9r>=FOSzXNI0C z-W?lV6pWXL5=sN1rIxA?=-+rp$y1%#pJMCe{_d{PRa0SxM%2dVM*T)#^-*FXnas@u z4u#!Ixh4m2_{>;41G$orp3RP)DoIA}f(Xj4;&0F{hz=gTj);x-bTd402z(;vU+k&z zIX74xN$&&Q;-@obpmbBk+R(p=@aC<r4&ema2#S{B{AKhd=wiAcfx}G^*FdXU9+?2peMB8L*nbj;aQo>}8DQ|J1|&`&_h-0pqy+Sm9iFv}pJ8?873psOv4EhX)q1awWq>nCPt z%VK_AMt&rCq!W46V=&-(sH);~Va=B)>)fHNtAa@#Bu(AOID)NVIF;gb6*`L>Ke-wu zCJ@2B%VuAXBvw)+qm#Dn+0>|~nlXlXwo7i#gm)^Ano~r`n9e-&armZi_DI>H4D61_ z!rfP;Y@W(e;yWde;+U=+_ljyJ%}XO5=C?Qw%zGqvTKaMKL*(zswQkqpV-TvuzKx`o zAtXdZC3C?fbr#@x>1}(8Z5AuEK1+pO$l=wrRkYJZb{XL%?1{y~)+WOCAn^n^5pG^* zH#EyXrG@kPc5!2=yq-|}P1j^@YZ%!1#@lG6dz$8d7{5f{qhAmVpR!sGyc6vSXlowQ z@$TTeXQov!fz4x^ourY#=n)(mf(dG)^Ov+-*x%StK?@~i-N*alt}Ol1E3|VI+cjo+{ln3q&uPu6Y>7e(s+8sAHh>95MBhy4$c%tI=m`F&c{I zz0Q50BSD*oa*m4Z(@V5CWfYsLS|-T;r;o&_WyU1LTJjjyF`YC${^gbP*y3hP?a*=H zpA~$qWQ}8*Gipk!##51?b!2f&=9jkP?nE|TUF}tEURLBbk4_qKSrH7CaR|%pGl11= zaC%XM&@qxv=h%!gyv%$8#N;OFtrH3S(_0ear3Z_9xd3bXB(UXZbUKzM?IwF;e z?A$xn%ERzfompqRNa*v9BR3A^PFYz8Y0tT_;&Xxq)1?(9%gIRX*|jP5%J1{qR!P zWf)fPGgt{19mp*SN_#XgDdyM*EtRFv;y-*+zL<*Swc@?ZHLofv;fAaz*Xnrm4g*)*w1s*~1C*)AJ!2OO!@buqP`k5V=GDOrg`>U`{Do^5B2 ziKSwj5`9B=kiTyEFdbg6&*QY2S`5VY-t4Z*cB}S7q2*X>7uG;~fW6n{U&gXN0@8+jDa8CvF&EdYK~hl>6kL zJ+>$-c6<|D-VOkDnSpb7vcHJNqf>wB=+H&_KJY_&Vh?iXok?~e0{)gZVJ4T#*{?48 zZHE~R=)9R>0C2_6p&eZztmPQtYD>G4fbXRYY&)vUwGGLoS36qu1T^*XpY51!$UF%X zLO<1;^Vku;nL7WHnZNO5Zdh`VUNc-nS9lRl7se95Nw_m^E~ZXqurt-Dw$oJE4*n?o zpr%2l;q_w-W=wqj((w7~NvlG;aHh2qmB0?soLBu=YeH4p)OXy;1~rqqV%|9#`65?$ zP@Ebs$eUe$kt}aZhzdS>ryzqgL`%(($(3$6lG%O2pwH>c=@OB0qdsV5QdouqC^}t` zeMa+K%$UER#v*X!))?;*K-rpm4k|bSTn|M@rMBlTB+dvZ_wk=?ze${!Ye7>04UJQB zI`;*(SHzwWJ_2wl>6}D-YRsup5u#XO2@bkGNQoxmjwR&#@OJzkbdg(9nxo+?0TzXUltv_dmHCKguykni5c2&O=U{DR-cEZmUMu*Y&49 z-F%b`r{Sk;zq6sj#<39t4Flab`T0xlOjA9?iGB^<62vqPJ41gtbPydBH;j2yNs8?V zI;+qHNq7o~ShATs6uuBt9#SBO`s%$?H2Y#~sm@;s?;p>2`mrWfP22wF!XKc|-h2;n z=8AF+ye6L_d!;Lp+W==85GQHG-pp`jJ)jUj*--j8!or*StjMrSxXixz>Gx2UHtI+} z(w*FH>r5%taU%SW%^7JQ*-(q@$BZ)qSqTQ85Mxc7`ONozOeB_zUDy_~-DPPaMUG`| z=Bv#a1yhproa|-;oYhgFv#yPpQ#0Yn5n2|@;6*T@L@9QimwKOw(xN$cmY*c;$64{R zqJ*U*5XZh|QY^%DW`MTSF56Gk;MQClE&6H1R~H4`x)3 zsgpWYw#)z80#Ee$mFrYkQg$tCQFfeRc)6bRuOzW@SdWL@K83>Xin2w93J$LO;&^=S9`outM z-Mz^4!9FR0eKC99PfL|n$Rui{YW~H4;f-77a-rJ9=CbG6AMEjGYDZ!cJ<0icfCO}+ zYK_ZxAy{=UzH7=6cvY4#Y<+Xs7Ot%o&Rq##|LHDh8P%HIa%565C<1xmNN|uiqJ}Wv zc9(}GYMWjBrsN-7%TLZ1*-(?<{dB<^c{B0t7NyMe_5R&QQ1W&W=+=wt`P=RA>yn4vt zPxQ|>kPdy40I8C|ljkC`XoopzD}?@7h)G7PIPa9yUj>#l~Gzq&tm0)mC9-M@R~!K%+b{XP1^;Y5>MnEPAui{ako?YZ&0z-IjS$#1M_@c<-DbWw%ie}aR!0#CYJDX;?Qs04S zos(0NM?f!lvW3_gT#MFS3_TmL!~@t9+ZZm(h6Q=eP*U$t{=Cbdc#R1~`aqKBVK-B(H%v+<#lD<>f-43eHdrzM zpe=(bFG-j0=lg=S>8nAm?nSWk(mlAn;+eZ3{uv7`qn<-b(d)pAa1Z_|>7M!YA2jfw zM}SYHw?r_H#jkqPVuhU+A$!T&$WO0*;V6Cj$ixgL?1yu(u4LYY$DK?zLn{;8-Fq-9 z-E4F-d~EI$?q1tkgSTD}TE5GC8v}nwnr^WlDTHN+4z!X<`)L&~b=)kgjup4jdaNKaFIs%DP(nk_*{(>!a-)MBkYBj9gmj^4i4<=ZF`A*d*m2dpMl`tsEziR0F~K85mIYsnsV{du5_u{+Mz)UsZ2zUN!hE8jf=a&JwtDX zHxZvdxB2c;=Lf)sx|TcWIuG_LBc!Hhv}9c5AEcxl2YduYc&*K4Z=~NaB|D%ki=)4a z$;(c!*G$}mq7Ie9`_g1AlyCUs>Vdzc{+M{`9Fwata89ce|Lng}Ja|fQn+l6?>T;?( zV1JDvnsb}ulTt4lFjgWC1rl$n#^k974dKiId824VOWPho6gn~8*Y;ZF(u0P`EOcUJ zN%j36@tf5?I>5W-UgrZ!r`s$qf@C!{VWX;DE)jt9gpVtG!Dv}-AmsWd69)%vL3SYV z+TGs_V@+X`*8>8|^B>doJig!ZHCs(5)xA1MpJzysb`3uAEcaaQY1f+i5^&(k@+R;& z`w{RKyW>_}p@JELoWzJm7s5o^ACQ^u>duOgwJ@T%fVFd_-z;@PT!1bCBDp5VynnTpxg z*_}+E0pH70jcPX%ezRf91P}@ z%oAR6u3eKAe+m^e1HWRK@cp!hDkb$KJbH4NUFFkEWXde5q3j}%>AyfK(8@9NbGAE|044rZ_k(lO6QDSi zp+n-iKdt>dJBBT{Y)j!(`C%UoGBlLpM^msLp85%>S#}kgZjx%_VFgEan~f_V2?wKo zdO6+Gc-+&8gn0f6TPbm5S)(>XzR`aK;IGk8OpP&y93!WUD{mbS4)~w?y_FT}oV^a9 z&Lx0=ZAZ_1<4LQ^ejD2Rl7wKc>k)Cvmup`d>ym{?)T9>dr18m$K1F?)@tb^KXj!p$ z!faQzom1h}^@fvdtVQ0!ZT;G1yhVv%DD*y-pw;R`>p71%uq%b~vR7JTp%Cs9jn@kC zXn4J_BWhT}NScS87EQ~Fhf9bMI6c^!QuuRU_Z|+TqJMCI)vK`>-eF`twKntO@=Ffm zD5A{=FTs=Y$VsXGn`5!t?V&BJ)p}8c9MbFyr6(TdUIDs{23+RxjO~;@-Fn~)wN(wUb%bN8yRnKqv3Uf1bB3bj86&Qz@~?CgD2PcWt|%$>2%+QobInhVT68B5ne-hU)|`0$QZcz2g9>G{=e6?9eJT{&zb#c>QJD~#%Pwg|+8 z+`IdKytPMzBb0Ac<}J34Nb-eV){$r$1W(A|*PcW{o4FWrxJ9KjWE*Vw^7YJamo4*t z%+$J{H^S+yKXsIqv8l_>xaP+~k~EAXEvp5-v~Jzt-M+p3BsSQP##WFJzm}G;i)mHS zF6|thJbDo~)59gCS=qCFGV!C8NsY|a+?PKX^ty}vze0#Y)Yd|j`24NwR-}WmgOR)7 zy3mA#*v$t&3-^JMp^GnmdSQECn8``Rth~)47p@P%IC%LE74(UTSOH978nJ(0UROxm zv~hxUI4bF2XUk)We@ZBdu4>j{q|BFTeLxhXb{` zJA3&=3(hvr@BVRlC5eS@*~W!eRVMJ=(K9VJZ|GQhLzr(QSS#-rWm4Xf&JOA8&Rd$J zgzos-Vsk3Z8#6NfXc|`D^grub8QYKj`_o~&nvxXekE15JCQOVLaVf9x#`VD;w!TxU2 zx(FT-C0*t?$x8K+oev|#zG==}CmuP6ZX1cBv66G1C}jhcp9Bm3@5PF$rM6Z?-%Tx? z>T%k>-7i?r__EYrls!U!*%UAr<`a=$ygm~@jxZr-Cf9muG$ds`6@JUpakgNbcrkGJ zI=(lblV|jYO0`Z&`MINt;>mYG&>`)zxwFK;*3W5|Hj%xH&8)t-&Gn(EK3ao;TgRi@CfglwD9nWl79=Dt-1i$QZLAG#2Y_jgI{O zHKsci7-K4U{s=(&zGyw>%-3fecm%-r?{k@P1H%SW_lhin89Q=+o)hc_YhhY_=FAr5 zgUk`c+1=(%rSra3>3;UDo|(7cn4Vkr&7mk{`0s5c*F;^`^)p!g#j$2H1LyGAZzxhGDZRaM7Ij<+-bD@#1 zh-R)FB^wT8BU%)$=2?`XMGE2wu@cH}%6ebKLEZR1huLX;CEI0^q_A+HC`drt_*6rt zt`O3O>lFDAi|uI3(I}t)JvE=wbS*Wtx;QqKmErBf>int4*%Co3XJk457ffKFnY0$I z^V=pC%*4v@<|_Wi}0+HzvfjnD(ZcrhuaW% z{n?AKFdJl%sPnNJTT#OZX3{FJ!jdIriot`?QiKH5E7}Bss*RJbE?|VQv&<1ijjFWo zTP~irN@j&_HBM3(GTup@hrUdSFV&{_>(-iHTxMKplU0TQSBf%M+wn_qymR(H##79v z8r(R4VXFe8XiIzqSR4O`uQ|Rw8AR}xRxN7c>mPNY>C3S~-T{~O`AMW~MGd(N=-b;o z#^Uf^G(k@R$6BvPT~HWlkt+vV0fQ5A7IEg$oHz+42{l>`@b)nqTHCBK*KbZ(iYr*d z@A!TVw6o3kb929ZN#QgK1kufKSJQHYnXi8Q`cg$Kw9~Kzo^o?RD2;!US3s_xs-WJd zP&_y3;%t#2@%1`EYdjRcM*;6c>HK(lQyv}1CZce|JQ7gY~! zy4Zs`jgZSrxpr|{Ms=>Q`#FxS-_cP!!ot)kw1?ebM_PTLmZ1QxzOLSU!#@vM`m>8>AokTR@owyJpZfp9 zn@oJJU_L*1D*_uJ8&BmAm7+1T+DDvLp=a0#NTLy_$hU4A;5w+l8OBrUj{*7RXW z&kMRtMs6EVx;CZ_vytBe3#UM*!;mdI%K7^Utvjb1AsFO+b)IKCB3?CCK%%_uwypmZ z8Qx$jICd&7cJixo;0<=TafTF(NNI%Mz#?kFis$Z1P0xW04rVF<&QiFRl_xpe_}VMm3B5_+h&ok@ zW_YWDm7PeMAGkZgKrqNX&p6|ua^}cTr1G-{nL>d{L)SxihnHq448| zirPVIvACX%WGLm3v`oi~K@$Y*@z}4^y5*^S;Gy3;6^-S?jh$zE#cNq7(ilKmE#{=^ zr{-Z-sL0gd9<#2suQB`|hdd58T(7KQP@)H=+V;%=n@U>e=KY)r^0tuH&X+^?`+vKi zy-OtErS$uRTjdkv0(% zn!@vZ(;1W@6mx+#;IufzCc#ce1?1(4RwZ z4=~zbN*)Z&|7opWwZ8Uigv=0Lx%V1HODZX`-DMwvA4v%>QBY8{JhtyceBDy{SgYrS zU&C&*v`q0PQdR71N)-Ln1}(9Cr>)*4ym|&Rv`CFr1H1pPK?8HEUGLwERqdKJN$7uJ zegt64#`}T?YrPdKIcPHP`}$GP?BCpI{6FA67_zvneah)#2P0IzFV#gfZZjTYI@qi4 zsj9-v@-Zlc0$OMFR9FMcXad*i8H}ejs-I$Vdy2wMTZI=PyZ}q!%haZ#M{*3KonW;qZTi0!fV3&nj zNQWLWW^RfPLh0Xn<%p!ll)t|sx}s`LJe65R6;pQeZihyPMRS)}KW zcMwk?2(L=g*lEbFxgX|CGj+fvt^q@P=D&w~RVYO|^ha9qLG$5rbm)Fp8E$YB2N5*J8W^F+%v*`NecH+%wuidU&>%&>k$C3b6d^a zl}&M;CrtM&#rfanc=~ftn-$}MEC%y5yF7cspiyV!oE?qvj73hD%%>+g7XPfdtid`l;p{{(#n#)qKjz)2D@AE5xRiB;*JIlWpDbW zLR_Y8pkYa35|oXk|7N6&_?Js{n|)G8oDEX@?ap*8>WsYzl~HWLGV`h#>aM!nCN0TaWtZ>4>{2d;>ruZOkcGpev9@)WwW0lNCmZJ#-Lcf1uPDZRN*kZ_VYceC z{W!+7+v*5(mZfFCYWarahnxM4-}A3B)uV~8Q*BWfN@e=4$f;mz--d#2hDAez^7#)mGHZ$v|zA>mtrE|L#bb`aP|5td_r zQ;>F^#aN21$gm`bJ5QbUei7LR`UA1uSZ*k(&$cH zc4CFr$52|1K>OpNV@1osiJ>3wR0mW)l5~Zi(oL!S;9=v2WUdB9)^Cp`XP+vXCN=#X z55bPAPc(c4EYIQlwA<$27erQGS4#qYQTv{C)2=&#@nObdZ%Pe`utpx&>7Rg=#t3S zbiDHGZ9HUm2xAp!EGliKgE7H z5wt$T38Af(_jjLA9DPmn?P*W%SK7ad@{{#X9)yd_1WmKB%f!y5ra%IV(Hn8OEkNda z>e6m!c6>1+`X_RkJPr0~!wn#9wcEtk>$fn8 zdP3Nqa`|2cb~uM=H#}#^simWx<~ZYQl!G|>+w+;qOwozvlcJZ*qH`bGA?ADg9x5uS ztftEwEo{#h(<5>_Y|TsEo|INb9V<%z>jUD7>}zgLbm;QVOpZD{WRivsrh< za7Ad%Yx>6L7$oFPevek%ph^FW#RjXX9KE~TTB%kkwwEXqdf7X$@aqnKu?1c^v9HtD z&(2ID{R-?S97{Rd;@@G47g`xXDmYU!@a}bz>EAP#)f>^p*8O4luwy)3h7?81iXNZb zeMH8CJW5yp4kOvP`nJo|((V^cEqX__V6@Bfi3%ll;(}UZmF@4H6g_17ccV;MapIqu za|Z4P{>ZKx)4#*>wB_yqKg7VUwyTZEMpw%YKlwm}?T!JGN+SQd%AT-_c4DXSxb=s}To z+e-`ZeKA=0g!YaYUyNsUAaT|OyF(+6yVTD2i)zNM5L$v&b|7Qs$0NXPVAT_LVe-%# zceIaG5-npVX6lkk8&I5;X$&%8hGBJ`D6n?g*c(uX_6yZT(NmyzA(qRV^*fDvY#O2w z!6ZM9>*%%4?1;v2D8D(SXLT2K74kJ!v=8|-&s9-td_SIw1zoPJ({M{+EfPbImp)NS za+gMg*z3uHW~rt8&qX@?U%s`Jsa{4~PDz!``J&xME=rncqds)_td~6Cd=-^1KT$Vl=977BE$9y++w^6 zw65EDaTI<6YeH8-;x&E(Q0)TuqjQ4y2ZhWQDL1?LQMc?rL@Fi%edASYQmGu-A2bzG zU%Hc;if}}9&KEUm@c{_1XlT!-)a{0t!YAtBM%-`k6y(q^1&wUj1P=i*s_O8G0oA;d?XR!U~=8h}c@nQoG3bGzjx4e%ZHxfs4_p>ee^=Wp!dx(pW*CRk@ zRs2nzWvMtA_k?jx4Z0iBi@pGlxYl7?rma4d$zB*>U7$YZ+3d!^%g?o{OeG5QEgGUJ zo51k0{;k>Y<>l(EY~u<^j*!n9KzcHW--pT!;NkgNlG&kS*X$$)RM(V%&9+6vPd*b3 z+z}D|oYwqcd}zrvg_jT}2y{NkS}-tRc$O$?d!o13f8iwdN)Kjpt%1KFMLEikCzdey zWsJzmCSET??!{tgMJ-&AK-#pc(o91z36UEdE=^g+$g;@nYHhiBYm)v5uv%oNweI4D zxU-%m7g37{u#U_NJn@w=r*j?l%Ebi9ClZK%3}KJdV$>V(d3Pc(L-@3`SIpVg(T z*ojH(sv;v@<;y_15L9P= z6O(l_1ZVB^AGa^oM^PT0X?I9*UX@2c)e@OCVMY=E^4H`?fMpU+MvIkoX0t3Ae%w0d z_M)e&vJ_WWH@wN8nr(%!iAa?QI5+7RW-?1kV#4YRZ|Zq4BXDQZcu(IbN_FAor%eOF8B9GbIv^i5Q)|eV_H%SshIO=5=KnVU>x{a9sf(9HeBkt>sNKn+1OcFSZ(lq zdafN1&VQAv`akzV=_92JWQec zvb$B-1BF(Wd=2Hk>fysNle+KQd$&fP9q}46s9YPAPSncW6jE<(T4!C+OUh>6zqVjf z+KL;r9!1Qy_XRsJaFf5dwV&+nZ763|3?H2f#M)7Wkyvd#xNbjp$XmFNRE{Z4czW^S zMb#%J=Mcr4-luq-BTf#t(L?doGHM=HBcmtcQ^ko2TT@nsAKH{fwo^J>#-JgiyXC@d z)2A1arW91Q(%f0!k`qVeYw^p280mERqjoVfA-;ZQ(t~~hui)M(qd;wQ!2M|5;}Hpc zH?vdp0u9YE^M5pfLdI?1S0fOjl%b-n_?3VARW44qQItiJW_7j;jS1Sw1IjxYxNCU| z1{9c4Hpcf%!PLvUDXAm*MVHJZes?wd7I*)Mia`p1U103>o2?5gh3BFW!`fw-IdMv|Lah;uQ4f9J;HZ>p8`#BK_=Nq&z2>oU_=> z6+g5kx6pcE&H4V119qXa3Ywwwd|rDWsqCYR`qr5!DmnJb3lO5Ahe&W;cs6%ol8I*Q zls!Gh6vj~xoYhql$6YBJzHv$aojYv*R~ThuHTy=yaL`o5YjpBrz^4s!2E?VIr+eqo z_MkyiG-B=+x>GahaaJxJ%UWOk)}4V(Uww{0jaV4bWm#txx{3dL6+9w^=pCb1C#4*_ zkdsOrvx((!)e~LW;*afROh0MZJp9&@k7TRHpt}F~ar-RmzG1p^<`_^Fq~{M)+V|6l=L02EThU&cbtFD)!WYf zD096flcA25@~*82eCufA(u7K-#E`w%olzgPNId6_O)eI`QTuoKwXH9))dWBSG35$g#+%DpxwUKP zwsBbhltD|JNIGrS4dY*@HgrO}Y`o{K=W`6X-MxxKC}mj0LD$zLoLpY@Q;oz*kP6S2 z*H4l^gkFs<;D&L;^VSjn8lzrHzxjLL>TAZGvORmIFLh2iah!I;kDf3&L(_GD?}0DT zK-4}29{EaL%#{?rzwv6ewc1^ctaRLYFsGN3I+hB^<0+rrMt-CUm%_~#%ZdtX#MCCy z_H{V4Wwd1J+ig)3Ra5P$;i`SswqGZg(@BZmFlDBlVJI*(O?%iQ;QiW7-C^j+*BgYH zGoehUh|nD>9>TrcvJ!cQ``+R3lkvZeR*YQ+@p{_n9^=L$YM+So1FcK-vq-EVo=l>r z^Hc2`895{AcNxIa!3>EzrkJS)81E(u?i-UI$k0pTBD;uC`qcVyKQ7H`FYtu>QbCbyzowrkekn=#vb%{d>WIT7^sUk=xcfZOx6CzrBW#To}JDwn#h>d{I! z9EYU&NrJ=+)U1{hj@a{0aZ|pKGcO9()JOi9F>dmQ1hPw@kN!*l;%!48Ukn=_=f z_s5x9Mo!NL?e6h`#rObii9|X%No7q;b*%wY`~KG&j1+uk6*c=|BlA*TA6tD563c*z z3i5fb_cYa1+(P5Y#8`_2eR|h_bAoA5f6_0q>suT$;YEXoll>Y0aOnsLV(R<|nQs4p z*N2~#Vj@3m&s_MN;2n1Qe{fo42s#O=VZ)&l-(kna0g{+Tw*!YJzZ3LF?MA3wO0sHGe zmjeSgN|slxF!B!9YoD9fZ!Uc4jolX${L9I?``~9PV2rCuAr{4!)A0=^gapRzgq@Od zJ;$j}Z74Jt7y>m|j)wymuKaYCgUc<+SAJO^y?*mzH*s|-k;f79#8R}hS!gug^zQ)l z)}Tr$t*|xwS9>JAu-!b;@7b`2KW-#+($AeS*xnftHvQT3XYv&)9|Bjsn^0;f@U;3< z_4@5G#FTj1$Xv?x8~H@o2EM7F7y5IKHA#3An!KwAz+VZ3ulI=cz|pt=W!pHD_Od=q zXRc%3Th$Dvo1fanexZszdBp3XnJ!`@DTQqyujE^{sCcP^)XjL>7dPL|%-7~z$GIg% zOz7(TwbR$Fm^?rsKIi@5WZD;XKN{Oi3VDm0^bAiWxPswUVNkcCYwBR46UqhT+zs_!2d5L$PPVn}hBSjGK!PYTBO9 zJi^l{KkX)=FqGWHjqDtFo3PX<*E2vAAl|I?!qrLj-2sPv+7e#d4-19g2~}ged5J1b z&dATy&egSjzs(tV)E@ya#*W5FDUv!7u&sLehm^m9+13_A3nh+s+VJW>7PEzaZokz~ z6T_9wrOR~zFYR||q;2Xkud$dUA~M1ob?{jO`Gu3=hVdBG#kf!3Glz^ic>M?L;!EEJ z2X)vuOmDKU19+j?ExFR<{IK^lgfBQpvsUu+GA-?sI5!2jl8rNBzv$~wTc*0wVqcU> z`iVwU+r(?vHs6&%kPXHCP?^j9pqiMK5@Ih9>TzuQK~hwk8KzVB?M97Z@ZH1$qHy5} zkpFdwh14AjTJN^-9Ex+as)Gw;Q2J=OSF*jMwM|Ek>o9eGm}Ly7Uz&;h>!ftu%Kp?7 zg9`evEQ>jPPw9dZ93HC=YK`kHi`Bwg?O=>8R_2&{@R@2fNFUVLv{7ofI^*)BZp%M+ z#ePLRJ}O`kC>j2p(A4?ZxZ(NOja$)s!quH7w|tS^0hS-{J~TPnRV8|?R^?%58L#T# zh-dEIo}z>GeO;SSQ#ClC^|{uhKIrIJaRM}Hg(&>} z-o3@VAif>2w^$~wK#wo{^>^*upw>(2y{Fu8S;xIoU!U!y9u3(m@hc=l^iuv68^R-~O3olO2g2Y8c-PD@oPHzi;Os;(Bg(oV5K1 zTvk8gNcL?{jH1IA;ojnd8bslw^L)`K#*yHtc=3uzf#O=t(1`)0GXYZb$@tE7B8l5I zmTA>3X_lXt7sm{N+DnsHL9ar=hEo2#rmLX+bk8zX{9Oh$QG5QnR9L zaKTpEU_*w8G3Aevv)|lv?5bP-VKp4@cUv1W8>wjW&QFz9Ua~>jj>#Hk4ng;2Een6G zadAF3MC<9a2dvngo^AbE*HyFo%^!Yw&>j^6Q-2OiG9Pxdpa@4z@`)a+@>^&=2nm9* zOQL=bVU^>~-4sb8ja%zzrq3q!xjN9TSnCVm8rK0E?isItMgnz!X3PuiPu;&XsQtyn%rsTF)v?kqc_XVSsz z7^HWll+QfrkaVeKJ-q>ztGo(g9bm#u&J48}TMFE~4Pg3(K+fm_<$h7W@a^lRqoq2< z1`^Zjrspw#g-SC#yDfI_eBfunAl7?o=6^GkBcCCB14@JIy!U&ozZd&W7Jv$n2OsD+ zs7rXfOMj;mmIT0ABqk&+t>%*yP_6YkmsG7cyDX%EuxhCy! ztbZM?>Cel%w^X&pdW=ysTD|@0FFrkC9kuUnz@b;QEXHdJ*;VFo$ zugJQz!RE1Z#XywRw}i~lBH!v^;DKRZ&1O5sk6hV`Nbr}e#cKF;)9Aq}Co^%>->2v4 za&w5~7ri1L{soJTMIA9ouA7#nF~{}buLQ(TWE9aoh$Uai@C`}Xn(5MF(yf@teD61F z`zbe+upU9ic7VSc5#i@sY8BDx0p3cxGijc{^YGMq-;Cjj*mJJFF9wtu-_xW^5`A{Q z_ym^=T875$FPUcqCD%+(q{i471>%m}r^^cKlaiB|kLJf?fE1Ny$4?al)2r5Xh27)& zm{t>6eT@kIy|Bk)1G(Cc^&RW=Si03q94KW1cNE1vs9ss;f)8|B+SJ+a!OlZSW*L3)XT5R-v}1WxVUSKl3ZmR6`)1f8ecM*C=wEU&NIxE7uPh`4sonArkNL|armR|bU zE-bw*k`Yug3y7lA`l=c=A1!bnX_pSFqkD*zZppV`Ub>UYPlx-GNJ5Q2i+ecK&SMI8 zpIQFZM~H7~>B*^L7oQO;B)a8PU<7;aAj-SWzT*Tz z;<}a_iA8BuN5@rYF=Jv;?e$a1_d_=`-_0L9UYy?;k=ccwc*8yh%9G*}`i9hv^fdF^ zeCd^)>8kW*#gby8zqezZ@e`tp)m73xAo|utVU@-}Nw-emxmp&y{^Ik-R7>R6jrGIK zy(!0+GP_iLJJq31=514}-=@#4f95 z5%fE|rA?lFG{es}VUL8mh?20L&y)B(xHd3C*Q>b?0TIm=c>TSwDlubkqs)#|E0mvb zCKKy?w*pS%#e|t%@tKiCrnkzkHYTwuH7zq**U0`Gk-X=&*!3?Lod~*j9|32h8eV$0 z$mBc6d2h1j=fkoN$!Y|-1%G2lu0}ym6Bui$KrEjQ5=0a?pKP_Yp(qmvkfH;def~go zdt9YPdE=xy3VSvC_eh>Y&KD^e7GC+`H**TOU5OpLeWPE>T+ELN(u?Ap&>Xq>Z+Du# zHM}w=G78JCbdsOj{ancUz|WVTN5(#B4@%m|fmsa-h;Qp+rSB6(H98xEx}fAa^B>h4 zb6gdU^9}gh&vi)J@+^ZkBXlB?>;H6}YOH08=wea&a`?%%+O=fjehsL*Z^|}1crTbaf}fjlfP6oQlC3=NO7|<`S><_Vw4pZW5LEyCm{_eNO=_bwKfLme zMdCrJUagl`XZ7w~sm;|u;_H7iLJb^y(F@Yv=SG?-Qt!{rbU#-cu>9J;FnQJ2m_8}T zMaXM$>^R`tB`Ia>>Kog9;oxBwqa^Icuc+G0Fs9?)c%Qi*pf2VJWfSFEO^{0p85Ot4 z0|g)1TDqDiUmh=-O=Fevb>8Uc45U`|^5-nY4PJj>m*-gSGY!+7=94ngZkof6x&>~u zd_D5OQmgKKYfr<)Nc`uE+4M19Sv@Mz>WYb?DcpIa6A7L5h#PTjUa{Aw%L!_F*7ZGo zM|eucjLv~lRD|XX5GX@1DdG`fFKV^V@m;3*#qp7o&b0+j>@UezWgz9o#Ka#DBA3Ss zOCV6I%AI2-l0lJDS?x@Lq1WQyEe^H z0Tb@h1Fqhh?r2mfG&r23ccm!Erv{hgFcVT5;nclM@@W_p#7E9?imI{QYA0*!y3=~$ zixU@iuoqQ}c$oH3de*3i!&;mD^ff4D{5-v;m#nUPbnc|OSY}0KWbwbe4IAiTpVrfX z?x2gkk#oi|KH7JVF|u2~&oK14hOCVGR}4q3fqIxCjw|rG!?5y<2Q36{?}0#h)5HIf zn&udi9eR1O`XKo`-ER#{xzdCl-8=%4WNx+K^mD}hl(CzOZw$95?X}Y_2hAqV04-u-Rlx;n- zS7UJxjO%9s85lO$Chp9GQ})g<6SL_!^a$`(mK|)t5zan7RhLd!xqkKtDD%sl$G{T5 zFE7R(B%;BWhNkDWo~U$LOxRv5rmdiOoQ^2J@jeGu0=;UBf8ag6ZNp5F2Bza+Kc_L^ zP#+Ax#GJPf7;^>$9!+e=g^vK>oop3G%<_LD$`)gG%x)W;Zd-fahE9=0mYM`N5y0L( zU}P~yce0geO5*+9u&`|75%+f7sz(0vkq@(Ve%>}0pnw4X=(_jLzh$GuT)V#i?L!_(d^>-M8gF5H z%^|R;YkJtchq=1zD5)tVBg9v@0vykWQTt%SOM};1g!%$FntsQd9hgCS^{EHCV&mTj7o8DogWWz2m1gpKyrhHYCJX{%QsLjtz z(i;y}q!ORCx2wr_qpNwxXLf)A0K|94c!)8mOKe}E=^ z<^mBYaIx(7R0!AIg$A~<5Ntr>9%F&||9@yp64ChC0DjMxFl+vO!nD236M_j-Gv$I*pCg{58N7aDMva8CSI=*_;w-B zS~hR=8Ic~h1=vR}Ti2etIS!(`2$!|WkN9&SygQd=d!qOsulL3ZTWn}inUBx2q8Ivu zo$n4E0=6vz>nDeDs8e>D>Yh$>dz~k3bN}?0TD2>7`d(j9RN!pOR+=C={SKHb&ZG(6 zXieFZ9Di=h9FaakPDl(2LCz+A^B|I761HYc;_u_Pk^jYA0CA>UU;w9}C^uZr&Yj2d zO+2*5>?V4s;(S|<&PK~M<+=E#HY%sBR{D3Ih*P{IoQMjVSG-Q8d$~b+SH?*2V(R7L ztBHrDW^Znh<*)NrM2w+ki!%MIVe(Aps&vm{ZT1`-E%8<`LYbPK>Rhiv6n7%t${ zSElL^&fhkej_fBgayYJf??u)C4gE#bW+im$;*tE`mZ1u}EnZZ$Zp5;glC1w2e`o`V6HQFS`lWW^d+G;{Yo>ATlmA^0>D7 z6(gqk?4`?Mp)Ry)AaPN`mM$T6ei-IE*g9)~m+nAJcEVhGsGw9+Qi{ z`@C0Tr$p0OJ#3cy{j7;X)<;fsUd$EZzh?WNQN0Uj6T0|AD>-krnR`^;p$}0!a+&kI zRJ44u+}W?}Iad4wBPp@^=4IpA!BpDOCbQKiTy~Xuy7p29aKBu3xp?hwISc6B?~2$= zj3s1u8a!-TO0u*)V$|e6w)nD3&x=}ibFl`MzK1$jgT(3e#b@nOm)A%IUqGB({r8C! z1ijq*W!UjQdcUYsaUz0feq5tD(d!XEww181!WwnOHlo|Pxzwy$dQi%#tlN^3tblmLUdm4{=0{I>&s@s2MIVE89)VwIA73YA2}?CjBy_MN@nc&24ooG%fr@zjz)UT~5iLaC-4=1^~a8TFGS ziU=UHp{ND7cXmvXx{@`Ao_sM@$Jv&r&527w!4HLH^M21Y454cqqzD(=bqX3ExbW4Y z<@LwKM#Li^$9AKo(^5KbsAmOs<3z+T~zkn5ZOGfEFS5_PET>9v9)>RD$(KFyq3;0fT2vBzmQoQ z4uQzVoC=KHkl}`#oqcS#=uBhkk&6l#s$>7U8cLSi3j0r-Ly(YHGPdZh-0&v#eAm(jWJ&^6y}x<9=fU0SU5@K4z4ZIi|6CJ z-$I_v;qyIxdIYbtT9VFX)jGn~!V^oqe6Kq6FyK;8@4oBKihyu`*O~$|uIvRu`eJQu z2Xp&BW%_J%y3eOoLXXpO)$=v4o?b4YzytN(K|gZo;oBRO6dBUGBlA)Mw>h;fsYF|ZZ{b~{#bYRK z-&+HtasM1dNp+LN>pw?ur?r@o!!x}bXQO)-r{SHMgf8!isnow zdc%%Gesw44!vDw9TZc9E{{Q13sYnST4N8efNH?emBHcMq=^WiKLILR>-JOzSj1Vb_ zf#f7cH;nGs>wDgx>v#SB;JS8k?(N)ro_ps$&*vkakDZ5I<}ZtEN~CLv=9Y8WUZZXw zE$Z~}27}tT=C|%sT0VVa#;pkF^)TpFr>k9Gd&p>-`#U6fV|>nYyLD2kNu{f>{forO zCXBuC!3=s(w|CZ_vb9vD%U z_P@X0Sx=m1J0{!zdLclm5ZBuU5tYs5UB4oWw^;DB*GiGD3UZAu++;p;4Ig4fNVkc> zc-2DPDV%E*zUi;rzi$0SPSeC{E9OqOoc#qnYcTQ{)MmRJod4YJZ?j0s@(YuE{{cVD zxZQN;837YI=^)O;YPr@~>0moWfuR5#^&l^cB?>c0+GTTMaI#m&F{{zd@JK3e(e$&e zLp;))7e?4D#BbAwYdT5Nc3{eCs}D)rtCdnXk=I|yMXf@;B&sBV#tVs+>)=^+%Adz0 z(oYi>Yt>2dFswY0!OlN^vpEUt5Qi+M^a5hJ9adH}HKK060%mCoB}U=vg=hBA&m zGHpQyF-}G{CoxkbtYE}ThPM2H6(pFLq1<9!K}&Z5*?pUjPONa-uN$s4KMl~`s2Tn; ze3?X;SaF@tHatE9Lb!mN2QrgqRr1{)NJ-^tQo$^;l6#!0bQ(5g8y-+BMXq`5A%fkK z`D-BCh?grp9k?tGKit;91pK7hSNYFT`~d8wt&QVs#nCa?7Jk!C@p$--TRpaQxtI^N zi4YT!B0f#C&&j;5h0m;Ii0_oUiIU!evTEV${kIeU{AQD$2(|(>Qc%#a_EO_+Qz@F~ zlLB{P3AO^7C z!HBMx%J7I}I;>{NWHOX$OboECm$iGw)T`82;GOvkvI5}MFSQq#w4p{FfBqSqzIt8D znfClH#5)6E^4$TmofIa z$7rAx#XqoIzq8sP+?Y|RKzhHJl=E5~9~xiINx9;D$izbS)-_{cE;j5Wm*C)78R2y9 zO+CqmMb`9rIU|P?e}ZIE5CzLw9a~un@WG3w?F83|OttCOn~LjZSclgMvJ1dj_UbO4 zY%t48C;g~JGSvBL9@yMJcsLtGAlwwQSaWlxF|uf?jc#8E6MG4QUg;c+WBACNbBZq% z{}C3G;>xa~Mp7uDO&G18&if|n%7Qn8mmq)tkN<>TO5SNV1rBZ?d8g;tz0Ht`Kb>-* zdUJ6yR6QMo%W<~<-nHI>>YhHwKK&)UDfdtDw~(77LZ^Jaff=y!PzI9dRP*n`H9jMFo413*!b29GM1PmfezM_g^%jS~yU~+3 z3#ty%UI;qu`1m1paMr2NCnm7C@H)^EkGCeCea~c0Wf!K<7VDSKkUS#|wcN_!aXL|P zMdBcr4uzK%5d8X=WoCmHd&lxh&`OsWnsbe2sQWaMW~&?LFOK?8X@8X_4BwGAJ`s~~ zA}`#!!S$Mzp=S={;E>h1Gv~r0Tu!*xTYRX^*MOTLC0W7-G!`k~NFZIw5L_5ai8tct z^2B9|Urj@cyK0jF_i+fc1D6S2i|SKeFoxq>SJljRsdLXX>U2@#`+nNv4$!tsr57Tm zb582XW5?2$>>nwHw5$t%G|pAB8sv9GePrX^E8K4nP5!Vr+@T$8ZQug3A$xeq7N-mE z^2HgWPJ1|aiabkQuIqFqF}v2cj_UtaKJg-XC|99Vz*q%fT_x_K47=p5&zMU>nGX z{vr8E=w?DwKHXA=SGKy<^XRH-1V=|zK3)E&>`c(zOEUHiWlt0?Y$Vx-sA-DGT3Xv$ zwBFv|bbd+50Bo^-ar^gib6gzAVHYYTWGv&dG}2qK)-e-hd@1 z%y5~Sc!1vh9(Jrx7|CZMQa^u{fHUlRb@sR@>w4%*#X$ayD!l~Jfi6DS@3^~KD``i_ z2-$V~3TJYy;rCzJZ@stsXrc~__KGz&ihmDZcs>R37vpE7D|OzX3exY3_{oeq?OV7a z#x2CZ0kK4O1gP$#gM!`BfP4ys<;7ylw#heO6^~(Yon<_2}1zXH@umjCGDHxIC0j_b> zQ%&02yPOQRQlc==6tdEArsqYG-qx@_R<0&Ki=W; zJ-m2EWM$$hOhm#QtrwCr*F{G*&g2$>nKz#DPrk+H2hdhuOL`eqok|ogyB@vRB_6n? zTXw0x`_!}MuN1jIP3`{Wz}h!9?o>Zy`P)FrfRxMOOP`p!o3=_^p6le4`L|;VH)?>( zR$P*S*rRXl4KJ?!-A%HTRO*QHh6w-a>0hrm$52IHTCmCFT9`z?x{4EulxHjVRNIS# zpY8j&J>0%HXR7Fb$t`+GS{2oxH0_LGP2P`363^WU4>mRbi(}p#Bh@w9eLRXABP}aR zGQ8*dXzr%Rz+9>{J6Py+hH^Lxx!bLGK34P#W^@8p`#W6KSPzY<<6*C6RnQ zLN$dIEE9tS606BpoW<^*deMD$Ktm%}weq`!J#Fc)HAeuA=>3KOa1&x{S#vrDs<+M0%&Wx1y#}O)kdnol( z;{YL*MDiZVulRD<(|@|hf!yj_Lov?0R9l&s0*@EZqMy=8wFhz{F8NH&v3=F9- zRAr&61oX+0X-abvEMKL96{Ao^ntsx+a@h*vSciSMYsO+zI8zi&$4d*>;j&T#R3XEz zf!aDbR4Rc(Y;+w{i1|I}hfyM_1PUuSDs(HDGqz)W7x1)j_l)gHQiv*~WLGE3!4f|& zJvI16#H56%oS+;e=?#8*R)k5S5>B4*?Zf{Y>mAd2`BD^g-1lApIz@x;`Jtkr$y(Cw z{Y!ykW+5E~(DoA3faf2rydtRbMJByn!1TD_-$AOp(oDRs4OA=pVRRN20Ws{`7m~x{ zUf9q)lHQ|TV<*}nu02$f2oHf&qbipKm`W@U+Q%I(>MQ&EMQy{w>=$*}G%QV8(mJ-s zj(o2r{_5FjksV*pk-_TUyLx4sej+?cg{m~6#GR?J?FyOU+?SgjcT9OLgD zc~3{uzR1lPP$sqXOGw3T&A+JLiEZ(n=juq&_iMlS0NRbLOzs;GSGRfRy~2~^jF7S4rnuWj#n2%UVS!Gi6;BCT z{yl;p--HE6og!DuDyBPXiJ%-1pe9T6A5LHVHJ#XW7Kq@fs_yAu-5(s*M@GozPHwq= zA288dZF0EP@k93HC;6W5>ykv{-JH1?KGy{{KWjCD6x^9lbp08uWB`3f2)xma4qAP2 zGpD~lFnO3*M84R68^`xJjx2Oa=W7Ir zg{${fcWKuRA5v%hHCXI;Gfj%-+BfZ#TMWcKF|THGE&v0YH%3d#^>+*D8C>#{2xwPsiFJFP3-O|)A@(4MRt~vOq+5f_M8=K z2`PZw4`5C2WrX|PZfdpC5c_c7pEb1`CUV!wci4`02LSvKG~Wgoy%zuB@CD_DS|l(r zc!Www88~%rgx-8=hYYA-EhA`pRs2O7itefS0bqeIC<{d%?-x(JC}y__=H@=EbL$Cw z9tBxjzvh{LV+x>!=|EE=A@ahwoUwotVG|X`7Iu5zz@f6EYm3;E>`q0I?F@Md^nR?= zA1#_cTW#-q@6z~b=2hQQ_nGUdE(sRmMEQ_>?~w(xus+Aq5l9_|_ff7Q|KYfpwgRl! z!8(zgt=QYIfz>93DFYdCjxnR;FQ&KR23)O=s}sDV*=e!dW0cVK=AJ8ORq2uFy{}Vx z`_7blnmgV)zag$O;Kk}MCL-UK4?U*NY6V%G)dFv-BPRa=Xo{-kWh=)GgnAfzcgWc7 zX&!b`y|?r`sFd_Ji#`0nUW??q*>`8)jk+EHg`{(4y929yC#Gn*74rA=ZoR9HIT{X` zy{bh^`#&>tJ=^5{-y{$_3pxPmBIv(BiH*qHha@s5!d;vuXqPSwvIE7UPx?4m@Rv$m zEe5Fa*5l7!cUjy;o+VOs4uNJjr#JIdzqSV@LGQYs_q)b)U1oQ&Lkg^JSafJ&;ze>j^Yar{yL;jAqx!R5{X@alqPU8&&T$*^TsL(tIaWb|t1 zv;+2&TP+bBvr|D^LCFS{&PRtkuYXtFvKDrUwiNl_fXs#FovCa5Uo`MM6f+>>oS0#vvrQggBmg|6a|KF7xtw0hnkVI*nVHZ2hm#!b zjqu(?@McX6jw@Asua{{^Qsm!@wG_us2q(Y6v>%gZyw+*Lw^+ADbV`@_=ii?B9ND+wRhY?zE!3I;0^RYCvzluNL2`HSQU*F6937wG0Ifdw>?}-`m&A z(#`(9RF~3=BA*#3%sUGL0})}PLC&b{pgm(5^rFmBHV~_iqD5500rhzsN;h(1z-o>* zX+wY~KlDraypF#rqP(R9XgkzjUGuaBo&c=zE&h`?4o(NAZ<%2P$-t&ykjonh;XgMO zZKN1>``0ymuZ2w<1!hq-^u**!-{elu{DKvBR13_}z&(_`Yr=Qnnzq^Kk!kI46=c^) zW?yv;qYj_idZWDKR1HZ(shg7jaA@_c{=@P7 ze58X-9hGh26*9R+HYAYvtGx6YDt0XccML-MJz1{A_=zR>THNjxFv2j&BE= zLYz42j<|b3M9k+I|KZTX_;2g(l^I%)az{=u_i=3MiQIdjua4b5q7T`Cgv1sCRCuYo z9moI$Ad5gBx+vWk{JAHuipLa+-tx5Td*3+$2g1CsCrFzkkBYpntMmT<0mshYt&Z=b ztQ_Mi3ed^Dz%%HtimrYq$xQy6$&8l2@n*5ZjjMMM=<&gE%*imxLBp|QEf@8#hLB~d zs>dBk5}|w^CXd;0)9CYLdcCb}e^LG#)26v3!&MMn1?aE9UXae2)Aa2>oZoP7_pOs_ z*S+Gki6CP!lgOb~sY+yQV;Q6EVy@^+io>RM9ToqY?1$6RB_KR1sW;3@=59q%F^wYV zN7MoN6GHEmUep=2G&Ng&Z#ty&M0Lx`tx0Swrb^W3C03dG9GhBf21B9;_8G92MGlM* zplG&hfXx`YF~1fUmhhj-{0^vLXj;W~<#v^^g2@q?x4@l?C%tR1yArn0w)X}rkd-PG zc%Y1ZQw~hF@eWuHN}DX}%ag~;(*x?yfd$Za&bSP|PWlfg<`oe!L!sP+MD$&@u|HzJ zb|iqt6cea?L7(Z>Qa2kV3@LVtKXJ8hmVPojaBM__(F5-n=?K}|A6BbgzRK%44N|%m zZ>Bj9^}?WNmcx{yrl%BEQO!9N*&0m!<^Q(cZ7(Y6Rb#2ru%805jTg$IK$D$Azl5A! zeP56{6h2#Yv{>$^@d)lZDEWpa8~MrOS_ z<~Zg)A7nSSymi;`Y+dH@s_q*xm>%u1_qpDlX#At%(tvRP`2;iXD1~w369#Zkw}41E zlc%)Yv>&7SZr8M=T>nP`mTRV0N@eSQ7HFq|ccdgv7fT~wC1eEeG10%4cIx-ro0 zuRqe<8aFhdlBF*oaCK^S_>4wc{Jd|>4UpcZe=$tSJGz!yx~DFBQ0MNi6(Amfs=sF( zbyPmH?V9$V>4?@^TeGQ>v&#=fuf%4-a zyChgz9{I2!c)Q;bJ(4LqWG-ZFa-sFlUOL#(jGd^udr<0*Ard>o+7U3`E3%!nnHZQO zN9|RlwSo6#ul3Lf`}qkZw6eccA9fvj-X$2e4;R-~6lZIukLPgi(S@u&gM`?FvBxae z2G!TaO0z1Pt{dlFJ4#>5Pt1=VFHT`#dTgQ;&0S`PCv{r6VwMb@X6rY$j92Mq`;q&8 z@qGW`JcyGhmZf<}*dr9~8+c(>ZAa9MN_zWg)X`0fR0;YYPRQ3==c93{J5oY(Ex*X3 zZz6C0DqXymEc!X+oBl8J%guKlQBlTPhVYHm4i-;!;Xeq^XS2ZRPYddgfa2y{wy65c za|)Bq4&vY4-8CSD4P*Jf2rX_S=`AVjs05FOWgRShVEaRRyCl&~4EH|*Yo@x&B{%2@`RoT$1v+_mjOCbk8T~_( zL&e|80*9*)my{B_M-2ilvh6zTE$UwqH37m0Kl_ovfU!#-PdDg}c;|GxPEc~$Mef*> z;1vak@P9bMtP6J&jK--oL{c7_2<8%cuLK$x9`C6*=YizT{iz-{yL5f_8KW25{+((0 z%s0N_Am&Gk3j2Ua$V-EiLd2a47`g~?nsmLbJQ@&f1FBCFJed=488)~S56hwZ04lq-zEXn(m%wJVD|kGDb`g`ANM%ULf4Yp9(lt& z#}No($jXpnbzO{hAIT=22>TrDtd4(Gg8o)~D#_Q;n$LhB3bhNL`_6k)+htl#?2WVe z&>Jt!;%<%`Y(4AcunTgwC5GYgwZkL$&>O-4=k8M?#8{Q7NxBe^kNEk_x^3^aN#1KGdoJ0Xf_I-riUcGU`a|lMBU&vobgwuP1wq@~vin6-D^+)nBqd!WsTNmEqJ^ z;lz6J#BBD5JfC_6@h+OM;w>FGL)l_1o*Li35aHW)-9~s@V`csj*Psg5@^_GiXc8mNeg6asQ@54HwiQFP5p2H} z9Ru48uJOnx<1ixa^7ixmezxYM`P9FS-D$e%f1-rDCl0@OOg*HrDw#x2f-AwlTDo64 zja^nYY3R+ckl8-E&28@(^v2b&KE1-)If}Q{k<)%3$HF zOv-OHYhLDuTQabaECe)6<&xwUzvOsBf%N4jZlvt`t3=37h8C8?QKHzq6@uCa9F*>G{F>#ar2tXC(_Utz&;Furu%09`D86k4pOD=Vys+NAjz$&>FW%3OG zg;=fHaQUc0T0SR)(zzvU2YdT!&f)K%^$#@+xz*sTnYdV7IU$sch!*%ws^>T7K-CtRB0;5#o--Ym-1`<+^( zk@-Mo`6z8~ez&^uZ%{zhH^d4tLW+|?OGXq z*UdF4?reTp-Zet;WZ{_G4Y6NNCKXP8wcRz6?iK%txjBGkQ{JfYYQs%K<(3PQp$o8o zSMad116KF634mDI=BTs@7d;lS-p>9`SD+^FiS_Wz;;h?5pK(4nP zqtuO~^Loj8X(R)YmH9Xz-|=Y8cxrOvnN1jEi3zKVyTX{^X^)x8PIJO)U$}N1CqWVo zyi=XB!4Eg&{sf~Aa(ZjgxlYUV>L>LfCzc0Ty@x08u#+-?o%;&UAKqD}5c(pp^gEEY zH80S*mgI}n@}(nFvT-#x zEU-1P%X-j>^}JI8nkzNTL~(9gc3H~8bL{qe5ukCClYe;ZEqqMXId{tCYt}Wr!h6{Y z92JR}>S1FUi6tl3LQ`Ql&?eDPKyWg*2*hS$=0BWlc3?7&CaL)EuM-Pac4vJf*wNUN z6Y#BGU)Rwa2r$K|`Y^!9_SyA#!OEUVgC~E34ugc`@Sm}i1@Bbp$5@AQjg)psiYC6T zk3Y@fB^01Z_zm}Kq|_8+0yVL^JsT``K~omp^vukEEj~L9sdrEN!0z)gZ&0II;1xA5 zG)6j&**C>onC&g*d(5qx8Xayc(rOj5CR3VVGPYkNW!_W*6VLwP$q?_wYmw!K@MH-+ zioEEu%PH^8N#tpP*{VPepLx%g?}}bBD9Q}OG!dpXo9zUFJI_?f&894mEnaTMtx3*rpI-91+a0VCq*rd-DQXI zNP$&d)7=*=qjDmrec9rhkSJHO*PVdM-AIPCGsKHGoM?9XY-y9|SQU6p_Vh0#9r&~r z1{G(fD|QD@n9Ut9uO)19fkfA*FyNe@T&3lB;&a}9x!v13rIYCTS>(aqdEjNS7)!Hw zdp1fVx3&uKmG35)3V#zitO_q}nc>3k4@13n%I4jKMK9})`5p<0ucj0Mm28WaGW?;n zvy$gW-sfiIaM-!JfKYUHENMsgyk6+B7aI{$(F=j|KVCZXB|jNjq;t3fkj^#cngdM) zz+fqZ5JWgPE(}DiG1pFWDUtxm@F@t1n6=0BdY?O8mKDH&$i*BvwmhvTkBY&h5i`_S znv1Mw6$HSIp>F)Uu&#z!qDm)y-h05|nyPY)=XYr73!%gtu_m?=-) z`P@UdPhBbk(H5aH7Be+QIE-dZH{}DvP%F@^h8h%hD*orP>{CuLdG^4^3UQ zrdFRQ%gSF!zscNs>$JAYtsb{ec`ck_jIC1v@km^A+z`c$=u(yD6p#Xe*x@{RGUGsV7xvd<^+cSsWA?CR@Ht z(-L+Ic`Zq1YIW>;SKpQT4PG`LvL{~Z>|@`Es3W!SS+*~=4%Ufs;DsJSf)&YhS({@& zGKR0YwsG{uyWxv{0l~)yiUQJ-&rP;m1KlkeCA^}_?JC~9>{%=Kh-Z}7ZhMvPxP40K z+C}zoUs!#hYKH_i;&5W?FZa|h-fsKV+zQ(z`IOfgi4dXWdpEs{*{_wOw(CB&I~IYj z%ie?EKA9XEPb&CkqW*V1bsSzZT{U|5kB*jm!)0e~J8A{-UPt~y$@Eg0< z1n$k9Z!=^{ml1&?lVFdzVxYX_7cQqMOYn@_@T;BwIF}PsQqJNOfBkgBlfJnp?Oo8L zY^oTy1Ch9-YUGgF}Q!Q3d#u8AClRbcvO;( zu&FE`Bly1Oqm7r3y-D1z0h4f-dA6Bw}yOzI??jtW}DXMx&o#~i_V{Oqg{cAbrm#-c-s<8h- zIWGldR0|t~uTQJ%gI)b;fnuetEGx$DE4Ux^YKC(qEf+G^C`rBBy5Z!SmUgbwp1zJO zVknJ5TGl0H=EUFYLU3}vH^~#;j9wLrH+==fT{g9rWXWdlmdQIbV?!1F7CiNjx9Gm~ zSSH39&hzAi1UQ5pT<&G7TehcEEWyIT;B&aQPjUVI`9Pc-tFP(d^@4l%Y=ILsG%R2x3bQ#6Ie$#rK%+xhZdWr9~y8b~~k+B%b+uwJ1|XWaP5S zT_T|`y?{R@X;s%aOO4&D(~c}>aIkbOE^S(IA|^`|d(IHgzUqjQYOD;-wZf@o#d7Dq zQhYp60%ag>npt8GAqm%VR`!mFbhBGM&uvf#ISIyMaLyTMk1KD zi5>E`!LYKPf?Yn^Db2zBGJ7tygZazw@y)w z4OYmaE|TUiTUpttW5ytvm|hE!sm!IBPk8an55w@a2yZG>HEC{s%#c(E+Z6`Glq3{v z=?0`ygEzDL_$t0zDA9^ZB&+dW1uWDs)WU3TmxHUH-=jDdk}Gr3SrMF21~_Xxka=mGtUvUHetJefSj+IL&N!wPn$vN=nAul=+*wmSvJULKxpp_B=x5Ris{el3@ zOyRb+(~M;tXK6xqX|?rGu=TjXSF9dc>7K38Y>7wsrQB_GD;%(dY=3lM?48e0)e%qu z|A@3=t+(HM0-i&GG$|b*)Nrf8g<`w?GE*zp4NH7W6>L>Qa;59JV=Ixl0-mZm>8LpM zo>Uyz4t5u3nFjhS*GbaqI_~YK%>Q_}&U3-A^^zlBrFLx~{iA`)?IZ#C z1Bw|Kpj<|^nwH{;aLaZw{0jF=;*eG)W25 zSTu+#A?tG)Sea}WfyGB2XntU~(fMT_HK+HUhD|wj)XrzxqMlLo6J6e{vwGmL;wi_Y zKeLRpv-xY|A9P6UZPB|+m2iPLdxuTW*@13@Z`hLA!0qV#r@U;}RCZ&9Uy#2FX}@ta zb|w6LzuJu6je`(0o%GfA*tf3{{lHA0HP~Fb>pK)bs85dhC5^_N-R+pROq6>`r8HbA zc}aIvU51J-jHXewn9un$z1QIE~QeQd{6D`{Vu;#YfwbFi3p zt4w5S&OZ-&&lZ)wv>%N|?POHphwTz`rBdQab1}VELqi(6O;P_hb-=syX1| z*ek@hnQvUL1%})zv9s<>j9Xca9up?}u_jcj$-rg;5W9ZFTyZjfO0c!D?;a2;96uQ4 zMGhuSHwd|o9Hlx9u_N!lDy2JZ#r9H3GatNkiIi2oTdZWGZ)&p9YX)$xh;lv{^o_72BJh@wjj zzm7__8TdRi!tD@0eWy`2CwI>gEs)wVU8{DC*E^)u zG3NEdewG12n~Bj|*}Fe~!RWY;Gl-UH&_B5Mv+a5dnm6}(r<@1|i9j#>9=o&h;W>W* zdbFl0J}@FLL+DeXh1cjhhwwhX`N}Yxvv@WcEp5L8*)<&adT-SXr|yYqOwQ^tVSC#s z4&?MoFGsnAnwOJzJEqVb0X_M%P7$R;$rG*k*rQ2 zLE0*wfMF2_i!juu_lL|j87BYOJy_ycQWnDq`{Xx=|YZ%aUzzqU9vA8$h)!;lbltYJWug3TPaPUc6AgTu#Z(BKEQB(JsvuGOE zC!2nwmzOWw_md8WNWfmL(o_hpxS~wo*s}2G7;mxVbfp9GIkjnSmPTc^QRZo z4rjM>Acow(&U22};XNVr`K%c7Q2C`MG-0J_%hZXA#dSVi(qJ*eO*?gW2P48OfOncT zjIDD>wN~~K`o~)Tpj)opcPYvRXi{_9;ut>i?{JZ0aPVHwcc{?6M}$Qj*ct9f8t@4Bqs23kz?c6z~W$YSYj@p6bIR+qpzFkWlMr z55d-}(t}$+h#!x{Gebob0&(;)*Q(_z=k1(n%EY=QYkX|f2!gh6&S|TTg}|RW+;&KW(C%+2CxA8gwg&v>CH^7kjP?HE88#H2*$p3QSq4na5%&!3}Z?MDD##q>A5pe zw_F{RCH(%NR4D9&h}P#r_Q1tUnf02PU%y{;@4cSK6U|+&cj-3afCHg-0Xnhr9g3Tg*j^hIB)g99$0U`MV=^ut?W$a% z`of)@aZvp`I_F)&o1K-22nB*bMTchY=INNOwiLz5TCdg+ zxu}I?Pm3ZCMhy=8o+iSu4w+0lB(8=VQT3>)cBJxO5B+M1THcMntgH)eyvp$AIEPam zGD)r-jElUUyKi=p0^C_f&*p8xknG0dSm;|5Z-|>q?2^r5jlbwst=LAHE`jSa8#9t` ziU%0(nn8{l;Q51ib+h;l0PGefEkqrV)_b0Bh6&W7Z`;athQC8uX}>rdaJ=yw5WC?5 zN#GJ&AoM*ks3eobK9y3v8L%)OuG6iu$=AhE-Tj)CQ?)l?wGN!>UBa1H9O(JzR)DO| zyP8E9+27WRi)JuDKN z1$p4r%r=;?!$JPX@{-+N*-!Z7J;Q&@;F}9-5FkHF&Y&8g*MV4)YLCtzvJ<#-uFDD0 zn_V1pwTH{;UK##SA3mNs8`}il{V8~;N_H)V5A_OHc^~BU124K03AGQ#h^Mrjf&!i4 zILEttsorykYWN&n4SOf@uT>yr(95^PSIBG8WK7dp~xARa=~Ek3kl_Tu;VpE$43r zADE;MJ)^xYvu-p1;h^U|IK1`=_v)g&LOP!L6q61uN>hDAbPSm{J;Sv|#?L6v-BmCnVtyQI_kLC;@z|m-q}w$n;UZ*uuIFXv;4tsHw_y&Z#;WBM}%~R zTMM=U^R^ZH1IA`rbNG=FXJv}x=Sr43cYf&f;!FJIOgIeWz&GOSwi>ME(H>Ylv&llT zyI#{}hjZ#S&q+DWds8A?RlUbbb+n5J&w#p2^CD!2fYymERw$C}2c8JYy=zu_gbJMB zPyHnLfSIMY?G8v1-_s5yyW#l3QbUM&UQRJF7O)$xM-2AI?)Xaqr&J6HEVoi|MDj8=npI>4TRC z<^FyMn-CydJ-#lLvvsj;4q_vMqcjv6H@(;R@3|MPai5D*P!{0!v&24zi_u50%#vf8B z%-m``xqqTg8Q(Cy=6n*?q>l3IhX{VZb#2my3>*Obi>@d?uI6>@Q>r4wed?<7Tunh@ z+*tIdd#TXk`-1)rK4j#WGdwZ>GL#KWXDFA!d6Uy_6MeUKYDVa4s(JG-27CDuY31HJ z^XYI?F>DDGsWq^trvzSAKC2-#zYMQ?AgITr0Gvm(>nUYqYb$(|tK7|xJRnFW{KKB! zo0c{2m!M{G+P|pYXWt^@OrZWKXI%P?L&dNKQ1d@(Q&-xqk^G=V$2-4A{i&;kak$;F z%TPCf>2dV(uOHypQM?bZrA9B~HUXmJJK&37u?6bu-p;){Nv5`#cGkd$<2tl?7rosX z7|LaoF*cIf71}TkcGzryWcapV;2o)Kc>Mdb^yKp1sgTVMAXNNbOtG7pZi~4rE?kiUpk@$Fh!(4Dipf4aF8rCfUl>X<^#Co+S zjg+`jUwbX-;nA4XdxO}5F*XjGqT^jdvg3n2E)okO?=YQn@Aq^Agyr|~4otpWaS7mr z)a$g&E4bqs9wtR%g8oX0>@DDIQcMsvw2~NaGnji#S&RZ;O7i*r-pe?tSfCzW2;_N! z72uU|9wqDR1kw7lPQfjcv2`YOE5`IVPCDXHtP0&7T(&1&Wrlgo-C z+sEpEkFWDtEuYs+qg2_1oW;p1ZKN){#uZFS4m>9Qu=^JPaF9c-9xLhtn;;t3u>Y6m z_{(n($gJ2`5ZH+Xk($82#B6xl*%mDpvl{yw+pY6#oo9HoGwUdYdEgGWJtw$V=I7K5 z!+%iXa%Nmcyg#3-l2a6zg0Dc*8XsjF!)*a3Lq+))G5V5mhrRxbcuDW3F(kME=a;Q` zKyI5G5TLWq_EYQPt*dlYlDr4;L%|kol@H&~u14$+=(F?I60QmJ(9gHHtVhZS+Y!NI zl|WNJcJ{>;oNbHG;ntU~T9&xM-dqB~gA5tM=DdyUq^~WnW(s>)(0iM}Xkxia_BIHrQqoNZ{-G{Pq)Sf(YuWNN?OzhJlQxt= zuXyM?$owI6hO@&gO;jrQ$12qaTP*P<$>hQKqYN1%dNH^ZyDu>EubC3A^zOK zoffmpMJvG50-;$pN+LfmQ>V!DBNnxUEhhw+T84N!V^x+5=p2g2p7Dcxxr~#<-m)N_ zbfl6SE~6vrDRV)N)Kp&`J?UcU?>m|MVFhGFWPKczAsC7s<++n;ri$9wv zEHC8qCU}s>6C_u`AeLm@+hMENHx7-&X4S*QU(251*rG zC>!uDiQZcbX*(!a|M_}eA>Hhyofx#xySRD8kAc)_+>fkhWl^>K;wxU$PZe2i$B9L5 z(s(t3#JjhPYRmZ^>H0)^>=$R2zb;zt{q^+<_kT@baztKhgnyEFPLvHDC!c$jzSUzl z!tZd-e-3{N7w6>-qD(4Dl#}9jK`Vau9hv9S{F?d6VDITIog--yu}jEo+q90bC45u% zt))Ol(HKJZ`|_58CSYja_9%>Xps-6ruI0(E$M_S>efufYTn6 zygSixQ!4_M4tsC&j_!w=9-m2=AL)x82j~sDRF+|ju*FwLstT}1l@tiA{38!bpa<3d zEkQhzDvO#@Dacy0`u$JZO_h&xW+$e>V-L;fmq9(3DNd=IPGk0JTVH3J>Ww#jrTQes z6mgCX1iH9RwP(N%Jgh!A^K8EP7bls#-{&4vvE)ph!3r|hz2?i{=H(^56)Q>H6_!nH zR4GSh$+3<>9GzBXRFUxHesN}eZ!}S~?e6yGX+Ti4`+qpHvXe6R6edJH`BC9TGEB@L z$LezE;%XCwgr_iHuuQL`B4?$g<_tavu}l_LUVXHRF?Qe2ccgE`DJ@5``#J^<5adF(moMw;q*jrPd zw937A*|TjCrxCZ$d|nQ5o};eDGrU*4{d_6W{2kM3_%M@koXfgj$g`vGGm(`;DY)U+ zp8pJBP^_tVu&#moFUI@Vj>)8UlUDdwpVuyf$goukRe7rK(QeImdhN1-Xm-b)@((0Z zOzPXBX_fI8O-ZJ?MBmfEv=X)z1HN664YQgb8KMSEo-vbSsRq{T=M{L_N93wfI-~=m z-VzjkrgM~kMMdFgAWbmD#!_tgY_ktHURcs$zWzu*6)f_mhcQgk?}cIeJ1A*Ptoci6 zUv2>)td<5~N9kDq6rTaRf(Xst&|3YL@JP314R4Wx|Hsi;1~m2lZJbg>N(7|C9}P03 zHaY}B7@Z;|(%s#lOi3lBk?w}UXeo)&-8m2#&1ihi|9Q6;hjV~)c5nCfy{^x78uiV0 zT8d7Y%czUqa2Pe?Ln8x+zFNA@q~Nu804Axr-i%oe^6RL)>OQ&VM;RU{Jp=Pgm894Y z$=q*HZ?_g~+T7VZJLxYTzA7+;Pbsnce)`ji-=8*Sm7MT2|FdvjfJOZJ^3y_Bf|3;m zo=SzH?$VMs7lv?(F!sh?Ik{)N?$;y)JcZ`5$1RGL0@P+i^y-vCJhSgqZgy$9bbWSC z5dOCchn^E3t}BlsNAhPqZ?6sHKoyu)ib@ua(rLmtKI>DhL^ZHw=B&=5=gA?#W?rBP zH1gx(JmjIQ=z&4o$J;d94Hx!|^wQ!pC3~vpR$_AW03N7AQaX3tt4(x4!mm*|M9azH z*Uy-(z+Pn?ft!OvPC|=@-rfo~+ezW6k@3?19Ix`#9*;~*FO178f{RR6W+G*;Kd4T5 z(N9Kywvw2Hz&AUY8E3)|ibP00*!&ch+B#y8(51;S?DcG}?9iR1ACupBWi-`#C}mr4 zc`HfYX1bS8byy3nToHk&r}UpXw%|LWq@#obP{o z5gf|}BOTD<@K}?{dgIjm{p2nJ3B+~$kvLe>h{-;5bAXEz|G5a>Z8V~o;NW($YWQyK zsfSmphbrxl=sDIkq7HiQk(m1%I*L9q40UK-4r9*zHl_F24S)CqmN}9k0p2vu|0F#IS zDl$jG0IesT2ZcZ8$3+$%==I40@!POESCCgAxV2g&l>S??s0M=v!g8A9(qsQe|LL2U ziDfDVPo4<#pU1U&ci-cUwq|9L*BSt~mwvFB=eKvyLSD($qrRsf?`Et!Ni-PwyuZqM z7OQlR9-9|hR6Dd?qI2zGCuY&f5GhJ08favS8Dl`RNh&MAO|}}_OK^TTF+sR+V-1|f(e#M!rUqa_S2&=dbPt4cAPC!2k*P5oFyZcay@pw2uVC<^~*fZ2| zzDq#j6~EJp8+jV3S1hQGrDs16F}2!ULfq3gF{Q~R|ApD6qY#^2?65;ruRG+7n+}exg+AHY@IT2Q(R#;bWjJk8(8EAD z_ZyAR)N3^07Ct==g-vaFMemj1u%y2ps#V=JIp z8Rt*pbwZmXa3c!x#WWnD>K$n2P*&UKM>6{?%pFq6;1A}?naZ2$Is*!!t z?p|y(GkPp(&qVX4+>T!FZeupUTw`qS-2Ut$?!LD;*>5p0Dl-RCtgp{BO>rkJr**EQ z!*oCCT4mJN%xrkbH~y#nVoGi1IG*M7&EF?~4vo(By!;fk(UcMyf>vh7IuQ|$zdUr~ z6;SXuKH~8uVDP2nsA$`a3?|+T8m%&(+_z0Y>97{G`%ck$MTIP zwa~vszZ{m8HEv$6-X{6;bJk)yu>H$(F!&bQwdAQTGW0kv`{>oj9@(jmu%mo>!^=w+ z*$2B@S_+4DFL&O6e4J=;t zxBs}6IKOB~U;xNsJKR+5bsi_+U6De`oDSc8vH7Zmlt)yVTQ3XHOv5EhE4>TuN>-TKV;K|5%3ICV+r5@iMghOJ zy`Q+@O(#Zc0*kd9B8iVWB&CLotBzQOVcEJmk0US{i!Rfg3@KQsSh$SASu^1)H^kD! z(<0Hz@4^ThC2vCRPSXgDhqhI>AJN2K=D%ckia^fR8+7)!Qz{9eeC-`>#^d&<*^yzr zKu#Ikb{hYzrTv1sv>|VB(erNFNwRY0mxS;y#NIRV$lCG336YT6*T@1X53W@9IJW{eZoSD?Q=RMd> zoG)qsT)^-Ly4AEd??ju8rQh%^pDNSMssmfZPVy@6E-u`LKL)Ngj#Xm?%)+Bm1GJaS zEH2jeKaPx%J-3sinklQ7g;ekVrpV*|oPjOvTMRckp1E+#S*5srk}=E%8z!>1!%_P#e4)`(+l_^7q|S+1}g{bbz*;;=;I6dWz8J3mLYM z%~akrAcQL)A)neDu^ZwU!bNksvtZoHGOx6-VR#}V5`GAHvohKT4z=(lS`-Q~SD$g5 zmLwfYFb*l{~VMk_Igni zsp%V~-k7l4m%Jn?sM;3VJ`q-H6UC5_dz4EPXz6B}`)SB=|GUZ=D_y_vaOCoVhN|kD zv!wH9hF3U~fw*rus?wLXChL4mff?TQkNOJ>61vZDpyFqY=|v&6i;bs<1Jl+x;Pm}H zr#P2#x2NYY@^sc-ZO5mLPO4n@IEc5qME2p47x|mHx5Xu}(?{jhBt(F2vOLa2$=O|O zu&3E0okS-o@Y^Tvf;lw%PlcS$)8r|sf1T4 zY4L@|kz z8jaTSuV3sX{=c!E1onHql6Mg^N6I0N{p|I3@gX9WYtu6bY=@`NAA1dD^{CaGl;DXF zRmtVxQj^i10*uER6+o+NYcTGghkg_X>eiDR+RJ3#8Hvl)lE1@MStyKxEf$Os`omEf zs_AY=elp@Ow#d=J4Sn|u%q$HFt)fNPi|vMV&yyeE8X;ENhdUlQq}bD9-QSE?=TRY! z6$h1K_5cCwo(cKOQ`!yzEktJ|O`4hdm&~hgr zv!lATbClMTgk+OeY8AZI$^ca-D)lBV^QK z)K1_C44IU$7TqPN=wPDY; zH>bD*UsXS?tp%OqoUA2iO~LP{_C+#3ghazE@#BqJ5k=b)vz8L-ti`W|TW4R?vkfM9 zqwT))kMl#k9R;~M_fota-Cbn#c$xS1FAHPuDUowF7k-u1^t4kkDkshA4oV`!i@^@4iL>Oi_Z2P^IpU-i^l?`0 z=y+uCpmjXAIA7$e@U83>ymo5e(_Zi8iuT;P*LeStTR9-DHZYYH#I3~O=gbcnw%yY5 z2?Zy%s?OJH_fZ-&{==eA39lvDvXM0RIw?`=SAPIVsEcNCs(m$GIzf`rO8a`It-Dzf zD}M{_t%{c=C9Fn^L$mm>eauf(wB&sGMU9Fo|1Irvne}8qg(oSHhgP0<5Ac|zu$NWOwR9Jl>1!8vE1la8j z--(ufOIisFbw8Vqu}fZKA}dulXyghf(c2B&v*}j0B_^8Y98V#@%}f+B#9rHdvr=Q|iNCjbsf69 z-5@v&ie@yM48zk`J=Rdd2&G^uo9{|QG4>3rSL~v{FE@iMS@N;7>O3@^CC$=Ti&f&I z+{VS#k-95}5X-&?ZUyIp>BLk2vFA&cDy|G=u8%;dDo|n_Kou8F)SY19ERr7l4u*Ig zooPwVPBx40E~)dj{x&_Ge>Y4;oiN?aDyc!~?zch^GsxuL`&*$y?^;wPy7k}$x(p2{02ltv4X zp5>V(4iYZ82k3a)XYU;wf_;Vhu0*RzQR<9PeiL?|w!aaqO_moP>feUj&AS|7@#Sy3 z8w{}?Op(f?tQS(#0X9U$>N7aT?tOpFQ}m6O_s15u60<}ie`G2B1U|x7fOVG}chotE z_Oi%^Dld3mhsNJ0xnnLRcpL0xA1@9?Q6jMR{?anm-am7b10F*M^ZYwA7v*g~veb_s zXBT^4C+3+QWA_27!*EPi7O#7fH$KeTDZ90;-XUTX5Mn5%zP zF_W8nop@Bb+3nDh0&*?1k%9~al=^+lz6XT@4RfBohoP5Ex=z^ zDybw}&<|0Is&e=Xm+aSL8<6bPHab#jKz?+jk`U0`Sjz&FGI@5$xja}^S)7%*jsg#! z@7n!VBcqH&wt3|wa!JDIRRNg$bDi%~HnQRQ)+c*y#B*qRYo4-Pl82Yqh2l0PxWTK; z@Doy`WXx-6jA2wPWnzZZpzWzaR2HR9tJL5!Pz1U=dZ!Ed|M*4hSHJ1{&fw?fDsmD@ zpO`8tLjm46@S7y%eeu8xenRNrRYYPRyvhZOF0I3K;{#8&d~ttx)m4rF$3URz1Ndd| zG68A)9`ODjr|!7{aR~Gb_mzo1E~Z3t3ooJq`N=-|&`Z z(d0$F>3i&ctdlfMh}Bup9lYStyu9O|1nqYmtGyQRUJr}y0iupw6<}%roJlKFkf-@ zl6p8RJyS+dgHXe$R_|jSt6m!y&RVfr8Pl%sgR<8y%G-E0nD9RlY>{Z6{_51@amEN` zgY@~p_Hk!jEt|3u)Q@Th51I{8Ce}aztG+0kJKO~pk0R4%uvB9ruE-V-|H?oYoF=XM zO<(iPpO@t&IQ)*rXWDh*e~CUxiHky+qVZ4FsQY+zUA66nI=fW!;i1Ov_f;8*V z2_rX}iO2Nr7v1A~=_tj$#?Qg01w!Hm-6iX`?%J7zUll-y|xk24Pv)uI_=$Mr)3C0{wAE!RugfwYUjaocyB znkBKv^EJ?_w=9j3A^Y*BeiB$W8Qe9KNY?il?*5dNElPPIQ)7JQh(YwPNN@S&oXX2K z+M74A*J(S1MP#rUY5sC|QewL6l6nE4323TIZKuE9lX>n0z7^79i$PY9h%16RPE)V> z-jsJ1+i?NrdGs#~2*{{~{^#xnr-@U)eka-Imu~A-GQ9zWF-qTENy0dr3~{(EZ7fpr zN1aVIa^nUzm+rT8uYxt8U)Q2DNS_h8OYGr}!90#soHzyXDt~vT;XBF29Ek8F&YhpM zzBN`pls2Giw_9dsh@wJ>AqofR9)}<>dh?;8g&C3%_^%|d_EV~)L$3F%YV34(7A=+WjTG`YuaE6hZt6viX>Y9T2 zsp)kUqZd$NqpL@FQ$8rjXH~7CwxjIvEqoav`0HAt`6JG;wJ~#QNzWIOFx{3h1xCTG zS(EAd7Y%2ug`aOkmv$gNyge>Q+M2WLWV+&aN{T!0eJm?Q>Po7o`@5c0z^LX2MYb0p zvUn4MzBYlzl2!?`*?I95<=OR%SMgR-RJ~<$nB;UOI%CJzF-;3gFUR}!zc%^> zVha-u<9{g+Vy$=!Num`cT2)%7s0&$nE%N+q?O5vc3%*!wR-X9@exqLcZ}sx0XLAJ& zcn%Wv<9;=Z>KvY9QbckDS>NJq?#|VT{$UBeO?p~RH{cj3a^_ePPHK7NZbDb3{?0=o za#`ZAupIgY_ezMxC8E0th%=O_LZsgk!fK$^X6K;e`TDjFjo>b7(u)jw+~lO!c>R>^W0+izR@3OkE}-z~Qrb z%gY903s3@Hxy#3zmle{?8yVssRh;ViW4Fn->R;xeZtcVjf(>XK=cTa%(BM z;vrZlWz!Otmy=s*HtqEC>i(vQ_8xZ%;6JyRDhsK!N?EWw`A;kkz4QR(8hxXIeDk#3 zb2CgBj+n+|wlv90gTDHCWrB#*JyWLNz-K=-n{%;cv; zBf><`NMH;V012Ab)KW}unB7ecQhMh)j2py7XtM0KoBw>j3h7EBb;yO~dH7-Tl9{qm zc|EVHAWYGUo_c%Uw5O&ED{K}T6p-?4{h(##J8F1?_K3dt@%P31!U7s!(UtRqqBvWK zR$xAE2L3{Aga+>1<}?%&)p1_TAsH2M?1RzFY2xc0bvDmqsdf0z3bG-!deJtzk9}rR>TF`+EKTW2oW?2aXNT`xD%hU;`KP;hKkoW zg^4s{Ej~V0!%cbHx!ibA`5&@b#v33qxw{OHHFq8x7xhDPC?k;7ZrU%~Ehb2@jwpMu zmY-RIa9>MOiT=LlE47u>2hVo&VzYl+PN;fBiD+iKKGy-q&q#`b#QY~;sgpo!msiB% z+TMXeR|vH6H4?MqC~#wLm6-Mxd0Qrg+>AUNZzXr}AT1ftgT5Fxj?Ixo$cOt z;4L_0vDMolZhv9B4*G>fUA*Bnl04-V=C*Z-Cj^AG%IaHrSd-){&URirakR<30 z;351oeEdSrBnM=l+X%!5Vrp?-uNZ?ei>Kgf1>#@6s(6b@xHz~p_?+b4)RD=|8_vC= z$jtHpgko_A)Q(Dls*_jVG1-f3&DVZF35-TwRQ32z<3?#hw8c&DXe)2DVjT&q0)_7M z5{b+@4x>TFU#)~7QL%vz3B-eYwzxhx<#n%ozj=PCY(A=vjH7gj5OY`W3fqCmTiN^8 zEeTc2+PLibY@MZu&Pw&G2X9nOsj)_}h}f^2U2~P{G&4>dQKU$g6`Ek+>hYg{jNr75_MKux?4zrT_o`-L!BBNdJ? zdE7(%7nL1&ec1<}?mss_=^7Z23;VqUQ=&iKXgLpccqUr8e~_-DGu9pEk92x(cdQ@ zHhiFa<7n?rn_oqDBeHj0r|zadg2cES_Jm7L%2$Xuj9b}q9P56~&w)gCwThO#@Sx-$ zNNHqza+jpSRR`6%Dxqoro;gS4nW1!8vt4@b02v^e)HnNGvid9CNRB1Kyx@G@IWWoa z`5Cg*>+%_?xyK)qTQ@jU7?#Y%y=$)@(qv@qrxXQ751Lh2B%}%3MTyW?BFA7jB(2G+ zE2{jWGM=P`sP~MEi&cz_=gQQ#qHX2K7g{)O7|opn_OUl6Bn(n|&q1`r55a*cX1CZ4 zKA#i%wllw?qW_X7)- zqdja4jfjz&+gAVYWXaL(wKj1xwwD}OZh(>slBzWSV;2%TBX&M6HRIH=m;N)bg10}{ zoz%kPffYBz*0U}MTc57~-3I28hxoz))e>`V%twZf>$u5bK9q>xGYmkEi>%H9TbtSC zN5<)OW8(Q;l&$OvzhB7y;7|B&u&h9Ay z2xH&4|CL_c7^4hwC&|WR4MB~y#H}T7Mg7AHrf5V~UFQCXX?B(HrQjljRSbyB{=@{{ zaQv*mH0)a}<%6$V#-7rOpsL|QIr#6ha3f_L(~DQHREJuM;kBdZ_6(^?1Lwi)k&C(iU}B{7Q_Xay%vn7{nRmov~9 zRX^&M-VLLiX;!r*H7daz%qs{vA$GHHwMd2q3Jy*NrvNX3X*{+EFagidC#G_d;q6=> z@cLvJ90|RdF|MM(x8jLu8xXCO;e)#+`h~JxGZHqR?}caq?KjWulb4D=p?HDVr2lceWnIpdq##`YLs)VR_7DT@cb%=F3AP= z8?+a$Cc_?;mNNfN8C(B7>uj114r7T^5*thiAJie->xQkZ>`lVca>h*Nww1X{A}L+n zWO}XTQ^~%hL88K6e}ja&XxDFqME3|_j4fBb3o3FH$S5$F{S{Kf2j^){bJdJB?r|s% zL)LR~oX$(d2ZfNql#4@t$XXnzX?S@Hho5HBO%0OEmzl?+ZR-CWN!Qq1GdeC*DNkY;Nw$yB;$$5=Nf`(g{b63LOCA&d2A^$u~?gt zY1W^MBMzzs?Dn-=G>yhigWh$e8zE2-T&V5uGXjf7b_w8;@%jr$U<+<9hoTrSM z6PISkAqEixatsTO0 zkk4?poY=vda%cn!F_9dqH?}^t^NFfr#dSP{It>Qt&MPjcP%AE_w293q<0!;-+NZLA zQPDD4dj8n((uZ|$n~&7i^EVFhWc=3*k&-$PFt%OJXe$Ddg#hfjT9HD;ySc??G%kQp z0|%y84lW@YN@;4uo=Exu%o=VjG>DF-Irxqa#ErTeu)VcgzE zbPl)~v8`r~sFDm$Ol8=UnJ9y9Gq$40CJp{!^*m!tZ=v^P7agW|oA+hCwU1G8p0^Gw zMd$UgL4?(r+;C?zbyX&|+NAjHoXg^Wml`uMt`XY!MXvig*DR7~b zLBjd?1;%rIB^}{-?pO{gz&Nj3d}e*;7P1=e!xEw;5}tO4W9@FZT7~r!lmXbUjEfea zD75#FJ5SE(XL#w_HB^C<>fteX>)@RgwL$NjMkSc~AI^1J=PG3v*Hpx&|36M7Aj6E~-f z+Dca&yO;^Al|dZ2U*2xsB=pV2EZ!BV$c+@A@lqUzS;->T-KOt``?lBIg_W-zb{Zs; zh}?yT`gRG9=Dk_7Z3i;mb{lU{35c>vCJ)~G!f%*a#UL|En+t@kvt(WliR1%!+2fKw zrNp@o)`eMmJI1kqzmTgr!qdm0aqQ3X>-mSHF41(FdKfUEu40tl4Jr6(a=$d`(O5ie zNKkLhf9CJm5>_pd=|~YX!*>$~rdjH=?>~n6@6k7qUGw%2pvBmI<_+Tp^mtMlw6Pv^ z9QZ>R1jRdk548k9GXnI`S;{;Nh9NEgXjBPBjxS}yCt$6 z_Jh~b0MInlY~wJgVhqaUXI}WxskZ*nq3eMjHd7hw?Sn>9oYk>S;D;wgy|O(c0dZM}s=U1*M)*w%aUM>Rauh zmcoJ_7G#3gZ@z;;Dp6Z8uu)`gl~e`&RxkljlgRKbi-J;mi)XdGE5{+2HP=dE^~0Yz zALg!;6uZ~W|F8x#kg5G!7cQv}(3MLxy~+690I?2B^#39*EN1H`2PPAu@EdXF`&*#b zj$~X3Xi}v@cYQ4{ox!zvY8ji1*$(mM(-p2q z-UkE$nb9as#r37Ih!p~SIbjPuMgg=G z(Wlz5I1_~S@so^}z>xl5rC!;HGVwt@oYkwi$j7<-zzqbby2?7yr>0?~PQhoK%iGd8 z&ilZR>X4ikd?q#9xz^mW3j)4P9ZXu^7Y+s(6~zsVjP&;<%dMD%K({|7OPUwOFYh&< zHi<-v-)V07I6Ut9-(9BLFbWptoF~q9zN7f?isi0?@xQ1e4JIDSb|ksxul3zct7^`B zBQZWo!PgG|Nl|E!Zkre#af@`_Al}0wzdUHw%nJ=+T{E{z`eZ?C9$kL@ZMMjpx5i`0 z`|VYZL5@^2O=PV|cw?l!nE-UEjpM%cV8l}q=*tt$Z0@Fa7lu3?DQ~xa1KnPBK#Nr)$(U)R z5cooH+mzrwagXEreRp7*UlPj8$@oLs`h2^opAh&w`_`!YAJ(yZ;t}w|ZAIBY5y}Ty zezr_EAX-EEze}_PC+#_`#E~SdY*XD=4|JNvSf2&I{q|Z2g-m3pRUqmP?VvaZFaEwtH70^|2HuYwTxF3rgU_&k1R1E*m`xJ=%FPMlJI!+Ov82IE_UCvMHps@kW)!4u` z2ZL8=4QGF%an3dZ8+RGb6Q@=Zf;CHzps;c9xt3c{)9MLM9)LMx@&LFyfJ?voE^EI8 z3DXb=Ht_mlXRx_;bCI%vd>ZG>>h4N=z21{mVZi&9;E1PO|$tX>EpN z`=!_=^CKzzFmb0@W21D`kt9Z*otVgVH)taAK6D(fq6uD+uDfE-aNu#I2Ln9b`Rml1 z^D;V?c)m__j3p8S@jV-K*F1iY_Ykke^@p4XUKgNhGT)d&K91Q`9R60Fqs3@FjV-Ws zwpHYP+dt!XR^u0B3bHF1#`{Pj7Tz-(d(4dUGoE>jsRO z5?Yw)xOCK6REl07n^sf>>RJ0Pvs$C4qow^jJrYQGtkYFx?50?p1Gd!X}GVlO!2pdmtq>VQT5jN7D zH_)AJxn9vJV1hZLTx{EO>PMQ(WhymVw^;$v(yPOVg}4Js#_sA<0~P%z9hC-RRY^WN z*6yZfetpE>n>246zpV37$f~a1Xp^qZ@%gr`jOTr!_*#KrQ|+j`y3}zlj=-uxqcI|S z4x+u%Gg zln$6(>^-%p*@!RFb3I&|Q0@B6lu2&gg?eQXUcT+N4AkJQ+@hEbe9>WB*1t+RQ`)8(aB^9HkipZ^@LfzfGhZmh99{oe9=j*dwc_LQX(O;j+d?p z^iP>+piY?Ogm&OS)PK6HWsr0XJYE zAZUE5Q(9fPT}L|xl-IUpCe88c=L&SP9=b&q;dTK7`Y*$Nf5zUn?f+I0J|4MR&+O)y z^Q_l8FQJxJl9h#$C5Bp3c!9giYFSB;B;I`9gT~l5 z`1{N(z?M)`aIkW$Z*d^pOdDv`i96;YCs|n6M_V)X{jOAOm{Y=RLhT$BlLmKhbq#q` zjztc+g|F*L)5f%~-*=XBIZF)>lj3wEI!ISsOk7`#t!smCZ=84Bs)wzgt{E#{a&s=m zRLybM`Fbh4_@`2>|7U)(%67UB9@SIaR6Ds88{!;15YXG*Q-5}xn>6QL1#A((b=T|_ z4V(0*Du5>9F+-G*4%IlihiEkNvH3)QInkU^40L;;%Fs4aJ2VkZQdyF?ol4l;hGFvC z44qWFv zXAmczQFR)s+Y zQu@U<_=yypvDqz#q!m(a`!<=DtfLDKCv-Z(UR+O8#aPST5YAUN<2oh znC0Jy4;*hserms4jd#g8^)Pgn?lqDAvKo)%vDJXHU% zDp%d?tN&qf0fivS5zN;P`zA5Jzi$RxDz?&gWzLXLDG(*{C; zH@IDbBi#Nb$qR1dQaRf74v$mb85wq~Q;6t56UBoqDzZ!$@`{aDBp@>zVhJq`;quh2}?~bH9&sf^{_(#;`vVc0VRiFLK^OP%w^y!mk6()W zzpZGi7?=Jl7XEYF@g}dBf;D+r&_AhBCnzaV;M&mjcEG$cUTeRhO>2)zmJukBfhKM> z4IRq8H7bfS|0AsBJ3R0BBj=H^OgO~xyiTEB-)lnnxRB}gxX#>iVgggS$7z(-8-I&4$rr2Sd0{vLaCTK( ze6}pTH`eW`J=6}?&ev4*(B~lc%bM7`UxLqy!y@_Fn-ZWSM+jJ95l~Zt0TF- z+Sq|BZ3xUVYstn-`A(4LfqL~<<&|X(`ZJHq?p(FeGSha%)gCjp{w$K{adRpIDr&|s z{>Xmt`tVDMjf)?1qTlIUI^KpARAeRIaM9!Q57@gnSP{t|TA#ax=8mlY`bFcqP)iSa z=Au)yAo1ZxZ2VI{Lm{ujp~N5wLAbBLyonROipkn;USMD8$B(A)xt4|jWeJvtk|Jl< zFky<-d+1HBxNS{0(dSQzy!Vu-2|X z+VEbB&Q0fe29?cPpE+?dxb|0jHL~dI!?}EBY8EoKCdT5fW z^i|zdez33M^E=6fS9RTIPkUxuFdnF%PVPjdf||^djqo;(3<>x&+|+GIX`&mOm!WJm z(zn?gW}@79-8sjO#KwDDJo{G2-TjrFsTc$;zv}H)#R`Yw36;D5XIbf_ zoLKEXg=_il6DUfPT4A-U$rp3a{fKd|=GYc*riGP4r`m;*ShyeaK2`Z7q#)-as^y0J+B9&X!H8R&-I?;%Zc`n zP(Gd~F7ytvypuoMzk=Cf(JwgN^*84}&(cFMFOG<-YpcK$j>7L_30x6-naES$o)+Zt z)i#HT(MTj>YNf(LN*&y12iC27>@f!2vq*j|vnQ7!q|5CkZEG`cmjQZz)LlOmkWp8o zw^?Bx+IPZE0=6_<;G5~1(TdimAR4>_s(z)G;I(3_^MQHwEu{4g<*gzParC#UFRqe4 zUP~^_*d2(L6WwF5FUu!ShLvAzJF(~uFD%C=-w))G_vHfuMuT;`R*)r643oVIn8~(@ zHaL8~sONq_y6b9@&b!xari8hl#0m>K;g0f7&U~)#QQCwnDvj{3 zYW$Oib$|jAEF2i_d(M%-O)UVoDJxng#@;z1dMa{)Of0bf!bq2WwcvSG&a>`p(|}|O z+x;57JUZ%R>rJZI-CERvLn2~=|7J06rYY`Qjl4}j6?%kM4>d8l=Au9Xk5F>F>r*gY zYaQ0niZFyl1~kQ@c!vcMV6y#KuF?PWvTa`PsR(u0)bvS@@UVNpyscn^p5TvTrr#h( z?3X;l+|^ziBGDJ0YK{pkK-E_l`ehu#jvwPoKV+_Avm7Nfn>n%~Q@X>4p^-ZEi0e0hmyxPGW}yi9!w;T)Z9e(CwF zCzrbLau}YK;=2F%jB7#8vt83gd12nPp@r$Zz2m56@Kf3vma{!>_g7|@$+tzFjeMWH zfP%#!mfDN=vCpp54!ZT0*Q_!LWBSi{r3QQ@PIcoBZu$LeH!BM+EY6xgFc89?J-lF9 zQ^=F^EQZ;%{ya#+4x@J`ig<#&bk%WoysKbSm^tRHnhPwLE6&u`nmbY9#+)I%w)t0O zGqXmAz00@!o975K14+tuc}q?!YTqZ1Olz8T6v}GS&A$wg$C-E~L(*`x`cbqhBaakT z*Bx{JH|ejdII1_#v|kJI z4A{SIS85h_>cH-Ty3v(sfCVL2!FTFGTaV;9^RzQKVk8mVuf5MxK52-V|Q+`K#kJ8$Azi4Lvddu95 zexW+dGK@wy+m7Qp{Uj3)0W>YB8LO~UIAXwWIy`2qdUeZZMcM%4Js2=DxdJC7Pn z9mv3YUaSYN$THOPp~)zl*@^seAn#H)Q)zK;QOU8RAcE8kXhru`vd?A%{b|0)wqg6I zuR^$@tw=US4%z;zf!@;c%}k*UVT-?@Y!`*_z3yLXA7^&rt*&9Z%#w+(+IhY;hI(aa zt={B6(YmZ;A8KM24^>m0CE>*_zj=040wuad!2s*(l$FT| zKqdJl_If10$#$HyKs_bwn|pXJ-VlI)0F%8YWA<#9OQ0N;G%mUWmnFAV+z<^bnw2k# z1GMJ3F9fK2 zkt#$2u1L86tGFawfL`_52Ba&H3vtOU(j~o+3E`sU$q-IlS6LzfQZ8J8<;#h)eO20V z2n9&FEs!1T*>Y9Z?4S`XmlfBt1Bbyak`u^#(?hOofR%Ums%uvgM-&6JOWEeRq1jRv zo_x>?$5e~5xi0O)+p=2@E0VRT)&Uy^c)2R>&kU(8>su-|2tdm2^tnmxed$T;`n(bY z`^juLhou4B@~+i!C)}7WQ=uO8;?ee$cO|+mv(g9dz;CR(DsYZRB;3E+%FpINFS5H{ zNvC%ceI-Odcen*wTwe`=y}E{J`^YuDZR=TfVjHWj5J~pK3xr%g=w#keXd`u_gL&Vo z16*7Odh57*D*;jE8chC*EQ9z-RHpKQTw8WIWH>F-{6B4}=nxm~*SfvwY-K{qpbNgJm&Iz3OeIU!Q*_9G#1 zjn21v&X(BgmfgwOM;z9&0F3)zi^=O{0aBL}#3$6w@z=DVb-46Sux|tcx@p{dbGiO1 z9H#E;&g#RDX2rU5NpqIjkP!yiy6U@j(dxBIJzaQwlR>fY)Swz0emQKA*tNrjih0X_ zWu7)3^niiz=74J(+3p&p2JP)|vRwlb{iD!b0N-ZE`wN|Hw;YlJFMP|KP!d_8t}Cnu z1i42ZNtPXOfIj5`A-8LiX|n5&1c0{saX>lE8B=%^({S76 zvW?TU3zu-w0b!X&Yd7Aw4}y*>yMtZ*6NMb|zq1p{0p#-Jp(UZdx}BJ1e2>a$UKPmp za}=LZM}Ak#fE-JE0DJqBnPY6o%zG1yJM~+?<_hF~PO%qy^-hoZbUKqO~8A8XMkf>Cfc77`fb-57*&IIF0}~&TTn;~3)1T&6 zgZZ>jKgu>e+P3U}F+h7kmE5x*1e@0u--q)r4}RV41Nh4yy+G}++8H?2 zH(rPjbu*UxUl#Kfi(?wnQophPEm5+aMK=Aj|i_wh4 z)kWez)mMJfVQu4G2fcV#olfswc?j=O%dW3?1oS*Twq3HqA~y4=$nH=-Z!kFYGQ0f0 zn(;l~4%3vImWKBEBSiKyNh*`=5K$`|=thCLZYFTKmnH)E4{rv{9^sx&tAM|oJ0?Qo9{vE*}U?^XW*?Mo1A zb){|A53+MzNC3^E2HO|;Q^g(X(y^W@34EvHj{3GlJXT{ZxVzq(d)sskv=8!+v~nF8 z13U95owxfhH-y{iw#Bub%7N(1)Muni|y#kzH+1bOA#&BvQhlXyHkhorZ#z~s*~2Nsnhqc zXpC;=<-|CTt&-owq$9E~r+QL(pds^C`(HOM6p?W(ZdEb%yOQwY)B_D8THPDt+DIU1 z-&LVGzNfOE$Bu{ygkt(NacNIt<6ztSCYScTWM ztnMiSp1c=nm)X&AHfyfbfMwM3KtFf}gGTDOXvEzwWa|Le-$cR@d%4{Cr?5zPgm-XAbU-)KuU7)@$1D^GVdl9exH)C9NW6xpnz~- z%;J6PvM|^l)`?BQb+qes8>DFC@<4HDwqm5q*--CE^;-4DNAbxo`A`$MIBIz&jT>>m z1lE_3;g$aY!_*$O6p-ejVZ>*Xu zb?4rsbro;^4yXKykAd<;3RKqA~sv#LpK}aN(c&F8=@sVqw0lUg!S+L;!;&y~$kW z=5a2zh@sg$Q!TemAI?7{@9>r?IPSgf{)hlMhd-N=vfN9Nld{-}?B#>}*Zdb9ki`J~ zSNGzLfKXcY`ppMb$4t&2`jLUMxT{6mMSF88f5LdnyIyY^HURF{>)B5lzS*=Iqd(x> zYTDDMH)8RR**B^-0f`N=ea3g&#T;hF;^x`h)&%pg^}VB-{{YBBHW{gi$>FcLb+WK` zg`_(NR_|T*{#7$J7NL!>mD+V;HW^?*)y-V%m)oaRsyho>Gi7tN)6`J^0D!ShO#c9+ zBVnI5wes>v&Pz--3lKiDo$g>$$K?K}+jRc`(@x4=e#VP!9>6uHSSNS$g>F5Hrwy~Hr8esHY;EVqCqMm3228pyLjM2- z(*FS9t>X3H;HqvuWW(b7BV%to5rN0WO2XEkTbb2*3D}xkzwS{DKH6ipE|;}>Sh=5B z8yb0x+u>gX?v_AzmIS+74l2y`RjjO+{i#&TlV(RPtO6~xI7@JBZIu%-j-;fsj5)1* z+G)#9X#UP%@#6E&`S55dSisjtCU0ntq$E!}b}fp+USEvWFb=Y&!L*x2JyW4(GVnmZ zZrv7&3^Egm*Hg*rMDrQ=ccB|4OBwQj%4fGUZO?Lg2J=o3Wk%TTWj$ncgA>mq-Im!K z`7IgRELIbf&mxh-jo7MSlyunNl^NeFZ3vmckL7+rdQbRvAuFudwEe{PZ$6W0_JDm` z=?L$MIz6bzJ+{!E{Ddv>z??l+#6OnFrvrEHBV)r0{wl_XYf(|33xzCOSy}%85kUv? zJguR@Ev{Jq0Lm0D!Gp9eX#P-*mxg7#X-^Y7r^0L*Hv>;kg)ilUN0J;)kB{iDMn zlXFpt(lPxW^=5}0qn;N!o}wuu8W+avj|;3vl&zMmhYDsS>Shhe?LCeJX>|Mp{V;Q6@13W_@)3%=;Ax|N7rDcfwL15}I95~d<_rT(B$1$?2 zNl8mJRPnki2>$?j)=Nn0-Iqj8lE-8F!ATQyW-NW|vFyX4Ee&I2B>wteG7;#?iQ^-U zo{cL_#4T{`IY@Onwa4&SUCl^3Vs$^~N@;4{n=U6fJ?}=3t9cYqHTkA%t^7!Ut)~y{ zW)0g(KK2qav_=gHG_L+V@ zD@C!J35rXzVxg5Z!_Fi!cHPL>^5O4Zd5=~CX<0TR*eW79uKjMaIIhv+v1apqp{TX& zBZ~3Zc#CL*>i62+gU6c)a~nrBu52Co+wWOA>RGVyY1q-kX=B5U*NlIPG2x)btGoXI zNO$IoZ2lpR*S*d9N>)@ugR_O9Q?r z(uV~jBhO~>H!muN9^)1)z`4>Kz{UT%&+Sf_l1o zI?rAv#&~Fg)?txG*KYO5i&Rlo#~C!UvE+TUKg}`7&GJR@3BU&U-4m|n*nP``fcBg` z5x2vQNZhZZh>v&Xh1W$rEmlg1Hx4bnT{v}A2qe37o!9SjLtj-3tjXQ)XjL7Tlai0( z)d6f{6@&GSKgtxN9G>@dFh9k=)lhUYwAs-(e=2RQ?70NcQSDSPeSQ@Tzrgb!=B9Sn z(w|cXYd`#8{!230oc{n(jw$ArcJYbh`A}od+P2u`pld(*Y5bE8*H&7=t_|tEHb4k) z;w+H>Z~Rq=oj0!k05b3KJ|J~6zx?PTOP~&ah^tSx{{UKN)3s;yu0ik3Ez;3wSYtE( z-QhT5wGQK7J->+w4nWsC|O7+1B09t=xMGvY$IQ$C;tFAP5M4Fqj5?90L&I( zRgvxdTBH@O8V4n#X@&_NUe+f#{`^zM158`4Eid`Ms?CbWA89+ziPhOqmV$g97}@^- zc+P*B51Ny7MoP)`XZN#}s- z9imzxvpb1)XEwn%ec9F4vJ7hnA9_<-H9!2)GzIs~Zkeu}CT?9H!>S7EvCFU8P4l~I z9N!X+0i!tWTarUDF5i>(O@TtU=Ye(gOXn@^ z7dxsn1vlgEG+U}x)B&3Apr#S8O+?(RwFeVWu+EIXAauDVf)~%c2**c3n6wZBuXB%sdgG zE9XRJIg?E9z4M`-cFtLPB=f*CUCjyT3VG9-+h%F*JVNg{ckb$h`PdDjsE~f@crf9a7VM^gZbDTU2QMim(IIA2SSY~UDX3Nx^nfCU02VvG}Puo%JdFGC@v|Z<1xO2aUR4~<^c}4p4NNNc7ntW8~g*@Xka}5GhF&@tZ zEYt!=YQ;Csj~xCNYBU8r;APRyABB>cy720T3W6=$;ngnx0M9eehGKO zi+$*J^cJ|6H^(wlF1O6oXb5kC;QZbx-gWC+D+hN3FwY+c@&5ixx5KsBvRVRr@%EZ} zr*GSp-JT!3gqfN}&WW4D_NIelN;C$9z_bj`K0lI` zwGA2vW&VgEs4X^1%ByMaPpBL7j*j@bNgVAQGJp=GyQ%;xN7?OnyYWdrBw)MSm!Enx zr9Gjp^ZZ%w>9z*_p(*Hpe&X1B5l;1xwPDda59TV`I_j}Lmg zM}gH=(Y~S>o>HMY7h}6Yl}{1n-H400qHvvv{7O&j}NVt%&50z-?X>ly(%~|w&yk7#_Q(x zJ<&)W!)G+y9|i9_0kpC0E)4DazfGsoQTDVaHU9v+D9aM92bf1$PWoDyn!H5tECW4^{NEJ(t*U?^xZx*jaJ7nCdf@LA;bVFSTosd{K{r zmEg;hi%VQu?FizUtxgMXu~n^g1k`drR-3SRg@_2I0bX$YRyjSBp;MQlt^0s3c|1}A z2L)PMp4*OVT>Z&{th-U)r-H!?w>d5y!;ke!Yz~fT<`pwmGPv;Jam(VD&YRjChNugc z?5=gob8uA7AOXzhH8<%7Wz1h;%{>M88_Ww^Z4_tL7vev8Q8kTgeQVh>&scqLSG^hn zIfdLyxF&BJ=Gf*JR6OyWt2v_Df2wDmfx#LI(M>EY-TAwo{YCxi!z*fX{{Xv1;$5mq zD?!sW{{W(fTt%l|e378AF*=c_n%|GKm6(-SZ`3zkb>yiWS-0@IWSE;>sBZ*mONSGy zk5%pH>FjJ9u{}jcr*zyL@wK zhD(bRpirDi&eXNf3c7*6JgE-0d;b73?>(r>?$0ah!2|k9_tBsAXq)G*=g(Ai4HGM8 z9^Q$5lBgcnE9&K)^Vg4A*3<1K`Qy%PuK2kfLq;)rteQ8O?oRq%ue5VUI$dT>RGBq( z&bLi9P8#=UN?k)n>}FG`-Id1^o1RS;Z_aaYZoJdkzmVl?c>T!G9XPYW^;n!SYJ=*z zwp5|Qi5ca0iniQ7DBGAs?xVDjFVl701DX;XM!m+uSDytaic#vaG2UFC98+=3(fkfZ zfsA$`D?*UcR=K^m*8>K2)ixe)m3&gOBS2> zvBNw?2BHhPMeHMcU@_n^f%$9>^s%ay2wWxDiEp9sA`Y5&yv&^8E%-=kHtu1WB zPaS$8jP1>Q&A9`ID=(mMUm>o75d2Q6C%lbW9+qk1KeD__%6GUgY57TdUlS2J3xJ_Sw&m-kU6twA{Ue`IZv>T<`NPAsP*# zt)v<{p`YdoFFwN|Yl)Sn{`HR_C9vnBG#aPkxLvFzb(b7x4ZZiS{{Sk=*m7JN6Yv^` zW7GqIcaBukv@~|G-aF(LYRuqxuCssD9s@>pq5#`64joiSYHh0^xAPzxUdQ6QFJ|cQ z2fxK{14?F(kV*b2myYZHqzg_5_?>Ch(*FQO51!PV-ksXqm=&uDO0lm#T?tVj$3u^M#w)X<-*Ab0HT9tu}8Zo zrFHw<2j68hdn1cU{{RZ@Iz6ZHM!+e{eu-{BHKdPWv19sTkX2R9fQmBUB1^}dh3tHdjx(-dlqz2_w)Iy4Dv@y&9V;v z0PLyk9+@l-Zf8fsqFCg=AM{g@y*6q-t^jEp84?Iyb>PPXxR;pc}y1B7ONJ&13>uIVwx_KqZG1wp>W} zEn^hG3In)tT)Ng>WCC8?Qm$RW z0oPr1%a95!&C9MAf0ZYXiUYgS9TM_fd(aEqyS*lhiUYls%a>gMgd{NxwmEE^G+lHA zCY`>|V5Mk#TWr~sytQ3$fM)XEvUni2;mfX&v4>Nl0n5FcsI2j;U-3!4BiC(*R0O^J zlBP!^N^w093+;C$)9ohQmaafZkm%oA#Ybawxl4GU6qU^(AxeWPLPAXv_@Fs=1=n1H zB3q>3y66SE>!iJscc2xeDNJ2-1Fvo?lzY_i-hf>fE=iTh1zm7Br&)GO@jxO}>j1j` z`O>nK=3wY(J9wX<+QG?tNm&;d9N zZgfn}-f2UCZm!d+1Be&(nw&jXcD>3iVIlhvyw(jJuMdb35CS{U&9!I<8w%f*Kwq~R< z#xy`>W7s@7w$9lPi`B^XGX;U9Q4n^{0>g%DcAb2aH@! z)BMN{FJyg`xtcwthN$wDhs1KRj<;QY^fs@`TrMMX7K54t(s#`s((T}0TJI@S4B2Ag z)wWe1L#_`K!&HD$l{{T|)XKk)DPGKvDcO_nJrN-(DiK=XVAC1r+ z+UmwPj_3~eg&D=^o1vZ|;Jh)|wkAu9>YRJZf%TR0yl1F${{Wc*?r+EN*!_CQ!Bpxt zw+Ml`g+pZiW#bQ$Otz8z{<4nI`o+KXAfB}^lq@B!_Ow)=Rr?#Ft^7{~6Wz+J@w?H+Kup6F5InlEyId$(#f8OGp;@^-!SKYSv4N@_n zYr{mRN4YnEKsv)qwJo~vQG$4Ola7t-{{WysJ2jUXLHi`Ai?78iEtl1``S&0s{w))) zeklMN9)&K4+P4$~N&f&TQO$g#FUh*6^LIqYpHln>RKZs#(XSRG5aBq5=yxN!&8zk+yvdAF^UR+f1&m3faOwT} zD{$R<+6*(m1+9iQV9P5l}-NuW(*D27{BtMZHBNK6qXmd+@B@=F&RI~xt>e4*AbT8 z%pZymY#GxrYjjT%fonN>0PuOK)1Z+I_cmrGmY?-`oH#K@t z@?Ale`}ytsN8i{{X6$Bz{gX7`VZo#_4u} ze+0YMUgK5lv1~2}5d=}jKb2l)%3)FJDB?$8@YXoE*fQq#=B5zTAJj|!Rql+z zC}QKAvNm|RN&W@I`P4)gu$ZD5y%Tbea^Tpwh?o(w)5uw{ zSb@~mLH<=cJfGH^162?m&0e)=hM6P(04jH9_iUGA)5-^v$$hHXJ-XvpWMaj zd71m6c4YQlUTYtdxDV@V3H}=?Pm`K|vs`=EqL*_iLxI#e8y#M6{{UvR*>&^J^8~;4 zXHF0NNc)$gU73B!x4#5zb$RFgn#NnC@_(5p{g^!J+23#C3(A;ZZ1Z-+D{{Z%Pf(|UrX3~bulMS@_Z7&5Zv5DsEwaSvxJ;>mVJyvUYFmsKZF&yDhaY zKuf+UM8_@Mpe`S2D_q~SnWo+LwS0n=d$^kcy{p5wt9@qUzOI`L- z*z#&N5tkC%W^&`LQa4_%e& z&g6|#cVr{5R02U=D6hhXzU(yK@-wpc@PO?vGbdQDT&CrLBpx(~=2ccTaknCey;v3@wTnM+OZC1jEfS z8b-HlF-vv;lm7sjxmYSXv4(9#^)73U@;L{@FHFW8eX7Jd9X?CV=cjbIl}(%5kM24j zlBmt0*jzfkuC2Uv$DrNh z7qHisw_btgRN%5> zBd8oWxiQqIwPyTMjiSSjo_N9HoN>AX{{R@l{K)S=V`}D%@hwa=Z{jox!Nu_V{{X%> z{K-C(qUTc2^CP_dlDC?>_ezb_MEfdt;?ynw0E&&40o7T4SEg?{$=p^O*#YG=O=k4#QzD zxq~4_YcYt;OUQxciH^i$+~$5ze!)@R5JAG}Pwf+i2~6!xL&se0y1y-K8E@J5DzC&^ z4v}B^(cT0nXG@M|;wUaMD-F1gc@MZb?x%VeC*??^xFEo2wR9wq>xiK}pEPz(k8oHOtd9AmUJ(jDB6`L1l zYC5OqeVbszVSmkHDrsL#@W=Gy$yB>CQd5eWhQwrKVDovh-^1q3qh&Q7Q5z2~?qu~| zeFp1(&Gv2G#%po6HNGBAsVApo^jPamQVWL`Y4On($?O>L=H_YE_u}mnBFh^spZX{z z*sOk*OtkfJOULz~ed@dDcApL)N<#TZi5z)V$p6LGYR5+$Lf?{}E<21EV)eU2Da3FY_{tC7uDvIFPtEgt( z$ZrGq_jjR7lT*+;IdievcRNId$1kn!D1ODr+UaD&CfBfD(|$u!@Z;fiqc|Hl?_LLe zmU(5Ov?lHz)}?25kdt1*c{4A-t*6k?-&tITZ8i~3FvvqbxX5)%X9n0L=HD>46i4WX zICgVgGKQNbH&0JKo|T~c)$H0>uV&yiFD!kTeJ{yY{{RfN zyfyx1m(_{bL6~;CNu-j%Ghd#lx6p1JB5sOCVBqG?){o{(>cOyUH}*}p9a^H5wC6T> zA}IT?h<%2C)VN@9A6d=_`mk-76x3&pI}=?)Mn%jmZkOh@e?d}{qh0=0Alces$0+gc zN7aLDT)0g$tQpwqbAD;RLQ|a^P~rTyTUTtw8TIlznu*&hMZ~$le|_lsuy$kJv+U(s z-+O%Qc z`L99$01QOmX-Y60t-e_De}4phQQ79_4XS4t9qzGAG*u(@FaH24^v|K2?f(GkvXJ1= zH`)IHsV}NKJgxA{AFjs_6q~o&`3;wgST^$T`z2(Seq+gcJN91*ExVy+oizMZXJs%l%b1+s z=RcZ%QxUkp`Ngw4s&}3ox~}V;| zu(MZcm?s=^tw8d8@WH&qVh-#C{5M^i&&aYkbOrs-fHi zZ}46vEQWdCBe=NTddHM`L_0Sv{b?i-x9>kCY(((`sM@|iY74=no z;yf~0+bdYsH#Tx~uU01mmhwf_JEr@?tV`z41#M)Olg z1kcFgZ4mW_qv!W6zR>N?8Hq(SRL*vA8umTz0BNt_vbb*FMMmxYOinEI{be-tz(KRL zn4Wp+Fqi`()=`&s^4_f)3l4vZ1&-`gGRywOp{{0a1P`-|$>3Xc=$l=OQ^?q{8fuF{ zQXlB^W%-YRSQ+u{pnY8xTurkm^<(31QLdzG#Avhg23q_)?-j!8u)66fs-bi;uo_F~#JE(#5^FBBF%r+}oNea>IM$kWJHkt~Y z<&^UJDgOX~=uf+f&b6i51m`u;ytUd8Y<T?170c;@EdvJ#DWA^U}DYuI8tLl3JEL z$F5E)C&u{QXST<^Ak|Y>Z)q6rHy?6SS#B@MbOMHFHIHE7#aMk<)VS&Rd(`P7{(E+) zT~>KJ@Iv2K%YS0ZGg92XulL@Lq%7*Pdrry+_sKE!f;`U8n&>;KZe95FQSWv3zs#Rg z(8H^BzHbhyGl(_0y{_~xd)c{bZkS~!xgAD@4kYIhX7)k%pX?@@={V+SLvtUJOviz8 zG&H{Y`7i4zO+h>z@p7t>H77G4-A&&c`pIE5F zkvlw=xa{;pkP>EZH9T<{7zoS9o0T+jO_RnV*+_Pa%`;(hJjU6W_PZ;AAm(T}o2cSN zxOE5$CYIV6S~W~8gPg6?r!`(HGC*W)+0AQdu!<+)vsJnlc4ICbIjOc|?Nc4IW=dxI zxr$BnCyQ*aQH(j=sqzg5pMCXP7Gb+JG%kCYOvvqg>~PcOp4s0FAeKHkn0t|Jo2i0) zY6@BCVx9?P7i<1s*OC>AiZh8w+&4L<_H%W%t4oD!rqN+8gA}EX2Fq)PNa1nrRiRtc zgkelpQ|A&L%cZNG;_fbx|{DRF9gh+Dg4%pH?1j-U8Wf^^Dq|=H45-9+`s>dl? zM>G3Eno>H3l)?*HCZB0p`Z~9VnonW-g-;d*ic9LyO5yxAKyCb)`9jC`K4!%oEVbBE z$tDuhr&7`Z_pRkem+hmKjudfW^sGGd85{?`!Ff&`cE<~&Z7nM$j-OH(SjP=~K`M-U zEwmD9DP$kcJ~|Y&2IJBy{IBh0Tb|0TrYxtGgc#Wq8*$HEy%(BoHah%rxsqyI5Firb z;_jrAso}*=b~_&|^pX5txtj}$KS7fAzchFojOq1sOl1Uv z_9^tS`f2(x`u)BLN{S>&Ci zzPzCI7W{NpV)9Q-?J`5&Uu13vlHcT)Hiy+-&mWSSX6hhe@paVf@>@mi(ZTco07PyF zi0U|UOT&(f-ba&6DcmXJj>CZa)U5JnhBt&wKgQ60^t(Xt4)B)Fc7eD4RrFMTPB5XX zsN+5@R-*EMhDWPtqVBezaR}}oIC;GGzT#US-6`H_HT9>Tyk#rtSoRwZjNPp6-YE9=XbUm)itU9R$93xzE2}!?Qln6@D_O;sQ&=ONa6e-ek#;nN8Zn@*Tv)WUhC$u^7*9m zSljG0gtl)Pi^&BWhifqY7oVNg*!+)SfZVa(_n*yrz>TAeTfuXo9CEoWlgt_9hYJ0d z{Xf-OhsjnG7H`qwE$?Oj02SzLjllZW@lML&Zr6%77-+nkVe#tNneJtkrfek}TWqZ# z-!-uSw^XhK`zdTPk?chjeW1qps{>>xGWMccCO2PN+9!yB*E2`+BVnG8WboGL*gNm2 zQvU#ku;AP7vv@fEXx8z8ou}KyMrEfB`qqwmf2uZN!vv;}veq|G?}~84AQrP4JQd?t zNDfm`7`InhFyb^#Z~Mc2$##IxqiKV6N+_wneRHwQJ-@Gy-k5fW508u55!wXef&r*= ztei0T4u!YzL*2F5b2vTD{#PV!*kQ-*+qtesXau~%Cg|3*CENk)au+CB+T1&cbf4ra zhSF0OXKr#2T@l(4z=AxwH$}{+Xl`KFd;b8v5Et!pAwN*-b&+ywiG60YfTPPaUaPZ? z{wN9W*|JNf$15doXWlv|*#Xx}e_0?rl9D)}6I7Q=a0*L=0;RcKqH+PY>bl)h<_UNp z5rA_`WUHEhO){>_W~U@Tc0t8EAPExi;(%LOC9ISb&esG2@JoM^Wzy@x0KUrWq~^Nz zKrPbUG@fg;Ksj=0E3P@99eo^@{{SS*q`Cq3=(v?0@i;gX0INbOQIJ@m!Gr` z9c>i1vRm@`pd%8wzPnR|(VpeWt_eZ;M)hnR1Lznbr;Q?ouE) zo~b*Moe@9mfMQ# zgPw>6*`rjXjHyUy)pgo9H3n_9u}&Ij7aiwogpPD^w(piO2OiR> z>{||qxEiKA!OBA6(5@EbgH&y99ZR6fP>QX*4r8}5G$1xMa^qm#T+!mZ)?Kv4IXd1B zRG+jsjM=+wzcdG^zM_&Q`dX-f{v}>aUkixXRb2l73i8L+)yt#jwfZ*y0Ns=WIc?uN z-u-WMwjP-Mt)PLKoZo}K^-5j8r~On-vcNhPmfxRLrWSGR^G3s2FO*u2*5SVv=%~%N zSe(sp576{&zGx2VqfEaZ5GM8|&X6ys1aU`=YTaS`Wa`w!QSg4Y}l+~ ze`T*UO9-BVh;qiK}ako`f-cl&r!Hux$<>xNTa2v>Lbh&$4 zw?qc&Zz*j$Lj}BAsmtXWwCXA2A0?Bx`&wCXBjAA1O}F@@tjfkjKba1G(&H28WorTG zh4xOVL1E*dKv;ccWV*{$C;6D{mY-zDi?a*9@tVhK#|;2DmupyPM*WHr}>VV5QZq zws!T^G`XBJwD=}Y(0kLb*|*-4cQy2h{{Y{)S&o9bU#p^>{{YH=Bn5ugK1m7d^H)9vpUfC8A4Lbv3qNa=v zjo_x-xxUP7{!opFiZc$al=>_-r1#|`?^DOK81&y)gU|1H{8zGWCOjp#f_S2robsb& z@+kHzXeIvu=yp&1$F)w)fyc?a{MDW>3)XzVH`dJl?8)MeG3@^U)Qy|V8RY90;_9k4 zpW+AdQ!~k>LHgWUA#RKo``4%Ws|V_ud{XXN$|%yYMgDDQg z;PGm3)}P~gxHeY_AN>oa9QD;`E$bw(`z_#&fMK%uK=p9SJrtked^7(51xz&L#9%n( z(YMhdapvFpk=O-|ourS{WJCECn6S88m}Y3V?yH%N-N_*&_KUSf!ap)-_MPra=8PPE zYElOf{{VV!XL8r70h^Y6l(t}RtD^1ed@a>*A-%4esx$1t#f?kY`wdCFX>G^N5N^-n zlQTOS#sk&C1f!LgaSdwg@(StM+(zY&d_?mB$-`x_1FNNEW88z%fN^6|?;IU+466R~Ga}mcXGy%7_;^d-S-UzK;%gIX2)b$&|&pwEA@cQa@W|ob?pKNeI zGkAFPNxXgRk&e3@LSN-l66U%>l%5C?sHV&A+GxDsx!#V+c{UP`gV=wtQkBL4s|N%ZC!z*fLJ z^Ch?!GJ&C7>j&tEyC1_i8rGX8ouR`+bgFUwRCa-PcbTsBuA3Mw(6PvC_Nxzz^{#jF zs2#Qxd|K!K0G8i+UEtX5$2~k!>B(n*#rSb+ot4fiySBV#^i;Ai^)3kdkZv_(S-0b4 zggcXXERov@y{2EPkNj&W^;sYJlKPN#jd|0LzWOEX^UATOY^HYxMek9&Yo+Gcz0N9r zq#dJb9oewtmgM$U3~ha8TaD6h_`4ByrdZkF)V{18qkE}OC3*SUit^w0r3uc}d0VBQCVE zpXRbhV|CeYo>1TX)V{18qt(l!=kZCrj5pR^PV8Q*FKNy{%(!B66K>b}(e+^M9X&z_n%Z{h=Mkjy`eFY75g+-NleVlJ z#IsJhlKI?n8wj`~>W=SIIJFStJ3a1A`d){Do-zE(%NXEv;i7D%r;b#8Qtb63i_jM7 zRL0x)lRlcDX}_Mc{L9L>?rGC0vX{>rm(*b>`lGYb{{Y0eUG3*h{1g8G#8_u4sQ&-} z5<%_0%)GtTd5%!#gRYrWLlB$`wXJyTl`pD&o}~S$!kgJO3P15)5x`3C@|EU)NK`qu zEpPc!`NZzv`+q7vsdjoqyH|zwk8kFo{{R_b!%s>-l&?7Rslx#?{CXwx=`!3o$oiCa zdN=sP4LPjo{p?LUWrv4YK~jH}dGW+#2F2X9x>i-oDYIR{A5xCZ`?k*yjlQJ+0Oe7C zjxhWERY?9-h7(Pk0`)D=Ycs#NFSrFAMUb$nU^<5G!%EEZL!;D1FbuM%#iKa z{{X|Ze=^20H?{qzwDKDH;vwSeETM`p%R4KFHQTCxvfKBg>QUOYf8(mr{{V*n05Wg*{{Rs!uxtw=`b|bw z+TU`Qa_pcsCf>;Uly)`aceCidSnZ2nZ=@y00Z z*=P7QX8=6(P7RknnLr%MJJIE!J86lH4MVP@J7yxRy=m3=4hUAbA4q>>_)U5Y9+UO&~`PTx%o0% zhiN}Ew7TMfL;!;FdS(rPDJ5aLh zR;i~cp587LyM0b+Z78lzZq=7NeAeH4r$DAKGqsi0XB(bLrZ$12t_ppL z6P+;BNb(X|r0{!#s#Q_wx6>@shx#N!|Qyar%+6*&uE86OqwT<~e zS9j55yPe4})w(>vtl`9~nQO=l*?ps)u9khA#ofG>y@m<7fy({gFo9zjGpOo*kE-=J z)6L7?iETa?En`M2OW3M|v_R-Jzqt{h#HsenXQrW*vBzH6?V0WM96h10JALb?8~*?( zZ!w-1!6{?gVit#GHiCK?*+VSZX(T?^1{2LiiBQPlBPL^oT{!fe?dpJ9+*Y39y<%FK z;x;aG#}Gnqo>lg{QXqRFjtZC^hgCne(dfzM5!X02Ook^5akAyh9;wlSc_coQH@&JV z=V3H7Pprf!DWwBO2eVg|W=go}DNM7!bqfI`@m_O{V|5tKR`OjVZ>Z0*7Myb5BT98L zGFq7*6itRVxR%BZ!$IY9(Lj|D!SIQ(is4TeWN~}>Fn6u@r8^13u?p&|&^6)l{;)eP zO*-;gdLQvs6w$V4$ogygOwMW3o~Ko#f*M>O4`me-ni<9CHm^PDzHs5GbF3B_a&0!C zW2VaY<+aMIh{rUKrQR{aUTX8Io>^?VCQ4mCCqoJSk@3CFSnO^JW3||gHApuhyR(|sA%l;(bmL90WRDck%Ew;f`lfl;EY9Mh z!6y^!^bccQW1+jcarvt|!xw19uc_-UT;Ub2GBw1xz%#CjNaiwWmx8G5!o|#qdT zOIc>W#XwzUn*70g$`&OP~)GwGizPkQb2W+xG$x&p@exj-#&`6iid_QHkkIlvB5MNsUI zA+05e8K$l#$&u~he{1hk@8K=iFy&=Y+2o&i8s4Vq#K_mWLzet>=zy?A^bNJTq?RTI z`tG+8WnS|Ay$-6tkQQCP9tb2>*DifK(ml43!!KjGImO)4i5liu_@N|}46aDWPZpUP zkeKZ=H?$Xf)P;cy{#?L zNgS=unn!2>D}j#o<8CT93p&HFIG`;)q8f;DO3mQ?_MtV~DTU%4s(jSae3j=%`^mY8 z?$ercD-_7o?1m>ub3oSBGxuCBg-gAK`DSCGBavQ{5p;2H8vg)Hn^6TdY+t2Qwr>2o zg{nBc^L}fci^hFeoCiCq>rYEY zM-0UH6x`0@=UTy3`cg01aPUZRMsj0*A}ZTNeYg>wU_-ML8r8qx0^~gFos~ zI;HNvsuPlgR!F+(6@snq#6u<(Lp6R@?V@dpcl5*`6IB~O&%+TyNs=}tB=!Q*tP*z5TvG(ebdZO z$^)1{xFOynT~KGo9Cr0xZoEC}T1eX@;g4%r9j8qbnV#N2xjD@(bAz-YBI-9MCZ{GG zSJIm!r;{C>Z~p)a@0*JGt;^|cf+C~IjtKt%u^DH;l{tDQ3(C|@8$U~aET}&cKPBXA z+dQjN2{uzZy?CS!*S*&Jmx-evM&Efmt&)Z+nc-`5GG zbcN^8Lg3bO<6u7}<@+azwvvvj7jYyIe)XYcSe798oZdaw_o=rQklHBZ6EX;2E=Ch<=TOe7z9}o< zW8jXmSpj{l&KB#@N@RpK&fVAq_EthZt=87*b}fNY#OFxq9i4_PS=r__z14lKfsx`& zosGAgN1XWcT1QmhxDG#h54LRm8w!{0#Qy-jRx~p3$mnDeM(a2vmF|{DJ=|TXNEaMXnm$b7rMDR4J6x0Ld>+>d7Z{1?$P#9H?O zlvtH1tY4L?V<(fEmk(s-Jpdo-zGMsSA2fpzrJ9bb(nC_i6oaTD#e8{-(Kijo>!_OS z!j_@&0(pkGkHJ(pn*(>JnZ0BCk!Qyo&C4rupg44`imvW+Lu`2PM*Q*<8>BC8oNS{Z zO!_jAw^sfiibI4_XnR&tI$4{V^z!M(?K*suTVET!a@g(1JFWOB*(#lx#3$|2z~{tx zJ4+^=l*UK=3y*_`=Dm-})ihY1#fdvP#LpS~mY?XDhuOD!eV3=sXJ&DM{{YbWejkqo zANY3`zO*y{0F`|raOj4fllO4v|G3HF}cIzs&g@?&(YyEQVWK(c$+CcfW$K2ai{SQ&3k1> zk*%MW&Vs7C8w&xR;CxNh7x^2jj^9V^G_f(a(nx`~{Xss^Y2<(5%u_A=(A)Tj=9m08 ziu0s*`G@AcMgB}S&YQPOicr;CliXW$!-9E8!hFqQ z@YW~?YM&>GUWG2w?PeI;;+rpKbuBIV@KQs!kjwSkKKR}>1AoWD{C&w=uQcY~a_E^( zSp`N=_Hhb@L~*s(jroH2JO^QRlWi&mK*H&;$`f#As$h`i@I5THRsKWvPJ;!QVpzOX zQOOu{_42b1berQIZU;lBL2-RQ zHBTJFW5Mytx(I7xu8s*E8)_o;BmaM}>@&kD)o}gWC!8UcUZr`_9Yj|fp`ATTpsxB;JkMgWUjvTmr6k){hQ}t+VUAGJ$@D8x& z{;5C5QI{eGB>1+{vPgyCjhb@) zt2mZ)zQGd=w0wx6$tVkm;&lcNRIL@KSl> zFO;>t_WaW9HY2@{CvDmRbsHPK&}ABZr3)uvWxJPZPlxXCM`5&rpDVS}$-)Mc>ikqg zQZ1QFx|5G%x{r1;JpJj6fXAY7rhK+&@%JUL-rmcv)k$Ew%h5A? zL%}Y*cqiZ1Nq*IkWI4IHGa*kmE07gsfIGG79;5L|y^<4YTbzBd%f(x=X#?DVj5)G4 z>D&}frU2%TuzB=NWl@aenYla11OmU;Ajgy39wRE{!5D{OhP3PHD2Dh4AtqE)*)bL%9o-R@w zBu2q^Z6DQjhF=BCkR4>Hbmq90{iFgCloOX!(pnCwa}*icr&#k$w5Nv!#yr1R_Kv-z z1G535P37C8RY`GNDwpdjnupcxmK{pRZt}aKK+w=Gz4<8vN%pLajK-;>pi_50k3_@o5&1Y3gS*m2!((p*$pI5cGY#FWT zEQ3$C?;6I;fnu0EqSc-he^| ze7U?*Z!Mwa%`}mpICh;^8y492powwr`152*$S4R`v&sE)gJ?cS4 zQ7)0wKkz_Bdu9p0ctjxC>_(vWDcT1<-}FT3_9qd0eIuif;7}Rc64!QYI;V{|^jiqF z0p-4$slUk7LJfkTk6AN6`H)+A?f(FKPW0g$q|ij;%SGxC?2ZuD>jO`EBMuKk3qWiQ z(F1QJW*=K8t4iP%xb|}tn%QDrv><`J7|@@)8E)2~ZRT{l1&GeUzI;saL}2oDbLppV zg5BBNKJTFwY_v5ZnzIGU#q z1s>`!#}3Mf*n6&kS5H?dyp;|Ce5+}qagv#Jd}l?dcB_X^49x0 z3nmbN=Ky<(QUSMVzVw8A7e#i=3I4(X_WsI#i-@+q&lHyIpck{3MSg=Yq2$uAA5Dx?4!ICpWt>~bHftsa4tub-biPjTrt4XYNg?PPZ<-?>#q7iy z2qmAz$(zgHQ4@H}8iY#}o&F78#Rdn1(Z4k|4;}vieO+WNZ`IIKN8rR0#v_V(n`mk0 zlfl1=u}gzu)jC6l%72Zv``57;W#Tf6atZ!zFSh%HsCjf71CLcRGvI-NucAv3oxdy;&)E>W`)b;IH6}9td z#|Wd-qf>-qlUjhx#j;yH18o)w9H04)SE9nGY5xG-@JeV=vKyA=yb?6CE!718+JN4~ zQA6O={mjp8-B96maDl_M!_oXajTcYh(SmwCP{SpM=-@Pb3 zGWVwr7T}uZo(MM^eU|?KMcIkt$#XB3`Im9gFmbk91TyNYJ+Dm-Bo_zb0cb&ajlK0oNkUYtK15yT(+n!vP z5F5jXdP6)d;`W3MrLjKB>mE6HD$c|yW6TXiU*=Wi#pv7m`}jE>p>8i&@hNOa1R>i+ zM%QZh1zugKqHhP?M`$}i@3r8XL%o%olWd^vWy|kSOSPriGcUQx+~DmR%%_RV?_H37 z@A;M)+euj_W{GSM$yGS*SUF!i$>-V%eymStpvz}6#n(`|(dE)sgWlzXIJH4GYox#N zSwt!-4s6eG9qvl=j?Y1LMKgzLqCevf=()J;^i2W`UEnj5-Yi#|`Q==%u*!SW{Wll7 zG`_Ix^_(+q;HQz!tY&sQjF9W`3iU^nU7eaT$2PK7^c1fjeV2$jM~CS5Y5U3INsq0a zKd(n;tx4re3ZrO_iwvxphg;>a`Kr=+Rg){74iRJf&((R8C6G4le4Tw{vD8VIM_kz} z%}=w?f9*!K`kWoFBkj+p{*<5gqqIc!aGWuW@0tGqkY0THiMVF>rDU@EQn{WgFD(}> zw3Qo8jn-7nJg%jU?l;LF06pq9<9MOh&YSLNS@`PS4y|benNu?oA-2e;y++0+$1xys z`PVKvR7Vo7dwnfzw&*lenO7sV_okY%Pic)udN#1?rmj- z-_}hgIxt&vmqi_b)mhv%&37?w8LYYR6Kiz%ARzl!ZN;x-o`aTQ;-xNbS9WdvI-~`m zx60m^KuNiUwkM)wq9J0{&XtVUiswtdKC4HMasop%ZEefGD~?HF%-(u;C|=STbfThg z%&csA2iroAHthr2927gYLfp|eUj7NfY0ic#4!o4Y2Nq}Si)w(b9f+3PQox)eoz8al z2DAB;tj^y_CZm;-Z-{;JyCC9(pBzH|t3|k}Sp;K1=G(nT=TVs)%--&5XGX(sTK@oY z6oOiEWOhcjE4|Qb6yO5KvTY=Ne^j}+o?cMbXkZov7t)ZIYTsTU~%=8x6EQTjjbT4og<{|odN)e~>guTtpl>C*iM;mfw;;ZD>*-RQ}80J~r7@y{Gk5@1QkWm8|Z>{2+G{PyJ z+Q`duOeU6{qeGO(-k~v5w=+hEm6r;D8ZRqI=(stPO>pd`0NGs8CT8{KoGpIbt|^o6 zOY(-c*5jEZTflO=DYy6XQW7z&FU;9^e(F{T^e%gT;GuOk@%cksb>;Y{d4t2iYg^*? zARnul(=r(>-VU}tnEAAn(4z^myqUwT*I^uYm2TDGb^viCmRZDwav2T#yxD! z%z#)63mjeJ+>z2dJF;-)$tz28xw)HQ5}63MtEUd+159={d#`;;idP1mIee4e=el6r z$?@Fq$oq9bJ(0v4ybk5WsAh?cWwYyj61q3`i?ZswcF}9SsdS;GT*d zM-082miV9~d}JLt>brR(TiMD!^%ETK zCEePm$0*Hd5R{Tt&$_mD->Fd%y=G}0bKImPWxHLXX_@V{vY;Rtvfft*aw-N@wg1?1g?X1It8rw-95zL-tWt{xMMKcgP zUN_8@(z8y_ih&?+PVE1rHfLFs7b;9|c$9impdE^N^| zL_O6_Ih@Bk$1;S}I#S>q?ibZE(5vd$?PG3%Kr1fX+oxFm@*ZR%wlA>xgq!C?%`+Pm zXf4fAEJrwIMshi{SPi*jS+vhBcdZ*-d{)%YB$6^WOM4sGa$a?`6G=8XQe-!?t?mnc zAIhW9Fq~FKY^@90=-CW$2*~Gfr;eab!7Cf6*5zh4V zafTnYbv%>E8sF4NEazLlGG_7M_NCYOkeOhW41>9Ljpq5_MFu=w;9- zT~V7?KjMc;R%AM5P@2~_ixTThP@U_*Yn%8dNeeFEAD|xO6yhc_>o=D*7t=D6qnghI z`UaDEc4l)OW^q~Ea{+u)eIX$?DMEH+k}8}D25|XOIlwz^m1`I8^_#%Zru~C{Rhc( zMVSn*hCw85%J%9C^jsergBHW&mP&yHkVl$p^aE4gyz%k-VZENblwez1rIs>*Y;ziu z6{)by+IaM156qtQBCGC%#VHZ0n5CvH#o;rbyBXgei@Y8DtPgS zuKxgsD);P>&Sr3XZ_Wkv>3)mPw&s#qw)Ylf5np#8y}5Qm&5DVK3E%!=rh^cg2T1JB zbL8SlTTFCqj>pTo+1Z?Zc2xEUhzRkmU}$uWvF>v7ntWl@)MA~j?D0DDQVe!Ro3*xZ z@BD7F%a3#7SYPo3+{2yX^xvnaKGT5yB|k`YdK9%$$o#>a zv`~qx?9F~ho;{$jKTS)->+eqbdY}yrk@SX}*H+ZCK--SI5{k*rYsDY=mIvwj&N=@8 z>Pj|}xN()o`H}RGP0X{rx3boO{7L~(__WN?-NOF>(PW#oHDR{O)bH_SSJ-d)iawCj zUFVE1v)f_NB$jAg{>sV!0E+6*?)=w(iYf+f{{V7dPLpd%OB(HLU?3PKL~#<7{Qn>N`P3W0AVIE&AqI&+#1Y2QwS-vO%;p zAa+f^nIBG`o7juZx3Oh9oA@fw<}cCqC!>~Cn^#oU>ihR6KWis=05!4On-TQtTNXn{ zAM14-O6Nw*`aPg~mLc0oDK0%ye~1mWYmdnvPKTgwqb;%EnCe&u3GA?}+GjV}clng3 zYL6%z{O(87p|TN1ADBOicF>plvhKkB@5ME{MEwSSJV{FN)oHHG=#E^u`IX*x6kn>b?^%XzOQLQ~>ui{I zj{g9&;m0aIoj(m&uXDIW(_!F{)*ejBs>%I4PwVWH>A8KGZ{L|8PLB;|o-}&hwB}+W zD6(#{Gvcy;;y1U}b8Ms=MIYK|vOb*}YXwwM@#LE7*o!n-M(rd6-^{n7M{P8JZ~l^xr$(BOJ9YhAUrVm@ zgW9{AN5N%I)4|P;Ki`UDwwe>dDFFT31pb{GYgt?x%z?K`%CmgI{=q)AmN4yH!M0=# z(_Ko8?M+erR7m<%Y3NbbklPox#c`^CYcsfWUVHv0tiAHb{rl6u#Z^a(eh#z<-J7*;Tv5GqmwJxc!R^;{{RwVzxc<5zv5h4-|vne1+F+;PC)6PmYzc#%ye%YK~brvsFtPs$(~;S0JM1f z%7tofT)A=smo8j`a^=gA9JzAj2O`)m16PbqXxowz>&pKCRlf8omJb);wRHPt=qTZ) z+zre_Mzq;ZTPoHF>2Uf+P{E*xSe~b?Pu@+01jM{Wo;H2IcX3BfcixDQ;WpFg~w(FhxA@c1uEmUnBt%z&t06t|u zrGF=;{z|GEa_!`-Ww?{V%8gFbU~n?tcIn(bnA&Zpc~}-fy^tEptfTFE$h9nZBQ$u= zrx*1e^xm+1K~}$oIVwfS1?0Yk z@-2?-IpuDG13`4*om+wsH86xhv?aU$(eU(wiTO zM8@ZkQ#wYDcWKY~FPsg!*aFOTx{px`?5N~DJ^S@91HStDcfN!p~5KL>(kR+{v`hZ zM7RzVF&X5ZcJAn@26<$E0d8I;2gWfsVtAC*PHRSEZ8{DLv5JB1>X(+PZP9HId$i6? zyayG+0lUoSG<5G*Pi?o6W@hrIg^s(+_+=~Uxth{m=Y7BK{mbXSAQ*G1cJ6w@-$zME z_vZcL=7IRHp`LG;j<-`&k{Fr=Na_mt7i~y(-Q&flPd}gk09jvNLnYqF9NG{~{0jK< zX=M`aUNI;)5>`xpFC`IE&|21cHKnDWZYZR!E!d&Zxd zI|rnUa}4&XxGws82^?!1{!+Z&F-N;|gYE|x>2JL*=sQ@l+uV-9=_4P(i}Ly7ZlCnd z5+DBc9-q9t)KR(2yZZNNo#w7FX_qDV=#IhZgB-$-{8Lo%;&^+t^T_^7%~;snZg*pn zkV6x59?Cl#(|(tsk6%4#{$%g*4j$WI5&r5w_;)IWhW}^;S7)>&)AHe{8F2Xm(PPEH;{#>#M7^EC%+pdRu|x z(GEKyfwvIzoOZsuYcW>)0o{fkmIlBM^P=%NJgZ3z$IU1jSpNX5&hpVP`!BVLZ&7t# zr^`0g$=Icqj)DQg8d`AHkB!gGdDr;w6jkOADZ*Z+NW1n&sO%e zj+#eELwEvB`L9#r@#n>dOzWSL<8I^9e2jTUi(|2hj4KwYjvNmV1j^?{yxqtLW!eI4 zcpf94dS5C2QK~kN7ncUXD}3t( zONwHcY@4@XwQ&rkt`}>X_hdD{#Mp5ugI^Z( zjIe`p05`U4YJShnZ6(?o4daiTF%+i9=qp_&7f|^qDh2o0Ryf`CQVw0WcAI`gk~!G% zLGi7O!=Z#tPn!wiMHNS-f%o>Jln`y9(Z`teMVAIYE4Q|{1OEWTxM*&#Y4GBh{j9>` zKC7NMtUD^$SRI?6+2o~k@Mi$C;?=KqEs5JYCpPVha=2}L9N?4=YZZ4j?sRU^+&#%9 zt2y!?VC&wi>IUR(ejVBwUEg-3J6l9sc$nwu&qauJra7I>A%Mi!WOe#>xg+WgwX*G# zgKo-Q6mjjt`O~(;`{uKdPT`o!-p2w{h!Qo#I?Upg%(l^;ws#G~Z~Q8&w!XUejwa>) z6bQNk-ou&*=b23$j@@XNaj~XtZY3adw^0UlKi-M1+T36@#f*S6uYwHeUza9ytgMC%vjXBQrUi$l;$t2lcgM{cDNtcj6aI6b)$Xw}AXBxH;PK_az~%;hO&d-xUkuCT!!PK{un4CuMcG zpMp%Bi?lkZqk>Y`jJELm)Z58BY<5%!d8;PZK0*^*KyFjVy*w6&UCyxyWQDG6%a9bz z4VFz^U;>$xv1I&Hw7XqBiRNEK7&`G>F5g@GvICsl zx(|v=HK#F8a4v7XH%E3$lLR?$>ZiWJw|9z;Vludf>vdijpT4}0)1m^~NG-Qitci{F zo&Jfe0k6BXu(ElXjp5UZ41h<#@=|_|)?DbTiA0iX)8v)VHh0=4T-)4&OeBOiFw9s- zB)5W0!z0gnh|$ZJ)zAa&DSXaGw(acc_K*^GayS;Ws2>wuV9cyifg?L5$;G6_bOm_>msWo~~id zPTEnRbNKW~Y!SFw{nsfD4EC2ewjpEk??#3j5N2%p{{VMWvImaHZ)fg61NtG(I=(-0 zl+Xa&#m%|V6P6iTY}T|XAg3p@*}4oiDkkN7i>#zUcYp50P;ktW63ARuil zPHt{xL}?n=JJl+|!=5z~*d%2X!1kViU~4#bZTKln5%SRf3RY3Ov`)SYjVq(nX16kc zs%d0yY`&$w2_pm-S-NvQ70B~Q{F!aY{{X6>wgD>Ea_vJ`SS7!(XAx7xIZn;W!VVCz(ZyT2RkQK}ZEXD`-*zi&^Yn-oc?D0rX zK1m4<(fkk-<{T1&I4Wei9L{f~7T|cPBc3;QgT2R>#Q|rM?GB|wyl~L9I7!U40U=4E zP2uO2b@`wjrxLp95_obzKZ5Jox~3N-y^s=Ja*H*+l)KN}KuAeQnV98Eo0e1qu9oUM z*(Pqy&=OyoOQu|<%mYvl%$EGrSH7ioZ;}E_jw`%eqq*k0H&g_Hocblblvn1RodErO z5~%apA(H3`bqR0HKxH9z`u@rSYl6#!fS=7pyj&!?(E&DN&2j!E9&SY`b-kp)_v*Pu zUHi$q(VJBvCD&ayGm7F5Hy|B!mrdOcCCR`vBWCNKTD30i{CFp{o-2!wG;A5W^|K|n zX3LWME-2V{;E^t=ziQ|ro25%+x(+Tun|pCxag}x25*Y_3pcOa*qRiv!wMZeFPg_I+ z_Cs}YX_dU1mC;8RYDroE{pDI*PYki}|ZK121vd6o`stt*p^-jvr z+w$wt1n19DHm-Jus*fR4xD&5VC2$t|C%QzAl!S?PaBUEwhh!fzucFJzc7NN(}_uYYIzH%8y4H(nU?L>{{T_}eU&J% zYKRE$+Tf-!wY)QF@<1k0n&sMl3He7p33ACJZ3`}}w+ya-t4{CpASv+Ig|+_fn~-tM zr$k~coUf4C%(uhwS7O+zmp1ZFzzPF3lnmXjNpE9r%GyD&kc(!P{wSp`$Wc?~IUD&P zJl}VJS(iMAMLQ^~9Q#KDz4|Xxivp)_s?T}j^H)Y3(92}g+<@}f_G1y9y{MZRSE1Ni ziGI3XAG*CAluT=MYM4L*0|^GeQ?|xQUE#y=L}A#v2L7t{>t(6S`>A+pf(L_V>0*7w zJYRCSF!ncGjSAtaV+TudQJU8HAS3fv9aMr6J*1v^!~X#3DBU?eu7LqDjB`!hx4~B) zaVEL1Zv@w8X0ko42n$wd;_Dnx2&lnNO1Ze#qYZAX+RJ2vT#w=3wR+xxpr&T2^|iagn+X#Qp8vu&OsH>&J`QI{OV zr#jDJ@<4jD*sUBsyV|JFwYYUYY|oD0#JsL*s<~b>%Iy9( zId*v=b$(GMb8^Q6tbNNW1&*#uJ95|;W)?=ktovnODfO(XKWJ;EW4}m|P|>9!vG7L8 zVfc+>xYSAhWech&b8h)$J<2P)i1?=qaYn&QT3@cdDL?>N=((LUCGY5{9k0UWEypgG zP2-rHyf~#LqmM9vewl8Wa9`e?e$Tlu9d+h_d9ZH15?pg`zmjdwJwF8Nc5WTwfJ^)o zjL1&9Fkb2tD>B$Qwj8r0%+sK3pXESG=W-60oACq6B zt#SIx3m^kG)wWyNN(Z9tWeDf^Cl|`&BWa`lWivJ&ytlVi5dKvmnIJnryLLJA(Q1am z$($LhH129AOR-pdEz0&uH(p;91`WZD&33eDq0PZhO9t}IYh3>T2HkpfF3w@J<1;Y0 zhkN=WaZ?zWH&9bYZWds=pz^r3e-fxUX=o>V``d55T#sV$@^!-gF9CXY>8FhL9|gje zNj|byAUx5V4UT2)HYRwyDI2hr{AHE_^InhUjNt6a-ftN88i4b*YzQy()y-o$fZbKt zb`uAUy}Eg7d*0(^yWKQ*CCYN@mcSJ@89_|Ul(-EuJZx3C>EylJOGzJtQ9P%fRn2X^ ztEsdphSc8W_V8+XilN`Fll<0J>@wXUazRhboOO}c{$(R685q^AD$U4h?AG`oBHYB? zay2N8oN~1|$S-7@#*XVM4l&&(@2@1|BY6GErb3WAb^=p;swYTC6yQn$z_fcyj-9S5 zJ6R|s9^`>Zcjma8B(u4t^-ijR$A$VPfn=UK8zx(`tB^?vJ)k-yz5VG~VAl-Gv>Z4M zP#v$bmnmFj9C#-A(?_<^{J|Rq)aaaaP&*Kft#L1nR(?B08Fp#ozcjl+u?<4@9jjEx)X?((NqggJWlUqdwBs18x1Z_$j=Y zj?uZhPqMkvHLbg}u;P1{oc9OjCYzzfu%#U%nf5mg!;|nbA*wmFh z=J0G=FF*;@WQ6w%Ud`$LLpRt;;K=A5ASu8Pq<&&qq$`;4+(*=^pIP1Cf<)CFQ2 zpI2$zoMCSJDxNsVmP(Nzd=i}m~bDO*Mn{mlk z?8g(bHK2})9ITc7hiPxQ0QVAK>uJpihL-hbXL;G=X+17tFf_?ujyIkB*4UE$&0klc_O z{vW)SI>tGdJo+Z)C9Wf)0!B{QJ1%97L6$eT z_Dhe!bfVK(^VFtOL_}V-t$X+<%q`k}T{J)|AOV@fxTfyGHX5ZfKh_UwX8ug~3~v+z z%+a?uXNMITb6sxFies~8%>54(_HR2wC5Kc3i7ww&I5?kch173nUN&4B{JLfLpb^mC zW=)#KN+ftLE#dr1CYv?qFAXi;m9mh_xvdBZSvz9mmf)o|jg^^R&wgbQBi74g-rJp| zTKAzz4EMBfza{lINa-CMR}S7=m27-Zn*Y4Jc%bkb!5dhIzSj!7lp>vyYefu*huYl>i`cW4bfP!JY|n~BqmO`1Hf zea-o&?%NByQ8@T1MME0b6BWE#fQBep69Ze6KH9D^_Fhg~TU)93@0uZIN2d~;!6TaH zhP8lm>tq1xXnRf$b%5fhiU3|Cjn2)?_bHh~Kyc3Ady>PNDI6Z_Y2C>QLoFn+zQN9U zzbyiLBbzI`F8+5ZBd(Sjjoxhc*5zFDx#ehXT$kp69QfW_c_4mHI&e^Zt20jYW-(Cr z+DeNv?^WL{QORK|jgF-o0l7`wb6f6RyN$X%@w(pRLB<@qWq*(6riw=HujcR{<^0jH zu*m7oPQzd0-Tj3i!)LvVuWm@T{rN6f(SDi$pk(rIF6Z0D$R$&SRTlcUvTLx)rslmp z{1IkO{I_hs9tj;+KiY4($pD?i!OjkW%mHwUPA!XqCTb<%{JrU*NMz157PW!^VTtj` z46Vz5xg_zJsqW2BP>M?QgG*uA^y!2lq__b_G5kkY-aag#6zf%I&5 zst*lU2DV6C9LwLHWDTiD2pNuk#kiD@0BSQn-1#fU8g`8!zl)Q%P0MEbKA|zN?aN)5 z@J!vela=Xd=PY(e91q~3ijts6;Pzx4N};q-!ugov3|9(gP|xP#Je}vXq-0eCGb81$ zjDu6zIKD&i!xAjYuxL66?tpJ7y zo@JIiz;?PIl+11nbC}0?C>gAja~9?Ml+ZvN{{TzC@d;B3^GVOF+t@C2GK&Kh?a>jMTE9pliMnuAnH_LG$vn^u zjtY(4y+hSHJS#K(G_JQk&`vPET#R;{$x@M*vc@_7E>x3YqJW;uT;Mvo%EK_o9h|=} z`IUUG8M8Lm6meeM@m$tXmC!5s8Z0h_m_7;Lq>xvdK$Fj$=5?G*lQ)NiKI$i+0a4Tx>Wlx#>__ z4uUu^hB6krSLZibylM%yZy1jdr|q=8S6EYF8?FfirGpBBbd)YldPk7nkt&3M2!tL= zXwsx8NbfCF=^dmep@{SndJ6=Q-a?lq;y?NK?Af!gIoc<4mTP5Q-^$TiE8p|p_cJr5 zcj~dx`S?yce*KxZrQTwRyF!wA?HaI z{SHbd?RFjt$M`zP;fn{VK%?(j-^y~tvRns6S^S&+P#v@!!(PS&|H_bTIP_Sd*-nTF zr@v0@@bn-B8_u$7A|^u)kmN|r_$A(sKUY@>A$;QYfs8<;+=RXacxR$Ek(1@0&avm* zpka(mnM9jdEkrNxfaK67f$t$^ZL1P!uuAvZ%E{Yh#jdP=9tn3WUK2)LCIv#{Qe=)? z+-A>Ba_!=_19NEx8r0w86Ngmfz4+=MrXX-c6!N; zDQBr5+8A@Yq=TIt*2apt(N~gobq?XnR0Kw+8k`a2qe8`k!B{g@ng(MTHD^1xJV7N{ z6>~1#KE#P(A7+UeKhaBn;>j{|WKVV;DKn1S3O0MN4UcVlKt3IrWOcHak&=F{Nq>3w z`|WMN;>>H@{c%g;$fv`Y>qB5oy_VL-fAE|}UL1GSX}Oeb=Tyaw`3K6?<;M?L<@1t{ zkA}oBALW!qYbQ!nJqW5F*?zb4(oFM^C%UmzCDmBL(bi__dn{*Vb`veFC>up%^a~p2 zLvC}EdoI;I9~L6oBb^pr=rFlh*9;nVyH1~RxXObKbFVfe`HL8mT>&hOhLu} z6*~PN9eB7sn#q>?-;C;iKmET67Rmq7VoGqY?IB9s>HiJ9!vA}1dpOeqSl&=jiD{qd z5G>iK5}QPdTc4mfkUl{cd^JeXuU@JDYV{L7PV4X+=hX_mqpah~Bq~J znQS+KPkM-*&k5e=@^vcrhk)YlNV{+b=fXoEN@M6Nrjw~{~_?L zw5+B)nAuww=Vg4hZL>psGNoSfC&;(PaF*ets3+5)mwcNntNC}Ns=xzndBV&T*xPEm zxKqgksmH_M&?yTTv4=&?8~J}MsK1}y2lV#wj6aS3!CXL@-X-ulxF&M)gHOBNM!?H# zr!A*0u*@h>ciX|~`PWACjokZkiNWonSn64F8=SoQ)Tq0sV&!4)9C6SE?WZa4csilv zA2O?SI#uW8&FO&e21EL$ZPqZh#IC!2Tysf|&uoV%y$IB))#{&2VPM_WF^FL*D~_ zdOw2zVRu-)e8RaEAi{WRMuxcUd964#U~ti0w&)!#DHiJJ2qaOL=f)9Y8&>7MU4j&9RM`eHEKe$9Re`{Hv z8BQnvRFft}l_y9K%E3guQEW6l+m%w9+B9#|RSEm(Nv=CSDqx}^Pc~#g!tKWp6^Jo` zVXewKe+;LGwM|uJ*b#o#@JHeHKaOVfYcAzgwXaq3`YwgQW78icjbe7MonMP-mgr@2@q<9Eh>riM0xlvl`u-ZB-#yGF z602i(d$jC4YCcOb8C+D;+ol5isLpf3@VD7~@sQn}&Sem;$-@2!(&1lu_*!iyuPYkk zxXZd06BKBp+kaFQ=hp&G;6~L>$!EnT*6rZQR2~Afe48GQI`Qz8xGSKdR&gRMnsv6_ zqQxbLZrncj+E!Q-?U$O-^m3Jx*F1fI zo}TIv`8fHB!&VdbqofWy?5o)7M`mMaK%PJtt0PdwHB-3Kx7u+(XcakT8;@9$ijWG- z2+)n~XAirO^giwJ0$f@UpTVN!GcrV>6XBeivPj*E^m+n}Wx^FvW|yQYdvVB@l89q< zUrFaPii9N%VJ*_AJ_|PS_fd zXM*rQzIJCCx*%JYs46*f$n6X}VwxnQNf7$(Hu0-;ba8I{uqsA&X2;Xrl_3A%$0js0 zvVw$u$rg5Oy#^PZfn_g?}Bu7 zuP)R3N+@XCF3X9i=zFUHlCT$Rj!(U0s9*-L$+oqO?Ya(;$+i;b&HhazdUdMB@!swJ zKX`MR5A^DVZVI1|0lc?;-DtqMe4zs$*|Gryz zCaFsvq&stJO3w*&1y1R3rK1=J4nj$ z8Cv~)#H6pMoyn=_0f23~)FGVMbCM{hI3rC)lSqnu!rfB-CNUR*2((k+cnGhplpd~* z=|Wo6Myhh1$^1ck;gfq@52hs}^pN-2vlXjjV&Z1K6#%9jS{brztXJW1urcX-Q46@VG{6HH|!DA<@Fd5Y_J zwW%im=f<*lrJw#)jvb-z`&syNnZ1%g+b`Lrfr_jhmHG+mzst~d2DDzC7~}A?JhEC$ zlMm99$-+py>$0GBS!-YPPf+1GiBSM~87$Sj)J4v+N;km<*9N!DiID!7b2buf?%t_* z5Y6e9rx5MxAHaVHjZz%6n+^S}yZun}**cBsKa<$mJ3s9zAV3_c2{QgWUf?SORp!dO zxXR;;zIpJp{!m(W&JAAn6vMx|Z4+t_U+-79IdUv~o>Q(Gntpk3rJs(Q%_CiAg`?y=M*QyTWCi@iHI11AD5e}ANBJUtW4G@01jXu`3b zsVk@lA+D7e8dx1&_K*S*_Pe)(L)Vf%0Q0RNn4I52_5bHI4?4D5GBd z;45{zHoblE$~9j@bF#J4>*2O8Jbk>3Y7g9H6;_A@hu*%V@=~H04v!D z{igrf@C{Trj?g89>1nbi8Ab0$%<_rRa$~;N83Q5UMKs)ax%KR|IPF>df~XOz8KcGK zlzhtgQG_+jaFP-GZA~Mr(EVPsuBOtj`YF8R!yCmlm+%wm*G?3S=gZQl57Ec2dcNmo zkEHkCM?4jGON>dJfa!)$%-Sy63)cHW|7rv+d#Vh`dMu(4aH6u>%Tz1uBnL_?9|@y< zSUduVZuT@MtzMQ{N|Z5V{>T}WKgJ^-j z7Cg*ijk0nnLl>*t&-Z;~fy#`Q&jW)DEIJX;K;i947yDR&I7tbsX?3E9D+o3!?N)J! z;L0{d%e}o?F>~L6D78TIdd``05v@yXlgIr2H4{8|h%ji*D_|P2BI=mxvv?$4%9FB^ zazyiOB`FkwC1045T80@0yOdCjop|9Z+Mk?i7fM1i-+9edGVw1w+W8D%VDzKzk@+Dr z7^>0ZrWYpjH<6HFV0E=az^;%JmN=$v{B%|=$3}P;Z3hkAIYy_LQ>Oi%O4uP(`ko+dR5OcrM!q{2a?;akNGeTL&zA^CA`ovc>e*`(%Ajg8bjlOCv2#%ST#sqsQSD+8@R{;k2zrHod87{I-vzlw@cT+|v$Q_b1XL~dY^C!Xsj_fxi{2i;kBY+m3kNcF-7j)wzAP|Jl8fM2 z+oR2dDz|0z)hr!dw~J=+S8?FcB`?s*efi7jjYS^?8%~w?32Z#f&HkSnc3<~YVD1yi z?vevr#;-Y6;9YZn4Jsw_@v|gI1aSh(7)u6hGvpesJMjd=JfeL$;+jw8FzvI# zo_)Hdb)(oLM)J?KN$$?+ZJB%id?XR*GtTZ_gUUs$F9oJitw^JD?>`ZKDIMf%r-DnL zQJNbPAvFBy9AEpL8Dtack1bfb{7O^jg3JWp6J$t(GSC)*xO=XB$r0h8{m72=h$$01 z+P;I@YF=}R-$Uma5g6s0@%Gte_w#-oPN=y}8fE436bmjDz}HEbsI|M%_S%-Ij6?Z7 z>oC?K)bwqf-!Wjan6~2Z$;$M3>WsgksnHr&3rt}=v?T})fdjMR}Wh%?1 z3;jGI;)qj4ZA6@83t!sDSg2hfqLg5_`B?L3PaUdoC)BniL+y~S+3*A=t2-N7>2B*Z zBr4~l_u^k!1(|*tJg<|=tLn%td;FkeMf)J?R9}pGLrd53@ISt;eMq|;OGg-X%Sup;?wZ!oH-Dba4A{>gw z$?x^wM@>9VcSC$zmcDLR3|JNNVQ25EfU<&Ebu&0``Am;MIu`T6EmMR}@|Cp40c;=m@I7OWt`>n2 zBk(C~MZuZqr|r>MJ0is>bJ^$iWh&06!e#qzl8O+3CT3_EKLKTBE*`p3Kj246h|`a> zP)O`&CbtFPa|y&35{db|gy&jqXP%m_O4eL5LVm}^*)x}ghE@?COY-}^@z$pvv7ld? z$@Iz|Uy&?|zI+l3Tn+UUmDGWG>TsDqjBE5xHAbRaqv3ivgU+GK)Jv-~j5ZVDzbvPB z&K}5b5k*FQveCfZ&|KVBLlbsx13dNP=L1~U)3fvPT6fwd8-MKsi}3rFbea1(^Y@v? z$Cbv)GQuI2vx9byUIaG8POab@u;mce9d?lWR%PHSr(*u#jmDL?q7K6`=fdWoV#b7v z>hI%Y6Ere8QScMt&DS;QT0hDP62cP3&Ur_zeG5HP=VJegiGwz_9T{F`raGVTxVCFt zkM@I_ro5CtmH3=>{3C92>>Ev@L^3N+NB~Yq2z(}nu z>jgkzx#+A4y;0&P1U-gj6nO0-Eh1#r7h@4NdOC zTy%s@Xe$cI^ES1KEGqu!ir`tJ#taHifX_%(X&TR?G5$M7^asG4DVY_hW6o1yijU(b zeuOtUq6JwaJEF+QuOyq*x$4;%|KuNn-q@TbuD5OhFAbXqt{?3_^45js9K?V0Vrdr!upx!A>yEVGX%ux7wN*8 zAZ-h&-@ZaT=j}>x<1bQ!YyH5DU+sfz`l@QG0=-kkGIn!PHULc>NcBV8(vAQ&f$V*4 z$gact9Vy(bt)ooi#(HfDndDzj$|;`I$Ai50)I7q1p6 zi9gcL2Hexc#jnFL1E;^<7Ir^17ihJbcw*#04pj+T*wQNQ!oo2Yy)Ge6aT(L^eEFpk zzD_<4LPciDwbYVk{Qh&BQ`feaBZu-vGcMcLy7%)#f~3EO?@emc98FClu9#*o7U&u1 zscZP%?NxSQx|?}$CJ~mGO0?^(<123qKNaZBWJ(13=*QAPLHqPB|IVv+U&;SK&dsST z&`E5g7FO&WNfo+?7?C_}9N$ge1eb+MKaW&KUIINTPdMX`n=AzCYw}a%4qBDTI$hQh zy=s4lK^#063RGU1!V#LeyzI3UU^B2hBpyFCx|>h_?VQ|(+k-x2Ki(5C3hhs7!#jOj zSFLFE5=UC1s_fMSU~G?$HX#g0B>ygTKNU4d8_=1XciTq0JDltM(eUuC*^6>t{&BiP zlZ;@y2G4xki+_;qObpgQC!d&Pn}{=F(92%l-JE;@?27TREOe}1{pxKu7oNgSCRW-fRA-51-)_4VZB?^E&tk;7AS3rm)w z=gWE1-mPJe;}l*)t`3R?X#1*zCLWjh@F$+ila3qB&toyGZVFDk%m=T(bdd6Oe?)-? zhzt?$N3vKc)YKc!kjWx{-?r>%@6w!&FYLts#3H+7xDX#d%G)ukn|;ykC=1jHas~DA z2_LcR)IHTr?nVW2d)z-vKQAyjN9sbpaiPY1+RO-fY-i~v*EZTWvpzYW6!c`O8}RH8 zRy|uTLr+U=x1P3u}2F2C^+{$^9L+iY1>|+$AFGro*VykN^G(9wt3g*{gl0ZBGs_?>^UCE$d6>+ z9J;l}2dVsP|G|^0{5!3E)fn+tlU%^X3%OeHagQo1W4eR4GAL7(KC*v7-`0@?R0j;49S|Ji&eB;4pS=oHgKK7{I3=vjiK27O zKvJz3GdsB?FioXpQsLwO8J^(N30mSbLMd$0|67`ZE27E#|MvjJ|2N_x{C_SfOwRJ9 zrG-%QKn&#cy2oRgROjbC0~qoeeHHCX_J*IA{%FP_f}!Gp?jj@ zCNb-(+RoE0zP})9!+ShYe9SQLNi)>xcy|W&2mL+kPU(p0ueymD3%Y~d<+Q%|I}G&q z!*PPnyf=ic?UlUh?f#s6#_yZS1W8=cL{56Z4*Da}fQQ?q9^Unb<~O_Eu3Ya=apMy2 zu7&th1jZ&}ig;fnNA^d(q4JlbmMJ0zI>S>(IUXSO2m_m(lij zl<2OUEOMl5UrAvC?kM4B=NsX)dl96NeoWc2>W@E^I^uHiQN?V5#~gd|);~+% zn#~;ThjjS&tW-`yfUxwX{3Dzv=6sHSX4K>@$A!l3D6e4P#1p-ev_%-RsD=NNFIjMR z^Y8EE6&N3w3V$6|+`l)CWeuQ;!FIfAG;gR;O+Qolc}->?2wWfUjhSH4anUbL6@$Mp zDVF@-Q%h1fcZ@L+S-Ho8$Omhha2qZwN=d6%Sk#J8fe0NH^<#P_*az7PPx#_&C8x{n81$J_am_8u9 zUi&t(AU*zs%%3eq%{IjPcx0JVvcab@XnK}NldKf#b0GCHpCH!|LBGsSkvrp4U);AG zJuoN_w|WpgadB+UUo+`x+HkA#RKnL_X0T%c*oU*Yh30y=p5kLPP$IV~0*zmXp1 zIQx}#&kL!?Y2JG%s@H3{+ADo zDfsVN&tAwuI5kEVmRB?O9#Y`-4z0}xO5uw50jj|3avo>5$~21cdlowSK1PI=1mLG@ z^s#gl4z%`C6he7r`da9FWn?@Y@b>LE>VFqxI9LokF=Y=`-sf<4BuuHgWnzB6d|^_> zQ(BRvAwou}fn1LtqoVM0vD%*McQHqB0c?IQ${ISq$zbr`OjT>+{zUUOd5{sbd~;!d z;NHd}qu}_KeFMYA7Fi#jFxvl%F;(LGDs)BNrwG0+c`Qq07vJjA^6D4-8L>MH>0YEG z+PAay#88FPB~ah}Hi?F}Vki38#bVySnhWNr=iqT{8twP!n8}E6O97{CK&?vj)HdM$ zS!Ji(ir>vBt(^LKnLD{v+qKDhD;m9O>F?XqzwTE%046U&B7n%07mGsFxuD)CC#WI| zvc>>lTbv;m#cqvjH;jLrbeP7n?bbJ#)slIlyCS20g=F3%R;71=U^{8Tp;;Z;-C)zG(^al}uP=!E=&uUzuTQX|6zQ;6z(FQ3%fEGK5{aVT;+f z$OSQ-N}?9R9ATkG6fqqWa^ZX z;)CccAIyWwX@~%5eI32dB+`_9IyTz!XPOQ#6cXJ^?=vN{ z?uD=0SXSEEUf1n#qUdEsR+qfQCX2RoOP7?=xK(jelt%4k%$tBrH!nSK?7x>zi^$n; zC&H}~@9;l@3F)O>$>YI@${cWOuL>cD+?|Bwhg8A(M%ZCf8sQ5*;l36*aZFlh34@1H zN}nLxRZYegXYfgx6)`bh)1{$cYvmFp@xyKSsovxAS7H4MzZeT&2!wzbi{3t#L8@%N zvQ=%b7^{~?Y7*cEk!KgAS`?%>p_h;t%@5&Rt3{@tANXoQ?T%(j{C28F6V{C_q;EUK z-|)50XJ_XS39U3nIH|HWA2CS%HqbR!)vQT$hkv{W&+8j33%8!mY<$-KYNC7Ct-qlo zd6@&!1>jJMz*|CsatL=N_WO979zK|#xwu*H@!(aLT#^g)!<_ho{_)*lrb-n1wji{i z3h3*7TjKGrg0_e)ZeDlP5AnytsK7+{$BX3h=kj#H-=?0=!4nC)q~9d1&q*=67LNuS z$8AD~@fTQHAzN(#tLQlU=B->tXw~~TN2rf)%o{);w{gh@L-4SQ>coTZ;MV~*J&1%3 zCCjaZo&EBef%O2XO;^dcZxs_>Gc{aU2Ub2ZOx_ju;=N>*>%T#SBM+@hlw^WqK zN|Wo4(X)1T$dLlcsc|sJp#%|N_3Mo5iro_YBn}7gut>>?Pnv9;*2`sB}zoZ1X+{)l!o(=&*ztdSIivQN@q%d_hg=ajg^XpJ@H5-|4ZN4f;tA~UX z#wQ4a?c2?Xa@?!76r$VOj2S1H7T5pmTRb(}kOKOM44*h(Sj3mrRm>uv%l-bF1b@k$ zwWJl5CqEJ~!@V@3rOQ6@uOn%svrE9Gv9q`|ujhS_gCiKVP~I;dR*SPo0okZ#-F)ng zR&Pp!Cs?Lg{#tZ7$XrrEqLxh98#c?M2oF79ixH{|e;0zEXxLJYX+z5JsOvy9WA30w zk6I;KTGxwW2E{KNYr1u*{_r$L{0cpiDwkL(OME&d2L7ELSXXA}Mjs9JA$=nW4E6I; zCxW-Weo~5QJ!bxP!&Bg4NyP#1`-GQE1nync0-_6%YKg0QUuFEZ!?`ubdn$;}$?N1& z!lgV^oLa3JD;#VolS3~8LjfD{Mz^vx{3w&JGwK-e=Y*pVQ|k>f1&yFX0%@{TQT>;5 z=bFFfLUO>bG{~41IkIqNN?w46KUTH+{MFcHg_sE&Me85z*I)+LR8;}5)3vxOht^>$ zz2N}V271iG%t8zF%yMB13f#}$ z;Ta`2fVVrQkBePg8IV2Wmfkvas!M`fsp0tU_Wi@rLk|$!!;jRhtBmKA1haobT;hsh{!u{bS~oT;4z8&g<*8y%hA4`}pss z^zoeHQB^6cDdv!2KFo#Po(~+pS;eNPFBaZ)Su~pv~&1QjccR*4_<@q zmWzB&0sPIMY+x~S5wy&ap|!^}qvZ=+$LhS?=6ObqGs|@TNc5=SuEeiHJ2{ira}=h( z68t3YqC7UTw450hqUdBX%V?-p5s}Q$`!m)~(Vj zn}deZ{0JLVUGCxPtpCCBIGP?##Hah`ejiu4;(Ni(P!Z`s+hXSPHa%gBioHiHf8>)n zJl8lpG}7`4ej`|#{9SxkA+Y*`Er%IX3jT31R5$16a9JMO)!xx;)HXT6_R@b&?L~a; z*wxuVD6<%W6!sscKq%T^0Ig74i{qpAuZt3*Q{HtRyEV@#na)f9YtqvTN_wPD{_Q$2 z$6l1daye5Bc>LD=*}vg{Pq2PZhXW%L#z#cWC*dyZO@f0!llL>dG$2^yUX?MOx{Lh$ zE!)%SEOZ{ay-Ws-v^;(*g#Sn&Q;3P^yM=BN)Dju(%(U`Wpo1lscF zQgr553uV!rh1cS%6+6XG^{Ak*3F}jR5qIE+Woi`Om1QH!tw;0Oh&r2smi#76S-FNt z+!^!F@!<|pcPHn`U8}Y&wsrqZk!frK`p)2KE|XnTUKSnYMT#?sph2^ zV;{SJL~f@mfXo{?FnvQ*RXirimOs3goRSlZOi!X!70_1@*p z`e3$$tM-*}Fj8A#P3h+_G>Y7z8ZVP_eE?4stfI4-T5H@TqXDpT*&fPvP{zD-!E;%h zmkP0*WpNI6koP@W?`jDrz!*uW+sXKsO;Cdlq>E#!>#Turwn*i{R|lcV8(ddvm1X$~ z5RU_dgp|a9X~9#zZxZcpLmQ!A2Y@&aATRmH#IjEzFvqf0`vsrg>$K9MD*?CLm!!ao z>tlggPwo@5=a20@Y;)=f=gH{6F5Y{2G}N>^zeowB83u!JqCoM&$U}SkgjAtwAHtpm zO7iwb{5WpTgbY?rIlUmAsam`XLuEXEWSeWl!kIrIm!=gQLYYCp1JdMP=9YB9zg|JD=uddW2KI{-*HsGZE#a_wg+@42?%? z{}5<1nM$Ix%>F&+-9|~o2k|dc{VJh@qGy*-9{Qej={%p2iA$oe0F&mhh)L~QGZ>&{*F~?imk{XtUwarHJWod#lTGr8kfDG;Eeo zhb-Qq@lr-^#cXSmj5@9g6sk*qTQ%jB{v!#mk}Gs*`F*A+e|nr#AU}A<@t86QBuz>0oXG}>ZPcBQBSE24Cy7Q|H7!=5{6 zKWaBoLgdI4w&mqTP!AJR5tZ!s-4r69*GmYWTy3A^Cayco z4D1&7*iMpqEs)4RLTfk^58Vs>I(#U(VJKXe*?_5QGhttc80_WGWA>&Vw3CfzDf&<0?sQIelAYONcn9 zggKKKv_xXT%tO1=)?Y^V>ElH2bMgC(ip}v}k8yb^a~&$k{l^D@Do&>+Ad5EC_p4ah zJFlx3L;8B8kB#w03LL6|0V?e3vMG_gzt>Tl|_)Kh*vw2a|PNNL} znfq&$UCIn3d+u-W9_fHm-k@ke9hbn|>MnuUzv=?A;;+)n-=RM$^7zfYMiv5-s2epR z_>)u_%a9;@&4jp2@%WIUrAiWy@0;aMHLWmWR|WMk1}~UXGxeMclk8FK&37rJSs?LZ z9NPspS6&968X&YiCegyLsG5)*cJKO=k@!gtO$stIhs7lJN#Y2iRH)LY_m6wa>1JHjv041|T7ww%DBMr7Ivwt|(Sz@|eq z=hLY+Xwdv#4h?<{kpLFvOrL`Cse!0-EMf*7S^EvN_POYz>|VK)s{%Bgn(`L$a;iPw z48hJilTs%-**71+t#)a{CRAF}ovIkHVYL&bf9c4?+vr_sj$^pRo-HjWXpsOB?6`Sx zo#%lG`?q3pf`!sKkhwpfOx|y2Hja(W7#gh*da5v^lb||$Sp&fq%fO@H5hdnMBu?CH z9R7-!T}T$^2=k1z&TH9=|H968<#io_$w3mL573adkre`EJ)!C#x7y@}QucQOkZvad zc~K6b)qM!8;K*rJ40sXvIxq3(6N{>|PqdnY)aXOj92*4eVVgFVFqKG|9rHa-EOpH(rmLAh_8MI45VG_ z7oO~dhq+UEb@~rdxOpc$!1#+6Nl38VxQ@>|JozS8I@q|(PVa_ohVq_9$qEmj=sP|1 z;e$cJ>%+2p-w>-Gd-dG3Ui^V_xorxjt*0=J4^3@sxdKpX^JhLizrF?27Pow2(HK45 zy^76U4)Z7$yK9v$ZS5+l!s4xHs6|*mV08RypV&$3{ZO7GFfhhioLyht+ZXTnORbD} z`E3eBRD2~d;FS{?s%F}HwPE~rT8j)Rd{e#%I2I_U8dlp2G#f1vIk2S&8}0E79sUOC zAi~T4L0#w({L^-CRWBRzcvBZShf!xN5i8vBfW)=yw=V)J`ylvepIPtgGU5d7tV>rEIUp}L~62^p>JS8>dz=mqweIZ8a*kvyB@ zI@p~5cU$CMUsmcn(t%#8@a&4U%zLTS33?*qr`aBR0lCfb=7#5S#R-by zFGAiReNP%gKWzQ|!Wn~Komzt!dRS-rqI5Ofuhu;#G?sCYK?1dA)QVmD|0ZY#?7$dT>s%i9UPtIRVh|Abu#$T=`qWIbDqPoDgz-Vu% zY;Pw}NEPk86f?&6J9;x4%l&rDOXixx!ru9B1lC?TqNud8yp2oG?E(?{kpTS&qH2v3 z@L8oXt@kVZ2d^W`)+3Q)nK>LOC#B4ln(z^0*MhLzYnkkQDrf#YMru)7xRCJP&^cTR zF~ZJsr=5$N^f(+6QaBIW<|9GJ_zjGFJ@91o<=yn{65N{FJXTCDTgodbMAy&;VAbBw zH`tG&c9X36j`A1gkILj+oa2k$4-;AzJ6u=lEOj>Y`wl+7$bDngD;7ih=X)a7*)*6e zc>&1$`A5)s?cAI#C%;T)8X3V)&i=zbat2SnxxKv?kJTfM{)30;t(mxk>~);voR`ze zg9=!q{CraDzAW3ch#DfkHP^;vsCN9qn_im(mZCF%wO8-IsJGWOV6J#KuKrc#tnqv6 zJDn`6=MTk|`F>H#!dXxvkAK|t|09!4kg4OI*_>@j6xFs7Z6b>%lJ%CjhMIfYUwY<= zoMI=Aavm;OGFVd4r(~FJce@q*H1G+e>30!^&6rusmS;6f$|CUJSJa!)gB7gw%>3+e zV3^Z?p)lg~7h43l63b8zPlos>J9462H+6~{Oschm;fCjjAukn3pzjt7 zxg#H8QKMco5L!VdVwv(m!y7x>#22->KV}Q+6`$=idY!?5re@AH1_;+>z=mslhTjKF_O* z*<3g=LmQyx&DsowLX^PqCe2infGJH1U{3aUpqIr`<oS*~~b(3P6PwE_>U zDFqA3`Ur0J?P&EbzdN|PinXTSE3s>A_0xnc&^4I9^NdnL3%^PpxF2yZZTpuhYkO)m zr)y_2P2PWW#FF;}N$u_Bl$APEgMC*Mx+Xr7xlgdMn?JLBS8+hZUb6~DEpl4}F?An% zfsY(sN!9%5w~IdZ)w!C!-|O&6mdOSG`H509ks*ugkMr_5F-6BD@3W?{_7FZ9c;O3P zjOBBEq)W|my(Kg!fNx{{IK)rBRWALT5nGBVn4K9i zkL!Q^EFPbjB$Gy?WVi`mionX!n8un8DQ2fdf33pDTm5i%Be#5>-aM<1SS2I-_ zjfR*>lEfz(jx0DlSZKSx<|Y$AIaSINPLO69=0Ag$v(Kq&9jw{k4qo>IY|TqXHWr** z?owJ)G#Rt@p1#|KakYG2=5U9|Y@O z>2edjV`Cx_v6NUbDszd(O2+I()EqB+PhO=^XACwKC57GHJRfI-nEt!veUV@uT(-L# zOq1ZVF$U^rjA4jUyc_;O2w0!U>rI;c4_?qy+|xJ~wrhcr)zUIwT3HY5YFHh-+seQB zmBIZ`zA%l@wI;bg&gJBmJ7)8-Z?NM1F=?}L!ZeTp&NN4J6q5t5C zPsx}Ui$*p@cVAkOaav{82Hn%BtRxT&R}rZe#5Y{p*4mQTAfp5}PXDHlUS5TAi_LVMHHH#JFxINPs2%}| z`sg3NwMT*@Tr*$(6z-JRw}Nv#j$WP*UBHfg5NxjCGUnkCtC^6OjAQd#wk`Nnkw%CS zP~bkMj`V(J&_UZd)c3qPHWloe0v0;kE4_%|Dpr)K$b;$h$*K@0Pm4Lr8P|PPf4Wqe zZI>9;sfKGpxPpQnvNQKWPM%tLp_$RnZt_NX==2fLZ#PK_MVX9WSC=xCoWfS)P<4^) z-M98r^Ckt1Obb#Yt8z1Bl&-pSwK!p~1;H*HDmYIBUt)!e<&W2Ho-4XZ34(kU$fhMZ zv~({uhw&<5>0FBsrQB;{5pzv)r;^Y3Cs6p+jxuG{UVvT#MN07i}4vd_?IT7Q<}< zmXF-IODoEMrWx?H& zcNJLf%5Z7FXmfBK4@V&ogG9f*Iu9=x#w%8-4n0WjlZFx5Ya%Ay~edjo(zeoUJVKbLa;%sA|I0 zcFrfeZub?X>X62z z+xiJ2sdaaL3-%(#@~%Di?o*HfIiA=01l%W7=7rcIbFgllE2aU8x-CjuX4$N{q)hD& z2S@YIRhwbXbQn zQ2e&0AA*tK75T9f3Dgd8WLCp`c;Yq8J2!rZFq3STRRzt+9ax0{M>-J+0*s67Wvxms67yYtS0Jw9FrTQcrVnambd*zD z;Y%xO+~%grTNw*mPbH-XrBQ)ocQdsM{ajy)hQvIRb}(muQrJQRRB^LocIy8pWo)phiS?WgGHtxi+PW$MBE zMM{}GP^FzVZzO$$lG~B4&S04fp~W)~m{i33-XcKd?B8j0#|RH+_NE_oLCDuMS@Bq% zGiNhk<*!Z_ifv`)_82a^O>|?(aYdUs$R)VMHJd>oG;g+NZZY?5cY>P4f&Ud9Y5aA5 zt7ZqI&2_D@cl~bZY^po&v&8HCIF5hh_Wx%76Y| z53v;{(o(BG1_-tr*A$G8xBxC`hiFCz&QOjUo@x5brg*L@LPn6f z_EC$cpH%?+rjvdthWv9S7v`uQxi!v!?G_hHCPP%$ zpWM|h&}>fYg3VOzgiY+yQn~N@Z*GWvM$uxml#gL_bh*C6Y_*z4t>hC zMkR;QvCp2m26txFU|r`2F`Bwp^t;N4QwN_>rrPSWyrtQ%e%auS&6Za@j#*VXcHlVL znvK>UZ2-*1=vdHGNG{c_ZPZ>$U4`m4%D4hs6JhJjA&%OdQeHJ$cPi6Inl8hC1yIun z_24hfMb4Jjorz5=-M^jw_h^vTGqj^LjO}E5Pl|+w$Cw{kF4QNQy{(GDyw!c}pP9~R z1x5pN+0D^Om9sPlH-eqeaR%-!?GM2<(>pFw%lNL{$rhQFhPk7*&zebAWG;~A;LfSr zyt?MO{1n7E_g{+P1+~qh0v}n{?2i=pG)EJ%rU)d@>s%$>fZcc?5EtLF_YV#VQB5PQ zyq|{!%*nd2Z)qvdm(_O*peAHtvJAemXs41)@9gLvQf?3Va63$m3BGFq*CTJ$05R^=4!rXu8fIy4#a$F{2VA4YNh~>G zao)#%C;`2j-OXxrt<2un0nv1`2XO57q~APtxgZ<_LATBBNa-)3$`ZCxSreQjJbX5nAZ&-*Z?UEgD3&6KP?o_ZSxKuCd(gt~>32`pB_wrLRkO*#G?)0%cEI>KAN|2ke{jDs3 zt1JhMO}?qNn@cgwKg6Tnn4fOZ3PUFIULVYuBY|`Eo3U&h>(1y&g*lPGgpbdRU5X>(((wYZF`Sn3+) z33pbv;FL?QW0-iL8BOO$(mn047w(}I>Er>@i8nE@;1Xkc@g z-a7tjKcy&IT+r8F_*1OebS%@E%)8Cta~vDRNG!Ef@G}q-1km?tPdwQWb-Z?pl}8Ms6T( zbt9sCX3W`iw;qd(j?1ray#Uyp-0y4J&^cW-)UmwX&#>=O#}IQ|U)u3f#{?NJ_V$l7 z1s7rT#lfzhQSMG{G;lS{Zv)2a;h>MS@avBBh8WwSb8W=|PEndGWXY3G14y|xpJluOO9z2s+8V+NjT;dL5{s;>($rxyJxQ+>iK_m2SzU5VuXKr@o@BaW) zj-AduJJ1r%31pV{_a)ss&D>p-4jL$*G!C;%?ngz;lpNM?xS$-&hqC6j!ACR~k-D+d~a)BIbZYcRHcaJh1%z^>zOiIp`eYedEh`)3^BSZvrcIl zA%wfPYYU((IyO1^q-I4eJdLN6IA$!j1z1!Q>ovM-a;-;O7FRXQ_wqnZ=g^MWWQ-l^ z38i=;@io>VD03$4>;R#oot@31Oc24CZ9d_7e>vEeDVsXsoI03EIs9hOr zk6tJU;V$ht&TY6Zb6IhhF1o0|61~i8n`JR@Zx*zH_aG=ZJ_qE@$vDjxah16TJF7Cf zBHbI14rMneb(&h;c-;X}0R}i(d5f5J(s% z4jGNd!7#bQFzkWTxlOroZMZjyOf-&mVl{EsRA?D+=edl{W5q05Hzx~oQo{q{nZ`$O z8YzQWGhFAlmlOp@#@z#*r|~X}brxnZ+)_Fj9V3oUMi*`f%rdwS?}`CTjV%Q0{qspR z{MpUy_PTJeQ&H0i9vXFht^TUvhA1L*c^n?WYp1k>T3*v~_5e+}FV{7Iy^r-pJi=)` zo7-FWDL#&nwM8waGaDmO7Q#S__-F2K{T%tYCF?+ zF$kUbr?3|0_H8R&Z`|UY6+931qRHarbW_J8^qs=|zp7)YcW-bq=sBhkGLDov!!A$e zQoa!tfqsd`jiI(KyVT5uu$@@$97+PN>wNs7tpk}-S~$yt8q;CTDa_q7Y1KG7GZt4x zyf;8o-plHTaOuHB@l_{jyb*oeO(U?-Irk<)ZM-GT4EvJU430cTFyPiU%dJokr-Ik# z%@f~Q_G^@khkDz&-Giv@BVZBRww$4^Oq6Cei;pyNq%sm28yY&56CjUEvewl;z!8uG zm`d(;w{oy4V{_a~vUBy3H(90G8LunyRi6y6o$fj^+`1>Q9B3Hg^673bpyg%4hLSxy zAaw|-rH#$FZvk?nY*gK%bOVw$6b%(Lhbv#G7eD+aqRdtu`E$QyW9v_OYhuC2RH9RJ)@y1>WXa z>cyN5+Y?v^UJIPCy09B+ z?kJVr+A?Z-D7PMmc=tBLsx}mCMvlvSC`!`6C?)41jb z`w9I**a@T`YqXl^NJqTYw|8g9xj^UuZ*8ql>K?(}6}3FR zOKx|36Ye$&*sd_P$iUY0UECj>EEnj1C+U?)j8M&0D~7N@-ndmp9&*Vc0Wv zcqQGpo0aoT+4Zy^y12sL1+L(Z!?1Sj_LA<%)bi-B^muLPk^#b)ruluncO1xcqVzHuY9)W@Jq4wQ85lH zw?fCY{qtA6(EXQxMDI52yYb|X!?L7tQweP`aA%5$uwB*~1E+$&=40%nbtxZY*xyGZ zu-JZEE)m^dWEO3l)TSon8G9(~Hle!e<=dgeJC)G}K+~g~-8pbieH(Nmw2s5DX6yHx zph>#76hqBD-YI<3_qcIKVc0y!(KmKVAm|)4<8ym*OSr$UpyCQU4$2#=v|V=V*1sit zac2YFe|LKA!OLUX98uVIQV`!UNLg=iSNANwZVQbq-K(@cKJ<1SgZE`{h@vK!_qGm7$|7mQe%1B&B;2;yx(~TN!?J^8=DQ&Id==fz&BmYI*KTab zTZei(4$6D0X1Y@k!CmurU!qe4d0lp+W3qvc-S%C&?B6qTtGkxAS2Zb$_5&#IM#p6X z5g%v0cI*y1E2azj+p*xD%3=0eHTfmjb`LBT^}JU)5)ltI8FOW@UAO~Y(mNMm-P(5P z=TO%x?2Y2rZx4p5Sc{^5VBRR~I|goCJ)eqG5gNOyyyzVx+~++r&Ce6ZkHH;}vaad8 z-DJ5V`zqg?ftcpMf>u(uEyqr1>|KM)Z>VZb+9c{&{g-=_cO9Kw!5xpXfr`kM8C~XM za^`X7njp9bEwAofxj7tiJE`cWE4iw3J$Y*Is>*qelGxi{a@AAPzOIzT7H4J~!;!+_ zqlsQ$5PUBZM)t>U3txh5{Z0!DBYi7sp1^E#SOC0_k@0Qw#`L&8PBZ&7v0z4MT=Oik zuxqQXc%i#^Mh&v`_-qv!&19w0^(`9wE~Y+M9_Bf(!u93bJbnv5iES<$j$%x$#3&~Q zHe>;hyL9Ku%b(+Xer$O=a!(P}m&oJSigVg9eTTbUXVo07zg}sz5F8(3W2PTph`ez7 zJb9;9-PY&u3(v9bmy(KSJ_cEr;e9?U(I)blfz38^PdOun!PDQOql@ik z&*OAr37Pt=jD;^BKM;=?sGUU8j&u=Aj9K)63#C1(uOi$=4=&c`N?dpKv>ZRh1AzSS2e?w|Gw?bH6lmWeTFFfF&*Eu58)!tq(*Ykh-fvxSdk z*BlTF5yc_{)hK`Y;5Mq5LfPS=sBC8M>=u~^dA^?OEhB&Vjx`PpL=vb*f3h$VLhIW2@-5ey>;sm1GAPXN^O=%t~-x81s#L=g^X z(8fhPLWc*1utZ0snoAcG_gE;)Fa1@Hnv5Es55nH;BM+B(Tzi3WKPQA-Z}m&)ZnVartL+EK=yOH$L6ye zTY*D9EX+cJqMA&>t(lp@;p)5L$G|MU4q0QoIVPi{wjY|u)YEJ=Q1mg^K=aYseD1Q? zz7_OsRhr`XBpIS{<~#frmb+&sqnm#Wu|6K>4m}mDQi-*jG~pxKUrcv{!0BuK;d}UU z*=L^)ACZq2TXFWl?wx%;NepChL}PDa&TDOJl{4E)>R{%!K{K>H7iVXa*dr=k-z9%@ z>ka@OeG^P2ta0V|^+#dZOf&oL=93{-_aJ~e1>1sKnXS^2>g_Lp1wA}*$oo8{sYJlpND z+G>|!wP?3s_St{tRx?xfy#syjN-3}G+e@z81F3I{I~LXVEpuIGSp1g?M}wo4uQeRp z-9Noo2(Q^K*4$Cp_H{NFEW~E0jxcrgx+!Zghf?;Vosu%wCo*FqyLwn#lIB8Vea9=Q z>|0k6i(T1AH2Ye>HsC8}n>Vf6DIE*=wZ1*CnmYt6)wXt^T$L_Xj{d3ajQ;?yMCL`j zE*z2$5;?jS>27=z_oU{#S(N-#hLOFX9bwn;Na{9Z`qx_DWlEAoQRqV+?mYS@8FX-W zb-PQxj^r5NEy;1BdG-{ArcW2Qrkqrv(45(S)GES;Q|$QNO&%XVC)pzqr!8(vKY&&R zL4~d%x$cI?MLT_FX?_7+5WYK>y8bBytgCQ+x14z^jI5GJ4%O}~s>cL!Nn*y6Yv`?* zV}bfPqUuQ?p3b|te-@WhvPk4M-nQrWl?Teu+ZJ3X9DTMx;cf*Z8)J7_uImzXzf~!j z-llsI$FFY2J+^S`?m-07Ucu4<)nAN*3mfZ` z*Gv1-0!*zEH!gOJ#ai6PA!FoypJS+0u{;jH2Z{+X8d)iP;^Z<+q-ov{FYd^0=2@~a z`LDqD4!y`Bo#YU;#jj}z;}UdD>^9B){zy;Jw(UDGz4}_p$fbOYxqEC7mA7I~oVzn} zfVwP124)Sp9duRUA{m? zhFIu;=1TaY%=foarTSHXkO_)3NpGk`k8a{i4e9U;h9~q4bvVqcj!=qJL*XTc`0LE^nOJU6IxrSp3w?teobv z`5y#5)xL-@XaLjPn;h|F$X%d6G{DqTOD1A+j->KZS^4gIA#ALuhqBzHbL}TP7n!G4 zd=fDhHPOA&4|xdMJF>3%>4HITV?{9BJGLTi zmrE@qY`$Gb5Scsac@2S5vb-I6gg#oTbEZpKK`CKv&;=etq|EnfnJj=s*>V+qFPYj6 z6L;?5JWv-4Vs~V>xAM1C-=o?)O?Smo6Fhc{u6y`spXZV{j${O`f^7L;mdVbiow~Kn zNXguEI%%O!%=dd&(E!+;QaeTby~(?oEaweRH7;u(Sy%*lyUuGKAps0^ZxLm8Yq={c zoO>aOjgv11=ykbL_IQ@&Y5~lYmh|eGye&NvKSw#ayFB}n_Fbw0Ne5r=MALU_T$Aok z%kw}-x^T=G<<1fg(QWLe`o1l_(~P#$ExXVV$26^N^1FezznX4h8>_$SR)ejeO)a_X zvtN)vZmzpU%f8a|l;zqk@m+KRrrmYYT>#>n#dcto22L8KUEY&|1FvDK(7 zCf><^1fA&uCFQE*zRCd?HFD$v-8CzZT@-u4cL3f932(bhGF`3?)E-Nj75!%^16ti0 zkWm?A@U{kxw45_*#zqu~F zPzsyF!8vuVb>x6iY_{l@_TjD5tk$caK3B?IbEav>T+20DTY;*cO%ADfAhg{e;GWl~6N*aV|_h zH8xS&9FkwNtE@ic1V9dH!K3lAd~Gs%jn8|lu;BGlw00~kfT6qB*3_;IIreU-G4at<&Dmow;)v61okX3giT8cMY*|j|n&8(oe=2lQ9QSrp z-t+)kU6`eTm&u&ToPcO2KXQGFgx0a1uBtawNhWJ( zfUrn!wBPe4nzn|xkD8=dWIAe9wo%Apbi6THT`QPni z9T0CrtJ>-a^Nh{8=c*4`wykR%BA!Fm+69g!(sA%zmoB}O0U7bys>5*S1ysv4pIG~* z#ybF~klq=-Clf!em6 z3P9Ux?gxUHv~bIH3#?h%b3o&&pz92-JguUAyI#+VSYmwAZsBXBzaZWS-4@7Wm3^-= zY;pa$92;-JNCb3uWydAf06O`P#cZPTc-D~YLl%M%HOU)uAG{(EZ1&4xuMXWyTJg?j zSZILr-pjizY?5~itF*WVGhMAc3&7-Gr`{K%vl46#%RxaDEVmrXxA=s|wL7)_?GPCH zZzuSX{{Vcdf|;j}2OjiF9frZ6?NnAzG45rD#^~^c-qMkjjdv6P+H4;Nqt+S*n{$%x zR%4TP>qQh%*m7zl$~fDuWbMO84v7HpW|P{}_>_#L8W%H&SMuBJ*)4_ckXK|a%j%^O zFlm*i#aPNRr)2|F1ThWU+;Z3v$v?qKV2~gd=}WmJE51kt)9o&`{iW7jl>oN`Ov!GU zy5^jK?8BN+22|T7Z;cW)ljka}D8Y?>ppdM6u%0_c~$GhDY_ zdpBN5gTdD6E}6X3)m^>pYSh8P;X73p^4_!BKbR`jINc2%Z1U$l%59U_5Vew6ti;=0 zQtaMmMB+Z%+H^zTj^a}vNh@v8XcS&ZowkpfIGcCA$aL7<92z=Sp5>f;)47+C*3$Yr zMN!g=+3okN?TfZW`XVQSYsrJ6fajr-tg>p-*Zyzr5YQF?SK5?p0ksYQelZsN$YShX&=z z$5gxM3z=$`1K$l~oe_#hzO%WqxYDI<}seq!el%{my{_EVio>-HGo&r}4WRvlXA>B};T zU2_tc%1HxU3=Tc&V^2Gq^;YjqDC22!ZeGyaB{4UKYuleiD=_yKcHHd~yw$C5W$ql% z4c)l1*?s)d2=`6xJG7o0=X%+NwNBTx*LJz25ME2$vH{UJ5%}H#7CF3-623#B%q);8dnE8rRP45unXo;v{EKi?F&rYv=zYjsHt zTg!V*Y6FaiwPv}VDkC$p--f(&gHIgEB(r>)fNt9x1l+n__YvwfFX@lnMbgHY=r2>l~( zRgSVp*T`AuvWVHb^ z*(pQUX(73+RII#=b8^`AD}aug*|OaM8>20ML4GP%NdEwb6~YF}&qphC z>Y89J)y`=^IhjPRJ(1p!xZf#zZN+q%0kLhg;-j#V*)rJx=T&;lYa9UPQ(~Ns%iEz& zu)e&Mnd6nNXlp_5Ktp$LGmg;sD5@osE4vOIN|Ux?aE;lB(M2rMw(WkJa6md3-79X* z0Ooinm}X_J_L0xDsxh+$joxc35lY}(ADHRDpeM}C_G4XZDBn-Z+H zw8`3P0qk%t`qsTNYCO_<`W`A_6eNc+?hhv3u7N$mDD!V6&*Ffp%ss3(4$x|E(O52> z#_e=_wF~VngEIhixA)09Sn}}Koyr5VPVNe6Yh4-jZ-3rU19n}~*m6HL1J1Y2oFFav z#yO#jR2iu=j3>3l9WfJ83eEt3iq~)%M zIBR;6n8J5@Q}#OdDhe*3YjhIXJ|J4a(Chb}idm(m8H=B5a!hQ@sO>`5i*e|Hk9K%B zx61v=;x{+eV?bA;m8^xwE{TFrb3Qnn>zz;#nBv`C*+EFioEzD0op~!U$96b|ScH+t z_MDFSsScJh8sc4b7=@a1_0gQ3xfMuN}JM%k|>UeJ37jRQf=Eoml z-LMo6$}OGl2aS*tI+o12`KWg?28%z3BBXS!Ykg-E-jXSr3xk_${E!_PcdH|8Q`*}L z@c})~joGrhRL8>e!-wL4jo`aNYx&Ir&)UTfap( zYueYj&SAH~0NHON9wT~bY^B1@&?#Ys(q|>EWw`{$OOUwaasdov5MJioaSFMd9bcO!Vs>Y@CcIRHzGgX(=g*>GqdY^i_ZJ{5z!{qeR+~y8&_#1( z#!^TPoc&4xk+KG}NUT(5H;1~;>~${S7cy4@@z9V@f_Z5I+%NJ#Lg_(0mbZfFloxQiUj2f4x$4X<+zd23%HMh9l zF}=tMcaS%;6T2Mlm@6{1%?w}(#*Q}j-q&Qlp-;P}ZiXu}y#Y_o!6&r!zk}ej*?)@hVbf*gfg~Pn>qO|yUm#!GtDc!6{CmC zG|qW;ZFC8b!}oegsXWgl(uYPi!R;fEQpVQA+sgKf>u%(msG}ebT-1+&lCwE?1QD}3 zJ=R8L(}^4uENkWMF`6qe)5J3uJF&{j=IPTh%x_>0Xdu|2aU$%@d(_*2)0$mIrzdz; z;cKCNq2-}H+*IQ$vuEvF`?`=18#7JVr>%JLMZjuFAEXL_>u+Zl0lnh!#%9sG?K-N$|xM#5h=h((;T{wbyw z`hksN=5HRyXV4CsTqj0de#TuorWM~F>w|A@HcZO%_CP3!YX)ZrYNB||Z=T6)DcCcM z;shvn43{;W=X5!=?^lCkEO(-7-^{Kwv5j+U@JuQQW@`f*%YsM4RT;Nv4m!PAbTWRW z?izF8qh%dtdr2+FeuxV3$1&3~xe%HM+`l+r@C&@v&CQyj*8UWsuH85nTp%KRa?L(+ z_OK}Gs-kfb$14wlkVfLi9J~iL1au5`Yq_JtiUFWLKGth%$2FD5ftA4WW$vI9kO;12 zxgAxA!Ihx1)E@8bDGJt>MtUc-p8XRXYNBP_#<#pX?_D?6S-LbI1uMT~9OU*9M>FJ$ z(snfPT}Mv%+T#5|=gD4<4fdP^IjZh#qcj<9`1hk>T5PS7@j1W&_a{1NLl`D?u5YK} zr1MMIxz4-zerd*uvF3AKsOp$RW~BAFDTI;U*|b&TrryZ>*<5*YQcF(iXsj}ed=&&{ zt+2@Fw~4x}+Uki5yLPg%4FuA+(>?MVFJ-xTIlWs>gHSvS$O zwr6X(Eyi2qx&miQA1B!J?hBYhv<}DzH4tuBImNfrnu+p;`Z4Y6Zi+&803>kh%|CYb zYtc41B$47rH?TUVZye{ivo(gL0nd%zwri;zSU7vih{+JpyTvPN85`Z%&-frD-nZ2{ zx1w-)5qizH1p%H%X7y~PbBKz?yf`2uYn&PCb`J}r+`?Mo<~4wIN;^z--F9<1xGLH>I$&KGu2ET=FMZJUqDaFQ|T&Z&~5UryE8`dr4i{vU~snTSc&QD<$U>fHaaTh(-P`+L3 zhJ3s|!C#J*?u0q5clm~i&8OVN80^220BZwymfOdo>0udrIuWJ9B^d;{p}Hh|EzpfQ z*&6}5m>a9__bA1Tp0$BR*$f#0EpCcE%zNiFv-({CJ@GIX49T0Q_~zrUE9i*2ke0Z$ z%>z^LRRu32nc82uFoD7`sN#LWMkO(D;or$#Wg9nLt#!9u6P-y5edPg69MN3p)f1`7 z)!DKu&xx1Fa|?dzWJj}~E3L^J3f^w~nGRcW&gBuM8FhV#C;Fn0M%NeFx3<6C)7=|J zxm&|t%3A=Ar7b?=bi&)SD_d)HMtt4b0rm!^HH?I|{hK3T98;3s)04c#p%ySibj^_J zni|m2+@8Qer44tfbdRQQ2WG!=B4Tka4b9@4=B~ZQZ|Il_G=bfQGUM&0954B}Tti*&P7t)W)y>r%hQfCi z)VIK-G`+A!nje}ky7hr;SV}`1M;6}b*b5LlEx)joQ<11`t<4d1W7uL*9GPw#lf^xN z;Tzg+TVd3>H*(XPzllVQFA-)u39^@R(WAK|U?jtv-_0<Yn zt##gPIOevO^?4$$hECB8z52N~&7{sQ+aq8+(UjjccOJ?v>V0&}{SqqH2>xFBMPjQy(tri+9Q4R>qD!5rN% z*aq6^;*gFlZNB7o8)v-CW%Y03o#veL{895w73{lk%j*^NM`5rQ(U8|1t{w?|+>2&y zyc&&|T1W;B3X{yOu1i}~Y;B+Of3=$5f@!2?Ue`o@)cGx&QkvRUo-KB_@Uk{r0~GQ0 zfbsY#4I=^9De(KzXVb77Ww%mO8%p1E2h9Uu-f3psHKx};)i^@@y#eRlWMVpCS(vuO zd$dmTD}ABjp41F!No&KokGV0_w#{~5ozd?#cNXzU98YbWTH79|*a6&r?T(PFPk;o9qv5RxebGPyZJNTo@w8g zT%i64xPj4jgW7ykMJ@F#YBqZa+ztnYmwBkoaN8ao*6NITt4^71#UZ4>?h6~EaBM8Z z4wOS*Y&z5f83Fkx_Ox_!&M z(&Pi6;GbgHN1L;TUOFb4Abn=(!5lPUxt-8>a7>A<;#D44ZuJ{*HU7#w4TLs|oN;4+%9WInw=oQD?2GxVVZNqc6rz?s zBQN=p*tQk8yIp3t-jVcnf3v`&1_9!JN!x(dYVQ94a$Sbm(}y-qayd=r`F)G%2f-Y) zd~+q-65E{;+O`GeO*xC3WyX|gY^K^2Xu+-1T}}&nT^;U}B zkk`2=qIYX9V2*jeWy65$!6BqKa<0G&%q0EWj%f}ae$#-r0*`r_`wlh6Egzb- z+6`CIJj^>omrZqCXjtslYkHJ+0AidwGvDlR zN-1N@uO3Lxnlx#bhO2}G>6hP?F2oGlJL{YJDOpJ2?RTQ_;m_j6sm>iW?$)EYXS~oK zS=Vnq%I8wIwa9TtO$6N7xM8z7zN>WoNZESYE;cZmKtT9=s=lHa;i<%Gs^N^1$mgBX0jCj|{{W&`Ahv9+XumHG^-emS$pMYe zuRqOA=aL%%1F!w_Ku+@`bH?{}2M&NLz`iN0$LqxMPTxy=xv64@di=Ta1M)&r8JJ{q zk2Ngrk+EAdd+ecoDcGpl|nhEpR&vVm*d zAQ*02V%yv($pcOa&XvQ1xGoheIgbK>mJQ38;O;+i;S4T+Z!)C`b4{Gv4yt1-`JgPa zmXzvR>vyj6Mn-bw&U)t2S0-55nm5}`QyEbB&9iHJ6WoBf$V6<&@69x1Yqb9WRbS3z zk)yVozA?Scdv1WZVQihZJBK{U`?#2IpRW~JlaA3X(}H=KgykI&2;ej6*-Auhb(^8! zS6eq|dY~lix%N4b3oAzJE@Y04p}M=WopuPccf~Tn*`C)llmnPcS$8qSbxLK{{-7Ke zc1s*fta|u<3OhB$-K%#XAHNc7!Aip1m-i?G8w*@L=>an4CCCC%7{LQS!>X_#XnuBU zZm2{Sj$q>LY~WonVjo2RDENg*nzj}(E)AJG;vMd7dFgq z6v*iv>&?Xc6!y!*M5s4(?^;KIB41?z*IZXF@jxNX z!>Uj%#VFCYPHEQu%0_8#X5lmk9TbMwx?b{tYd}umxLojDzWI5fRQ~XLh2DeQV+Gf7w zxx<-Fc3juW(3R%Q9ZEx|7hA_vwh9IKB=&z4x?lV3ri~k~6v8L}02dCaq=2L?x^C+E zl!CAe-={L4z}Wu)Ma^qi(8jA2*mX@uX|1ylRKgC=0=a;=`aMyYHf_!$c>AL?xGWUy zxNmQgWwuS2ePqq-#b9}&6uUQjK1{DXby{&q{O&E~)mddL^f{ZTvY-`BgR(7hv>xO_ zI#As*a91OUGsCK!Xw(HSHXNH}By@5EqPK3I^&sv*R}`hZQ`rz4drE7r?+6Bx8LwwV z<4{X&mdT_N+a=uDw{wsYl5*&fT!qq26F9j-YO{Kr2Q&qn+lptM#@xUvo6OC>HNq!L z*~)-dR=!Ris*SQa+8s)qQ%4IeE7dBDUY3d{2D{!+7nufb(eX@{u8xp6z0JDFVmoBx z*p2$0i#t(?RaLppe7rd+Hpdg&2q{`y9-bW*Zli4~Wrrj$lXiV@bQVB+Iu1AHkhB*% z{E!ZwwyI+5%VEBeMh%p}>HAVtRMeh6t%3s?loIT^_&Hvt z!SM>sVWW0Vrq=nb-7_gDTH#AT*w5QKl{@CCsBdZRC=6VCCtO}U;rodBkn5w=cm@Ya z5Z*;4OUAd8hMowkDM@>?H&gq{&ziKU2%)Onf4Wk|P2R@pl4&a^ZKRRUx%*rd#zX^c z#Z9_v8)N{6QcB}zF=)E6)WEP^b zN}sQDpMH)}mn2Tw`mLtJ>D$RQ-G%>WLuw*|$zxx-F+EN>-GWyjWU zHGJ+NM(H3dxXpg`M|c6vn#nW0adprXcQ| z7~7R8O6)*2yS8xPNl@=Wu`l8K$}%I%+ikkpBdHo&m$EzikQRvrw|7hEqZ6|zE_W3O z6BdZsl!47SP#!ORl2XRbl=%)Y{9qhoswXj3!I z!+THV$w?WZZwELYcR*7R?={P96tL4s+`}z_QwoY$+Thl@*Hf{~CgJu7N`o-TVmkan zaHIqEx^OpFi-9>qvv&ld5qr4-O^_JQX0kzVhl;St<`F!*Hw`-~)N4=AJKhizm>%gJX4|5OQp(n4eoz9qA_ku@ zpIdWHCC-O-P!%1z^#~-;Nidflm6_^hM!YA&8Zo9SQokr$f z@;`z{%_(+P=m_E5n8{zCA!|SYpf5eth4yT=vTo)9lPtaJm}qgZYgw+TU!Ex)mCYb? zIv^yJ4d-Reef3QN?Q4L0M}ldSdds^gAu=(Q`o!-X$O$*~Ez^of=8&67*abU*=#XTX z*gH|zngOn1&v55hsNP)@eQVzOW%;WxhdVZX6wHmz%v+_ppeP4jfV-De@-qFAb!GJK zKV;Z_trSnBmKHg~FI`X#Woc`2jtVwN>$@YaPvDo*7CFKulB-8sBqr^Fy>&oOE1uE= z`xh6#B%nNu&3a?2B$rpUsW-B4j z(?t^{C+ju3=15~}fZ={<34{}R{eXIp#U%9dyH_=!T}w{pM(etw`SelCRUUT_UfNta z0KnH4fX)Ft!FFbTV5-SbOY9opogO0QvFvkvZm2IsdRljfGCaJ`a)v<^hj_=gPKvCu zX5F}Ew>2XR4uO{DfSa)9_MXvh3K^|?4mP>(T=Fid#XH$UALz)68<#5Rx+|a*_$hsQEInp_-&2iO6_$7e1omN~<-0NqF1(#x*y)3;4bvp9^z z+d`~O6U;f--yYJXE8T_qvB|?IwpM%6x@lWt?}C(1X5HC>5`$CO$lmoXW^Qs8w>adZ zWMmx9b=Mf#AUo>!n$W;GrkQf~RIpDwV03vKW^j2_4R>VO z&5Vm`dy}0o$#&&8Ri>zKs^`18G|lK(!q)%-0^25VW3JYcQ&}{T=Ipd_Dllx!&wi=w zadX2T#0&VKE=1$z`Lnf`A2n88ADreVsN|V))0B4FIcDmjb0s<4=2|=Q=zy{_$lT-S z{r&0D)Dp~(`F<*sH}T1G{{Tl~0}Gc2PukwO!})k1Ejveo-X}|`CyWnj)*7nJm7$)Q z?!QmPa67}Czn%5bNL(Y)4BGQu9_)+dupCr3vs~x$T^yjdBj4NO@IXXd@!IVM_3laM z&X3x0w*3Dek2X;`Y7VdIZKr z74MfJ>ZOIzUFFib@^K?BiI1yp`zzUVWQdg!H+P&p_Z-Tq=eqfeJx-{Bs)Vw`LC79o zlB+dax0yq4%bI3^j%=;;jc85{juPVLxagSXhe?@@uvUE}mKila1O);cA-RJkxv8nd zUZZ04obSnBbRE3XX{QCzwi4F{_7X~*a=HiQ?ET4Q&g&5Ck*KnC^pCrUeZ`c~#kgqo zZh+|8L|ek!ymCzrVQ+1j22^J(;*EUT@&dOM7w}$(MunuYiYxZJkJyYIW<{`Pev~mw; z)>JY&cR86w)oN)+uIXHS6>ifRcX~_v9IUNF6QcH-d>d;ZZD9cHKoh@}3~y(&Mx?0? zLnM91R{*FQh|Ap5nVscv%e-^LvJMC(;NjW&G6 zVCD>M`KF5&*lA^2TEgzcZS4f-??VA|t$v)45|-}TGP~fp;KJLz{{ZN@!o|U^7>K?!#JMbv+Y2>Pz}IUdRVs<1iV4Ae(a@^$}?%&eZX`m>uDB24+0*?P;obrfe;7 zl36wQARvk@;db$s=o4ylH!~Rrzc!jHqM4^a>swx`Dd-<57oQ^#6dE1Rjqlu;%8ZY5 z1Db82SALFXX{FA0dS9dI8giDnlf?l^)e^P2OSJqvRP3469jE07y-)Og6LSpCAIzR9 zD8pQ1dqD&36a{(31J+bBAa$*)1+ zsmoOHsLK0m>m?Y3`=>az)<9WwAV>tS($}|oLy|jsv9M`!s*01p4?0+L=$l(3D&n(S z!(Z>*fU@Ik$2Y$+YqIX1L+>Ev(Lf;#Ws92L?A(`TW>?+Xk!=+N;S7@2bBX4qsitVO zo2cYy{q70~gI%39Vagi*^anJ#h6@Ci(8-&=dbngUqe97gU-e8)4iCx>#aDKWbJ zlYU7U=^dk8sN{g0Q#3Wq-s{H4MOE~2=X7mzat%|=G9J^XN#?JMG=bV4d{YFDj?J`> zPu)Sh1h+R04!LZa`bWt7$llU>;h1It*C&T)ekvH_sB7-_xaqHHG9%$_IR&ll z9z6m^X6-z;L-A8PG;On*?|*W2$n6HW6Q#-mu!=zN>0HqB@=D0%Yi>9z40iClE1RZ= z#W~^9w=12eUJ7<_jjqOgmRYv*Kq6=TMC|T z9TTIDO-bj-jw^)|+x4>ZR%65Dh`IUO-lZ`f4*9t)gf4FJxmxRYsKZ2X?wQA`w*0Z% zy+xOvTO(m!I&l*{8@p$X(;Z6Z7dtJwo=V%8{O)U8z;P*pLOrKYH#BBvE0t_eIJdQyKLszF zZnH7E*bPyz9QsEL*2`d;SX-wTgh<7k-LLwnpBur=m98(hxh;U#!sh!89p9Sh;(Uy_ z%Fgsb&<90#Io=DmV|SO-ZMC{K1NT<;uilq%UE0mrvL*C;i*6sM9*I28SlM>HqW4C? zb+=>MvC%NV8R|6?6pd@{a~oYf!HtF1(4J)*0b(~B6T_NGW8N{>;LxWq&c=3`bl%t1 zWU+p!lD_8O-{!c)``^2cWjmri-vRPYJ&~rU3MPn?*nfSFiA58eu6Dn_Hj38d7Pz^t z&N(JJN5y7_HTD{wiR>#HSM$r$RM*n(+tdYXc_f5(ZEi`-685vi+aqB@IN5(*#3!15 z%ez<8nz;I4TH~59QyEHf+`j!$u%*0wO#$s~kN2vQFh9L?9aWdoT-Z6spzGA66pjQO zzVY}V7-Hv{Cg%Jds<0qDwCl-nr;wK(7C(Xw2JQTx{qtSBe-i%ycXFIXAYcP7oC@vR z&U4dS{{U0~_ciysTW{t`yO6tAG!CT^`n?^N$)_pe+oNQw6J6t>PRq$0yq;rw5tjO4H zmA2xTTP@vYXgI0kjQcL}C!&>(Ep3|X9=%bsQgn`wv%<$zmNOR;tYvOnoW1G9*y+I= zCq+!hHI6xYkW@047rC+J4A+kZHT|s31SHDhLtB)dDA^$0$a^m0nKVw0D`nx!D!9fG z+WXXoDU4asupPP~o~@7eR~Y11*ux|29MRP-<%H_z3;qb$4>7r|^}Az=P0u0K5@cF9 zX5q;(k=sL;uBg~jF}Ouxm7|wiE)l%N>sSk``-e%xExXi)9L&p^x8_l^58dC3oojRF z)kb15wS+eJ;)ptcZnSl|n;5jSA3)nTI#k~`EKf2!( z1vfD6gSaNfTpx1oD1oLfZb!F9B=bfcUhAMJSjg8NXW*P+CowK*AK$@U^Jd1)K72jt z9>Q&Banzp#5|&p*>ouTo{`-?%A-%?&Rn5~!toz@Q`^uUcNQ)#d$_daAfF9-#H*+%g zcO>0*0OQD?nz+h$g6`XW>CS`JE!CWKcO(S^6ZnR=MaCOB*LHLA{{TgGpcd=FID@+E zIRQpCfNzq+idRI-xVg8@eR?a6h~L@JeanSAi-0+8{giAdcgRY&kSpFUy7ZWc=bcA$ah&A3R{6AZ$(gZmG^-DKub$kyAl zsN#79wrV*^E@6GgKGKxZwXOAAWJAojW$rot^sl0Oi-3DVHUggrEwfvtxOGkuIy(W& zT|Q`!o5>SgAKJG*N5wO;3x~JVqhU-7`pxeuJ;R*qw@d#3cSLu7i!g4y*D@k96UCi+ zBV-%8arU!uQu&?3i`v^+TYN2ReO}nraED!8V2y=1;07i*GTc)6x%*Dj8g?^N?gXmcHPzpSr17V&GX@=Xy~+;Y@(M#7sRxVdi~3SG^P zY>l_6+=)G{aSb_b*F@$**0U*dNgAHjf;Iyqg|~5Yb>aQ@COVfdYl-QZ6J%MQ8eGwB z6Y`emI1V8#fRRpb*<*$HUz+J4ZS!$&F4n);Ml!ZeEYqL#OSoiqaAR-GnCC3%q_LJekj-rFh_R~*8|J6q@{;@6WIL^Bhgvi#?s(jla21DhLBH~M&xWL zyAC0}huX`H1CJRUr@KXdqLJ~N48Vd#`;sz_qGnjRwjETcJmH|6*_;}960B3uMIMFP ze|%Aa9`4P1uaM}VG|kJKG5~j*0`~_$BYJdC7;rou-ny%=rDJ&IDVw6-W!4Go8MK`?0vpLRmj@Nw1f;pvc zs^~!Co|Erx2loFhqc4K0G*t! z8EthSn{gAJ+0UoJRo)Lsrz8crYPZaGc39Z^l~C3OI0sq%Pesv* z9Lwmy zT}JQ^Z{nN??F`5ZFQj9*Wgl{;XgnI6q(O70Mm? zQhBCtX5@}5g+5%|@6`e52|t-2H`O_MN;i^D^z_6TS1!0+;(+TUPWDn10tCJ5xN%%` zKqBOt4{0V~H9$PsSDvYnH!nVly+u~^?wH+wy;Z7AHqGA6#Dszv;FhT8lR&P;6CiDZ zl-O`gExxG(oghrT%5Sr(+?x;z9M^JC@zw6cNzH94vF>%XLQ*#ABn2F?PI{VtAZ%jCI`GtS%vlNm({x?Jkw3mlMWi ztA0@H0q_WA?Zw)zXgm+SEx*47HkmK$ei{^p+?Q%~D~Y>xNEkqNsWOlqcHjAvvXQQB z6SrI`xj=TD6rgr)pc1$3 zE_Cs=m(GBh-*RhgGjdd4Uws?#Ri8WEtDV6BMq02lWXpb~RyAAKI__?Y5!%o@QWcn~ z1ATnH@5KQTV@i-x8FkH(boJD7OTgL1i*I`JVS5xdEWWHnyUuxHZc)Xv&gTY<}Q^H-?$D`)8ozL1`Iq#UDvX6TE}ZFaSFPn%wP zSxXHBZPADdabfs06IzE0i%)KCbVMUEH&(VdLFF5He?=#nlVYVUEpM#RbOmQZ=RMio zn%r)l$~K1Fa=Ns^nVrErG!G7l3dWVAP^aCE(6bt)(}+!JH?jdNGP}Jf2P$_3-U>k) zlpaNQa&tlfMUt-7cBlnNQ`1lhqU$cW8YiF-X`+!sbfLvaN#2`qxEtyd3xLr9CDQA~ zF{(k{fRq*2>Y0AZ?7%7s5~hR9E+l=V1FvPlG&mNnE@LN+tld;1QOn+|)M7N$ z&FxCirr8O8=Z<9z)eykj%J#4mJ5_>=Gri#U^GqOvp+@BVC)b!9y&$Uz@eAzUAGh z-+V%-uA)YbYj_>}Gb0^E{KPXeOmDh51eWuz+64 z40*)hfLZjR7#@jjn(zu4Y|;a{YwkcaKm=V0;8d&(kJs&$&aH*5^}WfF$k`g_WOuy*KKYK*D_La| zoC&sOfD*#yxvuQ!6^6U_8i0+GU%V+dq#Vp|1gxEdHhiHq(#Bia(E&Vi2WAh=s*T6i z5xcYAnr8ypT;BAyjQeN?xx{E)#QW6oOBk>$_w-Rm9C94_wH#6y_ib?w_@E~-7Z)7u zw;x$R=?r`x(frCO+Z1Kbk=iaUrOT=Tj_p4Equ}lec)*daZ)(c6`kXh>yZ)rZJDuvj zz#s?+!yBh9HBED!8Mg&O3dw`q+}wJpnCVX!206x~fYnx(wmhz5o9|7Qd1kPCdEF#!g{^Rz+VZ~y1dz{ow}UO3HM)oC zA$*~&vFe^?V@^oe&kasTgx`!OO^RA8=T;E3nwD>8b4s3z0 ziOfI4q5>xX2HU+PS%};_D=J!$+%reaHx=iqEu7XtH2}KyTRzlQG4++}aK{OlI-FZpj1OcYd>* zaJrUBL@(ZHuO6$fQb-+*dZ`REmRZ?cKZ!7e$Qs*5^<~Cw$hX)@8$o_oF}^BY%UW-l z-NTSTSIaA#qpj5_r*LbF<#AHEuXFud*>u6)qua-t0v*<7I_`E(c2S694ZeG+NHH^4 zXi{!LZfLx0fP8T__IqvIx@g-QTmim^>j z*5<-#(;s=&Sjw zo7$E9tbmt{)(&n@;?ZzyCGG`{7Uo^eOBE~PA>%0nUW=SJueo+a11w3i8s7fWjM7K; zo!{K15oIGQ_ymq{^?Q&V98C;x&B-;*$jkOfN$E$Zkcp2LI_L!5#O7$NTGCxw8D{Yjrb|$ zoH@1`t~gmk4K&ilm!Z{3CU{=voS= zwT*E65EBM4*{*AHu4GWf6WC|dqOBCJ^-HWl;<~Dw?Hk8i z-Q27192=uueteg2b?rIqvI2eE-R#*$9hWhaKslvzq;qUD5&TPxaY>VS+t~ouIyp6q zHky?8(=8l12#L+jq3%Y(-eojz1(^kh+WXU;PrdCwE^syIp83RJJaf|NBc0A}P~IA* z4VD%)g6+@Xl9CoM_L%0}q?SpHmSdU)k}=LbnI(4(P!5}U3*C{{2a!m|-MQp`qn|~_ zp@yBzE!CXQ&2&AI<0eoP1FK|gYz+=~xkpW!Q*4fXl;TzfTR&tg5YL7^RfyxIr+!!Fza4mdS2)8Q&Tw>&?&N@g!=`69UTKyslI7O#D(9U% zH`Mno&Aidg$)`RD2qtx+b)9qErp|(Bh z1~+!h-K^ko9TcWUM$6^Ygai@Y&wCx(3|(-{*5JB2h~v!J7~#cpPV2X}+XWC7cr9zR;4@qf{ZJQUtfy;k*XRc}@l7*=+|hRL z*OH`Rr7z1X-EsTMc&Xu!>Yr}%m?P#fw^?s~Nn@-8y6kaGWt$`0D|6eLv3No0ey9dV zP+a_v%FT7`@>0vWZjt3DnNZ7F99jlxZhRFXh);gZO+XeIgL65#)OX*${gB;A{8S99 zsmS13(mDh*9DGf z(_ZiIssb2?V&U$(f0~&O*5tn+s=Q5m@amk$J~7(ULYOhb6F#S3 zSNf{vw{_SYe~CO|ZyvQeC|P7oqqc0XCjQEj(ac>C(fseA3OZWJCu{RJA^8P3Y@6WI zy8+r?fhh!ghf~P%J7(OvC5^HkIiB;&!9DZS#UsFegQ9<(M;W_fcfX&C0nCm_*x>Ci z`^qOV&0~P#kj)`ETExjob8hC?fRHnPFtZuE(N=eyXRv-m$)nty(LJ{uQqj~07g?Ht z#Jh@N8>F$ya*@oWW1B8}H;2JVQIa^Fovpby^|)C^#*G^6tZCE*K*l(<=HBG~2PJf! zmltL}I_Rv5D|(EwnUszN*UCBEr?41C<}Tkp3$rsTyIeT*MJ1)YSL_g~z6fI$>%kie zy^@{T3~>$N@KU-4aV>v|QA-oD>fHhXGiL1OwfZS6!=_()M@72TjrXZz(_Ft4Y&pQS zfVVDBxi@~(u5IBy;1sT>H5sht#y&}oqicT2NF3%2uFdUfV4^U?+7UI+BiAK5e?~0# zG>-MrMJpne$FMAbgLM$h*7iBsbE!c&+V=6jx>zobHkP@=Gwf_iVQzm%z;oz;g|e}| ztl9Yclj4>($E$BAPD*XwUc?bxbxtrApJw1{cq#>oH<)*g*Tqa?d~M0^O^MRN%XnL$ z?RvAcndj+4U{(QaY^qu4_fUX_A)Z-nF^>TV+JLNprk4x9OXQdIIYs zFv#gkntQvF%`|PWYunzbG9X);SEjLr&T)$^y7WL^60%a^Bbor_G%9yTPb&l4*s-`M zb0MBzvth5TWRm&L^fNO+^Re0wwfCynRvo6jhu?IWTpNBF z2Q@bR=Q$0qcD+|`Tp4a$3IaQCq3tt|3-a$v3^`lrTH)S!Cr2~mXdRsrx<^g*xwO{k z1<6f!J@dCtNzUBmbK2&Me|J#EVReUOj%T8uaZJ;^8hEYY*9scw6?cK!X3=5 zZJy?b^Bp=UO)IZ=Illc=>?UTp-k=;wR)CHhK2F@0B^wH2GS-351swMc7Hf$b zB#(M2vSn~7>^h;XFu$>LWm(aX%=vWWr#bSt$){Br>z_ny8Z(!G<~H3rC3JB+M{?_+ zQbB0szY;~g$z3E)n(xbCjf4g$L3T#+cW}a7*6|u>oZ#G>&LnD%#2*}Qbonzku%z>5-R&;s zPlC4$K=5t3o28N_HSV)+p1^R9GJjTY%&6TK?niRx-Qcgs6kVg1zzd%go4Csy^V%{V z9W+Z}MVC6})SXg>-H#cx?{@@9Qp6vtd24kSnqS!AsYb%Mr-ZfM(JAH#19WBW%&B3y z*DFSs(Mw_WnWt22E4qpn#2uE`)Q;rM)I8mv`BmW<{0d{K;A}3lWYhPwO4C#^MA)+i zH$n5~#VBotY}x_IPGA#9kmayeW2bB3$Q_f%yP8`8`^V)Sn`GdgOPW~L>Q18CTK!d{ zNv^Nf)+sj`s+>ld28A%EA=Saoz_0D^2E%WbJw^xb8J5V^N{;c--CKZG&EpuJKbl{QDfZU<21oJ9cqIPk1*gW!2 z^Er=dM_hZfOJPVv{Jpm{cqal|W{;A(DPCW0f5f=bWj1qlxA)+Ug;TtCgD4y?%|gft z%;Mg9-}6@mA!&0%UH)!CcIoB5wT1OY#?=fhV&f%S#rCTwL~L_x9=Pqpi?=bDW86N-?XN0`-X?+cP=Vc2uycwr-jcH zYzNu0HTLUq%S9w~&C77yj8`LcZEtC<>8g$Kx@_Y9uTQxRi4AVu%?bq*Cge(lXZmKgGHUXAl;oz3SsmxAH zzPBImxpTu>-oyRM^PzMnGZ~{elBJ2UxqzIkAHt1*;e8n0N}ASwZk$!a6nAr@Zj2h0 zUSq?c(LIDky+5L3;sL+74!@1j0|OddOLWlck?q~Zn=RN!5{-pS(U#_GbSt-KBeOS7 zDt89u)s4x+!6O_FcZYE6qBaq-8|NiOATW`cw+Di;PZ`Yi4hNagDc?-O?7YXpEr8(@ ziFLFW_$Nh7TwF5Tjs);mofz$QwX%mTLtAXtDA+~jzMaAOiw89016yv_^j28o8ys_R zNci0;56sqBe37uM=yLl_*MUjqql2F8{Qm$oavEk#b$hN8854|-FLm@IzeH>*?g(wz z_MDvacPRjOXqPvpoYVJ2x3j~qcQrdG+8>)ghq*0ys>WNv`ppAGj{Xq zHrM-=_~((wD`0j0S}9_bwB>vV*ine?nBsIzd{Q{wt+?u?e`R=Im5N;ay`m=ddTBrv$MBuKi@Mk$pO(YFqOa#bX_dz5YzRkrh?u*Ad6~Ih2OESu)|q0?&F`D|PWebEck5!JRoMZ8PV*lIl3y z`?8&$g^wk!(M7&=v$+8%!=sZ@{yyZV52x(|+xafvc3s)w)iKq3yLN7Xv?93yyuM09 zhcZ{^%-fX}Go4XR;yWEvg&e%4askoNt$KczW3~a zI-B#|EnnL57-Qb}O?75*%eH<=!TQSFyfrjyV*4KhzD2xhc z-Kw9Sy7@~uSrMg?q9?a6G|j{@z0T*UND;)F9J(9mq!F}6J|%E#+}!zeQL-6Fq~w@( zuF!mWCp@zyvg$dfM$*nLcE1GU8F1{e#2#n}8Ee@!kw|kM&4RLHb?jSWlXHB`%;EhI z2^(7@baHINDaak5O3Gs$vb#O{Cb$^im)Fyh0U0ft;9bLtYqFhF0kun;lSd9}S2#An zxu^&?j&p3d2Oc??qU46>V^|9#Za$GVyP=JOw z7~Le$+uRk1VQkr$G}Ew}Bw;ROo})SCPv6Gej$@q8mgW8PNE6J@s^+;Psbg=f*L&5E zq#uwH-};q$il@tGc7M!(acd*&$IVy}ZyTSNH9{!?W@$U`b$&Xi!)(`b;7|?_FOP)g=!Ypf4d9PrzJ_^-SJ-m-_ovGcjvU-=%ke-P1P&=z5EFqJY*(hUN<^!y zIFteex~0)M0L@ox%{YrBvH>+rH!4SE;I+ zGL|b3dICCHR#LL(SDi^#45u%0h{}|>Ww_v^$VobvBqXFuZm0&3o39hWJe9{(0}_t) z)<{9*kSPN9=(|AFjnh@g1s<bwN77w_XX%Yg@yCO4O&-KtWL{9;%0c z{q-XTY|bm0?KuF}H+0)^DQrhzaVka}$1zWLE?BjK4#98QxrB{Xn2`%2Rx-L~1gBVObL42b8xWo9_6)Zo*^ zDWi;yN&%n_Y2&9LmcyETt)c+{1K^$Dns1iNxF8*(Y4x>8Ny@l~aX$0{hU<0DYeR1% ztgAkwccUG3UC)v4%=b8;CZ3~{8}IN?TKcYxTQSY=Q^y8tTY*v#f?EA}DVYPM_1lzj z{{U5E(bGkl`E=&9c&5@3ov^vK??4`YAwx@>E7@_;X7Np~f&%8o>y?(N#pkJefPI*F zp^hUvfz)@P#47P>iqo0Sa0qLpaW^h^y*%4bpXQOpr`qCx;z1zvg={qI8XmiY|ybjGN?#L1ErCRUxAs7~7xh zqeL+-)y&wpIAsJ>P>vSm?m}hrtU^rHbq}A%K(0jq1;MT2ZmmZVY1b&SVMZJ}F=89s ztVc%C>b2Yzup7kdWcF#GKt~%{A0K&BGgH#ql!Mw%8gNKET)M8~-kqXeT6@q9W{hwN zY)jIv*NOoemG%tRifxJ2E}gFQs3T8i>BijLlJ@pf`09`?yEjO0$vlu!3v)m&yw_{? zml4e={p11_$;qe$Aw4I0?NAHeS8BK=)Hg%|0cF~Du9p3u1>V)r3INOOr)kMDY#RYHdVdc{zids&NIf29~q~&!>uZZQFFx>!rMHyRzQtB^=SYr?U2osCNa&wC4Az zcXB&Z?(j?IxkHPbq!F<;BIjjllO@gm^o);~Qf}NDfPl1vt6CFT9gW?~RbY!ZT)K5o zaD9uKM>}#rI#R&fo;;M%N*xwq!9eV#-U)a6zQc3~30!X6u5+xKWZg3_XsE>Rb%R{h zV|3=lbEhF6^MYy>$`@w?oqOe2Nym1f&0h?nwc+d&Ye?) z<;?ACZ<3qzNc0T3O^#UHTo}xj_#hT3TytI4=$^+&<7}?eLQ_k-H!3aj{hYjRfVq^k zj@OE7t_z9epcPO3WAEG-OEsJJ?0}h*%3141S@BFYMl$T~Y=Zv)1zD20-Jh!jYNK=w zZ*M+y1*xjsTX@@TRBo0@HFk-SiJaRvOL4kg)6S33@wx+zL)l@Or8vs)+czz(?@G&V zw^>qdN4J{X?0|&b&-L_49&wqnYhbJzdS=*+-{w*?cGkEyCX@wxuyKi`rG{y}T%DD2 zGV(z6+S(}%JzXSv(ax4ok;rFQByb-vKE!AFvKed;FS4Cs&xd0`NnoQQq z;-zFW@Oyb`uRWt9gBsh8DYkrVv$-HCx;E3;bNsljilP>?DR!gxY_764%O%{-1B&NR zMoy7w#N7c%)n$HmGWG}BNM?JRf2#^}M-)?BHzzd}TeY!kPb+jlLg}9)GWy;;7YYYC zw=&ojVk78ScMZ2h`GC>Ez9aCfjZh@B<@KL^LeP=-5dI4c* zZl&$hQcjvEuP<)TVG1{Al(?4mf4*t)OA}jcx^wKH6MZaZ;mti)7fUR`uVXw%=A?{A zzj14QvoAMj!8^fA_ zRmyuU-Pnt%B?Lsr_O1sGBMteF3 z_@E|bV@chJqy${t@KVPx1U$D+2I>OWhPm!_uBMLi#Nz&3Pzz_w_nqrQ7;Ka_CguUo z2l%v5_Ttw!qbF4{40W8&2dV+Pw;aS~0XupkYlEf8b@rDRK0M7VZI2$(k8vJc&eG@v zVPx!a&wliVAm6Ov-T0~58)AzuWk}0qc5OleDCwXr7R-E9z(<$XwTBg5&S@@xXfvWw zCt!NV$GHJNo<<^bGUpub)lc+yKSsEBDNCB>-Jbsd1m4a|2 zG{ZA3-V#ja#Zg6_1IwwE|X0=Er-LyM0LUT8G{a6qc9ltYa zpy`=Qx_M@B*09|F0C!e}holW{o)bn!@OEqc$OwE1%ofyeUO2MT2v%JCp!7XC0WJakceb z3>DK58wI+Oju9zqgB!z%34(GCQu`n%j5c8Fmut;RXr#&OUdsC>c+Hn9ly06@zcaKK zzK9Bu!g9IKYtxMwk*+RtnWfdoNNSsuJ0ZRO%Dk<8?VA4paseZuc!|&Rhgho8z+*Rd z@%{Z3w+AqGoZ@aaIEMUJUCnKW9zNiwiY6FCoZEg#0Va~~bIWx|DV-DVnYtprZ<<$G z*0{E+u%a=}=-%%C09!=D2jxipA+&<(0$YGA3 zGo70{k(g|izL-kZF@u{_#yrK>)DC5IG8o*!+6V}uiH?!Xb20|})VsLB(=gFWV|MYw zE}Xh2#}l%_`hazRG%+mY@(&sAa_)MGJi&9u5{R&^YXZdb9Vynbp} z=;vcW&ejf!^s-d8An@M7Rca(~hc;}S&<&a>$D}T~xAs+9Xk(dfvVFj5O$ut&CV~c4VMyJ1(kP}o&M`f;Qzr{lwkB>n6XnYh~#~pJn%)(q8?1h?? z1k%jy=JBs-050Fk;hEWcltrv>***$w4LgZzZav-T21i)vn`dRPR(F+7$o9^_3Zx}x z2R7D8D_Y}i?uY_^NKN)y6a4MouK{!>`>xY_S|=K)8?iZyn&2&i3Z* zxc>lr)i{Waxr_6kxlCu?H|n$;&=;=F&~|M61dgni_tNo#R^L7t#@iCJ^XGGi$ftDI;bMAmC|;yi*rtNj(qQQ zj%~Z!$pL0C*)tO_6q$ohYbj!_y~^IxY!tA|n=zBrLQ(wq-Vib zGeb@@J)BY;U7?||GhS+e(z;f}?5y3hqNGhgJ(!!XS1atOY}xa-hcy+b+WgLBjwlMz z(Nq)ly7TQRT}vigZ*(10yZIjb#MZ_KH2Jr)vm;%@iRJM?R%8#)n>%t3-sG4AgxSkn z!DVJxiyLM=xvlpql^f|PLqqs+vICyk9VT$bfH{|Hl2-xSI$2j6$yt%vhPL-7$6~?j zY1dQ)?x-Q5zMxh2<(acLd2ilMdrs>!c^y&^1)OrQUyoD+w~UdOV|zBS8GiL>x#6q< zx`EByf{FD}oif;Q_XSmzPZe3j7mnJVia>)L{m*MCJksw=qILcsij{%lEX9pr<<(2) znPLsya0mzmi*1pqV=;<%jJELRl4+xK?z6IRR!Lxn$1VQ=1O#Et-DSyW`Q0_%XDiug ztXa)T6q%&WBW)UYqLzDPXkkD{G_uCuM&|Rq)mdxb8ObB{R$oltq&qyd?$9U9DdTuP zZr8uRk^zlz5d!CFbfRM7H%)gACxUROYfGN~p5+@Rd@tTP%@EswKr(MR<&Wv(>Ekxgho<6K^ishj zou;*pe|X@z@x8Be-PB~-1dM+4+Se6=Qse~#l6ZlO43}`<|CW= zBVfnDcJ^iW9TGA(MQDqf7fadgHQKRsaz`U~&&txkfNL=6q@=tsf4yO&7vM|5yQN>8|$6c-i zsX#{eI%c?Mkdw_YN9M8u?A|3`V`CgNDo0a752e)iq!gH2+U;qr)0rXjcef*N@K+5y zdzTjO#m2AiRNVuz*{!w3^guUu=|Fs$t;+lWRd3n0ULM)xufQDK-Iow}GnM<&z81*G z5%q(L0=w$lBs-=tp_+F56K_uxSg64Np~WmMUQ-{TMdjtuoR{W;Q<`1ORB`jkMWeYoB0ADbPomxt`pNXCCkL zL?(&UrP3DXzfZkHV}?3F*&DB}M}IW-6+}&Rj(eKW&OEhB?bDfH-x7H#oFb8*tBh;# zP{&0Wr+6%J2daAtF~=N!!`=n&Zff*G8n|_Xb{W;lX&@1?&EUXwJ<3;7Mp?dWu8n}( z#3NxPnM)8a%M5+)QQirCwzs`^o6}1Bxx4Z?X3!;kP{#Kb#O7r9Bn*!$NXy%|Gs$$M zTwSg<*5jg(24vHPxhLj_b*D}zmx@7GecBz2mOkF4O2)oo=X!vPj|Cegj{C`4=WC_7 zXrAh@*SXBzSn@m&4HwJXb4N7@5lb_jBdiA`;Vf}Oo=mwFaa#uc#CxyNFqDyJS=IpY z%oBE`{a#<-!*AwSIXOWekvEm7?S;~bhk_Usqd2IBUrl%l9BE?%vYjow)*L@U-?lL#OpbCZ(7<`8SFJCUb4(?FK)+0Qa?^ z?#s0UPKgY8*^%0Otf38_N7_cVHgPAKwhrq<<9EAXAA$lYsahfiETg^d(JXX!U~{L8 z0yVOM^O~7G7H8$;riwXl{_Nq@AS87h89)xy{_iCpo4PK*ce^UITUQ~{os2fn=25zm zw6`>q+xe9QIh`5xb=SY%x+vY2`EP&kihH4+mLZ=r^*Z-;E4+bP_#`F= zJUNZ*4SiHe!Mo=<&`17Mk1mfpgLwRru%yN}JDnr+T+Nq^+8HQHg*1t4t2Kloxxc%Ke<-!JD#w+-%rk%}W7|hxWl6YA?)NX0M zc8?b$VNlZ?fzD>^YA?WDNfho9Smn7NC2ittg71tpYCkmyj24aLRv>ZUQLu%~V317r zTye5-b=kaoa*kcerdV2BGF!a4E1b>EB%9ONWt0A zKU4#Ecg@q9Sehey+}xn>9tuWgamX6d2EOF1rKSgX+}G%MARwGNN8E85kfqI%F4L?+ zw9}Z`&B~>gk_h6@D>UQYfTD6=BVOD0rn;0weIvJ@-xYVwX}3GZvezjEE1_$j7ifcI z1zqTAux+&Bn#kEZ@)uZfC0rEH%=Z^J#Vcs(;*+zQ{K^8TriwWn*1JUg>&r4Rn*GXY zOl6=mi&bLh2`nArq#M3)ZL+yZ6)`2v4bs}FS!0>ccLimVHV?I~wl3(XD#qtUHb-f1 z$yH<~Q>P2+uhh!NKQr3UNH)5u7D!?eInLDqBdH8gUCwDErinM3uJqp=O}~=kFWr zy5o)8t&`q&jANaph4kW=eI$~|^T>R_Rjzb&d52PX1O&{3GxT$`>!-~)(-z6udvYE< zQc)1?ePS^X(k*;m>_RgpZ zZ4TXbU18tJOA}oq+}FLibt%xoGUk4qc%+L$=d-SgfkYBRPnr5}FRw(9Ne=5Y&$%3x z$A^~h3$A`ZD%+Nc?~?pTKu4stc5D_F`$|VUaQ)b8avoork>Emi-lh3-Di`i&Ig6YK z>CFLNNU}6Mw@p%*Tytj7@veI_<%C_WxZtJp zNWEuf0CY`sQI}}$!!*~5poPwJnBeXmIeXNsY+ILI*3*J{rpmzYUrj%%h|@W&xKapa zmPQEp^*@@0#zCWE{DPc^!ryn=NGc@VInH;xxd6i*+U(Bd@=r0fu;hER;G!-QzUL^q zLjlh5#0#J#c1JTSGW+|NZyO(B*==q~jEvkf`w1Ke2XF^cfLE3h=H_VY)pRm$q`&#! z+@uv0!Iq7Vxxb28TO4i3$6t6f;io<*4wPygn&m=AX8FIOm|3>Fo1$ZYakHM=0)6NO zq@F0Lq%yU}=iP4<;^<{#vbRortfGC)fukz18!mTaC^q|$4FR!9nm0SY!A%^Hx7oY? z36_z)mNmL_%%8l3@OHNCpXz{QV_wT{b$@b@fY_|=5^L@WDV)bX&TX{g)4yN6PnY(& zvJFS(fUM~Ouxneujd&F^#NDPBG;61VSaRjlHk`|UyCj}aCJxPD!~?Hv*`02BCL3D$ zcqokEvdwL*ZlrZwWuvohXbUVM+O^*lg2eA0-U=ptR;m_FDP^+p=78y7e(}Y;4>b9r z1||*!4SUsyXWTa=t;`fv6S1;pbDOV31xQPwdxlSfneGl_hs8?CLz?S3qRH$9#^d@R z2D&E(<@k6f`KXt+*EkWPB^PM8J1U#aZ7Z_n)L8%>l0BusyOxS)UM70lm2zx1wjTHB zp)_IHm>tKN(FUEAd)hYw?jq{5aG1+IXALz|ZYGbjmzUaBBBy@q*T{R-8kxdjupAUm z!dsTX&R1&8kg>$;VigeQ#K*fe!6*pgf$+uZ=#)k!uuo&3Gks?cDQwuRIsA|n%Ul~{ zz+E`Xa)HrI=I+g;ZIT?I=zvo1MQ+d?=_%Uj&SArWOS*AutVUUb zO#J?}hs9T#D4Pfawof%A6G;|r=4XrZRy^t=%N8}7e|n%RMGpP?MW-?}PxC?^;MO_7 zak`V~DIhisZb8*e=kmyNHJJhev!jqs#^tvk?&^7|8zfFV$M11Z61rZ{c20z+!5N*e zE|)-s1d2nQ)^9#M)18Ny+n764U6i5*xQDetE2A?9GEa{r0HAWeE8Em(=VF~M9vZ;- z27SD=b}W>vPcnB*5tHo!<2<1+f<#?f39kB5ZO`XEniqbKq>E zeje9M?74mJvH?X?Blb}Fh~K(Ky}hk;(#rV3o?0@wz>#|&%}*8x!3&I&@z%%zq1}gf zrtA2t{$$`CX1H@zpGx7{%W?Q1I-0HYq3jH`^-Va9UiUV8H~4f`dcBj=~{bU;TLV~d7H*+~;rMe)={)7l94&tZCh@s+RFecp zjC>LpTGO95ZCH**qOl(y1i29jXRhf zsQIQ+(icI!bFJK!QWw)T&9G~d%Y_KxbBmRtT?w)O07V?Pl0fG^!|zBbd5mGcwYu_4 z<}n7{yhraV*8}&v%6?E=VB1{)B+>_Z&F?FP9GP6v?C3%-yKieQZUr!3;6CI4)=@}H zo5=C&!8_>YkF&!?ZO)KA$2OrMa4)ouu_y{s(Y80S&UTjMk~rGi7U-@^8zg6~!{Dp# zh$GrSMDpOvCL82eqlK<^SGwKFlgk_@bQyo>fQk{7uDX8nEAP=n$zDyl54l=oS-fp< zfMCQ6eV1LF`2eLjj`5kY=$pGOZ>y(&B?Qp8w>vnIaycL;yJRkScOHHUXlrAI_LbUw z$Xt8CZI<0qlJa{@;l%(^^Fb-}dNZ2uJ7Y_OoZAk0kge35`3rahd;k^;tDt#Qq6X{JdW+_}5T>WNrL0rnpRhG^n$j&D=} z+oaT`@k%{a>MhA{)gta_4qTOhTI-MsPh}xIisR8nPz`f~TB#h>Ps+`2r@2ok5;q}! zR7RQ>Q^Fh_a#GkOJaNGY1Bl|4&h2Z#ao19sG|@@9cLmo;+<@*4NpdyJyS*oh1CPNw zhKZzIcLI<|)yh1|UuMAojR8DIa^&A;>PD0YSY=AM5p<@(1VECfvdbq4GMvh!(-%LY z1CEWdTMU*uCL8C`DRAI`=NC1WXz5E~~QX>sbJo8MRMM$~ieWTbcow!W zvk!LgyEeKj1V@uAdT~&(z#DSrc_16=ogK+ULbE6Zjy>Nc1Iu%2g&08MkZ9kT99J2THjCo;u0+hI=F3eSPZn zUffhV7eR&6vYHX<9`6O7^EYSDBb@Wp>aW92(95|pQZdwG6K^W2A2Ax;?$CRchEM=< z=CgULaZ@$Erk(1{aRILc1!hx#a`O2r42U(ohkMkwJVuE_PG7VT9j2D<{{U3tHA((O>m&)}4x8GTaR z@hVFN+HycMQn{(+tE}&`fNJEL{gk5Tf&n$=mojY9MNbxar)UTjZqYTpntY{B^j3^Z zRUA2s-()JcXxSfTowx5m<*c5ext{+3a;+(7Yp(7K9P|ArX{sxwnC5n4f0B$!{!RF( znK*W>Yj{~iWt^W!7hz*^*)ADQUekTyG1D_6pO-+Ymq;Rej$GqaT->*|=XEFokyJ3W z9LtQ1c5dCimZ`ed%t|rhdYYbt8+c$6LKCsiTdfKA`kKOTA+?Yuap_=}eCVXcc_1wf79sTZp$U zvT{I0J4~D&(4iE~Iv3l$T5u;$&jno4yth|)1Op?8okRWV$C|`*7rn0jWeJV&>BRT` zX)?&-;#-g)9vay52IlcdWPRM$itKi7ZBL*W|go!Kllr z;+vS0u9iSMU$gI0x(7da(G+tjb)`Wdpq*WV+}D-NtiYfLzwHHuiN& zB6GV#g6-SdZuRT`mEoBf_MhcIMI8~1xr45p zBD;NOH6fY%%R5bZrpZvy`!`etn5m<7p8J%KiYR``Di=ydbCt&2)O+SQ>cj-km4Wxo zbYqIx0(XAi>;OYj$|tyZY1L?ukui2 z?17R?9yV58A7nQpg@OScOw!SlEyq_b^LzUFeac9~@{g6&pf*ox+HnX7>Ep@S?5Kza zM_tw$`<01W*xndi;+8le?I0_PX1lar?-8O$kr54Rxb^CvETydxx0*1}x;?kzfE>mXCtTPvO3fEm50k-npo z#4@?}cgIC?Ur2I?C`}~H;QWJ?&*cpP=nS>JA0Gcmd-CMIst zb9iciuI!g}n{nQy6FN2k)@f~3h#}r_)ACj&qlz}U%yWV7Kn>lN_WF-)O9Wu%mF?g! zbw8Q1*^850-Q<}|`val@g`3dg*V!#J4#?)Yws_!2M6Ar&?Cha{Xgia4bz$y!lHhRY zmcm%$m6F?ak(ar;wC2im&d>)ER1BTvqdT3P{pxaG8}4%>VOn}NIQmz(+ouI2Zl;X% zx|VmemR;7;=IMdd?(8}Icz7dWPG@g(2%6{LT~oyz#=>7lJCQa<*xox@kKRcwK^dIP zq<5oXRg?^ow(ZCVGP&4$H0)a4RghgLue==Y9Fe(uPW0~y1!q#Z*{s&tLg*umhPke| z)Z3!DynBeWP7LZ(U6tCqC>P?GQgMO5RLgb01s?ddjv=l0t5edmd6|uEzDtdo&f9fB zMGP;QyT|1p%&*585!)@8LaQ8wt?X{>6^;Ca`t7%J0nUOsvR&CSUxzfFZVRxe=4;+1;i7Axkan8x98}RZDLoWf zqhCH_~M)8}{xQ?pF(eZ}d>(iB!3XYyXTPOWiP&&4l<{POlu9`-Jl(NUJ zWWH%0Os{iGY=Da7!oc3ZD#mD{WukKj+X_9)L|IGp;*>-$=%U^~y#U&WIk5I+$PYzQ zI(cWzUoQ>?NxgfEn>0@F91?FOh4zao0UZmV)vv!TQi+`(ZSBy1e+17soaT3Dv-c}B zvk6-4%(sdGJn%{CHNe~8lxKdfmtTUe>PNO`ILnY8AC1&*rDL^xu0ALWvbp=ON3VEI zp#(nXfK}l##}%oapYT?E>vYS#jxHQh3ok4U*G`=j5txjQW^4EI;JO-?%>2cP!dCVJsTX+VZ^H}YrRuDRWTS4<};vr`318T%EA*90PK7RZOzBM?nj?bNoIC2W}eCvLe`nvos!K zl8Ut=^Wd5=ocBp`Ga+_ z@bN%clt47i`KsmuH50nT`;>0;liF=R58h1PSD2X5PU2a_{{UqHaPM4P(&vyrdqoqA z^ZL%tIDb^b1!Vc0_BamyitI5q0h(?-58{As@Rw$DT^+~TN*qgdb3ovhI0adI<P+>2n7;%(o=D zVW*~aj&t6|a?NE<971@s%G#PYM&%haMQju^Gx>YBnN z(U16`DQ-(?vb!}AM!a#p8oQZd3KUcJuC3rH zuv-4);L!`O19OwamktO8m9aX{mDvl&H29*Y%h`#tWE}V?cYFT;NapG~yMm3JnJ~4N8G(1REy#83o&fj@T%tfK@4$MWh?no?5=&}GZf_WygIP`n< zJ^a))a)~k+B5AlzhB;)IJDBQ`WXqPO5oz;VV{_7^6g0uRk6QJOL zqfJouvv%e2ku?Ni*~u08R6#q;1~Ic<6v**c#l9%^>1bZM;l#BV&efpjL+M&CJ&O^CfU_>@zF# zb>yfix_r#@ce&8qYsn@W8p+)YHD%7Itk6-r$5v^Iw!?D;?_2_0o7V_w^oQbx989#aHh`YIhynF zKp`?!vp!2(Us)wwk@>ZwbF+i3x+%L5wcD)|l01x!nKImJ?Jd;-3(QTNG0tvAaT&QQJKAY!r8#xBinD3k z1A7@}n~uDbcePQ)W<=3$B)I^iIcDxJd&`nMg4Z-Vf$g5Bxk2Z(H?y3^58>3NzIRDV z_>4{uzMQ@23yjf%EVd-yRXK`jv%p!{XEKC3u4vhv`9T8uuAdyPm7SM5Hd~4U`!mqy zYnvPGs+di_iR~?OFVPJ8Mp+rVEY`!<`Ke>ACY|jLXtClD4c=QR)04Q}M~i0>(#5zql*{{RIXc_nvg+nDXI zdX5MiHDk9e&l?5*0K2LV6J=|mhd@QiJk*ib%PZXz+Z}-ArIVROQRg?wW*^=b3MaxN zlhIT}0UGwW*&7Lb?q>EF?1QLGeN>#^ez#TTmMA04_qeLeoXT@V-Fx^Z1nKJBSnRE3 z&k~*It!cBhw;MH9j$sTp5l3=(6+3YW102&7QQUG;7e1Ax5m}HvJ0zqGy>g#>RJ>bIgD$=;`FAk<;$U;yXxtzK##=y@uNL3K53E+I#A*!N@1Y zONPWlqR@^d=>#sUr;?)4dPkqI-7Kv{VKnZKap^i`Qbg=Jl!@{*NH`}y6Ou_@Y4V0! ziUK1e^0*3DMtbE*UNbAazkuW<#WqB4`^XPM$t2@Os>h@pi?+R z>u1*d%A0rv2!v%f{>o|8i}OH0TMSY%%yEB1sQ4=pPv=?8kT*^xJ&koFSB<&GrTt2X zRa6#g>j82`UZ@EkT~6HWV;Pv~+`2j6GjhGY{^bLmES|KhqnFKC=?+pjl7LC-w;6za z$kN=D?3hhX!sfMv^Hg&_u6vd=268F$wrEY7#0e5Ht+h zkY)k8j%7(4vc}uFjPWQ7a>&O=*k!ci+?>dzEZ$_u!R?-kIAMERyl!lk)N)p8B&d!j zI6FbabVv{u`q>-DflqmNtj!I(v{7O5Zy|p3DAht_bW^yDxep`J08XN*(!k)%q2rPm zb2@C&ao{h(O&wD+-Ti~ZUy_BAmq~ZIro-Be!7-WSaAWk)sAQU;#PJq~ zh5LeID&%ZgWYmohRBSDpNH?C5m%nVPwG<661HQpHzCr8D!{m^-mj~}}Zm0&jmN5K| zb8HlH!q_u4jk^w`qMSr0r*og79XX_gG(_nin?b~&84hUknK|@QK0s{Nw;&p+qK-M3 z=LcI&0a2Pp7Uz}v+vI>}XdJu=;#4kkv)en4PP_uQyNW~Ed#*TH+yb!5OGBBh^?LF5 zpdmZM3y5}mb>yKKl)^lYV@8}+yxXZRGT3{RPKlFD<0M&-5R65Iwrg$pDLm=Lp_#NP zC8BIyt_)T3#xiDa1AR~y;gON=rIRl1)=)ZnX-l%i-t*8Tb40zEcwXgCGhw8m-u6tN z#omD7x@=j4tSw+t#Mp`T+kI6*G*UCBek1W+9_7+@J?IJMfzmm_x{x)pl6*XFV-M3$ z^-N(sw?{uC?5iNpEMU2fon+DsV`_%iVRZXLs%WLZY0DTfeM)>B*CS5q5?-T?qj;8L+ z_JMD-28m|^HoUilV#eR!%})A9wYtjdB#M_QbV06vGI}5)hj%juS2>IvM>4Outct+3 zxjLprhrIn$n!r8*M-(#6=*#-*fRWMDNtpUDc!R^mRwU+ejm-dPoN)P~kTl5N3yfJ= zk*(Bm_aGvFYqa-X!ouk+_K-U*&CfD#rg5`ddwdm>3tf=EjgRp)t3y zn4Tn_N>N7~U8eRAdRQGMcW*cyP!X^;IkUglT^#bpT`uawhvRg$0n<;K7dM6cET2Ak zqX&TJ(MUQv!#u&RXYrm%uf%sx^o_qAS;-?IcNTUd0^_{+s$0i6*u`RXKoI&)65mqe zy-7V|DjEz-Xty$kSUK+w&<+7K--BD5U$Tt_*VZx_8S0Di>7t$TvT>Nc-PySzPJok` zvr)&QiXk(%vNgJm2TLPBNyUdSYx!TfScW!U{K!-WjP$Ls9XKhe19%>KlbHcAX)e{x z(^VPF;_l70Qn|th=3^R1GJBHmnKK+aApQsn^EKj5!<}tB0$Q;&k^xTn2V?G2mk5~V z_HK1hx@R@HBha2`2u2@L-rV!Fh70?W8du5MYuk|O6}MGPS-UK0xUu}za@@?zz(;?A z0=y80w|SoOGWP8&G?Ez$gIjZC+BvD4JF{lhns+WTjp#5rtroXL1&QXCI%oD;!hf== z+tFr`?PY+`O}LS;_N8yVS2WYMZSGrZ$1(y3H?ZLR%;ZV_s(9mIi>99YCeL|wJPLH| z-OL(YrMdDzBy`b;vp-krPjFIw63WihbsMk(X_x$pMo3KVds^Wb98Q-&bX3BgCN=)R z9U6D9-j0BlDd#HG;RFU1V$UH zS~OPasI0+1Gp@W8UB5cr2FG{xKt&vK%j)`;=l7>N2?Sm7>)q8_6p}s)Ph*MTtV00Fd0BrIekmE3D;Uw=+?_PE?S4nP=Ewo2k`wB?c6<6KUC=Wt z-S1YM=q@t0`Xbw_ZpHDQYAI?Jdp#x|p|v%dT(9T@cf?nPcm6qNr<|XGf^} zkO>Tdt#B>yzX9T0&y~*yrG--LuYJn~jvvHUP&uT&k3yB@UA@)q_y2 znu=L{5qA%{Oy;oW0xPqrZ_PpGa5vRsbN>JdKtf>>J?(}1TS1v8o6Sik@UyYkHI>Ne zH&SNdZki$`*QR#!Msd0WJzDyQv@$k5oPRYmLReY^t+V*D{RdR(s-})>H#M8jD(B*@ zniodqIF@ze-hgK9^>cQeYlEssLAzs_n}<~!Ds0yQp#CI<(q8X%{9J(GLt5_TJW}>9 zIN4W|Gg;bg%H|oQh&he20E~0Y$A)pg$yjl5eUJJo5O11qFHi5_ujZ2dw)o#f1T_t) z4t7UbimZ;adv3pqI|fHLw%sksMC?B_nOMxxpSFMu$3IN1(M($DTb@=oC`FAcqSLd* zRjdXpW@AV^&=E%iBVdy!qdz5MM(LM|Z=c3&!=UNOJx8K}=hB(Ak0qQ>QEUt2w21VE5d2q+#`# z-2l3v8M`^%n?QJ}w=Rjh(W<&=AH?fq-rQ$Y0Pi@=+^%mA-cOFQSi2)p@K#*bNt*1{ zJI#QK<&C!=>VSvO32v=uO?_7OEQP)u$*hX{<5|H&cNdB6IopmHaaCV>~ZYn1aVM`M(51VT91MP>8XzQ z3A0r~VYffYQ<1VX-Q4-5h0G1KjpNk;UDFtbR(7tfLovx`vs3U+kVMm&t!ldickns+ zT0AsBRW#xDaCMI*#}8@kIm+9&aKEV|~CKZ_m1id@0E4r*xS-Advc#B1Du9_Gk>m13GGjhgRy%$oS* zbNeZbrF&%FJ1#^8m(zf9vCTL8l}fr(rdL|rRmL>P?`T~mG%b%XcWYi~3Qlvt`|g_% ubeV|IE6!-&IC}v!$7kGVfUIfH6&tAA$1`+SeAKv$IY?-OS*x@_fB)H;T`SrE literal 0 HcmV?d00001 diff --git a/resources/sample_files/README.md b/resources/sample_files/README.md index 4f0142397ba..2a47172e8e8 100644 --- a/resources/sample_files/README.md +++ b/resources/sample_files/README.md @@ -3,4 +3,6 @@ These files are included as shared sample data files for use in examples in this * [movies.json](movies.json) `A sample data set for examples using a common movies data model.` * [speech_sample.mp3](.sample_media/speech_sample.mp3) `A sample audio file of speech used for Amazon Transcribe examples.` +* [spheres_2.jpg](.sample_media/spheres_2.jpg) `A sample image of the Amazon Spheres in Seattle.` +* [market_2.jpg](.sample_media/market_2.jpg) `A sample image of the public market in Seattle.` From eb1f1c5b8d2cb15e4d78a4e8196584395d3b8818 Mon Sep 17 00:00:00 2001 From: Steven Meyer <108885656+meyertst-aws@users.noreply.github.com> Date: Wed, 1 Mar 2023 15:59:42 -0500 Subject: [PATCH 17/17] 4181 tag c++ tests (#4472) * Setting up python script * Tests running globally with filter * updated some comments * tests tagged * Tests and build working * Changes for windows * Docker file and run script for tests * Clean up of comments * Some comments fixes. * Text fixes and one bug fix --- cpp/.dockerignore | 7 - cpp/.gitignore | 3 +- cpp/Dockerfile | 85 +++++---- cpp/Dockerfile.dockerignore | 4 + cpp/build_all_examples.sh | 22 ++- cpp/example_code/autoscaling/CMakeLists.txt | 2 +- .../groups_and_instances_scenario.cpp | 109 ++++++------ .../autoscaling/tests/CMakeLists.txt | 32 ++-- .../autoscaling/tests/autoscaling_gtests.cpp | 12 +- .../autoscaling/tests/autoscaling_gtests.h | 3 + .../gtest_groups_and_instances_scenario.cpp | 48 +++-- cpp/example_code/cognito/CMakeLists.txt | 2 +- cpp/example_code/cognito/tests/CMakeLists.txt | 43 ++--- .../cognito/tests/cognito_gtests.cpp | 12 +- .../cognito/tests/cognito_gtests.h | 1 + .../gtest_getting_started_with_user_pools.cpp | 10 +- .../serverless-aurora/CMakeLists.txt | 2 +- .../serverless-aurora/tests/CMakeLists.txt | 26 +-- .../tests/gtest_serverless_aurora.cpp | 10 +- .../tests/serverless_aurora_gtests.cpp | 12 +- .../tests/serverless_aurora_gtests.h | 3 + cpp/example_code/dynamodb/CMakeLists.txt | 6 +- .../dynamodb/tests/CMakeLists.txt | 37 ++-- .../dynamodb/tests/dynamodb_gtests.cpp | 4 + .../dynamodb/tests/dynamodb_gtests.h | 3 + .../dynamodb/tests/gtest_batch_get_item.cpp | 11 +- .../dynamodb/tests/gtest_batch_write_item.cpp | 11 +- .../dynamodb/tests/gtest_create_table.cpp | 11 +- .../gtest_create_table_composite_key.cpp | 11 +- .../dynamodb/tests/gtest_delete_item.cpp | 11 +- .../dynamodb/tests/gtest_delete_table.cpp | 11 +- .../dynamodb/tests/gtest_describe_table.cpp | 11 +- ...test_dynamodb_getting_started_scenario.cpp | 10 +- .../gtest_dynamodb_partiql_batch_scenario.cpp | 11 +- ...gtest_dynamodb_partiql_single_scenario.cpp | 11 +- .../dynamodb/tests/gtest_get_item.cpp | 11 +- .../dynamodb/tests/gtest_list_tables.cpp | 11 +- .../dynamodb/tests/gtest_put_item.cpp | 11 +- .../dynamodb/tests/gtest_query_items.cpp | 11 +- .../dynamodb/tests/gtest_scan_table.cpp | 11 +- .../dynamodb/tests/gtest_update_item.cpp | 11 +- .../dynamodb/tests/gtest_update_table.cpp | 11 +- cpp/example_code/glue/CMakeLists.txt | 2 +- cpp/example_code/glue/tests/CMakeLists.txt | 37 ++-- cpp/example_code/glue/tests/glue_gtests.cpp | 10 +- cpp/example_code/glue/tests/glue_gtests.h | 3 + .../gtest_glue_getting_started_scenario.cpp | 2 +- cpp/example_code/iam/CMakeLists.txt | 6 +- cpp/example_code/iam/gtests/CMakeLists.txt | 37 ++-- .../iam/gtests/gtest_access_key_last_used.cpp | 10 +- .../iam/gtests/gtest_attach_role_policy.cpp | 11 +- .../iam/gtests/gtest_create_access_key.cpp | 10 +- .../iam/gtests/gtest_create_account_alias.cpp | 10 +- .../iam/gtests/gtest_create_policy.cpp | 10 +- .../iam/gtests/gtest_create_role.cpp | 10 +- .../iam/gtests/gtest_create_user.cpp | 10 +- .../iam/gtests/gtest_delete_access_key.cpp | 10 +- .../iam/gtests/gtest_delete_account_alias.cpp | 10 +- .../iam/gtests/gtest_delete_policy.cpp | 10 +- .../gtest_delete_server_certificate.cpp | 10 +- .../iam/gtests/gtest_delete_user.cpp | 10 +- .../iam/gtests/gtest_detach_role_policy.cpp | 10 +- .../iam/gtests/gtest_get_policy.cpp | 10 +- .../gtests/gtest_get_server_certificate.cpp | 10 +- ...t_iam_create_user_assume_role_scenario.cpp | 10 +- .../iam/gtests/gtest_list_access_keys.cpp | 10 +- .../iam/gtests/gtest_list_account_aliases.cpp | 10 +- .../iam/gtests/gtest_list_policies.cpp | 10 +- .../gtests/gtest_list_server_certificates.cpp | 10 +- .../iam/gtests/gtest_list_users.cpp | 10 +- .../iam/gtests/gtest_put_role_policy.cpp | 10 +- .../iam/gtests/gtest_update_access_key.cpp | 10 +- .../gtest_update_server_certificate.cpp | 10 +- .../iam/gtests/gtest_update_user.cpp | 10 +- cpp/example_code/iam/gtests/iam_gtests.cpp | 10 +- cpp/example_code/iam/gtests/iam_gtests.h | 3 + cpp/example_code/lambda/CMakeLists.txt | 2 +- cpp/example_code/lambda/tests/CMakeLists.txt | 35 ++-- ...st_get_started_with_functions_scenario.cpp | 10 +- .../lambda/tests/lambda_gtests.cpp | 11 +- cpp/example_code/lambda/tests/lambda_gtests.h | 3 + cpp/example_code/s3/CMakeLists.txt | 6 +- cpp/example_code/s3/tests/CMakeLists.txt | 48 ++--- cpp/example_code/s3/tests/S3_GTests.cpp | 10 +- cpp/example_code/s3/tests/S3_GTests.h | 3 + .../s3/tests/gtest_copy_object.cpp | 10 +- .../s3/tests/gtest_create_bucket.cpp | 10 +- .../s3/tests/gtest_delete_bucket.cpp | 10 +- .../s3/tests/gtest_delete_bucket_policy.cpp | 10 +- .../s3/tests/gtest_delete_object.cpp | 10 +- .../s3/tests/gtest_delete_objects.cpp | 10 +- .../s3/tests/gtest_delete_website_config.cpp | 10 +- .../s3/tests/gtest_get_bucket_acl.cpp | 10 +- .../s3/tests/gtest_get_bucket_policy.cpp | 11 +- .../s3/tests/gtest_get_object.cpp | 11 +- .../s3/tests/gtest_get_put_bucket_acl.cpp | 10 +- .../s3/tests/gtest_get_put_object_acl.cpp | 12 +- .../s3/tests/gtest_get_website_config.cpp | 11 +- .../s3/tests/gtest_list_buckets.cpp | 10 +- ...gtest_list_buckets_disabling_dns_cache.cpp | 10 +- .../s3/tests/gtest_list_objects.cpp | 11 +- ...st_list_objects_with_aws_global_region.cpp | 11 +- .../s3/tests/gtest_put_bucket_acl.cpp | 10 +- .../s3/tests/gtest_put_bucket_policy.cpp | 11 +- .../s3/tests/gtest_put_object.cpp | 10 +- .../s3/tests/gtest_put_object_async.cpp | 10 +- .../s3/tests/gtest_put_object_buffer.cpp | 10 +- .../s3/tests/gtest_put_website_config.cpp | 11 +- cpp/example_code/sts/CMakeLists.txt | 15 +- cpp/example_code/sts/gtests/CMakeLists.txt | 36 ++-- .../sts/gtests/gtest_assume_role.cpp | 10 +- cpp/example_code/sts/gtests/sts_gtests.cpp | 10 +- cpp/example_code/sts/gtests/sts_gtests.h | 3 + cpp/run_automated_tests.py | 164 ++++++++++++++++++ 114 files changed, 1259 insertions(+), 391 deletions(-) delete mode 100644 cpp/.dockerignore create mode 100644 cpp/Dockerfile.dockerignore create mode 100644 cpp/run_automated_tests.py diff --git a/cpp/.dockerignore b/cpp/.dockerignore deleted file mode 100644 index a1e644d5bdf..00000000000 --- a/cpp/.dockerignore +++ /dev/null @@ -1,7 +0,0 @@ -/*/*/.vs/ -*/build/ -*/cmake-build*/ -*/*/build/ -*/*/cmake-build*/ -*/*/*/build/ -*/*/*/cmake-build*/ \ No newline at end of file diff --git a/cpp/.gitignore b/cpp/.gitignore index 30169839907..21c144c5685 100644 --- a/cpp/.gitignore +++ b/cpp/.gitignore @@ -1,3 +1,4 @@ build/ cmake-build*/ -.vs/ \ No newline at end of file +.vs/ +build_tests \ No newline at end of file diff --git a/cpp/Dockerfile b/cpp/Dockerfile index 855043baeec..78a56834b3e 100644 --- a/cpp/Dockerfile +++ b/cpp/Dockerfile @@ -1,40 +1,59 @@ -# This DockerFile was copied from the AWS SDK for C++. -# https://github.com/aws/aws-sdk-cpp/blob/master/CI/docker-file/Ubuntu/20.04/Dockerfile -# Additional run steps were added. - -# Using official ubuntu docker image -FROM ubuntu:20.04 - -# Install git, zip, python-pip, cmake, g++, zlib, libssl, libcurl, java, maven via apt -# Specify DEBIAN_FRONTEND and TZ to prevent tzdata hanging -RUN apt-get update && \ - apt-get upgrade -y && \ - DEBIAN_FRONTEND="noninteractive" TZ="America/Los_Angeles" apt-get install -y git zip wget python3 python3-pip cmake g++ zlib1g-dev libssl-dev libcurl4-openssl-dev openjdk-8-jdk doxygen ninja-build - -RUN update-alternatives --install /usr/bin/python python /usr/bin/python3 10 - -# Install maven -RUN apt-get install -y maven - -# Install awscli -#RUN pip install awscli --upgrade - -RUN mkdir /src -COPY . /src/ - -ENV SERVICES="autoscaling;ec2;iam;dynamodb;glue;lambda;monitoring;s3;sts" - -RUN mkdir /src/aws && \ - cd /src/aws && \ - git clone --recurse-submodules https://github.com/aws/aws-sdk-cpp && \ - cd aws-sdk-cpp && \ - mkdir build && \ +# Build this docker file from the sdk example code root directory in order to access the resources folder. +# +# To build the docker image, run the following command from the shell. +# 'docker build -f cpp/Dockerfile -t .' +# +# The following command will run the docker image, copying your AWS credentials. +# 'docker run -it --volume ~/.aws/credentials:/root/.aws/credentials ' + +FROM amazonlinux:2022 + +USER root + +# Set up the dependencies. +RUN \ + yum update -y && \ + yum install -y gcc gcc-c++ make cmake libcurl-devel openssl-devel libuuid-devel pulseaudio-libs-devel git && \ + yum clean all + +# Build only the services needed for example code. +ENV SERVICES="acm;autoscaling;cloudtrail;codebuild;codecommit;cognito-idp;dynamodb;ec2;elasticache;elasticbeanstalk" +ENV SERVICES=${SERVICES}";elasticfilesystem;email;events;glacier;glue;guardduty;iam;kinesis;lambda;logs;monitoring" +ENV SERVICES=${SERVICES}";monitoring;neptune;rds-data;redshift;s3;s3-crt;s3-encryption;secretsmanager;sesv2;sns;sqs" +ENV SERVICES=${SERVICES}";storagegateway;sts;transfer;transcribe;transcribestreaming" + +RUN echo ${SERVICES} + +# Build aws-sdk-cpp, building only the modules listed in SERVICES using the BUILD_ONLY argument. +RUN \ + cd /usr/local && \ + git clone --recurse-submodules https://github.com/aws/aws-sdk-cpp.git && \ + cd aws-sdk-cpp && \ + mkdir -p build && \ + cd build && \ + cmake -DCMAKE_BUILD_TYPE=Debug -DBUILD_ONLY=${SERVICES} -DENABLE_TESTING=ON .. && \ + make --jobs=3 install && \ + cd /usr/local + +# Install googletest. +RUN \ + git clone https://github.com/google/googletest.git -b v1.13.0 && \ + cd googletest && \ + mkdir build && \ cd build && \ - cmake .. -DCMAKE_BUILD_TYPE=Debug -DBUILD_ONLY=${SERVICES} -DENABLE_TESTING=OFF && \ + cmake .. -DBUILD_GMOCK=OFF && \ make && \ make install -WORKDIR /src +# Copy the C++ example code. +RUN mkdir -p /src/cpp +COPY cpp /src/cpp/ + +# The sample files are needed for some of the automated tests. +RUN mkdir -p /src/resources/sample_files +COPY resources/sample_files /src/resources/sample_files + +WORKDIR /src/cpp/ CMD ["bash"] diff --git a/cpp/Dockerfile.dockerignore b/cpp/Dockerfile.dockerignore new file mode 100644 index 00000000000..dc5d5881194 --- /dev/null +++ b/cpp/Dockerfile.dockerignore @@ -0,0 +1,4 @@ +**/build/ +**/cmake-build*/ +**/.idea/ +**/build_tests/ \ No newline at end of file diff --git a/cpp/build_all_examples.sh b/cpp/build_all_examples.sh index c1e406c801c..b7fb56ae2bc 100755 --- a/cpp/build_all_examples.sh +++ b/cpp/build_all_examples.sh @@ -1,12 +1,12 @@ #!/bin/bash -# Run the automated tests for cpp. +# Build the AWS example code for C++ . -TEST_CMAKE_FILES=$(ls example_code/*/CMakeLists.txt) -TEST_CMAKE_FILES=($TEST_CMAKE_FILES) -echo "TEST_CMAKE_FILES ${TEST_CMAKE_FILES}" +CMAKE_FILES=$(ls example_code/*/CMakeLists.txt) +CMAKE_FILES=($CMAKE_FILES) +echo "CMAKE_FILES ${CMAKE_FILES}" -len=${#TEST_CMAKE_FILES[@]} +len=${#CMAKE_FILES[@]} echo "len ${len}" if [[ ${len} == 0 ]]; then echo "No CMake files found!" @@ -20,7 +20,7 @@ echo "BUILD_DIR ${BUILD_DIR}" mkdir -pv ${BUILD_DIR} HAD_ERROR=false -for MAKE_FILE in "${TEST_CMAKE_FILES[@]}" +for MAKE_FILE in "${CMAKE_FILES[@]}" do SOURCE_DIR="${MAKE_FILE%CMakeLists.txt}" MODULE_BUILD_DIR="${BUILD_DIR}/${SOURCE_DIR}" @@ -34,7 +34,7 @@ do HAD_ERROR=true continue fi - make + cmake --build . if [ $? != 0 ]; then echo "ERROR with make ${$?}" HAD_ERROR=true @@ -42,8 +42,12 @@ do fi done -if [ HAD_ERROR ]; then +echo + +if [ $HAD_ERROR = true ]; then + echo "The build had errors." exit 1 else + echo "The build was successful with no errors." exit 0 -fi +fi \ No newline at end of file diff --git a/cpp/example_code/autoscaling/CMakeLists.txt b/cpp/example_code/autoscaling/CMakeLists.txt index fd75e24aacb..654623e7703 100644 --- a/cpp/example_code/autoscaling/CMakeLists.txt +++ b/cpp/example_code/autoscaling/CMakeLists.txt @@ -10,7 +10,7 @@ set(SERVICE_COMPONENTS autoscaling ec2 monitoring) # Set this project's name. project("${SERVICE_NAME}-examples") -#Set the location of where Windows can find the installed libraries of the SDK. +# Set the location of where Windows can find the installed libraries of the SDK. if(MSVC) string(REPLACE ";" "/aws-cpp-sdk-all;" SYSTEM_MODULE_PATH "${CMAKE_SYSTEM_PREFIX_PATH}/aws-cpp-sdk-all") list(APPEND CMAKE_PREFIX_PATH ${SYSTEM_MODULE_PATH}) diff --git a/cpp/example_code/autoscaling/groups_and_instances_scenario.cpp b/cpp/example_code/autoscaling/groups_and_instances_scenario.cpp index 2b05a64f3b1..c008f68a592 100644 --- a/cpp/example_code/autoscaling/groups_and_instances_scenario.cpp +++ b/cpp/example_code/autoscaling/groups_and_instances_scenario.cpp @@ -20,17 +20,17 @@ * 1. Specify the name of an existing EC2 launch template. * 2. Or create a new EC2 launch template. * 3. Retrieve a list of EC2 Availability Zones. - * 4. Create an EC2 Auto Scaling group with the specified Availability Zone. - * 5. Retrieve a description of the EC2 Auto Scaling group. + * 4. Create an Auto Scaling group with the specified Availability Zone. + * 5. Retrieve a description of the Auto Scaling group. * 6. Check lifecycle state of the EC2 instances using DescribeAutoScalingInstances. - * 7. Optionally enable metrics collection for the EC2 Auto Scaling group. - * 8. Update the EC2 Auto Scaling group, setting a new maximum size. - * 9. Update the EC2 Auto Scaling group, setting a new desired capacity. - * 10. Terminate an EC2 instance in the EC2 Auto Scaling group. - * 11. Get a description of activities for the EC2 Auto Scaling group. - * 12. Optionally list the metrics for the EC2 Auto Scaling group. + * 7. Optionally enable metrics collection for the Auto Scaling group. + * 8. Update the Auto Scaling group, setting a new maximum size. + * 9. Update the Auto Scaling group, setting a new desired capacity. + * 10. Terminate an EC2 instance in the Auto Scaling group. + * 11. Get a description of activities for the Auto Scaling group. + * 12. Optionally list the metrics for the Auto Scaling group. * 13. Disable metrics collection if enabled. - * 14. Delete the EC2 Auto Scaling group. + * 14. Delete the Auto Scaling group. * 15. Delete the EC2 launch template. * */ @@ -67,11 +67,11 @@ namespace AwsDoc { static const int ASTERISK_FILL_WIDTH = 88; static const int WAIT_FOR_INSTANCES_TIMEOUT = 300; // Time in seconds. - //! Routine which waits for EC2 instances in an EC2 Auto Scaling group to + //! Routine which waits for EC2 instances in an Auto Scaling group to //! complete startup or shutdown. /*! \sa waitForInstances() - \param groupName: An EC2 Auto Scaling group name. + \param groupName: An Auto Scaling group name. \param autoScalingGroups: Vector to receive 'AutoScalingGroup' records. \param client: 'AutoScalingClient' instance. \return bool: Successful completion. @@ -83,7 +83,7 @@ namespace AwsDoc { //! Routine to cleanup resources created in 'groupsAndInstancesScenario'. /*! \sa cleanupResources() - \param groupName: Optional EC2 Auto Scaling group name. + \param groupName: Optional Auto Scaling group name. \param templateName: Optional EC2 launch template name. \param autoScalingClient: 'AutoScalingClient' instance. \param ec2Client: 'EC2Client' instance. @@ -98,7 +98,7 @@ namespace AwsDoc { //! Routine which retrieves Auto Scaling group descriptions. /*! \sa describeGroup() - \param groupName: An EC2 Auto Scaling group name. + \param groupName: An Auto Scaling group name. \param autoScalingGroups: Vector to receive 'AutoScalingGroup' records. \param client: 'AutoScalingClient' instance. \return bool: Successful completion. @@ -117,7 +117,7 @@ namespace AwsDoc { const Aws::Vector & instancesDetails); - //! Routine which logs the EC2 Auto Scaling group info. + //! Routine which logs the Auto Scaling group info. /*! \sa logAutoScalingGroupInfo() \param autoScalingGroups: Vector of 'AutoScalingGroup' records. @@ -125,7 +125,7 @@ namespace AwsDoc { void logAutoScalingGroupInfo( const Aws::Vector &autoScalingGroups); - //! Routine which retrieves the Amazon CloudWatch metrics for an EC2 Auto Scaling group + //! Routine which retrieves the Amazon CloudWatch metrics for an Auto Scaling group //! and logs the results. /*! \sa logAutoScalingMetrics() @@ -204,7 +204,7 @@ namespace AwsDoc { } // AwsDoc // snippet-start:[cpp.example_code.autoscaling.groups_and_instances_scenario] -//! Routine which demonstrates using an Amazon EC2 Auto Scaling group +//! Routine which demonstrates using an Auto Scaling group //! to manage Amazon EC2 instances. /*! \sa groupsAndInstancesScenario() @@ -219,8 +219,8 @@ bool AwsDoc::AutoScaling::groupsAndInstancesScenario( std::cout << std::setfill('*') << std::setw(ASTERISK_FILL_WIDTH) << " " << std::endl; std::cout - << "Welcome to the Amazon EC2 Auto Scaling demo for managing groups and instances." - << std::endl; + << "Welcome to the Amazon Elastic Compute Cloud (Amazon EC2) Auto Scaling " + << "demo for managing groups and instances." << std::endl; std::cout << std::setfill('*') << std::setw(ASTERISK_FILL_WIDTH) << " \n" << std::endl; @@ -280,9 +280,9 @@ bool AwsDoc::AutoScaling::groupsAndInstancesScenario( // snippet-start:[cpp.example_code.autoscaling.autoscaling_client] Aws::AutoScaling::AutoScalingClient autoScalingClient(clientConfig); // snippet-end:[cpp.example_code.autoscaling.autoscaling_client] - std::cout << "Let's create an EC2 Auto Scaling group." << std::endl; + std::cout << "Let's create an Auto Scaling group." << std::endl; Aws::String groupName = askQuestion( - "Enter a name for the EC2 Auto Scaling group: "); + "Enter a name for the Auto Scaling group: "); // 3. Retrieve a list of EC2 Availability Zones. Aws::Vector availabilityZones; { @@ -293,7 +293,7 @@ bool AwsDoc::AutoScaling::groupsAndInstancesScenario( if (outcome.IsSuccess()) { std::cout - << "EC2 instances can be created in the following availability zones:" + << "EC2 instances can be created in the following Availability Zones:" << std::endl; availabilityZones = outcome.GetResult().GetAvailabilityZones(); @@ -312,9 +312,9 @@ bool AwsDoc::AutoScaling::groupsAndInstancesScenario( } int availabilityZoneChoice = askQuestionForIntRange( - "Choose an availability zone: ", 1, + "Choose an Availability Zone: ", 1, static_cast(availabilityZones.size())); - // 4. Create an EC2 Auto Scaling group with the specified Availability Zone. + // 4. Create an Auto Scaling group with the specified Availability Zone. { // snippet-start:[cpp.example_code.autoscaling.create_autoscaling_group1] Aws::AutoScaling::Model::CreateAutoScalingGroupRequest request; @@ -334,12 +334,12 @@ bool AwsDoc::AutoScaling::groupsAndInstancesScenario( autoScalingClient.CreateAutoScalingGroup(request); if (outcome.IsSuccess()) { - std::cout << "Created EC2 Auto Scaling group '" << groupName << "'..." + std::cout << "Created Auto Scaling group '" << groupName << "'..." << std::endl; } else if (outcome.GetError().GetErrorType() == Aws::AutoScaling::AutoScalingErrors::ALREADY_EXISTS_FAULT) { - std::cout << "EC2 Auto Scaling group '" << groupName << "' already exists." + std::cout << "Auto Scaling group '" << groupName << "' already exists." << std::endl; } else { @@ -357,7 +357,7 @@ bool AwsDoc::AutoScaling::groupsAndInstancesScenario( Aws::Vector autoScalingGroups; if (AwsDoc::AutoScaling::describeGroup(groupName, autoScalingGroups, autoScalingClient)) { - std::cout << "Here is the EC2 Auto Scaling group description." << std::endl; + std::cout << "Here is the Auto Scaling group description." << std::endl; if (!autoScalingGroups.empty()) { logAutoScalingGroupInfo(autoScalingGroups); } @@ -368,7 +368,7 @@ bool AwsDoc::AutoScaling::groupsAndInstancesScenario( } std::cout - << "Waiting for the EC2 instance in the auto scaling group to become active..." + << "Waiting for the EC2 instance in the Auto Scaling group to become active..." << std::endl; if (!waitForInstances(groupName, autoScalingGroups, autoScalingClient)) { cleanupResources(groupName, templateName, autoScalingClient, ec2Client); @@ -376,9 +376,9 @@ bool AwsDoc::AutoScaling::groupsAndInstancesScenario( } bool enableMetrics = askYesNoQuestion( - "Do you want to collect metrics about the Amazon " - "EC2 Auto Scaling group during this demo (y/n)? "); - // 7. Optionally enable metrics collection for the EC2 Auto Scaling group. + "Do you want to collect metrics about the A" + "Auto Scaling group during this demo (y/n)? "); + // 7. Optionally enable metrics collection for the Auto Scaling group. if (enableMetrics) { // snippet-start:[cpp.example_code.autoscaling.enable_metrics_collection1] Aws::AutoScaling::Model::EnableMetricsCollectionRequest request; @@ -394,7 +394,7 @@ bool AwsDoc::AutoScaling::groupsAndInstancesScenario( Aws::AutoScaling::Model::EnableMetricsCollectionOutcome outcome = autoScalingClient.EnableMetricsCollection(request); if (outcome.IsSuccess()) { - std::cout << "EC2 Auto Scaling metrics have been enabled." + std::cout << "Auto Scaling metrics have been enabled." << std::endl; } else { @@ -412,7 +412,7 @@ bool AwsDoc::AutoScaling::groupsAndInstancesScenario( std::cout << "Let's update the maximum number of EC2 instances in '" << groupName << "' from 1 to 3." << std::endl; askQuestion("Press enter to continue: ", alwaysTrueTest); - // 8. Update the EC2 Auto Scaling group, setting a new maximum size. + // 8. Update the Auto Scaling group, setting a new maximum size. { // snippet-start:[cpp.example_code.autoscaling.update_autoscaling_group1] Aws::AutoScaling::Model::UpdateAutoScalingGroupRequest request; @@ -457,7 +457,7 @@ bool AwsDoc::AutoScaling::groupsAndInstancesScenario( std::cout << "Let's update the desired capacity in '" << groupName << "' from 1 to 2." << std::endl; askQuestion("Press enter to continue: ", alwaysTrueTest); - // 9. Update the EC2 Auto Scaling group, setting a new desired capacity. + // 9. Update the Auto Scaling group, setting a new desired capacity. { // snippet-start:[cpp.example_code.autoscaling.set_desired_capacity1] Aws::AutoScaling::Model::SetDesiredCapacityRequest request; @@ -526,7 +526,7 @@ bool AwsDoc::AutoScaling::groupsAndInstancesScenario( 1, static_cast(instanceIDs.size())); - // 10. Terminate an EC2 instance in the EC2 Auto Scaling group. + // 10. Terminate an EC2 instance in the Auto Scaling group. { // snippet-start:[cpp.example_code.autoscaling.terminate_instance_autoscaling_group1] Aws::AutoScaling::Model::TerminateInstanceInAutoScalingGroupRequest request; @@ -561,7 +561,7 @@ bool AwsDoc::AutoScaling::groupsAndInstancesScenario( << groupName << "'." << std::endl; askQuestion("Press enter to continue: ", alwaysTrueTest); - // 11. Get a description of activities for the EC2 Auto Scaling group. + // 11. Get a description of activities for the Auto Scaling group. { // snippet-start:[cpp.example_code.autoscaling.describe_scaling_activities1] Aws::AutoScaling::Model::DescribeScalingActivitiesRequest request; @@ -630,11 +630,11 @@ bool AwsDoc::AutoScaling::groupsAndInstancesScenario( return cleanupResources(groupName, templateName, autoScalingClient, ec2Client); } -//! Routine which waits for EC2 instances in an EC2 Auto Scaling group to +//! Routine which waits for EC2 instances in an Auto Scaling group to //! complete startup or shutdown. /*! \sa waitForInstances() - \param groupName: An EC2 Auto Scaling group name. + \param groupName: An Auto Scaling group name. \param autoScalingGroups: Vector to receive 'AutoScalingGroup' records. \param client: 'AutoScalingClient' instance. \return bool: Successful completion. @@ -649,6 +649,10 @@ bool AwsDoc::AutoScaling::waitForInstances(const Aws::String &groupName, int desiredCapacity = 0; std::this_thread::sleep_for(std::chrono::seconds(4)); while (!ready) { + if (WAIT_FOR_INSTANCES_TIMEOUT < count) { + std::cerr << "Wait for instance timed out." << std::endl; + return false; + } std::this_thread::sleep_for(std::chrono::seconds(1)); ++count; @@ -666,6 +670,10 @@ bool AwsDoc::AutoScaling::waitForInstances(const Aws::String &groupName, break; } else { + if ((count % 5) == 0) { + std::cout << "No instance IDs returned for group." << std::endl; + } + continue; } } @@ -702,11 +710,6 @@ bool AwsDoc::AutoScaling::waitForInstances(const Aws::String &groupName, return false; } // snippet-end:[cpp.example_code.autoscaling.describe_autoscaling_instances2] - - if (WAIT_FOR_INSTANCES_TIMEOUT < count) { - std::cerr << "Wait for instance timed out." << std::endl; - return false; - } } if (!describeGroup(groupName, autoScalingGroups, client)) { @@ -719,7 +722,7 @@ bool AwsDoc::AutoScaling::waitForInstances(const Aws::String &groupName, //! Routine to cleanup resources created in 'groupsAndInstancesScenario'. /*! \sa cleanupResources() - \param groupName: Optional EC2 Auto Scaling group name. + \param groupName: Optional Auto Scaling group name. \param templateName: Optional EC2 launch template name. \param autoScalingClient: 'AutoScalingClient' instance. \param ec2Client: 'EC2Client' instance. @@ -731,10 +734,10 @@ bool AwsDoc::AutoScaling::cleanupResources(const Aws::String &groupName, const Aws::EC2::EC2Client &ec2Client) { bool result = true; - // 14. Delete the EC2 Auto Scaling group. + // 14. Delete the Auto Scaling group. if (!groupName.empty() && (askYesNoQuestion( - Aws::String("Delete the EC2 Auto Scaling group '") + groupName + + Aws::String("Delete the Auto Scaling group '") + groupName + "' (y/n)?"))) { { Aws::AutoScaling::Model::UpdateAutoScalingGroupRequest request; @@ -747,7 +750,7 @@ bool AwsDoc::AutoScaling::cleanupResources(const Aws::String &groupName, if (outcome.IsSuccess()) { std::cout - << "The minimum size and desired capacity of the EC2 Auto Scaling group " + << "The minimum size and desired capacity of the Auto Scaling group " << "was set to zero before terminating the instances." << std::endl; } @@ -788,7 +791,7 @@ bool AwsDoc::AutoScaling::cleanupResources(const Aws::String &groupName, std::cout << "Waiting for the EC2 instances to terminate before deleting the " - << "EC2 Auto Scaling group..." << std::endl; + << "Auto Scaling group..." << std::endl; waitForInstances(groupName, autoScalingGroups, autoScalingClient); } @@ -801,7 +804,7 @@ bool AwsDoc::AutoScaling::cleanupResources(const Aws::String &groupName, autoScalingClient.DeleteAutoScalingGroup(request); if (outcome.IsSuccess()) { - std::cout << "EC2 Auto Scaling group '" << groupName << "' was deleted." + std::cout << "Auto Scaling group '" << groupName << "' was deleted." << std::endl; } else { @@ -842,7 +845,7 @@ bool AwsDoc::AutoScaling::cleanupResources(const Aws::String &groupName, //! Routine which retrieves Auto Scaling group descriptions. /*! \sa describeGroup() - \param groupName: An EC2 Auto Scaling group name. + \param groupName: An Auto Scaling group name. \param autoScalingGroups: Vector to receive 'AutoScalingGroup' records. \param client: 'AutoScalingClient' instance. \return bool: Successful completion. @@ -850,7 +853,7 @@ bool AwsDoc::AutoScaling::cleanupResources(const Aws::String &groupName, bool AwsDoc::AutoScaling::describeGroup(const Aws::String &groupName, Aws::Vector &autoScalingGroup, const Aws::AutoScaling::AutoScalingClient &client) { - // 5. Retrieve a description of the EC2 Auto Scaling group. + // 5. Retrieve a description of the Auto Scaling group. // snippet-start:[cpp.example_code.autoscaling.describe_autoscaling_group] Aws::AutoScaling::Model::DescribeAutoScalingGroupsRequest request; Aws::Vector groupNames; @@ -936,7 +939,7 @@ void AwsDoc::AutoScaling::logInstancesLifecycleState( } } -//! Routine which logs the EC2 Auto Scaling group info. +//! Routine which logs the Auto Scaling group info. /*! \sa logAutoScalingGroupInfo() \param autoScalingGroups: Vector of 'AutoScalingGroup' records. @@ -966,7 +969,7 @@ void AwsDoc::AutoScaling::logAutoScalingGroupInfo( } } -//! Routine which retrieves the Amazon CloudWatch metrics for an EC2 Auto Scaling group +//! Routine which retrieves the Amazon CloudWatch metrics for an Auto Scaling group //! and logs the results. /*! \sa logAutoScalingMetrics() @@ -977,7 +980,7 @@ bool AwsDoc::AutoScaling::logAutoScalingMetrics(const Aws::String &groupName, const Aws::Client::ClientConfiguration &clientConfig) { std::cout << "Let's look at CloudWatch metrics." << std::endl; - // 12. Optionally list the metrics for the EC2 Auto Scaling group. + // 12. Optionally list the metrics for the Auto Scaling group. Aws::CloudWatch::CloudWatchClient cloudWatchClient(clientConfig); Aws::Vector allMetrics; { diff --git a/cpp/example_code/autoscaling/tests/CMakeLists.txt b/cpp/example_code/autoscaling/tests/CMakeLists.txt index 866bd83c893..79624f2bb48 100644 --- a/cpp/example_code/autoscaling/tests/CMakeLists.txt +++ b/cpp/example_code/autoscaling/tests/CMakeLists.txt @@ -14,15 +14,23 @@ project("${EXAMPLE_SERVICE_NAME}-examples-gtests" ) # Set the C++ standard to use to build this target. set(CMAKE_CXX_STANDARD 14) -include(FetchContent) -FetchContent_Declare( - googletest - GIT_REPOSITORY https://github.com/google/googletest.git - GIT_TAG release-1.12.1 -) -# For Windows: Prevent overriding the parent project's compiler/linker settings. -set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) -FetchContent_MakeAvailable(googletest) +# Build shared libraries by default. +set(BUILD_SHARED_LIBS ON) + +find_package(GTest) + +if(NOT GTest_FOUND) + include(FetchContent) + FetchContent_Declare( + googletest + GIT_REPOSITORY https://github.com/google/googletest.git + GIT_TAG release-1.12.1 + ) + + # For Windows: Prevent overriding the parent project's compiler/linker settings. + set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) + FetchContent_MakeAvailable(googletest) +endif() # Set the location for Windows to find the installed libraries of the SDK. if(MSVC) @@ -47,11 +55,11 @@ add_executable( if(MSVC AND BUILD_SHARED_LIBS) add_definitions(-DUSE_IMPORT_EXPORT) - set(CMAKE_BUILD_TYPE Debug) #Explicitly setting CMAKE_BUILD_TYPE is necessary in Windows to copy DLLs. + set(CMAKE_BUILD_TYPE Debug) # Explicitly set this to support library copying and test automation. # Copy relevant AWS SDK for C++ libraries into the current binary directory for running and debugging. AWSSDK_CPY_DYN_LIBS( - SERVICE_LIST + CURRENT_TARGET_AWS_DEPENDENCIES "" ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE} ) @@ -78,8 +86,6 @@ endif() # Check whether the target system is Windows, including Win64. if(WIN32) - list(FILTER GTEST_SOURCE_FILES EXCLUDE REGEX "/gtest_list_buckets_disabling_dns_cache.cpp$") # Not supported in windows, see file for details - # Check whether the compiler is some version of Microsoft Visual C++, or another compiler simulating C++. if(MSVC) source_group("Source Files" FILES ${GTEST_SOURCE_FILES}) diff --git a/cpp/example_code/autoscaling/tests/autoscaling_gtests.cpp b/cpp/example_code/autoscaling/tests/autoscaling_gtests.cpp index 8e95e787992..75503091ca0 100644 --- a/cpp/example_code/autoscaling/tests/autoscaling_gtests.cpp +++ b/cpp/example_code/autoscaling/tests/autoscaling_gtests.cpp @@ -19,13 +19,15 @@ void AwsDocTest::AutoScaling_GTests::SetUpTestSuite() { } void AwsDocTest::AutoScaling_GTests::TearDownTestSuite() { - ShutdownAPI(s_options); + ShutdownAPI(s_options); } void AwsDocTest::AutoScaling_GTests::SetUp() { - m_savedBuffer = std::cout.rdbuf(); - std::cout.rdbuf(&m_coutBuffer); + if (suppressStdOut()) { + m_savedBuffer = std::cout.rdbuf(); + std::cout.rdbuf(&m_coutBuffer); + } m_savedInBuffer = std::cin.rdbuf(); std::cin.rdbuf(&m_cinBuffer); @@ -62,6 +64,10 @@ Aws::String AwsDocTest::AutoScaling_GTests::preconditionError() { return "Failed to meet precondition."; } +bool AwsDocTest::AutoScaling_GTests::suppressStdOut() { + return std::getenv("EXAMPLE_TESTS_LOG_ON") == nullptr; +} + int AwsDocTest::MyStringBuffer::underflow() { int result = basic_stringbuf::underflow(); diff --git a/cpp/example_code/autoscaling/tests/autoscaling_gtests.h b/cpp/example_code/autoscaling/tests/autoscaling_gtests.h index 3d162f10830..862f5cd34a9 100644 --- a/cpp/example_code/autoscaling/tests/autoscaling_gtests.h +++ b/cpp/example_code/autoscaling/tests/autoscaling_gtests.h @@ -37,6 +37,9 @@ namespace AwsDocTest { static std::unique_ptr s_clientConfig; private: + + bool suppressStdOut(); + static Aws::SDKOptions s_options; std::stringbuf m_coutBuffer; // Used to silence cout. diff --git a/cpp/example_code/autoscaling/tests/gtest_groups_and_instances_scenario.cpp b/cpp/example_code/autoscaling/tests/gtest_groups_and_instances_scenario.cpp index a9c5179288a..b79f67e03f4 100644 --- a/cpp/example_code/autoscaling/tests/gtest_groups_and_instances_scenario.cpp +++ b/cpp/example_code/autoscaling/tests/gtest_groups_and_instances_scenario.cpp @@ -2,6 +2,15 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials and pre-configured resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ + #include #include #include "autoscaling_gtests.h" @@ -9,24 +18,27 @@ SPDX-License-Identifier: Apache-2.0 namespace AwsDocTest { // NOLINTNEXTLINE (readability-named-parameter) - TEST_F(AutoScaling_GTests, groups_and_instances_scenario) { - AddCommandLineResponses({"n", // "Would you like to use an existing EC2 launch template (y/n)?" - "integration_tests_template", // "Enter the name for a new EC2 launch template: " - "integration_tests_group", // "Enter a name for the EC2 Auto Scaling group: " - "1", // "Choose an availability zone: " - "y", // "Do you want to collect metrics about the Amazon EC2 Auto Scaling during this demo (y/n)?" - "", // "Press enter to continue:" - "", // "Press enter to continue:" - "1", // "Which EC2 instance do you want to stop?" - "", // "Press enter to continue:" - "1", // "Which metric would you like to view? " - "n", // "Would you like to view another metric (y/n)? " - "", // "Press enter to continue:" - "y", // "Delete the EC2 Auto Scaling group 'integration_tests_group' (y/n)?" - "y" // "Delete the EC2 launch template 'integration_tests_template' (y/n)?" - }); + TEST_F(AutoScaling_GTests, groups_and_instances_scenario_2_ + ) { + AddCommandLineResponses( { + "n", // "Would you like to use an existing EC2 launch template (y/n)?" + "integration_tests_template", // "Enter the name for a new EC2 launch template: " + "integration_tests_group", // "Enter a name for the Amazon EC2 Auto Scaling group: " + "1", // "Choose an Availability Zone: " + "y", // "Do you want to collect metrics about the Amazon EC2 Auto Scaling during this demo (y/n)?" + "", // "Press enter to continue:" + "", // "Press enter to continue:" + "1", // "Which EC2 instance do you want to stop?" + "", // "Press enter to continue:" + "1", // "Which metric would you like to view? " + "n", // "Would you like to view another metric (y/n)? " + "", // "Press enter to continue:" + "y", // "Delete the EC2 Auto Scaling group 'integration_tests_group' (y/n)?" + "y" // "Delete the EC2 launch template 'integration_tests_template' (y/n)?" +} +); - bool result = AwsDoc::AutoScaling::groupsAndInstancesScenario(*s_clientConfig); - ASSERT_TRUE(result); +bool result = AwsDoc::AutoScaling::groupsAndInstancesScenario(*s_clientConfig); +ASSERT_TRUE(result); } } // AwsDocTest \ No newline at end of file diff --git a/cpp/example_code/cognito/CMakeLists.txt b/cpp/example_code/cognito/CMakeLists.txt index d2eea3fc72b..d50d8a751d1 100644 --- a/cpp/example_code/cognito/CMakeLists.txt +++ b/cpp/example_code/cognito/CMakeLists.txt @@ -21,7 +21,7 @@ else () endif () -#Set the location of where Windows can find the installed libraries of the SDK. +# Set the location of where Windows can find the installed libraries of the SDK. if (MSVC) string(REPLACE ";" "/aws-cpp-sdk-all;" SYSTEM_MODULE_PATH "${CMAKE_SYSTEM_PREFIX_PATH}/aws-cpp-sdk-all") list(APPEND CMAKE_PREFIX_PATH ${SYSTEM_MODULE_PATH}) diff --git a/cpp/example_code/cognito/tests/CMakeLists.txt b/cpp/example_code/cognito/tests/CMakeLists.txt index 2581d018165..1e4ee0a04d0 100644 --- a/cpp/example_code/cognito/tests/CMakeLists.txt +++ b/cpp/example_code/cognito/tests/CMakeLists.txt @@ -6,7 +6,7 @@ cmake_minimum_required(VERSION 3.14) set(EXAMPLE_SERVICE_NAME "cognito") set(CURRENT_TARGET "${EXAMPLE_SERVICE_NAME}_gtest") -set(CURRENT_TARGET_AWS_DEPENDENCIES cognito testing-resources) +set(CURRENT_TARGET_AWS_DEPENDENCIES cognito-idp) # Set this project's name. project("${EXAMPLE_SERVICE_NAME}-examples-gtests") @@ -14,15 +14,26 @@ project("${EXAMPLE_SERVICE_NAME}-examples-gtests") # Set the C++ standard to use to build this target. set(CMAKE_CXX_STANDARD 14) -include(FetchContent) -FetchContent_Declare( - googletest - GIT_REPOSITORY https://github.com/google/googletest.git - GIT_TAG release-1.12.1 -) -# For Windows: Prevent overriding the parent project's compiler/linker settings. -set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) -FetchContent_MakeAvailable(googletest) +# Build shared libraries by default. +set(BUILD_SHARED_LIBS ON) + +find_package(GTest) + +message(STATUS "gtest found ${GTest_FOUND}") + +if(NOT GTest_FOUND) + message(STATUS "fetching gtest") + include(FetchContent) + FetchContent_Declare( + googletest + GIT_REPOSITORY https://github.com/google/googletest.git + GIT_TAG release-1.12.1 + ) + + # For Windows: Prevent overriding the parent project's compiler/linker settings. + set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) + FetchContent_MakeAvailable(googletest) +endif() # Set the location for Windows to find the installed libraries of the SDK. if (MSVC) @@ -30,11 +41,6 @@ if (MSVC) list(APPEND CMAKE_PREFIX_PATH ${SYSTEM_MODULE_PATH}) endif () -# Build shared libraries by default. -if (NOT BUILD_SHARED_LIBS) - set(BUILD_SHARED_LIBS ON) -endif () - # Find the AWS SDK for C++ package. find_package(AWSSDK REQUIRED COMPONENTS ${CURRENT_TARGET_AWS_DEPENDENCIES}) @@ -47,11 +53,11 @@ add_executable( if (MSVC AND BUILD_SHARED_LIBS) add_definitions(-DUSE_IMPORT_EXPORT) - set(CMAKE_BUILD_TYPE Debug) #Explicitly setting CMAKE_BUILD_TYPE is necessary in Windows to copy DLLs. + set(CMAKE_BUILD_TYPE Debug) # Explicitly set this to support library copying and test automation. # Copy relevant AWS SDK for C++ libraries into the current binary directory for running and debugging. AWSSDK_CPY_DYN_LIBS( - SERVICE_LIST + CURRENT_TARGET_AWS_DEPENDENCIES "" ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE} ) @@ -78,8 +84,6 @@ endif () # Check whether the target system is Windows, including Win64. if (WIN32) - list(FILTER GTEST_SOURCE_FILES EXCLUDE REGEX "/gtest_list_buckets_disabling_dns_cache.cpp$") # Not supported in windows, see file for details - # Check whether the compiler is some version of Microsoft Visual C++, or another compiler simulating C++. if (MSVC) source_group("Source Files" FILES ${GTEST_SOURCE_FILES}) @@ -88,7 +92,6 @@ endif () enable_testing() - foreach (TEST_FILE ${GTEST_SOURCE_FILES}) string(REPLACE "gtest_" "../" SOURCE_FILE ${TEST_FILE}) if (EXISTS ${SOURCE_FILE}) diff --git a/cpp/example_code/cognito/tests/cognito_gtests.cpp b/cpp/example_code/cognito/tests/cognito_gtests.cpp index 1f627a8e032..5167c879756 100644 --- a/cpp/example_code/cognito/tests/cognito_gtests.cpp +++ b/cpp/example_code/cognito/tests/cognito_gtests.cpp @@ -26,8 +26,10 @@ void AwsDocTest::Cognito_GTests::TearDownTestSuite() { } void AwsDocTest::Cognito_GTests::SetUp() { - m_savedBuffer = std::cout.rdbuf(); - std::cout.rdbuf(&m_coutBuffer); + if (suppressStdOut()) { + m_savedBuffer = std::cout.rdbuf(); + std::cout.rdbuf(&m_coutBuffer); + } m_savedInBuffer = std::cin.rdbuf(); std::cin.rdbuf(&m_cinBuffer); @@ -66,6 +68,11 @@ Aws::String AwsDocTest::Cognito_GTests::preconditionError() { return "Failed to meet precondition."; } +bool AwsDocTest::Cognito_GTests::suppressStdOut() { + return std::getenv("EXAMPLE_TESTS_LOG_ON") == nullptr; +} + + AwsDocTest::MockHTTP::MockHTTP() { mockHttpClient = Aws::MakeShared(ALLOCATION_TAG); mockHttpClientFactory = Aws::MakeShared(ALLOCATION_TAG); @@ -100,3 +107,4 @@ int AwsDocTest::MyStringBuffer::underflow() { return result; } + diff --git a/cpp/example_code/cognito/tests/cognito_gtests.h b/cpp/example_code/cognito/tests/cognito_gtests.h index 24b42b23600..29471b455b1 100644 --- a/cpp/example_code/cognito/tests/cognito_gtests.h +++ b/cpp/example_code/cognito/tests/cognito_gtests.h @@ -42,6 +42,7 @@ namespace AwsDocTest { private: + bool suppressStdOut(); static Aws::SDKOptions s_options; diff --git a/cpp/example_code/cognito/tests/gtest_getting_started_with_user_pools.cpp b/cpp/example_code/cognito/tests/gtest_getting_started_with_user_pools.cpp index 444b37ed2a9..eab403cced1 100644 --- a/cpp/example_code/cognito/tests/gtest_getting_started_with_user_pools.cpp +++ b/cpp/example_code/cognito/tests/gtest_getting_started_with_user_pools.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include @@ -11,7 +19,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE (readability-named-parameter) - TEST_F(Cognito_GTests, gettingStartedWithUserPools) { + TEST_F(Cognito_GTests, gettingStartedWithUserPools_3_) { AddCommandLineResponses({"foo", // Enter a new user name: "foo_1foo", // Enter a new password: "foo@bar.com", // Enter a valid email for the user: diff --git a/cpp/example_code/cross-service/serverless-aurora/CMakeLists.txt b/cpp/example_code/cross-service/serverless-aurora/CMakeLists.txt index d2693dca331..0d903fb4ba2 100644 --- a/cpp/example_code/cross-service/serverless-aurora/CMakeLists.txt +++ b/cpp/example_code/cross-service/serverless-aurora/CMakeLists.txt @@ -15,7 +15,7 @@ set(USING_CONAN TRUE) # True if using Conan. project("ServerlessAurora") set(EXECUTABLE run_serverless_aurora) -#Set the location of where Windows can find the installed libraries of the SDK. +# Set the location of where Windows can find the installed libraries of the SDK. if(MSVC) string(REPLACE ";" "/aws-cpp-sdk-all;" SYSTEM_MODULE_PATH "${CMAKE_SYSTEM_PREFIX_PATH}/aws-cpp-sdk-all") list(APPEND CMAKE_PREFIX_PATH ${SYSTEM_MODULE_PATH}) diff --git a/cpp/example_code/cross-service/serverless-aurora/tests/CMakeLists.txt b/cpp/example_code/cross-service/serverless-aurora/tests/CMakeLists.txt index 05d96b3922a..5b6619585c2 100644 --- a/cpp/example_code/cross-service/serverless-aurora/tests/CMakeLists.txt +++ b/cpp/example_code/cross-service/serverless-aurora/tests/CMakeLists.txt @@ -11,7 +11,7 @@ set(BUILD_SHARED_LIBS ON) project("ServerlessAuroraGTest") set(EXECUTABLE serverless_aurora_gtest) -#Set the location of where Windows can find the installed libraries of the SDK. +# Set the location of where Windows can find the installed libraries of the SDK. if(MSVC) string(REPLACE ";" "/aws-cpp-sdk-all;" SYSTEM_MODULE_PATH "${CMAKE_SYSTEM_PREFIX_PATH}/aws-cpp-sdk-all") list(APPEND CMAKE_PREFIX_PATH ${SYSTEM_MODULE_PATH}) @@ -21,16 +21,20 @@ endif() set(CMAKE_CXX_STANDARD 14) set(CMAKE_BUILD_TYPE Debug) -include(FetchContent) -FetchContent_Declare( - googletest - GIT_REPOSITORY https://github.com/google/googletest.git - GIT_TAG release-1.12.1 -) -# For Windows: Prevent overriding the parent project's compiler/linker settings. -set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) -FetchContent_MakeAvailable(googletest) +find_package(GTest) + +if(NOT GTest_FOUND) + include(FetchContent) + FetchContent_Declare( + googletest + GIT_REPOSITORY https://github.com/google/googletest.git + GIT_TAG release-1.12.1 + ) + # For Windows: Prevent overriding the parent project's compiler/linker settings. + set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) + FetchContent_MakeAvailable(googletest) +endif() # Find the AWS SDK for C++ package. find_package(AWSSDK REQUIRED COMPONENTS ${SERVICE_COMPONENTS}) @@ -46,7 +50,7 @@ if(MSVC AND BUILD_SHARED_LIBS) list(APPEND SERVICE_LIST ${SERVICE_COMPONENTS}) - AWSSDK_CPY_DYN_LIBS(SERVICE_LIST "" ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}) #Choose this line if your executables are in /build/Debug + AWSSDK_CPY_DYN_LIBS(SERVICE_LIST "" ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}) add_custom_command( TARGET diff --git a/cpp/example_code/cross-service/serverless-aurora/tests/gtest_serverless_aurora.cpp b/cpp/example_code/cross-service/serverless-aurora/tests/gtest_serverless_aurora.cpp index 5fa41366d2e..14558588ccb 100644 --- a/cpp/example_code/cross-service/serverless-aurora/tests/gtest_serverless_aurora.cpp +++ b/cpp/example_code/cross-service/serverless-aurora/tests/gtest_serverless_aurora.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "ItemTrackerHTTPHandler.h" @@ -13,7 +21,7 @@ namespace AwsDocTest { static const Aws::String TABLE_NAME("items"); // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(ServerlessAurora_GTests, test1) { + TEST_F(ServerlessAurora_GTests, cross_service_example_1_) { Aws::String database("auroraappdb"); const char* env_var = std::getenv("RESOURCE_ARN"); ASSERT_NE(env_var, nullptr) << preconditionError(); diff --git a/cpp/example_code/cross-service/serverless-aurora/tests/serverless_aurora_gtests.cpp b/cpp/example_code/cross-service/serverless-aurora/tests/serverless_aurora_gtests.cpp index b3d5e1c0ab7..e34e93b4181 100644 --- a/cpp/example_code/cross-service/serverless-aurora/tests/serverless_aurora_gtests.cpp +++ b/cpp/example_code/cross-service/serverless-aurora/tests/serverless_aurora_gtests.cpp @@ -39,8 +39,10 @@ void AwsDocTest::ServerlessAurora_GTests::TearDownTestSuite() { } void AwsDocTest::ServerlessAurora_GTests::SetUp() { - m_savedBuffer = std::cout.rdbuf(); - std::cout.rdbuf(&m_coutBuffer); + if (suppressStdOut()) { + m_savedBuffer = std::cout.rdbuf(); + std::cout.rdbuf(&m_coutBuffer); + } } void AwsDocTest::ServerlessAurora_GTests::TearDown() { @@ -66,3 +68,9 @@ Aws::Utils::Json::JsonValue AwsDocTest::ServerlessAurora_GTests::workItemToJson( jsonValue.WithBool(AwsDoc::CrossService::HTTP_ARCHIVED_KEY, workItem.mArchived); return jsonValue; } + + +bool AwsDocTest::ServerlessAurora_GTests::suppressStdOut() { + return std::getenv("EXAMPLE_TESTS_LOG_ON") == nullptr; +} + diff --git a/cpp/example_code/cross-service/serverless-aurora/tests/serverless_aurora_gtests.h b/cpp/example_code/cross-service/serverless-aurora/tests/serverless_aurora_gtests.h index c22004c1527..71cfb10bc71 100644 --- a/cpp/example_code/cross-service/serverless-aurora/tests/serverless_aurora_gtests.h +++ b/cpp/example_code/cross-service/serverless-aurora/tests/serverless_aurora_gtests.h @@ -35,6 +35,9 @@ namespace AwsDocTest { static std::unique_ptr s_clientConfig; private: + + bool suppressStdOut(); + static Aws::SDKOptions s_options; std::stringbuf m_coutBuffer; // Used to silence std::cout. diff --git a/cpp/example_code/dynamodb/CMakeLists.txt b/cpp/example_code/dynamodb/CMakeLists.txt index 677be79b601..b69f10a2fde 100644 --- a/cpp/example_code/dynamodb/CMakeLists.txt +++ b/cpp/example_code/dynamodb/CMakeLists.txt @@ -10,7 +10,7 @@ set(SERVICE_COMPONENTS dynamodb s3) # s3 is required for tests, and it must be i # Set this project's name. project("${SERVICE_NAME}-examples") -#Set the location of where Windows can find the installed libraries of the SDK. +# Set the location of where Windows can find the installed libraries of the SDK. if(MSVC) string(REPLACE ";" "/aws-cpp-sdk-all;" SYSTEM_MODULE_PATH "${CMAKE_SYSTEM_PREFIX_PATH}/aws-cpp-sdk-all") list(APPEND CMAKE_PREFIX_PATH ${SYSTEM_MODULE_PATH}) @@ -38,11 +38,11 @@ if(MSVC AND BUILD_SHARED_LIBS) add_definitions(-DUSE_IMPORT_EXPORT) # Copy relevant AWS SDK for C++ libraries into the current binary directory for running and debugging. - set(CMAKE_BUILD_TYPE Debug) #Explicitly setting CMAKE_BUILD_TYPE is necessary in windows to copy dlls. + set(CMAKE_BUILD_TYPE Debug) # Explicitly setting CMAKE_BUILD_TYPE is necessary in windows to copy dlls. list(APPEND SERVICE_LIST ${SERVICE_COMPONENTS}) - AWSSDK_CPY_DYN_LIBS(SERVICE_LIST "" ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}) #Choose this line if your executables are in /build/Debug + AWSSDK_CPY_DYN_LIBS(SERVICE_LIST "" ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}) endif() diff --git a/cpp/example_code/dynamodb/tests/CMakeLists.txt b/cpp/example_code/dynamodb/tests/CMakeLists.txt index d3ede08b715..adb74ebf1c3 100644 --- a/cpp/example_code/dynamodb/tests/CMakeLists.txt +++ b/cpp/example_code/dynamodb/tests/CMakeLists.txt @@ -14,15 +14,23 @@ project("${EXAMPLE_SERVICE_NAME}-examples-gtests" ) # Set the C++ standard to use to build this target. set(CMAKE_CXX_STANDARD 14) -include(FetchContent) -FetchContent_Declare( - googletest - GIT_REPOSITORY https://github.com/google/googletest.git - GIT_TAG release-1.12.1 -) -# For Windows: Prevent overriding the parent project's compiler/linker settings. -set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) -FetchContent_MakeAvailable(googletest) +# Build shared libraries by default. +set(BUILD_SHARED_LIBS ON) + +find_package(GTest) + +if(NOT GTest_FOUND) + include(FetchContent) + FetchContent_Declare( + googletest + GIT_REPOSITORY https://github.com/google/googletest.git + GIT_TAG release-1.12.1 + ) + + # For Windows: Prevent overriding the parent project's compiler/linker settings. + set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) + FetchContent_MakeAvailable(googletest) +endif() # Set the location for Windows to find the installed libraries of the SDK. if(MSVC) @@ -30,12 +38,6 @@ if(MSVC) list(APPEND CMAKE_PREFIX_PATH ${SYSTEM_MODULE_PATH}) endif() -# Build shared libraries by default. -if(NOT BUILD_SHARED_LIBS) - set(BUILD_SHARED_LIBS ON) -endif() - - # Find the AWS SDK for C++ package. find_package(AWSSDK REQUIRED COMPONENTS ${CURRENT_TARGET_AWS_DEPENDENCIES}) @@ -47,6 +49,9 @@ add_executable( # and building as shared libraries, then dynamically link to those shared libraries. if(MSVC AND BUILD_SHARED_LIBS) add_definitions(-DUSE_IMPORT_EXPORT) + + set(CMAKE_BUILD_TYPE Debug) # Explicitly set this to support library copying and test automation. + # Copy relevant AWS SDK for C++ libraries into the current binary directory for running and debugging. AWSSDK_CPY_DYN_LIBS( CURRENT_TARGET_AWS_DEPENDENCIES @@ -75,8 +80,6 @@ endif() # Check whether the target system is Windows, including Win64. if(WIN32) - list(FILTER GTEST_SOURCE_FILES EXCLUDE REGEX "/gtest_list_buckets_disabling_dns_cache.cpp$") # Not supported in windows, see file for details - # Check whether the compiler is some version of Microsoft Visual C++, or another compiler simulating C++. if(MSVC) source_group("Source Files" FILES ${GTEST_SOURCE_FILES}) diff --git a/cpp/example_code/dynamodb/tests/dynamodb_gtests.cpp b/cpp/example_code/dynamodb/tests/dynamodb_gtests.cpp index 31b58482645..e848371dac0 100644 --- a/cpp/example_code/dynamodb/tests/dynamodb_gtests.cpp +++ b/cpp/example_code/dynamodb/tests/dynamodb_gtests.cpp @@ -255,6 +255,10 @@ bool AwsDocTest::DynamoDB_GTests::deleteItem(const Aws::String &tableName, return outcome.IsSuccess(); } +bool AwsDocTest::DynamoDB_GTests::suppressStdOut() { + return std::getenv("EXAMPLE_TESTS_LOG_ON") == nullptr; +} + int AwsDocTest::MyStringBuffer::underflow() { int result = basic_stringbuf::underflow(); if (result == EOF) { diff --git a/cpp/example_code/dynamodb/tests/dynamodb_gtests.h b/cpp/example_code/dynamodb/tests/dynamodb_gtests.h index 71da743b3ef..e2201238e08 100644 --- a/cpp/example_code/dynamodb/tests/dynamodb_gtests.h +++ b/cpp/example_code/dynamodb/tests/dynamodb_gtests.h @@ -70,6 +70,9 @@ namespace AwsDocTest { static const Aws::String SIMPLE_PRIMARY_KEY; private: + + bool suppressStdOut(); + static Aws::SDKOptions s_options; std::stringbuf m_coutBuffer; // Use just to silence cout. diff --git a/cpp/example_code/dynamodb/tests/gtest_batch_get_item.cpp b/cpp/example_code/dynamodb/tests/gtest_batch_get_item.cpp index 6d15f1c6924..2f9c7a6f0ee 100644 --- a/cpp/example_code/dynamodb/tests/gtest_batch_get_item.cpp +++ b/cpp/example_code/dynamodb/tests/gtest_batch_get_item.cpp @@ -2,6 +2,15 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ + #include #include #include "dynamodb_gtests.h" @@ -9,7 +18,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE (readability-named-parameter) - TEST_F(DynamoDB_GTests, batch_get_item) { + TEST_F(DynamoDB_GTests, batch_get_item_2_) { bool result = createBatchGetItemTables(); ASSERT_TRUE(result) << preconditionError(); diff --git a/cpp/example_code/dynamodb/tests/gtest_batch_write_item.cpp b/cpp/example_code/dynamodb/tests/gtest_batch_write_item.cpp index 843c6cfdc39..4aa22340b6d 100644 --- a/cpp/example_code/dynamodb/tests/gtest_batch_write_item.cpp +++ b/cpp/example_code/dynamodb/tests/gtest_batch_write_item.cpp @@ -2,6 +2,15 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ + #include #include @@ -10,7 +19,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE (readability-named-parameter) - TEST_F(DynamoDB_GTests, batch_write_item) { + TEST_F(DynamoDB_GTests, batch_write_item_2_) { bool result = createBatchGetItemTables(); ASSERT_TRUE(result) << preconditionError(); diff --git a/cpp/example_code/dynamodb/tests/gtest_create_table.cpp b/cpp/example_code/dynamodb/tests/gtest_create_table.cpp index e51b97b9930..66937bf4732 100644 --- a/cpp/example_code/dynamodb/tests/gtest_create_table.cpp +++ b/cpp/example_code/dynamodb/tests/gtest_create_table.cpp @@ -2,6 +2,15 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ + #include #include #include "dynamodb_gtests.h" @@ -9,7 +18,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE (readability-named-parameter) - TEST_F(DynamoDB_GTests, create_table) { + TEST_F(DynamoDB_GTests, create_table_2_) { Aws::String tableName = uuidName("table"); diff --git a/cpp/example_code/dynamodb/tests/gtest_create_table_composite_key.cpp b/cpp/example_code/dynamodb/tests/gtest_create_table_composite_key.cpp index 15190d61de1..a557df2f55d 100644 --- a/cpp/example_code/dynamodb/tests/gtest_create_table_composite_key.cpp +++ b/cpp/example_code/dynamodb/tests/gtest_create_table_composite_key.cpp @@ -2,6 +2,15 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ + #include #include #include "dynamodb_gtests.h" @@ -9,7 +18,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE (readability-named-parameter) - TEST_F(DynamoDB_GTests, create_table_composite_key) { + TEST_F(DynamoDB_GTests, create_table_composite_key_2_) { Aws::String tableName = uuidName("table"); diff --git a/cpp/example_code/dynamodb/tests/gtest_delete_item.cpp b/cpp/example_code/dynamodb/tests/gtest_delete_item.cpp index 4663c630479..f768c1472a7 100644 --- a/cpp/example_code/dynamodb/tests/gtest_delete_item.cpp +++ b/cpp/example_code/dynamodb/tests/gtest_delete_item.cpp @@ -2,6 +2,15 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ + #include #include #include "dynamodb_gtests.h" @@ -9,7 +18,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE (readability-named-parameter) - TEST_F(DynamoDB_GTests, delete_item) { + TEST_F(DynamoDB_GTests, delete_item_2_) { bool result = createSimpleTable(); ASSERT_TRUE(result) << preconditionError(); diff --git a/cpp/example_code/dynamodb/tests/gtest_delete_table.cpp b/cpp/example_code/dynamodb/tests/gtest_delete_table.cpp index 066e1221fa1..531991fe79f 100644 --- a/cpp/example_code/dynamodb/tests/gtest_delete_table.cpp +++ b/cpp/example_code/dynamodb/tests/gtest_delete_table.cpp @@ -2,6 +2,15 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ + #include #include #include "dynamodb_gtests.h" @@ -9,7 +18,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE (readability-named-parameter) - TEST_F(DynamoDB_GTests, delete_table) { + TEST_F(DynamoDB_GTests, delete_table_2_) { Aws::String tableName = uuidName("table"); bool result = createTable(tableName, "primary_key", diff --git a/cpp/example_code/dynamodb/tests/gtest_describe_table.cpp b/cpp/example_code/dynamodb/tests/gtest_describe_table.cpp index f041bc95098..ce7f0fa7f0a 100644 --- a/cpp/example_code/dynamodb/tests/gtest_describe_table.cpp +++ b/cpp/example_code/dynamodb/tests/gtest_describe_table.cpp @@ -2,6 +2,15 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ + #include #include #include "dynamodb_gtests.h" @@ -9,7 +18,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE (readability-named-parameter) - TEST_F(DynamoDB_GTests, describe_table) { + TEST_F(DynamoDB_GTests, describe_table_2_) { bool result = createSimpleTable(); ASSERT_TRUE(result) << preconditionError(); diff --git a/cpp/example_code/dynamodb/tests/gtest_dynamodb_getting_started_scenario.cpp b/cpp/example_code/dynamodb/tests/gtest_dynamodb_getting_started_scenario.cpp index f3b1011afb8..be0e717cd63 100644 --- a/cpp/example_code/dynamodb/tests/gtest_dynamodb_getting_started_scenario.cpp +++ b/cpp/example_code/dynamodb/tests/gtest_dynamodb_getting_started_scenario.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include @@ -10,7 +18,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE (readability-named-parameter) - TEST_F(DynamoDB_GTests, getting_started_scenario) { + TEST_F(DynamoDB_GTests, getting_started_scenario_2_) { AddCommandLineResponses({"Jaws", "1972", "8", diff --git a/cpp/example_code/dynamodb/tests/gtest_dynamodb_partiql_batch_scenario.cpp b/cpp/example_code/dynamodb/tests/gtest_dynamodb_partiql_batch_scenario.cpp index 0a6268ac3ff..43c94bd22ed 100644 --- a/cpp/example_code/dynamodb/tests/gtest_dynamodb_partiql_batch_scenario.cpp +++ b/cpp/example_code/dynamodb/tests/gtest_dynamodb_partiql_batch_scenario.cpp @@ -2,7 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ - +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include @@ -12,7 +19,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE (readability-named-parameter) - TEST_F(DynamoDB_GTests, partiql_batch_execute_scenario + TEST_F(DynamoDB_GTests, partiql_batch_execute_scenario_2_ ) { AddCommandLineResponses({ "Godzilla", diff --git a/cpp/example_code/dynamodb/tests/gtest_dynamodb_partiql_single_scenario.cpp b/cpp/example_code/dynamodb/tests/gtest_dynamodb_partiql_single_scenario.cpp index c660b438f43..75f4d70ede1 100644 --- a/cpp/example_code/dynamodb/tests/gtest_dynamodb_partiql_single_scenario.cpp +++ b/cpp/example_code/dynamodb/tests/gtest_dynamodb_partiql_single_scenario.cpp @@ -2,7 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ - +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include @@ -12,7 +19,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE (readability-named-parameter) - TEST_F(DynamoDB_GTests, paritql_single_execute_scenario + TEST_F(DynamoDB_GTests, paritql_single_execute_scenario_2_ ) { AddCommandLineResponses({ "Jaws", diff --git a/cpp/example_code/dynamodb/tests/gtest_get_item.cpp b/cpp/example_code/dynamodb/tests/gtest_get_item.cpp index 6a311bc7abc..7efd2a442b3 100644 --- a/cpp/example_code/dynamodb/tests/gtest_get_item.cpp +++ b/cpp/example_code/dynamodb/tests/gtest_get_item.cpp @@ -2,6 +2,15 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ + #include #include #include "dynamodb_gtests.h" @@ -9,7 +18,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE (readability-named-parameter) - TEST_F(DynamoDB_GTests, get_item) { + TEST_F(DynamoDB_GTests, get_item_2_) { bool result = createSimpleTable(); ASSERT_TRUE(result) << preconditionError(); diff --git a/cpp/example_code/dynamodb/tests/gtest_list_tables.cpp b/cpp/example_code/dynamodb/tests/gtest_list_tables.cpp index 8d6f1617635..ce221afd4fe 100644 --- a/cpp/example_code/dynamodb/tests/gtest_list_tables.cpp +++ b/cpp/example_code/dynamodb/tests/gtest_list_tables.cpp @@ -2,6 +2,15 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ + #include #include #include "dynamodb_gtests.h" @@ -9,7 +18,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE (readability-named-parameter) - TEST_F(DynamoDB_GTests, list_tables) { + TEST_F(DynamoDB_GTests, list_tables_2_) { bool result = createSimpleTable(); ASSERT_TRUE(result) << preconditionError(); diff --git a/cpp/example_code/dynamodb/tests/gtest_put_item.cpp b/cpp/example_code/dynamodb/tests/gtest_put_item.cpp index 868a832bbb9..5be898ae73e 100644 --- a/cpp/example_code/dynamodb/tests/gtest_put_item.cpp +++ b/cpp/example_code/dynamodb/tests/gtest_put_item.cpp @@ -2,6 +2,15 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ + #include #include #include "dynamodb_gtests.h" @@ -9,7 +18,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE (readability-named-parameter) - TEST_F(DynamoDB_GTests, put_item) { + TEST_F(DynamoDB_GTests, put_item_2_) { bool result = createSimpleTable(); ASSERT_TRUE(result) << preconditionError(); diff --git a/cpp/example_code/dynamodb/tests/gtest_query_items.cpp b/cpp/example_code/dynamodb/tests/gtest_query_items.cpp index b80b7899af9..68cb8d5db59 100644 --- a/cpp/example_code/dynamodb/tests/gtest_query_items.cpp +++ b/cpp/example_code/dynamodb/tests/gtest_query_items.cpp @@ -2,6 +2,15 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ + #include #include #include "dynamodb_gtests.h" @@ -9,7 +18,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE (readability-named-parameter) - TEST_F(DynamoDB_GTests, query_items) { + TEST_F(DynamoDB_GTests, query_items_2_) { bool result = createSimpleTable(); ASSERT_TRUE(result) << preconditionError(); diff --git a/cpp/example_code/dynamodb/tests/gtest_scan_table.cpp b/cpp/example_code/dynamodb/tests/gtest_scan_table.cpp index 6e4e1aa7530..4bada42ba7b 100644 --- a/cpp/example_code/dynamodb/tests/gtest_scan_table.cpp +++ b/cpp/example_code/dynamodb/tests/gtest_scan_table.cpp @@ -2,6 +2,15 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ + #include #include #include "dynamodb_gtests.h" @@ -9,7 +18,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE (readability-named-parameter) - TEST_F(DynamoDB_GTests, scan_table) { + TEST_F(DynamoDB_GTests, scan_table_2_) { bool result = createSimpleTable(); ASSERT_TRUE(result) << preconditionError(); diff --git a/cpp/example_code/dynamodb/tests/gtest_update_item.cpp b/cpp/example_code/dynamodb/tests/gtest_update_item.cpp index 6cf24bc7b5a..170d86451d8 100644 --- a/cpp/example_code/dynamodb/tests/gtest_update_item.cpp +++ b/cpp/example_code/dynamodb/tests/gtest_update_item.cpp @@ -2,6 +2,15 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ + #include #include #include "dynamodb_gtests.h" @@ -9,7 +18,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE (readability-named-parameter) - TEST_F(DynamoDB_GTests, update_item) { + TEST_F(DynamoDB_GTests, update_item_2_) { bool result = createSimpleTable(); ASSERT_TRUE(result) << preconditionError(); const std::vector keys = {SIMPLE_PRIMARY_KEY, "second_key"}; diff --git a/cpp/example_code/dynamodb/tests/gtest_update_table.cpp b/cpp/example_code/dynamodb/tests/gtest_update_table.cpp index 94be46c27a7..504ba158158 100644 --- a/cpp/example_code/dynamodb/tests/gtest_update_table.cpp +++ b/cpp/example_code/dynamodb/tests/gtest_update_table.cpp @@ -2,6 +2,15 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ + #include #include #include "dynamodb_gtests.h" @@ -9,7 +18,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE (readability-named-parameter) - TEST_F(DynamoDB_GTests, update_table) { + TEST_F(DynamoDB_GTests, update_table_2_) { bool result = createSimpleTable(); ASSERT_TRUE(result) << preconditionError(); diff --git a/cpp/example_code/glue/CMakeLists.txt b/cpp/example_code/glue/CMakeLists.txt index 30282a9e0fe..26172fc4181 100644 --- a/cpp/example_code/glue/CMakeLists.txt +++ b/cpp/example_code/glue/CMakeLists.txt @@ -10,7 +10,7 @@ set(SERVICE_COMPONENTS glue s3 iam) # Set this project's name. project("${SERVICE_NAME}-examples") -#Set the location of where Windows can find the installed libraries of the SDK. +# Set the location of where Windows can find the installed libraries of the SDK. if(MSVC) string(REPLACE ";" "/aws-cpp-sdk-all;" SYSTEM_MODULE_PATH "${CMAKE_SYSTEM_PREFIX_PATH}/aws-cpp-sdk-all") list(APPEND CMAKE_PREFIX_PATH ${SYSTEM_MODULE_PATH}) diff --git a/cpp/example_code/glue/tests/CMakeLists.txt b/cpp/example_code/glue/tests/CMakeLists.txt index eaeeaa06e70..70c61cc028d 100644 --- a/cpp/example_code/glue/tests/CMakeLists.txt +++ b/cpp/example_code/glue/tests/CMakeLists.txt @@ -14,15 +14,23 @@ project("${EXAMPLE_SERVICE_NAME}-examples-gtests" ) # Set the C++ standard to use to build this target. set(CMAKE_CXX_STANDARD 14) -include(FetchContent) -FetchContent_Declare( - googletest - GIT_REPOSITORY https://github.com/google/googletest.git - GIT_TAG release-1.12.1 -) -# For Windows: Prevent overriding the parent project's compiler/linker settings. -set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) -FetchContent_MakeAvailable(googletest) +# Build shared libraries by default. +set(BUILD_SHARED_LIBS ON) + +find_package(GTest) + +if(NOT GTest_FOUND) + include(FetchContent) + FetchContent_Declare( + googletest + GIT_REPOSITORY https://github.com/google/googletest.git + GIT_TAG release-1.12.1 + ) + + # For Windows: Prevent overriding the parent project's compiler/linker settings. + set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) + FetchContent_MakeAvailable(googletest) +endif() # Set the location for Windows to find the installed libraries of the SDK. if(MSVC) @@ -30,11 +38,6 @@ if(MSVC) list(APPEND CMAKE_PREFIX_PATH ${SYSTEM_MODULE_PATH}) endif() -# Build shared libraries by default. -if(NOT BUILD_SHARED_LIBS) - set(BUILD_SHARED_LIBS ON) -endif() - # Find the AWS SDK for C++ package. find_package(AWSSDK REQUIRED COMPONENTS ${CURRENT_TARGET_AWS_DEPENDENCIES}) @@ -47,11 +50,11 @@ add_executable( if(MSVC AND BUILD_SHARED_LIBS) add_definitions(-DUSE_IMPORT_EXPORT) - set(CMAKE_BUILD_TYPE Debug) #Explicitly setting CMAKE_BUILD_TYPE is necessary in Windows to copy DLLs. + set(CMAKE_BUILD_TYPE Debug) # Explicitly setting CMAKE_BUILD_TYPE is necessary in Windows to copy DLLs. # Copy relevant AWS SDK for C++ libraries into the current binary directory for running and debugging. AWSSDK_CPY_DYN_LIBS( - SERVICE_LIST + CURRENT_TARGET_AWS_DEPENDENCIES "" ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE} ) @@ -78,8 +81,6 @@ endif() # Check whether the target system is Windows, including Win64. if(WIN32) - list(FILTER GTEST_SOURCE_FILES EXCLUDE REGEX "/gtest_list_buckets_disabling_dns_cache.cpp$") # Not supported in windows, see file for details - # Check whether the compiler is some version of Microsoft Visual C++, or another compiler simulating C++. if(MSVC) source_group("Source Files" FILES ${GTEST_SOURCE_FILES}) diff --git a/cpp/example_code/glue/tests/glue_gtests.cpp b/cpp/example_code/glue/tests/glue_gtests.cpp index af08429d023..c4ea22a7ec9 100644 --- a/cpp/example_code/glue/tests/glue_gtests.cpp +++ b/cpp/example_code/glue/tests/glue_gtests.cpp @@ -23,8 +23,10 @@ void AwsDocTest::Glue_GTests::TearDownTestSuite() { } void AwsDocTest::Glue_GTests::SetUp() { - m_savedBuffer = std::cout.rdbuf(); - std::cout.rdbuf(&m_coutBuffer); + if (suppressStdOut()) { + m_savedBuffer = std::cout.rdbuf(); + std::cout.rdbuf(&m_coutBuffer); + } m_savedInBuffer = std::cin.rdbuf(); std::cin.rdbuf(&m_cinBuffer); @@ -56,3 +58,7 @@ void AwsDocTest::Glue_GTests::AddCommandLineResponses( m_cinBuffer.str(stringStream.str()); } +bool AwsDocTest::Glue_GTests::suppressStdOut() { + return std::getenv("EXAMPLE_TESTS_LOG_ON") == nullptr; +} + diff --git a/cpp/example_code/glue/tests/glue_gtests.h b/cpp/example_code/glue/tests/glue_gtests.h index 942c876f972..f58fe2626b0 100644 --- a/cpp/example_code/glue/tests/glue_gtests.h +++ b/cpp/example_code/glue/tests/glue_gtests.h @@ -34,6 +34,9 @@ namespace AwsDocTest { static std::unique_ptr s_clientConfig; private: + + bool suppressStdOut(); + static Aws::SDKOptions s_options; std::stringbuf m_coutBuffer; // Used to silence cout. diff --git a/cpp/example_code/glue/tests/gtest_glue_getting_started_scenario.cpp b/cpp/example_code/glue/tests/gtest_glue_getting_started_scenario.cpp index 2aae29bbf58..fa0336ecde9 100644 --- a/cpp/example_code/glue/tests/gtest_glue_getting_started_scenario.cpp +++ b/cpp/example_code/glue/tests/gtest_glue_getting_started_scenario.cpp @@ -9,7 +9,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(Glue_GTests, glue_getting_started_scenario) { + TEST_F(Glue_GTests, glue_getting_started_scenario_1_) { const char* env_var = std::getenv("SCENARIO_ROLE_NAME"); ASSERT_NE(env_var, nullptr) << preconditionError(); Aws::String roleName(env_var); diff --git a/cpp/example_code/iam/CMakeLists.txt b/cpp/example_code/iam/CMakeLists.txt index 89179b3773d..fc21bd2a540 100644 --- a/cpp/example_code/iam/CMakeLists.txt +++ b/cpp/example_code/iam/CMakeLists.txt @@ -10,7 +10,7 @@ set(SERVICE_COMPONENTS iam s3 sts) # Set this project's name. project("${SERVICE_NAME}-examples") -#Set the location of where Windows can find the installed libraries of the SDK. +# Set the location of where Windows can find the installed libraries of the SDK. if(MSVC) string(REPLACE ";" "/aws-cpp-sdk-all;" SYSTEM_MODULE_PATH "${CMAKE_SYSTEM_PREFIX_PATH}/aws-cpp-sdk-all") list(APPEND CMAKE_PREFIX_PATH ${SYSTEM_MODULE_PATH}) @@ -38,11 +38,11 @@ if(MSVC AND BUILD_SHARED_LIBS) add_definitions(-DUSE_IMPORT_EXPORT) # Copy relevant AWS SDK for C++ libraries into the current binary directory for running and debugging. - set(CMAKE_BUILD_TYPE Debug) #Explicitly setting CMAKE_BUILD_TYPE is necessary in windows to copy dlls. + set(CMAKE_BUILD_TYPE Debug) # Explicitly setting CMAKE_BUILD_TYPE is necessary in windows to copy dlls. list(APPEND SERVICE_LIST ${SERVICE_COMPONENTS}) - AWSSDK_CPY_DYN_LIBS(SERVICE_LIST "" ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}) #Choose this line if your executables are in /build/Debug + AWSSDK_CPY_DYN_LIBS(SERVICE_LIST "" ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}) endif() diff --git a/cpp/example_code/iam/gtests/CMakeLists.txt b/cpp/example_code/iam/gtests/CMakeLists.txt index d21c9369612..72c25bf682e 100644 --- a/cpp/example_code/iam/gtests/CMakeLists.txt +++ b/cpp/example_code/iam/gtests/CMakeLists.txt @@ -13,21 +13,31 @@ project("${EXAMPLE_SERVICE_NAME}-examples-gtests" ) # Set the C++ standard to use to build this target. set(CMAKE_CXX_STANDARD 14) -set(CMAKE_BUILD_TYPE Debug) - -include(FetchContent) -FetchContent_Declare( - googletest - GIT_REPOSITORY https://github.com/google/googletest.git - GIT_TAG release-1.12.1 -) -# For Windows: Prevent overriding the parent project's compiler/linker settings. -set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) -FetchContent_MakeAvailable(googletest) # Build shared libraries by default. set(BUILD_SHARED_LIBS ON) +find_package(GTest) + +if(NOT GTest_FOUND) + include(FetchContent) + FetchContent_Declare( + googletest + GIT_REPOSITORY https://github.com/google/googletest.git + GIT_TAG release-1.12.1 + ) + + # For Windows: Prevent overriding the parent project's compiler/linker settings. + set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) + FetchContent_MakeAvailable(googletest) +endif() + +# Set the location for Windows to find the installed libraries of the SDK. +if(MSVC) + string(REPLACE ";" "/aws-cpp-sdk-all;" SYSTEM_MODULE_PATH "${CMAKE_SYSTEM_PREFIX_PATH}/aws-cpp-sdk-all") + list(APPEND CMAKE_PREFIX_PATH ${SYSTEM_MODULE_PATH}) +endif() + # Find the AWS SDK for C++ package. find_package(AWSSDK REQUIRED COMPONENTS ${CURRENT_TARGET_AWS_DEPENDENCIES}) @@ -38,9 +48,12 @@ add_executable( # If the compiler is some version of Microsoft Visual C++, or another compiler simulating C++, # and building as shared libraries, then dynamically link to those shared libraries. if(MSVC AND BUILD_SHARED_LIBS) + + set(CMAKE_BUILD_TYPE Debug) # Explicitly setting CMAKE_BUILD_TYPE is necessary in Windows to copy DLLs. + # Copy relevant AWS SDK for C++ libraries into the current binary directory for running and debugging. AWSSDK_CPY_DYN_LIBS( - SERVICE_LIST + CURRENT_TARGET_AWS_DEPENDENCIES "" ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE} ) diff --git a/cpp/example_code/iam/gtests/gtest_access_key_last_used.cpp b/cpp/example_code/iam/gtests/gtest_access_key_last_used.cpp index fa4830921d6..4a1d658b6f6 100644 --- a/cpp/example_code/iam/gtests/gtest_access_key_last_used.cpp +++ b/cpp/example_code/iam/gtests/gtest_access_key_last_used.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "iam_samples.h" @@ -9,7 +17,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(IAM_GTests, access_key_last_used) { + TEST_F(IAM_GTests, access_key_last_used_2_) { auto keyID = getExistingKey(); ASSERT_FALSE(keyID.empty()) << preconditionError() << std::endl; diff --git a/cpp/example_code/iam/gtests/gtest_attach_role_policy.cpp b/cpp/example_code/iam/gtests/gtest_attach_role_policy.cpp index bdde98993a6..b4e1357e8a7 100644 --- a/cpp/example_code/iam/gtests/gtest_attach_role_policy.cpp +++ b/cpp/example_code/iam/gtests/gtest_attach_role_policy.cpp @@ -2,14 +2,21 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ - +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "iam_samples.h" #include "iam_gtests.h" namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(IAM_GTests, attach_role_policy) { + TEST_F(IAM_GTests, attach_role_policy_2_) { auto policyARN = samplePolicyARN(); auto role = getRole(); ASSERT_FALSE(role.empty()) << preconditionError() << std::endl; diff --git a/cpp/example_code/iam/gtests/gtest_create_access_key.cpp b/cpp/example_code/iam/gtests/gtest_create_access_key.cpp index 7755a0ba1bf..6fdb4478c89 100644 --- a/cpp/example_code/iam/gtests/gtest_create_access_key.cpp +++ b/cpp/example_code/iam/gtests/gtest_create_access_key.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "iam_samples.h" @@ -9,7 +17,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(IAM_GTests, create_access_key) { + TEST_F(IAM_GTests, create_access_key_2_) { auto userName = getUser(); ASSERT_FALSE(userName.empty()) << preconditionError() << std::endl; diff --git a/cpp/example_code/iam/gtests/gtest_create_account_alias.cpp b/cpp/example_code/iam/gtests/gtest_create_account_alias.cpp index 32a86f30854..ae9c9edafea 100644 --- a/cpp/example_code/iam/gtests/gtest_create_account_alias.cpp +++ b/cpp/example_code/iam/gtests/gtest_create_account_alias.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "iam_samples.h" @@ -9,7 +17,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(IAM_GTests, create_account_alias) { + TEST_F(IAM_GTests, create_account_alias_2_) { Aws::String aliasName = uuidName("alias"); auto result = AwsDoc::IAM::createAccountAlias(aliasName, *s_clientConfig); diff --git a/cpp/example_code/iam/gtests/gtest_create_policy.cpp b/cpp/example_code/iam/gtests/gtest_create_policy.cpp index 83674968ca8..b8ff6225fa2 100644 --- a/cpp/example_code/iam/gtests/gtest_create_policy.cpp +++ b/cpp/example_code/iam/gtests/gtest_create_policy.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "iam_samples.h" @@ -9,7 +17,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(IAM_GTests, create_policy) { + TEST_F(IAM_GTests, create_policy_2_) { Aws::String policyName = uuidName("policy"); auto policyArn = AwsDoc::IAM::createPolicy(policyName, "arn:aws:s3:::*", *s_clientConfig); diff --git a/cpp/example_code/iam/gtests/gtest_create_role.cpp b/cpp/example_code/iam/gtests/gtest_create_role.cpp index a90fb582e24..a658f5d6306 100644 --- a/cpp/example_code/iam/gtests/gtest_create_role.cpp +++ b/cpp/example_code/iam/gtests/gtest_create_role.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "iam_samples.h" @@ -9,7 +17,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(IAM_GTests, create_role) { + TEST_F(IAM_GTests, create_role_2_) { Aws::String roleName = uuidName("role"); auto result = AwsDoc::IAM::createIamRole(roleName, getAssumeRolePolicyJSON(), *s_clientConfig); diff --git a/cpp/example_code/iam/gtests/gtest_create_user.cpp b/cpp/example_code/iam/gtests/gtest_create_user.cpp index 573433c07cf..106020c705e 100644 --- a/cpp/example_code/iam/gtests/gtest_create_user.cpp +++ b/cpp/example_code/iam/gtests/gtest_create_user.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "iam_samples.h" @@ -9,7 +17,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(IAM_GTests, create_user) { + TEST_F(IAM_GTests, create_user_2_) { auto userName = uuidName("user"); auto result = AwsDoc::IAM::createUser(userName, *s_clientConfig); ASSERT_TRUE(result); diff --git a/cpp/example_code/iam/gtests/gtest_delete_access_key.cpp b/cpp/example_code/iam/gtests/gtest_delete_access_key.cpp index 2a830d74207..2dc7fbb4920 100644 --- a/cpp/example_code/iam/gtests/gtest_delete_access_key.cpp +++ b/cpp/example_code/iam/gtests/gtest_delete_access_key.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "iam_samples.h" @@ -9,7 +17,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(IAM_GTests, delete_access_key) { + TEST_F(IAM_GTests, delete_access_key_2_) { auto accessKeyName = createAccessKey(); ASSERT_FALSE(accessKeyName.empty()) << preconditionError << std::endl; diff --git a/cpp/example_code/iam/gtests/gtest_delete_account_alias.cpp b/cpp/example_code/iam/gtests/gtest_delete_account_alias.cpp index 9e4201f9b5c..547230b7ac0 100644 --- a/cpp/example_code/iam/gtests/gtest_delete_account_alias.cpp +++ b/cpp/example_code/iam/gtests/gtest_delete_account_alias.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "iam_samples.h" @@ -9,7 +17,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(IAM_GTests, delete_account_alias) { + TEST_F(IAM_GTests, delete_account_alias_2_) { auto accountAlias = createAccountAlias(); ASSERT_FALSE(accountAlias.empty()) << preconditionError << std::endl; diff --git a/cpp/example_code/iam/gtests/gtest_delete_policy.cpp b/cpp/example_code/iam/gtests/gtest_delete_policy.cpp index 9d3bd77cceb..bd4c6071024 100644 --- a/cpp/example_code/iam/gtests/gtest_delete_policy.cpp +++ b/cpp/example_code/iam/gtests/gtest_delete_policy.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "iam_samples.h" @@ -9,7 +17,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(IAM_GTests, delete_policy) { + TEST_F(IAM_GTests, delete_policy_2_) { auto policyArn = createPolicy(); ASSERT_FALSE(policyArn.empty()) << preconditionError() << std::endl; diff --git a/cpp/example_code/iam/gtests/gtest_delete_server_certificate.cpp b/cpp/example_code/iam/gtests/gtest_delete_server_certificate.cpp index 5d20356120e..3e47ab1a573 100644 --- a/cpp/example_code/iam/gtests/gtest_delete_server_certificate.cpp +++ b/cpp/example_code/iam/gtests/gtest_delete_server_certificate.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "iam_samples.h" @@ -9,7 +17,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(IAM_GTests, delete_server_certificate) { + TEST_F(IAM_GTests, delete_server_certificate_2_) { auto result = AwsDoc::IAM::deleteServerCertificate("non-existent-certificate", *s_clientConfig); EXPECT_TRUE(result); // The routine will return true if certificate not found. diff --git a/cpp/example_code/iam/gtests/gtest_delete_user.cpp b/cpp/example_code/iam/gtests/gtest_delete_user.cpp index 875ce1096a1..8d53b7ebae9 100644 --- a/cpp/example_code/iam/gtests/gtest_delete_user.cpp +++ b/cpp/example_code/iam/gtests/gtest_delete_user.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "iam_samples.h" @@ -9,7 +17,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(IAM_GTests, delete_user) { + TEST_F(IAM_GTests, delete_user_2_) { auto userName = createUser(); ASSERT_FALSE(userName.empty()) << preconditionError() << std::endl; diff --git a/cpp/example_code/iam/gtests/gtest_detach_role_policy.cpp b/cpp/example_code/iam/gtests/gtest_detach_role_policy.cpp index 7e2cea16660..1e9ceb81494 100644 --- a/cpp/example_code/iam/gtests/gtest_detach_role_policy.cpp +++ b/cpp/example_code/iam/gtests/gtest_detach_role_policy.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "iam_samples.h" @@ -9,7 +17,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(IAM_GTests, detach_role_policy) { + TEST_F(IAM_GTests, detach_role_policy_2_) { auto roleName = getRole(); ASSERT_FALSE(roleName.empty()) << preconditionError() << std::endl; auto policyArn = samplePolicyARN(); diff --git a/cpp/example_code/iam/gtests/gtest_get_policy.cpp b/cpp/example_code/iam/gtests/gtest_get_policy.cpp index 85985df41b1..aa0663813fd 100644 --- a/cpp/example_code/iam/gtests/gtest_get_policy.cpp +++ b/cpp/example_code/iam/gtests/gtest_get_policy.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "iam_samples.h" @@ -9,7 +17,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(IAM_GTests, get_policy) { + TEST_F(IAM_GTests, get_policy_2_) { auto policyArn = getPolicy(); // Creates policy if necessary. ASSERT_FALSE(policyArn.empty()) << preconditionError() << std::endl; diff --git a/cpp/example_code/iam/gtests/gtest_get_server_certificate.cpp b/cpp/example_code/iam/gtests/gtest_get_server_certificate.cpp index b4a908e1625..67beb5bcd86 100644 --- a/cpp/example_code/iam/gtests/gtest_get_server_certificate.cpp +++ b/cpp/example_code/iam/gtests/gtest_get_server_certificate.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "iam_samples.h" @@ -9,7 +17,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(IAM_GTests, get_server_certificate) { + TEST_F(IAM_GTests, get_server_certificate_2_) { auto result = AwsDoc::IAM::getServerCertificate("non-existent-certificate", *s_clientConfig); EXPECT_TRUE(result); // The routine will return true if certificate not found. diff --git a/cpp/example_code/iam/gtests/gtest_iam_create_user_assume_role_scenario.cpp b/cpp/example_code/iam/gtests/gtest_iam_create_user_assume_role_scenario.cpp index 5583af68f22..29bf8e4a001 100644 --- a/cpp/example_code/iam/gtests/gtest_iam_create_user_assume_role_scenario.cpp +++ b/cpp/example_code/iam/gtests/gtest_iam_create_user_assume_role_scenario.cpp @@ -1,5 +1,13 @@ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. // SPDX - License - Identifier: Apache - 2.0 +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "iam_samples.h" @@ -8,7 +16,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(IAM_GTests, create_user_assume_role_scenario) { + TEST_F(IAM_GTests, create_user_assume_role_scenario_2_ ) { auto result = AwsDoc::IAM::iamCreateUserAssumeRoleScenario(*s_clientConfig); EXPECT_TRUE(result); diff --git a/cpp/example_code/iam/gtests/gtest_list_access_keys.cpp b/cpp/example_code/iam/gtests/gtest_list_access_keys.cpp index 9e995e01125..2a53c37a4f9 100644 --- a/cpp/example_code/iam/gtests/gtest_list_access_keys.cpp +++ b/cpp/example_code/iam/gtests/gtest_list_access_keys.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "iam_samples.h" @@ -9,7 +17,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(IAM_GTests, list_access_keys) { + TEST_F(IAM_GTests, list_access_keys_2_) { auto userName = getUser(); ASSERT_FALSE(userName.empty()) << preconditionError() << std::endl; diff --git a/cpp/example_code/iam/gtests/gtest_list_account_aliases.cpp b/cpp/example_code/iam/gtests/gtest_list_account_aliases.cpp index a1a83021c8e..95b17f0df30 100644 --- a/cpp/example_code/iam/gtests/gtest_list_account_aliases.cpp +++ b/cpp/example_code/iam/gtests/gtest_list_account_aliases.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "iam_samples.h" @@ -9,7 +17,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(IAM_GTests, list_account_aliases) { + TEST_F(IAM_GTests, list_account_aliases_2_) { auto result = AwsDoc::IAM::listAccountAliases(*s_clientConfig); EXPECT_TRUE(result); } diff --git a/cpp/example_code/iam/gtests/gtest_list_policies.cpp b/cpp/example_code/iam/gtests/gtest_list_policies.cpp index 74a8bab82cb..99035dfeb4a 100644 --- a/cpp/example_code/iam/gtests/gtest_list_policies.cpp +++ b/cpp/example_code/iam/gtests/gtest_list_policies.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "iam_samples.h" @@ -9,7 +17,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(IAM_GTests, list_policies) { + TEST_F(IAM_GTests, list_policies_2_) { auto result = AwsDoc::IAM::listPolicies(*s_clientConfig); EXPECT_TRUE(result); } diff --git a/cpp/example_code/iam/gtests/gtest_list_server_certificates.cpp b/cpp/example_code/iam/gtests/gtest_list_server_certificates.cpp index 879f0451cd1..751bf551239 100644 --- a/cpp/example_code/iam/gtests/gtest_list_server_certificates.cpp +++ b/cpp/example_code/iam/gtests/gtest_list_server_certificates.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "iam_samples.h" @@ -9,7 +17,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(IAM_GTests, list_server_certificates) { + TEST_F(IAM_GTests, list_server_certificates_2_) { auto result = AwsDoc::IAM::listServerCertificates(*s_clientConfig); EXPECT_TRUE(result); } diff --git a/cpp/example_code/iam/gtests/gtest_list_users.cpp b/cpp/example_code/iam/gtests/gtest_list_users.cpp index 4e664c6543c..b5bc21b1f0b 100644 --- a/cpp/example_code/iam/gtests/gtest_list_users.cpp +++ b/cpp/example_code/iam/gtests/gtest_list_users.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "iam_samples.h" @@ -9,7 +17,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(IAM_GTests, list_users) { + TEST_F(IAM_GTests, list_users_2_) { auto result = AwsDoc::IAM::listUsers(*s_clientConfig); EXPECT_TRUE(result); } diff --git a/cpp/example_code/iam/gtests/gtest_put_role_policy.cpp b/cpp/example_code/iam/gtests/gtest_put_role_policy.cpp index 90f305b5624..201fbdede0c 100644 --- a/cpp/example_code/iam/gtests/gtest_put_role_policy.cpp +++ b/cpp/example_code/iam/gtests/gtest_put_role_policy.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "iam_samples.h" @@ -9,7 +17,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(IAM_GTests, put_role_policy) { + TEST_F(IAM_GTests, put_role_policy_2_) { auto roleName = getRole(); ASSERT_FALSE(roleName.empty()) << preconditionError() << std::endl; diff --git a/cpp/example_code/iam/gtests/gtest_update_access_key.cpp b/cpp/example_code/iam/gtests/gtest_update_access_key.cpp index 246b35703b9..e99cc15f88a 100644 --- a/cpp/example_code/iam/gtests/gtest_update_access_key.cpp +++ b/cpp/example_code/iam/gtests/gtest_update_access_key.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "iam_samples.h" @@ -9,7 +17,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(IAM_GTests, update_access_key) { + TEST_F(IAM_GTests, update_access_key_2_) { auto key = getExistingKey(); ASSERT_FALSE(key.empty()) << preconditionError() << std::endl; diff --git a/cpp/example_code/iam/gtests/gtest_update_server_certificate.cpp b/cpp/example_code/iam/gtests/gtest_update_server_certificate.cpp index ffed4b2b6b2..ba48e63390d 100644 --- a/cpp/example_code/iam/gtests/gtest_update_server_certificate.cpp +++ b/cpp/example_code/iam/gtests/gtest_update_server_certificate.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "iam_samples.h" @@ -9,7 +17,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(IAM_GTests, update_server_certificate) { + TEST_F(IAM_GTests, update_server_certificate_2_) { auto result = AwsDoc::IAM::updateServerCertificate("non-existent-certificate", "new-non-existent-certificate", *s_clientConfig); diff --git a/cpp/example_code/iam/gtests/gtest_update_user.cpp b/cpp/example_code/iam/gtests/gtest_update_user.cpp index 66c3140e5a0..2220536154a 100644 --- a/cpp/example_code/iam/gtests/gtest_update_user.cpp +++ b/cpp/example_code/iam/gtests/gtest_update_user.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include "iam_samples.h" @@ -9,7 +17,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(IAM_GTests, update_user) { + TEST_F(IAM_GTests, update_user_2_) { auto user = getUser(); ASSERT_FALSE(user.empty()); auto newUserName = uuidName("user"); diff --git a/cpp/example_code/iam/gtests/iam_gtests.cpp b/cpp/example_code/iam/gtests/iam_gtests.cpp index 2f02b494623..ce18f0a9ecf 100644 --- a/cpp/example_code/iam/gtests/iam_gtests.cpp +++ b/cpp/example_code/iam/gtests/iam_gtests.cpp @@ -63,8 +63,10 @@ void AwsDocTest::IAM_GTests::TearDownTestSuite() { } void AwsDocTest::IAM_GTests::SetUp() { - m_savedBuffer = std::cout.rdbuf(); - std::cout.rdbuf(&m_coutBuffer); + if (suppressStdOut()) { + m_savedBuffer = std::cout.rdbuf(); + std::cout.rdbuf(&m_coutBuffer); + } } void AwsDocTest::IAM_GTests::TearDown() { @@ -376,5 +378,9 @@ void AwsDocTest::IAM_GTests::deleteRolePolicy(const Aws::String &role, } } +bool AwsDocTest::IAM_GTests::suppressStdOut() { + return std::getenv("EXAMPLE_TESTS_LOG_ON") == nullptr; +} + diff --git a/cpp/example_code/iam/gtests/iam_gtests.h b/cpp/example_code/iam/gtests/iam_gtests.h index e393843d112..0f6895c4fe8 100644 --- a/cpp/example_code/iam/gtests/iam_gtests.h +++ b/cpp/example_code/iam/gtests/iam_gtests.h @@ -78,6 +78,9 @@ namespace AwsDocTest { static std::unique_ptr s_clientConfig; private: + + bool suppressStdOut(); + static Aws::SDKOptions s_options; std::stringbuf m_coutBuffer; // Used to silence std::cout. diff --git a/cpp/example_code/lambda/CMakeLists.txt b/cpp/example_code/lambda/CMakeLists.txt index 5c068b16346..8c2923d615c 100644 --- a/cpp/example_code/lambda/CMakeLists.txt +++ b/cpp/example_code/lambda/CMakeLists.txt @@ -10,7 +10,7 @@ set(SERVICE_COMPONENTS lambda iam) # Set this project's name. project("${SERVICE_NAME}-examples") -#Set the location of where Windows can find the installed libraries of the SDK. +# Set the location of where Windows can find the installed libraries of the SDK. if(MSVC) string(REPLACE ";" "/aws-cpp-sdk-all;" SYSTEM_MODULE_PATH "${CMAKE_SYSTEM_PREFIX_PATH}/aws-cpp-sdk-all") list(APPEND CMAKE_PREFIX_PATH ${SYSTEM_MODULE_PATH}) diff --git a/cpp/example_code/lambda/tests/CMakeLists.txt b/cpp/example_code/lambda/tests/CMakeLists.txt index 07bd6c4e4ca..7d94f5a2610 100644 --- a/cpp/example_code/lambda/tests/CMakeLists.txt +++ b/cpp/example_code/lambda/tests/CMakeLists.txt @@ -14,15 +14,23 @@ project("${EXAMPLE_SERVICE_NAME}-examples-gtests" ) # Set the C++ standard to use to build this target. set(CMAKE_CXX_STANDARD 14) -include(FetchContent) -FetchContent_Declare( - googletest - GIT_REPOSITORY https://github.com/google/googletest.git - GIT_TAG release-1.12.1 -) -# For Windows: Prevent overriding the parent project's compiler/linker settings. -set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) -FetchContent_MakeAvailable(googletest) +# Build shared libraries by default. +set(BUILD_SHARED_LIBS ON) + +find_package(GTest) + +if(NOT GTest_FOUND) + include(FetchContent) + FetchContent_Declare( + googletest + GIT_REPOSITORY https://github.com/google/googletest.git + GIT_TAG release-1.12.1 + ) + + # For Windows: Prevent overriding the parent project's compiler/linker settings. + set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) + FetchContent_MakeAvailable(googletest) +endif() # Set the location for Windows to find the installed libraries of the SDK. if(MSVC) @@ -30,10 +38,6 @@ if(MSVC) list(APPEND CMAKE_PREFIX_PATH ${SYSTEM_MODULE_PATH}) endif() -# Build shared libraries by default. -if(NOT BUILD_SHARED_LIBS) - set(BUILD_SHARED_LIBS ON) -endif() # Find the AWS SDK for C++ package. find_package(AWSSDK REQUIRED COMPONENTS ${CURRENT_TARGET_AWS_DEPENDENCIES}) @@ -45,13 +49,12 @@ add_executable( # If the compiler is some version of Microsoft Visual C++, or another compiler simulating C++, # and building as shared libraries, then dynamically link to those shared libraries. if(MSVC AND BUILD_SHARED_LIBS) - add_definitions(-DUSE_IMPORT_EXPORT) - set(CMAKE_BUILD_TYPE Debug) #Explicitly setting CMAKE_BUILD_TYPE is necessary in Windows to copy DLLs. + set(CMAKE_BUILD_TYPE Debug) # Explicitly setting CMAKE_BUILD_TYPE is necessary in Windows to copy DLLs. # Copy relevant AWS SDK for C++ libraries into the current binary directory for running and debugging. AWSSDK_CPY_DYN_LIBS( - SERVICE_LIST + CURRENT_TARGET_AWS_DEPENDENCIES "" ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE} ) diff --git a/cpp/example_code/lambda/tests/gtest_get_started_with_functions_scenario.cpp b/cpp/example_code/lambda/tests/gtest_get_started_with_functions_scenario.cpp index ef1baffbc4e..eb4f02b6203 100644 --- a/cpp/example_code/lambda/tests/gtest_get_started_with_functions_scenario.cpp +++ b/cpp/example_code/lambda/tests/gtest_get_started_with_functions_scenario.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include @@ -10,7 +18,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE (readability-named-parameter) - TEST_F(Lambda_GTests, get_started_with_functions_scenario) { + TEST_F(Lambda_GTests, get_started_with_functions_scenario_2_) { AddCommandLineResponses({"8", "", "1", diff --git a/cpp/example_code/lambda/tests/lambda_gtests.cpp b/cpp/example_code/lambda/tests/lambda_gtests.cpp index 3bfa4907cc4..ba546db2b1a 100644 --- a/cpp/example_code/lambda/tests/lambda_gtests.cpp +++ b/cpp/example_code/lambda/tests/lambda_gtests.cpp @@ -23,8 +23,10 @@ void AwsDocTest::Lambda_GTests::TearDownTestSuite() { } void AwsDocTest::Lambda_GTests::SetUp() { - m_savedBuffer = std::cout.rdbuf(); - std::cout.rdbuf(&m_coutBuffer); + if (suppressStdOut()) { + m_savedBuffer = std::cout.rdbuf(); + std::cout.rdbuf(&m_coutBuffer); + } m_savedInBuffer = std::cin.rdbuf(); std::cin.rdbuf(&m_cinBuffer); @@ -70,3 +72,8 @@ bool AwsDocTest::Lambda_GTests::getTrailingInt(const std::string &string, int &r return false; } + +bool AwsDocTest::Lambda_GTests::suppressStdOut() { + return std::getenv("EXAMPLE_TESTS_LOG_ON") == nullptr; +} + diff --git a/cpp/example_code/lambda/tests/lambda_gtests.h b/cpp/example_code/lambda/tests/lambda_gtests.h index 857568b5f0c..653f5e58d56 100644 --- a/cpp/example_code/lambda/tests/lambda_gtests.h +++ b/cpp/example_code/lambda/tests/lambda_gtests.h @@ -38,6 +38,9 @@ namespace AwsDocTest { std::streambuf *m_savedBuffer = nullptr; private: + + bool suppressStdOut(); + static Aws::SDKOptions s_options; std::stringbuf m_cinBuffer; diff --git a/cpp/example_code/s3/CMakeLists.txt b/cpp/example_code/s3/CMakeLists.txt index 247e29673da..4c5ee8804a0 100644 --- a/cpp/example_code/s3/CMakeLists.txt +++ b/cpp/example_code/s3/CMakeLists.txt @@ -7,7 +7,7 @@ cmake_minimum_required(VERSION 3.8) # Set this project's name. project("s3-examples") -#Set the location of where Windows can find the installed libraries of the SDK. +# Set the location of where Windows can find the installed libraries of the SDK. if(MSVC) string(REPLACE ";" "/aws-cpp-sdk-all;" SYSTEM_MODULE_PATH "${CMAKE_SYSTEM_PREFIX_PATH}/aws-cpp-sdk-all") list(APPEND CMAKE_PREFIX_PATH ${SYSTEM_MODULE_PATH}) @@ -35,11 +35,11 @@ if(MSVC AND BUILD_SHARED_LIBS) add_definitions(-DUSE_IMPORT_EXPORT) # Copy relevant AWS SDK for C++ libraries into the current binary directory for running and debugging. - set(CMAKE_BUILD_TYPE Debug) #Explicitly setting CMAKE_BUILD_TYPE is necessary in windows to copy dlls. + set(CMAKE_BUILD_TYPE Debug) # Explicitly setting CMAKE_BUILD_TYPE is necessary in windows to copy dlls. list(APPEND SERVICE_LIST s3 sts iam) - AWSSDK_CPY_DYN_LIBS(SERVICE_LIST "" ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}) #Choose this line if your executables are in /build/Debug + AWSSDK_CPY_DYN_LIBS(SERVICE_LIST "" ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}) endif() # Add the code example-specific header files. diff --git a/cpp/example_code/s3/tests/CMakeLists.txt b/cpp/example_code/s3/tests/CMakeLists.txt index 13e7c509ab4..de4335de35a 100644 --- a/cpp/example_code/s3/tests/CMakeLists.txt +++ b/cpp/example_code/s3/tests/CMakeLists.txt @@ -6,7 +6,7 @@ cmake_minimum_required(VERSION 3.14) set(EXAMPLE_SERVICE_NAME "s3") set(CURRENT_TARGET "${EXAMPLE_SERVICE_NAME}_gtest") -set(CURRENT_TARGET_AWS_DEPENDENCIES s3 sts) +set(CURRENT_TARGET_AWS_DEPENDENCIES s3 sts iam) # Set this project's name. project("${EXAMPLE_SERVICE_NAME}-examples-gtests" ) @@ -14,15 +14,24 @@ project("${EXAMPLE_SERVICE_NAME}-examples-gtests" ) # Set the C++ standard to use to build this target. set(CMAKE_CXX_STANDARD 14) -include(FetchContent) -FetchContent_Declare( - googletest - GIT_REPOSITORY https://github.com/google/googletest.git - GIT_TAG release-1.12.1 -) -# For Windows: Prevent overriding the parent project's compiler/linker settings. -set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) -FetchContent_MakeAvailable(googletest) +# Build shared libraries by default. +set(BUILD_SHARED_LIBS ON) + +find_package(GTest) + +if(NOT GTest_FOUND) + include(FetchContent) + FetchContent_Declare( + googletest + GIT_REPOSITORY https://github.com/google/googletest.git + GIT_TAG release-1.12.1 + ) + + # For Windows: Prevent overriding the parent project's compiler/linker settings. + set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) + FetchContent_MakeAvailable(googletest) +endif() + # Set the location for Windows to find the installed libraries of the SDK. if(MSVC) @@ -30,11 +39,6 @@ if(MSVC) list(APPEND CMAKE_PREFIX_PATH ${SYSTEM_MODULE_PATH}) endif() -# Build shared libraries by default. -if(NOT BUILD_SHARED_LIBS) - set(BUILD_SHARED_LIBS ON) -endif() - # Find the AWS SDK for C++ package. find_package(AWSSDK REQUIRED COMPONENTS ${CURRENT_TARGET_AWS_DEPENDENCIES}) @@ -46,18 +50,14 @@ add_executable( # and building as shared libraries, then dynamically link to those shared libraries. if(MSVC AND BUILD_SHARED_LIBS) add_definitions(-DUSE_IMPORT_EXPORT) - # Copy relevant AWS SDK for C++ libraries into the current binary directory for running and debugging. - list(APPEND SERVICE_LIST ${CURRENT_TARGET_AWS_DEPENDENCIES}) - #For IDE's like Xcode and Visual Studio this line will be ignored because Release/Debug - # is switched internally, but this is necessary for non-IDE builds. - - #TODO:Choose which of the following two lines to use to copy to the same folder where your executables are. + set(CMAKE_BUILD_TYPE Debug) # Explicitly set this to support library copying and test automation. + AWSSDK_CPY_DYN_LIBS( - SERVICE_LIST + CURRENT_TARGET_AWS_DEPENDENCIES "" ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE} - ) #Choose this line if your executables are in /build/Debug + ) add_custom_command( TARGET @@ -81,7 +81,7 @@ endif() # Check whether the target system is Windows, including Win64. if(WIN32) - list(FILTER AWSDOC_S3_SOURCE EXCLUDE REGEX "/gtest_list_buckets_disabling_dns_cache.cpp$") # Not supported in windows, see file for details + list(FILTER GTEST_SOURCE_FILES EXCLUDE REGEX "/gtest_list_buckets_disabling_dns_cache.cpp$") # Not supported in windows, see file for details # Check whether the compiler is some version of Microsoft Visual C++, or another compiler simulating C++. if(MSVC) diff --git a/cpp/example_code/s3/tests/S3_GTests.cpp b/cpp/example_code/s3/tests/S3_GTests.cpp index cf37a05d247..4bad4860efe 100644 --- a/cpp/example_code/s3/tests/S3_GTests.cpp +++ b/cpp/example_code/s3/tests/S3_GTests.cpp @@ -333,8 +333,10 @@ Aws::String AwsDocTest::S3_GTests::GetBucketPolicy(const Aws::String &bucketName } void AwsDocTest::S3_GTests::SetUp() { - m_savedBuffer = std::cout.rdbuf(); - std::cout.rdbuf(&m_coutBuffer); + if (suppressStdOut()) { + m_savedBuffer = std::cout.rdbuf(); + std::cout.rdbuf(&m_coutBuffer); + } } void AwsDocTest::S3_GTests::TearDown() { @@ -344,5 +346,9 @@ void AwsDocTest::S3_GTests::TearDown() { } } +bool AwsDocTest::S3_GTests::suppressStdOut() { + return std::getenv("EXAMPLE_TESTS_LOG_ON") == nullptr; +} + diff --git a/cpp/example_code/s3/tests/S3_GTests.h b/cpp/example_code/s3/tests/S3_GTests.h index 9e522b28ebb..716c8f3665c 100644 --- a/cpp/example_code/s3/tests/S3_GTests.h +++ b/cpp/example_code/s3/tests/S3_GTests.h @@ -55,6 +55,9 @@ namespace AwsDocTest { static std::unique_ptr s_clientConfig; private: + + bool suppressStdOut(); + static void DeleteBuckets(); static Aws::SDKOptions s_options; diff --git a/cpp/example_code/s3/tests/gtest_copy_object.cpp b/cpp/example_code/s3/tests/gtest_copy_object.cpp index 8c7e2000f00..8bf9b364e6b 100644 --- a/cpp/example_code/s3/tests/gtest_copy_object.cpp +++ b/cpp/example_code/s3/tests/gtest_copy_object.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials and pre-configured resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include @@ -12,7 +20,7 @@ static const int BUCKETS_NEEDED = 2; namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(S3_GTests, copy_object) { + TEST_F(S3_GTests, copy_object_2_) { std::vector bucketNames = GetCachedS3Buckets(BUCKETS_NEEDED); ASSERT_GE(bucketNames.size(), BUCKETS_NEEDED) << "Failed to meet precondition" << std::endl; diff --git a/cpp/example_code/s3/tests/gtest_create_bucket.cpp b/cpp/example_code/s3/tests/gtest_create_bucket.cpp index 8a9f9d2efa2..deb35fdd5e9 100644 --- a/cpp/example_code/s3/tests/gtest_create_bucket.cpp +++ b/cpp/example_code/s3/tests/gtest_create_bucket.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include @@ -11,7 +19,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(S3_GTests, create_bucket) { + TEST_F(S3_GTests, create_bucket_2_) { Aws::String uuid = Aws::Utils::UUID::RandomUUID(); Aws::String bucketName = "doc-example-bucket-" + Aws::Utils::StringUtils::ToLower(uuid.c_str()); diff --git a/cpp/example_code/s3/tests/gtest_delete_bucket.cpp b/cpp/example_code/s3/tests/gtest_delete_bucket.cpp index 4afdb2f7b69..754bb29d50c 100644 --- a/cpp/example_code/s3/tests/gtest_delete_bucket.cpp +++ b/cpp/example_code/s3/tests/gtest_delete_bucket.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include @@ -11,7 +19,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(S3_GTests, delete_bucket) { + TEST_F(S3_GTests, delete_bucket_2_) { Aws::String uuid = Aws::Utils::UUID::RandomUUID(); Aws::String bucketName = "doc-example-bucket-" + Aws::Utils::StringUtils::ToLower(uuid.c_str()); diff --git a/cpp/example_code/s3/tests/gtest_delete_bucket_policy.cpp b/cpp/example_code/s3/tests/gtest_delete_bucket_policy.cpp index e6248428e6d..69e3cb9aa74 100644 --- a/cpp/example_code/s3/tests/gtest_delete_bucket_policy.cpp +++ b/cpp/example_code/s3/tests/gtest_delete_bucket_policy.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include @@ -13,7 +21,7 @@ static const int BUCKETS_NEEDED = 1; namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(S3_GTests, delete_bucket_policy) { + TEST_F(S3_GTests, delete_bucket_policy_2_) { std::vector bucketNames = GetCachedS3Buckets(BUCKETS_NEEDED); ASSERT_GE(bucketNames.size(), BUCKETS_NEEDED) << "Unable to create bucket as precondition for test" << std::endl; diff --git a/cpp/example_code/s3/tests/gtest_delete_object.cpp b/cpp/example_code/s3/tests/gtest_delete_object.cpp index 28f0f1634e2..41604f34d69 100644 --- a/cpp/example_code/s3/tests/gtest_delete_object.cpp +++ b/cpp/example_code/s3/tests/gtest_delete_object.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include @@ -13,7 +21,7 @@ static const int BUCKETS_NEEDED = 1; namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(S3_GTests, delete_object) { + TEST_F(S3_GTests, delete_object_2_) { std::vector bucketNames = GetCachedS3Buckets(BUCKETS_NEEDED); ASSERT_GE(bucketNames.size(), BUCKETS_NEEDED) << "Failed to meet precondition" << std::endl; diff --git a/cpp/example_code/s3/tests/gtest_delete_objects.cpp b/cpp/example_code/s3/tests/gtest_delete_objects.cpp index 8118ad1259d..cb9fc6e1438 100644 --- a/cpp/example_code/s3/tests/gtest_delete_objects.cpp +++ b/cpp/example_code/s3/tests/gtest_delete_objects.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include @@ -13,7 +21,7 @@ static const int BUCKETS_NEEDED = 1; namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(S3_GTests, delete_objects) { + TEST_F(S3_GTests, delete_objects_2_) { std::vector bucketNames = GetCachedS3Buckets(BUCKETS_NEEDED); ASSERT_GE(bucketNames.size(), BUCKETS_NEEDED) << "Failed to meet precondition" << std::endl; diff --git a/cpp/example_code/s3/tests/gtest_delete_website_config.cpp b/cpp/example_code/s3/tests/gtest_delete_website_config.cpp index d405078ebf6..4dc5c1fab1f 100644 --- a/cpp/example_code/s3/tests/gtest_delete_website_config.cpp +++ b/cpp/example_code/s3/tests/gtest_delete_website_config.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include @@ -13,7 +21,7 @@ static const int BUCKETS_NEEDED = 1; namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(S3_GTests, delete_website_config) { + TEST_F(S3_GTests, delete_website_config_2_) { std::vector bucketNames = GetCachedS3Buckets(BUCKETS_NEEDED); ASSERT_GE(bucketNames.size(), BUCKETS_NEEDED) << "Failed to meet precondition" << std::endl; diff --git a/cpp/example_code/s3/tests/gtest_get_bucket_acl.cpp b/cpp/example_code/s3/tests/gtest_get_bucket_acl.cpp index 119aa7d7e25..cea02bfb394 100644 --- a/cpp/example_code/s3/tests/gtest_get_bucket_acl.cpp +++ b/cpp/example_code/s3/tests/gtest_get_bucket_acl.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include @@ -12,7 +20,7 @@ static const int BUCKETS_NEEDED = 1; namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(S3_GTests, get_bucket_acl) { + TEST_F(S3_GTests, get_bucket_acl_2_) { std::vector bucketNames = GetCachedS3Buckets(BUCKETS_NEEDED); ASSERT_GE(bucketNames.size(), BUCKETS_NEEDED) << "Failed to meet precondition" << std::endl; diff --git a/cpp/example_code/s3/tests/gtest_get_bucket_policy.cpp b/cpp/example_code/s3/tests/gtest_get_bucket_policy.cpp index 21be85d4562..9476ac412d6 100644 --- a/cpp/example_code/s3/tests/gtest_get_bucket_policy.cpp +++ b/cpp/example_code/s3/tests/gtest_get_bucket_policy.cpp @@ -2,18 +2,25 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include #include "awsdoc/s3/s3_examples.h" -#include #include "S3_GTests.h" static const int BUCKETS_NEEDED = 1; namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(S3_GTests, get_bucket_policy) { + TEST_F(S3_GTests, get_bucket_policy_2_) { std::vector bucketNames = GetCachedS3Buckets(BUCKETS_NEEDED); ASSERT_GE(bucketNames.size(), BUCKETS_NEEDED) << "Unable to create bucket as precondition for test" << std::endl; diff --git a/cpp/example_code/s3/tests/gtest_get_object.cpp b/cpp/example_code/s3/tests/gtest_get_object.cpp index c5fdb9bc866..032756cf169 100644 --- a/cpp/example_code/s3/tests/gtest_get_object.cpp +++ b/cpp/example_code/s3/tests/gtest_get_object.cpp @@ -2,18 +2,25 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include #include "awsdoc/s3/s3_examples.h" -#include #include "S3_GTests.h" static const int BUCKETS_NEEDED = 1; namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(S3_GTests, get_object) { + TEST_F(S3_GTests, get_object_2_) { std::vector bucketNames = GetCachedS3Buckets(BUCKETS_NEEDED); ASSERT_GE(bucketNames.size(), BUCKETS_NEEDED) << "Failed to meet precondition" << std::endl; diff --git a/cpp/example_code/s3/tests/gtest_get_put_bucket_acl.cpp b/cpp/example_code/s3/tests/gtest_get_put_bucket_acl.cpp index 25c001eaaad..edfbb93c58e 100644 --- a/cpp/example_code/s3/tests/gtest_get_put_bucket_acl.cpp +++ b/cpp/example_code/s3/tests/gtest_get_put_bucket_acl.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include @@ -12,7 +20,7 @@ static const int BUCKETS_NEEDED = 1; namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(S3_GTests, get_put_bucket_acl) { + TEST_F(S3_GTests, get_put_bucket_acl_2_) { std::vector bucketNames = GetCachedS3Buckets(BUCKETS_NEEDED); ASSERT_GE(bucketNames.size(), BUCKETS_NEEDED) << "Failed to meet precondition" << std::endl; diff --git a/cpp/example_code/s3/tests/gtest_get_put_object_acl.cpp b/cpp/example_code/s3/tests/gtest_get_put_object_acl.cpp index 6654bcef428..9d5abd35b46 100644 --- a/cpp/example_code/s3/tests/gtest_get_put_object_acl.cpp +++ b/cpp/example_code/s3/tests/gtest_get_put_object_acl.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include @@ -12,7 +20,7 @@ static const int BUCKETS_NEEDED = 1; namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(S3_GTests, get_object_acl) { + TEST_F(S3_GTests, get_object_acl_2_) { std::vector bucketNames = GetCachedS3Buckets(BUCKETS_NEEDED); ASSERT_GE(bucketNames.size(), BUCKETS_NEEDED) << "Failed to meet precondition" << std::endl; @@ -30,7 +38,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(S3_GTests, put_object_acl) { + TEST_F(S3_GTests, put_object_acl_2_) { std::vector bucketNames = GetCachedS3Buckets(BUCKETS_NEEDED); ASSERT_GE(bucketNames.size(), BUCKETS_NEEDED) << "Failed to meet precondition" << std::endl; diff --git a/cpp/example_code/s3/tests/gtest_get_website_config.cpp b/cpp/example_code/s3/tests/gtest_get_website_config.cpp index ef61d6c9d58..3710c7b0f75 100644 --- a/cpp/example_code/s3/tests/gtest_get_website_config.cpp +++ b/cpp/example_code/s3/tests/gtest_get_website_config.cpp @@ -2,18 +2,25 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include #include "awsdoc/s3/s3_examples.h" -#include #include "S3_GTests.h" static const int BUCKETS_NEEDED = 1; namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(S3_GTests, get_website_config) { + TEST_F(S3_GTests, get_website_config_2_) { std::vector bucketNames = GetCachedS3Buckets(BUCKETS_NEEDED); ASSERT_GE(bucketNames.size(), BUCKETS_NEEDED) << "Failed to meet precondition" << std::endl; diff --git a/cpp/example_code/s3/tests/gtest_list_buckets.cpp b/cpp/example_code/s3/tests/gtest_list_buckets.cpp index 1421444d48f..dc6c570a726 100644 --- a/cpp/example_code/s3/tests/gtest_list_buckets.cpp +++ b/cpp/example_code/s3/tests/gtest_list_buckets.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include @@ -10,7 +18,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(S3_GTests, list_buckets) { + TEST_F(S3_GTests, list_buckets_2_) { bool result = AwsDoc::S3::ListBuckets(*s_clientConfig); EXPECT_TRUE(result); diff --git a/cpp/example_code/s3/tests/gtest_list_buckets_disabling_dns_cache.cpp b/cpp/example_code/s3/tests/gtest_list_buckets_disabling_dns_cache.cpp index f72f442d217..8eda2eeecd9 100644 --- a/cpp/example_code/s3/tests/gtest_list_buckets_disabling_dns_cache.cpp +++ b/cpp/example_code/s3/tests/gtest_list_buckets_disabling_dns_cache.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include @@ -11,7 +19,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(S3_GTests, list_buckets_diabling_dns_cache) { + TEST_F(S3_GTests, list_buckets_diabling_dns_cache_2_) { bool result = AwsDoc::S3::ListBucketDisablingDnsCache(*s_clientConfig); EXPECT_TRUE(result); diff --git a/cpp/example_code/s3/tests/gtest_list_objects.cpp b/cpp/example_code/s3/tests/gtest_list_objects.cpp index db4c3e4be5d..4848da32f93 100644 --- a/cpp/example_code/s3/tests/gtest_list_objects.cpp +++ b/cpp/example_code/s3/tests/gtest_list_objects.cpp @@ -2,18 +2,25 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include #include "awsdoc/s3/s3_examples.h" -#include #include "S3_GTests.h" static const int BUCKETS_NEEDED = 1; namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(S3_GTests, list_objects) { + TEST_F(S3_GTests, list_objects_2_) { std::vector bucketNames = GetCachedS3Buckets(BUCKETS_NEEDED); ASSERT_GE(bucketNames.size(), BUCKETS_NEEDED) << "Failed to meet precondition" << std::endl; diff --git a/cpp/example_code/s3/tests/gtest_list_objects_with_aws_global_region.cpp b/cpp/example_code/s3/tests/gtest_list_objects_with_aws_global_region.cpp index 80e035e162e..81a3aeddebb 100644 --- a/cpp/example_code/s3/tests/gtest_list_objects_with_aws_global_region.cpp +++ b/cpp/example_code/s3/tests/gtest_list_objects_with_aws_global_region.cpp @@ -2,16 +2,23 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include #include "awsdoc/s3/s3_examples.h" -#include #include "S3_GTests.h" namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(S3_GTests, list_objects_with_aws_global_region) { + TEST_F(S3_GTests, list_objects_with_aws_global_region_2_) { bool result = AwsDoc::S3::ListObjectsWithAWSGlobalRegion(*s_clientConfig); EXPECT_TRUE(result); diff --git a/cpp/example_code/s3/tests/gtest_put_bucket_acl.cpp b/cpp/example_code/s3/tests/gtest_put_bucket_acl.cpp index 98fc0d809d0..9f836def3c7 100644 --- a/cpp/example_code/s3/tests/gtest_put_bucket_acl.cpp +++ b/cpp/example_code/s3/tests/gtest_put_bucket_acl.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include @@ -12,7 +20,7 @@ static const int BUCKETS_NEEDED = 1; namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(S3_GTests, put_bucket_acl) { + TEST_F(S3_GTests, put_bucket_acl_2_) { std::vector bucketNames = GetCachedS3Buckets(BUCKETS_NEEDED); ASSERT_GE(bucketNames.size(), BUCKETS_NEEDED) << "Failed to meet precondition" << std::endl; diff --git a/cpp/example_code/s3/tests/gtest_put_bucket_policy.cpp b/cpp/example_code/s3/tests/gtest_put_bucket_policy.cpp index a86d9fdfca0..ded99c63a29 100644 --- a/cpp/example_code/s3/tests/gtest_put_bucket_policy.cpp +++ b/cpp/example_code/s3/tests/gtest_put_bucket_policy.cpp @@ -2,18 +2,25 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include #include "awsdoc/s3/s3_examples.h" -#include #include "S3_GTests.h" static const int BUCKETS_NEEDED = 1; namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(S3_GTests, put_bucket_policy) { + TEST_F(S3_GTests, put_bucket_policy_2_) { std::vector bucketNames = GetCachedS3Buckets(BUCKETS_NEEDED); ASSERT_GE(bucketNames.size(), BUCKETS_NEEDED) << "Unable to create bucket as precondition for test" << std::endl; diff --git a/cpp/example_code/s3/tests/gtest_put_object.cpp b/cpp/example_code/s3/tests/gtest_put_object.cpp index 06433812192..0108ddde3c6 100644 --- a/cpp/example_code/s3/tests/gtest_put_object.cpp +++ b/cpp/example_code/s3/tests/gtest_put_object.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include @@ -12,7 +20,7 @@ static const int BUCKETS_NEEDED = 1; namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(S3_GTests, put_object) { + TEST_F(S3_GTests, put_object_2_) { std::vector bucketNames = GetCachedS3Buckets(BUCKETS_NEEDED); ASSERT_GE(bucketNames.size(), BUCKETS_NEEDED) << "Failed to meet precondition" << std::endl; diff --git a/cpp/example_code/s3/tests/gtest_put_object_async.cpp b/cpp/example_code/s3/tests/gtest_put_object_async.cpp index c43d83d132a..c915e005ace 100644 --- a/cpp/example_code/s3/tests/gtest_put_object_async.cpp +++ b/cpp/example_code/s3/tests/gtest_put_object_async.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include @@ -13,7 +21,7 @@ static const int BUCKETS_NEEDED = 1; namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(S3_GTests, put_object_async) { + TEST_F(S3_GTests, put_object_async_2_) { std::vector bucketNames = GetCachedS3Buckets(BUCKETS_NEEDED); ASSERT_GE(bucketNames.size(), BUCKETS_NEEDED) << "Failed to meet precondition" << std::endl; diff --git a/cpp/example_code/s3/tests/gtest_put_object_buffer.cpp b/cpp/example_code/s3/tests/gtest_put_object_buffer.cpp index c7ade98fe3a..0125c168ce6 100644 --- a/cpp/example_code/s3/tests/gtest_put_object_buffer.cpp +++ b/cpp/example_code/s3/tests/gtest_put_object_buffer.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include @@ -12,7 +20,7 @@ static const int BUCKETS_NEEDED = 1; namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(S3_GTests, put_object_buffer) { + TEST_F(S3_GTests, put_object_buffer_2_) { std::vector bucketNames = GetCachedS3Buckets(BUCKETS_NEEDED); ASSERT_GE(bucketNames.size(), BUCKETS_NEEDED) << "Failed to meet precondition" << std::endl; diff --git a/cpp/example_code/s3/tests/gtest_put_website_config.cpp b/cpp/example_code/s3/tests/gtest_put_website_config.cpp index c674b97469c..233f6172998 100644 --- a/cpp/example_code/s3/tests/gtest_put_website_config.cpp +++ b/cpp/example_code/s3/tests/gtest_put_website_config.cpp @@ -2,18 +2,25 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include #include "awsdoc/s3/s3_examples.h" -#include #include "S3_GTests.h" static const int BUCKETS_NEEDED = 1; namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(S3_GTests, put_website_config) { + TEST_F(S3_GTests, put_website_config_2_) { std::vector bucketNames = GetCachedS3Buckets(BUCKETS_NEEDED); ASSERT_GE(bucketNames.size(), BUCKETS_NEEDED) << "Failed to meet precondition" << std::endl; diff --git a/cpp/example_code/sts/CMakeLists.txt b/cpp/example_code/sts/CMakeLists.txt index c6738deeecf..a9132eecdb2 100644 --- a/cpp/example_code/sts/CMakeLists.txt +++ b/cpp/example_code/sts/CMakeLists.txt @@ -10,7 +10,7 @@ set(SERVICE_COMPONENTS sts iam s3) # Set this project's name. project("${SERVICE_NAME}-examples") -#Set the location of where Windows can find the installed libraries of the SDK. +# Set the location of where Windows can find the installed libraries of the SDK. if(MSVC) string(REPLACE ";" "/aws-cpp-sdk-all;" SYSTEM_MODULE_PATH "${CMAKE_SYSTEM_PREFIX_PATH}/aws-cpp-sdk-all") list(APPEND CMAKE_PREFIX_PATH ${SYSTEM_MODULE_PATH}) @@ -19,15 +19,14 @@ endif() # Set the C++ standard to use to build this target. set(CMAKE_CXX_STANDARD 11) +# Build shared libraries by default. +set(BUILD_SHARED_LIBS ON) + # Enable CTest for testing these code examples. if(BUILD_TESTS) include(CTest) endif() -# Build shared libraries by default. -if(NOT DEFINED BUILD_SHARED_LIBS) - set(BUILD_SHARED_LIBS ON) -endif() # Find the AWS SDK for C++ package. find_package(AWSSDK REQUIRED COMPONENTS ${SERVICE_COMPONENTS}) @@ -35,17 +34,13 @@ find_package(AWSSDK REQUIRED COMPONENTS ${SERVICE_COMPONENTS}) # If the compiler is some version of Microsoft Visual C++, or another compiler simulating C++, # and building as shared libraries, then dynamically link to those shared libraries. if(MSVC AND BUILD_SHARED_LIBS) - add_definitions(-DUSE_IMPORT_EXPORT) - # Copy relevant AWS SDK for C++ libraries into the current binary directory for running and debugging. - set(CMAKE_BUILD_TYPE Debug) # Explicitly setting CMAKE_BUILD_TYPE is necessary in Windows to copy DLLs. list(APPEND SERVICE_LIST ${SERVICE_COMPONENTS}) - AWSSDK_CPY_DYN_LIBS(SERVICE_LIST "" ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}) #Choose this line if your executables are in /build/Debug + AWSSDK_CPY_DYN_LIBS(SERVICE_LIST "" ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE}) endif() - # AWSDOC_SOURCE can be defined in the command line to limit the files in a build. For example, # you can limit files to one action. if(NOT DEFINED AWSDOC_SOURCE) diff --git a/cpp/example_code/sts/gtests/CMakeLists.txt b/cpp/example_code/sts/gtests/CMakeLists.txt index 5440a296227..3759a37cf34 100644 --- a/cpp/example_code/sts/gtests/CMakeLists.txt +++ b/cpp/example_code/sts/gtests/CMakeLists.txt @@ -14,15 +14,23 @@ project("${EXAMPLE_SERVICE_NAME}-examples-gtests" ) # Set the C++ standard to use to build this target. set(CMAKE_CXX_STANDARD 14) -include(FetchContent) -FetchContent_Declare( - googletest - GIT_REPOSITORY https://github.com/google/googletest.git - GIT_TAG release-1.12.1 -) -# For Windows: Prevent overriding the parent project's compiler/linker settings. -set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) -FetchContent_MakeAvailable(googletest) +# Build shared libraries by default. +set(BUILD_SHARED_LIBS ON) + +find_package(GTest) + +if(NOT GTest_FOUND) + include(FetchContent) + FetchContent_Declare( + googletest + GIT_REPOSITORY https://github.com/google/googletest.git + GIT_TAG release-1.12.1 + ) + + # For Windows: Prevent overriding the parent project's compiler/linker settings. + set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) + FetchContent_MakeAvailable(googletest) +endif() # Set the location for Windows to find the installed libraries of the SDK. if(MSVC) @@ -30,11 +38,6 @@ if(MSVC) list(APPEND CMAKE_PREFIX_PATH ${SYSTEM_MODULE_PATH}) endif() -# Build shared libraries by default. -if(NOT BUILD_SHARED_LIBS) - set(BUILD_SHARED_LIBS ON) -endif() - # Find the AWS SDK for C++ package. find_package(AWSSDK REQUIRED COMPONENTS ${CURRENT_TARGET_AWS_DEPENDENCIES}) @@ -45,13 +48,12 @@ add_executable( # If the compiler is some version of Microsoft Visual C++, or another compiler simulating C++, # and building as shared libraries, then dynamically link to those shared libraries. if(MSVC AND BUILD_SHARED_LIBS) - add_definitions(-DUSE_IMPORT_EXPORT) - + set(CMAKE_BUILD_TYPE Debug) # Explicitly setting CMAKE_BUILD_TYPE is necessary in Windows to copy DLLs. # Copy relevant AWS SDK for C++ libraries into the current binary directory for running and debugging. AWSSDK_CPY_DYN_LIBS( - SERVICE_LIST + CURRENT_TARGET_AWS_DEPENDENCIES "" ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_BUILD_TYPE} ) diff --git a/cpp/example_code/sts/gtests/gtest_assume_role.cpp b/cpp/example_code/sts/gtests/gtest_assume_role.cpp index 021b0f68e60..b8a2aa7190f 100644 --- a/cpp/example_code/sts/gtests/gtest_assume_role.cpp +++ b/cpp/example_code/sts/gtests/gtest_assume_role.cpp @@ -2,6 +2,14 @@ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ +/* + * Test types are indicated by the test label ending. + * + * _1_ Requires credentials, permissions, and AWS resources. + * _2_ Requires credentials and permissions. + * _3_ Does not require credentials. + * + */ #include #include @@ -11,7 +19,7 @@ namespace AwsDocTest { // NOLINTNEXTLINE(readability-named-parameter) - TEST_F(STS_GTests, assume_role) { + TEST_F(STS_GTests, assume_role_2_) { Aws::String roleArn = getRoleArn(); ASSERT_FALSE(roleArn.empty()) << preconditionError() << std::endl; diff --git a/cpp/example_code/sts/gtests/sts_gtests.cpp b/cpp/example_code/sts/gtests/sts_gtests.cpp index 3320f0e59bb..6f4592727b8 100644 --- a/cpp/example_code/sts/gtests/sts_gtests.cpp +++ b/cpp/example_code/sts/gtests/sts_gtests.cpp @@ -33,8 +33,10 @@ void AwsDocTest::STS_GTests::TearDownTestSuite() { } void AwsDocTest::STS_GTests::SetUp() { - m_savedBuffer = std::cout.rdbuf(); - std::cout.rdbuf(&m_coutBuffer); + if (suppressStdOut()) { + m_savedBuffer = std::cout.rdbuf(); + std::cout.rdbuf(&m_coutBuffer); + } } void AwsDocTest::STS_GTests::TearDown() { @@ -136,6 +138,10 @@ Aws::String AwsDocTest::STS_GTests::preconditionError() { return "Failed to meet precondition."; } +bool AwsDocTest::STS_GTests::suppressStdOut() { + return std::getenv("EXAMPLE_TESTS_LOG_ON") == nullptr; +} + diff --git a/cpp/example_code/sts/gtests/sts_gtests.h b/cpp/example_code/sts/gtests/sts_gtests.h index 811be9ada6a..25bc2e7d589 100644 --- a/cpp/example_code/sts/gtests/sts_gtests.h +++ b/cpp/example_code/sts/gtests/sts_gtests.h @@ -45,6 +45,9 @@ namespace AwsDocTest { static std::unique_ptr s_clientConfig; private: + + bool suppressStdOut(); + static Aws::SDKOptions s_options; std::stringbuf m_coutBuffer; // Used just to silence std::cout. diff --git a/cpp/run_automated_tests.py b/cpp/run_automated_tests.py new file mode 100644 index 00000000000..9f769210e74 --- /dev/null +++ b/cpp/run_automated_tests.py @@ -0,0 +1,164 @@ +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# SPDX-License-Identifier: Apache-2.0 + +# Script to run automated C++ tests. +# +# Types of automated tests: +# 1. Requires credentials, permissions, and AWS resources. +# 2. Requires credentials and permissions. +# 3. Does not require credentials (mocked if necessary). +# +# For example, the following command builds and runs tests of type 2 and 3. +# +# 'python3 run_automated_tests.py -23' +# +# The service can be specified with the -s option, which takes a regular expression. +# +# For example, the following command builds and runs tests of type 2 and 3 in service s3. +# +# 'python3 run_automated_tests.py -23 -s s3' +# + + +import os +import subprocess +import sys +import getopt +import glob +import re + + +def build_tests(service="*"): + cmake_files = glob.glob( f"example_code/{service}/tests/CMakeLists.txt") + cmake_files.extend(glob.glob( f"example_code/{service}/gtests/CMakeLists.txt")) + + subprocess.call(f"echo $PATH", shell=True) + + run_files = [] + + if len (cmake_files) == 0: + return [1, []] + + has_error = False + base_dir = os.getcwd() + build_dir = os.path.join(base_dir, "build_tests") + + os.makedirs(name=build_dir, exist_ok=True) + + cmake_args = os.getenv("EXTRA_CMAKE_ARGS") + if cmake_args is None : + cmake_args = "" + + for cmake_file in cmake_files : + source_dir = os.path.dirname(cmake_file) + module_build_dir = os.path.join(build_dir, source_dir) + os.makedirs(name=module_build_dir, exist_ok=True) + os.chdir(module_build_dir) + result_code = subprocess.call(f"cmake {cmake_args} {os.path.join(base_dir, source_dir)}", shell=True) + if result_code != 0 : + print(f"Error with cmake for {source_dir}") + has_error = True + continue + + result_code = subprocess.call("cmake --build .", shell=True) + if result_code != 0 : + has_error = True + continue + + run_files.extend(glob.glob(f"{module_build_dir}/*_gtest")) + run_files.extend(glob.glob(f"{module_build_dir}/Debug/*_gtest.exe")) + + if has_error : + return [1, []] + else: + return [0, run_files] + + +def run_tests(run_files = [], type1=False, type2=False, type3=False): + has_error = False + filters = [] + if type1 : + filters.append("*_1_") + + if type2 : + filters.append("*_2_") + + if type3 : + filters.append("*_3_") + + filter_arg = "" + if len(filters) > 0: + filter_arg = f"--gtest_filter={':'.join(filters)}" + + passed_tests = 0 + failed_tests = 0 + for run_file in run_files : + print(f"Calling '{run_file} {filter_arg}'.") + proc = subprocess.Popen([run_file, filter_arg], stdout=subprocess.PIPE, stderr=subprocess.STDOUT) + for line in proc.stdout: + line = line.decode("utf-8") + sys.stdout.write(line) + + match = re.search("\[ PASSED \] (\d+) test", line) + if match is not None: + passed_tests = passed_tests + int(match.group(1)) + continue + match = re.search("\[ FAILED \] (\d+) test", line) + if match is not None: + failed_tests = failed_tests + int(match.group(1)) + continue + + proc.wait() + + if proc.returncode != 0 : + has_error = True + + print('-'*88) + print(f"{passed_tests} tests passed.") + print(f"{failed_tests} tests failed.") + + if has_error: + return 1 + else : + return 0 + + +def main(argv): + type1 = False + type2 = False + type3 = False + service = "*" + + opts, args = getopt.getopt(argv, "h123s:") + for opt, arg in opts: + if opt == '-h': + print('run_automated_tests.py -1 -2 -3 -s ') + print('Where:') + print(' 1. Requires credentials and pre-configured resources.') + print(' 2. Requires credentials.') + print(' 3. Does not require credentials.') + print(' s. Test this service (regular expression).') + sys.exit() + elif opt in ("-1"): + type1 = True + elif opt in ("-2"): + type2 = True + elif opt in ("-3"): + type3 = True + elif opt in ("-s"): + service = arg + + [err_code, run_files] = build_tests(service=service) + + if err_code == 0 : + err_code = run_tests(run_files = run_files, type1=type1, type2=type2, type3=type3) + + return err_code + + +if __name__ == "__main__": + result = main(sys.argv[1:]) + + exit(result) + +

    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�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Χ@yC3({JXdz71+gGa|26H9ThYEOq>YoeG>yT7zo~Et*UT& z8b=FM)9mbJ?k|?QYjO=U-)1w&=dj$I$BHFKjN%j32w726287&7c`2~=(RqzX zhjmYaVih*wow^T-Z_t>{L%^E|d=c|ua0BmI`h0&JoaKiWssL*Dm*@hoQHC5@XB zo?#jF-t(0F6430^yJOiUJE|vqSbNz20Bz#herUBMSTvP^)s>M4+TM=j61?J%48*0c z4yTVdZ0hY=Z^rjqmqkZ~McK;wk}OE&;1pywDNyVw^X2o&Sr{DKby?p-hS{^vG5Z0w zLk9K0ZnF>L(O(oBxI^k5+w=}l6H7F*(Y={`&Xa*G^`1H*CACwxBUt7_JwRMOB&$`G z`-?*(WSH{o*`O-2;#;O>bF4Uq4yjXgalRN{*E=KcZC$}5q4XnpQEfFpa*~?{#p@&! zd7GnUK^Brt7&;#HsKfSG4yTdM#4#4hKDsl2w;dLDDGy*+P6-}1%S89a8SA|1bK^93Sj7d{BrF-8GCPrReZoE``O=+K9Lkrwl zP~OJ?v(DN~LTRRs3GM;Vn{e*_IjZ%GEC6??amJq!4jvgY%y8hzuc&8C2k>4JNIU&|F71rF{`BhnLN^d2cQ1kJt5cbaT_d|dpe;I*s!5*avA55A z=FkORXJW5`@zXVth)v&jek$a3G6=h^&D^|Ga>p!8g^spkc{~3Aq77D(wpp0UnH!vo z-tMq3=chzf*z4h>n(;A@WNr+0+8THsO-z1iMrCbw$~P%ZO0<$%&IRp~r*XQ=3`=nwq0DI#Kh!*ttRoY2 zOm*1M$nR^r;;O*0Jwe|%U@wY-TKBond@my>aMzE)77xJIAAvgVXPq!xjoba%Xc>uN`#TnT{DvIl zFc*O7G~zY4#bYs-PX!~M%84nhrMX|JK_GQgVP$P!q<(N%B-Zxs=%?xIrFx_|>Bmgb zQQ^;ynZsAft%(}jheR>dkB+g_blhXr?>c0-y^r32yK8ZrY9BO*Ef0%XP7SYK?O5NpC$2RIuzlVy> z8L>p)n z;lkZCQ`hz$jO;;}+*!A-f@5z_9*wxyP<8hd2N=Sl#iDf{B-V+@a~UvhkJInwrNQeB zCKD{7(a!!4V;!pqc=joS)nN7Srm1bMsCe~A z>+nXYPV093+FT;o?DCkLDV;fl3;IhCJHh^_RRnpw+_A1A{MT&0Je6o%-ovfpt42sS z<84*a=EmDe*tUwBH7>UeQ$pN%WoErqD#|#dE+MVss<924-Cu1Jj$633+MXy1QOQw7 z4pFQl*gt{jr8}CqMNKoiar)z!3VKXJT3NenYsUf)G`Nll9M-PFC9@cPeHT0Lq^GP`i9}t7GETdyd?J?Bk)mUn=oqF z=pNSZhO9Yu>g*?xcC16Vw`7m z+dJ3h!ONbjKyiA!I?Rdt#(w*+r{uV8Tfu(+01c*n^dqPq7M&SHFY7?m}2jr~N<%5VF?>YsCg zn&5uTzp*^|iU?#}^pemoF;rEV@U$tK2N zeKhW~Kt8TeG|S!nl$dK#^hev4hyIpLH;1b1%Z0yvNG0Vc~sP{V$>5qJ|9R*|ZGhq6k(gAuatj zDIR{<hF#z~=-VJFO2HG{)1ew` z+^33S*57{7-noU7f4q8wk89_f_+zvdEiiu**3{KNq`2EX2 zm95M}Q90{raN1~1R1)Wqb^x*Xi`-xEW*xeu!>Ns;0oW&!SYD!n|E|X#I9Or;-tl~NUs|{kEcA%vk<7t z>O2}JHkI4y2mC?j;Em%r!!GEee(W%iPHrnFQW-IEbw%L&8LfX4(QPJ?wHlg%(O9LzFw-~{j(gY*%y~$^z^XFrz8k#6h9Ob@ z>qy5)Pk8a~PN$BxqkA(OV=KwOJAZu99iiGfEGC*vI*$Zy9T~KeHSYjBk0$U7FmcL? z*Jf**96W>?DXNWAC#1vT%U3Q)+1m`_U&z-mAM2QPR5Ye#h&`T z{7>{&T~|nC%v&H}{na$(9H11&)`MX7@IS4;n8a)0yntl%51lh z&sc4!jJdLM&Op@+`aSM3vxY&$=n>p#G|n@2$$ix+-6_l+qX>4L!DyiA=4)E!wYdP* z_vV02EE8rYHyfgLhVb0*vA=Q%*?Sst`5@Cq=%a1BNA67Cw9mbAh`-j%*7Uw>CH6y) z1O<)bT=x;{{{VMI@Y>we!|k%;UWgM5bKLl;>7$XcZ(8oa`;ka~pb6n~d6Xc6(l5on z8&xcF#gsboaK2pvtTZ`WuToW~ z+c@=XbtNn50gFy2nrT!H8Ae`rQg1G9eNMl6hEV8BiTI}rW$iZoNB6-XmNv({c{xar zmoMxtq^y;)J@0F*N7_}3uH7=}?%~xeQi9u`6ew@bpDwaRoB_pMrlgUq6SvnrG_s|K zQNB>=U)W$49q7bT%NY&L%YvFVNNOaCYadkK+^(J6ab?QEV6Ed&3M!gd!+jx(JN^Fv zavb6_WOi=Q*O~aKEua!c8`{-M!rk*XZns|KtlU4ia4Jy@VnMri1P!cIQ#zi{AFR}L zP+~KP>0Hys*GENVEZ8^_wcn!)=ORL*RgcrJ>P7c(<{YDQ67 zKt_QSExIQCw%ex*c$HdgIrVH{WAt&cwXgHA(%n?j#wLVD#`d{@slG~@cDl}gWb43N zzubdMhRE6)x|%@kIA6m;mVB|b`FZ@;OIJr%G;WRdkleqJKJ{_Yxva5oVDsgoC=ZB- zJT?5e=%$oMx_iUhabw`C%XZYh*sN#b2O+F}wFWPX7SKHcJr0=CHa)Ht#0Z=#qI%Z5^w<{{V97W$e06^+u+1 z6LbEuO$TzKM=pAanMF;;UtQy(+EPId&*0)R+dPc#w_g=kW^hRG>S0|!Zg+x5aO$aJ zxU93a)X{%ASzNbOJO*Nw&#jrq*ygEZ87-Hxq}*RNZ4|74m)kaqy%L*%%akeE1M;}J zxw@5lDnoEN1!gLJY+c9u_$9R{d4z@8pOjmQd~~dD4v3AdX7twH3NskxqAdu?90vs% zvs?{2{&$WKfRNRSlx6Wj+cW zp4WYoA&N<9uPe0&!$dP^p=qFvj&+9e>lLl+4tlIkdD`39S#0K`oR=3jOWjh~3JBo9 zT{d3ak3Rska}k#_bn2C$23Q-PT)p;6AqC0PePfq1yZ-=E0VB#^qOi_7bXDWiRV$_t zQ$AAbSRaBAixkDF@R&oS^p7UlKNUiQX=$qKMLU_3HwTVK!DZ^}B*bQP^19szPW42} z(L67Yi6id{^tY+D1`^=*>I&yY9!$ZyDEF?Cz-9-UPqph=LP$$E45|kZ;^${@V|ezg z6qOEaFvfLDc8EJQJP&ARKJ{4RvRlV7+ePNIkI?F0)n&;tzV3dU&nqb0bLN&u zWB?6SN{XjU$419)`@Zp!Ixmu0Qm6|)hPUTvl0Ty>=u>4dJR&J_yM~M8BCAne)NjV`L_=nc5*UK98<;eLD|42n)B;zOQf&;PZR0MB2TOei<~_o*%6x?<{{{b@zXEUR_r$>m@6vitou% z0dfa=)@+=A?Q8OmGFDQTS%<}IHeA}OXL2?RT+-QZF82e~Pe~r`yhvSPZ|~fyN34Ov zwXK!rI>pPAB?vNRjvSKB995K(Q&hFDjzPgy4zyQGnDcVX-c_`?6xa?cBqg_{Cp>a> zAAtx+Xf4bf-nQtyj}*fo#&EaNO~=?h7n0WD(&4z2l+^#dJ+$YCdSQzbjN5VZ7!x|{>Z+f_97&h14Pn&Ml)+ebE_ zj;KDPvUIn!w_8O(F$_9E#qsLGu%pzoyEf4VQPZat#>2cN9qzJmDy z?&sFBQ|h?!;DC*zk#~yVY;GN|@h4jC)1N;Cyzj$}&=bR2=JsUbIp#!}SsB&Z+dza6 zIlDxR-bb4*WcFGbeJFE#JO+o}p*L@4W?VC$J1X#1nB8XO54NL`>aWK%FKwLGgYqeo z)*Xx1;im9E(T#1HZD@9j3&-h&CM3pOk8OGD>D>dfN2@;M)=Oux`LaElf;1{F18p|Z zc`cK4`pgPe$sZlV?eZ%DQBOS#?t-odK_EOIr_X}i;G1Dxgb>%c(?QJUTX?3~jklw8 zb?uBuM-#{9v)#nr80gO)ON2u9KBceRx0_Y6RCG~p@OUMV!hIpjq44kv5@?H7A_kO&Vp{8Kc|Y`m}iQ_Ye%TT{#TkO07C^ya7<8o4-{JL;JARQZ`9y*dZE@J=@*lc&zLG({%4g*)WzCNlH<#O_i<8avSrmYEyW;na_N^-&w`jxO6K~x z@2;*(=1%PwXb?)`!?-TZ+4-rRN0iyV^v%)C0pL&_rd#n(2eGFV%UPn`ujsfNXnI=e zLT(y{r)DFHV;lp0XIs5IxMaC?hd&eqK;7;>^s&YrFg>oNCug)&k@jrKRUkwP7) zcD?@q-io`L$o*We2b#L+L!!*z@A@cXk9{^#?R=95(9s%-t8r&ufgEER*5q%hoeT`4 zr`@;SdZxYGvtjF=UCD$KO54193>u)a$oZtZxN`7UF$#vCM8|4Au~m$NVaZLVf#)x) z^IXZ~zK-ShDdvP0<}T4dM(J z8M`)jMPZUP+Ge@|_dTPVlI`QZ*ZL%Pt!&+%Yqb_YI7yVb-zCnUv+G;0a!U-iQIVMb zC<_r(OGhx4CwBSwt!5dELy0pf%E_(4V^~Pzr{KGK=%mjRtXadkD+%b07H(qY*|#su z*X#HoSQgTw^zR~RS=%jU3Hf_P_?0BGz zmwU%Yjy~nS_Ljd5#2bi1mQSybkME*1vc8f*$ziFdbQ1#CI6IU705z|mt&0+;&%$ON z*#7w_%M;sYO*D0JXKq`NpOg&>%urUEIR)M5{y}P?nku++H>SPID>P~2bWVm!YNj@N zN!VE|XMu0@>&ba0+3Z{PUb8$c-{G|y!#{V~cSjHEy=A}#3xDcOwKY{F)D`S(^i>~N z!^`)FLJ=;F;4Gwx->6M}6k)#7)a_QxPqO%^jQUC`u4(5S9tU28a|jcOEy{FTOn`f7 z8aPVk4S3l*%?x(kKZxe9nC;ztQ!?e$D%jGen$>2o-Ec_idGhw!+YXBEQgd0hvUC)) z;+2&26#oEOQv8~7O5|0o@>7FFOXu5Jh_=wsg358jwZ{JB8yUo>#Ovm(mEMwbbKDlY zZEB&x@R}`|qS2J>51Q80_xG@^Q3Xk z^6ftbOwq%XIJf#Hq$b&Jetg#p^U}%AqHnC%JKVd?9u95pp#YX);O<)VNoO^HJEBiF zn72o_-jS5G12ve>^Ck=7nKvfBwzj`=L%kYg;l{}~js@3an1EH+wyE|SQ zpb>)F^5gJRQp#eO6TtCN>6Od3jF0>N?0_#2-R6nh2Q|f_cwZa6c=&iKvCP?69LH-G zhrwDh2;L@cqwqirE*G<%a+>LKG49X7KDoPzt~fhYMrm^}TT7%8nucY}9q~xXyBV`v zs;db*r#bFu)ik>P)quarEtbzR7kbENR#$Ep%b+m8T~)ot@8>&Nd(!V7iF z*WiHXXxok&uWa&Ng?$aMLZ*Jh>!dXVpRzbF8Kj~(h9OT%%}nwJ0o{F9&>K@Ecs|au zjy$7x7=&`r1&(WZhSOqBti z2IWY}loM`UQ@3%QayH3WMqM<&H6ZKBO*AH+0^g};h)#|5W*2Vk(CZIgBi+$l zKAECs@*T833rN>fIoWx}{*F__F>Ye!+S*9Y{%c7|Yjnw4C3CEK@tj++j2lgey2F3}3v ztUG9SpB9e{!rtlg`o>0wHJ$D!fD7m?oZ0$4h@pHDKhE(dk4;c{X~DhAmnmoEU4iyD z$(|Rm^L-^;{{W;hTY4rxR@0tjbv^u+g07-kxgRXf)cwiVbdGb&u1{4Ip|LT~k=6rK z;E!pwQdS(lzrYU_sC(nt-ItPQxw-BC08v?Oma6)HXcA6-dDPP z4FhRu*#vn&j@tMouda@gJgw2`Wp_foM6uGg?smNpTB^mAOM(Z*tHo z#crjsF0u&B+6X*;JQycW-%Fddk+9&?8`4|EUvJ*k>`+Jm$x-?VYnpJE`xC--HRSg z8lUf?^0~V>Yvs*jP;w6NIQ_}-l?j?x&iv2gBg@Z%C4s}3$y9hVMjzY{VxH*v7b`T4A4gXM+~v<{tKm>ZRf^F=Gn~lf zlrWLT%Vo7YA@l`cG?fmirEtBU>#=4qINAOr!-002;rA8lyJ<+{4)|rTh#vhHCod(( zIT~X(HuD_9Gk0dY4>UJwBr)TTYu)JgVg39OS*nDw4f|T~bsa$QLpHVtNr^IOJAb2# z^{`ssMLmw}v|Fv4bF%$&*3P(Z8AS-6Bf^-iP9CZxiCUrSi}=89{A}lGTCc?oWC0<;@RPX-*( z6fJk8VR^f`tmSds?A#6gq=fu6UbhtU7*=um)jH0%59*}2bxxeQ{{VaxQTD1Xd~Tl^ z^v`nim{A&Q2Hbk8;IX%QsSb<-xm#zeWYD!39im-t<^u^_g6&QpU*`UD`d!>TONYf$rEGFdl1_Sq%S2}o zsKE_B=AHG^xJB45ecH=wz@LvUhzPt#KSem-*s!k$vd;`+FrTHEyTRWg)mTQ_FhlYCcP198M8wexnZWW%!@wkf0os&a2< z;DF(7(r|ObGKae%;xlRQT)}^7aR-7%ZJIR>MR3WXn+mO@sX8=oqbHFZekfMFnx4jH zk+F?)8zd3jrFE5x+E>ux6F~Os5x3%?{`*J<=o_l<1isDO-4}hX&WHrC=9bp`DK4DT zZafeRlI^(Up2=SW?#I}L+LG+N*9h+*Xl`@E-h_0U*6R?x$GHJzt|wM#{)*)-S!?q*yEx>5QPh^h+IEDVJdq69 zm zh&U+drV~YOV%JXHf3z++@koRB{=hAX&G+F7Fx_cS52~*bKLCPx{y7=1jev=u!_e-?O{Jw{_cep!h1U( z3FIn&6lHuh#i-09W12mK@KDXIV0p?0LYz&r_bPadgiRUiaJkxq(-Q1s7a#Kh_=E>+ z25fpZ{{YDd{TQ}4ig$*;A#n0rn189`QJsSwpUrk`8gx3`D)qA!VI zP`01Xu=!ghDbV({VdzjutXkuh5W{f^aQU1=TKFXT)<1*C;o`QaM@dm8A72eg^%`vd z00YHsqmYNYwRT$U@L4*^Dgzx+hql;ztTnTUKfHBDHh!Q~VM09H%9>wXzWRfznkvpS zPj)h+wWf!`4T$EX&T{FZ(M&hga!1+KpXjqxr`BQ3+Wa`D5k~MS_mr~6a^55II-@Z3 zIduD$Uk96Wi)A_qSXqCX(#NE_Wz{Ndq}X=j6P}xc=$>VdzB8_#1zcp(J%AlYdbPB4 zz*b@Sk!|-+F-_jmpnV&t=j`honz8*t%DN@+hO|+-vKNNPCJZcK%hgqG2|v*lLI|BP z-rQuj1!k^Dn^hanY2xF!cdE1%lTfn}sDey}H3?~eYfa$-jxplab8m?A#9viur=@CtZ z)=lU1&Zd6lyT-5{E*Bhq>96u(JseJ`t*@q{rM1VLJa0L196oBn#PK?&IvMNarGRPr zD|cLapj8x;M~MifmPy&KZb#;ch2+-GI>YV{aa z9ao4=mc{iB%D@jD1(hE)4fcF4)H4u-H-CK?=6%VAuW0f7UZRegsjq@u0-$N;t;!kI zvJUQikb2tuMYWHP9mkqT1KA;M^tUCSz(r(q)o!G7W{uJMSTkrxc)0kj4J$mhse`;}426OG)Oi%riP> z2a}zjaZ=KTRY@Hi^0Dj=lAOKY7W6^DoG%b|88uE7h%#E7Hfx9E^`q0)YQG*ERfI+6 za=JRqI-r9b$Fk-R4qtbAf*B^3dir^{fW*sNg}SP6;FzS?oh(srXJ+sjJ6Z;gq@Y+# za*j+nu+sftE_I|HuO1ibIjg|ULudzX5pOvR=kM-Gi(?dn9ID+q@X`jwPZ{9z&EFL> zod9NGm>1lU%IHc7sG7#_qNt40yM@yjX)=9pjz=Of$s9OS8pbpU9&|P$-1wo;&{EaC z&!v9h=Zt5Ei0FWnIiTJ@Qpl#y6DB899$#9C_wX95{Is&f_c85uam0Qo{>8gC*F^!% z`b09s3G0^s0D@Q1;uRE^er`e`{ZT47qirCosmuk4jhqY5UjT>U(ow*FPHV3hU_v+& z4US{cO6svA_wLJJbYRdhDOkoYGpeZQadWSo2QlF47+7`qja9ke17q;1UhUnVEABKr z&Bwh^qpIKR^C)U!-N7A8syD|$u9oQI z>{_YS#);*bI}Rz8QJQltJ%elpsQ`>XbHBaadaDqC+8O3Ke@E0`uBx*SvU^uS7F&kc zath25VX|u_RIvX5E&gkx!>ecdx_K?%r{20;J+y3ds_LMRPf$MY_#_sL)D(~X7B4z| zfzLC$J^E;?Vs#bRjWmU=bI+*A$EwSYT!#fUE#LnDc45=i$bVTkW+1LlNsEZDiDER= zF!P3$w?CiF0@gkqmX;Vnud0g=VH%g%xcjc2W7%vl-R_qWnVc`#VMi((v(i>w@lR6A zYW&1p_3E@(4$k5g%?`mfUMglE_=<*$c!KUK(`zF~HZzS=PB6SL%_(E&8#04$-am$_ z)n38WxUuyW^em4cCP^i+&2G@K>DKGisr;Jb)pYDQp3=4pp4>F>4F~a(uEXSeXE&S5 zr_|Ow@h^WA^qZ5%={8FQjJV6RS>8AZSz&(?P1JaVG!ajlDddFQhcLG_`}DP!y;FHO z*-BPfxHJ#HIWFVzC1`NnoWtqaxul?iILAf+0(wtp%F*E1g=I?}Nk>yV@9ac)d)Dro zWHzr9YZ)B{bd0wLxW*UJkkQf6GtzGS14480#zx$+F}57@C)91=k$D-~*<2jVI+`*6 z05Rg~+B-f7nLUaeSD3np@Uz z7WXe{X4A+U+li;aOwFZ;p3@uxN4JAbN@hcpH_O%DOfed;9?hStrK;z4ozeW1Lt*jCCT=Igs#-YY$VeZ; z<7M@5+8R^EkNGJEH9~m0$Ue`JCD_u_chl7i@w5)paE!0;+51ho}Sn!{Ex+Ix-H z)|1g;S#H=UN&f)I3a;jkGnth1qyGSv1Zg)X&ot80iZCf~x{(i1!c;YM)O7T8j}-ff z=X=B1CmV4W2k~D;va!_v08-ea@MsG&w)+!Fw^Y7$N?A*eKr=IwCj*i1@8#ijIbf-i z!5=F(xnC}$fX!=ot6pa%LGy6di|e1kRjI?Jr>v@muAg&N6uBgg`W7Bwj$erGM4=9z zkVh-q41=&Ao4bKn@M4i?oVEE^+$SBYk0t7eQ}IMin9 z0XA7_sYN^ORR!eM=a_-sBWu5P>t)5TXGd5dW!=h~!TN>Q*=6gu6JW7t4vemzPQs+)j8#Dp( zvYuKiyI)7A!AVyc=F4cZ*z01c)y*W$-5$p@`RNRBxy_e&cv$J8hBohEyqa4@Qlv6% z<79KaPw1Zre6Z%vZ8h*$9|UiBZf;5R6rg5iR`Dvsqk}CTVd`-uG~|LONOR~Drc8BrxPP`7se(Q!K3-vs%c98t!>tI2UU=XC`mn@@@6 zbFwv;zrjsQMER>Xj?z6}em^x~E3FkcjJqzETwsRmb8_l0??~xeA#>Qq_g{~}Y9qs7 zt!5WAwCsS9yOI0>0Q^1w0Fo0yX|UO8sW@xbp=Zbqi6TAm5gpF_D zi0uRdx6N_|rO6CJ_RFuhXr|4nqotDtjv!f!Ndw=&s;M#m)5aRHO4; zx06yjYM+WoH$lDXm0a=BVXv6zNXR)Pg||sfAJs(ddZvn_!Z;cSddJU-*2etaaP305 zg>4L`&8%*5_Qs#l0Dh#tOpT8~H8<{3;Z;J8sgJ2^pANSNox*4v#^;Yl5TcYZy1C!j zKwihNXm=iW6L-{78;6cp>)?S?RKEz2GHlaQ9v9ajMzGv@xM7kh+Ulw)ezF4HJMDb} zmKsbxvPZI&`}%DO-Zb7eo<#7|s%kAH&8v8pf}=h9X>PYxu^OpneY+2Qb{Wff+r3r> zgAR&HJU5}1Ld)hZ8d~PsTk};Q#N`aT;?GPu@gw~bp>|p(<5)YI>UhO;FS&ax-0b_V zJM25wN}`p~mmUNQ`S)?@X(n8i)EfeP1pgHAW|aZLICdh3ylmt8nQE4)dmO zGB>WDg3;oBO=6{vJWB$68=9!hf(+r;X%{YGwxE2MnAb(RZuO0C@9;l*ih~rYp_(~q z>Yb7kos2HHW%$@~(M8AfuELWOeDmcGZja@`X*Nq@W!o$kx@uf|434gwHtL3ZwZ_BN z4!HY`x!GsxZ4^e4tvgwU~Z(I3)Ot2 zVbbA#O*V52taMS=3Wmt|ONLmvTcWs2?=04Rx5#FIHbx`f~UwGQPvN zC*ST&3Rg`_M?Ilt`a|kN-`=Ie_CpoMr;e_wrZ^bh+Zb(NiC{Y)=JGPGrd;H+J-mC? zl4{Y1NqI7e`3`pQQdX%$hixVs46bG|hluU%!PCJAs@jZkt;r-N7QtaMP9iRT||+(qb~aLT8RV{{XRIXdeFn1-HWKDX@s9#wz9CQ`3y+sW#AG z#d*#jKr3pQA8S{P<1*ImzH=Ob>>OIg zjt#djtELPN z;4V)l4rN)yDx;bEm^)O=8g#hhuQi>4JvC%Sj&zRVQ>CnfK-XJMe>5?d$=PdD#oB#G zCKiQ8<(6lu#X1aLqLlh4G!FGphn&p~=XK1anpV3cS11BwXr!5zlP&(=H7t05syoMJ zCx)nGcqSz*otQFQ^U-MNHVbJCTlV2{yb?Wpt#6K`eA2c!WDO}bu{{XB!fat1?n8h&3H<+_G5T8&74SavqUf*RdYdUlJ_XOrrqO#bO0k46j z_c_kK8kJge=^i*`9M#IlMK&PD7dSna_^Oo+Ip;3>A1-Q)5t73ewO>*_;arOt!dvP^ zP5k;GmFM(Vw}(^nL2fdq*Jrl=9A<^uMFl5;QcHo=?JYcq4Z)?U4HwT!z~O&)&3V{$ zuVuH`{{SlcSFt#B)L1=SUT-V&mQ4d>v9+`(UL3eAt`>h zkVxf1-p*hZpuXoQ*gjen|?(D`(2hFcD)B6nut zztLK&hRx10=&7(cW-Z}l$#_Wkvu^a$j|9^!l00u6dw%kcBbv>3%_)vcxOPYLAx6{? zNOo?w?n}SCnH=jWC5hQ}b56VzakY_6XSKXR^>p~5DW<1krg?8`L3L7sMn@x?F05cC z+>V^lIQ$;rZNwmD*4Msa z!3xCc-@cMMcRN;Ud4Hmir&(U{K1z4mK5DBW6%%G_Y;CD23}Ps|Zn?5p32Sei!XAjbGvxmLD#q^1sR7Drg^&@>zi?R zPNf*5m{fWxACf_!e+%^2g33b_U7|RTyY5FQ=|P7y)3`IQ4L<~^T$|1*W&k?e_4}@+ z^Z4CP=<4F%GT!stt!)&Iib_{Sqa4iU-{0PYOCJ6gwk*!g*GqfPAb^R};lnXyF6@FW zbbf-mK}H%`aerTxycRoiBU&BEk#(%Y=~*=Ze0t1(zmi!fN|G9Cn$R4}i(g;O5StFB z-enB8%}~MVB##gcdv{^n^I2)?gQ*$|V9vv)ynZV%%T(<2lQqG*^VdP*hku2qjn11q zZ13c?u9j*2BXY1?mvRw3P?6iCt44>l)0$uyOG!^9p7%*^IUAz0^t~xLp`(;(&xVS& zC5O5huE*Z`=&LX|cBO7hb^Opt>FJEc*7XMxh&oN-wp&Iybh1YVMNT1$Q*eJZ485;L z&K%DrdI;Ska&KhHK-66p*?a}~jZ3jQ%%T|2U><6|4}`lJuMvj+jSi*#%V&vC4jDkm znUn^y)>-GD;wnI_a=gbAm^@Z-@Qdcn;;dB4W%RFiJ09SxT$5w|ie%AKnG*rgyg$FW zO&l&74M6Mt^i7QA;iZDG2<=~zWLq>g-P)zsifdfZ`xkLbcJa-@B_0SGmZsa2`~FFx z_R-Bq`<@yE1aCP_yGKOJkzw7%F6ifV^6A85k}Hx;JuHifSr{6F}zW;bmcvN4&%PE!Fo?&Hn8B@zGh2TG|%! z4_AE%*B0KA&2Jr6XK60jWADGntzc)Nc;>U1?JoZS6~gH`J@z*7y2EDQ?Cl?#V07`j zDD+Lgikh&7!v58?R-kJkrpi5y5d2O+8E)&PKuzv%?@#u0^;LEs-qT(>r#4OAZq?IG zSp&1&h3z#*o8VFw`tKH3Ou@~!%~8fM%B*7sni^I*Nu#uY2Uyr9Oa!%NKm&5HTT%T} z@LWCEra4OsTV^ollijL`^p!Esk<{`sMn527Z};H$VMp` z%K|r4|9jJ@#L>D*P84|6kjW%c7pmIg=larTXykB zSnWSoCnOQsT-`iMYiw8}e_anmvc_0%Psee0Q*3>6DmzY+9oTyC*X4ANzXE#3f@~FN&RHdWsC1AT#vh+}82P=?` zrNEhvQf6jWRYnN}^9aUXiL#b~n=^aRTX@lp@xON?Y+J=UyWX}NTY@wF`kk#GZDYyS z=S8kHHENPh#g1;r1wC|bbvAy6_d}^%8#YtGf{ZbuT29v+S!zIa5(->Oo@VePRj{RS z1((+PtcD>TYJ2mK$_Yv}Z@D;VbwD#M+v?Z> zZ&@I1{ikZAzirm#%_Y5Spd$n1o!*>42LAxx_7iwF!|*^M=v1*umrS?rOw?u}*75w; zIJkFNErs}NG8gu=VBl4-*lImp4-$AFeXOA7;uNvfIj!xz*0QaTo0|A|X7PGRDjf`& z;FlrhGbX`Xz0IAu`x>4KM^i^Ou{%!W{1a1wZOoW-{{W@M8}nE^opcEPBeQ!uwy=rm z9NJp4G?G4NzoPR-6B}%MY~VZ;^p#aKGw>19(FM4jgf4vmDyt*clyRqfPFhOo7 zpB2W}vQM-+6yvLXU3s7yMz4g)fNlBxh1y=(Ja68+wc79e7ZOIf zxF9>B&7w|jCCy5B*>JzX0KNUL2~G0qmi?aAzs>ig;n_KJen<|m(K6QXQXagxraMO5 z=nx6Q#QfFlIOeC^o zk)F%m9qMWicvO&CT49mRcd~8KSEvBQ>vpxj_uz@*LiLZBXe1fP>24~J&}Q{is5y`s zTXC=6twjT4Zf9lf=oHqo1)FOpA6ogH_Oj}@iyv~EKt0JU5;S4XIy-`E*_(oyk%Rs6QJ%@w0ba*1XMxdOj+L!# z&aJ+wv1N00b+lG&Z=wRE@Uf-N?O0tggdbI^@Bz(pGbjTx$TGW6f&uZHw_b_Pza`to zv9~%7YByE1=E~awfR*-*mwum@RL%QX-p*p6%;T$)>VV^#OWa@M|SJh_ezJMn`Q1RnCy?!#bt0zarCbg)o#3e z0V`B8If3kT!pw$f>tm{k)YVx{^zjQFw73KCs*zC+XVW`_`gas(DasE6)fl9nI_hW9 z)-|L&TU1M=yzVy%81B!Cu}4=m9PE-e+CVw;9SXINU^N&GX8tzsAUfakL$4J?JIMWh zC%gJB{f5?(t~^4ROB-$W*m)F34#ZtWI1YB4NB7ZTaQsGES+k8#5;+jHOqG>Ti6G0{ z>&a)7J+~0d%8Go-yDP0k-b8s2Qcf|Yp|EjGP3^ly7G5L z9vOz#ZEbUGB4K4U{%78>_*NS>IgHX_bl$wr8uV{9=v#GJ1tF!`${i_a7!0=Idtdsb zRgc8#eq^w2jX3 z-mv}dN-9d2+RWwMPz0E7+@;d@E^oaHb$2Fa7wVzk%`X>dkQekf?K!1IEO0x68mrTR zmoase*}Gj(5Wb2RW<8($^qcnYe%ULah#G|LlQmuiJ zR9(z&Nd>|vXScnZ7c>#BsbiG(yE(h_B94X!G2Mornn-9VTEp*1w5J&W-z&A^ zQ^SV<=7ntGu>;t9oBi`mID7d|e-sTX+;Pm++;meKDf0UyD9s$9w#eiYn0;%hgMn?; zV;kel3tr1|N==KoAxT{B%5GzSnvA-`+5Y;j9;k52IiM6+`%O~DIrkM6`Z;sRY)*f7 z-hkhEBf&nB+PSewVsM8Hj9UEOdiX6TlnhK&SF(^g`8|G!#=~LwZq4j7tyJkMrvhoa zHUN=v&3V2%h z!QIPrxE^EPnl#{$*f+DuEx_TGFn*p3y`gT20qnZY)9_uzy$}xdPGv8KRS+YH)0%ko zUCBz18oK?;R&qQ#sKcAh$;{H-$r^Llg_067f{+k%a<^5$>h9OYNH^KJ>8jvQKFaR( z#2_O!Iv$GLZu6*JGd{jHT2a-%Yuu_E4HKvg(c%!gjl0SC24y50-r$5wqY;GNo3iZ) z>=d#2xqMMqHO{3kXpphppgM$8X|{5=X0a&YtD}7@DkE&s2{~M9-*LJbC~UFj=FzXY zU${@Bu!!)SA7`SZ*~pn44AF@`9VGRQF_& zqziKI_aU1bvocm~TyRX^LrLi#d3Cx_JsV_j*tS1nH}dH-nZA_sE<6GONm?-a98YR1 zGTs&)-TA!mM>f`ZYhMNrOzW8mkoOK>pSfUsrecxM(ot;uZp_Lk#YIPZ$n1~BMl*S6 zdU?HU&Zw<$mDiAyB&WRUk8EZhXPT!Kcc{-tAL6pi5>D_Ltknj?-nXu(iw42q!|AxN zcE5=6UAM&27cmS;v~gu`Y3G+t^^?T$IH;m^O;hfDhI1uFi(_%&kvdtOo_Re%-PK{L z>ZPu!bxlL{JURfU98GSo5vZ@Jj!C;MzhHDrHtaFhYkz$V%FMP7a$68wSp9#AUBqoX z42oSI&d**-D!AJVJ09fLZv$-HpmI)hW=7fVZk+QYLugr1B$mwYdYgRVspJ$4>=9}Fti7^jbvvPl__bLqXKkyoYN@5n=2IOQ!uwby*3oNe9?tnV*}FN>M_p7s zxg|2*-9_@JRe3>u4`U3agAax-Z(sx51+2W9rxkmPy*s~?^Fy68oc$W@db;Q4s&M}R z+IHPzyGc)s&g!gF5tk5<536H$Z69*V;uw@wBrrBOV}ubLVb?m2Wl%A`OvY#U-7(&7 z4nf;1Y->vytZ7Oh5ksFnpJ`ZEZV#hDTx#7uouVAjT;PbF<##+!wXt<)^camHqK;hxK@6uMiyq9kt!5u(t;| z7c(WoCQoBe>?-)g0;0EPqvgFf@EWe$=@Z*;O}ngTn@Zl?P}}6L?9CyDzDPscVHd*a zZWQ9@*GtkncPaKtq0!Y(CT_tE`CWPZpO)CP(w9RfS7?~|b3C^qnGwlJnM+74z`X`SF=?+QZJH1jNWRYnZXEPZCvr0V{B-TwBT>9fj87%)#KRC5Ex_ zXA!#Hn~RMJu(==$+~^gL@O0GsMYQk3al9_Jp96`KI&gCD*jQh70h@qnzPxOM?bKlH z4I%2ne-)P(GEKUavwAE;Gz4D#+FS$fS?Q)N<^$yKZ0qo7_J)%Ib!8=B&m57yH=A68 z+0C1mL=S9m>_ZNg7%Q;KnhBZ-EU1XaZPWwHy)GNI81~OZ_;8$O5TcFt&d4WpVAxn4 zIt4D#ZN}7XW)De0jbiVurKWIvVo2Bv2x)E0fDU$?a}(68q|d(ZrCn*4%EHde)RDm? z&SX)s@<{jCFmWX5Va%0ojxiNei|E@^3FX7zen`azB}s+ibhwQk5iB)SlD1}%E3Kiw z8?AHY)bN>)?VWWfX>gZ3WN{B^9~~6_WkhMkp8etY4;AeA{{WUPo!ZTto`Vy?rGmC- z{c^!8SnzLfePO|Q9b8l*vSvi~?!~f}H%lH~<(C&OS$}Dz<%Gpo=*Yf_by%L_G0&~X z=BC-oDqKSq^J=EG+t{7E&g%@rRaRj5!=h&Mc6o9(QGqmh3tZ4ys9ip6W}gv=Lib0K zF(t@(W3)C^DWZ+_FvR?%NgxNoK5hKQ@@4Vh7eEYC$0J=E>~HIIN2ppKuA_oF$V4vP zviy21?Q~9#vPj>S?I!1f(PCK5EpMBecpTUw13Y|AVaHx#-TmbZbhMLVby7~xLoR^x z8gW_SZ{>6&Ex7PaBHUc87yy4^?bDe|-D`aD{{We9v}n;C_06JOyz^VVNFzBw5-{KQ zmt_qu8`k%uV@6mHX}m6-9-*s`kuM`R>ruwceu% zko$$y44V&SBcl*+CO@rn$hWymfnu(~tDjLDVtbt#Z*KM+`FJV5jwagU{{Xevfgfxi z`a&2Q3oc&XckLoA$DaM6ekn8&ILHVw@D{bX-{z`K=9Bi~fzTW4#I-4P?DUP0f^y}$ zw(3EV`ErZN^G7JQZYUZi#AR^jlk-|nD4^7MO!e|*g`JD){#IH_Og@tdZ=-JVf42T!3VrkB zZt9V{m|4W|1I0vVik>HyIj^_t4-5Ar(9%gmq<;3T`5DM_J{=TOO~RTcYX1P#$Hb0# zk1Y_KOBbnynWCkh9QPh^D-NUgZ)+%^sK+T7Bd4XF9>%0Wsqwf<$-hL5nWL|Hr{ShZui@=nSe*EPu?GOikYTMl(STYC=R{)fe8oksjGX5U38 zuN2vV>MzA>3{H&A5Yz=n5W`uC(mI{a-M-pCp$S%)-6D>n*|TQt1zK_^nhWLv>o+|< z&_g_t`g4~{vEs?GvuI;EvQ=rrGlI`ffq1 zft-7mwkbF9Zw6af5#h~b-Sr^5msEderQc9)%e9H*d$_BqTdiv<;bjqSP3EV%+z_f- z*0JxVsB45{vEgJ=kUnWAtm^!XAG$fLcGbsL&7gazVwAE*-NZV=>pL3Dp=#J24&=to z@Hfqqr+Tjy7WOPnjqGM%uzsDTp5EiM?1D!!b_q#rew1ocpIME_T@_0wm<>#2*0NU> z?WT(fsDh3oB^;TX3865ZV%A{pvQ5lc)vxZsW6@$v+_lw+MHIU?28h> zd@~Y1tz=-!}yG5aIZP zsOr5HEO5MwUtS&P<{egQDdXPdvmQa{sd=206y9|MH-(z7U%PLq#*IL?51^2D+vyoo_B%AwaF_F zvwF%V;#tKdWOLTO%wR0GogAvw$2Am#45XKRG18&qk>_sU6R=u{wtr43uOdZIE&f)H#Z16|M=FLiKttGvNmYd(*&0(`uTuTo8J~Az9kC-dc zwjN4xQ;Ka(Ob(7bDuLwF$za#cZX2(Cx@fbijJ`2TheNe^(+skPGPYgbOK{9es>4Z7 z+ig4KvD0|v1Q?vMQ?b?XNj!&Fyl8lFE1x`1d%s9@1CT6E3r(LBsgg%;-@FHaJOX>> z64S>sxq37BBoRp@E_VJd;&~2ykt$3mw+Wro%GZhCpv!9k%ymxGhi=c&wK4~28Iw8a zdMx$}4*MB|amX|L0@-8PBfw*czK=N)S!3|}ii&#iEjzbw*5^(HCj((iM^QFr?$uJPtCz6$aFk!( zo{1x;-haGHQ&aqM*d%1^hghP58*}xK#SL_l`%Y+0i*|EobG!mHTNe678*^Y)nKLq-ftmevjFv74Ll{NnW?Hb{&-|9!;KNYtPaczfSDKzmgE2^Rf*VWe1M?D=aU)RAK?k#>`c&cu| zaMv-6dn6%(+Pjx|NC&->Epqd~d)10v zo5LunolOfp34Zd&TN_)7GzKG{33G1cW9`SZq`kEocp-FHbQo;Ud=GXSBILUlfG!VbKV>jnPKuhq=19fkuGyv1)mxw76_#gnI0Kjr=Y6 zp!l4-EglW$Rq$0&Lll-HBZ*4BTt26atgU@`e`aVTe1zvxxW#m z?P12sm0f1tVY@enJ+!oVopfgxnPlw>udpRkk zsE<5#c}`el7dcIb4LIMXmQZ1vXM>HR#_OLAbp|7awa=~X+)Wq+X3*=W0jJ)OT&;s| zXmA=A#M)}CPAM%^z|odwaR%nrI%}srI4d(^`1Ll_K}c|y&4td-_oi4F-OM{)9rhn3 zLWgaz>MfOYqiiK@CL<-OW~y#y(mPUGclp_9?N zqCPDwv9LA=yPkk1t%S$6Siq*mH`_H^n)=b-PWidvR#Ly+>K)COR#j!?Aba zwR?)W3~~(vpdgTLJ;vNGWvHgwc;?1u^i*{?LoUxchH;t+2Np}(<9>i!nnq)_PQz-S zF3vPpLPqWeRSc82n}dkb+US_rOLopL@l&uVDd&!2%<)WHXy)wZ(ELY;Df=t6!)WQ} znUwR;)KW{5NaVfPd235#wx3g*B>2`Pciw-H#>Hl_0V+n>{{Sd^DBY&R-LyD-KkZsZev=G;@llRob8!CvPKV9u zcP4^2vIf|T=j-{874G;J(z04Y`pgbYKB12+e0L8P>eI|y!=H-te<>R-%rWl9u)2(x zRcyYIjc?RQc=!Xy`?<$FPF5cgih1Fc?0uLx1IYxgf*M+9zGuku>S@Sz=!(k-FB`er zc4|R>iabI}nQ31en%9e8saV;jtk0YnwT@jtwtk63m9Erw*ap1&)RR+(Lhaj{FUQ@* zUc#l0jvU+8i~VB{D|e(-ZkDz9d)WBd=%7)y&Dmm(Nr(wW5-#@wK+`<^HG> zu=6aBbZ=|eI1uh!?{sQ{C@Gr3RV!Fa0RjCz=Zd{(X-=-fMiao^{nqc`pqCI4=5$VR zZv)-$L^0D(J{scBC7pk}Z_lqQ9_GM*RE zs&x^_*5xkHead4qg!X?`&#=w&L{g!p-hGyJvf)o08IEk_K6*=|Me`J%Xcgl8#khSx=^(b3^n z#Qf4eFV;SJ>@TA9+W0W~J)WoYs&_MV!EEk2532;n4D78VbT~{?EHL3;<7Wt1hFu&nIB=VyWorL<~J=X1sv{c0N`_5`dLki znIMj$qLAl{dkN+;>GKMBaR}cdnO4^BWfp&DLEg2kHB+<}XM0_vJ31eFA6G^sd!G2S zvs<9{1yQs0u`$&Y?vAbwPlsC$@yF$E^;wcS1KZ3VIdr#Ph_j`sp_198fIC20pcWck z6&u$uZ{mse7W~x~z$h@->Z9JvPv)%8pG^tz`__elt!9~Y`6wM)=!<}*Wrs5E0S%uQ znxa9ur-_WVywgpm)RR+HY_7=5sIfW->M-rg-;lF{xls|_Le@I`44tcgqOuG?_F|B0 zd*(o3qQoPD&_z$Yn}?*+Q{1Y{jMhl|WQ-BXZE7%_BC1Eu_B=iMlb4#Oj9~aJSrt3k zW1B%CEEapYyGvWC9^{IKIiRuE<-n`BMSHN?nI>zREgpWYC%h+1M?7tIXdDN7bX2Bd56`rOpJF=z0EVQ_D*}{_7@5cSE|9G?3_W z7is-JBn^vNI<^U6%Ne%@Xh(?PpsQ@bo|Cux{lQkF#Hp#P1T(eK$0^bIw2zm<=;d5f z(pEkRnQM&Wn90C!+>8V6BIlY{miYggwAkey3{RZgT z-U_8VpEaWHwYsa+F*S^sKQ~^QfQHNrRW5sb2KPukd&#y2&5PNZ?X=n$Jlw$7Hl7Dq zNb}cT7vMGOytfv|@g1YZrp56&_mvZz{mdMI=m#ZUpvzk(dFPT#@-8;8?%<|nJUR^8 zpwbyZW4eWYhK@y>&f3JsTNOR@{Id!!*o7l4|O_ZnJR&PUI{<6dG4a zHEhw)P-TWaZu7$2%F|(cCfYb$=`_1`nQQSkYw`8faE47{%qPseF0l0Gyt;B{{^StY#uACBFJTz|G7o)YS~9 zW8OZn@kD`a)khOVbzYL+Z;~GRd1~g(2c%}Uvz0S0_Ds+1U*xUP$>whk4Q!Ub2U$Bo zK98O@i6nyjm3&QrP_xH5S~%-z>mm%O_=G2DaPd!u$vkh&!0-*-sOR@3DT;Y2!yv_W z#+Dgc(#Y*2{4SSoaOYNS~ebCUcR=XmF=XCrTL_iXKH*pcd8&dnWLnjeH9BEulvOO-`qM5sg%()F_+{Dw@-yo zLrs#dvv_Vv+;HwzV;DpXwpmTR$|&<--?haoGk%o7U2P7jXbjZi zRTzCpsDf7q$ImvN^`)cQylPl%F*j&9a#$(qcdvVnT!Z`7G1#q56-y+GFQ_!?rs1)- zryNSIxtVIGblELyyN4T-%Yq*{bP%}a&DiFlz-wg0u&w<@Oz+|t+YLNV;;iBKS_B@+?J<5|X%7<}@&9_#o2|W52c109^JrkcSh5+o5 zMn5iTK96NAVo7Cbzp?lgR%u-`?p&`a7iJs>}2Q305muT_!LSK z*`mx{>TysSc$(Y2_tTdJEH#wzb_5M~Gy~k-Z@>ZWP?ok#&U;!%JMmXdU~_#&uqMX~ zUFjX88EWBSYOIz-!AMT?qh#@4%eo;bhGwLcF*U8S!%79Tw=Rze7 zc1vmCh_hy0TFvCo+;25E?ooXpT>CYfwp)kZv=nud)G>tpTY9?4*jK~$MuMIU@@9~d zMb8Zs7}gUN4nW+%5OgTdo#w3(muLst(MPmDq(dCNofz#r4ykN2)h=Yz@G~>Bu<;y+ z5{p-0&8Wj?o;rqymRy6Tm;Q(|-q6eNBlm2ya8@>aDba^E<)50M!VJ!C@3QuB*P_#5 z6=E6)-R617zM=YEWF_p`&36KROJ}f7kIm$Ue7WMg`+Yg1FGjdA3f(tYZ)|Y8v>x<* z_=Rn54Pm;1c3U}nt`mh_1uG>IPZ`sJau12(6jd1nEw#OViy4ulijJnC;m@qok3|J- zWi}sD=<>Ef%#OU(dWkU^+UX10BR^xJ6Fgwd9oqfkRgj;avU9wKUhUiTRj~+7TwA=& zVLE_a$R(qo^MdWuxnI@%(`BHo9*#WH0DZv$Bcvm>#qa+93P@?Cte!dwUtGIW(K5z1 zf;)4|>JFXjd$Twra9R&ImD%cK7bNmVdFbR@rK5vq@QvJlzZbu$Su9?)_0=x3y%_l- zSpF<$K5rBB9=QksmNv4^=CY9ObIEHRetlFV^LHVtotMk2xTZU@eVY|w(UJM7$E)C@ zw?^s5+@9G9H$3>D6t`U+?@t4#Mci8J{CpA-*}3MBb*$SAwhNCQx9XI8Ue`pNPz}Dm zDMLe_+!ASb2d3N5$TNHMXqZiIeLNIStEY!BeC-zbEc~@q9&+k-y4u?Lzq@=@=5@u}UJqlpZVRa~2UKPohJ`#>O*B^a)v(Chn6<27{uOYlD%P}9xx7ye6}nbl zzKghD;HggMWMf?0S@%R}NI0w=n*a~NRrFD?KB!b_=|x7?)4ALt1?S;)dgCp_n{8FB zCMJUEhpucd_pW+lk;!(rc0jrfjMWCn_J=f(5hEkBKeXXxm&7G=s~^(ZA_|SurEiTUL2yhDKSn9(a_1vc_^hO|x_KWYj=l9$YLJ$hJtuvw&?f7Z?(a``b9pA4 z1~_{ugAKTHQc^ndIlO@4p}m`8rKHkpb?S&0z`GpIqUdHPV^0hJ0A~9VibL6at?v0D z)#G`FybQKsR+DHrxcevjx^-S*CBwL=@ZDndxP@Y}+)@svmD%sak9LTLk~ZT{6dN%X zJr(L{dm!fFd!XVhNyJhxeS|gVvK7ot#Jn{Rd#@$AS!wtoEIyo0_~LKtA8YunM$l~2 z@QY1LtQYO|9`qLjZ~IFPZ&E%>)bmGI6R(tq4%k@bPCWjacFfG(o1#<|dzb3x3zb_O zz@)+_bzLiOPEMnuhMHE?GVFGvij!`ss&|aaK5FN(2St;^tBh{}&d~E(cx4V|uJBpe zqe=Fzt5go0IIAx9lrJ8z<`mGUFw7kp?SeH2g_aX&@P9Iq)lq#+oVpdfk};9TpA}MA zw+|GVfgmSYZ~$sDsRmn@1e?1D zTSX?HYvQ}v*ZLqBe&o}}$HhC2ZtuA#v!-7aL`~toZUk#}W}2|I_H(U$ZmZt;ha$L( zv<@0@KpWpOf2?+)HSpV3@I5~i9yuKm_3zbOixA3x1$!D!WNVrkI~$@UgX8$7&rInl zXLI4^!tTwLKw_w4Gc}_>_o`;)^x51WqY}8w?0R~h9knPrQ1($bb#B$)e*2qsADh3}`{{VVV9KQ7PqHTctN`ts- z{S!bW+&4hGi*ltpd(a(l8`t_SvCDAOzRs=ulYOh^)bv1gfNiqfE`LZleaSQ|^?oT2 zudb*ET=*vc0GHm727d0R?IqART;JwEcAcx}le8_B+Sru6lj^lNavvL@2{Km8OvjEY zXvm5{?AmbmDwu1p3)pzGRb-IwnN*sqQFlWiKEc1aP}SLjF8IJ9$JB7Kx)S#8^!EP% zB&m}9c_sE!FLv9r-dBHNBR$&Y>F{0kXE5TTGcrEO*Tq8Wy>36SfVMTvJ?X9kC_SAO zQzVXKj%KRh%a+-02Q-4z)eH@0UV8Tg!BlSR>O21R5x2F;a2EEvC<%=B%yQe1@Knn; zZ*zw=F*=KK`6^3fOO?7F zi3A`K_Ivs+b%L7T1cjiTc_1MS=2R~P5q@gm>QplT2tPjL8ma7^IV&;M9@X-T54lF> zlH2#Fi4A?S=zzbzU~Zq^imv%CqPZRy{>pY!#Bx9;r;iIH4YvnqpQe|~(3G9X4%3O? zyG|)CcqPzi5Dpq>m-{K5u3>-7a4sM z#4|eZ_2`9ZmsP}E*!tbdL(pSzm7&aYO9;@Xi}5-TvKT%t>NDoky6~QT7P2zg8<~#x zsYt9c!--QqjSF>E=9tLTbnivnz*xx}%wFp(p}h(@Su;Uvv|Ko9 zvUpA~`giW6cA9Zo#yOHVGk6u5?N1uPsP=;lbroZ6&69JD-ACfQYZ<|-Fbqx9RZO$_ zNtd%Dc@S5)f z9(KBEEe&^Pf&xw92eX&H?ovfi=%x=jLwFl1JFM2WobH@P?6?kgKpTwQx)*yK4{%Ua z!@YyPB1peP*k;d8B|f}oBm5P)PFJ!~!`t_&AOLNmu^G#d{8KC8^LnQbVD`dfa)T4E zspO)X=41B1nKw7@D*ML+-gu?XdL$P2%?;Jfzf~ulSq^E{SOf+jEE$P!xiq-;vo}Q% zEo-&tmv}Pu>VRvbhEG|I)k69zSvWGsj*0i=Qf3)@2nf8w4zB+IGP8!^0~E$6aOOSU znr4IH$L>*PyKZ#@iCdo~7-^`->aiDnT@-m3PbU6}j?*itn*E)3M!#>+j~Uv75=gm}aJ zbClmwIVfEmd3#Lv^jETwH+gS&Jj=6l%f((edBo*+uLwKZd7m83$s}4xJQvWhN+53W?zOeQa`L^uiiZ-$XT4V~J0ylT8lT|Lh13w0oI@hbrvnUpmBT$-@*1x-a& zHW`RAX6cmQ)>~(cusxa>-#pIA*yVDzdpm|V0ic?$rR_64myq-TEFR0w>|YR~^KE07 zw*JL#Qy-Tyqx<3Aw3c8M8c{ehU*gbTtw(rOw_o zkm6mgi)*SzO*FN0x_RH8M{0ZmXcupCxj} zbBtNX^7*H^0}Jkz zy}xIm_@NKlC&XOlwlMy(dP0vh+Q_jS8w-yn89^TlTr%2slBw41)Wxo2djO6CN_TZtGN0DZ=xz2;$ zmd$#Cnp*h;G*old$IyQZ8@EbyGnX0M@wN*b}D|hgLcK47v~D z36&E`6}NKaAm089ZKSftB`s6IWv#_Ik~$d~Q3Kq^vsu7F zyn}F(@1>x(vCrJShO-iLXl{8^8~eqVj$!UG;(3P{*P-Hdq)<%Jz|;N<&gaK@M%emc ze^l=66_}tC&4*Ox(w8!#Bms`_x+O;M_C|h$u8aLqJ&RJ}5z$~X2m1A9%=d9V0bJRi zsg?YWnxXa7Vk$ZpoWsa&?#h>D$jMIqUFKO_9cA%Z60H!Z532 zhs`!_mLdAXuYls6i=5Qd@P5`@{{RIB)J(%oPfhyBwH^nJ{1jEdCKH@Hv!=TARtY7& zrm>oGRdft@XO)zUn6$6(+8FoXKPuf8#wW?z4cfIn#y&Dnx6a&c!EH7x z%f2PDjGCToHaf~F9%V4*%0tf_uJ%FVZXNDbJg9kCkIEcWF+qZiIvPm~rSF$Jljy_@o5M~Y+eQq4s1Naj4nzn5Omdr0BJ{XSW&OUn-0;x+WOlGa5G^o7PJ!xKfb z3me||7V3o`C_7T>xavkEM6nk*S*^9*e8jfa*5y|h!}*wFthqM3%f#9FVDfi`?1eQJ zC4-MOif0OE(>dkcyrsq9lijYU{t4v6Vxpyjs}W?i(1=^T0q>35!Y*%=fEqpv$T5Aa z+6;P|&9O{MTBrnqQ5)@)I069{?jS4X< ztn#a|)EhOA&{E*E5>Y`}8E|XrH@U6E-uyo#n`!|n8i$8igVyV>4m|PV>6P96 zv$@Uf=)O=W@ETp9!kJI8^X%+E6ICCb354w=ShmF4+TX{y0l_fbGJU4RA!R$N=%H_; z-&|V!-Sa>zacoZ!F}kw0rls(UL}Ym(jp#4IRT4kO8__K+4)mPbKQ)UoPatqJ%6wi^3}xA~I!7w$b?j_o zYH8a|w6ZmkHaOfG<^})-h_(81MfNr-c_?cnd=$?)zy?cR*6&#z*cy!5CORXQ<-YY+ zcqx{y+x@EC!?P3RikXr~TFbGb_P<|pqp-07gjY)D#CMVg4EE$Mc=)V85|F7~}8g6cg66f*h=KX`{8w#l5%x00`u>wb#C_!BV%OlIt#RG!-|@dvxZQ&q$BY|u~|cK%94Fz`+OBMw1X0(hi#cu zDy>c;v5~j?DAC#+9n6@?h%xz^dnJzJZw2Scx_y;58CNSvYUu+2ZDS6f1!^~ar(Qp~ zWNbL_L@6<8Dcl6D&cyYkwHwXjb<3aa@Ke#&x+#V9b^YJb4uV+f8FoFTpTwto1DlsM zk0OBEVK|s+&d*czj6Zrf*)v2O-rGp{FFAbD#`q_TuuDGWrNJ?lyRv=br+7-Hjnqe( ztd*UPsu`ly*6~(*4sM!+&dzTq4KtlH z@4{x?w)d=^Y$7_^p_RRfUB$eWeKUa8w@|CBRn4W2s|BcpF_OuL&UL%)V<(vBZ;~U0 z;%(XbStG8Br?m3%G&-{0Agpl)C;H9d$xTCv)?umO>z0HDaX*O+{%Nbo!%uVm5f zG##Bq;<5NGwi{Otc25K6ni(!j;p~HM7|Ga0DIEVty^Xe#4o_ZW3GEEXPyMuRE- z5zF47!*L8flg=ThbUELVjOse7_=P41M^on&Os+FZNes*{ZvNzvRAIEQ-$RAY_s6I* zOK-VSNAR))FB}AKw|~73$KZ{-nd)jh*8Yz2Xb(MqG*1eWvPq_vI4NHoo|9J|#)pYr zh{o(!4w?#_I*fsLi@2Rex+P2oqKcGIQlF&b&m5WA)4$-O5XVc3&nxR`iF{yNdIrDP zL+Ez4Xdx7In>#|rHun=<-xX!p&0MlE)9mIHOY|}_18#8uyM&_u+BdYz#-*N9q$!UiSCk>JOy8v6bg+Y~=j1PR9iaHzI+i(I~J*>ZKXmUA> zbE9L0jhc7_+I^#@7G%_O*1#=p!MiQf{ZpTd<3j|FwhHz_1jZ=_>7aEM)8d6kh~v17 z*KKr`9=x59z&uq#*!CqnHLZ@Kh4M*D5IMwg5LiyOb9=rDgX*Hg=^aw{xISh(ay1sW z6XF$rrz)_n-995NT;$sCwqE|qF+o`@RF$)N#PwK)=Q*N00XFSlg@+Oc6vo6hzY(H+ z9u>4Ldt;@=VFBmkLB z1eZP6;w`T(CtD#AV)%57y;T+sN=Utg1h{?(6gTNwX0tx^$EB6bNSa&{c!RGw41A#S zx#8|jrpItdDud3?vPZ;j$)kObjgE=)Vi-HNe!0-#l`Mu=wl}@=+=Ij&N@S}1O^4C5 zF+EwY1S+Q!rK&1}fcAaJ3GmuVX(``TPUebZtK=@>;nhzVWb$5y zf_kz)SoRRX<9$AAonG8NayKu74}5$*0Jt5%=z`YmRx?mu9g03o!`QQ1Zv?bkYAc-W z=yo}YQ$`pFhB$0XFR9VK9MH#Yeg{J5d6fjUQyN*!p*mJg=&P{=59$?zd7b2)~LnHl+n5 zlTt@DLtTe}GF-T76-U-!&^^s`@0^dY%|0u0O^*2;f#O=%;&_YNIMhWkANoM~BlNyi ze3sHg8A%ghXa4{oJbUkz78A$~WhZNJ>1;?kw2NEZj?J}LOdAGw=vcnE4lyUG^WeEW+m0HSDM+ z!12-dY6jSRHx7z=%5wHul2kS`;eB=Ftm8DTZq-cuKX)}GS!v@r^}AbV-$Bm$@LJ3- z4A}e%TB?jU$_5c#Jdxyt)lSBkTsS)|>`K7l*hN+sw3Ff$n57;i98tTsO8d0jboV7O zFkPjpk=0L(y|-r)y9=XbCK?`C(=@u9>TS>=&z-ogHs%J}N#@YMg}V4?v<{XwRb`r? zv9XM}e0uTkR1^&x<89r%V?M&V=)R1g5{CYjFgE`Hmfz2su}xb|A8*bbGl;Mc(%*tg zgH2gG4OCLcBMtIq(cv2)RzGotIib#T=6%h%1m*`%N0raE=-<`kuD1-|woweR4tl## z6!dr%Lvyk6w$2>e+^7SH^>%K+>ZgvKw_uMnkC27|%$`9@HWgC?Ei>D00Ea4!hFTm# zhNregJxe9`2LuPd`7qf(@U8~xj7g1;5vd-K8(uIt3;1#9R?E(*{{U#HRn^i)UnJE~ zLe8&v0^N9^l^b`mG%j$c+6oXyCQ2RmD%vb+4P;F9a}{-}!X! z{6Zf$mz|7@Fk^8kydnedAw8E@r5eY3Ecm4Jx%oA#$g8}+;4fruq{A^i#M z=uTp6s7?O>&lf3oq1lMr-z8W70GK}XY-#OIsHt}xfktMl95Sy6oBsfw8yhCk;M6gW z_Y?Ula{mDHz-=>)*+qx2e*r&=U51|c>8k$#<)q)#b89{8zz3JTspn6JpX5LNa+*Ic z`15^yHiiEH5%{BL)$aarDB{K^3YT+7f-lA5OTgZ`!D5dQ%4!O^+CpJ!!jzjB}v^8s9s%l6L^=`d_S ze+!xUgluW*esvaIU~*47gPR<@);})$D<`i1cUzonMTH&4dp-EOT4E2 zt(IM$P&PVEM$u6J06U2L)rj`bWajmDiwr;fybrviWn)F?4+@5*8^30uzve+A$M$w_ zs>blg--qc9{ME)(Ve14`{j>0Q3YFtiQ1{&H>1ab#kLBjgj+r3%y zM|dvtX*oIH-@P4_3VfO1qD)#w)5{;ytZ=Bby-n^lu+);O)p<0hmuIN3x?D#RrSl04 zkxnJ;j_yDK#9G$2i%KD!aC6d@RSpl4J<|ww$<@cTqaBMGtYZv$CZyuWoVLs^a*hC< zID|eeiN~pM97hh1YO5aUUfC%pee*$Ma@QQ!An-cdxoQ6ZO#Q5%CELoj@q4~WZ7khR z&h2cGV9twZ?KKDjs_nBX03h7^g^kvxu9N8;KC=y$Ccc`kGZ_!iUfNwTwH1R_%cp&m zKjIl6uk%(`z-sJH@7;7&JPIgV6JH35R#igt6tSHH2-EthXO5ss$Hei$#1u*y}vc))zy+iUiqWe&&bakaah>6xcb^!x}DK~nN^T& ze^KYX2*kx~1U^PLz3j0Ey-QOyJ$Q3#SlC_4am%i6%|<1zz@!Zsr>1zgf2_hgiaMQ8 ziPt$?^&LZ{bbyBH2NYmdVO8@0{M54^V}k0+QALthy|P0msP;RE>Yj;13dQ8Y>lrk( z`}PBTh1U1?Sy#kyiL0u2vgTt41|C5WGgHgiFVl_6Mm7#R){7h5^0$gL07m$oOkDV@ z*nNAORSP6*T*D_cU6izj5bW{akLIQ{w61N2>im!f-xgPTyaI-_?{{ryyaO1BYpeC>zhq<}H(DYX*;(VF2ZpKbs6z|=&mUE+Gl!i|fbCv+s zv;t1N3Z+vph_S6@?t6Lq^Y|jt#|13x6M9BlUmv+tuBK$W$s%inVB8G62Tnfq6p1R!~5&8Wzo~R&L1M&AEby4of0lp;*fpw9B*8!Hs%8u!wxl5g) zMP-N*-W!Kaiq$$8a_-yf zzoObj3>bX_scBl!z%_nuHd*RiSmE@ZZ%W26aX03nel1w;6WhYtD@KyzjuGN{oZr>v z_#o~(&e3+P7gE$0OkKQw@bJI)-m2^Bj$huYX(x%pD7U}0!F16QT=x4GKLrPMQD3L_AJ-nj?z`{ zn(NBqb-#xslqctSo!`HTnyxqTVbg}Xa=M~1X=!GB6_oM{U)7#$0B8>lIO?D0?}WGq zT!V6y);eapeAd4Fxhe|rQ%zjW;g;db!!Yp!b?pzAy-agWJ3%4J=Gs;?>&;86 zeQrJJt{2P?Bm^#oJ=KF7Yh6c`(YDNUnWgkrEI!X9(mqI0)b%wDezlU{p>~Py#70or zDcdbh_{d zimg>n+ITMZweLJF!2p$bZW}BvZ_;_kP}MFQiB?Nj4F)Gv!eVCX8i%&o+3dB)yIo4D z1VVYk8peikHgDdp)zL*=PUbr(BUT>tfc-`lSsX5N;&Ensd%CRFAxii&Iqh(_RW=oj zR^jzOM^x2I1^q|n{MGDV9j&5=En{GPaeVHcJNCO0K1iulZkBQ zNWEqgI6rPTe^jyI+do*`v{lZ6Vajb0X@g2-iLR0tX#PD_C&KAVo_PJ%T1uP-uARHa zxwEipNO0(b$~SX7=C^S{n@vdhrVZ^{-LuFAYFdbCJ1{qSHzV8?H&;GDDdWt>bL5EN zn>|^KRS4<3ZyaC94y6XELqSoA)&>T-^E|Io+58Hd0Hf{p=aW~H$yvg%N<0ReBu?~z zT)(Oviev1J`-mLSdA%gsw~XV=q+^=L-f!aJ_$&?~h|5zW`(5ujxh}+}mfg4K2Z`c@ zzII0wn%*4wDg$@}Xsa=3DP?)05f^)?*P|TH!T=tO&jQF>FSv+#KT_7sU2t?r?TCAIjtP-B%N`GhQnO;Do-Oe!Yk_SnkYMmp z!xKy62ah|c%h!Mr7RzF_1!NYq?+T^7e`uno3s(qNOnXWypsf}+`GBidmOuskpES$3sVut=h#!QqE` z(hd80fgMpPtt)QlXuqPOZeALyl>t?;K?_{? z-Nx@X)lz0+z$1Q#k7~+!s@YXW;Tsyj(Z}#nh~fo}cTP^RS}Y?GuC0Q1F_Q4qk^R|H zb$x95KCVaUbKE(tal#)9qo|~Nq$K)}ZHT{mWIHPzd){K6DC(pq(0ex*Jb5SD7MU7& zW2&2WUz5E50IIW5gc@?^H#_nh9?g*%c5fHJD`Aqdf$+020rEF9Pd@Or2Mnj4nrY*U zca|Y0t~T%M$!C^&^m07i?sHfHV@wnKyag_uW&T z3U@u**0;klkE&DzVj>m+0~)|Mlh5*63?{Mj&_YAn3mOI9CR}I5J*ZowK6wy*W z(m>}Mj&9K|;Ouw){{XD2nayM(MvomdNxX|ChJ4&^t8IUzWHP@@_dg{*9}xN;4dZe@ zj;l$08W+n=9%eoc%euS!vW6@|o+9RXo1boZ*HptKl6F|o&b${xhZ74bt20LnJwf*U z{XA14N&w2ZcaMS4$9^Z7R^^rnOBQFwNAl!7CSBEX?gs6Wltdvayjw_}JG1PN#;7#boY^m^5}HeeKk$F~VGO4@cMF zg(mZgLfv3+u=`2d+5&WI*ll#5M+~<3)N*HQ_)Y0Z_~KHAaYuFXNZ%-rLJ zkS*Kp8Z<<(?D5uy@MHM$N`Z=8J2Rn5 z)JMCM(YH(7bWWp^Sc}@n*qtn_RX7-c?G9?JKkrvA{{Tf{d6G&^gPn25sYfXz5Qjcj z-R}UBICWGZXd1P*DpyBQE{Cxne{#-)>T!9bd-r)nY6x8SF@fC)x{y8Y51rDX7o9M0XTbVSnUo~tUy182&h0W6f z+b4kg}30F>m77VGgzE^j7iTwtmojgaY$vRj!(49gfkt3H9T{38XnT02&ikY z_`!XQdTOglT)$6>X=p5U`6*aMoo6?}GEE}6RRTFqW&m^?ejQbcNl()efu?AQzeQ4{ zpGRi%w@y4$=t*ur8(i!9BC4ltn`VDtx!hTGqr&j|rr|=U!0p?KBZq&ya9Qo)iLsWu zQKrrJ zLH_>$1)r?hYMNNGwe2BRG^iEF^-|LtJ;yEX6mwA2!6l4Y$55xGfP&{a**9mmeHEc{ zGr;uK1;#dxIyOEUX14qA(Qr^JS4ylD)69baD;z>IYv!0r*RYg=dE*$KcKm$cI z&SWsY`B=sc7B3mZon2FRdXf5rk}VNhYKPU$zI(HNN;A}JqChO(o-I!B<;6;k()Lkl zl}base5x=H9K5-p8)Dub^s&0nVI6fy2O^xp8|!6M1ftdM8JsQlcq%oWsA@-DNzAV1 z%KYEmm1?&7X(M+GpA~6U!uwEw6^gjdRZ|C&&9k!fJ;;Sus_XLObf{4ymwH(E>7ZQV zOKzOYI!6vaE(ryC)0%O}1q(Y;I{8zjH<{h0*zirK0n&Tz?^^x<%q5L19jL$;&K<#N z@T_83CJdR@cO#i*V~k429NanOvau8H(G&E^>JYNZY&|v!A*-j#?4%K57B?Nh9IOT1C)d7g_orG7W->qW%hh1L^fsxM3_&#|w9+r)0$D9AbNBUOjmyf{)<`Q(37FCWEjo!V=; ze??0Yp=KwC$xQx+-Nh(T=DE8f?&P}HZOU0=lAcGwHikQc?oDs1>+@E!*yO(?qt^$B zvhF%_{FA%*q#bu@?CM7`J0!D43-B{ zy2C(tYJLlgt)lGh1TD zzjCkXpwqHgbs+Gv9~EokAuYxBXX8Dc-DHh}Tr?jS^#2o|OB|Q6+_7?L3@`WU0 z&2dIFju$J=rGn!;F3}*UdtB({ZeTttZV>kMTw`E%e{3Q1tSQZ-t#Hp~dZl^Z)a-jU zcAh^rsFHbs^uvf_RJc|zS%$n#M^%_~;I_Cv(qWjfk~;Vso^HVpZ*l6g)x_RCdz_`$ zw^uIHo0q6<7n0a2n(C|uTN`KGmvQhb&8ujt@Y&r3bPk3_@_TLbT1pUUre|>Ay5KiN zoO}kWi-#n`tS@iuBt1t(*|ffH9bCHiXmg$a08PRHeVnKJ_@uuJ@gLv8b%z7bt8A3_ z`_K(79ytZa`mV}BcWe6hr`+FOT>ak!$2@~z(H(q+PkAhwtUBLljl5q@x z`;Wa7yKmfqGc!2y{p%w!%bFo5(%$>03Y_NNo$WkZu8381!M>k1kK^Ks&O~HCk0nVX+-Lt}+17 z(a7C4EZ1|Lz+C|@XCGytak5PYpXiduw0fn~*!0x^(g*j=Ff^VzD;<#D%WRMf>QD^a zJ9s@_2~3$ZIh4#fb$hHVN-eXp;inRsO86U6&DGdHc`zM>QF+9Unfk{XH1A4sw}W}~ zTpHMWF*hJO*m6lco3;qr?%5iihzhk62Iqcl0MQRGbF(@8)2bc3;lYWQw-iv8Y`@=BhRw0f#V=_4ibhvy!QS=7*R`~_6&u_E?KRqSQJR1an(rRu1o@iG$2S{` zC?=BZuu#h*xR++u>wy_v$pI@AL;;&JkPEiM-j`0-tCay61pWRChaQQy4bZM)0ruy~ zG>e^iYM+?oOt-Cc2M(ht{$%X7YENdtteN_e{7^!`AepX#{VO6VASD(p^{kzHc=1s02s-pB1Be+;hzZS|n%Z?nFg$O~NTsTGW0B~A zI!kHIMRS_YbF}7=dPZTFM_-{*F~y#dni0ii@GNBI^JK*8nuv`{bS;V>!pXaJcHUur;!cY+mlVqS!t<_zvnvG_$>C zu-rkjG({`4BSKZVqTTj`bXjGH+tArF9Kc(^sqs8jn>n)c;y}ka{DMr!?Ij0P1hykg+9tRLoWm`z_P+G%hbQoEVbK8vy>89FnMraP z-TX;}W$p>bR{Fo_fM}F(9;#5|&!-g^2X};|{{Wk+4KXBkvnC$ZyH~PcA-odkfVWLJ z-+`CWoeD1tvqLmacA#_aS>kyf9MMWy^F+zH$Jl@MRT6z%TlzaYN5!bWPG~@|;rSz^ zkuY{&6e_X}%G+a06BCdliN=0N7|Z&E3yCJmOz?)8H47?DiWbHILBY!%-~0lfY_jy_atBAw`7l zBjc+8{neI#qj{b)Tjy1iO6OkY-sM5WLr-@locc)H&}S;PDKLs4M?>>lV>JjWSqYKH zqD^$ZiY&t?;-rn&Yp#)`&DpYPalOyYAU0eFPnwXCndCMZMY^dx)^lT>yfs|`Yg_YH zM64dxiCPu>)?jXOofAzrSe5&Oo3)@zZ;G9O(+ownF*S-KhrsODeUW0;jxA|SaAUg- zitjuC*NQu60~|Gh_iNm3)f3tMlEyZkx6JU0eD?auj*X0UBZ2Q`oT=UNEQdr+!YAK^=Yo6&W2Bl@@`!p<**1rz*6;3BjhsBxhZTeNAoBHx0MoaCvts2h9`{FVuj7kyQcdCpNgRrVW&+wk=&ix91@1+^?0Tk zjAssRA5(b$0NrLe+0l;Zsxa>vX+3bgAN)J?mJ;|XJyJC8E6*z^=fdmerk$RW9Xwmr zbYYhLm27;JZB#f0(D{{no92~3vNxSKGJZ#b^jyOd$Lg^Pr~ZvhPIn#v0k6q;Jh6u` zNY~hMJr>ptv=tssMg^8eVlqluQztFR*N@BGvd@cmaOOdqMT*Ib*3VdT4?8*zVj-hP z!2+relAm)6Z*ShwS(a?lNiondnMZI6IBMxB;_YRb=TmMy%W00LqAfarKAwKdn`bjq z$!IX<;M?a`S5a>&&47MegKld)>_OT0k-?`6J=O}l@fwV-2CGhy>GMmiCibgn#XA6N zW2FP_y5A%suW27ScWv?x?#q5_BxWJGn%{f%DUNiG%;_DcJG#LgKVWWrc2Bm*$9BIm zhRcX%;@2L1w<;!DXt=%7cLfu%As^K>k^IliUZhgi@_7Z0gWwZMhCN>U{LuGe50i_W zR7O+H?hQuELJq8sGuUfbZOvDGYvpdPxcMsf9zAZ5Tfr{M(nm`E0Vim>$Nds;%n!{d z8n|Y&c&XSpc6B{I3rDaxGqH`Njq-M&qZ`xs1)J5azFt3q_Rl8x8!(NL6HnNhtJ1ul zKydghd2;KDv7eCLy2VU%f`%VnV|NaAJ$sNZGB`HH)i!TOQ(Qo?`#;cKHnw_J^0$B!M+m1X$7!`NdL3Ww%*hv2SC;S)X9 zL)_b!49mRX}nc=7)u>mXaKA4f;lrnIB>#XF@ovfOoas&1rm{NF>`DdMO^^ z9bnxb5y1PFd3c*xLG({_Qt%pIqO*nK65$n>8peHb+_hU{vd*HGS>tC7Nc>hT0DT*s z%Hhf3oXRH6H~1TyiQ*D&T+;lFf4ONfLg-?duF}!#?_OWCILq)nS~*_tLPqXS;p2aD z^=+c9ilYYKmbB-Ku=aBtmmfA7&uW#AbB|asgqO77;|@kaO>Q$dr;8^2RoeSYhkZjp$Big#g=SQ$*Fzhb-v^i zXg2y>a)ZsJWD(fvW4^y0i@Ss4+T%Rd-9Fw;)u2Ai*Xncoc+0gN_3N1v%fc9viEkRM=u;TfP{6p?scXEC2oiA?_cC=Bi- z=KUc^+}~C%sN)e!TZl;L+S_$nM){!aO-CEwZ(R2&1eBq+6tRSq&0)JTYiQ@0^^Jk? zTPq&lUr!Y!76973I;x^tmqPk}49X6FefTXF{hXp;{#7Gowrev&JAIUm4JT%f2Av3J zHA=H9A4unF8vC0o^5&S?u{%zk62-oWzK)&Fw^rEzHynUs(?DW#iy{OPTWj~IF#Vpx zUrIay(<9E!h2b@=B{{VM)`BMy-k>LaX0Lp;Pot={I-TIw!r2ha7%5~50%Cw?9 zT(=Ez5x}sz%o>K0lMQ_(O*r(kkJg)NNhe)(?nS@D z*w+CRgZYAY_;Ve0nH&f41SypN00uXUrJvnozu?%pPbl$oRxMmYPpU>30%(w>RO^+($(CsN4Q5b~^fcUE!7UZcVaWgZCX#fAA(F z{{SPzxi9z+5O=LC1Nn*rJB(m(Vwkk`^S!XiInMS*?EyT0HBfAw2>$?#_^p5V0=JKx z(|pqZ0DvmL@sywCC=7@AR}SY?DEQbG9e$B-xqyBt-{1%U?P5+I z4FN5NBy7bi8>^XZP5Zy1njuR>(G4Rvl5>AWt^WW5P~OkPq(22!+Z{IRJuLCq9WLz% z?c zY5bEmHl`Wmo$i&}&h=Est(Ni9($3D^KOSsMb`^$C`-iL07)M8M@1jGaR?cmcjorBQ zx9s2fp;PR%@#ZaafFEtYl3)RLpWh@#ToSR3xMOA?xa~)|QhX1I_Iq4BQwAhFE}d&} za*_t#rWT%Z4}vIe7z9j(zq5^~COUuF&i(0bjZdVq_i6A!F_{c7LC-=|hIJ+VV!PS0 za%wXDS0&<;k_lptvPvm)wCT)pTBBXYE5 zwghl^|~o8%$hdIx)<54xhm3V z0ds)8-N8*YB~2r;PXnMNXR*^o(L(v2;MQlhrp>;doYvG8Vn4Tm7rEj}qx=d_W~w{cHQ?AbqPd6ysV$}Kj- zYFWLKI)TU3@CaLrg)lk$e8RUqYw--gwb=%v#YdIyb>zzl;sDg26^+cGi}ClvM+FrH z8-yX3e2;aUPvzXII~S?TY_1REuP*gUsm$}8+Z^F=mNzyo+>Uj~;-|88>;FAF1yOUn;8D@g1lEnSo zjnq7R){;C{o<=w_p_jK|lQ)OF-AXXXD)f>nM?aqKdn)X1*&U#59@tP;PUz!g*QcrM z==QryACiM>a3MvHViZxehH6KXkbcPan04;rpu})IHWQLp)WL3JwBEc?Sn+%p6T_mz z@k~ZvJ*NlF>%%)h4h)d{Lf;E<;-1Zo;Lm5jm61~clVIK>)=8_u_XgkaS`0&BsA=b? zIE{3-k%CzS5L`$)2VYOSnyHV{mr=tG6;B2qNF*{C_xE>AZ}YKKOpGRI*)=;_&?M31 z@fKF8aOUC=y_5~lT?x31=p<*g#TuImp>gchQU+LYcDJ^_JC)GjbfRH3EmODg>I`u> z{7#y6L4n|&XD6RBOtJaQTfBzW)4!^(SBFUH-90oLjnKQtJvpt0Be7BAhHOHO&ZMiz zUo9r;&5}Xwvit$!N6iYM!uG!nZK9x+?B>au2>a73U`weVjKV7ES$X3Ys9^aNI<6Me z&gk>DN5%$wa39rguuYz=tHoij#4w3){oT&;o#N6T;pO*PSH$)Q5t^c<;*HFy1e>$f zn*PuSf$E5w%TiL}6#_ppr>UPlzoW36p8g*-ejSk7s?Fmmb zOdk$ySD4h&QwZuKe_lL#tA?I=q;uuP8@aKt4kp*}R*ugTI{~zfucxH*e>a|1XE&T& zTZ^>h6Y4yeZAfdgWgu(yw_fjpHj50CH1&;|#M`dCQ98Uzl1AB$koV=al@{yfkNY;- zp~eR3{{S_2{hsYe_8tEK)mPEpc?a450Hrg}AwI*j{nU?j^N;uoYWYDY{{U4;b|-72 zZN)sk=dYv1TrT!q{#3j8IOYEUr9BPT&4*<+wZHK7J^iHaePuE-7kbbkB~YN2$n1eY6(l zy#BXmahw|ssgjQftf_eQ>P$egFipDyiFc3s zcvUGFgB;vqC&yw;W%eW}9~`}aVv~>9Kav>^@}9l(8hH+E%(g?%p9ITo9Mtdgm%Gm? zn8I_2%kPruBQF`6SrmhhVgB^_c0(GiZ4FRkXrq!GlD?xtEKauPajLQOjs>%Rijy`Y zU2k74n8V%RgHhU?D-dSSx~j3x131bgmhQFq+WeLzLf#?26`{o|YVn6UTB-A$Y|e-* z&`T3W@ve=Bo7zGGAjb01Hs<=dIGDq9mfy;ncU(*JDocR{zu)&|EPA{J7<^6FFa26B zZA1-q#7_6QP(GwuRao>YNotIy<*GgEkZqS`33Dl_>BU2U-p0$DcHM3$2sB8v)Y}J* zRkL|a*d}M&61Lwyibwf5+7>m=+(bas`ca}oY^vmLqhxWqNFOukUijO^?Ck;KLJgAK zP-fXKK$gp_ZkQ%elPYz(q(~CUES+W93IVoVWcv`h-B1V%n(oW3@>4}wRKwV+m7mT+ zhbT+nnFSJ}o{{WY}^Fnpw!7H79C^7i<{{U*E^>NC* zKY3jL0JOcer)U1~RDgen@>wN2<}Z&cviPJLf#p|ihyMUarT4Nw{*39M4i4$@CQBs@{&GOJOxmyxc1nfpYZ=5bm_e;%TjWq1_xjmYG@Jw`44Ayf}&YC=bA6Ck28eSx2u=s_{lE&(`Q1Hv? zZ4{dE8B!&d5L)K*=iaX2vqcq7XUmb6LeHZY`vEAC(b>GLp-ni*S-xwo!V*({l>Cr( zi6+OEh;1dMW18nRmi05ck5a46j$$};F2mUNGBy%kSj}Dzx6R<34NEY1_gl*9h#-%> zz?0OAA+D$xOp-N@bohT#-CGSxeutNGqZBbU%w)9B-$He` za%^>Su)6McoQe?*MEFa@t!?0wQazh^tJ2lFc0Q(=t#}8w8R8IH5oRXw^^DW1lg}WL z_I8UtF@}uIEVYxyD;t}vR!tOq!UJ8y8!>1ZFJA^I6XK@>XKUm^6}9g6p&P zvvK);N*}b>aI$kTY(9N6#>3w0E;G{;*r?5?N0??un7Pjm&lSkZbrp9{gt+ii)SmU` zTN{Wn4Xvk=tFXcipYB?GXC7>icyD40k#MG^V;siAvqKB}1J`(1+R4kCV%ChKiRPU( zUTnvMIDy=#OC3dAJNV*pgd08lLpuDEGi9$b#k-StkR}$gR^*N+NO|~$cC!YiWDJ&@ z7o)4VyV)JCK7W0c>NqK|>V4yK?=oE%FVH&&!NF@Ksczw{*H!2=R2XJ6vDLdX9ZW>b zJmt4__iq~C^F0@zK6l8#9OOdkNkLd#Q*t~?ffl?|z7iNiOct4wgrDo++^w{Sk#h`ZYgq zu*-&gJ?j$voWwY0b=#o@w)@r1eojz8Ef%_Hof+rch&u$W&vOOCMT%dbaTAc5H#NMk zZ;IEnMH;~>0FssGMj32-mXB*EeLl_9lILfY`>$J1>7vQQgW|E+MH7ZooOp$25Qk~8 zI$=pw1B^SvDYHNT_pEZqc}um+si0sabtXfo{v}Uv&|Cvrj75akM%P9nZI3gmbbCF$ zep5b2+WpIZ(6%4+9bw4msa+#2d&b+_#daY@TY^hZyn6(aG|7>^!0+IVQ)1YT&CJF} zRRv8s9;5YXw|^vXPqUkCO-|aa{Uuaj`Z(-MoOw0Jt+*-e`z@+$Wo8A6RR&{qzG@=` zlKmTNcr8%bJOgQQ37N9k#1Yl;jgvHn&D_@;bm#B3i_Nh-0xCM$Bcb2ruw*S>~Vg1u6vuCoZkS%u>?5@&`x3%2bf4}l%`vh(V?YPs7xqk*~D zE*LMEw~wptUYl38cy2M|-iDgJ?-;ExVSf49oJi97k5Q>u8Rd>^2UTul*G6e!-lkn8 zjf@DW_h&YI{l4p~l+;qzRXu|%8E!wHMX;=-z-snto|&*tF<5(Vn}8q^GM@0;Yhl3a zuDSitfU;IG#q8HzFXFWBwK(c3Fn0P)K+|183iDefZ8)AR!up>Sdk>O}5s}8R^wiPC zVng)LewXN-G?ZhpO3fHeh~aLfXRxGa#H%U3jHsSpHa30DjjS)zMMd6!3^go#u9#mT zc+<0PV~1P(lFhVkibqEq8vAwPR9JQ{#@0QPHO!7?5c|8I;EfHe8olIM8|n!4@UjJn z!eBliol&}|B#OVb)|PX~sp3)7%clLKLM@q3Q9E< z-M-<@B=EAm9TXACnx)b)fM>RCPl|fb8=is;b@9|O%`61uXFClI{t8!MEP?R3^$ye6 z@Kx~qMf=y%QMNcEV9@(t6$`4SY|=7mTx5@&n(5-7lG^2Dv=BAh_wV29h8{#~%lopR z>Zq})9K!76FuZgYL#2_GQ$78j2ToR2u-Hx?BeT)S0OJ1S=YrT>TropC;bwt~&I?!O zwUESHX!@SLdy!iF5tYS{WA|igLE@NpaKlf%GTK9DgO^VAtfI8{2Ug{?lVujvy1|KX z*l2vs+uT~2kBNkqJ=snAYJaK&h}TOz&V)+Vu-s>3xph>BV))+b9I3BLg-(+Zc!K>8Uz~?suNArN2QNc!Z^rwYRb1aFGHri$_XpmE@1X{0MDzf z?klE+@-$tyee>$=2Z9Y(AdtESI^bU9^-`mzs*<)wW@L6gqB)1qHYjf9H;u}#flx*w z6Fsg2fV+pq9CXpb+qzo=_ae}!>PYf9wYIn1ndYx<%$Hy0 zm>V2zcV*ob3WHTgRQh>nB&Ly^SuUr8I>KM@* z_#E6j)R=`7G>p3<-d*_xouNTlOS_4HX0Ye@qBL0hX;|t?*0y?k>t_J_`}_OCRsf2~ zEXO!Dz@LZ3P%X5A{Q0d`BNZMaI22RH@HH{L_HZMw<`pMlGna?tccV8XFxVquFqM!u zv&Tf{I(d$4orNS#p{BNM(@ZaM(MMT`)VH$)4H2J;K{2K+ZfV~fBK+K|I~Ap*k&@Fz zzj%F)^M-)`0IH`b-j;dG_3zV9>?rCgDB)-fYhGEwIAaytQHo;hWLtCw53Gmpt~&gZZvgKo>NdaUgg4nfDc*VO64u-J zl^nskJ$CdBPcND}jjo#9xttx~xYly}9aSywXc6;rVU%Up-))q8i&dJpK z`YHyanRkD3K{&WS6liQ#I@`A1wYjN$?@{s7f(|9KbkmZ4{NF2hBST`Ie*V|0km43S zwz}u1Bs+WdvVb}}g6BzQ+pfO0iRdP+pU$x90pvZ%Ru^5nd*d!{oV&bL?dI{XkEr{W zaLu}}w`W`H;DT$#P|s|wHvQ#lDFo1mc80%c0;i~Sq!QMQ$i)F3YuC1_0^%OL9nW1# z>un1O;Mk4+3#+w~G4D}Ae@~F`aAlPxrm3nfiYK?QIjb?_G%?c)W^p3VLFwK47`~)v zr-qP85E+^W6^$Dgi){XjU^Mxp9N1R!i)dl1ru`+YWyi&NL-2s!%Vl-PGrfxw#K=rN6eE!|m=|$@^^1-Z!~MgHIHqMlr)J zh~%44&}U`x-*?aNRWR9aM+h8qoly#a8#4*uG}SN-hk+GHZ#$c!bA40Z*5>MkN17~3 zW8RFiT+M$r78C$UYTdlI_o9}PS2(<#8UaJ*aT7`0c&l`G^Jl%z)Qc*SH4bjWoyl9G zZQq;N1Bg{g>;iaOk41A011s&)*Hw^Rig!d^mD<}-U7=R)*&<`vrkeLG?NvkLskn1R zf+0bOhx*@G2BWIYLQI!<+>&!daI9KvHmC=>%y-EQaAb{h_=}$FT_jRArH*8p5H%`n z4_Cu+2&<{`J1NiWhx0%&tOiUXM^sWa^shI!MVi4enW&^>Q@cUI=c4q?8xxBVrgSr9 zaCaXCmQ!9;D-R7*q9M(94SmZ;L0Bbctg7t>&btho&S~48l;7NiQPpmwW3y4u*Z6Y(09EJ^xNjcO zu8Yp9&!UEQ`vTtuxxy!m)5j>_@v2!QV%Podsy6~P9F*KO9Meea%qR?I+2Mh|?HHTO z(g3m|LL1t1Ncpc?tEG;zno4;+NdfmSCB-Qw!tp7oUflt>zeQ52Qkk;0`I@-S(A%AV znNkwCw>C_Hc5cp}`c;MBIUTOU-{^;LP4v>k;FL^bHXOO5N3jj_cowA-S-!6n zIMm6POuF4J`aoT65uvdIP%=22zu#1w_V&2}@I&{<_kI1{S9!y@4FWVv`_bAwK}o&> z!0OKBL{8#;UQ4&n%W{nc^D{Vhuf%_?7ZI_4K zsEMxMX30d(%V3QK%)lQWWh*AiZ^={NzwGiqB*8gv2J%LL+&G1%>0z(;(Gp~lR7Kls zeaj>&E#uF{K9>@f4_B$s@Umg4d=f?5h5dp3-E%4#oC$jm9Mu{eZLjRRPUFE5b1AB9 z?#Mk*2e3`AuEEG*bEl^Hg}D{DCfZQ$tD4NQC-78K`-M@II!k8iFHgnvcqcoyByL|F}cZaGPtOCvbG z&TRhMQo4MthN*(Wc4%+MRTC|HH;QJqyhq72xHQ-~!L~lv1ZQbBGa1>JyvY-)X?aNx zA^rF)-<&pAW*oZl_pLW5ToN=}w75tK(}JR9VQyom6YC}3w05&_()|ho>5-$3qq#Il z!tEVpP*gM!4qhv~?W0a9=q?ui_0z4>MMzXM`&J(TqG70K9N+bP(V)H9&#Sn7;akI{ zX^HF|Zah$Z`v)IayFfn$Egg7@zBvorM>E5U0P~%_h4=O~*SSGb1F}kgSS(eR3rzMG zUi|x%636;9(3e<`-sqY@|VSjWD>-JNajKv<6QmR-w3htm0_FKNE9x*3DfnIaQEkh(je zc+Jcv5xzka9R7U}$?5=mqb|)M)ZI&2R>)#>r$NJB?r00ETfEF&bO8gW1=m$P;C|}w zIPCh`ckoCq?{elmyV5>#2u)ghKFx9pGROdo!I z66Wmcq2ESGvzne{ZeLpI1FzL^C&Q9%^}eyucKCkivI0TXJH^T^>vHIwzGvExf&xZ6 z*1sP932t)PMZF)oyLvt!asoo_ZkYF7cJy7|DY=?keh3cJfc}XIKM#UikCN;2>VR(^ zIagbdZNgm9CEiEP$Oh$hUe28EwKyg)Dk9v?q=TPTncfTAv!djv!>&556&5Au5bk7iZ^*2? zayh<^Pj&hy$03E_HQT*!-aGsiSRS7g!)3N!dgIuxtL#O?LD$?hUTrJ0Io>=`d`}&& z#OdMlx{ctcWuxqY#=zg;gI{#g^Or!U9CUEULoIDgG!gNY`kwA+`RS3*ruAy}`Y)z7yQD=j%!=m$DrP*2VC%&$i zH28bX^Ye%Jzdj3je%J-qw{OGnQ%5`6+`hXlV#BDndd^)3jYkRI>}BwX#6^lxndt9+IMbdpK{hxO6;SHuXLh2vBQZ1>b`^8{`^#s)HX9? z>J>oY82|)=(U&xGR&z%qGY45$d1!l_-Zs?%DAeesdF)v-IV})5xTfFjX<^OCH))pc zTgX+^gQk?c>cRXSLaf0GTuqIJu6E&eflCsa+A4o3rc3 zuemK1P;??^I{7;iehTC44q@PY6(yT4&D^*SygSvJ+J7~j%=QV)I$2gH_f&dOZP`ja zQ0&^JU2E9@pXEw#nZ)v4ViN0ZbU-)R=%kFMyN`XYnK2D!^QO9_Z%^_wgok2ShBG63 z6zmYk;&_z1dx`npJ-chW4R7@;RkIXK*?%VRi8PW%8i_C8{TG*FHHNaLdZYTs>HH-| zK5ojY$E)1p?8rtXHu6hy;)~5_X`Duc{FZ)MOtU$~-{`fV%`yw{UD@Q9UeW&aU9G)s zQZilPx;os~XL#c66RpwOgwjVoYC+rQ#@AbqB-T~b6QfhbuVS9dmguAjQc2ml$}?)M zS%cZl;D%EYBxEtSc_#n|di1T4@^K|Y1$I69EiVxtwnyNjE1=6@dpU~jULYtis4hQS zQ2iLe-b(fzo!Kl4VCkIZx;#%8JZF1*G5B&<**hp`yvGfSI!b0813CAVS0`=DJ53%V zQBhka_IX`(STvmqy79YfHg1HD#BXpjN%PRJEyl52J{v`a!0T&ziT!!K$ADGCmCMW-O)?a+hFE6wa*OyC zJa%lGzSD1|)E;cz&6?X^P^Tr%1Ce08{1>3a`ndyb7>eL187UuD*x6*mCi&nsu8_G~ zg9@mb`DdN9(Vm=C+_Z8kN?Ys9=8qRBO;tE&ubi!R9fV+X?$0z1t&^qf_>PP? znTJg6OLqG%YS~G#^JR8gszTr4%Bjn;brJAvM*PCBt%-GKH0Ga_AG4|^{hY0CyQe$B zS9T3qAN&-a^y9Cb z!%Ix;;i0Tx?>$#0ceY>rX*@u@GG|ci-ECw2Ln+-3q^y-ox6^><=@zfQGId(rt(BBi z@L`P6l#%8=?mGVfRf{sRC?4rDi;LZK@l8##zSU}ok^1oJp!9r|>^lmt#$?^$)D<;n zk71g8R@({kEwtE;pIYi%G7fvk2S4Bw%RFbgsUCY~hPb;gy&l*@ZN9-A*7iK$4E(rt z?q0Enc_7&g77*-Gs$5Dz>=Te*z-#d;OiLTXu$k$`2S+SolQ7(5>}oolZ>d;bX_tt; zzqQO#lwvjVQnM?_xPNzw@vW-CorB^Jvuy;I*N`h;ietE?RwX5Td%Q9379=|6-`H5p zMy{fB)P!${vwZwDh#H$TCG3<->v-QML_{wxgZ*_Q+z&IMr3jaZi)K zFXEJ8Rc_2&?ceiRW%Qx!dVQ;{d{%qqeYj_M7Wg5u?F~WoSs3wk)DhrLal7gjxUd*c zviU5oapMK5FUBgL#;K$DEERJ*<_8IZnK%|BBxda?qc%P224xNP+i;}K(al0vBR7x(!-}&l^vT-3rpk;{ z(?RKKC2M00*3LmOEv$3%LqObv?W(zGNw=iNT@5~IIWxM*9vz4MDV^Ee#sjI-jrHfq zEJRd0L5M`+$5hA<@7n8Wfa3Vh&)|_zy8@5V-t(8=JEd8ijUgi?Ee7et^C)IeH$(8?62<8SC*Vy0hZsw5jo4N+r|+n^{ep4c+S+3Y46ITG?5QtFY<+dQjW3ivK%@MCE7d=S?c=#cnQ$^QV>sDH+L0N3fXbtnG-#U=j$>sOvb z4LPT|fq<11uv4_%&1m^0^=RuJkN!B=7U}e+BL4siIe+@p$9X{57PiK-7=ML3$KDs5 z?;>k%7~I|JyMttSC9NH`QE2mb)9QJ*LkzRto@5B^?%`oM}2)0gik9@FhL zFY~e=M-@Nu)->k!HZKYv$3OHh@0sXY;E@!MDrtO)Y87XIuG`{{S~3^l=8n ze5UO_9_BJ_oWNl+bJXeaO~O2@VG_W|F};{<57#u*Z~5gmJ$azJYalqaJ9BWSzs+Rl z?9IGq1H^D%j~^wt?zytYN3=n-`wfW}2sVw>B>t|ghwtD%D(m)7=?GmlB=mTU9btGY z!&n$wreE@>#3rMW(o#!MMA-5lJB8Z5ouvNei60#t%(iTu(l+6GPA9RYrQUOfI^S%6MV*^u zsiZD2zDP*q_T5&=n53kFmZ~|%9Ya_mHv@+*cep~aEG{|mxoZRxQ*R{ClOV{?0xTA) zqh+gN);2{j9UWuyvKvuPSxVfKwpM=|boii@r+3#sssXeXyd$F#xr=f-+z-iAs-=pe zXBpe*-a8U~i*-VoEfTA>_*B$Rxytx?NH{7@Ox?jJdQuaZ0L)4O%pG(~Z(7+`GS}0m zG~#bz*P;lK$mk|yjCHJaBj&Z3Rwos0HsYnWJg(oG4@I-J^}fdBTK&F=>>D*phqaG& zQ{OiqTEpFM#bcIo2z5<6sNa%pVRxwY9i)urZ?4`4m__L7b*W_c8VD?*^|e+KILv`VwxAz%-r$1;Df_d7ZJt$;*&6AStLh1Z_Ta7sJ%5?YUv@J zuIx(8{s*1aN-N7Yj{uWr>;By=y|~}gxS)~}VsUO@LiVccK9?H8rl+aOBRU84E6TA< zGZ5LlPHaA>N3+yCi+K>VmuDcR(!*BlWEwVSfwatKb8Ngd;)gQ5^z%88xw-9PLoKgz zA1w7n_mX*deZGp$8rZ?#$k_=Gxaq@*N2sN$JTj)XE$(+dto^=C=1C}{X({k}H*Vi~ zxs$~WrIMz2p3_wwD=*u5;#AX39VI)Uqk>wC@sqE4SmjEM?i(y1)V;?|0CklY$4yH9 z%jE?6k3(r4h#6U$o?9L#EwooEsO5D%(U&qwZb7goQhZ9a6s7dr z$8ZM3pOO&s1Ra-DFuaX##UH}=SdAoc$oU^k!;?)2BbilXfpU)t^Sm|H5V^a^&!%DI zdXDQXZaIg|NnZ9#uJPsn02R5RjNx^cjrrK{>y8?6)h5y5^q8|LYh1?`0B%_88=G-X zQ1jXol)a}*`?w;oRnJSEfz2!@TcV%g>^m!urD5xtEL%Gq)@>u7F+7WIw3?wv;u2|< z(UETzSjuucHv_M~s@h?GPHJk8=`W5Lz_(+M^jfSZ$z~5nXVkUTkGJa%ssL)=PtaHxTfUt zEH7X&dVJn_h|!oxv*F5IuYcK=86)?OmZ*+w8aMF!*Qq*-bUh4AzhCuEm9rLr<~1&b z+OaTfybw|{k0h^wzN032Hu&&X;n~bKmHD?22lF{@wOJ->Z0AILQg7WJnPT@fX)!I| z+dgpGIQ?E0`yeSBLx+oHbi6g~lwtDUT#@_Qm}LFP{{YILQ`mo-(ecUu08)^}eHj#X z{uN>E&FZnBsP}U}rdwt4ZGI?&P-$xw2ssfRugPvADllgnoC4xwumG5xo4s9%nMTHq; z5w>;$?K^xG+Pn_C3TTeGvA&hw*mu?YxY;pT-PE7>hyMVXcIp2B_^Ch4h|Psh6SFfb z;CHDYaI%lhAI;4{DsHAf@lIX1sO3=alDFo+Y3e}~W7|w9?khj>AM}KqnzsJG{**@X z@D6g0!!NAl0RI5f2kTq@RoAZO_J5UL-H){8+md~hf`{oGOs)55nhk4sPU~~+E9R8t zzEsCk9!Y8|Y8H6l)};|Y?5n$%jwyFf{nYxx+Meu>S1EO6m2BRd}-dElM8X;m!F>4#FuEU5_#iX8*o#+oQ ze#2m|I#E+G4XyHVhlgg0ovzc^d9wDmQ{lDEyO`EJQkMWRoY6Kp8Sp<8LcjFzYMp?F z5QAdD z#jD&74SjO7D$?M?wRZec)IRL4$<2*mQAr$hbTi*uJ=s9;x=H%?FaYXwXu0T+32AWm>BzYYkws*aq&m^YZ7SDt^WWpx|D3bEO@dn z{;tdY>+PoO4glU1aetA&l9&7ufLr~-5ArwiOLb3&j?3aM^_b+tvY3w+wWN2QehcnD z@IC-IP((kGzmk!=8-cfl1YhKDL!jhEfg?A{R* zY}zQ3zr*-f{t6^)-v|EygmG-Syw<~+E>X#{*py7p=&T1G(9wP7c5?_n@G*atLoUhS zb2iVzpg+nHu=pXEEpy%I;B&{j@zFshA6E;@Ur!*n?(|=CVjfI3YPFi-(J|j>3tPa8 zeAWkOyob^jx%64CHL-UedUBO~q+*%8SmfNV=;iM-`9F%DM@2MFjzCX(gzPOJ*zi<~ zo}L-n9G7tRSGl)fC{L`*e=3l9KEqF|6Tixh7k7jBh1Uz-hm-0d`irRXK72Gr-!8BSI=o$spEQ+XWQ$||ooq>2hz0nzNL0eVIqvmR*>WKZ12 z(Zhng&77&9L0c<2g5(bD4Sq3GgVe=_c|^ik^D8YLBTa4Xhg)cE&+$&5V7%^w=`EkE zix{LL{)*Ya?-%&3J}cy!iyE7KSzlGW8Up!C>^rzD>pY)rM#thWui1L%P9i$S9jWd& z(D$Ox(xy_fFNV@OGTqzRd&YQ^2~_#9NAx z7D(L?3wyUzymj~8cMd-;3AwsznVUHm)j5m;-!$BoZmsZ71P=c6fgc#kJ5BfZD6)Xx zX5Gq3M`t!)$wk98(*?6~+__B=CE=m&0RHy{1^TNr(YezGoe~4o(7@P7Xa1!*Xd0;F zXlnpGz6tKl%`FnWZ=$4onCAjDC_5@A1QVksY}wr7 zv<91!?8uSNu`n9oP+X`#Nz|-B9MW?hR#vo#)WJaJr=8T@$>1gSLky!`tX{2;jF*=#|vCpE`QDXRx9&b-r@XOr8oaFJh0q#cs z0K`~MIp}fhGB=(Z#(KbW)lG!+%{N-PrrPPzIq}CE{a!0+Tjc4L5W0Pxua2raYYXfg zE%I4<$}0RiP0ej9pnrS5?&UTG2h<(tBTK*K)fK3qhZ4bLs}&h4qGomt1CLvw4vmg@ za~#`o(GrTQup8RQ&MfK@^Z*+>TwEPHiSKQcphuT8pBgca;4l`xt_Q~$VEVA$J?lLB zXt=k=>Ff#9Vv^FEHSx(GHWX%;EdKzc;jXjC)Y9@Q%Q@~NcK%Dm?Rq9X@3=dVGcD5ottw~2NCL% z)Ti9TGe?&xd#s+>Z|b_;Zl#M4Ei(tTq{K6x&WVOfaTVCc+@;uPmT`C)V?6#>Q$+-h zW6oBMHB&^w?%8WZcDiJ;NiMNJAn2#C(IeiL_IH{MY~^+srE$LXsy!5IlKrxq`MZDpXc0nxBg`2V)&&zE(TWFy-Kmvq86uXB6f%D4OM!2AzWNT`y+}wO-%(j05!S5)K+Of%2OerI!<$UV zC2%g$0Sm3XtY;2I#DnkCB<*D{aSj`Jm7G z<^#j$qPS@)B8W*O7H1WpG4nciW_LYN{5Ke@p~GDSG^~<2HT0VC2rUFr)J*f0z&Boq zmC9rH{_(X{qU&?Pic$mWgXZ)9{IE=xJSB7iwzP zlJI&W)5h#xRu~%SWQ~^p096rhnMw;D-P~-xynyPV6`{}H(aWAesSJ0&MKpr3dP@8) z_LZ(9jq>P+3_-(-wI3zu_+HTAxXmA%RXw6_Q+Fnxdd=-d#l5vosKWAx@`3IENIHiT zZyVWAW|>zpuXE#mK>i)bgYgNx%4W6BkdSZM;DkOYX=(S8wb9Ht1JkNnO2JHQ*81E@ za%Pg6qDV0L0d0?ds>Tmm*J2N3jn5m|_H@xYmaYn_-#2r&8Tc2b)M3X6n|SBCLi5<| zAjv_8V72(OhARV%I_Mlg)OT>V6x*`2#lDSmX%IfSwBLp~uAe$g86&Y=uak(57Dc~`+)dpP9@y^R4 zl(Gq{TuYqxMhLNYQT>#@X-&S6!7ZbAYa#W12mn#aJmH;|+;AsL6?T?-cqECky~6TY zM!tivj)B$F*uw_tkbsZ|+7_+Oq@woCMO zw;a}jdbUkLJXIaN0UWg*=qrTMJ!&JG6ZitBJIfkDar$vi4_sUp@jHl@7V$ z{u*~66}5hGGa~HZ_iN0>^%=iBQWgI?dMNJEt+H-~U<$fuI&Wb5B2w2x#tqubm)a?<<*E9~CJ?IrE zbEMwJ-T-lJjn(`%qZO#Hbu)73JOR)F)d6O^YGkM0)6+!PJc|dNZQiKIhtVdWVH>u^uOGbbneiZmgWA6-98-*xwB7_?7!v`0kPAwE{$#0 z#|hY)I;sdHs>W$)s--yu4{5nKu(8c;d&j*Amjj8k^1Qz_hrK2VgH%>b?b}<}jGLYs z3#40YKf#dUvp$Nlz1!l;fX3w-+;P3WD!$9f7RqB2wuZOp{9YRuhqmmIzhr^y1L7^l z=rv4RMO4pC6JB()-u|8El4RQ(i$_Q*svS+2fHBG(ZQpwv{Crd??Kq_#4M~HIrP_*G zTB_M{oba@Vzd>ReTn2-Py{xeKejP=()l$n#K^7TO#tra>`D7p-&|u(fHS29wDaNjj zj8fLr%QG4EQN7m;zPfZx!nT_b!0};ULsdN@p zwm41LLq+Y}c=h6fAD)u~q=EGmc-;7zJR^J!YtM;mK>M^rXmA?LPYC)$45f-^w&qG% zqRQ~lIX{6t+8Yp77M7P7!>IR>wZax~yG@6_*7>a-6Xky!!|<7?r=yNz!IEaPtVXv# z-GVGqh9iXF)r__&MOm}+IC?6A%+&dh+S9YI6L5uM{!bfAhccprXz=V>@33VnOI^bE zu_oiadR`0VX9}pJ`a2e&Wfe9?jr08@d&y~TmiMgvZqV$9(>vbG23d8Qoz9Fs$Ahwf zGM@_#5|+U6>4cQBIw@J(VskGphfIsvvCWadHi{uBb42o8;&@xB8edC*ZP!aLF~;^z zqX3_<_fHS-@>*=P(0v*UZ0GUtP8d`JS3BaXGQ)(aZv3~+*+`cL9Zi&8TQ2%GE>Hge zsZ!nDxwCvy7P|hoGzHN?A82RsPBanyzj5NJUQRjJJ<>Zs?mRun3!Y^W%sP!y{Tm5w z%hev)HxJ``1=(HpoPU`Cb=ZA3XlCq=Au*VA12=B=RkEH3{{T|pEtqDwx&p_U!Z^K5 z$~tl25X0GSj!MTl-m|U!>VPfgu;sU-Dj`QsH7shOVs$x!Qytr5n#mZ3?w3G!dg!zG zjU_B)z`3BXm2)pLhT|cj?gyJLt3Y0o8WO-m+n1kmPam`|N=%aWM zQwBGM^d3CZYT8X>fYRfFbi}oQ4mQ8{$y_ye^c|!8O8qyZhUYD~+@ZkUOYlU^UQef`TRg5wim(}<*XtZqA97pLJ^ z%s90M>Rhk5*8LV4OBKDb_*H)8;v(+HRiQa#W`0OUJApqAn|V*H4*4l?iqKo;(>var zsjDPey;KecJ#$+6tL_@~{M0T0@&4?98HqwGuvz07bK2wFv9zwu6WCV#0M~*zak9f# zL}+oj+3XjRJPOkqkZIUAGeqY4hvu|fEjgDBbWeBH+#wawZt7U$%p3k``#V+UxU-=y zvnAKv)mC1FZz(0r%(=A+$-A3k?K&Zh^fn>d_gheiM=+VWg3MD$$(StW)?p3ADZJ)3 z`bdHJEhCR^=RwUhv=)Hw2aV7kM#w47j?BBwse4V{BAZ)-{TGODBi0#i_H-S72pzwB zy=tYeGN&chf8dwQU>qLXs%`}7oBIj2J+9ZgG7D>-X9>-f+KxU8yuzHd$32xclY2Wr zpL4@E_uhfEqlZJw zzKWn>$#bQ@zk*UVzIQWCY=F1s5rOOI6__(d+izMx_aURzxRv$^g}IyB&EuH?qKIj9Gr_WY4D{hQ3bjt=c+XapttHu-~J zr@N9Zw3|6ov-3w3l}wuA@3$`$5w4Rff$Uq7(2h7~+jDf`;FIX1YvyW9(zIVQyZe$k z(vNSy+<FMqG0nk7WSkoZ{1S-Ep6=%a_WjmYM%v3mL5NapP?@%W)YO0sz&wfioO&^-m26I482nQ>40amM;-Gi3Q zQ#sadzS;|kRv6AkyIyI9dg$h@n=r}%;HjKCQJ`(ruRZMc9eZ_A`Rzf|J9S7SW*skR z?!W2@P8$CJuZ!$DNz~;)Q}YQ!ZW`_>?xdG4Op4H~m925im(Qo|46W4x zQ_QFKS!<@8I(}$}(h}c9(}>C1yEvdI`HcK>xi6W_8-CKg^sK*Os!yb38J&^H0lsND z_EUufqce-Grig&XUNkKDrHZUip3G}4``V@hUrg~8#%uBQR7NRAy{n?rRW>Y#*ZySB zq*@ET2Y;-MfW6e;yt{KSZTnh$5pShh-_%(s#MpmT!}pP}5xbZ7+?RJCvC8fo(SM~Q z{gPj#pyw9^Yy;$YI;AduXm+fNeIWtNH%pse4qnR#K%n@@}4>&$5Gh0mG zXX1bubDeX4)RNNnfpbw-)>63kV$OS-Q3^aZrxDVZ4w3i$-_0$;+d53=)^k4;o|l2k z{THE8`8&lbHJ%6{XEVh7k%~_xxO-cl5yV@Un9zL7lH414E!-Qc*av!6I(I)TS)>5M zKs~>IAkJ&q1`V)SK4aLakZ>KRea6bvdrgI5&;I~rU~aJH8YBDC*tO+YX3p(nrexIE zO!hx+!%uqjI&F}}=7o={YiYTWm>Yc5^_y*p)I#Xp6*U$8y!RvSLZ#X%+}lr!IF5Ut z#G}az9hs-2ZhE@*0nhuoXP@D;EVMGZKsqes*u^WoSe-X}+^QPNi9V@~jDF`7bqTTO zQ%zbOOBA^Xu_d+_Lt~IS(Y?*iI1|h(CMt=~qb=a4*kkG)46fKKPfJ4qtMuBd`oUMgUf!Qkg%9FJ5{D|a@+)ZzQd z4DFr~ub^GwyD)SGfhxj{3^YX&Bt>#m-njh$6re;Bd(|2@-G^M zfQ2-fUJh+J_#s+t^jl<{0^!4oYeyf(gyd^)N0 zwY2g~Ca_{)KIhaJI(Z_-vdfV|~bruy;ARgPY!>I5dFz(S@gjK+4#|Tr+Bw^^l)!ss8{& zJ1?x?l8oSQ4IZn%l^y|}bsyUNmkHuF%dP#%#|M~jV=S8NB7WCqG`s_Z%m)7R+DtNo zo3p1r((j{X4Yuha!)6||T(#{WBo1NyZ^b)!(ZS9C07X>c&mPBrte9w|=a~U^?LTJ8 zrQZJl!BI4Gb7Pk}342|K1oQW<*FQ?y4l%WlVLZnJol64BSl!Rj4B?o&x6yFZ%i z*x%Vh%(C{oO;3D}4{;6R5v4C(x+E?d9NH>7$%}nk021$I47qNcd#sHG?dMJ!qI)TX z9BXTE>Nd5~N4^qCX7Fg#-=JCHRObNF+i1O4$fTy0j<*psS;VpkMBiWyPO38T4W;sj zi#i$+NY=EO221oDhxgvR#s2_flNOI|@mAs+NciJs?U8kNa?Qp;d*(bYP1EC=iBiR< zvs?lZ!Ku~Qfb*9F?^T8%-91%G+RI9FdaCTiB6B-@dZ~Qs0M}-6Mv}lc!69sXn{O1J zaK|;-o1j-PoHnZ)tleSoI%l3^f}N6$fo^wj<8rinIkEVr(#|~IEyXwO1TUb2UU4tjh!xyjQ%C6n}%&%LR3 zcilZ0t|_#Yc)pE$qlcmnY}RLctPRgaVC2f|+IXg6_zpR=wOgzzf%P%mS^OF_*WKTs zM&$N-P<2#}J&ep}awCJ$)?zaVDIj%Gzc22~)3#&COi)HD_L{k`w`|kLqX6%6+S6jV zE)3tJwp$7F>Dkz|J8aSXPdY5}=9v0a#fRDd03+3vO%r17Z8JFJ8kMudq1l`cvOF$< zoBEP$cP!o(c%Qv?B~3fy6+2;!vWlGW!>JwX_Yyl!@38l*t~KRP3)#vy(%|&*VG-Ml z*d06n0GCmI_Y%3TS?B3~CzqgNdz>a`RARWK5#g_CVW%vyCfplsPgR?jX*O$S@aZa~ ze0T*B^(2wO^)&;SYc+qxcuq05c%Cm?B+zd}kG<+9c4;lgPEGe{7H!anNcxJoT_nee zey;ZwzCRPR`|3OC=-X@Mc0Hn@tHCfFA<)uQ0LiPXoLx~c8umr|96J0K0o|5|&h~?n z#{5-Nh;H&W7BqC`d(-2CdUb8y{wu$aj~phkWtLl5hD^}jFH-8AO;+xEM(ghRm3hQA z&_?WsowYkQQ2mLtX}^iY~u53t_!b;Nl}G1iv$XK!Cw zJ-Fll0Bahe{5p`gR$E0?*i1v}-J&|;20og8Z(B9f{+4!Imv%w{^m|7aJ5Dxod{}n! zOt8x<-gq&ZqgarQW-+>lep{yj-cXz;37-|jspE5RB}|rJ%k%CFPqUs)Hj^Hy-bq63 z#9G>Si1VKESEcMHpMQ6HJLMM<&4>&p8Cv+`BY0TtZ_uE-QHY9s5(*~e zU@YD|4J^_5tZs^Tj8&eK}qA6&nR!yk|T0J83FSNNhl zG5gwG>)&r)X>yN(4Oz9da+kk;>zznupEXWA1&1^0syXP1Q*87u`igzwTh2T&PihP2 zmDR7bZE@4MDPzKFWB}AVCySQSn`N;Q%=5k~X!!Q*-4kE_8p4};%twD9_94ICum1pq z%~N49hU=PV_h=C)uxg=9>0_nH2DdsctJ|tr`xtE#Ah)*tN(YH;6@DabEky5U*k+${ zV0t#;@V50;@kaiGQkv{rXX&*P)YSMyK=_rGiWywpAZ&VE7rRv~vCP(Ibw*DH-2iay zeJ}hT1tgvGIVs2Xl5J_IVx(vAekBv2z{M>H-eS*?TRWeWGy%_EK?BA%lMlo5Lx%p9 zKLa$5C81^8XRRyZIG#HTbK-cj;Ro0b`~uHZRqs1be3N*)`?6%xOItIlDkZzf;#`>= zFO}|XGaBo0JOTHWra$%w>b5sF?v<=3jn!!?XLBu{%{K^}u$wjArys>rmV(0BoGpGT z{3eHGH`NoPj0i`0ReaYe_4#Yyi_*jdK=2@G_@+xyv^zq^^;Vb}#J9%E77a&2r)G`U znqe)WZl)%t+CBm=`jTnSmo$Lc+H@!Yn4J`r*z=)*y5$$?-fp#6HqFps^x5ZYr=Q>g z%+<_AW5XKI@u!WJj}52AVu%wfSS@=NuRrASW&3T0Bi?^4J95IuSaRf}mbSiKUhW#% zUZREjry2EfvSWvaTdyY8@&YaWV%w?8Imqw`ah%^LG7d6Z335%zs;6tJ{r zzHf4$%`KbN2^j-{xyli;STKV3o=PcV%*!?06#MpG&*G%d9!C?Ulx!dr?=03=F7s=f z=J=-xNpEF7JjP2GJ5&X83v&A2DUS>iI5U#8@2+q>2f;%rE|KKr_boWW0vqjeUEUP7 z0J(Nveamg7V-E~%BZ+fBdB4GEuq-K+7_2+?J8(wxUUpf$KIO5n@&vC}!{9OD@B@@E zFfTvk=hipln@PJJt1-4w7zp-QtsmjwlPE2BX?Xi~Dj1wK%-eHS<&2Y~ztLZQnXRvi zfR@}AtAwMwBloYxM=M+)d4?vwOLKLV=d}Lq&ov3Ya6_ywWv(Af;hD6=mk7L_zira=(+-u&J zq5xPV4a!EhR%rb@GiBk$Sq8X)>pI>#E+K)oeqQe6Vp>K@(CJ*)_^4S%3ASB0p0-nR z(dlPrFm~5sQB!2Q9omxr0AvnpcU7}kOtZR1(y{_LJ{InX@4IYLY<3gocx=_OH@7y7 zzb1rMSn{7)c^v-$BHX^(>f^)5l?rOTpu$^|4%#}AA1LbWP~UNOzcpw4VT%Z|;@dxm z;+vz5TJ=5Gh+NEY6Bnx4^A!4$)9cSnMvX_KlC-#Z+{^@pRXkml?qC5YLt4 ziyz9~E78X-&9KWBQjV?IeNdVvZx}T!JV#q97?#gZjbanxG=?mao0!9ZEGqp)9Mo^_ z`6#1wu}QwCcJ5)say}~3&%0*p<9=5~{{T=_VW*Z^p9bmM!NecMZ6s^)FH1{O=qjvU z_<0_rAyi~iR&OPV#&??@)}$!8*k~xWT6%})mR-wjs||^_+!mUX4WgllHaMG{du1yn zEn|sq6QInbF1~*a0_M*AeJVj+K45klXp>WME{0h8AmIW4E zg|f5@*xkH}o(ZPIjZG+fPVdwQ?3JFxF)12lk2XeH?Dum;F)6Aho}Ru2dK#)=GoNAI z>c*F7W{ygzV$9G7ZT+r_{yjlSwAe((S7)A(XJH<;L<*LcI!M?hpFEDa&&f?qTP7b{ z=a9=8Y+krN+j*n0=~gY4!eV4{vw41d$6Q{>jBrx7)rvQP#Fi>J#RI7_RWe)ARbEPC z9-v>5;i%`)3w9v{MU?dpmNp+>Bah;hw1+&?3Y$K9Sc}I?xA9hY5X%#+*065!b~Ga2 zFM6RIl#wz$+npxxaSgfmsbVrUt}gUp+_~9hQ&g%jnv`%u;H06q2;=`Q=A&EISp)p>(XJv~du}&Sec~zYaW4hYoh)wCQP53EU(X%xqDND-W)$ zhDaiU&`rhf;5-(q1lUMu+A1qv(s`Lb0JU+NS~g{-i#h66*l~VpE=-mc2UVsg^dn98mv9CJGEIWX_@vp{1ksk#~yDtiy$7`_^z3ZgtXS~o1R9o zg4}tf6_NWnP}k1sJ!jo?b{dA=S!`XCIoYo56Zg%??#=u2A@RXcFRIHcjG}v;*><+! z{Z!J~O+=q+$}^qE)^Z^h2~_J6*CG*MFFLurzS3I^`HknjI8wavZI-G$34y(*HLA>b zJv4o-)^pyL&sC3Y8T(CAvVqUhy8i$I+r>o#b=^i4h6v+5oTI_2Zb#9Lhi7V}Xd<1! zbv9QSvb6`--G!%f#`4Bij~68q#9wC1@NLxgY0v^Kk+!CzCxcb7ve5B#?kJ&}U)9Ge zzlyt zlpW(TgOK&VCiPIwvk*Ho=-;8&)Xno-CsM-bjBd-+I92>I!gexiuRdW6yuX(`C{K(*FR5r^{@X@YQ-A zscemovFCr``k(b`@9_O!_SNW?U1V%^k2?AStD9GUhog(IERD^sh+sN`KikA)==J zlT++EyyxhH_8b!Z5=XM-=)Pr5`v$J_3UApp9fwz(oG6YBcllKCLp&TB;y-_a--;S> z>@GA^=h#PK)rZRzxwq8r3%-e^pD_)O?pt4@X@6wYhYY0W8aocGG1=IEWgq$MqyGR5 z2{=)__8R-BhRsH9vm&Pw9&bfOl-hW zOcMP-LE@xMRs!xy$hjQtg5WIR*Ljx!BlJFYzZ6hm#`2eih! z!2sJ`p}}b>ok-fI$ssz1JJcNRyz*_K!>5wsy|L-7^!b&AUf#|AIHKnhhw~@@0FAKm z>owNyUKuvgVQ}f^uABHZRG+m}14cfie=p*Z?etuGRfS8!bs*YIF#f;fzG-&UQE?L0 z4-FFz)kfc|mZ$v48+|waBg233A0(gRJTw0Q5WZvo02xpFdXfCe-{UHe+SI%Gk{f+G z%zF)Y{8I;xigwn}&fO{?c>W;1UT)iN{dlFg_QS|h$G4AZ4vqCt+oQ@2^foiIFyaGw z9osWThWh^iek&aO4baSDo3SA4%yn4I8_OmyhBbm*wb1in^@sQFUXg)qmIt@cWTbZI z5QJ|xFZHZAfz*A;%(R=1!oGuV?v$THbaO)9M}bl}W^3F*Tcw3YjLu z@2lhFKY723`g~yU4`rz;uqqnbH`7%>$zyo2x;D8q`LdU6c6)1DDe?MU%}X>D4D7gD zsr=O}W68~JEIxmM)HfETeb1qA%m*zmue;!mc~kO1<`O=$3T8oT+;koMt@7|*Qy$W7 zF3x%yI>*9a#qsgesNjzPcl;C}d5%?gZ%D&n#>y60q z`|Tf)M6iD;J9UiWuuxNDERJf41Z*ZITVC=I4|El+_3+xkZ}~+49zan(`Wwx$YCEatc{2Ajy-LnrGJeqYIZuj49IfWvQ`h@X&-{(Vas!re>I1S z^g7Kk~>&lF+X5EWM}2rykON z@)M?Zpx^f5^T%Xxdw&T^e6-R@^}7>>zxn?F{M7YJN8(a2&69f_hKIDNjo5ClZ};~p zf9+>y@$aZYAmOZ%4d_#FWB0~JMD>skHyYYcRvb8Exg`LzR=S8c&b@)@!{OmN#0R> zoJ*veIg5eUdO!N~pW{CzkM*#eYChoq0RI3z9)CbKF>W2LFQRpeO^a?3Mr~)3qVM-? zdN1bF{{UKK5vIL^;v6vW)`D!W8~e9>_ynbTBU=VSPe z-TS(#IL^U)G_;eE+wF%l;eVRWRACiZEboT3t(uYA zHfa4rYmE=)v$I~q$qboWmAW6hs;#~`Z_l6lt>!PXG;wCCr-FIG9*{BmgW=I;g!?|i zTP7D+Ufxg8c=1v+6`0A{&fOD%o;QaxF}K*dDsh@9nfe|P95(%?sXxS3rM->ZBltoM zV-Ln=qN}Adz~LKi$piVc@w#?7hR;p3Pu*pbmVZeMjCH|b;D<{rl}~f$mqm9Euk$93 z%U%YzNYPCrq9Lx8x_cbFRFTMJ(B=NBY-&0=siUibjk~pfQR0KLa&=>@dj2T|+R2{T z9^AThR2?mgfNg+H^M~bmcBCCH?nz_Ha~U}!M0+){9DfBi?T*YFnW-X$(mzL9{Q3k^ zn+|s;$8MXLm(XqNL8u_K?bkP_xzRG+f5ep zD@Dek3cl%=YkNGASe*@3Ac)G=KGrHjKJaNV2T zK_i_FT_VGr_pKb8?_KOX|w$~4S?Xm$+Q3?H7ZQWvd^Vg!t;y8n=@nKmLcXj{{*D#FYbxy-} zZaN2L515$<`wio-e-sNX1S}qNJBv8z-4F$;u{P7vPXlT<^)d@zHjEtn6c}#P{R<=H z^9bkOXh?Qj4*p-+RD{?y+(z>0te*_!yn1?oLlMN{$89_iZb;DfuB=k+WoPe>{YTuIW!1!W9y)d?Qv;a@&5o91!5hfrrqSJXY=LckP@hchRiLq3G835RZkMerQi9hVs1#@10HzY zY4Dnjo5v}g0F|C|sRX~Kz1Bi;&7Fp4(z1rBrS2q?#@6?xvkZM>@c6G#$4Jqk=n3Gh zVHmv)L6k`L#(1+kd07&`8NSU9BTr3NO&#t_J9i$cj<;gz>i4tZorxpYb~Mww!5fqz z-NO{(p|7|n#Z8A+(aAKlihKszj~YDHAXyEI)*x$C%1Q!?+@qrA(PNh)lj+g`-0EfG29P* z^>4iy#rAOF*j-eOrJeIr0QOX79^ggoZnpU>g+)*iM?4v6YK4T5mi9|dx4%#B=z$zG z522}Z-2TYa4u9yRtC}d=1g&;=+`hrq+cmk@S# zM#f2em*?+JKz1XJ)&dy>P6NFPsKjewo;hV}du+1@f+-d|1wAD2)YGzV$D=HDh;ZS3 zMuQOQQ##Iv-$+yLYicqNEiG_eO|ZKJpcfWOCrAB;;T#&c~?euz~?6DnfQQ0qP+leX&-%`nQy@O^eSU2d#WVzbe|G;g<7^3hwV z!6YxV4ZZaPni?qObAuTZ$tK<@p4vEShSy=jsHjY4zA0vy z9P&pSL3O+D@mejT#OQXLU>Q9VWFBEu-SZ8A4Sm4-ul?P5#Wb#lwbc?aHo-^qb|Xso<$Wx>yYb|T zM@5O^8Hi+=G8YnbZ{(w9B>G0ZlFz<*;xl$Y9o!HHD`tk0k&tg&orE^7w=K2) z8YBBZhmESoqjohc^)%GrF!oD(HaT+EP~`pF*!$Dr#&Igf1LqP3 zIBSu%N{6g%Z5|s_v#z41bdy>4yWg3@+%-H0_Erj$X9XrlRzGkx)bT1!n#LW5)p}-c z*yzYP-LG4OPQMX$DTjHJvlp=M4ZiE8CV~Ro9j&wL8vdzbrNir|4ug9nAZcgi0IZH^ zBZc6y@(bI+O3X(Ph_KKNmSugkUTN(vktrts5yqdjx6z0 zvIca|e~*IC)9qF{AN}K@AG#Z-f{M3nF&L_JccbW*g{{sVh&N~}A;MohH7xRjtj)MK z7t@Bm`yx2AYbbGOa5`COE2fY(;tgy~^vlaZbFT&D^5PzSJ1ZlC(=>x|%HMa2w})+g zZXb(7T@$iR8^go;+WdbW9FbNgdePp?z=oP8;e;~*&Vum4OKNnR1p&^GHT=6i?5$99UsFiKehwn`{5qpp4%RlJifSt8q^hcUynU@LZY1|Dq1((CXrJ_U z(M0G(#?fycTHBFrAME(@SzVyPu$&&eSKt-7;Tlv^$!+y3xrbZt94+rJU@vJgni{$v zFn%1^W{CPXvD%F}`_(E9uEg+MC769X@>0ig1NiE0bt<+qyYs<2dtyOST9gAp{@wOf-*m6ItnHbL0n5H5UH>MA@jA>Q6hP^qC*^Z_|e^@5xb$F(bpvbR0r6 zK<2bNE4v&(E=q>(r^^i$cFBw>*k!626Jt5uVW+$CSc9~c4$jxL@&{jvB|(SMwfos0 zO#syICuPO$djWrn)@<&}?4H?C*5PwiVbkLAkoan-p6wZJ2OW4D+lRp|m8E}@J+6aK zHKdcgTk}Keyqj&5I=cvb!~R3t^Sbn$FUu@0iOt059ShmT@w)9d_abfby|d;(!{<4< z`X^X>?74gA8tObwU5nayJ$;<6{{W>>sKPO*a|yP7xt8e9$S1v){?`FAZ;Ik)&-bUp8g{z;CjWO}`>W}26^!|-2Mw`j0gbo1(M zdboZnb2bxH+dIvq9^#L$e?`_lMfy^gEwiwmxsT+WF&ch5`2PURzOa`A+1bUU!?5?? z{!>*MJfCcRLwkEahr7RY6aN4s{)?;S(Nx}9zsgd&a_0K38hw(!lAFmc#7@FKgn$p- zBz`D--a_^&O$nRdi8pb{&!if<4?5tM=j+WPvR9v z{{Zv6;?2#M9;A?W(uSw?aUC90HX!~1mbdRAwT08XJJ;rWOV#J{2enOQ03_NuS}}=Cj%bYQ?@K+~ zRKPOc+|>x-c%D~C=Hx3vXlAI6Jl5?YZ*%IOenV4q*yAtEORU98uDA73b|dPE0rho) z9MMJb3M@YklC}3Ovv`tvDe&AQ&PbAO#A8!+rGPQEjg8Q0aE!7C(^0aXD>Iigl~bB_ zTQ;Xlo?TVfS+O{t^Y2-#O03UR>u_p;QkkA)%w22qDZ9&d%eB=)COHA&;-Q|XLl*Je zuKju|&z!}n5NA}sBZ1|`R+@eFL!SPA^(BU1TH@bnUV>)GO?ejJZ$bo`8!hB6GV>$!<4N zwnmd|&GF!cc6smvihCpG$6DHJ!{(P#*oB{$M>nr>jJ~0*^{v+Gx29`-ZqE%D3YW32 z1-f-hMlFNN?>uu}+X6VFj=QMs&g(gb)G*eJt+84dTzuY8dg_1=iIMs_;8~)(1cpjx z9+wKHDHd8FM+Qiz!rl5ihj}PMwPQ%c98Wz|Ql8YEt_M|Wt*&)bo!qK8fL&(uR}9F; zX@|{UuXgH$5vBB0>4&D%Pq{lBln9vI+Op`$L87)m&jgOGcw?`viifh+3;zIqDKj@G ztz{*&zJDd$LtEmeq^Xg|IM9Rf_o_FyyOOg(X1(4#(l(Bkw|d;e*A@hKD}}9*nVG;} z+_Ud4h=;Y^v2S`QLs;34Z&CixM#YP5w2aFq8)#8%9~qYpsbq3HLBZ%_qTaAQnZG2~ z7EI9;oir(AQR|p~B?co-=w`}6;(+4#Oqgv>_Mcc!$!9P;S@2Bid7W--d0v4-TMi)$ zpr0+z5P5}-npkB8V``$YcA-q>mhn_^95zfUr#xR$O~SVgQ)h=qB$HkbHnnDUx|>*P zTf-%fyH%)YL-DFlI>BmK*5=5}N*&N#p@u_GTLnndCCVucok=W5kO2&x zx2KZaSQh^PfZkIUn3*VcdyC(anT|B|IXa;GJy0dV;|JIPlwsgV%-OOY3lUc?4}#za zxmJbV$<&YTg$FPX;Tq0N<>$h0XLuKRjGfhQQ`e|F~Bj?<`!!aGNio$t7*|xeb zr0JV)+JLmin+EFF4mu?ju5N|8C~`hd4bz&Pk;e-`cOLa>KYnuhx+QgCY3#RvP`X1Q zu;`c?OYC{`@IX!HL}s&XYy1?E)k$y*b6;O_j5UFt91^kG+q0&iASZOq1a?|EsEu3i zVAh`%#@Ebzbyd41);}j8EcwHn+{L#OBeA6uLNiaM~aA~&BL&KJ?NbVIRv&L_9KnfX3Px-heYFR zxSt#NC7|93VW?)h4yqSHG!GI&=V{M1v{@=#N}`O|J3Bkvw3vQ38~(0VgJGfYx#Eol z+G^<;Bbr~5L3Hp=A#aHinB0`+qOC^lY|vEbZy8-5L6|z!P$Fm9eqmAEG0d? zPw0K0+L&Lxou)}iA>rH?p6ySQY-a(_Q$-h_QuSlCRjDgwrIUF|?c0W>hl1X0{{WN$ z*n+#UrMr*CW%puxj~4T$-OQ6S9yqYJ$$ah*+pl!T_9tg{&Yyiw_EJ@mq>TJmj_pRn zV|y(#yz-xY5ACCE#k$>Vj&h3w4O{`YDLncWL>87@)&D%BN{ zWyr_pB>WW@$i~HBtYElwn1yC{w#?>z$xu6n(e8_3*|ca-)l44#cZpDfKycDu8<3 zrz!(1mI20gry1#otvhrEf>V`h~WPK%Vuw#!k*Cfz}>C3Z8S{G*)3-@ z+miK)Zzg*Wgg1GJVs4y{Ip1OM1zlz>u{buEW)|6=&uxr9c}uZvlFhOOg!6mY_Qx4F7}*6LlpuWM~Zg|;~Q$m<`116#HDy!p4dj8Jt9ZR~;N z)ZR!y%<9}(u-}ho@g-dwBe8fv2BNY$m$QxE`7F%%+*18?^>svbc8ZzAu3TZGiaz)8 zM_L=!W1BNVLBlZZ^V!Xe%Wryur*1KWm{U^IQnT&I>z{(f`Q2o?8jU}5f=@TOyPnhH z>nGMAdZ%h}S@fvIoX&Y6Xcs}|#3^Jsq-^uNb9c(mxDeSITEqHK@x)A3cK zSr~-P(g-4qcj}sFt(!;6;5(4%@%BI*H*rVa_aXA_QwRJ+kLTFXBT64MWVZ84(fn>o zJi;H=-}n|nZKaY=QVv{R^<3i>vv6}+;i6%)b!|L(vOxJfUImi`)zh?YSsXF)BV86e z)l^&3J=ZAq2aLI;lvOXx2=rv~?oxUZ^D3EswyD~Cla3or9vw7+&fhR!Rb~8plMAzF zzc5oO9Z3D$jt$c=)p2x?O!qbX2L%*IE8})%<{XsMug+HrIKnsXzd=|Vlf+UTJg=2 zYTJCR@mX155h9=%(W-?dWiAb`?8EpHj&LpR|Kk{4R@9 zx*EvcB^^^I1C6b55e=@0-y^XvReN&g$a(4cyt_8EaTTNE$9P(*fNuH+zd#j-59)ebWe&vOfz8T#G zL{h^uFW7(eve#;No!0){$4=$KwzDs-eG+%ItqC`PanL3b`Q=v}&G)4h^*_4h2c1E~ zI`27y?YG{5l-5-JmW31RDjV#zaGET(-nDb2i!ZLyfM?Qkk6D~LIVaLn2K`4X`pIt- zwanD(vn#u8uuK{BtNo}OWj!5iPMk5V$Oy6M6d5CN_Fdqcm7DCr*6&7xOC9E?%J*6E z^YB%s%II@CEajY2Xy<{-MLaDoyqu+9j?5M^^)>YF`=P zq3==`^I>P&aQ^$!?(n`++fHhMy5QUUJdhS9Z47L4nEdbH2YUAm3lE26yq!T0sQYhZ z@j9;_**qlUJ6l6Y8q*tO63g7syBODYyWfrDG_kIgI`Zt~86;7(GnxW3^%2i5< zH#B(%K0f6kxtsgssp4{h!PXoWzM=x%hZ&@E%(|}n8QE?h8h|v$+X-)~FN5s%HI7M^ zh9{O^S)Zdvys5by4>%l`aV}+%Oe11(OloH~mYsq>+dtI{(6CP?v>1L$j9#(T(}8?} z)?iwCipc39+``O&4I^g&vbm{^rSeaL(a8^P*TrP}L;m|Ug9vzM< zloZcv-BCNWI{Xm`Ztqq0wxse|_6OwGHfyPv%&pCu-Q`rR#c1%jT>6K!Tb5<#dqw3D z)dkSgJ9ilA#TwbRc+S?)VHu-^&61@xtMb|Z*4JJ>Ul{$0UzNip=w<+c`TTDYm%DW`QTGJRfs44w#d z(M%tdw%6vgn3ZgsM~QFccIJ|w)M3y7h0I$^+IDT@y+C<4s@7Dh#Z20LIL+6hlA=hc zqRd^}{v`Xd2)Bo}{!Hh7{^T}#D(a~pCS4A?wHD~~QHa7jS#sZsny)2w6QpO4!BhGo zwY(x}(OSdlYH7>knkzBmmvTc&&`M=2ap%QarJT}9G34$ltK-~G`15hpU*@H_$Q*cZ z{>m?yAe%8ewbqy7xMD3W)y-L{sazy>RzBTxD0dSM4RXWj#=V-~Jz?zTTq>jDTH7Dq zwU$eDGkE47%$*D5mBEo_ko042RNg=PKJ8hmj567O>QL{Qd%3m>?$7x++YEieNNAl! zPy1@V$hY3NG#*FjFxp2|IxpgdqveDzJ%PzS7Rkxf8*(37A*FEPNxa0XomhC5M%~ySHM6F|c5`JZ-7_MlreN23C#;2kim?i&x%HH8 z!YGJ6x4bplc&|Ui_Ja!>?AzQ-z4y-}$O7E1f6+w8EXyk+Q;TiH6XMRF1&Ugyk&uV| zU4ZcSpje(WiPf>g6~-Gx&)7ksx4C2S9k8B8Zka4#e#REq4|)vAD{Fm5M- z?H%J;EPAmr zUy}On*~MS_V*{aRZ51D!$U5CTxp9fm79F$ClsnAu=V`6WZjOJ1%{*J&Qo0IAM;y-z zDe>HQ5jKuk@c4h_w&Vp;JT{&=goVzMLB;ZFx$^l9CJUms1EfFf`YOy~LCiOH&wHGr ztj0EvFmx=#a7c9~)|K}0I(^A&DqTwyV>WPasY5C&N$lpga?W$wu8{mRWnJhD|x)@1;5>vd|5k&QRY!Qj&ro&a5YxKO{2_ zZSdB3-5JB9BMy@M!-B7~kup|ppThR|EqAGCBr=Ga=H}&pdPWf>*(7d@QT`Qa(6flR zJ>Dt`-I`#w<=msJf;gYJ-sk3D!pYFVRT0gV z#@xbeux}yGGM!g$Im_y$1K}~A)0^H?3`3ig%#^yF%y%wo5JR(DGSjkE}d4zKpHu7ty8+W0Xac$M{q^8_+e?`aD(RKdi+<56>@LL6{ z8ws7;Yb_q6=)E32q`;}-jyK|vTrg>>^5$5T*+9%WE`Cl4$?dKg^?G~uzW{F>MW^^0 z;-EWmfH#FykN*JWPF`(h^l$l6n=I$T!GBu40$sYnxVO$v@+z;}%shIObDw}%oWn0= zH#bFp;&G?zR=Dl^J5Cr}nS15_i@(Rj{{ZwZ-~6}wERk@^yEip+N`;U4;SXryG4&|W3 zs2_{d2p`y@56u3rAaL#qGs{tUt8Q7k4-amfdn)!3gF6tcWjk~SSr10_RiTK|*S?xv zV;!-61TROxaMsab+t<0KN}D{9$Z-LA{QUaI!+bIFd)nBTB4c|D7S&glKF(pq5`0ZM zH|C*qJsYTAUuQr>%>yyZrImSO1CKOS@D4e6eaf4n*G`w!Ry1fl!+gh@&uvC3>^_oq#)X7&ik8vl!FGJ&DyS6#q0Oc~m8t9w= z2+jqy^*AdQ`r4+tm5zzbexZ8Ox!X#-HkP)GR^jj8(#S8~ zJVMJ>VUCM5k?>S->`xNeN!?LG=S@gYrKdbRLfq0+VVg}$=Xh)FAsx8RgnO2=FWW4! z{IJd^J&smL%UVInTHbG1>1Jz0jP}ELtGJ#TV{@A3Ift4ZmQf>v*x