homey-api 1.10.17 → 1.10.19
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.
|
@@ -1,5 +1,177 @@
|
|
|
1
1
|
{
|
|
2
2
|
"managers": {
|
|
3
|
+
"ManagerAlarms": {
|
|
4
|
+
"id": "alarms",
|
|
5
|
+
"idCamelCase": "alarms",
|
|
6
|
+
"items": {
|
|
7
|
+
"Alarm": {
|
|
8
|
+
"id": "alarm",
|
|
9
|
+
"schema": {
|
|
10
|
+
"repetition": {
|
|
11
|
+
"type": "object",
|
|
12
|
+
"properties": {
|
|
13
|
+
"required": [
|
|
14
|
+
"monday",
|
|
15
|
+
"tuesday",
|
|
16
|
+
"wednesday",
|
|
17
|
+
"thursday",
|
|
18
|
+
"friday",
|
|
19
|
+
"saturday",
|
|
20
|
+
"sunday"
|
|
21
|
+
],
|
|
22
|
+
"monday": {
|
|
23
|
+
"type": "boolean"
|
|
24
|
+
},
|
|
25
|
+
"tuesday": {
|
|
26
|
+
"type": "boolean"
|
|
27
|
+
},
|
|
28
|
+
"wednesday": {
|
|
29
|
+
"type": "boolean"
|
|
30
|
+
},
|
|
31
|
+
"thursday": {
|
|
32
|
+
"type": "boolean"
|
|
33
|
+
},
|
|
34
|
+
"friday": {
|
|
35
|
+
"type": "boolean"
|
|
36
|
+
},
|
|
37
|
+
"saturday": {
|
|
38
|
+
"type": "boolean"
|
|
39
|
+
},
|
|
40
|
+
"sunday": {
|
|
41
|
+
"type": "boolean"
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
"operations": {
|
|
49
|
+
"getAlarms": {
|
|
50
|
+
"method": "get",
|
|
51
|
+
"path": "/alarm",
|
|
52
|
+
"private": false,
|
|
53
|
+
"scopes": [
|
|
54
|
+
"homey.alarm.readonly"
|
|
55
|
+
],
|
|
56
|
+
"crud": {
|
|
57
|
+
"type": "getAll",
|
|
58
|
+
"item": "Alarm"
|
|
59
|
+
},
|
|
60
|
+
"parameters": {}
|
|
61
|
+
},
|
|
62
|
+
"getAlarm": {
|
|
63
|
+
"method": "get",
|
|
64
|
+
"path": "/alarm/:id",
|
|
65
|
+
"private": false,
|
|
66
|
+
"scopes": [
|
|
67
|
+
"homey.alarm.readonly"
|
|
68
|
+
],
|
|
69
|
+
"crud": {
|
|
70
|
+
"type": "getOne",
|
|
71
|
+
"item": "Alarm"
|
|
72
|
+
},
|
|
73
|
+
"parameters": {
|
|
74
|
+
"id": {
|
|
75
|
+
"in": "path",
|
|
76
|
+
"type": "string",
|
|
77
|
+
"required": true
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
},
|
|
81
|
+
"createAlarm": {
|
|
82
|
+
"method": "post",
|
|
83
|
+
"path": "/alarm",
|
|
84
|
+
"private": false,
|
|
85
|
+
"scopes": [
|
|
86
|
+
"homey.alarm"
|
|
87
|
+
],
|
|
88
|
+
"crud": {
|
|
89
|
+
"type": "createOne",
|
|
90
|
+
"item": "Alarm"
|
|
91
|
+
},
|
|
92
|
+
"parameters": {
|
|
93
|
+
"alarm": {
|
|
94
|
+
"in": "body",
|
|
95
|
+
"type": "object",
|
|
96
|
+
"root": true,
|
|
97
|
+
"required": true,
|
|
98
|
+
"properties": {
|
|
99
|
+
"name": {
|
|
100
|
+
"type": "string"
|
|
101
|
+
},
|
|
102
|
+
"time": {
|
|
103
|
+
"type": "string"
|
|
104
|
+
},
|
|
105
|
+
"enabled": {
|
|
106
|
+
"type": "boolean"
|
|
107
|
+
},
|
|
108
|
+
"repetition": {
|
|
109
|
+
"type": "object"
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
},
|
|
115
|
+
"updateAlarm": {
|
|
116
|
+
"method": "put",
|
|
117
|
+
"path": "/alarm/:id",
|
|
118
|
+
"private": false,
|
|
119
|
+
"scopes": [
|
|
120
|
+
"homey.alarm"
|
|
121
|
+
],
|
|
122
|
+
"crud": {
|
|
123
|
+
"type": "updateOne",
|
|
124
|
+
"item": "Alarm"
|
|
125
|
+
},
|
|
126
|
+
"parameters": {
|
|
127
|
+
"id": {
|
|
128
|
+
"in": "path",
|
|
129
|
+
"type": "string",
|
|
130
|
+
"required": true
|
|
131
|
+
},
|
|
132
|
+
"alarm": {
|
|
133
|
+
"in": "body",
|
|
134
|
+
"type": "object",
|
|
135
|
+
"root": true,
|
|
136
|
+
"required": true,
|
|
137
|
+
"properties": {
|
|
138
|
+
"name": {
|
|
139
|
+
"type": "string"
|
|
140
|
+
},
|
|
141
|
+
"time": {
|
|
142
|
+
"type": "string"
|
|
143
|
+
},
|
|
144
|
+
"enabled": {
|
|
145
|
+
"type": "boolean"
|
|
146
|
+
},
|
|
147
|
+
"repetition": {
|
|
148
|
+
"type": "object"
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
},
|
|
154
|
+
"deleteAlarm": {
|
|
155
|
+
"method": "delete",
|
|
156
|
+
"path": "/alarm/:id",
|
|
157
|
+
"private": false,
|
|
158
|
+
"scopes": [
|
|
159
|
+
"homey.alarm"
|
|
160
|
+
],
|
|
161
|
+
"crud": {
|
|
162
|
+
"type": "deleteOne",
|
|
163
|
+
"item": "Alarm"
|
|
164
|
+
},
|
|
165
|
+
"parameters": {
|
|
166
|
+
"id": {
|
|
167
|
+
"in": "path",
|
|
168
|
+
"type": "string",
|
|
169
|
+
"required": true
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
},
|
|
3
175
|
"ManagerApi": {
|
|
4
176
|
"id": "api",
|
|
5
177
|
"idCamelCase": "api",
|
|
@@ -418,25 +590,6 @@
|
|
|
418
590
|
"homey.system.readonly"
|
|
419
591
|
],
|
|
420
592
|
"parameters": {}
|
|
421
|
-
},
|
|
422
|
-
"runCommand": {
|
|
423
|
-
"method": "post",
|
|
424
|
-
"path": "/command",
|
|
425
|
-
"private": false,
|
|
426
|
-
"scopes": [
|
|
427
|
-
"homey.system"
|
|
428
|
-
],
|
|
429
|
-
"parameters": {
|
|
430
|
-
"command": {
|
|
431
|
-
"in": "body",
|
|
432
|
-
"type": "string",
|
|
433
|
-
"required": true
|
|
434
|
-
},
|
|
435
|
-
"opts": {
|
|
436
|
-
"in": "body",
|
|
437
|
-
"type": "object"
|
|
438
|
-
}
|
|
439
|
-
}
|
|
440
593
|
}
|
|
441
594
|
}
|
|
442
595
|
},
|
|
@@ -4401,6 +4554,30 @@
|
|
|
4401
4554
|
"homey.system"
|
|
4402
4555
|
],
|
|
4403
4556
|
"parameters": {}
|
|
4557
|
+
},
|
|
4558
|
+
"getLog": {
|
|
4559
|
+
"method": "get",
|
|
4560
|
+
"path": "/log",
|
|
4561
|
+
"private": false,
|
|
4562
|
+
"scopes": [
|
|
4563
|
+
"homey.system"
|
|
4564
|
+
],
|
|
4565
|
+
"parameters": {}
|
|
4566
|
+
},
|
|
4567
|
+
"setLogEnabled": {
|
|
4568
|
+
"method": "put",
|
|
4569
|
+
"path": "/log",
|
|
4570
|
+
"private": false,
|
|
4571
|
+
"scopes": [
|
|
4572
|
+
"homey.system"
|
|
4573
|
+
],
|
|
4574
|
+
"parameters": {
|
|
4575
|
+
"enabled": {
|
|
4576
|
+
"in": "body",
|
|
4577
|
+
"type": "boolean",
|
|
4578
|
+
"required": true
|
|
4579
|
+
}
|
|
4580
|
+
}
|
|
4404
4581
|
}
|
|
4405
4582
|
}
|
|
4406
4583
|
}
|
|
@@ -2310,6 +2310,22 @@
|
|
|
2310
2310
|
|
|
2311
2311
|
|
|
2312
2312
|
|
|
2313
|
+
|
|
2314
|
+
|
|
2315
|
+
|
|
2316
|
+
|
|
2317
|
+
|
|
2318
|
+
export namespace HomeyAPIV3Local.ManagerAlarms {
|
|
2319
|
+
|
|
2320
|
+
export class Alarm {
|
|
2321
|
+
|
|
2322
|
+
|
|
2323
|
+
|
|
2324
|
+
|
|
2325
|
+
|
|
2326
|
+
}
|
|
2327
|
+
|
|
2328
|
+
}
|
|
2313
2329
|
|
|
2314
2330
|
|
|
2315
2331
|
|
|
@@ -10878,6 +10894,150 @@
|
|
|
10878
10894
|
|
|
10879
10895
|
|
|
10880
10896
|
|
|
10897
|
+
isConnected(
|
|
10898
|
+
|
|
10899
|
+
):
|
|
10900
|
+
Boolean;
|
|
10901
|
+
|
|
10902
|
+
connect(
|
|
10903
|
+
|
|
10904
|
+
):
|
|
10905
|
+
Promise<void>;
|
|
10906
|
+
|
|
10907
|
+
disconnect(
|
|
10908
|
+
|
|
10909
|
+
):
|
|
10910
|
+
Promise<void>;
|
|
10911
|
+
|
|
10912
|
+
}
|
|
10913
|
+
|
|
10914
|
+
export class ManagerAlarms extends HomeyAPIV3Local.Manager {
|
|
10915
|
+
|
|
10916
|
+
|
|
10917
|
+
|
|
10918
|
+
|
|
10919
|
+
|
|
10920
|
+
getAlarms(
|
|
10921
|
+
|
|
10922
|
+
):
|
|
10923
|
+
Promise<HomeyAPIV3Local.ManagerAlarms.Alarm>;
|
|
10924
|
+
|
|
10925
|
+
getAlarm(
|
|
10926
|
+
|
|
10927
|
+
|
|
10928
|
+
|
|
10929
|
+
|
|
10930
|
+
opts: {
|
|
10931
|
+
|
|
10932
|
+
|
|
10933
|
+
id: string,
|
|
10934
|
+
|
|
10935
|
+
|
|
10936
|
+
},
|
|
10937
|
+
|
|
10938
|
+
|
|
10939
|
+
|
|
10940
|
+
|
|
10941
|
+
):
|
|
10942
|
+
Promise<HomeyAPIV3Local.ManagerAlarms.Alarm>;
|
|
10943
|
+
|
|
10944
|
+
createAlarm(
|
|
10945
|
+
|
|
10946
|
+
|
|
10947
|
+
|
|
10948
|
+
|
|
10949
|
+
opts: {
|
|
10950
|
+
|
|
10951
|
+
|
|
10952
|
+
alarm: {
|
|
10953
|
+
|
|
10954
|
+
|
|
10955
|
+
name: string,
|
|
10956
|
+
|
|
10957
|
+
|
|
10958
|
+
|
|
10959
|
+
time: string,
|
|
10960
|
+
|
|
10961
|
+
|
|
10962
|
+
|
|
10963
|
+
enabled: boolean,
|
|
10964
|
+
|
|
10965
|
+
|
|
10966
|
+
|
|
10967
|
+
repetition: object,
|
|
10968
|
+
|
|
10969
|
+
|
|
10970
|
+
},
|
|
10971
|
+
|
|
10972
|
+
|
|
10973
|
+
},
|
|
10974
|
+
|
|
10975
|
+
|
|
10976
|
+
|
|
10977
|
+
|
|
10978
|
+
):
|
|
10979
|
+
Promise<HomeyAPIV3Local.ManagerAlarms.Alarm>;
|
|
10980
|
+
|
|
10981
|
+
updateAlarm(
|
|
10982
|
+
|
|
10983
|
+
|
|
10984
|
+
|
|
10985
|
+
|
|
10986
|
+
opts: {
|
|
10987
|
+
|
|
10988
|
+
|
|
10989
|
+
id: string,
|
|
10990
|
+
|
|
10991
|
+
|
|
10992
|
+
|
|
10993
|
+
alarm: {
|
|
10994
|
+
|
|
10995
|
+
|
|
10996
|
+
name: string,
|
|
10997
|
+
|
|
10998
|
+
|
|
10999
|
+
|
|
11000
|
+
time: string,
|
|
11001
|
+
|
|
11002
|
+
|
|
11003
|
+
|
|
11004
|
+
enabled: boolean,
|
|
11005
|
+
|
|
11006
|
+
|
|
11007
|
+
|
|
11008
|
+
repetition: object,
|
|
11009
|
+
|
|
11010
|
+
|
|
11011
|
+
},
|
|
11012
|
+
|
|
11013
|
+
|
|
11014
|
+
},
|
|
11015
|
+
|
|
11016
|
+
|
|
11017
|
+
|
|
11018
|
+
|
|
11019
|
+
):
|
|
11020
|
+
Promise<HomeyAPIV3Local.ManagerAlarms.Alarm>;
|
|
11021
|
+
|
|
11022
|
+
deleteAlarm(
|
|
11023
|
+
|
|
11024
|
+
|
|
11025
|
+
|
|
11026
|
+
|
|
11027
|
+
opts: {
|
|
11028
|
+
|
|
11029
|
+
|
|
11030
|
+
id: string,
|
|
11031
|
+
|
|
11032
|
+
|
|
11033
|
+
},
|
|
11034
|
+
|
|
11035
|
+
|
|
11036
|
+
|
|
11037
|
+
|
|
11038
|
+
):
|
|
11039
|
+
Promise<any>;
|
|
11040
|
+
|
|
10881
11041
|
isConnected(
|
|
10882
11042
|
|
|
10883
11043
|
):
|
|
@@ -11364,29 +11524,6 @@
|
|
|
11364
11524
|
|
|
11365
11525
|
getState(
|
|
11366
11526
|
|
|
11367
|
-
):
|
|
11368
|
-
Promise<any>;
|
|
11369
|
-
|
|
11370
|
-
runCommand(
|
|
11371
|
-
|
|
11372
|
-
|
|
11373
|
-
|
|
11374
|
-
|
|
11375
|
-
opts: {
|
|
11376
|
-
|
|
11377
|
-
|
|
11378
|
-
command: string,
|
|
11379
|
-
|
|
11380
|
-
|
|
11381
|
-
|
|
11382
|
-
opts: object,
|
|
11383
|
-
|
|
11384
|
-
|
|
11385
|
-
},
|
|
11386
|
-
|
|
11387
|
-
|
|
11388
|
-
|
|
11389
|
-
|
|
11390
11527
|
):
|
|
11391
11528
|
Promise<any>;
|
|
11392
11529
|
|
|
@@ -15077,6 +15214,30 @@
|
|
|
15077
15214
|
|
|
15078
15215
|
|
|
15079
15216
|
|
|
15217
|
+
):
|
|
15218
|
+
Promise<any>;
|
|
15219
|
+
|
|
15220
|
+
getLog(
|
|
15221
|
+
|
|
15222
|
+
):
|
|
15223
|
+
Promise<any>;
|
|
15224
|
+
|
|
15225
|
+
setLogEnabled(
|
|
15226
|
+
|
|
15227
|
+
|
|
15228
|
+
|
|
15229
|
+
|
|
15230
|
+
opts: {
|
|
15231
|
+
|
|
15232
|
+
|
|
15233
|
+
enabled: boolean,
|
|
15234
|
+
|
|
15235
|
+
|
|
15236
|
+
},
|
|
15237
|
+
|
|
15238
|
+
|
|
15239
|
+
|
|
15240
|
+
|
|
15080
15241
|
):
|
|
15081
15242
|
Promise<any>;
|
|
15082
15243
|
|
|
@@ -7700,6 +7700,22 @@
|
|
|
7700
7700
|
|
|
7701
7701
|
|
|
7702
7702
|
|
|
7703
|
+
|
|
7704
|
+
|
|
7705
|
+
|
|
7706
|
+
|
|
7707
|
+
|
|
7708
|
+
export namespace HomeyAPIV3Local.ManagerAlarms {
|
|
7709
|
+
|
|
7710
|
+
export class Alarm {
|
|
7711
|
+
|
|
7712
|
+
|
|
7713
|
+
|
|
7714
|
+
|
|
7715
|
+
|
|
7716
|
+
}
|
|
7717
|
+
|
|
7718
|
+
}
|
|
7703
7719
|
|
|
7704
7720
|
|
|
7705
7721
|
|
|
@@ -16835,6 +16851,150 @@
|
|
|
16835
16851
|
|
|
16836
16852
|
|
|
16837
16853
|
|
|
16854
|
+
isConnected(
|
|
16855
|
+
|
|
16856
|
+
):
|
|
16857
|
+
Boolean;
|
|
16858
|
+
|
|
16859
|
+
connect(
|
|
16860
|
+
|
|
16861
|
+
):
|
|
16862
|
+
Promise<void>;
|
|
16863
|
+
|
|
16864
|
+
disconnect(
|
|
16865
|
+
|
|
16866
|
+
):
|
|
16867
|
+
Promise<void>;
|
|
16868
|
+
|
|
16869
|
+
}
|
|
16870
|
+
|
|
16871
|
+
export class ManagerAlarms extends HomeyAPIV3Local.Manager {
|
|
16872
|
+
|
|
16873
|
+
|
|
16874
|
+
|
|
16875
|
+
|
|
16876
|
+
|
|
16877
|
+
getAlarms(
|
|
16878
|
+
|
|
16879
|
+
):
|
|
16880
|
+
Promise<HomeyAPIV3Local.ManagerAlarms.Alarm>;
|
|
16881
|
+
|
|
16882
|
+
getAlarm(
|
|
16883
|
+
|
|
16884
|
+
|
|
16885
|
+
|
|
16886
|
+
|
|
16887
|
+
opts: {
|
|
16888
|
+
|
|
16889
|
+
|
|
16890
|
+
id: string,
|
|
16891
|
+
|
|
16892
|
+
|
|
16893
|
+
},
|
|
16894
|
+
|
|
16895
|
+
|
|
16896
|
+
|
|
16897
|
+
|
|
16898
|
+
):
|
|
16899
|
+
Promise<HomeyAPIV3Local.ManagerAlarms.Alarm>;
|
|
16900
|
+
|
|
16901
|
+
createAlarm(
|
|
16902
|
+
|
|
16903
|
+
|
|
16904
|
+
|
|
16905
|
+
|
|
16906
|
+
opts: {
|
|
16907
|
+
|
|
16908
|
+
|
|
16909
|
+
alarm: {
|
|
16910
|
+
|
|
16911
|
+
|
|
16912
|
+
name: string,
|
|
16913
|
+
|
|
16914
|
+
|
|
16915
|
+
|
|
16916
|
+
time: string,
|
|
16917
|
+
|
|
16918
|
+
|
|
16919
|
+
|
|
16920
|
+
enabled: boolean,
|
|
16921
|
+
|
|
16922
|
+
|
|
16923
|
+
|
|
16924
|
+
repetition: object,
|
|
16925
|
+
|
|
16926
|
+
|
|
16927
|
+
},
|
|
16928
|
+
|
|
16929
|
+
|
|
16930
|
+
},
|
|
16931
|
+
|
|
16932
|
+
|
|
16933
|
+
|
|
16934
|
+
|
|
16935
|
+
):
|
|
16936
|
+
Promise<HomeyAPIV3Local.ManagerAlarms.Alarm>;
|
|
16937
|
+
|
|
16938
|
+
updateAlarm(
|
|
16939
|
+
|
|
16940
|
+
|
|
16941
|
+
|
|
16942
|
+
|
|
16943
|
+
opts: {
|
|
16944
|
+
|
|
16945
|
+
|
|
16946
|
+
id: string,
|
|
16947
|
+
|
|
16948
|
+
|
|
16949
|
+
|
|
16950
|
+
alarm: {
|
|
16951
|
+
|
|
16952
|
+
|
|
16953
|
+
name: string,
|
|
16954
|
+
|
|
16955
|
+
|
|
16956
|
+
|
|
16957
|
+
time: string,
|
|
16958
|
+
|
|
16959
|
+
|
|
16960
|
+
|
|
16961
|
+
enabled: boolean,
|
|
16962
|
+
|
|
16963
|
+
|
|
16964
|
+
|
|
16965
|
+
repetition: object,
|
|
16966
|
+
|
|
16967
|
+
|
|
16968
|
+
},
|
|
16969
|
+
|
|
16970
|
+
|
|
16971
|
+
},
|
|
16972
|
+
|
|
16973
|
+
|
|
16974
|
+
|
|
16975
|
+
|
|
16976
|
+
):
|
|
16977
|
+
Promise<HomeyAPIV3Local.ManagerAlarms.Alarm>;
|
|
16978
|
+
|
|
16979
|
+
deleteAlarm(
|
|
16980
|
+
|
|
16981
|
+
|
|
16982
|
+
|
|
16983
|
+
|
|
16984
|
+
opts: {
|
|
16985
|
+
|
|
16986
|
+
|
|
16987
|
+
id: string,
|
|
16988
|
+
|
|
16989
|
+
|
|
16990
|
+
},
|
|
16991
|
+
|
|
16992
|
+
|
|
16993
|
+
|
|
16994
|
+
|
|
16995
|
+
):
|
|
16996
|
+
Promise<any>;
|
|
16997
|
+
|
|
16838
16998
|
isConnected(
|
|
16839
16999
|
|
|
16840
17000
|
):
|
|
@@ -17321,29 +17481,6 @@
|
|
|
17321
17481
|
|
|
17322
17482
|
getState(
|
|
17323
17483
|
|
|
17324
|
-
):
|
|
17325
|
-
Promise<any>;
|
|
17326
|
-
|
|
17327
|
-
runCommand(
|
|
17328
|
-
|
|
17329
|
-
|
|
17330
|
-
|
|
17331
|
-
|
|
17332
|
-
opts: {
|
|
17333
|
-
|
|
17334
|
-
|
|
17335
|
-
command: string,
|
|
17336
|
-
|
|
17337
|
-
|
|
17338
|
-
|
|
17339
|
-
opts: object,
|
|
17340
|
-
|
|
17341
|
-
|
|
17342
|
-
},
|
|
17343
|
-
|
|
17344
|
-
|
|
17345
|
-
|
|
17346
|
-
|
|
17347
17484
|
):
|
|
17348
17485
|
Promise<any>;
|
|
17349
17486
|
|
|
@@ -21185,6 +21322,30 @@
|
|
|
21185
21322
|
|
|
21186
21323
|
flashFirmware(
|
|
21187
21324
|
|
|
21325
|
+
):
|
|
21326
|
+
Promise<any>;
|
|
21327
|
+
|
|
21328
|
+
getLog(
|
|
21329
|
+
|
|
21330
|
+
):
|
|
21331
|
+
Promise<any>;
|
|
21332
|
+
|
|
21333
|
+
setLogEnabled(
|
|
21334
|
+
|
|
21335
|
+
|
|
21336
|
+
|
|
21337
|
+
|
|
21338
|
+
opts: {
|
|
21339
|
+
|
|
21340
|
+
|
|
21341
|
+
enabled: boolean,
|
|
21342
|
+
|
|
21343
|
+
|
|
21344
|
+
},
|
|
21345
|
+
|
|
21346
|
+
|
|
21347
|
+
|
|
21348
|
+
|
|
21188
21349
|
):
|
|
21189
21350
|
Promise<any>;
|
|
21190
21351
|
|