aws-sdk-dynamodb 1.77.0 → 1.79.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +10 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-dynamodb/client.rb +26 -6
- data/lib/aws-sdk-dynamodb/endpoint_parameters.rb +66 -0
- data/lib/aws-sdk-dynamodb/endpoint_provider.rb +123 -0
- data/lib/aws-sdk-dynamodb/endpoints.rb +757 -0
- data/lib/aws-sdk-dynamodb/plugins/endpoints.rb +174 -0
- data/lib/aws-sdk-dynamodb/table.rb +2 -1
- data/lib/aws-sdk-dynamodb/types.rb +26 -10
- data/lib/aws-sdk-dynamodb.rb +5 -1
- metadata +8 -4
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 4d60a5d95ffeb1237be50040d9965a23f98a97d332bcf126f396f3e79840f3d4
         | 
| 4 | 
            +
              data.tar.gz: ce3f5e07e5f38ff1ae93eaacd191038a737e7d6d3092ee609480902738c1d654
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 5a1f010e7405751c57081b45b41fa97e2d04e76c51724283f48e23b210029300e9ee4294462aa5aeaaa9e1ef1e98ea4f42befec48592e95309c3515ca152d334
         | 
| 7 | 
            +
              data.tar.gz: 1894e6f51432e3c02df1ceacc46f780280bd586e17499be466f9a1fa4047666b286be76c30960c487dfc6de0f5caafe850f50288788425f7da31a192c098da11
         | 
    
        data/CHANGELOG.md
    CHANGED
    
    | @@ -1,6 +1,16 @@ | |
| 1 1 | 
             
            Unreleased Changes
         | 
| 2 2 | 
             
            ------------------
         | 
| 3 3 |  | 
| 4 | 
            +
            1.79.0 (2022-11-18)
         | 
| 5 | 
            +
            ------------------
         | 
| 6 | 
            +
             | 
| 7 | 
            +
            * Feature - Updated minor fixes for DynamoDB documentation.
         | 
| 8 | 
            +
             | 
| 9 | 
            +
            1.78.0 (2022-10-25)
         | 
| 10 | 
            +
            ------------------
         | 
| 11 | 
            +
             | 
| 12 | 
            +
            * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
         | 
| 13 | 
            +
             | 
| 4 14 | 
             
            1.77.0 (2022-09-15)
         | 
| 5 15 | 
             
            ------------------
         | 
| 6 16 |  | 
    
        data/VERSION
    CHANGED
    
    | @@ -1 +1 @@ | |
| 1 | 
            -
            1. | 
| 1 | 
            +
            1.79.0
         | 
| @@ -30,7 +30,7 @@ require 'aws-sdk-core/plugins/http_checksum.rb' | |
| 30 30 | 
             
            require 'aws-sdk-core/plugins/checksum_algorithm.rb'
         | 
| 31 31 | 
             
            require 'aws-sdk-core/plugins/defaults_mode.rb'
         | 
| 32 32 | 
             
            require 'aws-sdk-core/plugins/recursion_detection.rb'
         | 
| 33 | 
            -
            require 'aws-sdk-core/plugins/ | 
| 33 | 
            +
            require 'aws-sdk-core/plugins/sign.rb'
         | 
| 34 34 | 
             
            require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
         | 
| 35 35 | 
             
            require 'aws-sdk-dynamodb/plugins/extended_retries.rb'
         | 
| 36 36 | 
             
            require 'aws-sdk-dynamodb/plugins/simple_attributes.rb'
         | 
| @@ -82,11 +82,12 @@ module Aws::DynamoDB | |
| 82 82 | 
             
                add_plugin(Aws::Plugins::ChecksumAlgorithm)
         | 
| 83 83 | 
             
                add_plugin(Aws::Plugins::DefaultsMode)
         | 
| 84 84 | 
             
                add_plugin(Aws::Plugins::RecursionDetection)
         | 
| 85 | 
            -
                add_plugin(Aws::Plugins:: | 
| 85 | 
            +
                add_plugin(Aws::Plugins::Sign)
         | 
| 86 86 | 
             
                add_plugin(Aws::Plugins::Protocols::JsonRpc)
         | 
| 87 87 | 
             
                add_plugin(Aws::DynamoDB::Plugins::ExtendedRetries)
         | 
| 88 88 | 
             
                add_plugin(Aws::DynamoDB::Plugins::SimpleAttributes)
         | 
| 89 89 | 
             
                add_plugin(Aws::DynamoDB::Plugins::CRC32Validation)
         | 
| 90 | 
            +
                add_plugin(Aws::DynamoDB::Plugins::Endpoints)
         | 
| 90 91 |  | 
| 91 92 | 
             
                # @overload initialize(options)
         | 
| 92 93 | 
             
                #   @param [Hash] options
         | 
| @@ -316,6 +317,19 @@ module Aws::DynamoDB | |
| 316 317 | 
             
                #     ** Please note ** When response stubbing is enabled, no HTTP
         | 
| 317 318 | 
             
                #     requests are made, and retries are disabled.
         | 
| 318 319 | 
             
                #
         | 
| 320 | 
            +
                #   @option options [Aws::TokenProvider] :token_provider
         | 
| 321 | 
            +
                #     A Bearer Token Provider. This can be an instance of any one of the
         | 
| 322 | 
            +
                #     following classes:
         | 
| 323 | 
            +
                #
         | 
| 324 | 
            +
                #     * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
         | 
| 325 | 
            +
                #       tokens.
         | 
| 326 | 
            +
                #
         | 
| 327 | 
            +
                #     * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
         | 
| 328 | 
            +
                #       access token generated from `aws login`.
         | 
| 329 | 
            +
                #
         | 
| 330 | 
            +
                #     When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
         | 
| 331 | 
            +
                #     will be used to search for tokens configured for your profile in shared configuration files.
         | 
| 332 | 
            +
                #
         | 
| 319 333 | 
             
                #   @option options [Boolean] :use_dualstack_endpoint
         | 
| 320 334 | 
             
                #     When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
         | 
| 321 335 | 
             
                #     will be used if available.
         | 
| @@ -329,6 +343,9 @@ module Aws::DynamoDB | |
| 329 343 | 
             
                #     When `true`, request parameters are validated before
         | 
| 330 344 | 
             
                #     sending the request.
         | 
| 331 345 | 
             
                #
         | 
| 346 | 
            +
                #   @option options [Aws::DynamoDB::EndpointProvider] :endpoint_provider
         | 
| 347 | 
            +
                #     The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::DynamoDB::EndpointParameters`
         | 
| 348 | 
            +
                #
         | 
| 332 349 | 
             
                #   @option options [URI::HTTP,String] :http_proxy A proxy to send
         | 
| 333 350 | 
             
                #     requests through.  Formatted like 'http://proxy.com:123'.
         | 
| 334 351 | 
             
                #
         | 
| @@ -764,8 +781,11 @@ module Aws::DynamoDB | |
| 764 781 | 
             
                # the API call. For more details on this distinction, see [Naming Rules
         | 
| 765 782 | 
             
                # and Data Types][1].
         | 
| 766 783 | 
             
                #
         | 
| 767 | 
            -
                # <note markdown="1"> `BatchWriteItem` cannot update items.  | 
| 768 | 
            -
                # ` | 
| 784 | 
            +
                # <note markdown="1"> `BatchWriteItem` cannot update items. If you perform a
         | 
| 785 | 
            +
                # `BatchWriteItem` operation on an existing item, that item's values
         | 
| 786 | 
            +
                # will be overwritten by the operation and it will appear like it was
         | 
| 787 | 
            +
                # updated. To update items, we recommend you use the `UpdateItem`
         | 
| 788 | 
            +
                # action.
         | 
| 769 789 | 
             
                #
         | 
| 770 790 | 
             
                #  </note>
         | 
| 771 791 | 
             
                #
         | 
| @@ -4161,7 +4181,7 @@ module Aws::DynamoDB | |
| 4161 4181 | 
             
                # `ReturnValues` parameter.
         | 
| 4162 4182 | 
             
                #
         | 
| 4163 4183 | 
             
                # When you add an item, the primary key attributes are the only required
         | 
| 4164 | 
            -
                # attributes. | 
| 4184 | 
            +
                # attributes.
         | 
| 4165 4185 | 
             
                #
         | 
| 4166 4186 | 
             
                # Empty String and Binary attribute values are allowed. Attribute values
         | 
| 4167 4187 | 
             
                # of type String and Binary must have a length greater than zero if the
         | 
| @@ -7628,7 +7648,7 @@ module Aws::DynamoDB | |
| 7628 7648 | 
             
                    params: params,
         | 
| 7629 7649 | 
             
                    config: config)
         | 
| 7630 7650 | 
             
                  context[:gem_name] = 'aws-sdk-dynamodb'
         | 
| 7631 | 
            -
                  context[:gem_version] = '1. | 
| 7651 | 
            +
                  context[:gem_version] = '1.79.0'
         | 
| 7632 7652 | 
             
                  Seahorse::Client::Request.new(handlers, context)
         | 
| 7633 7653 | 
             
                end
         | 
| 7634 7654 |  | 
| @@ -0,0 +1,66 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            # WARNING ABOUT GENERATED CODE
         | 
| 4 | 
            +
            #
         | 
| 5 | 
            +
            # This file is generated. See the contributing guide for more information:
         | 
| 6 | 
            +
            # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
         | 
| 7 | 
            +
            #
         | 
| 8 | 
            +
            # WARNING ABOUT GENERATED CODE
         | 
| 9 | 
            +
             | 
| 10 | 
            +
            module Aws::DynamoDB
         | 
| 11 | 
            +
              # Endpoint parameters used to influence endpoints per request.
         | 
| 12 | 
            +
              #
         | 
| 13 | 
            +
              # @!attribute region
         | 
| 14 | 
            +
              #   The AWS region used to dispatch the request.
         | 
| 15 | 
            +
              #
         | 
| 16 | 
            +
              #   @return [String]
         | 
| 17 | 
            +
              #
         | 
| 18 | 
            +
              # @!attribute use_dual_stack
         | 
| 19 | 
            +
              #   When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.
         | 
| 20 | 
            +
              #
         | 
| 21 | 
            +
              #   @return [Boolean]
         | 
| 22 | 
            +
              #
         | 
| 23 | 
            +
              # @!attribute use_fips
         | 
| 24 | 
            +
              #   When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.
         | 
| 25 | 
            +
              #
         | 
| 26 | 
            +
              #   @return [Boolean]
         | 
| 27 | 
            +
              #
         | 
| 28 | 
            +
              # @!attribute endpoint
         | 
| 29 | 
            +
              #   Override the endpoint used to send this request
         | 
| 30 | 
            +
              #
         | 
| 31 | 
            +
              #   @return [String]
         | 
| 32 | 
            +
              #
         | 
| 33 | 
            +
              EndpointParameters = Struct.new(
         | 
| 34 | 
            +
                :region,
         | 
| 35 | 
            +
                :use_dual_stack,
         | 
| 36 | 
            +
                :use_fips,
         | 
| 37 | 
            +
                :endpoint,
         | 
| 38 | 
            +
              ) do
         | 
| 39 | 
            +
                include Aws::Structure
         | 
| 40 | 
            +
             | 
| 41 | 
            +
                # @api private
         | 
| 42 | 
            +
                class << self
         | 
| 43 | 
            +
                  PARAM_MAP = {
         | 
| 44 | 
            +
                    'Region' => :region,
         | 
| 45 | 
            +
                    'UseDualStack' => :use_dual_stack,
         | 
| 46 | 
            +
                    'UseFIPS' => :use_fips,
         | 
| 47 | 
            +
                    'Endpoint' => :endpoint,
         | 
| 48 | 
            +
                  }.freeze
         | 
| 49 | 
            +
                end
         | 
| 50 | 
            +
             | 
| 51 | 
            +
                def initialize(options = {})
         | 
| 52 | 
            +
                  self[:region] = options[:region]
         | 
| 53 | 
            +
                  self[:use_dual_stack] = options[:use_dual_stack]
         | 
| 54 | 
            +
                  self[:use_dual_stack] = false if self[:use_dual_stack].nil?
         | 
| 55 | 
            +
                  if self[:use_dual_stack].nil?
         | 
| 56 | 
            +
                    raise ArgumentError, "Missing required EndpointParameter: :use_dual_stack"
         | 
| 57 | 
            +
                  end
         | 
| 58 | 
            +
                  self[:use_fips] = options[:use_fips]
         | 
| 59 | 
            +
                  self[:use_fips] = false if self[:use_fips].nil?
         | 
| 60 | 
            +
                  if self[:use_fips].nil?
         | 
| 61 | 
            +
                    raise ArgumentError, "Missing required EndpointParameter: :use_fips"
         | 
| 62 | 
            +
                  end
         | 
| 63 | 
            +
                  self[:endpoint] = options[:endpoint]
         | 
| 64 | 
            +
                end
         | 
| 65 | 
            +
              end
         | 
| 66 | 
            +
            end
         | 
| @@ -0,0 +1,123 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            # WARNING ABOUT GENERATED CODE
         | 
| 4 | 
            +
            #
         | 
| 5 | 
            +
            # This file is generated. See the contributing guide for more information:
         | 
| 6 | 
            +
            # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
         | 
| 7 | 
            +
            #
         | 
| 8 | 
            +
            # WARNING ABOUT GENERATED CODE
         | 
| 9 | 
            +
             | 
| 10 | 
            +
            module Aws::DynamoDB
         | 
| 11 | 
            +
              class EndpointProvider
         | 
| 12 | 
            +
                def initialize(rule_set = nil)
         | 
| 13 | 
            +
                  @@rule_set ||= begin
         | 
| 14 | 
            +
                    endpoint_rules = Aws::Json.load(Base64.decode64(RULES))
         | 
| 15 | 
            +
                    Aws::Endpoints::RuleSet.new(
         | 
| 16 | 
            +
                      version: endpoint_rules['version'],
         | 
| 17 | 
            +
                      service_id: endpoint_rules['serviceId'],
         | 
| 18 | 
            +
                      parameters: endpoint_rules['parameters'],
         | 
| 19 | 
            +
                      rules: endpoint_rules['rules']
         | 
| 20 | 
            +
                    )
         | 
| 21 | 
            +
                  end
         | 
| 22 | 
            +
                  @provider = Aws::Endpoints::RulesProvider.new(rule_set || @@rule_set)
         | 
| 23 | 
            +
                end
         | 
| 24 | 
            +
             | 
| 25 | 
            +
                def resolve_endpoint(parameters)
         | 
| 26 | 
            +
                  @provider.resolve_endpoint(parameters)
         | 
| 27 | 
            +
                end
         | 
| 28 | 
            +
             | 
| 29 | 
            +
                # @api private
         | 
| 30 | 
            +
                RULES = <<-JSON
         | 
| 31 | 
            +
            eyJ2ZXJzaW9uIjoiMS4wIiwicGFyYW1ldGVycyI6eyJSZWdpb24iOnsiYnVp
         | 
| 32 | 
            +
            bHRJbiI6IkFXUzo6UmVnaW9uIiwicmVxdWlyZWQiOmZhbHNlLCJkb2N1bWVu
         | 
| 33 | 
            +
            dGF0aW9uIjoiVGhlIEFXUyByZWdpb24gdXNlZCB0byBkaXNwYXRjaCB0aGUg
         | 
| 34 | 
            +
            cmVxdWVzdC4iLCJ0eXBlIjoiU3RyaW5nIn0sIlVzZUR1YWxTdGFjayI6eyJi
         | 
| 35 | 
            +
            dWlsdEluIjoiQVdTOjpVc2VEdWFsU3RhY2siLCJyZXF1aXJlZCI6dHJ1ZSwi
         | 
| 36 | 
            +
            ZGVmYXVsdCI6ZmFsc2UsImRvY3VtZW50YXRpb24iOiJXaGVuIHRydWUsIHVz
         | 
| 37 | 
            +
            ZSB0aGUgZHVhbC1zdGFjayBlbmRwb2ludC4gSWYgdGhlIGNvbmZpZ3VyZWQg
         | 
| 38 | 
            +
            ZW5kcG9pbnQgZG9lcyBub3Qgc3VwcG9ydCBkdWFsLXN0YWNrLCBkaXNwYXRj
         | 
| 39 | 
            +
            aGluZyB0aGUgcmVxdWVzdCBNQVkgcmV0dXJuIGFuIGVycm9yLiIsInR5cGUi
         | 
| 40 | 
            +
            OiJCb29sZWFuIn0sIlVzZUZJUFMiOnsiYnVpbHRJbiI6IkFXUzo6VXNlRklQ
         | 
| 41 | 
            +
            UyIsInJlcXVpcmVkIjp0cnVlLCJkZWZhdWx0IjpmYWxzZSwiZG9jdW1lbnRh
         | 
| 42 | 
            +
            dGlvbiI6IldoZW4gdHJ1ZSwgc2VuZCB0aGlzIHJlcXVlc3QgdG8gdGhlIEZJ
         | 
| 43 | 
            +
            UFMtY29tcGxpYW50IHJlZ2lvbmFsIGVuZHBvaW50LiBJZiB0aGUgY29uZmln
         | 
| 44 | 
            +
            dXJlZCBlbmRwb2ludCBkb2VzIG5vdCBoYXZlIGEgRklQUyBjb21wbGlhbnQg
         | 
| 45 | 
            +
            ZW5kcG9pbnQsIGRpc3BhdGNoaW5nIHRoZSByZXF1ZXN0IHdpbGwgcmV0dXJu
         | 
| 46 | 
            +
            IGFuIGVycm9yLiIsInR5cGUiOiJCb29sZWFuIn0sIkVuZHBvaW50Ijp7ImJ1
         | 
| 47 | 
            +
            aWx0SW4iOiJTREs6OkVuZHBvaW50IiwicmVxdWlyZWQiOmZhbHNlLCJkb2N1
         | 
| 48 | 
            +
            bWVudGF0aW9uIjoiT3ZlcnJpZGUgdGhlIGVuZHBvaW50IHVzZWQgdG8gc2Vu
         | 
| 49 | 
            +
            ZCB0aGlzIHJlcXVlc3QiLCJ0eXBlIjoiU3RyaW5nIn19LCJydWxlcyI6W3si
         | 
| 50 | 
            +
            Y29uZGl0aW9ucyI6W3siZm4iOiJhd3MucGFydGl0aW9uIiwiYXJndiI6W3si
         | 
| 51 | 
            +
            cmVmIjoiUmVnaW9uIn1dLCJhc3NpZ24iOiJQYXJ0aXRpb25SZXN1bHQifV0s
         | 
| 52 | 
            +
            InR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZuIjoi
         | 
| 53 | 
            +
            aXNTZXQiLCJhcmd2IjpbeyJyZWYiOiJFbmRwb2ludCJ9XX0seyJmbiI6InBh
         | 
| 54 | 
            +
            cnNlVVJMIiwiYXJndiI6W3sicmVmIjoiRW5kcG9pbnQifV0sImFzc2lnbiI6
         | 
| 55 | 
            +
            InVybCJ9XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6
         | 
| 56 | 
            +
            W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQ
         | 
| 57 | 
            +
            UyJ9LHRydWVdfV0sImVycm9yIjoiSW52YWxpZCBDb25maWd1cmF0aW9uOiBG
         | 
| 58 | 
            +
            SVBTIGFuZCBjdXN0b20gZW5kcG9pbnQgYXJlIG5vdCBzdXBwb3J0ZWQiLCJ0
         | 
| 59 | 
            +
            eXBlIjoiZXJyb3IifSx7ImNvbmRpdGlvbnMiOltdLCJ0eXBlIjoidHJlZSIs
         | 
| 60 | 
            +
            InJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMi
         | 
| 61 | 
            +
            LCJhcmd2IjpbeyJyZWYiOiJVc2VEdWFsU3RhY2sifSx0cnVlXX1dLCJlcnJv
         | 
| 62 | 
            +
            ciI6IkludmFsaWQgQ29uZmlndXJhdGlvbjogRHVhbHN0YWNrIGFuZCBjdXN0
         | 
| 63 | 
            +
            b20gZW5kcG9pbnQgYXJlIG5vdCBzdXBwb3J0ZWQiLCJ0eXBlIjoiZXJyb3Ii
         | 
| 64 | 
            +
            fSx7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1cmwiOnsicmVmIjoi
         | 
| 65 | 
            +
            RW5kcG9pbnQifSwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlw
         | 
| 66 | 
            +
            ZSI6ImVuZHBvaW50In1dfV19LHsiY29uZGl0aW9ucyI6W3siZm4iOiJib29s
         | 
| 67 | 
            +
            ZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQUyJ9LHRydWVdfSx7
         | 
| 68 | 
            +
            ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUR1YWxT
         | 
| 69 | 
            +
            dGFjayJ9LHRydWVdfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRp
         | 
| 70 | 
            +
            dGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsi
         | 
| 71 | 
            +
            Zm4iOiJnZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0
         | 
| 72 | 
            +
            In0sInN1cHBvcnRzRklQUyJdfV19LHsiZm4iOiJib29sZWFuRXF1YWxzIiwi
         | 
| 73 | 
            +
            YXJndiI6W3RydWUseyJmbiI6ImdldEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQ
         | 
| 74 | 
            +
            YXJ0aXRpb25SZXN1bHQifSwic3VwcG9ydHNEdWFsU3RhY2siXX1dfV0sInR5
         | 
| 75 | 
            +
            cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2lu
         | 
| 76 | 
            +
            dCI6eyJ1cmwiOiJodHRwczovL2R5bmFtb2RiLWZpcHMue1JlZ2lvbn0ue1Bh
         | 
| 77 | 
            +
            cnRpdGlvblJlc3VsdCNkdWFsU3RhY2tEbnNTdWZmaXh9IiwicHJvcGVydGll
         | 
| 78 | 
            +
            cyI6e30sImhlYWRlcnMiOnt9fSwidHlwZSI6ImVuZHBvaW50In1dfSx7ImNv
         | 
| 79 | 
            +
            bmRpdGlvbnMiOltdLCJlcnJvciI6IkZJUFMgYW5kIER1YWxTdGFjayBhcmUg
         | 
| 80 | 
            +
            ZW5hYmxlZCwgYnV0IHRoaXMgcGFydGl0aW9uIGRvZXMgbm90IHN1cHBvcnQg
         | 
| 81 | 
            +
            b25lIG9yIGJvdGgiLCJ0eXBlIjoiZXJyb3IifV19LHsiY29uZGl0aW9ucyI6
         | 
| 82 | 
            +
            W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQ
         | 
| 83 | 
            +
            UyJ9LHRydWVdfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlv
         | 
| 84 | 
            +
            bnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsiZm4i
         | 
| 85 | 
            +
            OiJnZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0In0s
         | 
| 86 | 
            +
            InN1cHBvcnRzRklQUyJdfV19XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3si
         | 
| 87 | 
            +
            Y29uZGl0aW9ucyI6W10sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRp
         | 
| 88 | 
            +
            dGlvbnMiOlt7ImZuIjoic3RyaW5nRXF1YWxzIiwiYXJndiI6WyJhd3MtdXMt
         | 
| 89 | 
            +
            Z292Iix7ImZuIjoiZ2V0QXR0ciIsImFyZ3YiOlt7InJlZiI6IlBhcnRpdGlv
         | 
| 90 | 
            +
            blJlc3VsdCJ9LCJuYW1lIl19XX1dLCJlbmRwb2ludCI6eyJ1cmwiOiJodHRw
         | 
| 91 | 
            +
            czovL2R5bmFtb2RiLntSZWdpb259LntQYXJ0aXRpb25SZXN1bHQjZG5zU3Vm
         | 
| 92 | 
            +
            Zml4fSIsInByb3BlcnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJl
         | 
| 93 | 
            +
            bmRwb2ludCJ9LHsiY29uZGl0aW9ucyI6W10sImVuZHBvaW50Ijp7InVybCI6
         | 
| 94 | 
            +
            Imh0dHBzOi8vZHluYW1vZGItZmlwcy57UmVnaW9ufS57UGFydGl0aW9uUmVz
         | 
| 95 | 
            +
            dWx0I2Ruc1N1ZmZpeH0iLCJwcm9wZXJ0aWVzIjp7fSwiaGVhZGVycyI6e319
         | 
| 96 | 
            +
            LCJ0eXBlIjoiZW5kcG9pbnQifV19XX0seyJjb25kaXRpb25zIjpbXSwiZXJy
         | 
| 97 | 
            +
            b3IiOiJGSVBTIGlzIGVuYWJsZWQgYnV0IHRoaXMgcGFydGl0aW9uIGRvZXMg
         | 
| 98 | 
            +
            bm90IHN1cHBvcnQgRklQUyIsInR5cGUiOiJlcnJvciJ9XX0seyJjb25kaXRp
         | 
| 99 | 
            +
            b25zIjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMiLCJhcmd2IjpbeyJyZWYiOiJV
         | 
| 100 | 
            +
            c2VEdWFsU3RhY2sifSx0cnVlXX1dLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpb
         | 
| 101 | 
            +
            eyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMiLCJhcmd2Ijpb
         | 
| 102 | 
            +
            dHJ1ZSx7ImZuIjoiZ2V0QXR0ciIsImFyZ3YiOlt7InJlZiI6IlBhcnRpdGlv
         | 
| 103 | 
            +
            blJlc3VsdCJ9LCJzdXBwb3J0c0R1YWxTdGFjayJdfV19XSwidHlwZSI6InRy
         | 
| 104 | 
            +
            ZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6W10sImVuZHBvaW50Ijp7InVy
         | 
| 105 | 
            +
            bCI6Imh0dHBzOi8vZHluYW1vZGIue1JlZ2lvbn0ue1BhcnRpdGlvblJlc3Vs
         | 
| 106 | 
            +
            dCNkdWFsU3RhY2tEbnNTdWZmaXh9IiwicHJvcGVydGllcyI6e30sImhlYWRl
         | 
| 107 | 
            +
            cnMiOnt9fSwidHlwZSI6ImVuZHBvaW50In1dfSx7ImNvbmRpdGlvbnMiOltd
         | 
| 108 | 
            +
            LCJlcnJvciI6IkR1YWxTdGFjayBpcyBlbmFibGVkIGJ1dCB0aGlzIHBhcnRp
         | 
| 109 | 
            +
            dGlvbiBkb2VzIG5vdCBzdXBwb3J0IER1YWxTdGFjayIsInR5cGUiOiJlcnJv
         | 
| 110 | 
            +
            ciJ9XX0seyJjb25kaXRpb25zIjpbXSwidHlwZSI6InRyZWUiLCJydWxlcyI6
         | 
| 111 | 
            +
            W3siY29uZGl0aW9ucyI6W3siZm4iOiJzdHJpbmdFcXVhbHMiLCJhcmd2Ijpb
         | 
| 112 | 
            +
            eyJyZWYiOiJSZWdpb24ifSwibG9jYWwiXX1dLCJlbmRwb2ludCI6eyJ1cmwi
         | 
| 113 | 
            +
            OiJodHRwczovL2xvY2FsaG9zdDo4MDAwIiwicHJvcGVydGllcyI6eyJhdXRo
         | 
| 114 | 
            +
            U2NoZW1lcyI6W3sibmFtZSI6InNpZ3Y0Iiwic2lnbmluZ1JlZ2lvbiI6InVz
         | 
| 115 | 
            +
            LWVhc3QtMSIsInNpZ25pbmdOYW1lIjoiZHluYW1vZGIifV19LCJoZWFkZXJz
         | 
| 116 | 
            +
            Ijp7fX0sInR5cGUiOiJlbmRwb2ludCJ9LHsiY29uZGl0aW9ucyI6W10sImVu
         | 
| 117 | 
            +
            ZHBvaW50Ijp7InVybCI6Imh0dHBzOi8vZHluYW1vZGIue1JlZ2lvbn0ue1Bh
         | 
| 118 | 
            +
            cnRpdGlvblJlc3VsdCNkbnNTdWZmaXh9IiwicHJvcGVydGllcyI6e30sImhl
         | 
| 119 | 
            +
            YWRlcnMiOnt9fSwidHlwZSI6ImVuZHBvaW50In1dfV19XX0=
         | 
| 120 | 
            +
             | 
| 121 | 
            +
                JSON
         | 
| 122 | 
            +
              end
         | 
| 123 | 
            +
            end
         |