@things-factory/operato-dataset 8.0.18 → 8.0.20

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.
package/schema.graphql CHANGED
@@ -89,6 +89,7 @@ type Activity {
89
89
  type ActivityApproval {
90
90
  activityThread: ActivityThread
91
91
  approver: User
92
+ approverRole: Role
92
93
  comment: String
93
94
  createdAt: DateTimeISO
94
95
  creator: User
@@ -484,6 +485,7 @@ type AppBinding {
484
485
  updatedAt: DateTimeISO
485
486
  updater: User!
486
487
  userType: String
488
+ username: String
487
489
  usersAuthProviders: [UsersAuthProviders!]
488
490
  }
489
491
 
@@ -651,6 +653,7 @@ type Attachment {
651
653
  refBy: String
652
654
  refType: String
653
655
  size: String!
656
+ tags: Object
654
657
  updatedAt: DateTimeISO!
655
658
  updater: User
656
659
  }
@@ -669,6 +672,7 @@ input AttachmentPatch {
669
672
  name: String
670
673
  refBy: String
671
674
  refType: String
675
+ tags: Object
672
676
  }
673
677
 
674
678
  """Entity for AttributeSet"""
@@ -1155,6 +1159,11 @@ type DataItem {
1155
1159
  """
1156
1160
  stat: String
1157
1161
 
1162
+ """
1163
+ Specifies a secondary grouping identifier for data items with related content, allowing them to be displayed as subgroups within the overall dataset.
1164
+ """
1165
+ subgroup: String
1166
+
1158
1167
  """
1159
1168
  Specifies a key name to be used as a property in a JSON-like object, representing a subfield of a dataset record.
1160
1169
  """
@@ -1204,6 +1213,11 @@ input DataItemPatch {
1204
1213
  """
1205
1214
  stat: String
1206
1215
 
1216
+ """
1217
+ Specifies a secondary grouping identifier for data items with related content, allowing them to be displayed as subgroups within the overall dataset.
1218
+ """
1219
+ subgroup: String
1220
+
1207
1221
  """
1208
1222
  Specifies a key name to be used as a property in a JSON-like object, representing a subfield of a dataset record.
1209
1223
  """
@@ -1225,6 +1239,7 @@ enum DataItemType {
1225
1239
  number
1226
1240
  radio
1227
1241
  select
1242
+ signature
1228
1243
  text
1229
1244
  }
1230
1245
 
@@ -1382,6 +1397,7 @@ type DataSensor {
1382
1397
  active: Boolean
1383
1398
  appliance: Appliance
1384
1399
  brand: String
1400
+ capacity: Float
1385
1401
  createdAt: DateTimeISO
1386
1402
  creator: User
1387
1403
  dataSet: DataSet
@@ -1400,6 +1416,7 @@ type DataSensor {
1400
1416
  refBy: String
1401
1417
  serialNo: String
1402
1418
  tag: String
1419
+ unit: String
1403
1420
  updatedAt: DateTimeISO
1404
1421
  updater: User
1405
1422
  }
@@ -1413,6 +1430,7 @@ input DataSensorPatch {
1413
1430
  active: Boolean
1414
1431
  appliance: ObjectRef
1415
1432
  brand: String
1433
+ capacity: Float
1416
1434
  cuFlag: String!
1417
1435
  dataSet: ObjectRef
1418
1436
  decoder: ObjectRef
@@ -1425,12 +1443,15 @@ input DataSensorPatch {
1425
1443
  refBy: String
1426
1444
  serialNo: String
1427
1445
  tag: String
1446
+ unit: String
1428
1447
  }
1429
1448
 
1430
1449
  """Entity for DataSet"""
1431
1450
  type DataSet {
1432
1451
  """Indicates whether the dataset is currently active or in use."""
1433
1452
  active: Boolean
1453
+
1454
+ """Retrieves the approval line items for the dataset"""
1434
1455
  approvalLine: [ApprovalLineItem!]!
1435
1456
 
1436
1457
  """Who to contact for OOC issues"""
@@ -1453,6 +1474,8 @@ type DataSet {
1453
1474
 
1454
1475
  """The domain to which the dataset belongs"""
1455
1476
  domain: Domain
1477
+
1478
+ """Retrieves the entry board for the dataset"""
1456
1479
  entryBoard: Board
1457
1480
 
1458
1481
  """The person responsible for manually entering the data for that dataset"""
@@ -1470,7 +1493,17 @@ type DataSet {
1470
1493
 
1471
1494
  """The unique identifier of the dataset"""
1472
1495
  id: ID!
1496
+
1497
+ """Whether the user is allowed to enter data for this dataset"""
1498
+ isEntryAllowed: Boolean!
1499
+
1500
+ """Whether the user is a supervisor for this dataset"""
1501
+ isSupervisor: Boolean!
1502
+
1503
+ """Retrieves the latest collection time for the dataset."""
1473
1504
  latestCollectedAt: DateTimeISO
1505
+
1506
+ """Retrieves the monitor board for the dataset"""
1474
1507
  monitorBoard: Board
1475
1508
 
1476
1509
  """
@@ -1485,7 +1518,11 @@ type DataSet {
1485
1518
 
1486
1519
  """The name of the dataset"""
1487
1520
  name: String!
1521
+
1522
+ """Retrieves the next schedule time for the dataset."""
1488
1523
  nextSchedule: DateTimeISO
1524
+
1525
+ """Retrieves the next summary schedule time for the dataset."""
1489
1526
  nextSummarySchedule: DateTimeISO
1490
1527
 
1491
1528
  """Scenario for handling normal data-sample occurance for that dataset"""
@@ -1505,6 +1542,8 @@ type DataSet {
1505
1542
  Specifies the partition keys used to distribute and organize the dataset's data. Partition keys are properties or attributes that determine how data is logically grouped, stored, and retrieved. They enable efficient data management and querying by allowing data to be organized into smaller, manageable partitions or segments.
1506
1543
  """
1507
1544
  partitionKeys: Object
1545
+
1546
+ """Retrieves the previous schedule time for the dataset."""
1508
1547
  prevSchedule: DateTimeISO
1509
1548
 
1510
1549
  """The report template of the dataset"""
@@ -1523,6 +1562,9 @@ type DataSet {
1523
1562
  """Indicates if the dataset requires review"""
1524
1563
  requiresReview: Boolean
1525
1564
 
1565
+ """The final authority on resolving outlier related to that dataset."""
1566
+ resolverRole: Role
1567
+
1526
1568
  """Approval line for confrim of the dataset"""
1527
1569
  reviewApprovalLine: [ApprovalLineItem!]
1528
1570
 
@@ -1548,6 +1590,11 @@ type DataSet {
1548
1590
  """A tag name of data to be published when a data sample created"""
1549
1591
  tag: String
1550
1592
 
1593
+ """
1594
+ The maximum allowed time limit (in seconds) for completing the data entry operation
1595
+ """
1596
+ timeLimit: Float
1597
+
1551
1598
  """The timezone of the dataset"""
1552
1599
  timezone: String
1553
1600
 
@@ -1628,7 +1675,6 @@ type DataSetList {
1628
1675
 
1629
1676
  input DataSetPatch {
1630
1677
  active: Boolean
1631
- assignees: Object
1632
1678
  cuFlag: String!
1633
1679
  dataItems: [DataItemPatch!]
1634
1680
  dataKeySet: ObjectRef
@@ -1648,6 +1694,7 @@ input DataSetPatch {
1648
1694
  reportType: String
1649
1695
  reportView: String
1650
1696
  requiresReview: Boolean
1697
+ resolverRole: ObjectRef
1651
1698
  reviewApprovalLine: Object
1652
1699
  schedule: String
1653
1700
  summaryPeriod: String
@@ -1655,6 +1702,11 @@ input DataSetPatch {
1655
1702
 
1656
1703
  """A tag name of data to be published when a data sample created"""
1657
1704
  tag: String
1705
+
1706
+ """
1707
+ The maximum allowed time limit (in seconds) for completing the data entry operation
1708
+ """
1709
+ timeLimit: Float
1658
1710
  timezone: String
1659
1711
  type: String
1660
1712
  useCase: String
@@ -1803,6 +1855,7 @@ input DomainGeneratorInput {
1803
1855
 
1804
1856
  input DomainInput {
1805
1857
  description: String
1858
+ extType: String
1806
1859
  name: String!
1807
1860
  }
1808
1861
 
@@ -1817,6 +1870,7 @@ input DomainPatch {
1817
1870
  brandName: String
1818
1871
  contentImage: String
1819
1872
  description: String
1873
+ extType: String
1820
1874
  id: String
1821
1875
  name: String
1822
1876
  owner: String
@@ -2273,18 +2327,23 @@ type LiteMenu {
2273
2327
  active: Boolean
2274
2328
  appName: String
2275
2329
  board: Board
2330
+
2331
+ """Settings for help contents"""
2276
2332
  createdAt: DateTimeISO
2277
2333
  creator: User
2278
2334
  description: String
2279
2335
  domain: Domain!
2336
+ help: String
2280
2337
  icon: String
2281
2338
  id: ID!
2282
2339
  label: String!
2340
+
2341
+ """Settings for multilingual titles"""
2283
2342
  labels: Object
2284
2343
  name: String!
2285
2344
  parent: String
2286
- privilege: PrivilegeObject
2287
2345
  rank: Int
2346
+ role: Role
2288
2347
  type: String
2289
2348
  updatedAt: DateTimeISO
2290
2349
  updater: User
@@ -2300,12 +2359,13 @@ input LiteMenuPatch {
2300
2359
  active: Boolean
2301
2360
  appName: String
2302
2361
  description: String
2362
+ help: String
2303
2363
  icon: String
2304
2364
  labels: Object
2305
2365
  name: String
2306
2366
  parent: String
2307
- privilege: PrivilegeInput
2308
2367
  rank: Int
2368
+ role: ObjectRef
2309
2369
  type: String
2310
2370
  value: String
2311
2371
  }
@@ -2360,7 +2420,6 @@ type Menu {
2360
2420
  name: String
2361
2421
  pagination: Boolean
2362
2422
  parent: Menu
2363
- privilege: PrivilegeObject
2364
2423
  rank: Float
2365
2424
  resourceId: String
2366
2425
  resourceName: String
@@ -2682,7 +2741,6 @@ input MenuPatch {
2682
2741
  name: String
2683
2742
  pagination: Boolean
2684
2743
  parent: ObjectRef
2685
- privilege: PrivilegeInput
2686
2744
  rank: Int
2687
2745
  resourceId: String
2688
2746
  resourceName: String
@@ -2707,7 +2765,7 @@ type Mutation {
2707
2765
  activateInstallableActivity(name: String!): Activity!
2708
2766
 
2709
2767
  """To activate user"""
2710
- activateUser(userId: String!): Boolean!
2768
+ activateUser(username: String!): Boolean!
2711
2769
 
2712
2770
  """To approve ActivityApproval"""
2713
2771
  approveActivityApproval(comment: String, id: String!): ActivityApproval
@@ -3012,7 +3070,7 @@ type Mutation {
3012
3070
  deleteDomain(name: String!): Domain!
3013
3071
 
3014
3072
  """To delete domain user"""
3015
- deleteDomainUser(email: EmailAddress!): Boolean!
3073
+ deleteDomainUser(username: String!): Boolean!
3016
3074
 
3017
3075
  """To delete multiple domains (Only superuser is granted this privilege.)"""
3018
3076
  deleteDomains(names: [String!]!): Boolean!
@@ -3190,7 +3248,7 @@ type Mutation {
3190
3248
  deleteThemes(ids: [String!]!): Boolean!
3191
3249
 
3192
3250
  """To delete a user"""
3193
- deleteUser(email: EmailAddress!): Boolean!
3251
+ deleteUser(username: String!): Boolean!
3194
3252
 
3195
3253
  """To delete UserPreference"""
3196
3254
  deleteUserPreference(id: String!): Boolean!
@@ -3199,7 +3257,7 @@ type Mutation {
3199
3257
  deleteUserPreferences(ids: [String!]!): Boolean!
3200
3258
 
3201
3259
  """To delete some users"""
3202
- deleteUsers(emails: [String!]!): Boolean!
3260
+ deleteUsers(usernames: [String!]!): Boolean!
3203
3261
 
3204
3262
  """To delete multiple workShifts"""
3205
3263
  deleteWorkShifts(ids: [String!]!): Boolean!
@@ -3329,15 +3387,18 @@ type Mutation {
3329
3387
  importThemes(themes: [ThemePatch!]!): Boolean!
3330
3388
 
3331
3389
  """To inactivate user"""
3332
- inactivateUser(userId: String!): Boolean!
3390
+ inactivateUser(username: String!): Boolean!
3333
3391
  inviteCustomer(customerDomainName: String!): Boolean!
3334
3392
 
3335
3393
  """To invite new user"""
3336
- inviteUser(email: EmailAddress!): Boolean!
3394
+ inviteUser(username: String!): Boolean!
3337
3395
 
3338
3396
  """To issue standard ActivityInstance"""
3339
3397
  issueActivityInstance(activityInstance: ActivityInstanceIssue!): ActivityInstance!
3340
3398
 
3399
+ """To issue data-collection task for the given dataset"""
3400
+ issueDataCollection(dataSetId: String!): Boolean!
3401
+
3341
3402
  """To make the board to join the group"""
3342
3403
  joinGroup(boardIds: [String!]!, id: String!): Group!
3343
3404
 
@@ -3378,6 +3439,7 @@ type Mutation {
3378
3439
  """Employee Id"""
3379
3440
  employeeId: String!
3380
3441
  ): Boolean!
3442
+ registerSchedule(schedule: NewSchedule!): ID!
3381
3443
 
3382
3444
  """To reject ActivityApproval"""
3383
3445
  rejectActivityApproval(comment: String, id: String!): ActivityApproval
@@ -3390,7 +3452,7 @@ type Mutation {
3390
3452
  reorderPlayGroup(boardIds: [String!]!, id: String!): PlayGroup!
3391
3453
 
3392
3454
  """To reset password to default"""
3393
- resetPasswordToDefault(userId: String!): Boolean!
3455
+ resetPasswordToDefault(username: String!): Boolean!
3394
3456
 
3395
3457
  """To restart ActivityThread"""
3396
3458
  restartActivityThread(id: String!, output: Object, reason: String): ActivityThread
@@ -3450,6 +3512,9 @@ type Mutation {
3450
3512
  """To submit a ActivityThread"""
3451
3513
  submitActivityThread(id: String!, output: Object, reason: String): ActivityThread!
3452
3514
 
3515
+ """To submit ActivityThread List"""
3516
+ submitActivityThreadList(ids: [String!]!): Boolean!
3517
+
3453
3518
  """To synchronize auth-providers users"""
3454
3519
  synchronizeAuthProviderUsers(id: String!): Boolean!
3455
3520
 
@@ -3460,7 +3525,8 @@ type Mutation {
3460
3525
  terminateContract(partnerName: String!): Boolean!
3461
3526
 
3462
3527
  """To transfer owner of domain"""
3463
- transferOwner(email: EmailAddress!): Boolean!
3528
+ transferOwner(username: String!): Boolean!
3529
+ unregisterSchedule(handle: ID!): Boolean!
3464
3530
 
3465
3531
  """To modify Activity information"""
3466
3532
  updateActivity(id: String!, patch: ActivityPatch!): Activity!
@@ -3700,6 +3766,7 @@ type Mutation {
3700
3766
 
3701
3767
  """To modify scenario information"""
3702
3768
  updateScenario(name: String!, patch: ScenarioPatch!): Scenario!
3769
+ updateSchedule(schedule: SchedulePatch!): ID!
3703
3770
 
3704
3771
  """To update secure IP list for domain"""
3705
3772
  updateSecureIPList(iplist: Object!): Object
@@ -3726,7 +3793,7 @@ type Mutation {
3726
3793
  updateUserPreference(id: String!, patch: UserPreferencePatch!): UserPreference!
3727
3794
 
3728
3795
  """To update roles for a user"""
3729
- updateUserRoles(availableRoles: [ObjectRef!]!, selectedRoles: [ObjectRef!]!, userId: String!): User!
3796
+ updateUserRoles(availableRoles: [ObjectRef!]!, selectedRoles: [ObjectRef!]!, username: String!): User!
3730
3797
  }
3731
3798
 
3732
3799
  input NewActivity {
@@ -3810,6 +3877,7 @@ input NewAttachment {
3810
3877
  file: Upload!
3811
3878
  refBy: String
3812
3879
  refType: String
3880
+ tags: Object
3813
3881
  }
3814
3882
 
3815
3883
  input NewAttributeSet {
@@ -3931,6 +3999,7 @@ input NewDataSensor {
3931
3999
  active: Boolean
3932
4000
  appliance: ObjectRef
3933
4001
  brand: String
4002
+ capacity: Float
3934
4003
  dataSet: ObjectRef
3935
4004
  decoder: ObjectRef
3936
4005
  description: String
@@ -3941,11 +4010,11 @@ input NewDataSensor {
3941
4010
  refBy: String
3942
4011
  serialNo: String
3943
4012
  tag: String
4013
+ unit: String
3944
4014
  }
3945
4015
 
3946
4016
  input NewDataSet {
3947
4017
  active: Boolean
3948
- assignees: Object
3949
4018
  dataItems: [DataItemPatch!]
3950
4019
  dataKeySet: ObjectRef
3951
4020
  description: String
@@ -3963,6 +4032,7 @@ input NewDataSet {
3963
4032
  reportType: String
3964
4033
  reportView: String
3965
4034
  requiresReview: Boolean
4035
+ resolverRole: ObjectRef
3966
4036
  reviewApprovalLine: Object
3967
4037
  schedule: String
3968
4038
  summaryPeriod: String
@@ -3970,6 +4040,11 @@ input NewDataSet {
3970
4040
 
3971
4041
  """A tag name of data to be published when a data sample created"""
3972
4042
  tag: String
4043
+
4044
+ """
4045
+ The maximum allowed time limit (in seconds) for completing the data entry operation
4046
+ """
4047
+ timeLimit: Float
3973
4048
  timezone: String
3974
4049
  type: String
3975
4050
  useCase: String
@@ -4085,12 +4160,13 @@ input NewLiteMenu {
4085
4160
  active: Boolean
4086
4161
  appName: String
4087
4162
  description: String
4163
+ help: String
4088
4164
  icon: String
4089
4165
  labels: Object
4090
4166
  name: String!
4091
4167
  parent: String
4092
- privilege: PrivilegeInput
4093
4168
  rank: Int
4169
+ role: ObjectRef
4094
4170
  type: String
4095
4171
  value: String
4096
4172
  }
@@ -4113,7 +4189,6 @@ input NewMenu {
4113
4189
  name: String!
4114
4190
  pagination: Boolean
4115
4191
  parent: ObjectRef
4116
- privilege: PrivilegeInput
4117
4192
  rank: Int
4118
4193
  resourceId: String
4119
4194
  resourceName: String
@@ -4334,13 +4409,22 @@ input NewScenario {
4334
4409
  active: Boolean
4335
4410
  description: String
4336
4411
  name: String!
4337
- privilege: PrivilegeInput
4412
+ role: ObjectRef
4338
4413
  schedule: String
4339
4414
  timezone: String
4340
4415
  ttl: Float
4341
4416
  type: String
4342
4417
  }
4343
4418
 
4419
+ input NewSchedule {
4420
+ client: ScheduleClientInput!
4421
+ name: String!
4422
+ schedule: String
4423
+ task: ScheduleTaskInput!
4424
+ timezone: String
4425
+ type: String!
4426
+ }
4427
+
4344
4428
  input NewSetting {
4345
4429
  category: String!
4346
4430
  description: String
@@ -4402,6 +4486,7 @@ input NewUser {
4402
4486
  password: String
4403
4487
  roles: [ObjectRef!]
4404
4488
  userType: String
4489
+ username: String!
4405
4490
  }
4406
4491
 
4407
4492
  input NewUserByDomainWizardInput {
@@ -4873,13 +4958,6 @@ type Privilege {
4873
4958
  updater: User
4874
4959
  }
4875
4960
 
4876
- input PrivilegeInput {
4877
- category: String
4878
- owner: Boolean
4879
- privilege: String
4880
- super: Boolean
4881
- }
4882
-
4883
4961
  type PrivilegeList {
4884
4962
  items: [Privilege!]
4885
4963
  total: Int
@@ -5210,6 +5288,9 @@ type Query {
5210
5288
  """To fetch domain"""
5211
5289
  domain(id: String!): Domain!
5212
5290
 
5291
+ """To fetch domain"""
5292
+ domainTypes: [String!]!
5293
+
5213
5294
  """To fetch all domains (Only superuser is granted this privilege.)"""
5214
5295
  domains(filters: [Filter!], inherited: InheritedValueType, pagination: Pagination, sortings: [Sorting!]): DomainList!
5215
5296
 
@@ -5469,6 +5550,10 @@ type Query {
5469
5550
 
5470
5551
  """To fetch multiple scenarios"""
5471
5552
  scenarios(filters: [Filter!], inherited: InheritedValueType, pagination: Pagination, sortings: [Sorting!]): ScenarioList!
5553
+ schedule(id: ID!): Schedule
5554
+
5555
+ """To fetch multiple Schedules"""
5556
+ schedules(filters: [Filter!], inherited: InheritedValueType, pagination: Pagination, sortings: [Sorting!]): ScheduleList!
5472
5557
  searchCustomers(filters: [Filter!], inherited: InheritedValueType, pagination: Pagination, sortings: [Sorting!]): DomainList!
5473
5558
 
5474
5559
  """To fetch domain"""
@@ -5653,6 +5738,7 @@ type Scenario {
5653
5738
  """accessible and executable system-wide"""
5654
5739
  public: Boolean
5655
5740
  publishTags: [Connection!]!
5741
+ role: Role
5656
5742
  schedule: String
5657
5743
  scheduleId: String
5658
5744
  state: String
@@ -5734,7 +5820,7 @@ input ScenarioPatch {
5734
5820
  description: String
5735
5821
  id: ID
5736
5822
  name: String
5737
- privilege: PrivilegeInput
5823
+ role: ObjectRef
5738
5824
  schedule: String
5739
5825
  steps: [StepPatch!]
5740
5826
  timezone: String
@@ -5747,6 +5833,81 @@ type ScenarioQueueState {
5747
5833
  queue: [PendingObject!]!
5748
5834
  }
5749
5835
 
5836
+ type Schedule {
5837
+ client: ScheduleClient!
5838
+ id: ID!
5839
+ name: String
5840
+ schedule: String
5841
+ task: ScheduleTask!
5842
+ timezone: String
5843
+ type: String!
5844
+ }
5845
+
5846
+ type ScheduleClient {
5847
+ application: String!
5848
+ group: String!
5849
+ key: String!
5850
+ operation: String!
5851
+ type: String!
5852
+ }
5853
+
5854
+ input ScheduleClientInput {
5855
+ application: String!
5856
+ group: String!
5857
+ key: String!
5858
+ operation: String!
5859
+ type: String!
5860
+ }
5861
+
5862
+ type ScheduleList {
5863
+ items: [Schedule!]!
5864
+ total: Int!
5865
+ }
5866
+
5867
+ input SchedulePatch {
5868
+ client: ScheduleClientInput!
5869
+ id: String
5870
+ name: String
5871
+ schedule: String
5872
+ task: ScheduleTaskInput!
5873
+ timezone: String
5874
+ type: String!
5875
+ }
5876
+
5877
+ type ScheduleTask {
5878
+ connection: ScheduleTaskConnection!
5879
+ data: Object!
5880
+ failed_policy: String!
5881
+ history_check: Boolean!
5882
+ max_retry_count: Int!
5883
+ retry_count: Int!
5884
+ retry_wait: Int!
5885
+ type: String!
5886
+ }
5887
+
5888
+ type ScheduleTaskConnection {
5889
+ headers: Object
5890
+ host: String
5891
+ topic: String
5892
+ }
5893
+
5894
+ input ScheduleTaskConnectionInput {
5895
+ headers: Object
5896
+ host: String
5897
+ topic: String
5898
+ }
5899
+
5900
+ input ScheduleTaskInput {
5901
+ connection: ScheduleTaskConnectionInput!
5902
+ data: Object!
5903
+ failed_policy: String!
5904
+ history_check: Boolean!
5905
+ max_retry_count: Int!
5906
+ retry_count: Int!
5907
+ retry_wait: Int!
5908
+ type: String!
5909
+ }
5910
+
5750
5911
  """Entity for Setting"""
5751
5912
  type Setting {
5752
5913
  category: String!
@@ -6057,6 +6218,7 @@ type User {
6057
6218
  updatedAt: DateTimeISO
6058
6219
  updater: User
6059
6220
  userType: String
6221
+ username: String
6060
6222
  usersAuthProviders: [UsersAuthProviders!]
6061
6223
  }
6062
6224