aws-sdk-servicecatalog 1.72.0 → 1.74.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -49,6 +49,8 @@ module Aws::ServiceCatalog
49
49
  CloudWatchDashboard = Shapes::StructureShape.new(name: 'CloudWatchDashboard')
50
50
  CloudWatchDashboardName = Shapes::StringShape.new(name: 'CloudWatchDashboardName')
51
51
  CloudWatchDashboards = Shapes::ListShape.new(name: 'CloudWatchDashboards')
52
+ CodeStarConnectionArn = Shapes::StringShape.new(name: 'CodeStarConnectionArn')
53
+ CodeStarParameters = Shapes::StructureShape.new(name: 'CodeStarParameters')
52
54
  ConstraintDescription = Shapes::StringShape.new(name: 'ConstraintDescription')
53
55
  ConstraintDetail = Shapes::StructureShape.new(name: 'ConstraintDetail')
54
56
  ConstraintDetails = Shapes::ListShape.new(name: 'ConstraintDetails')
@@ -178,6 +180,11 @@ module Aws::ServiceCatalog
178
180
  InvalidParametersException = Shapes::StructureShape.new(name: 'InvalidParametersException')
179
181
  InvalidStateException = Shapes::StructureShape.new(name: 'InvalidStateException')
180
182
  LastRequestId = Shapes::StringShape.new(name: 'LastRequestId')
183
+ LastSuccessfulSyncTime = Shapes::TimestampShape.new(name: 'LastSuccessfulSyncTime')
184
+ LastSync = Shapes::StructureShape.new(name: 'LastSync')
185
+ LastSyncStatus = Shapes::StringShape.new(name: 'LastSyncStatus')
186
+ LastSyncStatusMessage = Shapes::StringShape.new(name: 'LastSyncStatusMessage')
187
+ LastSyncTime = Shapes::TimestampShape.new(name: 'LastSyncTime')
181
188
  LaunchPath = Shapes::StructureShape.new(name: 'LaunchPath')
182
189
  LaunchPathSummaries = Shapes::ListShape.new(name: 'LaunchPathSummaries')
183
190
  LaunchPathSummary = Shapes::StructureShape.new(name: 'LaunchPathSummary')
@@ -352,6 +359,9 @@ module Aws::ServiceCatalog
352
359
  RejectPortfolioShareInput = Shapes::StructureShape.new(name: 'RejectPortfolioShareInput')
353
360
  RejectPortfolioShareOutput = Shapes::StructureShape.new(name: 'RejectPortfolioShareOutput')
354
361
  Replacement = Shapes::StringShape.new(name: 'Replacement')
362
+ Repository = Shapes::StringShape.new(name: 'Repository')
363
+ RepositoryArtifactPath = Shapes::StringShape.new(name: 'RepositoryArtifactPath')
364
+ RepositoryBranch = Shapes::StringShape.new(name: 'RepositoryBranch')
355
365
  RequiresRecreation = Shapes::StringShape.new(name: 'RequiresRecreation')
356
366
  ResourceARN = Shapes::StringShape.new(name: 'ResourceARN')
357
367
  ResourceAttribute = Shapes::StringShape.new(name: 'ResourceAttribute')
@@ -404,8 +414,13 @@ module Aws::ServiceCatalog
404
414
  ShareStatus = Shapes::StringShape.new(name: 'ShareStatus')
405
415
  SortField = Shapes::StringShape.new(name: 'SortField')
406
416
  SortOrder = Shapes::StringShape.new(name: 'SortOrder')
417
+ SourceConnection = Shapes::StructureShape.new(name: 'SourceConnection')
418
+ SourceConnectionDetail = Shapes::StructureShape.new(name: 'SourceConnectionDetail')
419
+ SourceConnectionParameters = Shapes::StructureShape.new(name: 'SourceConnectionParameters')
407
420
  SourceProvisioningArtifactProperties = Shapes::ListShape.new(name: 'SourceProvisioningArtifactProperties')
408
421
  SourceProvisioningArtifactPropertiesMap = Shapes::MapShape.new(name: 'SourceProvisioningArtifactPropertiesMap')
422
+ SourceRevision = Shapes::StringShape.new(name: 'SourceRevision')
423
+ SourceType = Shapes::StringShape.new(name: 'SourceType')
409
424
  StackInstance = Shapes::StructureShape.new(name: 'StackInstance')
410
425
  StackInstanceStatus = Shapes::StringShape.new(name: 'StackInstanceStatus')
411
426
  StackInstances = Shapes::ListShape.new(name: 'StackInstances')
@@ -548,6 +563,12 @@ module Aws::ServiceCatalog
548
563
 
549
564
  CloudWatchDashboards.member = Shapes::ShapeRef.new(shape: CloudWatchDashboard)
550
565
 
566
+ CodeStarParameters.add_member(:connection_arn, Shapes::ShapeRef.new(shape: CodeStarConnectionArn, required: true, location_name: "ConnectionArn"))
567
+ CodeStarParameters.add_member(:repository, Shapes::ShapeRef.new(shape: Repository, required: true, location_name: "Repository"))
568
+ CodeStarParameters.add_member(:branch, Shapes::ShapeRef.new(shape: RepositoryBranch, required: true, location_name: "Branch"))
569
+ CodeStarParameters.add_member(:artifact_path, Shapes::ShapeRef.new(shape: RepositoryArtifactPath, required: true, location_name: "ArtifactPath"))
570
+ CodeStarParameters.struct_class = Types::CodeStarParameters
571
+
551
572
  ConstraintDetail.add_member(:constraint_id, Shapes::ShapeRef.new(shape: Id, location_name: "ConstraintId"))
552
573
  ConstraintDetail.add_member(:type, Shapes::ShapeRef.new(shape: ConstraintType, location_name: "Type"))
553
574
  ConstraintDetail.add_member(:description, Shapes::ShapeRef.new(shape: ConstraintDescription, location_name: "Description"))
@@ -609,6 +630,7 @@ module Aws::ServiceCatalog
609
630
  CreatePortfolioShareInput.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "AccountId"))
610
631
  CreatePortfolioShareInput.add_member(:organization_node, Shapes::ShapeRef.new(shape: OrganizationNode, location_name: "OrganizationNode"))
611
632
  CreatePortfolioShareInput.add_member(:share_tag_options, Shapes::ShapeRef.new(shape: Boolean, location_name: "ShareTagOptions"))
633
+ CreatePortfolioShareInput.add_member(:share_principals, Shapes::ShapeRef.new(shape: Boolean, location_name: "SharePrincipals"))
612
634
  CreatePortfolioShareInput.struct_class = Types::CreatePortfolioShareInput
613
635
 
614
636
  CreatePortfolioShareOutput.add_member(:portfolio_share_token, Shapes::ShapeRef.new(shape: Id, location_name: "PortfolioShareToken"))
@@ -624,8 +646,9 @@ module Aws::ServiceCatalog
624
646
  CreateProductInput.add_member(:support_url, Shapes::ShapeRef.new(shape: SupportUrl, location_name: "SupportUrl"))
625
647
  CreateProductInput.add_member(:product_type, Shapes::ShapeRef.new(shape: ProductType, required: true, location_name: "ProductType"))
626
648
  CreateProductInput.add_member(:tags, Shapes::ShapeRef.new(shape: AddTags, location_name: "Tags"))
627
- CreateProductInput.add_member(:provisioning_artifact_parameters, Shapes::ShapeRef.new(shape: ProvisioningArtifactProperties, required: true, location_name: "ProvisioningArtifactParameters"))
649
+ CreateProductInput.add_member(:provisioning_artifact_parameters, Shapes::ShapeRef.new(shape: ProvisioningArtifactProperties, location_name: "ProvisioningArtifactParameters"))
628
650
  CreateProductInput.add_member(:idempotency_token, Shapes::ShapeRef.new(shape: IdempotencyToken, required: true, location_name: "IdempotencyToken", metadata: {"idempotencyToken"=>true}))
651
+ CreateProductInput.add_member(:source_connection, Shapes::ShapeRef.new(shape: SourceConnection, location_name: "SourceConnection"))
629
652
  CreateProductInput.struct_class = Types::CreateProductInput
630
653
 
631
654
  CreateProductOutput.add_member(:product_view_detail, Shapes::ShapeRef.new(shape: ProductViewDetail, location_name: "ProductViewDetail"))
@@ -910,6 +933,7 @@ module Aws::ServiceCatalog
910
933
  DisassociatePrincipalFromPortfolioInput.add_member(:accept_language, Shapes::ShapeRef.new(shape: AcceptLanguage, location_name: "AcceptLanguage"))
911
934
  DisassociatePrincipalFromPortfolioInput.add_member(:portfolio_id, Shapes::ShapeRef.new(shape: Id, required: true, location_name: "PortfolioId"))
912
935
  DisassociatePrincipalFromPortfolioInput.add_member(:principal_arn, Shapes::ShapeRef.new(shape: PrincipalARN, required: true, location_name: "PrincipalARN"))
936
+ DisassociatePrincipalFromPortfolioInput.add_member(:principal_type, Shapes::ShapeRef.new(shape: PrincipalType, location_name: "PrincipalType"))
913
937
  DisassociatePrincipalFromPortfolioInput.struct_class = Types::DisassociatePrincipalFromPortfolioInput
914
938
 
915
939
  DisassociatePrincipalFromPortfolioOutput.struct_class = Types::DisassociatePrincipalFromPortfolioOutput
@@ -1012,6 +1036,13 @@ module Aws::ServiceCatalog
1012
1036
 
1013
1037
  InvalidStateException.struct_class = Types::InvalidStateException
1014
1038
 
1039
+ LastSync.add_member(:last_sync_time, Shapes::ShapeRef.new(shape: LastSyncTime, location_name: "LastSyncTime"))
1040
+ LastSync.add_member(:last_sync_status, Shapes::ShapeRef.new(shape: LastSyncStatus, location_name: "LastSyncStatus"))
1041
+ LastSync.add_member(:last_sync_status_message, Shapes::ShapeRef.new(shape: LastSyncStatusMessage, location_name: "LastSyncStatusMessage"))
1042
+ LastSync.add_member(:last_successful_sync_time, Shapes::ShapeRef.new(shape: LastSuccessfulSyncTime, location_name: "LastSuccessfulSyncTime"))
1043
+ LastSync.add_member(:last_successful_sync_provisioning_artifact_id, Shapes::ShapeRef.new(shape: Id, location_name: "LastSuccessfulSyncProvisioningArtifactId"))
1044
+ LastSync.struct_class = Types::LastSync
1045
+
1015
1046
  LaunchPath.add_member(:id, Shapes::ShapeRef.new(shape: Id, location_name: "Id"))
1016
1047
  LaunchPath.add_member(:name, Shapes::ShapeRef.new(shape: PortfolioName, location_name: "Name"))
1017
1048
  LaunchPath.struct_class = Types::LaunchPath
@@ -1255,6 +1286,7 @@ module Aws::ServiceCatalog
1255
1286
  PortfolioShareDetail.add_member(:type, Shapes::ShapeRef.new(shape: DescribePortfolioShareType, location_name: "Type"))
1256
1287
  PortfolioShareDetail.add_member(:accepted, Shapes::ShapeRef.new(shape: Boolean, location_name: "Accepted"))
1257
1288
  PortfolioShareDetail.add_member(:share_tag_options, Shapes::ShapeRef.new(shape: Boolean, location_name: "ShareTagOptions"))
1289
+ PortfolioShareDetail.add_member(:share_principals, Shapes::ShapeRef.new(shape: Boolean, location_name: "SharePrincipals"))
1258
1290
  PortfolioShareDetail.struct_class = Types::PortfolioShareDetail
1259
1291
 
1260
1292
  PortfolioShareDetails.member = Shapes::ShapeRef.new(shape: PortfolioShareDetail)
@@ -1278,6 +1310,7 @@ module Aws::ServiceCatalog
1278
1310
  ProductViewDetail.add_member(:status, Shapes::ShapeRef.new(shape: Status, location_name: "Status"))
1279
1311
  ProductViewDetail.add_member(:product_arn, Shapes::ShapeRef.new(shape: ResourceARN, location_name: "ProductARN"))
1280
1312
  ProductViewDetail.add_member(:created_time, Shapes::ShapeRef.new(shape: CreatedTime, location_name: "CreatedTime"))
1313
+ ProductViewDetail.add_member(:source_connection, Shapes::ShapeRef.new(shape: SourceConnectionDetail, location_name: "SourceConnection"))
1281
1314
  ProductViewDetail.struct_class = Types::ProductViewDetail
1282
1315
 
1283
1316
  ProductViewDetails.member = Shapes::ShapeRef.new(shape: ProductViewDetail)
@@ -1410,6 +1443,7 @@ module Aws::ServiceCatalog
1410
1443
  ProvisioningArtifactDetail.add_member(:created_time, Shapes::ShapeRef.new(shape: CreationTime, location_name: "CreatedTime"))
1411
1444
  ProvisioningArtifactDetail.add_member(:active, Shapes::ShapeRef.new(shape: ProvisioningArtifactActive, location_name: "Active"))
1412
1445
  ProvisioningArtifactDetail.add_member(:guidance, Shapes::ShapeRef.new(shape: ProvisioningArtifactGuidance, location_name: "Guidance"))
1446
+ ProvisioningArtifactDetail.add_member(:source_revision, Shapes::ShapeRef.new(shape: SourceRevision, location_name: "SourceRevision"))
1413
1447
  ProvisioningArtifactDetail.struct_class = Types::ProvisioningArtifactDetail
1414
1448
 
1415
1449
  ProvisioningArtifactDetails.member = Shapes::ShapeRef.new(shape: ProvisioningArtifactDetail)
@@ -1439,7 +1473,7 @@ module Aws::ServiceCatalog
1439
1473
 
1440
1474
  ProvisioningArtifactProperties.add_member(:name, Shapes::ShapeRef.new(shape: ProvisioningArtifactName, location_name: "Name"))
1441
1475
  ProvisioningArtifactProperties.add_member(:description, Shapes::ShapeRef.new(shape: ProvisioningArtifactDescription, location_name: "Description"))
1442
- ProvisioningArtifactProperties.add_member(:info, Shapes::ShapeRef.new(shape: ProvisioningArtifactInfo, required: true, location_name: "Info"))
1476
+ ProvisioningArtifactProperties.add_member(:info, Shapes::ShapeRef.new(shape: ProvisioningArtifactInfo, location_name: "Info"))
1443
1477
  ProvisioningArtifactProperties.add_member(:type, Shapes::ShapeRef.new(shape: ProvisioningArtifactType, location_name: "Type"))
1444
1478
  ProvisioningArtifactProperties.add_member(:disable_template_validation, Shapes::ShapeRef.new(shape: DisableTemplateValidation, location_name: "DisableTemplateValidation"))
1445
1479
  ProvisioningArtifactProperties.struct_class = Types::ProvisioningArtifactProperties
@@ -1641,6 +1675,18 @@ module Aws::ServiceCatalog
1641
1675
 
1642
1676
  ShareErrors.member = Shapes::ShapeRef.new(shape: ShareError)
1643
1677
 
1678
+ SourceConnection.add_member(:type, Shapes::ShapeRef.new(shape: SourceType, location_name: "Type"))
1679
+ SourceConnection.add_member(:connection_parameters, Shapes::ShapeRef.new(shape: SourceConnectionParameters, required: true, location_name: "ConnectionParameters"))
1680
+ SourceConnection.struct_class = Types::SourceConnection
1681
+
1682
+ SourceConnectionDetail.add_member(:type, Shapes::ShapeRef.new(shape: SourceType, location_name: "Type"))
1683
+ SourceConnectionDetail.add_member(:connection_parameters, Shapes::ShapeRef.new(shape: SourceConnectionParameters, location_name: "ConnectionParameters"))
1684
+ SourceConnectionDetail.add_member(:last_sync, Shapes::ShapeRef.new(shape: LastSync, location_name: "LastSync"))
1685
+ SourceConnectionDetail.struct_class = Types::SourceConnectionDetail
1686
+
1687
+ SourceConnectionParameters.add_member(:code_star, Shapes::ShapeRef.new(shape: CodeStarParameters, location_name: "CodeStar"))
1688
+ SourceConnectionParameters.struct_class = Types::SourceConnectionParameters
1689
+
1644
1690
  SourceProvisioningArtifactProperties.member = Shapes::ShapeRef.new(shape: SourceProvisioningArtifactPropertiesMap)
1645
1691
 
1646
1692
  SourceProvisioningArtifactPropertiesMap.key = Shapes::ShapeRef.new(shape: ProvisioningArtifactPropertyName)
@@ -1726,6 +1772,7 @@ module Aws::ServiceCatalog
1726
1772
  UpdatePortfolioShareInput.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "AccountId"))
1727
1773
  UpdatePortfolioShareInput.add_member(:organization_node, Shapes::ShapeRef.new(shape: OrganizationNode, location_name: "OrganizationNode"))
1728
1774
  UpdatePortfolioShareInput.add_member(:share_tag_options, Shapes::ShapeRef.new(shape: NullableBoolean, location_name: "ShareTagOptions"))
1775
+ UpdatePortfolioShareInput.add_member(:share_principals, Shapes::ShapeRef.new(shape: NullableBoolean, location_name: "SharePrincipals"))
1729
1776
  UpdatePortfolioShareInput.struct_class = Types::UpdatePortfolioShareInput
1730
1777
 
1731
1778
  UpdatePortfolioShareOutput.add_member(:portfolio_share_token, Shapes::ShapeRef.new(shape: Id, location_name: "PortfolioShareToken"))
@@ -1743,6 +1790,7 @@ module Aws::ServiceCatalog
1743
1790
  UpdateProductInput.add_member(:support_url, Shapes::ShapeRef.new(shape: SupportUrl, location_name: "SupportUrl"))
1744
1791
  UpdateProductInput.add_member(:add_tags, Shapes::ShapeRef.new(shape: AddTags, location_name: "AddTags"))
1745
1792
  UpdateProductInput.add_member(:remove_tags, Shapes::ShapeRef.new(shape: TagKeys, location_name: "RemoveTags"))
1793
+ UpdateProductInput.add_member(:source_connection, Shapes::ShapeRef.new(shape: SourceConnection, location_name: "SourceConnection"))
1746
1794
  UpdateProductInput.struct_class = Types::UpdateProductInput
1747
1795
 
1748
1796
  UpdateProductOutput.add_member(:product_view_detail, Shapes::ShapeRef.new(shape: ProductViewDetail, location_name: "ProductViewDetail"))
@@ -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::ServiceCatalog
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,112 @@
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::ServiceCatalog
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
+ dCI6eyJ1cmwiOiJodHRwczovL3NlcnZpY2VjYXRhbG9nLWZpcHMue1JlZ2lv
77
+ bn0ue1BhcnRpdGlvblJlc3VsdCNkdWFsU3RhY2tEbnNTdWZmaXh9IiwicHJv
78
+ cGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlwZSI6ImVuZHBvaW50In1d
79
+ fSx7ImNvbmRpdGlvbnMiOltdLCJlcnJvciI6IkZJUFMgYW5kIER1YWxTdGFj
80
+ ayBhcmUgZW5hYmxlZCwgYnV0IHRoaXMgcGFydGl0aW9uIGRvZXMgbm90IHN1
81
+ cHBvcnQgb25lIG9yIGJvdGgiLCJ0eXBlIjoiZXJyb3IifV19LHsiY29uZGl0
82
+ aW9ucyI6W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoi
83
+ VXNlRklQUyJ9LHRydWVdfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNv
84
+ bmRpdGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVl
85
+ LHsiZm4iOiJnZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVz
86
+ dWx0In0sInN1cHBvcnRzRklQUyJdfV19XSwidHlwZSI6InRyZWUiLCJydWxl
87
+ cyI6W3siY29uZGl0aW9ucyI6W10sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7
88
+ ImNvbmRpdGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1cmwiOiJodHRwczovL3Nl
89
+ cnZpY2VjYXRhbG9nLWZpcHMue1JlZ2lvbn0ue1BhcnRpdGlvblJlc3VsdCNk
90
+ bnNTdWZmaXh9IiwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlw
91
+ ZSI6ImVuZHBvaW50In1dfV19LHsiY29uZGl0aW9ucyI6W10sImVycm9yIjoi
92
+ RklQUyBpcyBlbmFibGVkIGJ1dCB0aGlzIHBhcnRpdGlvbiBkb2VzIG5vdCBz
93
+ dXBwb3J0IEZJUFMiLCJ0eXBlIjoiZXJyb3IifV19LHsiY29uZGl0aW9ucyI6
94
+ W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRHVh
95
+ bFN0YWNrIn0sdHJ1ZV19XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29u
96
+ ZGl0aW9ucyI6W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3RydWUs
97
+ eyJmbiI6ImdldEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQYXJ0aXRpb25SZXN1
98
+ bHQifSwic3VwcG9ydHNEdWFsU3RhY2siXX1dfV0sInR5cGUiOiJ0cmVlIiwi
99
+ cnVsZXMiOlt7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1cmwiOiJo
100
+ dHRwczovL3NlcnZpY2VjYXRhbG9nLntSZWdpb259LntQYXJ0aXRpb25SZXN1
101
+ bHQjZHVhbFN0YWNrRG5zU3VmZml4fSIsInByb3BlcnRpZXMiOnt9LCJoZWFk
102
+ ZXJzIjp7fX0sInR5cGUiOiJlbmRwb2ludCJ9XX0seyJjb25kaXRpb25zIjpb
103
+ XSwiZXJyb3IiOiJEdWFsU3RhY2sgaXMgZW5hYmxlZCBidXQgdGhpcyBwYXJ0
104
+ aXRpb24gZG9lcyBub3Qgc3VwcG9ydCBEdWFsU3RhY2siLCJ0eXBlIjoiZXJy
105
+ b3IifV19LHsiY29uZGl0aW9ucyI6W10sImVuZHBvaW50Ijp7InVybCI6Imh0
106
+ dHBzOi8vc2VydmljZWNhdGFsb2cue1JlZ2lvbn0ue1BhcnRpdGlvblJlc3Vs
107
+ dCNkbnNTdWZmaXh9IiwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwi
108
+ dHlwZSI6ImVuZHBvaW50In1dfV19
109
+
110
+ JSON
111
+ end
112
+ end