azure_mgmt_storage 0.17.1 → 0.17.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (100) hide show
  1. checksums.yaml +5 -5
  2. data/lib/2015-05-01-preview/generated/azure_mgmt_storage/storage_management_client.rb +1 -1
  3. data/lib/2015-06-15/generated/azure_mgmt_storage/storage_management_client.rb +1 -1
  4. data/lib/2016-01-01/generated/azure_mgmt_storage/storage_management_client.rb +1 -1
  5. data/lib/2016-12-01/generated/azure_mgmt_storage/storage_management_client.rb +1 -1
  6. data/lib/2017-06-01/generated/azure_mgmt_storage/storage_management_client.rb +1 -1
  7. data/lib/2017-10-01/generated/azure_mgmt_storage/storage_management_client.rb +1 -1
  8. data/lib/2018-02-01/generated/azure_mgmt_storage/models/operation_display.rb +11 -0
  9. data/lib/2018-02-01/generated/azure_mgmt_storage/models/service_sas_parameters.rb +1 -1
  10. data/lib/2018-02-01/generated/azure_mgmt_storage/storage_management_client.rb +1 -1
  11. data/lib/2018-03-01-preview/generated/azure_mgmt_storage/models/operation_display.rb +11 -0
  12. data/lib/2018-03-01-preview/generated/azure_mgmt_storage/models/service_sas_parameters.rb +1 -1
  13. data/lib/2018-03-01-preview/generated/azure_mgmt_storage/storage_management_client.rb +1 -1
  14. data/lib/2018-07-01/generated/azure_mgmt_storage.rb +107 -0
  15. data/lib/2018-07-01/generated/azure_mgmt_storage/blob_containers.rb +1721 -0
  16. data/lib/2018-07-01/generated/azure_mgmt_storage/models/access_tier.rb +16 -0
  17. data/lib/2018-07-01/generated/azure_mgmt_storage/models/account_sas_parameters.rb +136 -0
  18. data/lib/2018-07-01/generated/azure_mgmt_storage/models/account_status.rb +16 -0
  19. data/lib/2018-07-01/generated/azure_mgmt_storage/models/action.rb +15 -0
  20. data/lib/2018-07-01/generated/azure_mgmt_storage/models/azure_entity_resource.rb +75 -0
  21. data/lib/2018-07-01/generated/azure_mgmt_storage/models/blob_container.rb +217 -0
  22. data/lib/2018-07-01/generated/azure_mgmt_storage/models/bypass.rb +18 -0
  23. data/lib/2018-07-01/generated/azure_mgmt_storage/models/check_name_availability_result.rb +77 -0
  24. data/lib/2018-07-01/generated/azure_mgmt_storage/models/custom_domain.rb +60 -0
  25. data/lib/2018-07-01/generated/azure_mgmt_storage/models/default_action.rb +16 -0
  26. data/lib/2018-07-01/generated/azure_mgmt_storage/models/dimension.rb +57 -0
  27. data/lib/2018-07-01/generated/azure_mgmt_storage/models/encryption.rb +74 -0
  28. data/lib/2018-07-01/generated/azure_mgmt_storage/models/encryption_service.rb +62 -0
  29. data/lib/2018-07-01/generated/azure_mgmt_storage/models/encryption_services.rb +89 -0
  30. data/lib/2018-07-01/generated/azure_mgmt_storage/models/endpoints.rb +108 -0
  31. data/lib/2018-07-01/generated/azure_mgmt_storage/models/http_protocol.rb +16 -0
  32. data/lib/2018-07-01/generated/azure_mgmt_storage/models/identity.rb +72 -0
  33. data/lib/2018-07-01/generated/azure_mgmt_storage/models/immutability_policy.rb +98 -0
  34. data/lib/2018-07-01/generated/azure_mgmt_storage/models/immutability_policy_properties.rb +95 -0
  35. data/lib/2018-07-01/generated/azure_mgmt_storage/models/immutability_policy_state.rb +16 -0
  36. data/lib/2018-07-01/generated/azure_mgmt_storage/models/immutability_policy_update_type.rb +17 -0
  37. data/lib/2018-07-01/generated/azure_mgmt_storage/models/iprule.rb +61 -0
  38. data/lib/2018-07-01/generated/azure_mgmt_storage/models/key_permission.rb +16 -0
  39. data/lib/2018-07-01/generated/azure_mgmt_storage/models/key_source.rb +16 -0
  40. data/lib/2018-07-01/generated/azure_mgmt_storage/models/key_vault_properties.rb +68 -0
  41. data/lib/2018-07-01/generated/azure_mgmt_storage/models/kind.rb +19 -0
  42. data/lib/2018-07-01/generated/azure_mgmt_storage/models/lease_duration.rb +16 -0
  43. data/lib/2018-07-01/generated/azure_mgmt_storage/models/lease_state.rb +19 -0
  44. data/lib/2018-07-01/generated/azure_mgmt_storage/models/lease_status.rb +16 -0
  45. data/lib/2018-07-01/generated/azure_mgmt_storage/models/legal_hold.rb +71 -0
  46. data/lib/2018-07-01/generated/azure_mgmt_storage/models/legal_hold_properties.rb +72 -0
  47. data/lib/2018-07-01/generated/azure_mgmt_storage/models/list_account_sas_response.rb +47 -0
  48. data/lib/2018-07-01/generated/azure_mgmt_storage/models/list_container_item.rb +216 -0
  49. data/lib/2018-07-01/generated/azure_mgmt_storage/models/list_container_items.rb +55 -0
  50. data/lib/2018-07-01/generated/azure_mgmt_storage/models/list_service_sas_response.rb +47 -0
  51. data/lib/2018-07-01/generated/azure_mgmt_storage/models/metric_specification.rb +145 -0
  52. data/lib/2018-07-01/generated/azure_mgmt_storage/models/network_rule_set.rb +106 -0
  53. data/lib/2018-07-01/generated/azure_mgmt_storage/models/operation.rb +83 -0
  54. data/lib/2018-07-01/generated/azure_mgmt_storage/models/operation_display.rb +79 -0
  55. data/lib/2018-07-01/generated/azure_mgmt_storage/models/operation_list_result.rb +57 -0
  56. data/lib/2018-07-01/generated/azure_mgmt_storage/models/permissions.rb +22 -0
  57. data/lib/2018-07-01/generated/azure_mgmt_storage/models/provisioning_state.rb +17 -0
  58. data/lib/2018-07-01/generated/azure_mgmt_storage/models/proxy_resource.rb +63 -0
  59. data/lib/2018-07-01/generated/azure_mgmt_storage/models/public_access.rb +17 -0
  60. data/lib/2018-07-01/generated/azure_mgmt_storage/models/reason.rb +16 -0
  61. data/lib/2018-07-01/generated/azure_mgmt_storage/models/reason_code.rb +16 -0
  62. data/lib/2018-07-01/generated/azure_mgmt_storage/models/resource.rb +83 -0
  63. data/lib/2018-07-01/generated/azure_mgmt_storage/models/restriction.rb +85 -0
  64. data/lib/2018-07-01/generated/azure_mgmt_storage/models/service_sas_parameters.rb +247 -0
  65. data/lib/2018-07-01/generated/azure_mgmt_storage/models/service_specification.rb +56 -0
  66. data/lib/2018-07-01/generated/azure_mgmt_storage/models/services.rb +18 -0
  67. data/lib/2018-07-01/generated/azure_mgmt_storage/models/signed_resource.rb +18 -0
  68. data/lib/2018-07-01/generated/azure_mgmt_storage/models/signed_resource_types.rb +17 -0
  69. data/lib/2018-07-01/generated/azure_mgmt_storage/models/sku.rb +159 -0
  70. data/lib/2018-07-01/generated/azure_mgmt_storage/models/sku_name.rb +20 -0
  71. data/lib/2018-07-01/generated/azure_mgmt_storage/models/sku_tier.rb +16 -0
  72. data/lib/2018-07-01/generated/azure_mgmt_storage/models/skucapability.rb +63 -0
  73. data/lib/2018-07-01/generated/azure_mgmt_storage/models/state.rb +19 -0
  74. data/lib/2018-07-01/generated/azure_mgmt_storage/models/storage_account.rb +349 -0
  75. data/lib/2018-07-01/generated/azure_mgmt_storage/models/storage_account_check_name_availability_parameters.rb +62 -0
  76. data/lib/2018-07-01/generated/azure_mgmt_storage/models/storage_account_create_parameters.rb +203 -0
  77. data/lib/2018-07-01/generated/azure_mgmt_storage/models/storage_account_key.rb +73 -0
  78. data/lib/2018-07-01/generated/azure_mgmt_storage/models/storage_account_list_keys_result.rb +57 -0
  79. data/lib/2018-07-01/generated/azure_mgmt_storage/models/storage_account_list_result.rb +57 -0
  80. data/lib/2018-07-01/generated/azure_mgmt_storage/models/storage_account_regenerate_key_parameters.rb +47 -0
  81. data/lib/2018-07-01/generated/azure_mgmt_storage/models/storage_account_update_parameters.rb +179 -0
  82. data/lib/2018-07-01/generated/azure_mgmt_storage/models/storage_sku_list_result.rb +57 -0
  83. data/lib/2018-07-01/generated/azure_mgmt_storage/models/tag_property.rb +97 -0
  84. data/lib/2018-07-01/generated/azure_mgmt_storage/models/tracked_resource.rb +92 -0
  85. data/lib/2018-07-01/generated/azure_mgmt_storage/models/update_history_property.rb +114 -0
  86. data/lib/2018-07-01/generated/azure_mgmt_storage/models/usage.rb +89 -0
  87. data/lib/2018-07-01/generated/azure_mgmt_storage/models/usage_list_result.rb +56 -0
  88. data/lib/2018-07-01/generated/azure_mgmt_storage/models/usage_name.rb +59 -0
  89. data/lib/2018-07-01/generated/azure_mgmt_storage/models/usage_unit.rb +20 -0
  90. data/lib/2018-07-01/generated/azure_mgmt_storage/models/virtual_network_rule.rb +75 -0
  91. data/lib/2018-07-01/generated/azure_mgmt_storage/module_definition.rb +9 -0
  92. data/lib/2018-07-01/generated/azure_mgmt_storage/operations.rb +108 -0
  93. data/lib/2018-07-01/generated/azure_mgmt_storage/skus.rb +114 -0
  94. data/lib/2018-07-01/generated/azure_mgmt_storage/storage_accounts.rb +1340 -0
  95. data/lib/2018-07-01/generated/azure_mgmt_storage/storage_management_client.rb +147 -0
  96. data/lib/2018-07-01/generated/azure_mgmt_storage/usages.rb +118 -0
  97. data/lib/azure_mgmt_storage.rb +1 -0
  98. data/lib/profiles/latest/modules/storage_profile_module.rb +207 -199
  99. data/lib/version.rb +1 -1
  100. metadata +86 -3
@@ -0,0 +1,62 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::Storage::Mgmt::V2018_07_01
7
+ module Models
8
+ #
9
+ # The parameters used to check the availabity of the storage account name.
10
+ #
11
+ class StorageAccountCheckNameAvailabilityParameters
12
+
13
+ include MsRestAzure
14
+
15
+ # @return [String] The storage account name.
16
+ attr_accessor :name
17
+
18
+ # @return [String] The type of resource,
19
+ # Microsoft.Storage/storageAccounts. Default value:
20
+ # 'Microsoft.Storage/storageAccounts' .
21
+ attr_accessor :type
22
+
23
+
24
+ #
25
+ # Mapper for StorageAccountCheckNameAvailabilityParameters class as Ruby
26
+ # Hash.
27
+ # This will be used for serialization/deserialization.
28
+ #
29
+ def self.mapper()
30
+ {
31
+ client_side_validation: true,
32
+ required: false,
33
+ serialized_name: 'StorageAccountCheckNameAvailabilityParameters',
34
+ type: {
35
+ name: 'Composite',
36
+ class_name: 'StorageAccountCheckNameAvailabilityParameters',
37
+ model_properties: {
38
+ name: {
39
+ client_side_validation: true,
40
+ required: true,
41
+ serialized_name: 'name',
42
+ type: {
43
+ name: 'String'
44
+ }
45
+ },
46
+ type: {
47
+ client_side_validation: true,
48
+ required: true,
49
+ is_constant: true,
50
+ serialized_name: 'type',
51
+ default_value: 'Microsoft.Storage/storageAccounts',
52
+ type: {
53
+ name: 'String'
54
+ }
55
+ }
56
+ }
57
+ }
58
+ }
59
+ end
60
+ end
61
+ end
62
+ end
@@ -0,0 +1,203 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::Storage::Mgmt::V2018_07_01
7
+ module Models
8
+ #
9
+ # The parameters used when creating a storage account.
10
+ #
11
+ class StorageAccountCreateParameters
12
+
13
+ include MsRestAzure
14
+
15
+ # @return [Sku] Required. Gets or sets the sku name.
16
+ attr_accessor :sku
17
+
18
+ # @return [Kind] Required. Indicates the type of storage account.
19
+ # Possible values include: 'Storage', 'StorageV2', 'BlobStorage',
20
+ # 'FileStorage', 'BlockBlobStorage'
21
+ attr_accessor :kind
22
+
23
+ # @return [String] Required. Gets or sets the location of the resource.
24
+ # This will be one of the supported and registered Azure Geo Regions
25
+ # (e.g. West US, East US, Southeast Asia, etc.). The geo region of a
26
+ # resource cannot be changed once it is created, but if an identical geo
27
+ # region is specified on update, the request will succeed.
28
+ attr_accessor :location
29
+
30
+ # @return [Hash{String => String}] Gets or sets a list of key value pairs
31
+ # that describe the resource. These tags can be used for viewing and
32
+ # grouping this resource (across resource groups). A maximum of 15 tags
33
+ # can be provided for a resource. Each tag must have a key with a length
34
+ # no greater than 128 characters and a value with a length no greater
35
+ # than 256 characters.
36
+ attr_accessor :tags
37
+
38
+ # @return [Identity] The identity of the resource.
39
+ attr_accessor :identity
40
+
41
+ # @return [CustomDomain] User domain assigned to the storage account.
42
+ # Name is the CNAME source. Only one custom domain is supported per
43
+ # storage account at this time. To clear the existing custom domain, use
44
+ # an empty string for the custom domain name property.
45
+ attr_accessor :custom_domain
46
+
47
+ # @return [Encryption] Provides the encryption settings on the account.
48
+ # If left unspecified the account encryption settings will remain the
49
+ # same. The default setting is unencrypted.
50
+ attr_accessor :encryption
51
+
52
+ # @return [NetworkRuleSet] Network rule set
53
+ attr_accessor :network_rule_set
54
+
55
+ # @return [AccessTier] Required for storage accounts where kind =
56
+ # BlobStorage. The access tier used for billing. Possible values include:
57
+ # 'Hot', 'Cool'
58
+ attr_accessor :access_tier
59
+
60
+ # @return [Boolean] Enables Azure Files AAD Integration for SMB if sets
61
+ # to true.
62
+ attr_accessor :enable_azure_files_aad_integration
63
+
64
+ # @return [Boolean] Allows https traffic only to storage service if sets
65
+ # to true.
66
+ attr_accessor :enable_https_traffic_only
67
+
68
+ # @return [Boolean] Account HierarchicalNamespace enabled if sets to
69
+ # true.
70
+ attr_accessor :is_hns_enabled
71
+
72
+
73
+ #
74
+ # Mapper for StorageAccountCreateParameters class as Ruby Hash.
75
+ # This will be used for serialization/deserialization.
76
+ #
77
+ def self.mapper()
78
+ {
79
+ client_side_validation: true,
80
+ required: false,
81
+ serialized_name: 'StorageAccountCreateParameters',
82
+ type: {
83
+ name: 'Composite',
84
+ class_name: 'StorageAccountCreateParameters',
85
+ model_properties: {
86
+ sku: {
87
+ client_side_validation: true,
88
+ required: true,
89
+ serialized_name: 'sku',
90
+ type: {
91
+ name: 'Composite',
92
+ class_name: 'Sku'
93
+ }
94
+ },
95
+ kind: {
96
+ client_side_validation: true,
97
+ required: true,
98
+ serialized_name: 'kind',
99
+ type: {
100
+ name: 'Enum',
101
+ module: 'Kind'
102
+ }
103
+ },
104
+ location: {
105
+ client_side_validation: true,
106
+ required: true,
107
+ serialized_name: 'location',
108
+ type: {
109
+ name: 'String'
110
+ }
111
+ },
112
+ tags: {
113
+ client_side_validation: true,
114
+ required: false,
115
+ serialized_name: 'tags',
116
+ type: {
117
+ name: 'Dictionary',
118
+ value: {
119
+ client_side_validation: true,
120
+ required: false,
121
+ serialized_name: 'StringElementType',
122
+ type: {
123
+ name: 'String'
124
+ }
125
+ }
126
+ }
127
+ },
128
+ identity: {
129
+ client_side_validation: true,
130
+ required: false,
131
+ serialized_name: 'identity',
132
+ type: {
133
+ name: 'Composite',
134
+ class_name: 'Identity'
135
+ }
136
+ },
137
+ custom_domain: {
138
+ client_side_validation: true,
139
+ required: false,
140
+ serialized_name: 'properties.customDomain',
141
+ type: {
142
+ name: 'Composite',
143
+ class_name: 'CustomDomain'
144
+ }
145
+ },
146
+ encryption: {
147
+ client_side_validation: true,
148
+ required: false,
149
+ serialized_name: 'properties.encryption',
150
+ type: {
151
+ name: 'Composite',
152
+ class_name: 'Encryption'
153
+ }
154
+ },
155
+ network_rule_set: {
156
+ client_side_validation: true,
157
+ required: false,
158
+ serialized_name: 'properties.networkAcls',
159
+ type: {
160
+ name: 'Composite',
161
+ class_name: 'NetworkRuleSet'
162
+ }
163
+ },
164
+ access_tier: {
165
+ client_side_validation: true,
166
+ required: false,
167
+ serialized_name: 'properties.accessTier',
168
+ type: {
169
+ name: 'Enum',
170
+ module: 'AccessTier'
171
+ }
172
+ },
173
+ enable_azure_files_aad_integration: {
174
+ client_side_validation: true,
175
+ required: false,
176
+ serialized_name: 'properties.azureFilesAadIntegration',
177
+ type: {
178
+ name: 'Boolean'
179
+ }
180
+ },
181
+ enable_https_traffic_only: {
182
+ client_side_validation: true,
183
+ required: false,
184
+ serialized_name: 'properties.supportsHttpsTrafficOnly',
185
+ type: {
186
+ name: 'Boolean'
187
+ }
188
+ },
189
+ is_hns_enabled: {
190
+ client_side_validation: true,
191
+ required: false,
192
+ serialized_name: 'properties.isHnsEnabled',
193
+ type: {
194
+ name: 'Boolean'
195
+ }
196
+ }
197
+ }
198
+ }
199
+ }
200
+ end
201
+ end
202
+ end
203
+ end
@@ -0,0 +1,73 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::Storage::Mgmt::V2018_07_01
7
+ module Models
8
+ #
9
+ # An access key for the storage account.
10
+ #
11
+ class StorageAccountKey
12
+
13
+ include MsRestAzure
14
+
15
+ # @return [String] Name of the key.
16
+ attr_accessor :key_name
17
+
18
+ # @return [String] Base 64-encoded value of the key.
19
+ attr_accessor :value
20
+
21
+ # @return [KeyPermission] Permissions for the key -- read-only or full
22
+ # permissions. Possible values include: 'Read', 'Full'
23
+ attr_accessor :permissions
24
+
25
+
26
+ #
27
+ # Mapper for StorageAccountKey class as Ruby Hash.
28
+ # This will be used for serialization/deserialization.
29
+ #
30
+ def self.mapper()
31
+ {
32
+ client_side_validation: true,
33
+ required: false,
34
+ serialized_name: 'StorageAccountKey',
35
+ type: {
36
+ name: 'Composite',
37
+ class_name: 'StorageAccountKey',
38
+ model_properties: {
39
+ key_name: {
40
+ client_side_validation: true,
41
+ required: false,
42
+ read_only: true,
43
+ serialized_name: 'keyName',
44
+ type: {
45
+ name: 'String'
46
+ }
47
+ },
48
+ value: {
49
+ client_side_validation: true,
50
+ required: false,
51
+ read_only: true,
52
+ serialized_name: 'value',
53
+ type: {
54
+ name: 'String'
55
+ }
56
+ },
57
+ permissions: {
58
+ client_side_validation: true,
59
+ required: false,
60
+ read_only: true,
61
+ serialized_name: 'permissions',
62
+ type: {
63
+ name: 'Enum',
64
+ module: 'KeyPermission'
65
+ }
66
+ }
67
+ }
68
+ }
69
+ }
70
+ end
71
+ end
72
+ end
73
+ end
@@ -0,0 +1,57 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::Storage::Mgmt::V2018_07_01
7
+ module Models
8
+ #
9
+ # The response from the ListKeys operation.
10
+ #
11
+ class StorageAccountListKeysResult
12
+
13
+ include MsRestAzure
14
+
15
+ # @return [Array<StorageAccountKey>] Gets the list of storage account
16
+ # keys and their properties for the specified storage account.
17
+ attr_accessor :keys
18
+
19
+
20
+ #
21
+ # Mapper for StorageAccountListKeysResult class as Ruby Hash.
22
+ # This will be used for serialization/deserialization.
23
+ #
24
+ def self.mapper()
25
+ {
26
+ client_side_validation: true,
27
+ required: false,
28
+ serialized_name: 'StorageAccountListKeysResult',
29
+ type: {
30
+ name: 'Composite',
31
+ class_name: 'StorageAccountListKeysResult',
32
+ model_properties: {
33
+ keys: {
34
+ client_side_validation: true,
35
+ required: false,
36
+ read_only: true,
37
+ serialized_name: 'keys',
38
+ type: {
39
+ name: 'Sequence',
40
+ element: {
41
+ client_side_validation: true,
42
+ required: false,
43
+ serialized_name: 'StorageAccountKeyElementType',
44
+ type: {
45
+ name: 'Composite',
46
+ class_name: 'StorageAccountKey'
47
+ }
48
+ }
49
+ }
50
+ }
51
+ }
52
+ }
53
+ }
54
+ end
55
+ end
56
+ end
57
+ end
@@ -0,0 +1,57 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::Storage::Mgmt::V2018_07_01
7
+ module Models
8
+ #
9
+ # The response from the List Storage Accounts operation.
10
+ #
11
+ class StorageAccountListResult
12
+
13
+ include MsRestAzure
14
+
15
+ # @return [Array<StorageAccount>] Gets the list of storage accounts and
16
+ # their properties.
17
+ attr_accessor :value
18
+
19
+
20
+ #
21
+ # Mapper for StorageAccountListResult class as Ruby Hash.
22
+ # This will be used for serialization/deserialization.
23
+ #
24
+ def self.mapper()
25
+ {
26
+ client_side_validation: true,
27
+ required: false,
28
+ serialized_name: 'StorageAccountListResult',
29
+ type: {
30
+ name: 'Composite',
31
+ class_name: 'StorageAccountListResult',
32
+ model_properties: {
33
+ value: {
34
+ client_side_validation: true,
35
+ required: false,
36
+ read_only: true,
37
+ serialized_name: 'value',
38
+ type: {
39
+ name: 'Sequence',
40
+ element: {
41
+ client_side_validation: true,
42
+ required: false,
43
+ serialized_name: 'StorageAccountElementType',
44
+ type: {
45
+ name: 'Composite',
46
+ class_name: 'StorageAccount'
47
+ }
48
+ }
49
+ }
50
+ }
51
+ }
52
+ }
53
+ }
54
+ end
55
+ end
56
+ end
57
+ end