aws-sdk-cognitoidentityprovider 1.72.0 → 1.74.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 85370318e5265e024f71d0aa1c5f5f2a7529c936ed82441d5fe2b0c883d93c4b
4
- data.tar.gz: 8854f639f290948fe54521476702722f6d4ccd38e390dfc8da6f9ae30d9bf07d
3
+ metadata.gz: 354641e6d84b13711594a00465484dc475f43fd98708cc6ebb6b5cd4845d0f0a
4
+ data.tar.gz: 20c05df61f32257cc396593cb3cba9fd781d353281a2eb2587e7b7ddf346abaf
5
5
  SHA512:
6
- metadata.gz: abacf68bc1b3de79157f2845cb23b825f1ec0ddae666007cab620ab7edcd4373b118c17ef0278156629a168fda22150c38f7abda17a08dbba7c191b96ecc66b5
7
- data.tar.gz: fc66122555a3f305733e9403a1b9941f6925a2d98c42dd8945209084e88d6e788e3f47a36b61c5ff66220f496ae0a7f476c2342235c635c94471f8f82dec6716
6
+ metadata.gz: df2966f078929a53b3be4c598ac0b3a120e7eae270dc97844584ccb86ab816422275246a5e20ef1f7794f9087893cb4e77081d9cc78093a53b405e6491b02481
7
+ data.tar.gz: 062bd5966ff56495db66676f5f839211058dc1126a14ed1044239bf155b4aab0f5dd7b314bed66b50afaa54e03d01844a57077826631709da9246a8df75ac335
data/CHANGELOG.md CHANGED
@@ -1,6 +1,18 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.74.0 (2023-05-31)
5
+ ------------------
6
+
7
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
8
+
9
+ 1.73.0 (2023-01-18)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
14
+ * Issue - Replace runtime endpoint resolution approach with generated ruby code.
15
+
4
16
  1.72.0 (2022-10-25)
5
17
  ------------------
6
18
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.72.0
1
+ 1.74.0
@@ -275,6 +275,11 @@ module Aws::CognitoIdentityProvider
275
275
  # in the future.
276
276
  #
277
277
  #
278
+ # @option options [String] :sdk_ua_app_id
279
+ # A unique and opaque application ID that is appended to the
280
+ # User-Agent header as app/<sdk_ua_app_id>. It should have a
281
+ # maximum length of 50.
282
+ #
278
283
  # @option options [String] :secret_access_key
279
284
  #
280
285
  # @option options [String] :session_token
@@ -595,12 +600,12 @@ module Aws::CognitoIdentityProvider
595
600
  # attribute to `True`. You can also do this by calling
596
601
  # [AdminUpdateUserAttributes][1].
597
602
  #
598
- # * **email**\: The email address of the user to whom the message that
603
+ # * **email**: The email address of the user to whom the message that
599
604
  # contains the code and username will be sent. Required if the
600
605
  # `email_verified` attribute is set to `True`, or if `"EMAIL"` is
601
606
  # specified in the `DesiredDeliveryMediums` parameter.
602
607
  #
603
- # * **phone\_number**\: The phone number of the user to whom the message
608
+ # * **phone\_number**: The phone number of the user to whom the message
604
609
  # that contains the code and username will be sent. Required if the
605
610
  # `phone_number_verified` attribute is set to `True`, or if `"SMS"` is
606
611
  # specified in the `DesiredDeliveryMediums` parameter.
@@ -1134,20 +1139,20 @@ module Aws::CognitoIdentityProvider
1134
1139
  #
1135
1140
  # Valid values include:
1136
1141
  #
1137
- # * `USER_SRP_AUTH`\: Authentication flow for the Secure Remote Password
1142
+ # * `USER_SRP_AUTH`: Authentication flow for the Secure Remote Password
1138
1143
  # (SRP) protocol.
1139
1144
  #
1140
- # * `REFRESH_TOKEN_AUTH`/`REFRESH_TOKEN`\: Authentication flow for
1145
+ # * `REFRESH_TOKEN_AUTH`/`REFRESH_TOKEN`: Authentication flow for
1141
1146
  # refreshing the access token and ID token by supplying a valid
1142
1147
  # refresh token.
1143
1148
  #
1144
- # * `CUSTOM_AUTH`\: Custom authentication flow.
1149
+ # * `CUSTOM_AUTH`: Custom authentication flow.
1145
1150
  #
1146
- # * `ADMIN_NO_SRP_AUTH`\: Non-SRP authentication flow; you can pass in
1151
+ # * `ADMIN_NO_SRP_AUTH`: Non-SRP authentication flow; you can pass in
1147
1152
  # the USERNAME and PASSWORD directly if the flow is enabled for
1148
1153
  # calling the app client.
1149
1154
  #
1150
- # * `ADMIN_USER_PASSWORD_AUTH`\: Admin-based user password
1155
+ # * `ADMIN_USER_PASSWORD_AUTH`: Admin-based user password
1151
1156
  # authentication. This replaces the `ADMIN_NO_SRP_AUTH` authentication
1152
1157
  # flow. In this flow, Amazon Cognito receives the password in the
1153
1158
  # request instead of using the SRP process to verify passwords.
@@ -1155,21 +1160,21 @@ module Aws::CognitoIdentityProvider
1155
1160
  # @option params [Hash<String,String>] :auth_parameters
1156
1161
  # The authentication parameters. These are inputs corresponding to the
1157
1162
  # `AuthFlow` that you're invoking. The required values depend on the
1158
- # value of `AuthFlow`\:
1163
+ # value of `AuthFlow`:
1159
1164
  #
1160
- # * For `USER_SRP_AUTH`\: `USERNAME` (required), `SRP_A` (required),
1165
+ # * For `USER_SRP_AUTH`: `USERNAME` (required), `SRP_A` (required),
1161
1166
  # `SECRET_HASH` (required if the app client is configured with a
1162
1167
  # client secret), `DEVICE_KEY`.
1163
1168
  #
1164
- # * For `REFRESH_TOKEN_AUTH/REFRESH_TOKEN`\: `REFRESH_TOKEN` (required),
1169
+ # * For `REFRESH_TOKEN_AUTH/REFRESH_TOKEN`: `REFRESH_TOKEN` (required),
1165
1170
  # `SECRET_HASH` (required if the app client is configured with a
1166
1171
  # client secret), `DEVICE_KEY`.
1167
1172
  #
1168
- # * For `ADMIN_NO_SRP_AUTH`\: `USERNAME` (required), `SECRET_HASH` (if
1173
+ # * For `ADMIN_NO_SRP_AUTH`: `USERNAME` (required), `SECRET_HASH` (if
1169
1174
  # app client is configured with client secret), `PASSWORD` (required),
1170
1175
  # `DEVICE_KEY`.
1171
1176
  #
1172
- # * For `CUSTOM_AUTH`\: `USERNAME` (required), `SECRET_HASH` (if app
1177
+ # * For `CUSTOM_AUTH`: `USERNAME` (required), `SECRET_HASH` (if app
1173
1178
  # client is configured with client secret), `DEVICE_KEY`. To start the
1174
1179
  # authentication flow with password verification, include
1175
1180
  # `ChallengeName: SRP_A` and `SRP_A: (The SRP_A Value)`.
@@ -1761,10 +1766,10 @@ module Aws::CognitoIdentityProvider
1761
1766
  # The challenge responses. These are inputs corresponding to the value
1762
1767
  # of `ChallengeName`, for example:
1763
1768
  #
1764
- # * `SMS_MFA`\: `SMS_MFA_CODE`, `USERNAME`, `SECRET_HASH` (if app client
1769
+ # * `SMS_MFA`: `SMS_MFA_CODE`, `USERNAME`, `SECRET_HASH` (if app client
1765
1770
  # is configured with client secret).
1766
1771
  #
1767
- # * `PASSWORD_VERIFIER`\: `PASSWORD_CLAIM_SIGNATURE`,
1772
+ # * `PASSWORD_VERIFIER`: `PASSWORD_CLAIM_SIGNATURE`,
1768
1773
  # `PASSWORD_CLAIM_SECRET_BLOCK`, `TIMESTAMP`, `USERNAME`,
1769
1774
  # `SECRET_HASH` (if app client is configured with client secret).
1770
1775
  #
@@ -1773,10 +1778,10 @@ module Aws::CognitoIdentityProvider
1773
1778
  #
1774
1779
  # </note>
1775
1780
  #
1776
- # * `ADMIN_NO_SRP_AUTH`\: `PASSWORD`, `USERNAME`, `SECRET_HASH` (if app
1781
+ # * `ADMIN_NO_SRP_AUTH`: `PASSWORD`, `USERNAME`, `SECRET_HASH` (if app
1777
1782
  # client is configured with client secret).
1778
1783
  #
1779
- # * `NEW_PASSWORD_REQUIRED`\: `NEW_PASSWORD`, `USERNAME`, `SECRET_HASH`
1784
+ # * `NEW_PASSWORD_REQUIRED`: `NEW_PASSWORD`, `USERNAME`, `SECRET_HASH`
1780
1785
  # (if app client is configured with client secret). To set any
1781
1786
  # required attributes that Amazon Cognito returned as
1782
1787
  # `requiredAttributes` in the `AdminInitiateAuth` response, add a
@@ -3468,23 +3473,23 @@ module Aws::CognitoIdentityProvider
3468
3473
  #
3469
3474
  # Valid values include:
3470
3475
  #
3471
- # * `ALLOW_ADMIN_USER_PASSWORD_AUTH`\: Enable admin based user password
3476
+ # * `ALLOW_ADMIN_USER_PASSWORD_AUTH`: Enable admin based user password
3472
3477
  # authentication flow `ADMIN_USER_PASSWORD_AUTH`. This setting
3473
3478
  # replaces the `ADMIN_NO_SRP_AUTH` setting. With this authentication
3474
3479
  # flow, your app passes a user name and password to Amazon Cognito in
3475
3480
  # the request, instead of using the Secure Remote Password (SRP)
3476
3481
  # protocol to securely transmit the password.
3477
3482
  #
3478
- # * `ALLOW_CUSTOM_AUTH`\: Enable Lambda trigger based authentication.
3483
+ # * `ALLOW_CUSTOM_AUTH`: Enable Lambda trigger based authentication.
3479
3484
  #
3480
- # * `ALLOW_USER_PASSWORD_AUTH`\: Enable user password-based
3485
+ # * `ALLOW_USER_PASSWORD_AUTH`: Enable user password-based
3481
3486
  # authentication. In this flow, Amazon Cognito receives the password
3482
3487
  # in the request instead of using the SRP protocol to verify
3483
3488
  # passwords.
3484
3489
  #
3485
- # * `ALLOW_USER_SRP_AUTH`\: Enable SRP-based authentication.
3490
+ # * `ALLOW_USER_SRP_AUTH`: Enable SRP-based authentication.
3486
3491
  #
3487
- # * `ALLOW_REFRESH_TOKEN_AUTH`\: Enable authflow to refresh tokens.
3492
+ # * `ALLOW_REFRESH_TOKEN_AUTH`: Enable authflow to refresh tokens.
3488
3493
  #
3489
3494
  # In some environments, you will see the values `ADMIN_NO_SRP_AUTH`,
3490
3495
  # `CUSTOM_AUTH_FLOW_ONLY`, or `USER_PASSWORD_AUTH`. You can't assign
@@ -5041,16 +5046,16 @@ module Aws::CognitoIdentityProvider
5041
5046
  #
5042
5047
  # Valid values include:
5043
5048
  #
5044
- # * `USER_SRP_AUTH`\: Authentication flow for the Secure Remote Password
5049
+ # * `USER_SRP_AUTH`: Authentication flow for the Secure Remote Password
5045
5050
  # (SRP) protocol.
5046
5051
  #
5047
- # * `REFRESH_TOKEN_AUTH`/`REFRESH_TOKEN`\: Authentication flow for
5052
+ # * `REFRESH_TOKEN_AUTH`/`REFRESH_TOKEN`: Authentication flow for
5048
5053
  # refreshing the access token and ID token by supplying a valid
5049
5054
  # refresh token.
5050
5055
  #
5051
- # * `CUSTOM_AUTH`\: Custom authentication flow.
5056
+ # * `CUSTOM_AUTH`: Custom authentication flow.
5052
5057
  #
5053
- # * `USER_PASSWORD_AUTH`\: Non-SRP authentication flow; user name and
5058
+ # * `USER_PASSWORD_AUTH`: Non-SRP authentication flow; user name and
5054
5059
  # password are passed directly. If a user migration Lambda trigger is
5055
5060
  # set, this flow will invoke the user migration Lambda if it doesn't
5056
5061
  # find the user name in the user pool.
@@ -5060,17 +5065,17 @@ module Aws::CognitoIdentityProvider
5060
5065
  # @option params [Hash<String,String>] :auth_parameters
5061
5066
  # The authentication parameters. These are inputs corresponding to the
5062
5067
  # `AuthFlow` that you're invoking. The required values depend on the
5063
- # value of `AuthFlow`\:
5068
+ # value of `AuthFlow`:
5064
5069
  #
5065
- # * For `USER_SRP_AUTH`\: `USERNAME` (required), `SRP_A` (required),
5070
+ # * For `USER_SRP_AUTH`: `USERNAME` (required), `SRP_A` (required),
5066
5071
  # `SECRET_HASH` (required if the app client is configured with a
5067
5072
  # client secret), `DEVICE_KEY`.
5068
5073
  #
5069
- # * For `REFRESH_TOKEN_AUTH/REFRESH_TOKEN`\: `REFRESH_TOKEN` (required),
5074
+ # * For `REFRESH_TOKEN_AUTH/REFRESH_TOKEN`: `REFRESH_TOKEN` (required),
5070
5075
  # `SECRET_HASH` (required if the app client is configured with a
5071
5076
  # client secret), `DEVICE_KEY`.
5072
5077
  #
5073
- # * For `CUSTOM_AUTH`\: `USERNAME` (required), `SECRET_HASH` (if app
5078
+ # * For `CUSTOM_AUTH`: `USERNAME` (required), `SECRET_HASH` (if app
5074
5079
  # client is configured with client secret), `DEVICE_KEY`. To start the
5075
5080
  # authentication flow with password verification, include
5076
5081
  # `ChallengeName: SRP_A` and `SRP_A: (The SRP_A Value)`.
@@ -5610,14 +5615,14 @@ module Aws::CognitoIdentityProvider
5610
5615
  # be escaped using the backslash (\\) character. For example,
5611
5616
  # "`family_name` = \\"Reddy\\"".
5612
5617
  #
5613
- # * *AttributeName*\: The name of the attribute to search for. You can
5618
+ # * *AttributeName*: The name of the attribute to search for. You can
5614
5619
  # only search for one attribute at a time.
5615
5620
  #
5616
- # * *Filter-Type*\: For an exact match, use =, for example,
5621
+ # * *Filter-Type*: For an exact match, use =, for example,
5617
5622
  # "`given_name` = \\"Jon\\"". For a prefix ("starts with")
5618
5623
  # match, use ^=, for example, "`given_name` ^= \\"Jon\\"".
5619
5624
  #
5620
- # * *AttributeValue*\: The attribute value that must be matched for each
5625
+ # * *AttributeValue*: The attribute value that must be matched for each
5621
5626
  # user.
5622
5627
  #
5623
5628
  # If the filter string is empty, `ListUsers` returns all users in the
@@ -5956,9 +5961,9 @@ module Aws::CognitoIdentityProvider
5956
5961
  #
5957
5962
  # </note>
5958
5963
  #
5959
- # * `SMS_MFA`\: `SMS_MFA_CODE`, `USERNAME`.
5964
+ # * `SMS_MFA`: `SMS_MFA_CODE`, `USERNAME`.
5960
5965
  #
5961
- # * `PASSWORD_VERIFIER`\: `PASSWORD_CLAIM_SIGNATURE`,
5966
+ # * `PASSWORD_VERIFIER`: `PASSWORD_CLAIM_SIGNATURE`,
5962
5967
  # `PASSWORD_CLAIM_SECRET_BLOCK`, `TIMESTAMP`, `USERNAME`.
5963
5968
  #
5964
5969
  # <note markdown="1"> `PASSWORD_VERIFIER` requires `DEVICE_KEY` when you sign in with a
@@ -5966,7 +5971,7 @@ module Aws::CognitoIdentityProvider
5966
5971
  #
5967
5972
  # </note>
5968
5973
  #
5969
- # * `NEW_PASSWORD_REQUIRED`\: `NEW_PASSWORD`, `USERNAME`, `SECRET_HASH`
5974
+ # * `NEW_PASSWORD_REQUIRED`: `NEW_PASSWORD`, `USERNAME`, `SECRET_HASH`
5970
5975
  # (if app client is configured with client secret). To set any
5971
5976
  # required attributes that Amazon Cognito returned as
5972
5977
  # `requiredAttributes` in the `InitiateAuth` response, add a
@@ -5983,7 +5988,7 @@ module Aws::CognitoIdentityProvider
5983
5988
  #
5984
5989
  # </note>
5985
5990
  #
5986
- # * `SOFTWARE_TOKEN_MFA`\: `USERNAME` and `SOFTWARE_TOKEN_MFA_CODE` are
5991
+ # * `SOFTWARE_TOKEN_MFA`: `USERNAME` and `SOFTWARE_TOKEN_MFA_CODE` are
5987
5992
  # required attributes.
5988
5993
  #
5989
5994
  # * `DEVICE_SRP_AUTH` requires `USERNAME`, `DEVICE_KEY`, `SRP_A` (and
@@ -7546,23 +7551,23 @@ module Aws::CognitoIdentityProvider
7546
7551
  #
7547
7552
  # Valid values include:
7548
7553
  #
7549
- # * `ALLOW_ADMIN_USER_PASSWORD_AUTH`\: Enable admin based user password
7554
+ # * `ALLOW_ADMIN_USER_PASSWORD_AUTH`: Enable admin based user password
7550
7555
  # authentication flow `ADMIN_USER_PASSWORD_AUTH`. This setting
7551
7556
  # replaces the `ADMIN_NO_SRP_AUTH` setting. With this authentication
7552
7557
  # flow, your app passes a user name and password to Amazon Cognito in
7553
7558
  # the request, instead of using the Secure Remote Password (SRP)
7554
7559
  # protocol to securely transmit the password.
7555
7560
  #
7556
- # * `ALLOW_CUSTOM_AUTH`\: Enable Lambda trigger based authentication.
7561
+ # * `ALLOW_CUSTOM_AUTH`: Enable Lambda trigger based authentication.
7557
7562
  #
7558
- # * `ALLOW_USER_PASSWORD_AUTH`\: Enable user password-based
7563
+ # * `ALLOW_USER_PASSWORD_AUTH`: Enable user password-based
7559
7564
  # authentication. In this flow, Amazon Cognito receives the password
7560
7565
  # in the request instead of using the SRP protocol to verify
7561
7566
  # passwords.
7562
7567
  #
7563
- # * `ALLOW_USER_SRP_AUTH`\: Enable SRP-based authentication.
7568
+ # * `ALLOW_USER_SRP_AUTH`: Enable SRP-based authentication.
7564
7569
  #
7565
- # * `ALLOW_REFRESH_TOKEN_AUTH`\: Enable authflow to refresh tokens.
7570
+ # * `ALLOW_REFRESH_TOKEN_AUTH`: Enable authflow to refresh tokens.
7566
7571
  #
7567
7572
  # In some environments, you will see the values `ADMIN_NO_SRP_AUTH`,
7568
7573
  # `CUSTOM_AUTH_FLOW_ONLY`, or `USER_PASSWORD_AUTH`. You can't assign
@@ -7987,7 +7992,7 @@ module Aws::CognitoIdentityProvider
7987
7992
  params: params,
7988
7993
  config: config)
7989
7994
  context[:gem_name] = 'aws-sdk-cognitoidentityprovider'
7990
- context[:gem_version] = '1.72.0'
7995
+ context[:gem_version] = '1.74.0'
7991
7996
  Seahorse::Client::Request.new(handlers, context)
7992
7997
  end
7993
7998
 
@@ -9,104 +9,43 @@
9
9
 
10
10
  module Aws::CognitoIdentityProvider
11
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
- )
12
+ def resolve_endpoint(parameters)
13
+ region = parameters.region
14
+ use_dual_stack = parameters.use_dual_stack
15
+ use_fips = parameters.use_fips
16
+ endpoint = parameters.endpoint
17
+ if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
18
+ if Aws::Endpoints::Matchers.set?(endpoint) && (url = Aws::Endpoints::Matchers.parse_url(endpoint))
19
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
20
+ raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
21
+ end
22
+ if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
23
+ raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
24
+ end
25
+ return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
26
+ end
27
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
28
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
29
+ return Aws::Endpoints::Endpoint.new(url: "https://cognito-idp-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
30
+ end
31
+ raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
32
+ end
33
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
34
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
35
+ return Aws::Endpoints::Endpoint.new(url: "https://cognito-idp-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
36
+ end
37
+ raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
38
+ end
39
+ if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
40
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
41
+ return Aws::Endpoints::Endpoint.new(url: "https://cognito-idp.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
42
+ end
43
+ raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
44
+ end
45
+ return Aws::Endpoints::Endpoint.new(url: "https://cognito-idp.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
21
46
  end
22
- @provider = Aws::Endpoints::RulesProvider.new(rule_set || @@rule_set)
23
- end
47
+ raise ArgumentError, 'No endpoint could be resolved'
24
48
 
25
- def resolve_endpoint(parameters)
26
- @provider.resolve_endpoint(parameters)
27
49
  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
- dCI6eyJ1cmwiOiJodHRwczovL2NvZ25pdG8taWRwLWZpcHMue1JlZ2lvbn0u
77
- e1BhcnRpdGlvblJlc3VsdCNkdWFsU3RhY2tEbnNTdWZmaXh9IiwicHJvcGVy
78
- dGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlwZSI6ImVuZHBvaW50In1dfSx7
79
- ImNvbmRpdGlvbnMiOltdLCJlcnJvciI6IkZJUFMgYW5kIER1YWxTdGFjayBh
80
- cmUgZW5hYmxlZCwgYnV0IHRoaXMgcGFydGl0aW9uIGRvZXMgbm90IHN1cHBv
81
- cnQgb25lIG9yIGJvdGgiLCJ0eXBlIjoiZXJyb3IifV19LHsiY29uZGl0aW9u
82
- cyI6W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNl
83
- RklQUyJ9LHRydWVdfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRp
84
- dGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsi
85
- Zm4iOiJnZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0
86
- In0sInN1cHBvcnRzRklQUyJdfV19XSwidHlwZSI6InRyZWUiLCJydWxlcyI6
87
- W3siY29uZGl0aW9ucyI6W10sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNv
88
- bmRpdGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1cmwiOiJodHRwczovL2NvZ25p
89
- dG8taWRwLWZpcHMue1JlZ2lvbn0ue1BhcnRpdGlvblJlc3VsdCNkbnNTdWZm
90
- aXh9IiwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlwZSI6ImVu
91
- ZHBvaW50In1dfV19LHsiY29uZGl0aW9ucyI6W10sImVycm9yIjoiRklQUyBp
92
- cyBlbmFibGVkIGJ1dCB0aGlzIHBhcnRpdGlvbiBkb2VzIG5vdCBzdXBwb3J0
93
- IEZJUFMiLCJ0eXBlIjoiZXJyb3IifV19LHsiY29uZGl0aW9ucyI6W3siZm4i
94
- OiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRHVhbFN0YWNr
95
- In0sdHJ1ZV19XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9u
96
- cyI6W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3RydWUseyJmbiI6
97
- ImdldEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQYXJ0aXRpb25SZXN1bHQifSwi
98
- c3VwcG9ydHNEdWFsU3RhY2siXX1dfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMi
99
- Olt7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1cmwiOiJodHRwczov
100
- L2NvZ25pdG8taWRwLntSZWdpb259LntQYXJ0aXRpb25SZXN1bHQjZHVhbFN0
101
- YWNrRG5zU3VmZml4fSIsInByb3BlcnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0s
102
- InR5cGUiOiJlbmRwb2ludCJ9XX0seyJjb25kaXRpb25zIjpbXSwiZXJyb3Ii
103
- OiJEdWFsU3RhY2sgaXMgZW5hYmxlZCBidXQgdGhpcyBwYXJ0aXRpb24gZG9l
104
- cyBub3Qgc3VwcG9ydCBEdWFsU3RhY2siLCJ0eXBlIjoiZXJyb3IifV19LHsi
105
- Y29uZGl0aW9ucyI6W10sImVuZHBvaW50Ijp7InVybCI6Imh0dHBzOi8vY29n
106
- bml0by1pZHAue1JlZ2lvbn0ue1BhcnRpdGlvblJlc3VsdCNkbnNTdWZmaXh9
107
- IiwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlwZSI6ImVuZHBv
108
- aW50In1dfV19
109
-
110
- JSON
111
50
  end
112
51
  end