azure_mgmt_datalake_analytics 0.10.0 → 0.11.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.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. data/lib/generated/azure_mgmt_datalake_analytics.rb +21 -13
  3. data/lib/generated/azure_mgmt_datalake_analytics/account.rb +183 -184
  4. data/lib/generated/azure_mgmt_datalake_analytics/compute_policies.rb +682 -0
  5. data/lib/generated/azure_mgmt_datalake_analytics/data_lake_analytics_account_management_client.rb +5 -1
  6. data/lib/generated/azure_mgmt_datalake_analytics/data_lake_store_accounts.rb +79 -80
  7. data/lib/generated/azure_mgmt_datalake_analytics/firewall_rules.rb +20 -21
  8. data/lib/generated/azure_mgmt_datalake_analytics/models/aadobject_type.rb +17 -0
  9. data/lib/generated/azure_mgmt_datalake_analytics/models/add_data_lake_store_parameters.rb +2 -1
  10. data/lib/generated/azure_mgmt_datalake_analytics/models/add_storage_account_parameters.rb +2 -1
  11. data/lib/generated/azure_mgmt_datalake_analytics/models/compute_policy.rb +98 -0
  12. data/lib/generated/azure_mgmt_datalake_analytics/models/compute_policy_account_create_parameters.rb +97 -0
  13. data/lib/generated/azure_mgmt_datalake_analytics/models/compute_policy_create_or_update_parameters.rb +87 -0
  14. data/lib/generated/azure_mgmt_datalake_analytics/models/compute_policy_list_result.rb +96 -0
  15. data/lib/generated/azure_mgmt_datalake_analytics/models/data_lake_analytics_account.rb +94 -34
  16. data/lib/generated/azure_mgmt_datalake_analytics/models/data_lake_analytics_account_basic.rb +154 -0
  17. data/lib/generated/azure_mgmt_datalake_analytics/models/data_lake_analytics_account_list_data_lake_store_result.rb +2 -1
  18. data/lib/generated/azure_mgmt_datalake_analytics/models/data_lake_analytics_account_list_result.rb +6 -5
  19. data/lib/generated/azure_mgmt_datalake_analytics/models/data_lake_analytics_account_list_storage_accounts_result.rb +2 -1
  20. data/lib/generated/azure_mgmt_datalake_analytics/models/data_lake_analytics_account_properties_basic.rb +109 -0
  21. data/lib/generated/azure_mgmt_datalake_analytics/models/data_lake_analytics_account_state.rb +1 -1
  22. data/lib/generated/azure_mgmt_datalake_analytics/models/data_lake_analytics_account_status.rb +1 -1
  23. data/lib/generated/azure_mgmt_datalake_analytics/models/data_lake_analytics_account_update_parameters.rb +49 -1
  24. data/lib/generated/azure_mgmt_datalake_analytics/models/data_lake_analytics_firewall_rule_list_result.rb +2 -1
  25. data/lib/generated/azure_mgmt_datalake_analytics/models/data_lake_store_account_info.rb +2 -1
  26. data/lib/generated/azure_mgmt_datalake_analytics/models/firewall_allow_azure_ips_state.rb +1 -1
  27. data/lib/generated/azure_mgmt_datalake_analytics/models/firewall_rule.rb +2 -1
  28. data/lib/generated/azure_mgmt_datalake_analytics/models/firewall_state.rb +1 -1
  29. data/lib/generated/azure_mgmt_datalake_analytics/models/list_sas_tokens_result.rb +2 -1
  30. data/lib/generated/azure_mgmt_datalake_analytics/models/list_storage_containers_result.rb +2 -1
  31. data/lib/generated/azure_mgmt_datalake_analytics/models/optional_sub_resource.rb +2 -1
  32. data/lib/generated/azure_mgmt_datalake_analytics/models/sas_token_info.rb +2 -1
  33. data/lib/generated/azure_mgmt_datalake_analytics/models/storage_account_info.rb +2 -1
  34. data/lib/generated/azure_mgmt_datalake_analytics/models/storage_container.rb +9 -8
  35. data/lib/generated/azure_mgmt_datalake_analytics/models/sub_resource.rb +2 -1
  36. data/lib/generated/azure_mgmt_datalake_analytics/models/tier_type.rb +1 -1
  37. data/lib/generated/azure_mgmt_datalake_analytics/models/update_firewall_rule_parameters.rb +2 -1
  38. data/lib/generated/azure_mgmt_datalake_analytics/models/update_storage_account_parameters.rb +2 -1
  39. data/lib/generated/azure_mgmt_datalake_analytics/module_definition.rb +1 -1
  40. data/lib/generated/azure_mgmt_datalake_analytics/storage_accounts.rb +163 -164
  41. data/lib/generated/azure_mgmt_datalake_analytics/version.rb +2 -2
  42. metadata +12 -4
@@ -0,0 +1,17 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator 1.2.2.0
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::ARM::DataLakeAnalytics
7
+ module Models
8
+ #
9
+ # Defines values for AADObjectType
10
+ #
11
+ module AADObjectType
12
+ User = "User"
13
+ Group = "Group"
14
+ ServicePrincipal = "ServicePrincipal"
15
+ end
16
+ end
17
+ end
@@ -1,5 +1,5 @@
1
1
  # encoding: utf-8
2
- # Code generated by Microsoft (R) AutoRest Code Generator 1.0.1.0
2
+ # Code generated by Microsoft (R) AutoRest Code Generator 1.2.2.0
3
3
  # Changes may cause incorrect behavior and will be lost if the code is
4
4
  # regenerated.
5
5
 
@@ -12,6 +12,7 @@ module Azure::ARM::DataLakeAnalytics
12
12
 
13
13
  include MsRestAzure
14
14
 
15
+ include MsRest::JSONable
15
16
  # @return [String] the optional suffix for the Data Lake Store account.
16
17
  attr_accessor :suffix
17
18
 
@@ -1,5 +1,5 @@
1
1
  # encoding: utf-8
2
- # Code generated by Microsoft (R) AutoRest Code Generator 1.0.1.0
2
+ # Code generated by Microsoft (R) AutoRest Code Generator 1.2.2.0
3
3
  # Changes may cause incorrect behavior and will be lost if the code is
4
4
  # regenerated.
5
5
 
@@ -13,6 +13,7 @@ module Azure::ARM::DataLakeAnalytics
13
13
 
14
14
  include MsRestAzure
15
15
 
16
+ include MsRest::JSONable
16
17
  # @return [String] the access key associated with this Azure Storage
17
18
  # account that will be used to connect to it.
18
19
  attr_accessor :access_key
@@ -0,0 +1,98 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator 1.2.2.0
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::ARM::DataLakeAnalytics
7
+ module Models
8
+ #
9
+ # The parameters used to create a new compute policy.
10
+ #
11
+ class ComputePolicy
12
+
13
+ include MsRestAzure
14
+
15
+ include MsRest::JSONable
16
+ # @return [String] The name of the compute policy
17
+ attr_accessor :name
18
+
19
+ # @return The AAD object identifier for the entity to create a policy
20
+ # for.
21
+ attr_accessor :object_id
22
+
23
+ # @return [AADObjectType] The type of AAD object the object identifier
24
+ # refers to. Possible values include: 'User', 'Group', 'ServicePrincipal'
25
+ attr_accessor :object_type
26
+
27
+ # @return [Integer] The maximum degree of parallelism per job this user
28
+ # can use to submit jobs.
29
+ attr_accessor :max_degree_of_parallelism_per_job
30
+
31
+ # @return [Integer] The minimum priority per job this user can use to
32
+ # submit jobs.
33
+ attr_accessor :min_priority_per_job
34
+
35
+
36
+ #
37
+ # Mapper for ComputePolicy class as Ruby Hash.
38
+ # This will be used for serialization/deserialization.
39
+ #
40
+ def self.mapper()
41
+ {
42
+ required: false,
43
+ serialized_name: 'ComputePolicy',
44
+ type: {
45
+ name: 'Composite',
46
+ class_name: 'ComputePolicy',
47
+ model_properties: {
48
+ name: {
49
+ required: false,
50
+ read_only: true,
51
+ serialized_name: 'name',
52
+ type: {
53
+ name: 'String'
54
+ }
55
+ },
56
+ object_id: {
57
+ required: false,
58
+ read_only: true,
59
+ serialized_name: 'properties.objectId',
60
+ type: {
61
+ name: 'String'
62
+ }
63
+ },
64
+ object_type: {
65
+ required: false,
66
+ read_only: true,
67
+ serialized_name: 'properties.objectType',
68
+ type: {
69
+ name: 'String'
70
+ }
71
+ },
72
+ max_degree_of_parallelism_per_job: {
73
+ required: false,
74
+ serialized_name: 'properties.maxDegreeOfParallelismPerJob',
75
+ constraints: {
76
+ InclusiveMinimum: 1
77
+ },
78
+ type: {
79
+ name: 'Number'
80
+ }
81
+ },
82
+ min_priority_per_job: {
83
+ required: false,
84
+ serialized_name: 'properties.minPriorityPerJob',
85
+ constraints: {
86
+ InclusiveMinimum: 1
87
+ },
88
+ type: {
89
+ name: 'Number'
90
+ }
91
+ }
92
+ }
93
+ }
94
+ }
95
+ end
96
+ end
97
+ end
98
+ end
@@ -0,0 +1,97 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator 1.2.2.0
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::ARM::DataLakeAnalytics
7
+ module Models
8
+ #
9
+ # The parameters used to create a new compute policy.
10
+ #
11
+ class ComputePolicyAccountCreateParameters
12
+
13
+ include MsRestAzure
14
+
15
+ include MsRest::JSONable
16
+ # @return [String] The unique name of the policy to create
17
+ attr_accessor :name
18
+
19
+ # @return The AAD object identifier for the entity to create a policy
20
+ # for.
21
+ attr_accessor :object_id
22
+
23
+ # @return [AADObjectType] The type of AAD object the object identifier
24
+ # refers to. Possible values include: 'User', 'Group', 'ServicePrincipal'
25
+ attr_accessor :object_type
26
+
27
+ # @return [Integer] The maximum degree of parallelism per job this user
28
+ # can use to submit jobs. This property, the min priority per job
29
+ # property, or both must be passed.
30
+ attr_accessor :max_degree_of_parallelism_per_job
31
+
32
+ # @return [Integer] The minimum priority per job this user can use to
33
+ # submit jobs. This property, the max degree of parallelism per job
34
+ # property, or both must be passed.
35
+ attr_accessor :min_priority_per_job
36
+
37
+
38
+ #
39
+ # Mapper for ComputePolicyAccountCreateParameters class as Ruby Hash.
40
+ # This will be used for serialization/deserialization.
41
+ #
42
+ def self.mapper()
43
+ {
44
+ required: false,
45
+ serialized_name: 'ComputePolicyAccountCreateParameters',
46
+ type: {
47
+ name: 'Composite',
48
+ class_name: 'ComputePolicyAccountCreateParameters',
49
+ model_properties: {
50
+ name: {
51
+ required: true,
52
+ serialized_name: 'name',
53
+ type: {
54
+ name: 'String'
55
+ }
56
+ },
57
+ object_id: {
58
+ required: true,
59
+ serialized_name: 'properties.objectId',
60
+ type: {
61
+ name: 'String'
62
+ }
63
+ },
64
+ object_type: {
65
+ required: true,
66
+ serialized_name: 'properties.objectType',
67
+ type: {
68
+ name: 'String'
69
+ }
70
+ },
71
+ max_degree_of_parallelism_per_job: {
72
+ required: false,
73
+ serialized_name: 'properties.maxDegreeOfParallelismPerJob',
74
+ constraints: {
75
+ InclusiveMinimum: 1
76
+ },
77
+ type: {
78
+ name: 'Number'
79
+ }
80
+ },
81
+ min_priority_per_job: {
82
+ required: false,
83
+ serialized_name: 'properties.minPriorityPerJob',
84
+ constraints: {
85
+ InclusiveMinimum: 1
86
+ },
87
+ type: {
88
+ name: 'Number'
89
+ }
90
+ }
91
+ }
92
+ }
93
+ }
94
+ end
95
+ end
96
+ end
97
+ end
@@ -0,0 +1,87 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator 1.2.2.0
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::ARM::DataLakeAnalytics
7
+ module Models
8
+ #
9
+ # The parameters used to create a new compute policy.
10
+ #
11
+ class ComputePolicyCreateOrUpdateParameters
12
+
13
+ include MsRestAzure
14
+
15
+ include MsRest::JSONable
16
+ # @return The AAD object identifier for the entity to create a policy
17
+ # for.
18
+ attr_accessor :object_id
19
+
20
+ # @return [AADObjectType] The type of AAD object the object identifier
21
+ # refers to. Possible values include: 'User', 'Group', 'ServicePrincipal'
22
+ attr_accessor :object_type
23
+
24
+ # @return [Integer] The maximum degree of parallelism per job this user
25
+ # can use to submit jobs. This property, the min priority per job
26
+ # property, or both must be passed.
27
+ attr_accessor :max_degree_of_parallelism_per_job
28
+
29
+ # @return [Integer] The minimum priority per job this user can use to
30
+ # submit jobs. This property, the max degree of parallelism per job
31
+ # property, or both must be passed.
32
+ attr_accessor :min_priority_per_job
33
+
34
+
35
+ #
36
+ # Mapper for ComputePolicyCreateOrUpdateParameters class as Ruby Hash.
37
+ # This will be used for serialization/deserialization.
38
+ #
39
+ def self.mapper()
40
+ {
41
+ required: false,
42
+ serialized_name: 'ComputePolicyCreateOrUpdateParameters',
43
+ type: {
44
+ name: 'Composite',
45
+ class_name: 'ComputePolicyCreateOrUpdateParameters',
46
+ model_properties: {
47
+ object_id: {
48
+ required: true,
49
+ serialized_name: 'properties.objectId',
50
+ type: {
51
+ name: 'String'
52
+ }
53
+ },
54
+ object_type: {
55
+ required: true,
56
+ serialized_name: 'properties.objectType',
57
+ type: {
58
+ name: 'String'
59
+ }
60
+ },
61
+ max_degree_of_parallelism_per_job: {
62
+ required: false,
63
+ serialized_name: 'properties.maxDegreeOfParallelismPerJob',
64
+ constraints: {
65
+ InclusiveMinimum: 1
66
+ },
67
+ type: {
68
+ name: 'Number'
69
+ }
70
+ },
71
+ min_priority_per_job: {
72
+ required: false,
73
+ serialized_name: 'properties.minPriorityPerJob',
74
+ constraints: {
75
+ InclusiveMinimum: 1
76
+ },
77
+ type: {
78
+ name: 'Number'
79
+ }
80
+ }
81
+ }
82
+ }
83
+ }
84
+ end
85
+ end
86
+ end
87
+ end
@@ -0,0 +1,96 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator 1.2.2.0
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::ARM::DataLakeAnalytics
7
+ module Models
8
+ #
9
+ # The list of compute policies in the account.
10
+ #
11
+ class ComputePolicyListResult
12
+
13
+ include MsRestAzure
14
+
15
+ include MsRest::JSONable
16
+ # @return [Array<ComputePolicy>] the results of the list operation
17
+ attr_accessor :value
18
+
19
+ # @return [String] the link (url) to the next page of results.
20
+ attr_accessor :next_link
21
+
22
+ # return [Proc] with next page method call.
23
+ attr_accessor :next_method
24
+
25
+ #
26
+ # Gets the rest of the items for the request, enabling auto-pagination.
27
+ #
28
+ # @return [Array<ComputePolicy>] operation results.
29
+ #
30
+ def get_all_items
31
+ items = @value
32
+ page = self
33
+ while page.next_link != nil do
34
+ page = page.get_next_page
35
+ items.concat(page.value)
36
+ end
37
+ items
38
+ end
39
+
40
+ #
41
+ # Gets the next page of results.
42
+ #
43
+ # @return [ComputePolicyListResult] with next page content.
44
+ #
45
+ def get_next_page
46
+ response = @next_method.call(@next_link).value! unless @next_method.nil?
47
+ unless response.nil?
48
+ @next_link = response.body.next_link
49
+ @value = response.body.value
50
+ self
51
+ end
52
+ end
53
+
54
+ #
55
+ # Mapper for ComputePolicyListResult class as Ruby Hash.
56
+ # This will be used for serialization/deserialization.
57
+ #
58
+ def self.mapper()
59
+ {
60
+ required: false,
61
+ serialized_name: 'ComputePolicyListResult',
62
+ type: {
63
+ name: 'Composite',
64
+ class_name: 'ComputePolicyListResult',
65
+ model_properties: {
66
+ value: {
67
+ required: false,
68
+ read_only: true,
69
+ serialized_name: 'value',
70
+ type: {
71
+ name: 'Sequence',
72
+ element: {
73
+ required: false,
74
+ serialized_name: 'ComputePolicyElementType',
75
+ type: {
76
+ name: 'Composite',
77
+ class_name: 'ComputePolicy'
78
+ }
79
+ }
80
+ }
81
+ },
82
+ next_link: {
83
+ required: false,
84
+ read_only: true,
85
+ serialized_name: 'nextLink',
86
+ type: {
87
+ name: 'String'
88
+ }
89
+ }
90
+ }
91
+ }
92
+ }
93
+ end
94
+ end
95
+ end
96
+ end
@@ -1,5 +1,5 @@
1
1
  # encoding: utf-8
2
- # Code generated by Microsoft (R) AutoRest Code Generator 1.0.1.0
2
+ # Code generated by Microsoft (R) AutoRest Code Generator 1.2.2.0
3
3
  # Changes may cause incorrect behavior and will be lost if the code is
4
4
  # regenerated.
5
5
 
@@ -13,6 +13,7 @@ module Azure::ARM::DataLakeAnalytics
13
13
 
14
14
  include MsRestAzure
15
15
 
16
+ include MsRest::JSONable
16
17
  # @return [DataLakeAnalyticsAccountStatus] the provisioning status of the
17
18
  # Data Lake Analytics account. Possible values include: 'Failed',
18
19
  # 'Creating', 'Running', 'Succeeded', 'Patching', 'Suspending',
@@ -23,6 +24,19 @@ module Azure::ARM::DataLakeAnalytics
23
24
  # Analytics account. Possible values include: 'Active', 'Suspended'
24
25
  attr_accessor :state
25
26
 
27
+ # @return [DateTime] the account creation time.
28
+ attr_accessor :creation_time
29
+
30
+ # @return [DateTime] the account last modified time.
31
+ attr_accessor :last_modified_time
32
+
33
+ # @return [String] the full CName endpoint for this account.
34
+ attr_accessor :endpoint
35
+
36
+ # @return The unique identifier associated with this Data Lake Analytics
37
+ # account.
38
+ attr_accessor :account_id
39
+
26
40
  # @return [String] the default data lake storage account associated with
27
41
  # this Data Lake Analytics account.
28
42
  attr_accessor :default_data_lake_store_account
@@ -57,15 +71,6 @@ module Azure::ARM::DataLakeAnalytics
57
71
  # accounts associated with this account.
58
72
  attr_accessor :storage_accounts
59
73
 
60
- # @return [DateTime] the account creation time.
61
- attr_accessor :creation_time
62
-
63
- # @return [DateTime] the account last modified time.
64
- attr_accessor :last_modified_time
65
-
66
- # @return [String] the full CName endpoint for this account.
67
- attr_accessor :endpoint
68
-
69
74
  # @return [TierType] the commitment tier for the next month. Possible
70
75
  # values include: 'Consumption', 'Commitment_100AUHours',
71
76
  # 'Commitment_500AUHours', 'Commitment_1000AUHours',
@@ -97,6 +102,18 @@ module Azure::ARM::DataLakeAnalytics
97
102
  # with this Data Lake Analytics account.
98
103
  attr_accessor :firewall_rules
99
104
 
105
+ # @return [Integer] the maximum supported degree of parallelism per job
106
+ # for this account.
107
+ attr_accessor :max_degree_of_parallelism_per_job
108
+
109
+ # @return [Integer] the minimum supported priority per job for this
110
+ # account.
111
+ attr_accessor :min_priority_per_job
112
+
113
+ # @return [Array<ComputePolicyAccountCreateParameters>] the list of
114
+ # compute policies to create in this account.
115
+ attr_accessor :compute_policies
116
+
100
117
 
101
118
  #
102
119
  # Mapper for DataLakeAnalyticsAccount class as Ruby Hash.
@@ -173,6 +190,38 @@ module Azure::ARM::DataLakeAnalytics
173
190
  module: 'DataLakeAnalyticsAccountState'
174
191
  }
175
192
  },
193
+ creation_time: {
194
+ required: false,
195
+ read_only: true,
196
+ serialized_name: 'properties.creationTime',
197
+ type: {
198
+ name: 'DateTime'
199
+ }
200
+ },
201
+ last_modified_time: {
202
+ required: false,
203
+ read_only: true,
204
+ serialized_name: 'properties.lastModifiedTime',
205
+ type: {
206
+ name: 'DateTime'
207
+ }
208
+ },
209
+ endpoint: {
210
+ required: false,
211
+ read_only: true,
212
+ serialized_name: 'properties.endpoint',
213
+ type: {
214
+ name: 'String'
215
+ }
216
+ },
217
+ account_id: {
218
+ required: false,
219
+ read_only: true,
220
+ serialized_name: 'properties.accountId',
221
+ type: {
222
+ name: 'String'
223
+ }
224
+ },
176
225
  default_data_lake_store_account: {
177
226
  required: true,
178
227
  serialized_name: 'properties.defaultDataLakeStoreAccount',
@@ -260,30 +309,6 @@ module Azure::ARM::DataLakeAnalytics
260
309
  }
261
310
  }
262
311
  },
263
- creation_time: {
264
- required: false,
265
- read_only: true,
266
- serialized_name: 'properties.creationTime',
267
- type: {
268
- name: 'DateTime'
269
- }
270
- },
271
- last_modified_time: {
272
- required: false,
273
- read_only: true,
274
- serialized_name: 'properties.lastModifiedTime',
275
- type: {
276
- name: 'DateTime'
277
- }
278
- },
279
- endpoint: {
280
- required: false,
281
- read_only: true,
282
- serialized_name: 'properties.endpoint',
283
- type: {
284
- name: 'String'
285
- }
286
- },
287
312
  new_tier: {
288
313
  required: false,
289
314
  serialized_name: 'properties.newTier',
@@ -331,6 +356,41 @@ module Azure::ARM::DataLakeAnalytics
331
356
  }
332
357
  }
333
358
  }
359
+ },
360
+ max_degree_of_parallelism_per_job: {
361
+ required: false,
362
+ serialized_name: 'properties.maxDegreeOfParallelismPerJob',
363
+ constraints: {
364
+ InclusiveMinimum: 1
365
+ },
366
+ type: {
367
+ name: 'Number'
368
+ }
369
+ },
370
+ min_priority_per_job: {
371
+ required: false,
372
+ serialized_name: 'properties.minPriorityPerJob',
373
+ constraints: {
374
+ InclusiveMinimum: 1
375
+ },
376
+ type: {
377
+ name: 'Number'
378
+ }
379
+ },
380
+ compute_policies: {
381
+ required: false,
382
+ serialized_name: 'properties.computePolicies',
383
+ type: {
384
+ name: 'Sequence',
385
+ element: {
386
+ required: false,
387
+ serialized_name: 'ComputePolicyAccountCreateParametersElementType',
388
+ type: {
389
+ name: 'Composite',
390
+ class_name: 'ComputePolicyAccountCreateParameters'
391
+ }
392
+ }
393
+ }
334
394
  }
335
395
  }
336
396
  }