aws-sdk-appflow 1.31.0 → 1.33.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8248e95f418c4d916584dc2e91f4d9dd5dd60116f2f281a30b44e652f1aa4cb9
4
- data.tar.gz: b10ddf4f889d2cc0d93c2f80b5ba50daadfc5c7fba3069d197f892a940f3448f
3
+ metadata.gz: b560c5a8250ce2382f44455bf51b679249775d938b1f1e14560fe2793bc8b707
4
+ data.tar.gz: 4b82b631c091c2a4d4887eaf6a18aed6d2bb11e20107349e889fddaf038a4377
5
5
  SHA512:
6
- metadata.gz: 490629c61befad81f2dbfb9b41f54c685bf4a6f07f09ad7a76568b6b39d5a4dd4ec512e9900a3018032b74ef7cd480665347850afbd73084a81e41a970ef201e
7
- data.tar.gz: c9492f73d1b31dedba65376f7bd1d3067be8c300ae1e7cfe0e5c4d962fee482cb68a23bfb1417abbe9a4f61cf0ad4803ef478fc65bf6dbe7ac0a720a58909d6a
6
+ metadata.gz: 8c3638bb9094af2817d3f2462cf9c4754c1afe301a73ec4c1fcc28d4371a0b26a9270035ae67ab3df9553842df5c9214f40c67b9a87fca70d8cf0462183dab25
7
+ data.tar.gz: 44fac29a619fb153f3505e775fed786c5cdbf212ada7789b28ae0cdb894f580bb7580b8a4e5cde246fb5582b2a963e5e7822d587bd939b6668fe47cbb98f1a6c
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.33.0 (2022-12-16)
5
+ ------------------
6
+
7
+ * Feature - This release updates the ListConnectorEntities API action so that it returns paginated responses that customers can retrieve with next tokens.
8
+
9
+ 1.32.0 (2022-11-22)
10
+ ------------------
11
+
12
+ * Feature - Adding support for Amazon AppFlow to transfer the data to Amazon Redshift databases through Amazon Redshift Data API service. This feature will support the Redshift destination connector on both public and private accessible Amazon Redshift Clusters and Amazon Redshift Serverless.
13
+
4
14
  1.31.0 (2022-11-18)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.31.0
1
+ 1.33.0
@@ -436,10 +436,15 @@ module Aws::Appflow
436
436
  # instance_url: "InstanceUrl", # required
437
437
  # },
438
438
  # redshift: {
439
- # database_url: "DatabaseUrl", # required
439
+ # database_url: "DatabaseUrl",
440
440
  # bucket_name: "BucketName", # required
441
441
  # bucket_prefix: "BucketPrefix",
442
442
  # role_arn: "RoleArn", # required
443
+ # data_api_role_arn: "DataApiRoleArn",
444
+ # is_redshift_serverless: false,
445
+ # cluster_identifier: "ClusterIdentifier",
446
+ # workgroup_name: "WorkgroupName",
447
+ # database_name: "DatabaseName",
443
448
  # },
444
449
  # salesforce: {
445
450
  # instance_url: "InstanceUrl",
@@ -496,7 +501,7 @@ module Aws::Appflow
496
501
  # },
497
502
  # },
498
503
  # },
499
- # connector_profile_credentials: { # required
504
+ # connector_profile_credentials: {
500
505
  # amplitude: {
501
506
  # api_key: "ApiKey", # required
502
507
  # secret_key: "SecretKey", # required
@@ -542,8 +547,8 @@ module Aws::Appflow
542
547
  # },
543
548
  # },
544
549
  # redshift: {
545
- # username: "Username", # required
546
- # password: "Password", # required
550
+ # username: "String",
551
+ # password: "Password",
547
552
  # },
548
553
  # salesforce: {
549
554
  # access_token: "AccessToken",
@@ -1299,6 +1304,11 @@ module Aws::Appflow
1299
1304
  # resp.connector_profile_details[0].connector_profile_properties.redshift.bucket_name #=> String
1300
1305
  # resp.connector_profile_details[0].connector_profile_properties.redshift.bucket_prefix #=> String
1301
1306
  # resp.connector_profile_details[0].connector_profile_properties.redshift.role_arn #=> String
1307
+ # resp.connector_profile_details[0].connector_profile_properties.redshift.data_api_role_arn #=> String
1308
+ # resp.connector_profile_details[0].connector_profile_properties.redshift.is_redshift_serverless #=> Boolean
1309
+ # resp.connector_profile_details[0].connector_profile_properties.redshift.cluster_identifier #=> String
1310
+ # resp.connector_profile_details[0].connector_profile_properties.redshift.workgroup_name #=> String
1311
+ # resp.connector_profile_details[0].connector_profile_properties.redshift.database_name #=> String
1302
1312
  # resp.connector_profile_details[0].connector_profile_properties.salesforce.instance_url #=> String
1303
1313
  # resp.connector_profile_details[0].connector_profile_properties.salesforce.is_sandbox_environment #=> Boolean
1304
1314
  # resp.connector_profile_details[0].connector_profile_properties.service_now.instance_url #=> String
@@ -1795,9 +1805,19 @@ module Aws::Appflow
1795
1805
  # @option params [String] :api_version
1796
1806
  # The version of the API that's used by the connector.
1797
1807
  #
1808
+ # @option params [Integer] :max_results
1809
+ # The maximum number of items that the operation returns in the
1810
+ # response.
1811
+ #
1812
+ # @option params [String] :next_token
1813
+ # A token that was provided by your prior `ListConnectorEntities`
1814
+ # operation if the response was too big for the page size. You specify
1815
+ # this token to get the next page of results in paginated response.
1816
+ #
1798
1817
  # @return [Types::ListConnectorEntitiesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1799
1818
  #
1800
1819
  # * {Types::ListConnectorEntitiesResponse#connector_entity_map #connector_entity_map} => Hash<String,Array<Types::ConnectorEntity>>
1820
+ # * {Types::ListConnectorEntitiesResponse#next_token #next_token} => String
1801
1821
  #
1802
1822
  # @example Request syntax with placeholder values
1803
1823
  #
@@ -1806,6 +1826,8 @@ module Aws::Appflow
1806
1826
  # connector_type: "Salesforce", # accepts Salesforce, Singular, Slack, Redshift, S3, Marketo, Googleanalytics, Zendesk, Servicenow, Datadog, Trendmicro, Snowflake, Dynatrace, Infornexus, Amplitude, Veeva, EventBridge, LookoutMetrics, Upsolver, Honeycode, CustomerProfiles, SAPOData, CustomConnector
1807
1827
  # entities_path: "EntitiesPath",
1808
1828
  # api_version: "ApiVersion",
1829
+ # max_results: 1,
1830
+ # next_token: "NextToken",
1809
1831
  # })
1810
1832
  #
1811
1833
  # @example Response structure
@@ -1815,6 +1837,7 @@ module Aws::Appflow
1815
1837
  # resp.connector_entity_map["Group"][0].name #=> String
1816
1838
  # resp.connector_entity_map["Group"][0].label #=> String
1817
1839
  # resp.connector_entity_map["Group"][0].has_nested_entities #=> Boolean
1840
+ # resp.next_token #=> String
1818
1841
  #
1819
1842
  # @see http://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/ListConnectorEntities AWS API Documentation
1820
1843
  #
@@ -2205,10 +2228,15 @@ module Aws::Appflow
2205
2228
  # instance_url: "InstanceUrl", # required
2206
2229
  # },
2207
2230
  # redshift: {
2208
- # database_url: "DatabaseUrl", # required
2231
+ # database_url: "DatabaseUrl",
2209
2232
  # bucket_name: "BucketName", # required
2210
2233
  # bucket_prefix: "BucketPrefix",
2211
2234
  # role_arn: "RoleArn", # required
2235
+ # data_api_role_arn: "DataApiRoleArn",
2236
+ # is_redshift_serverless: false,
2237
+ # cluster_identifier: "ClusterIdentifier",
2238
+ # workgroup_name: "WorkgroupName",
2239
+ # database_name: "DatabaseName",
2212
2240
  # },
2213
2241
  # salesforce: {
2214
2242
  # instance_url: "InstanceUrl",
@@ -2265,7 +2293,7 @@ module Aws::Appflow
2265
2293
  # },
2266
2294
  # },
2267
2295
  # },
2268
- # connector_profile_credentials: { # required
2296
+ # connector_profile_credentials: {
2269
2297
  # amplitude: {
2270
2298
  # api_key: "ApiKey", # required
2271
2299
  # secret_key: "SecretKey", # required
@@ -2311,8 +2339,8 @@ module Aws::Appflow
2311
2339
  # },
2312
2340
  # },
2313
2341
  # redshift: {
2314
- # username: "Username", # required
2315
- # password: "Password", # required
2342
+ # username: "String",
2343
+ # password: "Password",
2316
2344
  # },
2317
2345
  # salesforce: {
2318
2346
  # access_token: "AccessToken",
@@ -2796,7 +2824,7 @@ module Aws::Appflow
2796
2824
  params: params,
2797
2825
  config: config)
2798
2826
  context[:gem_name] = 'aws-sdk-appflow'
2799
- context[:gem_version] = '1.31.0'
2827
+ context[:gem_version] = '1.33.0'
2800
2828
  Seahorse::Client::Request.new(handlers, context)
2801
2829
  end
2802
2830
 
@@ -50,6 +50,7 @@ module Aws::Appflow
50
50
  ClientId = Shapes::StringShape.new(name: 'ClientId')
51
51
  ClientNumber = Shapes::StringShape.new(name: 'ClientNumber')
52
52
  ClientSecret = Shapes::StringShape.new(name: 'ClientSecret')
53
+ ClusterIdentifier = Shapes::StringShape.new(name: 'ClusterIdentifier')
53
54
  ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
54
55
  ConnectionMode = Shapes::StringShape.new(name: 'ConnectionMode')
55
56
  ConnectorAuthenticationException = Shapes::StructureShape.new(name: 'ConnectorAuthenticationException')
@@ -113,7 +114,9 @@ module Aws::Appflow
113
114
  CustomPropertyValue = Shapes::StringShape.new(name: 'CustomPropertyValue')
114
115
  CustomerProfilesDestinationProperties = Shapes::StructureShape.new(name: 'CustomerProfilesDestinationProperties')
115
116
  CustomerProfilesMetadata = Shapes::StructureShape.new(name: 'CustomerProfilesMetadata')
117
+ DataApiRoleArn = Shapes::StringShape.new(name: 'DataApiRoleArn')
116
118
  DataPullMode = Shapes::StringShape.new(name: 'DataPullMode')
119
+ DatabaseName = Shapes::StringShape.new(name: 'DatabaseName')
117
120
  DatabaseUrl = Shapes::StringShape.new(name: 'DatabaseUrl')
118
121
  DatadogConnectorOperator = Shapes::StringShape.new(name: 'DatadogConnectorOperator')
119
122
  DatadogConnectorProfileCredentials = Shapes::StructureShape.new(name: 'DatadogConnectorProfileCredentials')
@@ -211,6 +214,7 @@ module Aws::Appflow
211
214
  ListConnectorEntitiesResponse = Shapes::StructureShape.new(name: 'ListConnectorEntitiesResponse')
212
215
  ListConnectorsRequest = Shapes::StructureShape.new(name: 'ListConnectorsRequest')
213
216
  ListConnectorsResponse = Shapes::StructureShape.new(name: 'ListConnectorsResponse')
217
+ ListEntitiesMaxResults = Shapes::IntegerShape.new(name: 'ListEntitiesMaxResults')
214
218
  ListFlowsRequest = Shapes::StructureShape.new(name: 'ListFlowsRequest')
215
219
  ListFlowsResponse = Shapes::StructureShape.new(name: 'ListFlowsResponse')
216
220
  ListTagsForResourceRequest = Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
@@ -393,6 +397,7 @@ module Aws::Appflow
393
397
  VeevaMetadata = Shapes::StructureShape.new(name: 'VeevaMetadata')
394
398
  VeevaSourceProperties = Shapes::StructureShape.new(name: 'VeevaSourceProperties')
395
399
  Warehouse = Shapes::StringShape.new(name: 'Warehouse')
400
+ WorkgroupName = Shapes::StringShape.new(name: 'WorkgroupName')
396
401
  WriteOperationType = Shapes::StringShape.new(name: 'WriteOperationType')
397
402
  ZendeskConnectorOperator = Shapes::StringShape.new(name: 'ZendeskConnectorOperator')
398
403
  ZendeskConnectorProfileCredentials = Shapes::StructureShape.new(name: 'ZendeskConnectorProfileCredentials')
@@ -584,7 +589,7 @@ module Aws::Appflow
584
589
  ConnectorProfile.struct_class = Types::ConnectorProfile
585
590
 
586
591
  ConnectorProfileConfig.add_member(:connector_profile_properties, Shapes::ShapeRef.new(shape: ConnectorProfileProperties, required: true, location_name: "connectorProfileProperties"))
587
- ConnectorProfileConfig.add_member(:connector_profile_credentials, Shapes::ShapeRef.new(shape: ConnectorProfileCredentials, required: true, location_name: "connectorProfileCredentials"))
592
+ ConnectorProfileConfig.add_member(:connector_profile_credentials, Shapes::ShapeRef.new(shape: ConnectorProfileCredentials, location_name: "connectorProfileCredentials"))
588
593
  ConnectorProfileConfig.struct_class = Types::ConnectorProfileConfig
589
594
 
590
595
  ConnectorProfileCredentials.add_member(:amplitude, Shapes::ShapeRef.new(shape: AmplitudeConnectorProfileCredentials, location_name: "Amplitude"))
@@ -991,9 +996,12 @@ module Aws::Appflow
991
996
  ListConnectorEntitiesRequest.add_member(:connector_type, Shapes::ShapeRef.new(shape: ConnectorType, location_name: "connectorType"))
992
997
  ListConnectorEntitiesRequest.add_member(:entities_path, Shapes::ShapeRef.new(shape: EntitiesPath, location_name: "entitiesPath"))
993
998
  ListConnectorEntitiesRequest.add_member(:api_version, Shapes::ShapeRef.new(shape: ApiVersion, location_name: "apiVersion"))
999
+ ListConnectorEntitiesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: ListEntitiesMaxResults, location_name: "maxResults"))
1000
+ ListConnectorEntitiesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
994
1001
  ListConnectorEntitiesRequest.struct_class = Types::ListConnectorEntitiesRequest
995
1002
 
996
1003
  ListConnectorEntitiesResponse.add_member(:connector_entity_map, Shapes::ShapeRef.new(shape: ConnectorEntityMap, required: true, location_name: "connectorEntityMap"))
1004
+ ListConnectorEntitiesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
997
1005
  ListConnectorEntitiesResponse.struct_class = Types::ListConnectorEntitiesResponse
998
1006
 
999
1007
  ListConnectorsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "maxResults"))
@@ -1114,14 +1122,19 @@ module Aws::Appflow
1114
1122
  Range.add_member(:minimum, Shapes::ShapeRef.new(shape: Double, location_name: "minimum"))
1115
1123
  Range.struct_class = Types::Range
1116
1124
 
1117
- RedshiftConnectorProfileCredentials.add_member(:username, Shapes::ShapeRef.new(shape: Username, required: true, location_name: "username"))
1118
- RedshiftConnectorProfileCredentials.add_member(:password, Shapes::ShapeRef.new(shape: Password, required: true, location_name: "password"))
1125
+ RedshiftConnectorProfileCredentials.add_member(:username, Shapes::ShapeRef.new(shape: String, location_name: "username"))
1126
+ RedshiftConnectorProfileCredentials.add_member(:password, Shapes::ShapeRef.new(shape: Password, location_name: "password"))
1119
1127
  RedshiftConnectorProfileCredentials.struct_class = Types::RedshiftConnectorProfileCredentials
1120
1128
 
1121
- RedshiftConnectorProfileProperties.add_member(:database_url, Shapes::ShapeRef.new(shape: DatabaseUrl, required: true, location_name: "databaseUrl"))
1129
+ RedshiftConnectorProfileProperties.add_member(:database_url, Shapes::ShapeRef.new(shape: DatabaseUrl, location_name: "databaseUrl"))
1122
1130
  RedshiftConnectorProfileProperties.add_member(:bucket_name, Shapes::ShapeRef.new(shape: BucketName, required: true, location_name: "bucketName"))
1123
1131
  RedshiftConnectorProfileProperties.add_member(:bucket_prefix, Shapes::ShapeRef.new(shape: BucketPrefix, location_name: "bucketPrefix"))
1124
1132
  RedshiftConnectorProfileProperties.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleArn, required: true, location_name: "roleArn"))
1133
+ RedshiftConnectorProfileProperties.add_member(:data_api_role_arn, Shapes::ShapeRef.new(shape: DataApiRoleArn, location_name: "dataApiRoleArn"))
1134
+ RedshiftConnectorProfileProperties.add_member(:is_redshift_serverless, Shapes::ShapeRef.new(shape: Boolean, location_name: "isRedshiftServerless"))
1135
+ RedshiftConnectorProfileProperties.add_member(:cluster_identifier, Shapes::ShapeRef.new(shape: ClusterIdentifier, location_name: "clusterIdentifier"))
1136
+ RedshiftConnectorProfileProperties.add_member(:workgroup_name, Shapes::ShapeRef.new(shape: WorkgroupName, location_name: "workgroupName"))
1137
+ RedshiftConnectorProfileProperties.add_member(:database_name, Shapes::ShapeRef.new(shape: DatabaseName, location_name: "databaseName"))
1125
1138
  RedshiftConnectorProfileProperties.struct_class = Types::RedshiftConnectorProfileProperties
1126
1139
 
1127
1140
  RedshiftDestinationProperties.add_member(:object, Shapes::ShapeRef.new(shape: Object, required: true, location_name: "object"))
@@ -50,6 +50,9 @@ module Aws::Appflow
50
50
 
51
51
  def initialize(options = {})
52
52
  self[:region] = options[:region]
53
+ if self[:region].nil?
54
+ raise ArgumentError, "Missing required EndpointParameter: :region"
55
+ end
53
56
  self[:use_dual_stack] = options[:use_dual_stack]
54
57
  self[:use_dual_stack] = false if self[:use_dual_stack].nil?
55
58
  if self[:use_dual_stack].nil?
@@ -29,82 +29,81 @@ module Aws::Appflow
29
29
  # @api private
30
30
  RULES = <<-JSON
31
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
32
+ bHRJbiI6IkFXUzo6UmVnaW9uIiwicmVxdWlyZWQiOnRydWUsImRvY3VtZW50
33
+ YXRpb24iOiJUaGUgQVdTIHJlZ2lvbiB1c2VkIHRvIGRpc3BhdGNoIHRoZSBy
34
+ ZXF1ZXN0LiIsInR5cGUiOiJTdHJpbmcifSwiVXNlRHVhbFN0YWNrIjp7ImJ1
35
+ aWx0SW4iOiJBV1M6OlVzZUR1YWxTdGFjayIsInJlcXVpcmVkIjp0cnVlLCJk
36
+ ZWZhdWx0IjpmYWxzZSwiZG9jdW1lbnRhdGlvbiI6IldoZW4gdHJ1ZSwgdXNl
37
+ IHRoZSBkdWFsLXN0YWNrIGVuZHBvaW50LiBJZiB0aGUgY29uZmlndXJlZCBl
38
+ bmRwb2ludCBkb2VzIG5vdCBzdXBwb3J0IGR1YWwtc3RhY2ssIGRpc3BhdGNo
39
+ aW5nIHRoZSByZXF1ZXN0IE1BWSByZXR1cm4gYW4gZXJyb3IuIiwidHlwZSI6
40
+ IkJvb2xlYW4ifSwiVXNlRklQUyI6eyJidWlsdEluIjoiQVdTOjpVc2VGSVBT
41
+ IiwicmVxdWlyZWQiOnRydWUsImRlZmF1bHQiOmZhbHNlLCJkb2N1bWVudGF0
42
+ aW9uIjoiV2hlbiB0cnVlLCBzZW5kIHRoaXMgcmVxdWVzdCB0byB0aGUgRklQ
43
+ Uy1jb21wbGlhbnQgcmVnaW9uYWwgZW5kcG9pbnQuIElmIHRoZSBjb25maWd1
44
+ cmVkIGVuZHBvaW50IGRvZXMgbm90IGhhdmUgYSBGSVBTIGNvbXBsaWFudCBl
45
+ bmRwb2ludCwgZGlzcGF0Y2hpbmcgdGhlIHJlcXVlc3Qgd2lsbCByZXR1cm4g
46
+ YW4gZXJyb3IuIiwidHlwZSI6IkJvb2xlYW4ifSwiRW5kcG9pbnQiOnsiYnVp
47
+ bHRJbiI6IlNESzo6RW5kcG9pbnQiLCJyZXF1aXJlZCI6ZmFsc2UsImRvY3Vt
48
+ ZW50YXRpb24iOiJPdmVycmlkZSB0aGUgZW5kcG9pbnQgdXNlZCB0byBzZW5k
49
+ IHRoaXMgcmVxdWVzdCIsInR5cGUiOiJTdHJpbmcifX0sInJ1bGVzIjpbeyJj
50
+ b25kaXRpb25zIjpbeyJmbiI6ImF3cy5wYXJ0aXRpb24iLCJhcmd2IjpbeyJy
51
+ ZWYiOiJSZWdpb24ifV0sImFzc2lnbiI6IlBhcnRpdGlvblJlc3VsdCJ9XSwi
52
+ dHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6W3siZm4iOiJp
53
+ c1NldCIsImFyZ3YiOlt7InJlZiI6IkVuZHBvaW50In1dfV0sInR5cGUiOiJ0
54
+ cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVx
55
+ dWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUZJUFMifSx0cnVlXX1dLCJlcnJv
56
+ ciI6IkludmFsaWQgQ29uZmlndXJhdGlvbjogRklQUyBhbmQgY3VzdG9tIGVu
57
+ ZHBvaW50IGFyZSBub3Qgc3VwcG9ydGVkIiwidHlwZSI6ImVycm9yIn0seyJj
58
+ b25kaXRpb25zIjpbXSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0
59
+ aW9ucyI6W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoi
60
+ VXNlRHVhbFN0YWNrIn0sdHJ1ZV19XSwiZXJyb3IiOiJJbnZhbGlkIENvbmZp
61
+ Z3VyYXRpb246IER1YWxzdGFjayBhbmQgY3VzdG9tIGVuZHBvaW50IGFyZSBu
62
+ b3Qgc3VwcG9ydGVkIiwidHlwZSI6ImVycm9yIn0seyJjb25kaXRpb25zIjpb
63
+ XSwiZW5kcG9pbnQiOnsidXJsIjp7InJlZiI6IkVuZHBvaW50In0sInByb3Bl
64
+ cnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX1d
65
+ fSx7ImNvbmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3Yi
66
+ Olt7InJlZiI6IlVzZUZJUFMifSx0cnVlXX0seyJmbiI6ImJvb2xlYW5FcXVh
67
+ bHMiLCJhcmd2IjpbeyJyZWYiOiJVc2VEdWFsU3RhY2sifSx0cnVlXX1dLCJ0
68
+ eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6ImJv
69
+ b2xlYW5FcXVhbHMiLCJhcmd2IjpbdHJ1ZSx7ImZuIjoiZ2V0QXR0ciIsImFy
70
+ Z3YiOlt7InJlZiI6IlBhcnRpdGlvblJlc3VsdCJ9LCJzdXBwb3J0c0ZJUFMi
71
+ XX1dfSx7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsiZm4i
72
+ OiJnZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0In0s
73
+ InN1cHBvcnRzRHVhbFN0YWNrIl19XX1dLCJ0eXBlIjoidHJlZSIsInJ1bGVz
74
+ IjpbeyJjb25kaXRpb25zIjpbXSwiZW5kcG9pbnQiOnsidXJsIjoiaHR0cHM6
75
+ Ly9hcHBmbG93LWZpcHMue1JlZ2lvbn0ue1BhcnRpdGlvblJlc3VsdCNkdWFs
76
+ U3RhY2tEbnNTdWZmaXh9IiwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9
77
+ fSwidHlwZSI6ImVuZHBvaW50In1dfSx7ImNvbmRpdGlvbnMiOltdLCJlcnJv
78
+ ciI6IkZJUFMgYW5kIER1YWxTdGFjayBhcmUgZW5hYmxlZCwgYnV0IHRoaXMg
79
+ cGFydGl0aW9uIGRvZXMgbm90IHN1cHBvcnQgb25lIG9yIGJvdGgiLCJ0eXBl
80
+ IjoiZXJyb3IifV19LHsiY29uZGl0aW9ucyI6W3siZm4iOiJib29sZWFuRXF1
81
+ YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQUyJ9LHRydWVdfV0sInR5cGUi
82
+ OiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVh
83
+ bkVxdWFscyIsImFyZ3YiOlt0cnVlLHsiZm4iOiJnZXRBdHRyIiwiYXJndiI6
84
+ W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0In0sInN1cHBvcnRzRklQUyJdfV19
85
+ XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6W10sInR5
75
86
  cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2lu
76
87
  dCI6eyJ1cmwiOiJodHRwczovL2FwcGZsb3ctZmlwcy57UmVnaW9ufS57UGFy
77
- dGl0aW9uUmVzdWx0I2R1YWxTdGFja0Ruc1N1ZmZpeH0iLCJwcm9wZXJ0aWVz
78
- Ijp7fSwiaGVhZGVycyI6e319LCJ0eXBlIjoiZW5kcG9pbnQifV19LHsiY29u
79
- ZGl0aW9ucyI6W10sImVycm9yIjoiRklQUyBhbmQgRHVhbFN0YWNrIGFyZSBl
80
- bmFibGVkLCBidXQgdGhpcyBwYXJ0aXRpb24gZG9lcyBub3Qgc3VwcG9ydCBv
81
- bmUgb3IgYm90aCIsInR5cGUiOiJlcnJvciJ9XX0seyJjb25kaXRpb25zIjpb
82
- eyJmbiI6ImJvb2xlYW5FcXVhbHMiLCJhcmd2IjpbeyJyZWYiOiJVc2VGSVBT
83
- In0sdHJ1ZV19XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9u
84
- cyI6W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3RydWUseyJmbiI6
85
- ImdldEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQYXJ0aXRpb25SZXN1bHQifSwi
86
- c3VwcG9ydHNGSVBTIl19XX1dLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJj
87
- b25kaXRpb25zIjpbXSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0
88
- aW9ucyI6W10sImVuZHBvaW50Ijp7InVybCI6Imh0dHBzOi8vYXBwZmxvdy1m
89
- aXBzLntSZWdpb259LntQYXJ0aXRpb25SZXN1bHQjZG5zU3VmZml4fSIsInBy
90
- b3BlcnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9
91
- XX1dfSx7ImNvbmRpdGlvbnMiOltdLCJlcnJvciI6IkZJUFMgaXMgZW5hYmxl
92
- ZCBidXQgdGhpcyBwYXJ0aXRpb24gZG9lcyBub3Qgc3VwcG9ydCBGSVBTIiwi
93
- dHlwZSI6ImVycm9yIn1dfSx7ImNvbmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVh
94
- bkVxdWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUR1YWxTdGFjayJ9LHRydWVd
95
- fV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZu
96
- IjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsiZm4iOiJnZXRBdHRy
97
- IiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0In0sInN1cHBvcnRz
98
- RHVhbFN0YWNrIl19XX1dLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpbeyJjb25k
99
- aXRpb25zIjpbXSwiZW5kcG9pbnQiOnsidXJsIjoiaHR0cHM6Ly9hcHBmbG93
100
- LntSZWdpb259LntQYXJ0aXRpb25SZXN1bHQjZHVhbFN0YWNrRG5zU3VmZml4
101
- fSIsInByb3BlcnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRw
102
- b2ludCJ9XX0seyJjb25kaXRpb25zIjpbXSwiZXJyb3IiOiJEdWFsU3RhY2sg
103
- aXMgZW5hYmxlZCBidXQgdGhpcyBwYXJ0aXRpb24gZG9lcyBub3Qgc3VwcG9y
104
- dCBEdWFsU3RhY2siLCJ0eXBlIjoiZXJyb3IifV19LHsiY29uZGl0aW9ucyI6
105
- W10sImVuZHBvaW50Ijp7InVybCI6Imh0dHBzOi8vYXBwZmxvdy57UmVnaW9u
106
- fS57UGFydGl0aW9uUmVzdWx0I2Ruc1N1ZmZpeH0iLCJwcm9wZXJ0aWVzIjp7
107
- fSwiaGVhZGVycyI6e319LCJ0eXBlIjoiZW5kcG9pbnQifV19XX0=
88
+ dGl0aW9uUmVzdWx0I2Ruc1N1ZmZpeH0iLCJwcm9wZXJ0aWVzIjp7fSwiaGVh
89
+ ZGVycyI6e319LCJ0eXBlIjoiZW5kcG9pbnQifV19XX0seyJjb25kaXRpb25z
90
+ IjpbXSwiZXJyb3IiOiJGSVBTIGlzIGVuYWJsZWQgYnV0IHRoaXMgcGFydGl0
91
+ aW9uIGRvZXMgbm90IHN1cHBvcnQgRklQUyIsInR5cGUiOiJlcnJvciJ9XX0s
92
+ eyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMiLCJhcmd2Ijpb
93
+ eyJyZWYiOiJVc2VEdWFsU3RhY2sifSx0cnVlXX1dLCJ0eXBlIjoidHJlZSIs
94
+ InJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMi
95
+ LCJhcmd2IjpbdHJ1ZSx7ImZuIjoiZ2V0QXR0ciIsImFyZ3YiOlt7InJlZiI6
96
+ IlBhcnRpdGlvblJlc3VsdCJ9LCJzdXBwb3J0c0R1YWxTdGFjayJdfV19XSwi
97
+ dHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6W10sImVuZHBv
98
+ aW50Ijp7InVybCI6Imh0dHBzOi8vYXBwZmxvdy57UmVnaW9ufS57UGFydGl0
99
+ aW9uUmVzdWx0I2R1YWxTdGFja0Ruc1N1ZmZpeH0iLCJwcm9wZXJ0aWVzIjp7
100
+ fSwiaGVhZGVycyI6e319LCJ0eXBlIjoiZW5kcG9pbnQifV19LHsiY29uZGl0
101
+ aW9ucyI6W10sImVycm9yIjoiRHVhbFN0YWNrIGlzIGVuYWJsZWQgYnV0IHRo
102
+ aXMgcGFydGl0aW9uIGRvZXMgbm90IHN1cHBvcnQgRHVhbFN0YWNrIiwidHlw
103
+ ZSI6ImVycm9yIn1dfSx7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1
104
+ cmwiOiJodHRwczovL2FwcGZsb3cue1JlZ2lvbn0ue1BhcnRpdGlvblJlc3Vs
105
+ dCNkbnNTdWZmaXh9IiwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwi
106
+ dHlwZSI6ImVuZHBvaW50In1dfV19
108
107
 
109
108
  JSON
110
109
  end