aws-sdk-backup 1.89.0 → 1.90.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.
@@ -91,6 +91,31 @@ module Aws::Backup
91
91
  include Aws::Structure
92
92
  end
93
93
 
94
+ # @!attribute [rw] backup_vault_name
95
+ # The name of the backup vault to associate with the MPA approval
96
+ # team.
97
+ # @return [String]
98
+ #
99
+ # @!attribute [rw] mpa_approval_team_arn
100
+ # The Amazon Resource Name (ARN) of the MPA approval team to associate
101
+ # with the backup vault.
102
+ # @return [String]
103
+ #
104
+ # @!attribute [rw] requester_comment
105
+ # A comment provided by the requester explaining the association
106
+ # request.
107
+ # @return [String]
108
+ #
109
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/AssociateBackupVaultMpaApprovalTeamInput AWS API Documentation
110
+ #
111
+ class AssociateBackupVaultMpaApprovalTeamInput < Struct.new(
112
+ :backup_vault_name,
113
+ :mpa_approval_team_arn,
114
+ :requester_comment)
115
+ SENSITIVE = [:requester_comment]
116
+ include Aws::Structure
117
+ end
118
+
94
119
  # Contains detailed information about a backup job.
95
120
  #
96
121
  # @!attribute [rw] account_id
@@ -1622,6 +1647,9 @@ module Aws::Backup
1622
1647
  #
1623
1648
  # If used, this parameter must contain 1 to 50 alphanumeric or
1624
1649
  # '-\_.' characters.
1650
+ #
1651
+ # **A suitable default value is auto-generated.** You should normally
1652
+ # not need to pass this option.
1625
1653
  # @return [String]
1626
1654
  #
1627
1655
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateBackupPlanInput AWS API Documentation
@@ -1688,6 +1716,9 @@ module Aws::Backup
1688
1716
  #
1689
1717
  # If used, this parameter must contain 1 to 50 alphanumeric or
1690
1718
  # '-\_.' characters.
1719
+ #
1720
+ # **A suitable default value is auto-generated.** You should normally
1721
+ # not need to pass this option.
1691
1722
  # @return [String]
1692
1723
  #
1693
1724
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateBackupSelectionInput AWS API Documentation
@@ -1750,6 +1781,9 @@ module Aws::Backup
1750
1781
  #
1751
1782
  # If used, this parameter must contain 1 to 50 alphanumeric or
1752
1783
  # '-\_.' characters.
1784
+ #
1785
+ # **A suitable default value is auto-generated.** You should normally
1786
+ # not need to pass this option.
1753
1787
  # @return [String]
1754
1788
  #
1755
1789
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateBackupVaultInput AWS API Documentation
@@ -1867,6 +1901,9 @@ module Aws::Backup
1867
1901
  # This is a user-chosen string used to distinguish between otherwise
1868
1902
  # identical calls. Retrying a successful request with the same
1869
1903
  # idempotency token results in a success message with no action taken.
1904
+ #
1905
+ # **A suitable default value is auto-generated.** You should normally
1906
+ # not need to pass this option.
1870
1907
  # @return [String]
1871
1908
  #
1872
1909
  # @!attribute [rw] recovery_point_selection
@@ -1952,6 +1989,9 @@ module Aws::Backup
1952
1989
  #
1953
1990
  # This parameter is optional. If used, this parameter must contain 1
1954
1991
  # to 50 alphanumeric or '-\_.' characters.
1992
+ #
1993
+ # **A suitable default value is auto-generated.** You should normally
1994
+ # not need to pass this option.
1955
1995
  # @return [String]
1956
1996
  #
1957
1997
  # @!attribute [rw] min_retention_days
@@ -2094,6 +2134,74 @@ module Aws::Backup
2094
2134
  include Aws::Structure
2095
2135
  end
2096
2136
 
2137
+ # @!attribute [rw] source_backup_vault_arn
2138
+ # The ARN of the source backup vault containing the recovery points to
2139
+ # which temporary access is requested.
2140
+ # @return [String]
2141
+ #
2142
+ # @!attribute [rw] backup_vault_name
2143
+ # The name of the backup vault to associate with an MPA approval team.
2144
+ # @return [String]
2145
+ #
2146
+ # @!attribute [rw] backup_vault_tags
2147
+ # Optional tags to assign to the restore access backup vault.
2148
+ # @return [Hash<String,String>]
2149
+ #
2150
+ # @!attribute [rw] creator_request_id
2151
+ # A unique string that identifies the request and allows failed
2152
+ # requests to be retried without the risk of executing the operation
2153
+ # twice.
2154
+ #
2155
+ # **A suitable default value is auto-generated.** You should normally
2156
+ # not need to pass this option.
2157
+ # @return [String]
2158
+ #
2159
+ # @!attribute [rw] requester_comment
2160
+ # A comment explaining the reason for requesting restore access to the
2161
+ # backup vault.
2162
+ # @return [String]
2163
+ #
2164
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateRestoreAccessBackupVaultInput AWS API Documentation
2165
+ #
2166
+ class CreateRestoreAccessBackupVaultInput < Struct.new(
2167
+ :source_backup_vault_arn,
2168
+ :backup_vault_name,
2169
+ :backup_vault_tags,
2170
+ :creator_request_id,
2171
+ :requester_comment)
2172
+ SENSITIVE = [:backup_vault_tags, :requester_comment]
2173
+ include Aws::Structure
2174
+ end
2175
+
2176
+ # @!attribute [rw] restore_access_backup_vault_arn
2177
+ # The ARN that uniquely identifies the created restore access backup
2178
+ # vault.
2179
+ # @return [String]
2180
+ #
2181
+ # @!attribute [rw] vault_state
2182
+ # The current state of the restore access backup vault.
2183
+ # @return [String]
2184
+ #
2185
+ # @!attribute [rw] restore_access_backup_vault_name
2186
+ # The name of the created restore access backup vault.
2187
+ # @return [String]
2188
+ #
2189
+ # @!attribute [rw] creation_date
2190
+ # &gt;The date and time when the restore access backup vault was
2191
+ # created, in Unix format and Coordinated Universal Time
2192
+ # @return [Time]
2193
+ #
2194
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateRestoreAccessBackupVaultOutput AWS API Documentation
2195
+ #
2196
+ class CreateRestoreAccessBackupVaultOutput < Struct.new(
2197
+ :restore_access_backup_vault_arn,
2198
+ :vault_state,
2199
+ :restore_access_backup_vault_name,
2200
+ :creation_date)
2201
+ SENSITIVE = []
2202
+ include Aws::Structure
2203
+ end
2204
+
2097
2205
  # @!attribute [rw] creator_request_id
2098
2206
  # This is a unique string that identifies the request and allows
2099
2207
  # failed requests to be retriedwithout the risk of running the
@@ -2836,6 +2944,24 @@ module Aws::Backup
2836
2944
  # represents Friday, January 26, 2018 12:11:30.087 AM.
2837
2945
  # @return [Time]
2838
2946
  #
2947
+ # @!attribute [rw] source_backup_vault_arn
2948
+ # The ARN of the source backup vault from which this restore access
2949
+ # backup vault was created.
2950
+ # @return [String]
2951
+ #
2952
+ # @!attribute [rw] mpa_approval_team_arn
2953
+ # The ARN of the MPA approval team associated with this backup vault.
2954
+ # @return [String]
2955
+ #
2956
+ # @!attribute [rw] mpa_session_arn
2957
+ # The ARN of the MPA session associated with this backup vault.
2958
+ # @return [String]
2959
+ #
2960
+ # @!attribute [rw] latest_mpa_approval_team_update
2961
+ # Information about the latest update to the MPA approval team
2962
+ # association for this backup vault.
2963
+ # @return [Types::LatestMpaApprovalTeamUpdate]
2964
+ #
2839
2965
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeBackupVaultOutput AWS API Documentation
2840
2966
  #
2841
2967
  class DescribeBackupVaultOutput < Struct.new(
@@ -2850,7 +2976,11 @@ module Aws::Backup
2850
2976
  :locked,
2851
2977
  :min_retention_days,
2852
2978
  :max_retention_days,
2853
- :lock_date)
2979
+ :lock_date,
2980
+ :source_backup_vault_arn,
2981
+ :mpa_approval_team_arn,
2982
+ :mpa_session_arn,
2983
+ :latest_mpa_approval_team_update)
2854
2984
  SENSITIVE = []
2855
2985
  include Aws::Structure
2856
2986
  end
@@ -3198,6 +3328,12 @@ module Aws::Backup
3198
3328
  # represents Friday, January 26, 2018 12:11:30.087 AM.
3199
3329
  # @return [Time]
3200
3330
  #
3331
+ # @!attribute [rw] initiation_date
3332
+ # The date and time when the backup job that created this recovery
3333
+ # point was initiated, in Unix format and Coordinated Universal Time
3334
+ # (UTC).
3335
+ # @return [Time]
3336
+ #
3201
3337
  # @!attribute [rw] completion_date
3202
3338
  # The date and time that a job to create a recovery point is
3203
3339
  # completed, in Unix format and Coordinated Universal Time (UTC). The
@@ -3319,6 +3455,7 @@ module Aws::Backup
3319
3455
  :status,
3320
3456
  :status_message,
3321
3457
  :creation_date,
3458
+ :initiation_date,
3322
3459
  :completion_date,
3323
3460
  :backup_size_in_bytes,
3324
3461
  :calculated_lifecycle,
@@ -3566,6 +3703,25 @@ module Aws::Backup
3566
3703
  include Aws::Structure
3567
3704
  end
3568
3705
 
3706
+ # @!attribute [rw] backup_vault_name
3707
+ # The name of the backup vault from which to disassociate the MPA
3708
+ # approval team.
3709
+ # @return [String]
3710
+ #
3711
+ # @!attribute [rw] requester_comment
3712
+ # An optional comment explaining the reason for disassociating the MPA
3713
+ # approval team from the backup vault.
3714
+ # @return [String]
3715
+ #
3716
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DisassociateBackupVaultMpaApprovalTeamInput AWS API Documentation
3717
+ #
3718
+ class DisassociateBackupVaultMpaApprovalTeamInput < Struct.new(
3719
+ :backup_vault_name,
3720
+ :requester_comment)
3721
+ SENSITIVE = [:requester_comment]
3722
+ include Aws::Structure
3723
+ end
3724
+
3569
3725
  # @!attribute [rw] backup_vault_name
3570
3726
  # The name of a logical container where the child (nested) recovery
3571
3727
  # point is stored. Backup vaults are identified by names that are
@@ -4609,6 +4765,77 @@ module Aws::Backup
4609
4765
  include Aws::Structure
4610
4766
  end
4611
4767
 
4768
+ # Contains information about the latest update to an MPA approval team
4769
+ # association.
4770
+ #
4771
+ # @!attribute [rw] mpa_session_arn
4772
+ # The ARN of the MPA session associated with this update.
4773
+ # @return [String]
4774
+ #
4775
+ # @!attribute [rw] status
4776
+ # The current status of the MPA approval team update.
4777
+ # @return [String]
4778
+ #
4779
+ # @!attribute [rw] status_message
4780
+ # A message describing the current status of the MPA approval team
4781
+ # update.
4782
+ # @return [String]
4783
+ #
4784
+ # @!attribute [rw] initiation_date
4785
+ # The date and time when the MPA approval team update was initiated.
4786
+ # @return [Time]
4787
+ #
4788
+ # @!attribute [rw] expiry_date
4789
+ # The date and time when the MPA approval team update will expire.
4790
+ # @return [Time]
4791
+ #
4792
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/LatestMpaApprovalTeamUpdate AWS API Documentation
4793
+ #
4794
+ class LatestMpaApprovalTeamUpdate < Struct.new(
4795
+ :mpa_session_arn,
4796
+ :status,
4797
+ :status_message,
4798
+ :initiation_date,
4799
+ :expiry_date)
4800
+ SENSITIVE = []
4801
+ include Aws::Structure
4802
+ end
4803
+
4804
+ # Contains information about the latest request to revoke access to a
4805
+ # backup vault.
4806
+ #
4807
+ # @!attribute [rw] mpa_session_arn
4808
+ # The ARN of the MPA session associated with this revoke request.
4809
+ # @return [String]
4810
+ #
4811
+ # @!attribute [rw] status
4812
+ # The current status of the revoke request.
4813
+ # @return [String]
4814
+ #
4815
+ # @!attribute [rw] status_message
4816
+ # A message describing the current status of the revoke request.
4817
+ # @return [String]
4818
+ #
4819
+ # @!attribute [rw] initiation_date
4820
+ # The date and time when the revoke request was initiated.
4821
+ # @return [Time]
4822
+ #
4823
+ # @!attribute [rw] expiry_date
4824
+ # The date and time when the revoke request will expire.
4825
+ # @return [Time]
4826
+ #
4827
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/LatestRevokeRequest AWS API Documentation
4828
+ #
4829
+ class LatestRevokeRequest < Struct.new(
4830
+ :mpa_session_arn,
4831
+ :status,
4832
+ :status_message,
4833
+ :initiation_date,
4834
+ :expiry_date)
4835
+ SENSITIVE = []
4836
+ include Aws::Structure
4837
+ end
4838
+
4612
4839
  # A legal hold is an administrative tool that helps prevent backups from
4613
4840
  # being deleted while under a hold. While the hold is in place, backups
4614
4841
  # under a hold cannot be deleted and lifecycle policies that would alter
@@ -6160,6 +6387,49 @@ module Aws::Backup
6160
6387
  include Aws::Structure
6161
6388
  end
6162
6389
 
6390
+ # @!attribute [rw] backup_vault_name
6391
+ # The name of the backup vault for which to list associated restore
6392
+ # access backup vaults.
6393
+ # @return [String]
6394
+ #
6395
+ # @!attribute [rw] next_token
6396
+ # The pagination token from a previous request to retrieve the next
6397
+ # set of results.
6398
+ # @return [String]
6399
+ #
6400
+ # @!attribute [rw] max_results
6401
+ # The maximum number of items to return in the response.
6402
+ # @return [Integer]
6403
+ #
6404
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreAccessBackupVaultsInput AWS API Documentation
6405
+ #
6406
+ class ListRestoreAccessBackupVaultsInput < Struct.new(
6407
+ :backup_vault_name,
6408
+ :next_token,
6409
+ :max_results)
6410
+ SENSITIVE = []
6411
+ include Aws::Structure
6412
+ end
6413
+
6414
+ # @!attribute [rw] next_token
6415
+ # The pagination token to use in a subsequent request to retrieve the
6416
+ # next set of results.
6417
+ # @return [String]
6418
+ #
6419
+ # @!attribute [rw] restore_access_backup_vaults
6420
+ # A list of restore access backup vaults associated with the specified
6421
+ # backup vault.
6422
+ # @return [Array<Types::RestoreAccessBackupVaultListMember>]
6423
+ #
6424
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreAccessBackupVaultsOutput AWS API Documentation
6425
+ #
6426
+ class ListRestoreAccessBackupVaultsOutput < Struct.new(
6427
+ :next_token,
6428
+ :restore_access_backup_vaults)
6429
+ SENSITIVE = []
6430
+ include Aws::Structure
6431
+ end
6432
+
6163
6433
  # @!attribute [rw] account_id
6164
6434
  # Returns the job count for the specified account.
6165
6435
  #
@@ -6802,36 +7072,13 @@ module Aws::Backup
6802
7072
  #
6803
7073
  # @!attribute [rw] backup_vault_events
6804
7074
  # An array of events that indicate the status of jobs to back up
6805
- # resources to the backup vault.
6806
- #
6807
- # For common use cases and code samples, see [Using Amazon SNS to
6808
- # track Backup events][1].
6809
- #
6810
- # The following events are supported:
6811
- #
6812
- # * `BACKUP_JOB_STARTED` \| `BACKUP_JOB_COMPLETED` \|
6813
- # `BACKUP_JOB_FAILED`
6814
- #
6815
- # * `COPY_JOB_STARTED` \| `COPY_JOB_SUCCESSFUL` \| `COPY_JOB_FAILED`
6816
- #
6817
- # * `RESTORE_JOB_STARTED` \| `RESTORE_JOB_COMPLETED` \|
6818
- # `RECOVERY_POINT_MODIFIED`
6819
- #
6820
- # * `S3_BACKUP_OBJECT_FAILED` \| `S3_RESTORE_OBJECT_FAILED`
7075
+ # resources to the backup vault. For the list of supported events,
7076
+ # common use cases, and code samples, see [Notification options with
7077
+ # Backup][1].
6821
7078
  #
6822
- # * `RECOVERY_POINT_INDEX_COMPLETED` \| `RECOVERY_POINT_INDEX_DELETED`
6823
- # \| `RECOVERY_POINT_INDEXING_FAILED`
6824
7079
  #
6825
- # <note markdown="1"> The list below includes both supported events and deprecated events
6826
- # that are no longer in use (for reference). Deprecated events do not
6827
- # return statuses or notifications. Refer to the list above for the
6828
- # supported events.
6829
7080
  #
6830
- # </note>
6831
- #
6832
- #
6833
- #
6834
- # [1]: https://docs.aws.amazon.com/aws-backup/latest/devguide/sns-notifications.html
7081
+ # [1]: https://docs.aws.amazon.com/aws-backup/latest/devguide/backup-notifications.html
6835
7082
  # @return [Array<String>]
6836
7083
  #
6837
7084
  # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/PutBackupVaultNotificationsInput AWS API Documentation
@@ -6934,6 +7181,12 @@ module Aws::Backup
6934
7181
  # represents Friday, January 26, 2018 12:11:30.087 AM.
6935
7182
  # @return [Time]
6936
7183
  #
7184
+ # @!attribute [rw] initiation_date
7185
+ # The date and time when the backup job that created this recovery
7186
+ # point was initiated, in Unix format and Coordinated Universal Time
7187
+ # (UTC).
7188
+ # @return [Time]
7189
+ #
6937
7190
  # @!attribute [rw] completion_date
6938
7191
  # The date and time a job to restore a recovery point is completed, in
6939
7192
  # Unix format and Coordinated Universal Time (UTC). The value of
@@ -7048,6 +7301,7 @@ module Aws::Backup
7048
7301
  :status,
7049
7302
  :status_message,
7050
7303
  :creation_date,
7304
+ :initiation_date,
7051
7305
  :completion_date,
7052
7306
  :backup_size_in_bytes,
7053
7307
  :calculated_lifecycle,
@@ -7540,6 +7794,41 @@ module Aws::Backup
7540
7794
  include Aws::Structure
7541
7795
  end
7542
7796
 
7797
+ # Contains information about a restore access backup vault.
7798
+ #
7799
+ # @!attribute [rw] restore_access_backup_vault_arn
7800
+ # The ARN of the restore access backup vault.
7801
+ # @return [String]
7802
+ #
7803
+ # @!attribute [rw] creation_date
7804
+ # The date and time when the restore access backup vault was created.
7805
+ # @return [Time]
7806
+ #
7807
+ # @!attribute [rw] approval_date
7808
+ # The date and time when the restore access backup vault was approved.
7809
+ # @return [Time]
7810
+ #
7811
+ # @!attribute [rw] vault_state
7812
+ # The current state of the restore access backup vault.
7813
+ # @return [String]
7814
+ #
7815
+ # @!attribute [rw] latest_revoke_request
7816
+ # Information about the latest request to revoke access to this backup
7817
+ # vault.
7818
+ # @return [Types::LatestRevokeRequest]
7819
+ #
7820
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/RestoreAccessBackupVaultListMember AWS API Documentation
7821
+ #
7822
+ class RestoreAccessBackupVaultListMember < Struct.new(
7823
+ :restore_access_backup_vault_arn,
7824
+ :creation_date,
7825
+ :approval_date,
7826
+ :vault_state,
7827
+ :latest_revoke_request)
7828
+ SENSITIVE = []
7829
+ include Aws::Structure
7830
+ end
7831
+
7543
7832
  # Contains information about the restore testing plan that Backup used
7544
7833
  # to initiate the restore job.
7545
7834
  #
@@ -8379,6 +8668,30 @@ module Aws::Backup
8379
8668
  include Aws::Structure
8380
8669
  end
8381
8670
 
8671
+ # @!attribute [rw] backup_vault_name
8672
+ # The name of the source backup vault associated with the restore
8673
+ # access backup vault to be revoked.
8674
+ # @return [String]
8675
+ #
8676
+ # @!attribute [rw] restore_access_backup_vault_arn
8677
+ # The ARN of the restore access backup vault to revoke.
8678
+ # @return [String]
8679
+ #
8680
+ # @!attribute [rw] requester_comment
8681
+ # A comment explaining the reason for revoking access to the restore
8682
+ # access backup vault.
8683
+ # @return [String]
8684
+ #
8685
+ # @see http://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/RevokeRestoreAccessBackupVaultInput AWS API Documentation
8686
+ #
8687
+ class RevokeRestoreAccessBackupVaultInput < Struct.new(
8688
+ :backup_vault_name,
8689
+ :restore_access_backup_vault_arn,
8690
+ :requester_comment)
8691
+ SENSITIVE = [:requester_comment]
8692
+ include Aws::Structure
8693
+ end
8694
+
8382
8695
  # The request failed due to a temporary failure of the server.
8383
8696
  #
8384
8697
  # @!attribute [rw] code
@@ -8426,6 +8739,9 @@ module Aws::Backup
8426
8739
  # otherwise identical calls to `StartBackupJob`. Retrying a successful
8427
8740
  # request with the same idempotency token results in a success message
8428
8741
  # with no action taken.
8742
+ #
8743
+ # **A suitable default value is auto-generated.** You should normally
8744
+ # not need to pass this option.
8429
8745
  # @return [String]
8430
8746
  #
8431
8747
  # @!attribute [rw] start_window_minutes
@@ -8594,6 +8910,9 @@ module Aws::Backup
8594
8910
  # otherwise identical calls to `StartCopyJob`. Retrying a successful
8595
8911
  # request with the same idempotency token results in a success message
8596
8912
  # with no action taken.
8913
+ #
8914
+ # **A suitable default value is auto-generated.** You should normally
8915
+ # not need to pass this option.
8597
8916
  # @return [String]
8598
8917
  #
8599
8918
  # @!attribute [rw] lifecycle
@@ -8773,6 +9092,9 @@ module Aws::Backup
8773
9092
  # otherwise identical calls to `StartRestoreJob`. Retrying a
8774
9093
  # successful request with the same idempotency token results in a
8775
9094
  # success message with no action taken.
9095
+ #
9096
+ # **A suitable default value is auto-generated.** You should normally
9097
+ # not need to pass this option.
8776
9098
  # @return [String]
8777
9099
  #
8778
9100
  # @!attribute [rw] resource_type
@@ -23,7 +23,7 @@ Aws::Plugins::GlobalConfiguration.add_identifier(:backup)
23
23
  # structure.
24
24
  #
25
25
  # backup = Aws::Backup::Client.new
26
- # resp = backup.cancel_legal_hold(params)
26
+ # resp = backup.associate_backup_vault_mpa_approval_team(params)
27
27
  #
28
28
  # See {Client} for more information.
29
29
  #
@@ -54,7 +54,7 @@ module Aws::Backup
54
54
  autoload :EndpointProvider, 'aws-sdk-backup/endpoint_provider'
55
55
  autoload :Endpoints, 'aws-sdk-backup/endpoints'
56
56
 
57
- GEM_VERSION = '1.89.0'
57
+ GEM_VERSION = '1.90.0'
58
58
 
59
59
  end
60
60