bx-rest 0.4.12 → 0.4.15
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/README.md +2 -1
- package/esm2022/request/app.mjs +2 -2
- package/esm2022/request/bizproc/activity.mjs +1 -5
- package/esm2022/request/bizproc/event.mjs +1 -5
- package/esm2022/request/bizproc/robot.mjs +1 -5
- package/esm2022/request/bizproc/task.mjs +1 -5
- package/esm2022/request/bizproc/workflow/instance.mjs +1 -5
- package/esm2022/request/bizproc/workflow/template.mjs +4 -9
- package/esm2022/request/bizproc/workflow.mjs +2 -2
- package/esm2022/request/calendar/event.mjs +2 -2
- package/esm2022/request/disk/attachedObject.mjs +2 -2
- package/esm2022/request/disk/file.mjs +2 -2
- package/esm2022/request/disk/folder.mjs +2 -2
- package/esm2022/request/im/chat.mjs +2 -2
- package/esm2022/request/lists/element.mjs +2 -2
- package/esm2022/request/lists/field.mjs +2 -2
- package/esm2022/request/lists.mjs +2 -2
- package/esm2022/request/log/blogcomment.mjs +1 -5
- package/esm2022/request/log/blogpost.mjs +2 -2
- package/esm2022/request/server.mjs +2 -2
- package/esm2022/request/sonet_group.mjs +2 -2
- package/esm2022/request/task/elapseditem.mjs +4 -14
- package/esm2022/request/task/item/userfield.mjs +2 -2
- package/esm2022/request/task/planner.mjs +2 -2
- package/esm2022/request/tasks/task/result.mjs +2 -2
- package/esm2022/request/tasks/task.mjs +2 -2
- package/esm2022/request/timeman.mjs +2 -2
- package/esm2022/request/user/userfield.mjs +3 -5
- package/esm2022/request/user.mjs +2 -2
- package/esm2022/request-navvy/tasks/task.mjs +3 -2
- package/esm2022/rest.mjs +12 -2
- package/esm2022/services/Navvy/NavvySupport.mjs +2 -1
- package/esm2022/services/base.mjs +1 -4
- package/esm2022/services/http/HttpBX.mjs +7 -10
- package/esm2022/services/http/http.mjs +3 -3
- package/esm2022/services/http/sessionKey.mjs +6 -2
- package/esm2022/settings.mjs +3 -16
- package/esm2022/typification/base/methods.mjs +656 -0
- package/esm2022/typification/base/workpiece/methods-list.mjs +2 -0
- package/esm2022/typification/base/workpiece/methods.mjs +2 -0
- package/esm2022/typification/rest/calendar/get/answer.mjs +1 -1
- package/esm2022/typification/rest/task/commentitem/add.mjs +1 -1
- package/esm2022/typification/rest/tasks/task/add.mjs +1 -1
- package/esm2022/typification/rest/tasks/task/list.mjs +1 -1
- package/esm2022/typification/settings.mjs +1 -1
- package/fesm2022/bx-rest.mjs +498 -521
- package/fesm2022/bx-rest.mjs.map +1 -1
- package/package.json +1 -1
- package/request/bizproc/activity.d.ts +0 -7
- package/request/bizproc/event.d.ts +0 -3
- package/request/bizproc/robot.d.ts +0 -6
- package/request/bizproc/task.d.ts +0 -4
- package/request/bizproc/workflow/instance.d.ts +0 -3
- package/request/bizproc/workflow/template.d.ts +0 -9
- package/request/bizproc/workflow.d.ts +1 -13
- package/request/calendar/event.d.ts +1 -7
- package/request/disk/attachedObject.d.ts +1 -3
- package/request/disk/file.d.ts +1 -14
- package/request/disk/folder.d.ts +1 -14
- package/request/im/chat.d.ts +1 -9
- package/request/lists/element.d.ts +1 -7
- package/request/lists/field.d.ts +1 -9
- package/request/lists.d.ts +1 -23
- package/request/log/blogcomment.d.ts +0 -3
- package/request/log/blogpost.d.ts +1 -7
- package/request/server.d.ts +1 -3
- package/request/sonet_group.d.ts +1 -7
- package/request/task/elapseditem.d.ts +1 -9
- package/request/tasks/task/result.d.ts +1 -5
- package/request/tasks/task.d.ts +2 -38
- package/request/timeman.d.ts +1 -7
- package/request/user/userfield.d.ts +1 -3
- package/request/user.d.ts +1 -9
- package/request-navvy/tasks/task.d.ts +1 -1
- package/rest.d.ts +4 -1
- package/services/base.d.ts +0 -1
- package/services/http/HttpBX.d.ts +4 -7
- package/services/http/http.d.ts +2 -2
- package/settings.d.ts +2 -1
- package/typification/base/methods.d.ts +2 -0
- package/typification/base/workpiece/methods-list.d.ts +209 -0
- package/typification/base/workpiece/methods.d.ts +19 -0
- package/typification/rest/calendar/get/answer.d.ts +3 -3
- package/typification/rest/tasks/task/add.d.ts +6 -4
- package/typification/rest/tasks/task/list.d.ts +2 -2
- package/typification/settings.d.ts +1 -0
- package/esm2022/methods.mjs +0 -632
- package/esm2022/services/http/base/http.mjs +0 -13
- package/esm2022/typification/rest/bizproc/base/filedEnum.mjs +0 -2
- package/esm2022/typification/rest/bizproc/workflow/template/list.mjs +0 -2
- package/methods.d.ts +0 -581
- package/services/http/base/http.d.ts +0 -7
- package/typification/rest/bizproc/base/filedEnum.d.ts +0 -1
- package/typification/rest/bizproc/workflow/template/list.d.ts +0 -8
|
@@ -0,0 +1,656 @@
|
|
|
1
|
+
import { $add, $approve, $bizproc, $blogpost, $calendar, $chat, $commentitem, $complete, $copyto, $defer, $delegate, $delete, $department, $disk, $elapseditem, $element, $event, $field, $file, $folder, $get, $getaccess, $getchildren, $getFields, $getlist, $im, $isactionallowed, $item, $list, $lists, $log, $markdeleted, $moveto, $planner, $rename, $restore, $result, $search, $server, $sonet_group, $start, $status, $task, $tasks, $time, $timeMan, $update, $uploadfile, $user, $userfield, $workflow } from '../../consts/part-name-methods';
|
|
2
|
+
export const methods = {
|
|
3
|
+
user: {
|
|
4
|
+
admin: [$user, 'admin'],
|
|
5
|
+
get: [$user, $get],
|
|
6
|
+
current: [$user, 'current'],
|
|
7
|
+
update: [$user, $update],
|
|
8
|
+
search: [$user, $search],
|
|
9
|
+
access: [$user, 'access'],
|
|
10
|
+
// AU - все авторизованные пользователи
|
|
11
|
+
// D1 - подразделение с id=1
|
|
12
|
+
// G1 - группа с id=1
|
|
13
|
+
fields: [$user, 'fields'],
|
|
14
|
+
userfield: {
|
|
15
|
+
/**
|
|
16
|
+
* Добавляет пользовательское поле
|
|
17
|
+
*/
|
|
18
|
+
add: [$user, $userfield, $add],
|
|
19
|
+
/**
|
|
20
|
+
* Обновляет пользовательское поле
|
|
21
|
+
*/
|
|
22
|
+
update: [$user, $userfield, $update],
|
|
23
|
+
/**
|
|
24
|
+
* Удаляет пользовательское поле
|
|
25
|
+
*/
|
|
26
|
+
delete: [$user, $userfield, $delete],
|
|
27
|
+
/**
|
|
28
|
+
* Получает список пользовательских полей
|
|
29
|
+
*/
|
|
30
|
+
list: [$user, $userfield, $list],
|
|
31
|
+
file: {
|
|
32
|
+
/**
|
|
33
|
+
* Получает файл из пользовательского поля
|
|
34
|
+
*/
|
|
35
|
+
get: [$user, $userfield, $file, $get]
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
},
|
|
39
|
+
tasks: {
|
|
40
|
+
task: {
|
|
41
|
+
/**
|
|
42
|
+
* Создает задачу
|
|
43
|
+
*/
|
|
44
|
+
add: [$tasks, $task, $add],
|
|
45
|
+
/**
|
|
46
|
+
* Позволяет принять задачу
|
|
47
|
+
*/
|
|
48
|
+
approve: [$tasks, $task, $approve],
|
|
49
|
+
/**
|
|
50
|
+
* Переводит задачу в статус «завершена»
|
|
51
|
+
*/
|
|
52
|
+
complete: [$tasks, $task, $complete],
|
|
53
|
+
// counters: {
|
|
54
|
+
// /**
|
|
55
|
+
// * Получает счетчики пользователя
|
|
56
|
+
// */
|
|
57
|
+
// get: [$tasks, $task, $counters, $get],
|
|
58
|
+
// },
|
|
59
|
+
/**
|
|
60
|
+
* Переводит задачу в статус «отложена»
|
|
61
|
+
*/
|
|
62
|
+
defer: [$tasks, $task, $defer],
|
|
63
|
+
/**
|
|
64
|
+
* Метод для делегирования задачи
|
|
65
|
+
*/
|
|
66
|
+
delegate: [$tasks, $task, $delegate],
|
|
67
|
+
/**
|
|
68
|
+
* Возвращает информацию о конкретной задаче
|
|
69
|
+
*/
|
|
70
|
+
get: [$tasks, $task, $get],
|
|
71
|
+
// /**
|
|
72
|
+
// * Удаляет задачу
|
|
73
|
+
// */
|
|
74
|
+
// delete: [$tasks, $task, $delete],
|
|
75
|
+
// /**
|
|
76
|
+
// * Позволяет отклонить задачу
|
|
77
|
+
// */
|
|
78
|
+
// disapprove: [$tasks, $task, $disapprove],
|
|
79
|
+
// favorite: {
|
|
80
|
+
// /**
|
|
81
|
+
// * Добавляет задачи в "Избранное"
|
|
82
|
+
// */
|
|
83
|
+
// add: [$tasks, $task, $favorite, $add],
|
|
84
|
+
// /**
|
|
85
|
+
// * Удаляет задачи из "Избранного"
|
|
86
|
+
// */
|
|
87
|
+
// delete: [$tasks, $task, $favorite, $delete],
|
|
88
|
+
// },
|
|
89
|
+
// files: {
|
|
90
|
+
// /**
|
|
91
|
+
// * Прикрепляет загруженный на диск файл к задаче
|
|
92
|
+
// */
|
|
93
|
+
// attach: [$tasks, $task, $files, $attach],
|
|
94
|
+
// },
|
|
95
|
+
/**
|
|
96
|
+
* Возвращает все доступные поля
|
|
97
|
+
*/
|
|
98
|
+
getFields: [$tasks, $task, $getFields],
|
|
99
|
+
/**
|
|
100
|
+
* Метод для проверки доступа к задаче
|
|
101
|
+
*/
|
|
102
|
+
getAccess: [$tasks, $task, $getaccess],
|
|
103
|
+
// history: {
|
|
104
|
+
// /**
|
|
105
|
+
// * Получает историю задачи
|
|
106
|
+
// */
|
|
107
|
+
// list: [$tasks, $task, $history, $list],
|
|
108
|
+
// },
|
|
109
|
+
/**
|
|
110
|
+
* Возвращает массив задач, каждая из которых содержит массив полей
|
|
111
|
+
*/
|
|
112
|
+
list: [$tasks, $task, $list],
|
|
113
|
+
// /**
|
|
114
|
+
// * Останавливает выполнение задачи, переводя ее в статус "ждет выполнения"
|
|
115
|
+
// */
|
|
116
|
+
// pause: [$tasks, $task, $pause],
|
|
117
|
+
// /**
|
|
118
|
+
// * Возобновляет задачу после ее завершения
|
|
119
|
+
// */
|
|
120
|
+
// renew: [$tasks, $task, $renew],
|
|
121
|
+
// /**
|
|
122
|
+
// * Переводит задачу в статус «выполняется»
|
|
123
|
+
// */
|
|
124
|
+
// start: [$tasks, $task, $start],
|
|
125
|
+
// /**
|
|
126
|
+
// * Позволяет наблюдать за задачей
|
|
127
|
+
// */
|
|
128
|
+
// startWatch: [$tasks, $task, 'startwatch'],
|
|
129
|
+
// /**
|
|
130
|
+
// * Останавливает наблюдение за задачей
|
|
131
|
+
// */
|
|
132
|
+
// stopwatch: [$tasks, $task, 'stopwatch'],
|
|
133
|
+
/**
|
|
134
|
+
* Обновляет задачу
|
|
135
|
+
*/
|
|
136
|
+
update: [$tasks, $task, $update],
|
|
137
|
+
result: {
|
|
138
|
+
/**
|
|
139
|
+
* Просмотр списка результатов к задаче
|
|
140
|
+
*/
|
|
141
|
+
list: [$tasks, $task, $result, $list],
|
|
142
|
+
/**
|
|
143
|
+
* Создание результата задачи из комментария
|
|
144
|
+
*/
|
|
145
|
+
addFromComment: [$tasks, $task, $result, 'addFromComment'],
|
|
146
|
+
/**
|
|
147
|
+
* Удаление результата задачи по комментарию из которого он был создан
|
|
148
|
+
*/
|
|
149
|
+
deleteFromComment: [$tasks, $task, $result, 'deleteFromComment'],
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
},
|
|
153
|
+
task: {
|
|
154
|
+
elapsedItem: {
|
|
155
|
+
// /**
|
|
156
|
+
// * Возвращает список методов и их описание
|
|
157
|
+
// */
|
|
158
|
+
// getManifest: [$task, $elapseditem, $getmanifest],
|
|
159
|
+
/**
|
|
160
|
+
* Возвращает список записей о затраченном времени по задаче
|
|
161
|
+
*/
|
|
162
|
+
getList: [$task, $elapseditem, $getlist],
|
|
163
|
+
// /**
|
|
164
|
+
// * Возвращает запись о затраченном времени по ее идентификатору
|
|
165
|
+
// */
|
|
166
|
+
// get: [$task, $elapseditem, $get],
|
|
167
|
+
/**
|
|
168
|
+
* Добавляет затраченное время к задаче
|
|
169
|
+
*/
|
|
170
|
+
add: [$task, $elapseditem, $add],
|
|
171
|
+
/**
|
|
172
|
+
* Удаляет запись о затраченном времени
|
|
173
|
+
*/
|
|
174
|
+
delete: [$task, $elapseditem, $delete],
|
|
175
|
+
/**
|
|
176
|
+
* Проверяет разрешено ли действие
|
|
177
|
+
*/
|
|
178
|
+
isActionAllowed: [$task, $elapseditem, $isactionallowed],
|
|
179
|
+
/**
|
|
180
|
+
* Изменяет параметры записи о затраченном времени
|
|
181
|
+
*/
|
|
182
|
+
update: [$task, $elapseditem, $update],
|
|
183
|
+
},
|
|
184
|
+
commentItem: {
|
|
185
|
+
// /**
|
|
186
|
+
// * Возвращает список методов и их описание
|
|
187
|
+
// */
|
|
188
|
+
// getManifest: [$task, $commentitem, $getmanifest],
|
|
189
|
+
/**
|
|
190
|
+
* Возвращает список комментариев к задаче
|
|
191
|
+
*/
|
|
192
|
+
getList: [$task, $commentitem, $getlist],
|
|
193
|
+
/**
|
|
194
|
+
* Возвращает комментарий к задаче
|
|
195
|
+
*/
|
|
196
|
+
get: [$task, $commentitem, $get],
|
|
197
|
+
/**
|
|
198
|
+
* Создает новый комментарий к задаче
|
|
199
|
+
*/
|
|
200
|
+
add: [$task, $commentitem, $add],
|
|
201
|
+
/**
|
|
202
|
+
* Обновляет данные комментария
|
|
203
|
+
*/
|
|
204
|
+
update: [$task, $commentitem, $update],
|
|
205
|
+
/**
|
|
206
|
+
* Удаляет комментарий
|
|
207
|
+
*/
|
|
208
|
+
delete: [$task, $commentitem, $delete],
|
|
209
|
+
// /**
|
|
210
|
+
// * Проверяет, разрешено ли действие
|
|
211
|
+
// */
|
|
212
|
+
// isActionAllowed: [$task, $commentitem, $isactionallowed],
|
|
213
|
+
},
|
|
214
|
+
planner: {
|
|
215
|
+
getList: [$task, $planner, $getlist]
|
|
216
|
+
},
|
|
217
|
+
item: {
|
|
218
|
+
userField: {
|
|
219
|
+
/**
|
|
220
|
+
* Получение всех доступных полей свойства
|
|
221
|
+
*/
|
|
222
|
+
getFields: [$task, $item, $userfield, 'getfields'],
|
|
223
|
+
// /**
|
|
224
|
+
// * Получение всех доступных типов данных
|
|
225
|
+
// */
|
|
226
|
+
// getTypes: [$task, $item, $userfield, 'gettypes'],
|
|
227
|
+
// /**
|
|
228
|
+
// * Создание нового свойства
|
|
229
|
+
// */
|
|
230
|
+
// add: [$task, $item, $userfield, $add],
|
|
231
|
+
// /**
|
|
232
|
+
// * Получение свойства по идентификатору
|
|
233
|
+
// */
|
|
234
|
+
// get: [$task, $item, $userfield, $get],
|
|
235
|
+
/**
|
|
236
|
+
* Получение списка свойств
|
|
237
|
+
*/
|
|
238
|
+
getList: [$task, $item, $userfield, 'getlist'],
|
|
239
|
+
// /**
|
|
240
|
+
// * Редактирование параметров свойства
|
|
241
|
+
// */
|
|
242
|
+
// update: [$task, $item, $userfield, $update],
|
|
243
|
+
// /**
|
|
244
|
+
// * Удаление свойства
|
|
245
|
+
// */
|
|
246
|
+
// delete: [$task, $item, $userfield, $delete]
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
},
|
|
250
|
+
timeman: {
|
|
251
|
+
// /**
|
|
252
|
+
// * Получение настроек рабочего времени пользователя
|
|
253
|
+
// */
|
|
254
|
+
// settings: [$timeMan, $settings],
|
|
255
|
+
/**
|
|
256
|
+
* Получение информации о текущем рабочем дне пользователя
|
|
257
|
+
*/
|
|
258
|
+
status: [$timeMan, $status],
|
|
259
|
+
// /**
|
|
260
|
+
// * Начать новый рабочий день либо возобновить закрытый или приостановленный
|
|
261
|
+
// */
|
|
262
|
+
// open: [$timeMan, 'open'],
|
|
263
|
+
// /**
|
|
264
|
+
// * Закрыть рабочий день
|
|
265
|
+
// */
|
|
266
|
+
// close: [$timeMan, 'close'],
|
|
267
|
+
// /**
|
|
268
|
+
// * Приостановить рабочий день
|
|
269
|
+
// */
|
|
270
|
+
// pause: [$timeMan, $pause],
|
|
271
|
+
// networkrange: {
|
|
272
|
+
// check: this.baseUrl + 'networkrange.check', // Метод для проверки IP-адреса на вхождение в диапазоны сетевых адресов офисной сети
|
|
273
|
+
// get: this.baseUrl + 'networkrange.get', // Метод для получения диапазонов сетевых адресов, входящих в офисную сеть
|
|
274
|
+
// set: this.baseUrl + 'networkrange.set' // Метод для установки диапазонов сетевых адресов, входящих в офисную сеть. 18.5.0
|
|
275
|
+
// },
|
|
276
|
+
// timecontrol: {
|
|
277
|
+
// report: {
|
|
278
|
+
// add: this.baseUrl + 'timecontrol.report.add', // Метод для отправки отчета о выявленном отсутствии
|
|
279
|
+
// get: this.baseUrl + 'timecontrol.reports.get', // Метод для получения отчета о выявленных отсутствиях
|
|
280
|
+
// settings: {
|
|
281
|
+
// get: this.baseUrl + 'timecontrol.reports.settings.get' // Метод для получения пользовательских настроек для построения интерфейса отчетов инструмента контроля времени
|
|
282
|
+
// },
|
|
283
|
+
// users: {
|
|
284
|
+
// get: this.baseUrl + 'timecontrol.reports.users.get' // Метод для получения списка пользователей, относящихся к указанному подразделению. 18.5.0
|
|
285
|
+
// }
|
|
286
|
+
// },
|
|
287
|
+
// settings: {
|
|
288
|
+
// get: this.baseUrl + 'timecontrol.settings.get', // Метод для получения настроек инструмента контроля времени
|
|
289
|
+
// set: this.baseUrl + 'timecontrol.settings.set' // Метод для установки настроек инструмента контроля времени
|
|
290
|
+
// },
|
|
291
|
+
// },
|
|
292
|
+
// schedule: {
|
|
293
|
+
// get: this.baseUrl + 'schedule.get' // Метод позволяет получить рабочий график по его идентификатору
|
|
294
|
+
// }
|
|
295
|
+
},
|
|
296
|
+
sonet_group: {
|
|
297
|
+
// /**
|
|
298
|
+
// * Создает группу соцсети, используя метод API CSocNetGroup::CreateGroup(), указывая владельцем группы текущего пользователя
|
|
299
|
+
// */
|
|
300
|
+
// create: [$sonet_group, $create],
|
|
301
|
+
// /**
|
|
302
|
+
// * Удаляет группу соцсети
|
|
303
|
+
// */
|
|
304
|
+
// delete: [$sonet_group, $delete],
|
|
305
|
+
// feature: {
|
|
306
|
+
// access: [$sonet_group, $feature, $access] // Проверяет, имеет ли текущий пользователь право на совершение операции в группе соцсети, осуществляя вызов функции CSocNetFeaturesPerms::CurrentUserCanPerformOperation()
|
|
307
|
+
// },
|
|
308
|
+
/**
|
|
309
|
+
* Возвращает массив групп соцсети, каждая из которых содержит массив полей, осуществляя вызов CSocNetGroup::GetList(), при этом возвращаются только те группы, которые доступны пользователю по правам
|
|
310
|
+
*/
|
|
311
|
+
get: [$sonet_group, $get],
|
|
312
|
+
// /**
|
|
313
|
+
// * Изменяет владельца группы
|
|
314
|
+
// */
|
|
315
|
+
// setOwner: [$sonet_group, 'setowner'],
|
|
316
|
+
// /**
|
|
317
|
+
// * Изменяет параметры группы соцсети, используя метод API CSocNetGroup::Update()
|
|
318
|
+
// */
|
|
319
|
+
// update: [$sonet_group, $update],
|
|
320
|
+
// user: {
|
|
321
|
+
// add: [$sonet_group, $user, $add], // sonet_group.user.add Добавляет пользователей в качестве участников рабочей группы (без приглашения и подтверждения)
|
|
322
|
+
// delete: [$sonet_group, $user, $delete], // Удаляет пользователей из рабочей группы
|
|
323
|
+
// get: [$sonet_group, $user, $get], // Возвращает массив участников группы соцсети, осуществляя вызов CSocNetUserToGroup::GetList(), при этом проверяются права на доступ текущего пользователя к группе
|
|
324
|
+
// groups: [$sonet_group, $user, 'groups'], // Возвращает массив групп соцсети текущего пользователя, осуществляя вызов CSocNetUserToGroup::GetList()
|
|
325
|
+
// invite: [$sonet_group, $user, 'invite'], // Выполняет приглашение пользователей в группу соцсети от лица текущего пользователя, при этом проверяются права на доступ текущего пользователя к группе
|
|
326
|
+
// request: [$sonet_group, $user, $request], // Отправляет запрос текущего пользователя на вступление в группу соцсети, при этом проверяются права на доступ текущего пользователя к группе.
|
|
327
|
+
// update: [$sonet_group, $user, $update], // Изменяет роль пользователей в рабочей группе События при работе с группами СоцСети Список событий при добавлении, изменении и удалении группы.
|
|
328
|
+
// },
|
|
329
|
+
// workgroup: {
|
|
330
|
+
// list: [$socialnetwork, $api, $workgroup, $list], // Метод возвращает список групп,
|
|
331
|
+
// get: [$socialnetwork, $api, $workgroup, $get] // Метод возвращает данные по рабочей группе
|
|
332
|
+
// }
|
|
333
|
+
},
|
|
334
|
+
server: {
|
|
335
|
+
time: [$server, $time]
|
|
336
|
+
},
|
|
337
|
+
log: {
|
|
338
|
+
blogpost: {
|
|
339
|
+
/**
|
|
340
|
+
* Добавляет в Живую Ленту сообщение от имени текущего пользователя
|
|
341
|
+
*/
|
|
342
|
+
add: [$log, $blogpost, $add],
|
|
343
|
+
// getusers: {
|
|
344
|
+
// important: 'log.blogpost.getusers.important' // Отдает массив ID пользователей, прочитавших Важное сообщение
|
|
345
|
+
// },
|
|
346
|
+
/**
|
|
347
|
+
* Возвращает массив с доступными текущему пользователю сообщениями Живой ленты. Каждое из сообщений представляет собой массив значений полей (включая пользовательские поля)
|
|
348
|
+
*/
|
|
349
|
+
get: [$log, $blogpost, $get],
|
|
350
|
+
// /**
|
|
351
|
+
// * Удаляет сообщение Живой Ленты
|
|
352
|
+
// */
|
|
353
|
+
// delete: [$log, $blogpost, $delete],
|
|
354
|
+
// /**
|
|
355
|
+
// * Добавляет получателей в сообщение Живой Ленты
|
|
356
|
+
// */
|
|
357
|
+
// share: [$log, $blogpost, $share],
|
|
358
|
+
// /**
|
|
359
|
+
// * Изменяет сообщение Живой Ленты
|
|
360
|
+
// */
|
|
361
|
+
// update: [$log, $blogpost, $update],
|
|
362
|
+
},
|
|
363
|
+
// blogcomment: {
|
|
364
|
+
// /**
|
|
365
|
+
// * Добавляет комментарий к сообщению Живой ленты
|
|
366
|
+
// */
|
|
367
|
+
// add: [$log, $blogcomment, $add],
|
|
368
|
+
// }
|
|
369
|
+
},
|
|
370
|
+
lists: {
|
|
371
|
+
// /**
|
|
372
|
+
// * Метод создаёт список
|
|
373
|
+
// */
|
|
374
|
+
// add: [$lists, $add],
|
|
375
|
+
// /**
|
|
376
|
+
// * Метод удаляет список
|
|
377
|
+
// */
|
|
378
|
+
// delete: [$lists, $delete],
|
|
379
|
+
/**
|
|
380
|
+
* Метод возвращает данные по спискам
|
|
381
|
+
*/
|
|
382
|
+
get: [$lists, $get],
|
|
383
|
+
// /**
|
|
384
|
+
// * Метод обновляет существующий список
|
|
385
|
+
// */
|
|
386
|
+
// update: [$lists, $update],
|
|
387
|
+
// /**
|
|
388
|
+
// * Метод возвращает id типа инфоблока
|
|
389
|
+
// */
|
|
390
|
+
// getIBlockTypeId: [$lists, $get, $iblock, $type, $id],
|
|
391
|
+
element: {
|
|
392
|
+
/**
|
|
393
|
+
* Метод создаёт элемент списка
|
|
394
|
+
*/
|
|
395
|
+
add: [$lists, $element, $add],
|
|
396
|
+
// /**
|
|
397
|
+
// * Метод удаляет элемент списка TODO: Реализовать
|
|
398
|
+
// */
|
|
399
|
+
// delete: [$lists, $element, $delete],
|
|
400
|
+
/**
|
|
401
|
+
* Метод возвращает список элементов или элемент
|
|
402
|
+
*/
|
|
403
|
+
get: [$lists, $element, $get],
|
|
404
|
+
// /**
|
|
405
|
+
// * Метод обновляет элемент списка TODO: Реализовать
|
|
406
|
+
// */
|
|
407
|
+
// update: [$lists, $element, $update],
|
|
408
|
+
// /**
|
|
409
|
+
// * Метод возвращает путь к файлу TODO: Реализовать
|
|
410
|
+
// */
|
|
411
|
+
// getFileUrl: [$lists, $element, $get, $file, $url]
|
|
412
|
+
},
|
|
413
|
+
field: {
|
|
414
|
+
// /**
|
|
415
|
+
// * Метод создает поле списка
|
|
416
|
+
// */
|
|
417
|
+
// add: [$lists, $field, $add],
|
|
418
|
+
// /**
|
|
419
|
+
// * Метод удаляет поле списка
|
|
420
|
+
// */
|
|
421
|
+
// delete: [$lists, $field, $delete],
|
|
422
|
+
/**
|
|
423
|
+
* Метод возвращает данные поля
|
|
424
|
+
*/
|
|
425
|
+
get: [$lists, $field, $get],
|
|
426
|
+
// type: {
|
|
427
|
+
// /**
|
|
428
|
+
// * Метод возвращает доступные типа полей для указанного списка
|
|
429
|
+
// */
|
|
430
|
+
// get: [$lists, $field, $type, $get],
|
|
431
|
+
// },
|
|
432
|
+
// /**
|
|
433
|
+
// * Метод обновляет поле списка
|
|
434
|
+
// */
|
|
435
|
+
// update: [$lists, $field, $update],
|
|
436
|
+
}
|
|
437
|
+
},
|
|
438
|
+
im: {
|
|
439
|
+
chat: {
|
|
440
|
+
add: [$im, $chat, $add],
|
|
441
|
+
// list: [$im, $chat, $user, $list],
|
|
442
|
+
// add: [$im, $chat, $user, $add],
|
|
443
|
+
// delete: [$im, $chat, $user, $delete],
|
|
444
|
+
// updateTitle: [$im, $chat, $updateTitle],
|
|
445
|
+
// updateColor: [$im, $chat, $updateColor],
|
|
446
|
+
// updateAvatar: [$im, $chat, $updateAvatar],
|
|
447
|
+
// setOwner: [$im, $chat, $setOwner],
|
|
448
|
+
// get: [$im, $chat, $get],
|
|
449
|
+
// mute: [$im, $chat, $mute],
|
|
450
|
+
}
|
|
451
|
+
},
|
|
452
|
+
disk: {
|
|
453
|
+
file: {
|
|
454
|
+
// /**
|
|
455
|
+
// * Возвращает описание полей файла
|
|
456
|
+
// */
|
|
457
|
+
// getFields: [$disk, $file, $getFields],
|
|
458
|
+
/**
|
|
459
|
+
* Возвращает файл по идентификатору
|
|
460
|
+
*/
|
|
461
|
+
get: [$disk, $file, $get],
|
|
462
|
+
// /**
|
|
463
|
+
// * Переименовывает файл
|
|
464
|
+
// */
|
|
465
|
+
// rename: [$disk, $file, $rename],
|
|
466
|
+
// /**
|
|
467
|
+
// * Копирует файл в указанную папку
|
|
468
|
+
// */
|
|
469
|
+
// copyTo: [$disk, $file, $copyto],
|
|
470
|
+
// /**
|
|
471
|
+
// * Перемещает файл в указанную папку
|
|
472
|
+
// */
|
|
473
|
+
// moveto: [$disk, $file, $moveto],
|
|
474
|
+
// /**
|
|
475
|
+
// * Уничтожает файл навсегда
|
|
476
|
+
// */
|
|
477
|
+
// delete: [$disk, $file, $delete],
|
|
478
|
+
/**
|
|
479
|
+
* Перемещает файл в корзину
|
|
480
|
+
*/
|
|
481
|
+
markDeleted: [$disk, $file, $markdeleted],
|
|
482
|
+
// /**
|
|
483
|
+
// * Восстанавливает файл из корзины
|
|
484
|
+
// */
|
|
485
|
+
// restore: [$disk, $file, $restore],
|
|
486
|
+
// /**
|
|
487
|
+
// * Загружает новую версию файла
|
|
488
|
+
// */
|
|
489
|
+
// uploadVersion: [$disk, $file, 'uploadversion'],
|
|
490
|
+
// /**
|
|
491
|
+
// * Возвращает список версий файла
|
|
492
|
+
// */
|
|
493
|
+
// getVersions: [$disk, $file, 'getVersions'],
|
|
494
|
+
// /**
|
|
495
|
+
// * Восстанавливает файл из конкретной версии
|
|
496
|
+
// */
|
|
497
|
+
// restoreFromVersion: [$disk, $file, 'restoreFromVersion'],
|
|
498
|
+
// /**
|
|
499
|
+
// * Возвращает публичную ссылку на файл
|
|
500
|
+
// */
|
|
501
|
+
// getExternalLink: [$disk, $file, 'getexternallink']
|
|
502
|
+
},
|
|
503
|
+
folder: {
|
|
504
|
+
getFields: [$disk, $folder, $getFields],
|
|
505
|
+
get: [$disk, $folder, $get],
|
|
506
|
+
getChildren: [$disk, $folder, $getchildren],
|
|
507
|
+
addSubFolder: [$disk, $folder, 'addsubfolder'],
|
|
508
|
+
copyTo: [$disk, $folder, $copyto],
|
|
509
|
+
moveTo: [$disk, $folder, $moveto],
|
|
510
|
+
rename: [$disk, $folder, $rename],
|
|
511
|
+
deleteTree: [$disk, $folder, 'deletetree'],
|
|
512
|
+
markDeleted: [$disk, $folder, $markdeleted],
|
|
513
|
+
restore: [$disk, $folder, $restore],
|
|
514
|
+
uploadFile: [$disk, $folder, $uploadfile],
|
|
515
|
+
getExternalLink: [$disk, $folder, 'getExternalLink']
|
|
516
|
+
},
|
|
517
|
+
attachedObject: {
|
|
518
|
+
get: [$disk, 'attachedObject', $get]
|
|
519
|
+
}
|
|
520
|
+
},
|
|
521
|
+
department: {
|
|
522
|
+
get: [$department, $get],
|
|
523
|
+
del: [$department, $delete],
|
|
524
|
+
add: [$department, $add],
|
|
525
|
+
update: [$department, $update]
|
|
526
|
+
},
|
|
527
|
+
calendar: {
|
|
528
|
+
event: {
|
|
529
|
+
// /**
|
|
530
|
+
// * Добавляет новое событие
|
|
531
|
+
// */
|
|
532
|
+
// add: [$calendar, $event, $add],
|
|
533
|
+
// /**
|
|
534
|
+
// * Удаляет событие
|
|
535
|
+
// */
|
|
536
|
+
// delete: [$calendar, $event, $delete],
|
|
537
|
+
/**
|
|
538
|
+
* Возвращает список событий календаря
|
|
539
|
+
*/
|
|
540
|
+
get: [$calendar, $event, $get],
|
|
541
|
+
// /**
|
|
542
|
+
// * Возвращает список будущих событий для текущего пользователя
|
|
543
|
+
// */
|
|
544
|
+
// getNearest: [$calendar, $event, $get, $nearest],
|
|
545
|
+
// /**
|
|
546
|
+
// * Редактирует существующее событие
|
|
547
|
+
// */
|
|
548
|
+
// update: [$calendar, $event, $get, $update],
|
|
549
|
+
}
|
|
550
|
+
},
|
|
551
|
+
bizProc: {
|
|
552
|
+
workflow: {
|
|
553
|
+
// /**
|
|
554
|
+
// * Возвращает список запущенных бизнес-процессов TODO: реализовать
|
|
555
|
+
// */
|
|
556
|
+
// instances: {
|
|
557
|
+
// /**
|
|
558
|
+
// * Возвращает список запущенных бизнес-процессов. Алиас bizproc.workflow.instances
|
|
559
|
+
// */
|
|
560
|
+
// list: [$bizproc, $workflow, $instances, $list]
|
|
561
|
+
// },
|
|
562
|
+
// /**
|
|
563
|
+
// * Останавливает активный Бизнес-процесс TODO: реализовать
|
|
564
|
+
// */
|
|
565
|
+
// terminate: {
|
|
566
|
+
// /**
|
|
567
|
+
// * Добавляет шаблон Бизнес-процесса // TODO: реализовать
|
|
568
|
+
// */
|
|
569
|
+
// add: [$bizproc, $workflow, $template, $add],
|
|
570
|
+
// /**
|
|
571
|
+
// * Удаляет шаблон Бизнес-процесса // TODO: реализовать
|
|
572
|
+
// */
|
|
573
|
+
// delete: [$bizproc, $workflow, $template, $delete],
|
|
574
|
+
// /**
|
|
575
|
+
// * Изменяет шаблон Бизнес-процесса // TODO: реализовать
|
|
576
|
+
// */
|
|
577
|
+
// update: [$bizproc, $workflow, $template, $update],
|
|
578
|
+
// /**
|
|
579
|
+
// * Возвращает список шаблонов Бизнес-процессов, установленных на сайте
|
|
580
|
+
// */
|
|
581
|
+
// list: [$bizproc, $workflow, $template, $list]
|
|
582
|
+
// },
|
|
583
|
+
/**
|
|
584
|
+
* Запускает Бизнес-процесс
|
|
585
|
+
*/
|
|
586
|
+
start: [$bizproc, $workflow, $start],
|
|
587
|
+
// /**
|
|
588
|
+
// * Удаляет запущенный бизнес-процесс TODO: реализовать
|
|
589
|
+
// */
|
|
590
|
+
// kill: [$bizproc, $workflow, $kill],
|
|
591
|
+
},
|
|
592
|
+
// activity: {
|
|
593
|
+
// /**
|
|
594
|
+
// * Добавляет новое действие в бизнес-процесс
|
|
595
|
+
// */
|
|
596
|
+
// add: [$bizproc, $activity, $add],
|
|
597
|
+
// /**
|
|
598
|
+
// * Удаляет действие
|
|
599
|
+
// */
|
|
600
|
+
// delete: [$bizproc, $activity, $delete],
|
|
601
|
+
// /**
|
|
602
|
+
// * Возвращает список установленных приложением действий
|
|
603
|
+
// */
|
|
604
|
+
// list: [$bizproc, $activity, $list],
|
|
605
|
+
// /**
|
|
606
|
+
// * Позволяет обновить поля действия
|
|
607
|
+
// */
|
|
608
|
+
// update: [$bizproc, $activity, $update],
|
|
609
|
+
// /**
|
|
610
|
+
// * Записывает информацию в лог бизнес-процесса
|
|
611
|
+
// */
|
|
612
|
+
// log: [$bizproc, $activity, $log]
|
|
613
|
+
// },
|
|
614
|
+
// task: {
|
|
615
|
+
// /**
|
|
616
|
+
// * Осуществляет выполнение заданий БП
|
|
617
|
+
// */
|
|
618
|
+
// complete: [$bizproc, $task, $complete],
|
|
619
|
+
// /**
|
|
620
|
+
// * Возвращает список заданий бизнес-процессов
|
|
621
|
+
// */
|
|
622
|
+
// list: [$bizproc, $task, $list],
|
|
623
|
+
// },
|
|
624
|
+
// robot: {
|
|
625
|
+
// /**
|
|
626
|
+
// * Регистрирует нового робота
|
|
627
|
+
// */
|
|
628
|
+
// add: [$bizproc, $robot, $add],
|
|
629
|
+
// /**
|
|
630
|
+
// * Удаляет зарегистрированного робота
|
|
631
|
+
// */
|
|
632
|
+
// delete: [$bizproc, $robot, $delete],
|
|
633
|
+
// /**
|
|
634
|
+
// * Список зарегистрированных приложением роботов
|
|
635
|
+
// */
|
|
636
|
+
// list: [$bizproc, $robot, $list], //
|
|
637
|
+
// /**
|
|
638
|
+
// * Обновляет поля робота
|
|
639
|
+
// */
|
|
640
|
+
// update: [$bizproc, $robot, $update] //
|
|
641
|
+
// },
|
|
642
|
+
// event: {
|
|
643
|
+
// /**
|
|
644
|
+
// * Возвращает действию выходные параметры, заданные в описании действия
|
|
645
|
+
// */
|
|
646
|
+
// send: [$bizproc, $event, $send],
|
|
647
|
+
// }
|
|
648
|
+
},
|
|
649
|
+
app: {
|
|
650
|
+
/**
|
|
651
|
+
* Показ информации о приложении. Метод поддерживает безопасный вызов
|
|
652
|
+
*/
|
|
653
|
+
info: ['app', 'info']
|
|
654
|
+
}
|
|
655
|
+
};
|
|
656
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0aG9kcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2J4LXJlc3Qvc3JjL3R5cGlmaWNhdGlvbi9iYXNlL21ldGhvZHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLElBQUksRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFDbkUsU0FBUyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUNsRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFDdEYsVUFBVSxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUNsRCxLQUFLLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUN2RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQy9ELE1BQU0sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFDaEMsV0FBVyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUMxQyxNQUFNLGdDQUFnQyxDQUFBO0FBR3ZDLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBcUQ7SUFDdkUsSUFBSSxFQUFFO1FBQ0osS0FBSyxFQUFFLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQztRQUN2QixHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDO1FBQ2xCLE9BQU8sRUFBRSxDQUFDLEtBQUssRUFBRSxTQUFTLENBQUM7UUFDM0IsTUFBTSxFQUFFLENBQUMsS0FBSyxF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cm9jLCAkYmxvZ3Bvc3QsICRjYWxlbmRhciwgJGNoYXQsICRjb21tZW50aXRlbSxcclxuICAkY29tcGxldGUsICRjb3B5dG8sICRkZWZlciwgJGRlbGVnYXRlLCAkZGVsZXRlLCAkZGVwYXJ0bWVudCwgJGRpc2ssXHJcbiAgJGVsYXBzZWRpdGVtLCAkZWxlbWVudCwgJGV2ZW50LCAkZmllbGQsICRmaWxlLCAkZm9sZGVyLCAkZ2V0LCAkZ2V0YWNjZXNzLCAkZ2V0Y2hpbGRyZW4sXHJcbiAgJGdldEZpZWxkcywgJGdldGxpc3QsICRpbSwgJGlzYWN0aW9uYWxsb3dlZCwgJGl0ZW0sXHJcbiAgJGxpc3QsICRsaXN0cywgJGxvZywgJG1hcmtkZWxldGVkLCAkbW92ZXRvLCAkcGxhbm5lciwgJHJlbmFtZSwgJHJlc3RvcmUsXHJcbiAgJHJlc3VsdCwgJHNlYXJjaCwgJHNlcnZlciwgJHNvbmV0X2dyb3VwLCAkc3RhcnQsICRzdGF0dXMsICR0YXNrLFxyXG4gICR0YXNrcywgJHRpbWUsICR0aW1lTWFuLCAkdXBkYXRlLFxyXG4gICR1cGxvYWRmaWxlLCAkdXNlciwgJHVzZXJmaWVsZCwgJHdvcmtmbG93XHJcbn0gZnJvbSAnLi4vLi4vY29uc3RzL3BhcnQtbmFtZS1tZXRob2RzJ1xyXG5pbXBvcnQgeyBpQlhSZXN0V29ya3BpZWNlTWV0aG9kc0Z1bGxPbmVBcmd1bWVudCB9IGZyb20gJy4vd29ya3BpZWNlL21ldGhvZHMnXHJcblxyXG5leHBvcnQgY29uc3QgbWV0aG9kczogaUJYUmVzdFdvcmtwaWVjZU1ldGhvZHNGdWxsT25lQXJndW1lbnQ8c3RyaW5nW10+ID0ge1xyXG4gIHVzZXI6IHtcclxuICAgIGFkbWluOiBbJHVzZXIsICdhZG1pbiddLFxyXG4gICAgZ2V0OiBbJHVzZXIsICRnZXRdLFxyXG4gICAgY3VycmVudDogWyR1c2VyLCAnY3VycmVudCddLFxyXG4gICAgdXBkYXRlOiBbJHVzZXIsICR1cGRhdGVdLFxyXG4gICAgc2VhcmNoOiBbJHVzZXIsICRzZWFyY2hdLFxyXG4gICAgYWNjZXNzOiBbJHVzZXIsICdhY2Nlc3MnXSwgLy8gVTEgLSDQv9C+0LvRjNC30L7QstCw0YLQtdC70Ywg0YEgaWQgPTFcclxuICAgIC8vIEFVIC0g0LLRgdC1INCw0LLRgtC+0YDQuNC30L7QstCw0L3QvdGL0LUg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9C4XHJcbiAgICAvLyBEMSAtINC/0L7QtNGA0LDQt9C00LXQu9C10L3QuNC1INGBIGlkPTFcclxuICAgIC8vIEcxIC0g0LPRgNGD0L/Qv9CwINGBIGlkPTFcclxuICAgIGZpZWxkczogWyR1c2VyLCAnZmllbGRzJ10sXHJcbiAgICB1c2VyZmllbGQ6IHtcclxuICAgICAgLyoqXHJcbiAgICAgICAqINCU0L7QsdCw0LLQu9GP0LXRgiDQv9C+0LvRjNC30L7QstCw0YLQtdC70YzRgdC60L7QtSDQv9C+0LvQtVxyXG4gICAgICAgKi9cclxuICAgICAgYWRkOiBbJHVzZXIsICR1c2VyZmllbGQsICRhZGRdLFxyXG4gICAgICAvKipcclxuICAgICAgICog0J7QsdC90L7QstC70Y/QtdGCINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjNGB0LrQvtC1INC/0L7Qu9C1XHJcbiAgICAgICAqL1xyXG4gICAgICB1cGRhdGU6IFskdXNlciwgJHVzZXJmaWVsZCwgJHVwZGF0ZV0sXHJcbiAgICAgIC8qKlxyXG4gICAgICAgKiDQo9C00LDQu9GP0LXRgiDQv9C+0LvRjNC30L7QstCw0YLQtdC70YzRgdC60L7QtSDQv9C+0LvQtVxyXG4gICAgICAgKi9cclxuICAgICAgZGVsZXRlOiBbJHVzZXIsICR1c2VyZmllbGQsICRkZWxldGVdLFxyXG4gICAgICAvKipcclxuICAgICAgICogINCf0L7Qu9GD0YfQsNC10YIg0YHQv9C40YHQvtC6INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjNGB0LrQuNGFINC/0L7Qu9C10LlcclxuICAgICAgICovXHJcbiAgICAgIGxpc3Q6IFskdXNlciwgJHVzZXJmaWVsZCwgJGxpc3RdLFxyXG4gICAgICBmaWxlOiB7XHJcbiAgICAgICAgLyoqXHJcbiAgICAgICAgICogINCf0L7Qu9GD0YfQsNC10YIg0YTQsNC50Lsg0LjQtyDQv9C+0LvRjNC30L7QstCw0YLQtdC70YzRgdC60L7Qs9C+INC/0L7Qu9GPXHJcbiAgICAgICAgICovXHJcbiAgICAgICAgZ2V0OiBbJHVzZXIsICR1c2VyZmllbGQsICRmaWxlLCAkZ2V0XVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfSxcclxuICB0YXNrczoge1xyXG4gICAgdGFzazoge1xyXG4gICAgICAvKipcclxuICAgICAgICog0KHQvtC30LTQsNC10YIg0LfQsNC00LDRh9GDXHJcbiAgICAgICAqL1xyXG4gICAgICBhZGQ6IFskdGFza3MsICR0YXNrLCAkYWRkXSxcclxuICAgICAgLyoqXHJcbiAgICAgICAqINCf0L7Qt9Cy0L7Qu9GP0LXRgiDQv9GA0LjQvdGP0YLRjCDQt9Cw0LTQsNGH0YNcclxuICAgICAgICovXHJcbiAgICAgIGFwcHJvdmU6IFskdGFza3MsICR0YXNrLCAkYXBwcm92ZV0sXHJcbiAgICAgIC8qKlxyXG4gICAgICAgKiDQn9C10YDQtdCy0L7QtNC40YIg0LfQsNC00LDRh9GDINCyINGB0YLQsNGC0YPRgSDCq9C30LDQstC10YDRiNC10L3QsMK7XHJcbiAgICAgICAqL1xyXG4gICAgICBjb21wbGV0ZTogWyR0YXNrcywgJHRhc2ssICRjb21wbGV0ZV0sXHJcbiAgICAgIC8vIGNvdW50ZXJzOiB7XHJcbiAgICAgIC8vICAgLyoqXHJcbiAgICAgIC8vICAgICog0J/QvtC70YPRh9Cw0LXRgiDRgdGH0LXRgtGH0LjQutC4INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRj1xyXG4gICAgICAvLyAgICAqL1xyXG4gICAgICAvLyAgIGdldDogWyR0YXNrcywgJHRhc2ssICRjb3VudGVycywgJGdldF0sXHJcbiAgICAgIC8vIH0sXHJcbiAgICAgIC8qKlxyXG4gICAgICAgKiDQn9C10YDQtdCy0L7QtNC40YIg0LfQsNC00LDRh9GDINCyINGB0YLQsNGC0YPRgSDCq9C+0YLQu9C+0LbQtdC90LDCu1xyXG4gICAgICAgKi9cclxuICAgICAgZGVmZXI6IFskdGFza3MsICR0YXNrLCAkZGVmZXJdLFxyXG4gICAgICAvKipcclxuICAgICAgICog0JzQtdGC0L7QtCDQtNC70Y8g0LTQtdC70LXQs9C40YDQvtCy0LDQvdC40Y8g0LfQsNC00LDRh9C4XHJcbiAgICAgICAqL1xyXG4gICAgICBkZWxlZ2F0ZTogWyR0YXNrcywgJHRhc2ssICRkZWxlZ2F0ZV0sXHJcbiAgICAgIC8qKlxyXG4gICAgICAgKiDQktC+0LfQstGA0LDRidCw0LXRgiDQuNC90YTQvtGA0LzQsNGG0LjRjiDQviDQutC+0L3QutGA0LXRgtC90L7QuSDQt9Cw0LTQsNGH0LVcclxuICAgICAgICovXHJcbiAgICAgIGdldDogWyR0YXNrcywgJHRhc2ssICRnZXRdLFxyXG4gICAgICAvLyAvKipcclxuICAgICAgLy8gICog0KPQtNCw0LvRj9C10YIg0LfQsNC00LDRh9GDXHJcbiAgICAgIC8vICAqL1xyXG4gICAgICAvLyBkZWxldGU6IFskdGFza3MsICR0YXNrLCAkZGVsZXRlXSxcclxuICAgICAgLy8gLyoqXHJcbiAgICAgIC8vICAqINCf0L7Qt9Cy0L7Qu9GP0LXRgiDQvtGC0LrQu9C+0L3QuNGC0Ywg0LfQsNC00LDRh9GDXHJcbiAgICAgIC8vICAqL1xyXG4gICAgICAvLyBkaXNhcHByb3ZlOiBbJHRhc2tzLCAkdGFzaywgJGRpc2FwcHJvdmVdLFxyXG4gICAgICAvLyBmYXZvcml0ZToge1xyXG4gICAgICAvLyAgIC8qKlxyXG4gICAgICAvLyAgICAqINCU0L7QsdCw0LLQu9GP0LXRgiDQt9Cw0LTQsNGH0Lgg0LIgXCLQmNC30LHRgNCw0L3QvdC+0LVcIlxyXG4gICAgICAvLyAgICAqL1xyXG4gICAgICAvLyAgIGFkZDogWyR0YXNrcywgJHRhc2ssICRmYXZvcml0ZSwgJGFkZF0sXHJcbiAgICAgIC8vICAgLyoqXHJcbiAgICAgIC8vICAgICog0KPQtNCw0LvRj9C10YIg0LfQsNC00LDRh9C4INC40LcgXCLQmNC30LHRgNCw0L3QvdC+0LPQvlwiXHJcbiAgICAgIC8vICAgICovXHJcbiAgICAgIC8vICAgZGVsZXRlOiBbJHRhc2tzLCAkdGFzaywgJGZhdm9yaXRlLCAkZGVsZXRlXSxcclxuICAgICAgLy8gfSxcclxuICAgICAgLy8gZmlsZXM6IHtcclxuICAgICAgLy8gICAvKipcclxuICAgICAgLy8gICAgKiDQn9GA0LjQutGA0LXQv9C70Y/QtdGCINC30LDQs9GA0YPQttC10L3QvdGL0Lkg0L3QsCDQtNC40YHQuiDRhNCw0LnQuyDQuiDQt9Cw0LTQsNGH0LVcclxuICAgICAgLy8gICAgKi9cclxuICAgICAgLy8gICBhdHRhY2g6IFskdGFza3MsICR0YXNrLCAkZmlsZXMsICRhdHRhY2hdLFxyXG4gICAgICAvLyB9LFxyXG4gICAgICAvKipcclxuICAgICAgICog0JLQvtC30LLRgNCw0YnQsNC10YIg0LLRgdC1INC00L7RgdGC0YPQv9C90YvQtSDQv9C+0LvRj1xyXG4gICAgICAgKi9cclxuICAgICAgZ2V0RmllbGRzOiBbJHRhc2tzLCAkdGFzaywgJGdldEZpZWxkc10sXHJcbiAgICAgIC8qKlxyXG4gICAgICAgKiDQnNC10YLQvtC0INC00LvRjyDQv9GA0L7QstC10YDQutC4INC00L7RgdGC0YPQv9CwINC6INC30LDQtNCw0YfQtVxyXG4gICAgICAgKi9cclxuICAgICAgZ2V0QWNjZXNzOiBbJHRhc2tzLCAkdGFzaywgJGdldGFjY2Vzc10sXHJcbiAgICAgIC8vIGhpc3Rvcnk6IHtcclxuICAgICAgLy8gICAvKipcclxuICAgICAgLy8gICAgKiDQn9C+0LvRg9GH0LDQtdGCINC40YHRgtC+0YDQuNGOINC30LDQtNCw0YfQuFxyXG4gICAgICAvLyAgICAqL1xyXG4gICAgICAvLyAgIGxpc3Q6IFskdGFza3MsICR0YXNrLCAkaGlzdG9yeSwgJGxpc3RdLFxyXG4gICAgICAvLyB9LFxyXG4gICAgICAvKipcclxuICAgICAgICog0JLQvtC30LLRgNCw0YnQsNC10YIg0LzQsNGB0YHQuNCyINC30LDQtNCw0YcsINC60LDQttC00LDRjyDQuNC3INC60L7RgtC+0YDRi9GFINGB0L7QtNC10YDQttC40YIg0LzQsNGB0YHQuNCyINC/0L7Qu9C10LlcclxuICAgICAgICovXHJcbiAgICAgIGxpc3Q6IFskdGFza3MsICR0YXNrLCAkbGlzdF0sXHJcbiAgICAgIC8vIC8qKlxyXG4gICAgICAvLyAgKiDQntGB0YLQsNC90LDQstC70LjQstCw0LXRgiDQstGL0L/QvtC70L3QtdC90LjQtSDQt9Cw0LTQsNGH0LgsINC/0LXRgNC10LLQvtC00Y8g0LXQtSDQsiDRgdGC0LDRgtGD0YEgXCLQttC00LXRgiDQstGL0L/QvtC70L3QtdC90LjRj1wiXHJcbiAgICAgIC8vICAqL1xyXG4gICAgICAvLyBwYXVzZTogWyR0YXNrcywgJHRhc2ssICRwYXVzZV0sXHJcbiAgICAgIC8vIC8qKlxyXG4gICAgICAvLyAgKiDQktC+0LfQvtCx0L3QvtCy0LvRj9C10YIg0LfQsNC00LDRh9GDINC/0L7RgdC70LUg0LXQtSDQt9Cw0LLQtdGA0YjQtdC90LjRj1xyXG4gICAgICAvLyAgKi9cclxuICAgICAgLy8gcmVuZXc6IFskdGFza3MsICR0YXNrLCAkcmVuZXddLFxyXG4gICAgICAvLyAvKipcclxuICAgICAgLy8gICog0J/QtdGA0LXQstC+0LTQuNGCINC30LDQtNCw0YfRgyDQsiDRgdGC0LDRgtGD0YEgwqvQstGL0L/QvtC70L3Rj9C10YLRgdGPwrtcclxuICAgICAgLy8gICovXHJcbiAgICAgIC8vIHN0YXJ0OiBbJHRhc2tzLCAkdGFzaywgJHN0YXJ0XSxcclxuICAgICAgLy8gLyoqXHJcbiAgICAgIC8vICAqINCf0L7Qt9Cy0L7Qu9GP0LXRgiDQvdCw0LHQu9GO0LTQsNGC0Ywg0LfQsCDQt9Cw0LTQsNGH0LXQuVxyXG4gICAgICAvLyAgKi9cclxuICAgICAgLy8gc3RhcnRXYXRjaDogWyR0YXNrcywgJHRhc2ssICdzdGFydHdhdGNoJ10sXHJcbiAgICAgIC8vIC8qKlxyXG4gICAgICAvLyAgKiDQntGB0YLQsNC90LDQstC70LjQstCw0LXRgiDQvdCw0LHQu9GO0LTQtdC90LjQtSDQt9CwINC30LDQtNCw0YfQtdC5XHJcbiAgICAgIC8vICAqL1xyXG4gICAgICAvLyBzdG9wd2F0Y2g6IFskdGFza3MsICR0YXNrLCAnc3RvcHdhdGNoJ10sXHJcbiAgICAgIC8qKlxyXG4gICAgICAgKiDQntCx0L3QvtCy0LvRj9C10YIg0LfQsNC00LDRh9GDXHJcbiAgICAgICAqL1xyXG4gICAgICB1cGRhdGU6IFskdGFza3MsICR0YXNrLCAkdXBkYXRlXSxcclxuICAgICAgcmVzdWx0OiB7XHJcbiAgICAgICAgLyoqXHJcbiAgICAgICAgICogINCf0YDQvtGB0LzQvtGC0YAg0YHQv9C40YHQutCwINGA0LXQt9GD0LvRjNGC0LDRgtC+0LIg0Log0LfQsNC00LDRh9C1XHJcbiAgICAgICAgICovXHJcbiAgICAgICAgbGlzdDogWyR0YXNrcywgJHRhc2ssICRyZXN1bHQsICRsaXN0XSxcclxuICAgICAgICAvKipcclxuICAgICAgICAgKiDQodC+0LfQtNCw0L3QuNC1INGA0LXQt9GD0LvRjNGC0LDRgtCwINC30LDQtNCw0YfQuCDQuNC3INC60L7QvNC80LXQvdGC0LDRgNC40Y9cclxuICAgICAgICAgKi9cclxuICAgICAgICBhZGRGcm9tQ29tbWVudDogWyR0YXNrcywgJHRhc2ssICRyZXN1bHQsICdhZGRGcm9tQ29tbWVudCddLFxyXG4gICAgICAgIC8qKlxyXG4gICAgICAgICAqINCj0LTQsNC70LXQvdC40LUg0YDQtdC30YPQu9GM0YLQsNGC0LAg0LfQsNC00LDRh9C4INC/0L4g0LrQvtC80LzQtdC90YLQsNGA0LjRjiDQuNC3INC60L7RgtC+0YDQvtCz0L4g0L7QvSDQsdGL0Lsg0YHQvtC30LTQsNC9XHJcbiAgICAgICAgICovXHJcbiAgICAgICAgZGVsZXRlRnJvbUNvbW1lbnQ6IFskdGFza3MsICR0YXNrLCAkcmVzdWx0LCAnZGVsZXRlRnJvbUNvbW1lbnQnXSxcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH0sXHJcbiAgdGFzazoge1xyXG4gICAgZWxhcHNlZEl0ZW06IHtcclxuICAgICAgLy8gLyoqXHJcbiAgICAgIC8vICAqINCS0L7Qt9Cy0YDQsNGJ0LDQtdGCINGB0L/QuNGB0L7QuiDQvNC10YLQvtC00L7QsiDQuCDQuNGFINC+0L/QuNGB0LDQvdC40LVcclxuICAgICAgLy8gICovXHJcbiAgICAgIC8vIGdldE1hbmlmZXN0OiBbJHRhc2ssICRlbGFwc2VkaXRlbSwgJGdldG1hbmlmZXN0XSxcclxuICAgICAgLyoqXHJcbiAgICAgICAqINCS0L7Qt9Cy0YDQsNGJ0LDQtdGCINGB0L/QuNGB0L7QuiDQt9Cw0L/QuNGB0LXQuSDQviDQt9Cw0YLRgNCw0YfQtdC90L3QvtC8INCy0YDQtdC80LXQvdC4INC/0L4g0LfQsNC00LDRh9C1XHJcbiAgICAgICAqL1xyXG4gICAgICBnZXRMaXN0OiBbJHRhc2ssICRlbGFwc2VkaXRlbSwgJGdldGxpc3RdLFxyXG4gICAgICAvLyAvKipcclxuICAgICAgLy8gICog0JLQvtC30LLRgNCw0YnQsNC10YIg0LfQsNC/0LjRgdGMINC+INC30LDRgtGA0LDRh9C10L3QvdC+0Lwg0LLRgNC10LzQtdC90Lgg0L/QviDQtdC1INC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGA0YNcclxuICAgICAgLy8gICovXHJcbiAgICAgIC8vIGdldDogWyR0YXNrLCAkZWxhcHNlZGl0ZW0sICRnZXRdLFxyXG4gICAgICAvKipcclxuICAgICAgICog0JTQvtCx0LDQstC70Y/QtdGCINC30LDRgtGA0LDRh9C10L3QvdC+0LUg0LLRgNC10LzRjyDQuiDQt9Cw0LTQsNGH0LVcclxuICAgICAgICovXHJcbiAgICAgIGFkZDogWyR0YXNrLCAkZWxhcHNlZGl0ZW0sICRhZGRdLFxyXG4gICAgICAvKipcclxuICAgICAgICog0KPQtNCw0LvRj9C10YIg0LfQsNC/0LjRgdGMINC+INC30LDRgtGA0LDRh9C10L3QvdC+0Lwg0LLRgNC10LzQtdC90LhcclxuICAgICAgICovXHJcbiAgICAgIGRlbGV0ZTogWyR0YXNrLCAkZWxhcHNlZGl0ZW0sICRkZWxldGVdLFxyXG4gICAgICAvKipcclxuICAgICAgICog0J/RgNC+0LLQtdGA0Y/QtdGCINGA0LDQt9GA0LXRiNC10L3QviDQu9C4INC00LXQudGB0YLQstC40LVcclxuICAgICAgICovXHJcbiAgICAgIGlzQWN0aW9uQWxsb3dlZDogWyR0YXNrLCAkZWxhcHNlZGl0ZW0sICRpc2FjdGlvbmFsbG93ZWRdLFxyXG4gICAgICAvKipcclxuICAgICAgICog0JjQt9C80LXQvdGP0LXRgiDQv9Cw0YDQsNC80LXRgtGA0Ysg0LfQsNC/0LjRgdC4INC+INC30LDRgtGA0LDRh9C10L3QvdC+0Lwg0LLRgNC10LzQtdC90LhcclxuICAgICAgICovXHJcbiAgICAgIHVwZGF0ZTogWyR0YXNrLCAkZWxhcHNlZGl0ZW0sICR1cGRhdGVdLFxyXG4gICAgfSxcclxuICAgIGNvbW1lbnRJdGVtOiB7XHJcbiAgICAgIC8vIC8qKlxyXG4gICAgICAvLyAgKiDQktC+0LfQstGA0LDRidCw0LXRgiDRgdC/0LjRgdC+0Log0LzQtdGC0L7QtNC+0LIg0Lgg0LjRhSDQvtC/0LjRgdCw0L3QuNC1XHJcbiAgICAgIC8vICAqL1xyXG4gICAgICAvLyBnZXRNYW5pZmVzdDogWyR0YXNrLCAkY29tbWVudGl0ZW0sICRnZXRtYW5pZmVzdF0sXHJcbiAgICAgIC8qKlxyXG4gICAgICAgKiDQktC+0LfQstGA0LDRidCw0LXRgiDRgdC/0LjRgdC+0Log0LrQvtC80LzQtdC90YLQsNGA0LjQtdCyINC6INC30LDQtNCw0YfQtVxyXG4gICAgICAgKi9cclxuICAgICAgZ2V0TGlzdDogWyR0YXNrLCAkY29tbWVudGl0ZW0sICRnZXRsaXN0XSxcclxuICAgICAgLyoqXHJcbiAgICAgICAqINCS0L7Qt9Cy0YDQsNGJ0LDQtdGCINC60L7QvNC80LXQvdGC0LDRgNC40Lkg0Log0LfQsNC00LDRh9C1XHJcbiAgICAgICAqL1xyXG4gICAgICBnZXQ6IFskdGFzaywgJGNvbW1lbnRpdGVtLCAkZ2V0XSxcclxuICAgICAgLyoqXHJcbiAgICAgICAqINCh0L7Qt9C00LDQtdGCINC90L7QstGL0Lkg0LrQvtC80LzQtdC90YLQsNGA0LjQuSDQuiDQt9Cw0LTQsNGH0LVcclxuICAgICAgICovXHJcbiAgICAgIGFkZDogWyR0YXNrLCAkY29tbWVudGl0ZW0sICRhZGRdLFxyXG4gICAgICAvKipcclxuICAgICAgICog0J7QsdC90L7QstC70Y/QtdGCINC00LDQvdC90YvQtSDQutC+0LzQvNC10L3RgtCw0YDQuNGPXHJcbiAgICAgICAqL1xyXG4gICAgICB1cGRhdGU6IFskdGFzaywgJGNvbW1lbnRpdGVtLCAkdXBkYXRlXSxcclxuICAgICAgLyoqXHJcbiAgICAgICAqINCj0LTQsNC70Y/QtdGCINC60L7QvNC80LXQvdGC0LDRgNC40LlcclxuICAgICAgICovXHJcbiAgICAgIGRlbGV0ZTogWyR0YXNrLCAkY29tbWVudGl0ZW0sICRkZWxldGVdLFxyXG4gICAgICAvLyAvKipcclxuICAgICAgLy8gICog0J/RgNC+0LLQtdGA0Y/QtdGCLCDRgNCw0LfRgNC10YjQtdC90L4g0LvQuCDQtNC10LnRgdGC0LLQuNC1XHJcbiAgICAgIC8vICAqL1xyXG4gICAgICAvLyBpc0FjdGlvbkFsbG93ZWQ6IFskdGFzaywgJGNvbW1lbnRpdGVtLCAkaXNhY3Rpb25hbGxvd2VkXSxcclxuICAgIH0sXHJcbiAgICBwbGFubmVyOiB7XHJcbiAgICAgIGdldExpc3Q6IFskdGFzaywgJHBsYW5uZXIsICRnZXRsaXN0XVxyXG4gICAgfSxcclxuICAgIGl0ZW06IHtcclxuICAgICAgdXNlckZpZWxkOiB7XHJcbiAgICAgICAgLyoqXHJcbiAgICAgICAgICog0J/QvtC70YPRh9C10L3QuNC1INCy0YHQtdGFINC00L7RgdGC0YPQv9C90YvRhSDQv9C+0LvQtdC5INGB0LLQvtC50YHRgtCy0LBcclxuICAgICAgICAgKi9cclxuICAgICAgICBnZXRGaWVsZHM6IFskdGFzaywgJGl0ZW0sICR1c2VyZmllbGQsICdnZXRmaWVsZHMnXSxcclxuICAgICAgICAvLyAvKipcclxuICAgICAgICAvLyAgKiDQn9C+0LvRg9GH0LXQvdC40LUg0LLRgdC10YUg0LTQvtGB0YLRg9C/0L3Ri9GFINGC0LjQv9C+0LIg0LTQsNC90L3Ri9GFXHJcbiAgICAgICAgLy8gICovXHJcbiAgICAgICAgLy8gZ2V0VHlwZXM6IFskdGFzaywgJGl0ZW0sICR1c2VyZmllbGQsICdnZXR0eXBlcyddLFxyXG4gICAgICAgIC8vIC8qKlxyXG4gICAgICAgIC8vICAqINCh0L7Qt9C00LDQvdC40LUg0L3QvtCy0L7Qs9C+INGB0LLQvtC50YHRgtCy0LBcclxuICAgICAgICAvLyAgKi9cclxuICAgICAgICAvLyBhZGQ6IFskdGFzaywgJGl0ZW0sICR1c2VyZmllbGQsICRhZGRdLFxyXG4gICAgICAgIC8vIC8qKlxyXG4gICAgICAgIC8vICAqINCf0L7Qu9GD0YfQtdC90LjQtSDRgdCy0L7QudGB0YLQstCwINC/0L4g0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YDRg1xyXG4gICAgICAgIC8vICAqL1xyXG4gICAgICAgIC8vIGdldDogWyR0YXNrLCAkaXRlbSwgJHVzZXJmaWVsZCwgJGdldF0sXHJcbiAgICAgICAgLyoqXHJcbiAgICAgICAgICog0J/QvtC70YPRh9C10L3QuNC1INGB0L/QuNGB0LrQsCDRgdCy0L7QudGB0YLQslxyXG4gICAgICAgICAqL1xyXG4gICAgICAgIGdldExpc3Q6IFskdGFzaywgJGl0ZW0sICR1c2VyZmllbGQsICdnZXRsaXN0J10sXHJcbiAgICAgICAgLy8gLyoqXHJcbiAgICAgICAgLy8gICog0KDQtdC00LDQutGC0LjRgNC+0LLQsNC90LjQtSDQv9Cw0YDQsNC80LXRgtGA0L7QsiDRgdCy0L7QudGB0YLQstCwXHJcbiAgICAgICAgLy8gICovXHJcbiAgICAgICAgLy8gdXBkYXRlOiBbJHRhc2ssICRpdGVtLCAkdXNlcmZpZWxkLCAkdXBkYXRlXSxcclxuICAgICAgICAvLyAvKipcclxuICAgICAgICAvLyAgKiDQo9C00LDQu9C10L3QuNC1INGB0LLQvtC50YHRgtCy0LBcclxuICAgICAgICAvLyAgKi9cclxuICAgICAgICAvLyBkZWxldGU6IFskdGFzaywgJGl0ZW0sICR1c2VyZmllbGQsICRkZWxldGVdXHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9LFxyXG4gIHRpbWVtYW46IHtcclxuICAgIC8vIC8qKlxyXG4gICAgLy8gICog0J/QvtC70YPRh9C10L3QuNC1INC90LDRgdGC0YDQvtC10Log0YDQsNCx0L7Rh9C10LPQviDQstGA0LXQvNC10L3QuCDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y9cclxuICAgIC8vICAqL1xyXG4gICAgLy8gc2V0dGluZ3M6IFskdGltZU1hbiwgJHNldHRpbmdzXSxcclxuICAgIC8qKlxyXG4gICAgICog0J/QvtC70YPRh9C10L3QuNC1INC40L3RhNC+0YDQvNCw0YbQuNC4INC+INGC0LXQutGD0YnQtdC8INGA0LDQsdC+0YfQtdC8INC00L3QtSDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y9cclxuICAgICAqL1xyXG4gICAgc3RhdHVzOiBbJHRpbWVNYW4sICRzdGF0dXNdLFxyXG4gICAgLy8gLyoqXHJcbiAgICAvLyAgKiDQndCw0YfQsNGC0Ywg0L3QvtCy0YvQuSDRgNCw0LHQvtGH0LjQuSDQtNC10L3RjCDQu9C40LHQviDQstC+0LfQvtCx0L3QvtCy0LjRgtGMINC30LDQutGA0YvRgtGL0Lkg0LjQu9C4INC/0YDQuNC+0YHRgtCw0L3QvtCy0LvQtdC90L3Ri9C5XHJcbiAgICAvLyAgKi9cclxuICAgIC8vIG9wZW46IFskdGltZU1hbiwgJ29wZW4nXSxcclxuICAgIC8vIC8qKlxyXG4gICAgLy8gICog0JfQsNC60YDRi9GC0Ywg0YDQsNCx0L7Rh9C40Lkg0LTQtdC90YxcclxuICAgIC8vICAqL1xyXG4gICAgLy8gY2xvc2U6IFskdGltZU1hbiwgJ2Nsb3NlJ10sXHJcbiAgICAvLyAvKipcclxuICAgIC8vICAqINCf0YDQuNC+0YHRgtCw0L3QvtCy0LjRgtGMINGA0LDQsdC+0YfQuNC5INC00LXQvdGMXHJcbiAgICAvLyAgKi9cclxuICAgIC8vIHBhdXNlOiBbJHRpbWVNYW4sICRwYXVzZV0sXHJcbiAgICAvLyBuZXR3b3JrcmFuZ2U6IHtcclxuICAgIC8vICAgY2hlY2s6IHRoaXMuYmFzZVVybCArICduZXR3b3JrcmFuZ2UuY2hlY2snLCAvLyDQnNC10YLQvtC0INC00LvRjyDQv9GA0L7QstC10YDQutC4IElQLdCw0LTRgNC10YHQsCDQvdCwINCy0YXQvtC20LTQtdC90LjQtSDQsiDQtNC40LDQv9Cw0LfQvtC90Ysg0YHQtdGC0LXQstGL0YUg0LDQtNGA0LXRgdC+0LIg0L7RhNC40YHQvdC+0Lkg0YHQtdGC0LhcclxuICAgIC8vICAgZ2V0OiB0aGlzLmJhc2VVcmwgKyAnbmV0d29ya3JhbmdlLmdldCcsIC8vINCc0LXRgtC+0LQg0LTQu9GPINC/0L7Qu9GD0YfQtdC90LjRjyDQtNC40LDQv9Cw0LfQvtC90L7QsiDRgdC10YLQtdCy0YvRhSDQsNC00YDQtdGB0L7Qsiwg0LLRhdC+0LTRj9GJ0LjRhSDQsiDQvtGE0LjRgdC90YPRjiDRgdC10YLRjFxyXG4gICAgLy8gICBzZXQ6IHRoaXMuYmFzZVVybCArICduZXR3b3JrcmFuZ2Uuc2V0J1x0Ly8g0JzQtdGC0L7QtCDQtNC70Y8g0YPRgdGC0LDQvdC+0LLQutC4INC00LjQsNC/0LDQt9C+0L3QvtCyINGB0LXRgtC10LLRi9GFINCw0LTRgNC10YHQvtCyLCDQstGF0L7QtNGP0YnQuNGFINCyINC+0YTQuNGB0L3Rg9GOINGB0LXRgtGMLlx0MTguNS4wXHJcbiAgICAvLyB9LFxyXG4gICAgLy8gdGltZWNvbnRyb2w6IHtcclxuICAgIC8vICAgcmVwb3J0OiB7XHJcbiAgICAvLyAgICAgYWRkOiB0aGlzLmJhc2VVcmwgKyAndGltZWNvbnRyb2wucmVwb3J0LmFkZCcsIC8vINCc0LXRgtC+0LQg0LTQu9GPINC+0YLQv9GA0LDQstC60Lgg0L7RgtGH0LXRgtCwINC+INCy0YvRj9Cy0LvQtdC90L3QvtC8INC+0YLRgdGD0YLRgdGC0LLQuNC4XHJcbiAgICAvLyAgICAgZ2V0OiB0aGlzLmJhc2VVcmwgKyAndGltZWNvbnRyb2wucmVwb3J0cy5nZXQnLCAvLyDQnNC10YLQvtC0INC00LvRjyDQv9C+0LvRg9GH0LXQvdC40Y8g0L7RgtGH0LXRgtCwINC+INCy0YvRj9Cy0LvQtdC90L3Ri9GFINC+0YLRgdGD0YLRgdGC0LLQuNGP0YVcclxuICAgIC8vICAgICBzZXR0aW5nczoge1xyXG4gICAgLy8gICAgICAgZ2V0OiB0aGlzLmJhc2VVcmwgKyAndGltZWNvbnRyb2wucmVwb3J0cy5zZXR0aW5ncy5nZXQnIC8vINCc0LXRgtC+0LQg0LTQu9GPINC/0L7Qu9GD0YfQtdC90LjRjyDQv9C+0LvRjNC30L7QstCw0YLQtdC70YzRgdC60LjRhSDQvdCw0YHRgtGA0L7QtdC6INC00LvRjyDQv9C+0YHRgtGA0L7QtdC90LjRjyDQuNC90YLQtdGA0YTQtdC50YHQsCDQvtGC0YfQtdGC0L7QsiDQuNC90YHRgtGA0YPQvNC10L3RgtCwINC60L7QvdGC0YDQvtC70Y8g0LLRgNC10LzQtdC90LhcclxuICAgIC8vICAgICB9LFxyXG4gICAgLy8gICAgIHVzZXJzOiB7XHJcbiAgICAvLyAgICAgICBnZXQ6IHRoaXMuYmFzZVVybCArICd0aW1lY29udHJvbC5yZXBvcnRzLnVzZXJzLmdldCdcdC8vINCc0LXRgtC+0LQg0LTQu9GPINC/0L7Qu9GD0YfQtdC90LjRjyDRgdC/0LjRgdC60LAg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9C10LksINC+0YLQvdC+0YHRj9GJ0LjRhdGB0Y8g0Log0YPQutCw0LfQsNC90L3QvtC80YMg0L/QvtC00YDQsNC30LTQtdC70LXQvdC40Y4uXHQxOC41LjBcclxuICAgIC8vICAgICB9XHJcbiAgICAvLyAgIH0sXHJcbiAgICAvLyAgIHNldHRpbmdzOiB7XHJcbiAgICAvLyAgICAgZ2V0OiB0aGlzLmJhc2VVcmwgKyAndGltZWNvbnRyb2wuc2V0dGluZ3MuZ2V0JywgLy8g0JzQtdGC0L7QtCDQtNC70Y8g0L/QvtC70YPRh9C10L3QuNGPINC90LDRgdGC0YDQvtC10Log0LjQvdGB0YLRgNGD0LzQtdC90YLQsCDQutC+0L3RgtGA0L7Qu9GPINCy0YDQtdC80LXQvdC4XHJcbiAgICAvLyAgICAgc2V0OiB0aGlzLmJhc2VVcmwgKyAndGltZWNvbnRyb2wuc2V0dGluZ3Muc2V0J1x0Ly8g0JzQtdGC0L7QtCDQtNC70Y8g0YPRgdGC0LDQvdC+0LLQutC4INC90LDRgdGC0YDQvtC10Log0LjQvdGB0YLRgNGD0LzQtdC90YLQsCDQutC+0L3RgtGA0L7Qu9GPINCy0YDQtdC80LXQvdC4XHJcbiAgICAvLyAgIH0sXHJcbiAgICAvLyB9LFxyXG4gICAgLy8gc2NoZWR1bGU6IHtcclxuICAgIC8vICAgZ2V0OiB0aGlzLmJhc2VVcmwgKyAnc2NoZWR1bGUuZ2V0J1x0Ly8g0JzQtdGC0L7QtCDQv9C+0LfQstC+0LvRj9C10YIg0L/QvtC70YPRh9C40YLRjCDRgNCw0LHQvtGH0LjQuSDQs9GA0LDRhNC40Log0L/QviDQtdCz0L4g0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YDRg1xyXG4gICAgLy8gfVxyXG4gIH0sXHJcbiAgc29uZXRfZ3JvdXA6IHtcclxuICAgIC8vIC8qKlxyXG4gICAgLy8gICog0KHQvtC30LTQsNC10YIg0LPRgNGD0L/Qv9GDINGB0L7RhtGB0LXRgtC4LCDQuNGB0L/QvtC70YzQt9GD0Y8g0LzQtdGC0L7QtCBBUEkgQ1NvY05ldEdyb3VwOjpDcmVhdGVHcm91cCgpLCDRg9C60LDQt9GL0LLQsNGPINCy0LvQsNC00LXQu9GM0YbQtdC8INCz0YDRg9C/0L/RiyDRgtC10LrRg9GJ0LXQs9C+INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRj1xyXG4gICAgLy8gICovXHJcbiAgICAvLyBjcmVhdGU6IFskc29uZXRfZ3JvdXAsICRjcmVhdGVdLFxyXG4gICAgLy8gLyoqXHJcbiAgICAvLyAgKiDQo9C00LDQu9GP0LXRgiDQs9GA0YPQv9C/0YMg0YHQvtGG0YHQtdGC0LhcclxuICAgIC8vICAqL1xyXG4gICAgLy8gZGVsZXRlOiBbJHNvbmV0X2dyb3VwLCAkZGVsZXRlXSxcclxuICAgIC8vIGZlYXR1cmU6IHtcclxuICAgIC8vICAgICBhY2Nlc3M6IFskc29uZXRfZ3JvdXAsICRmZWF0dXJlLCAkYWNjZXNzXSAvLyDQn9GA0L7QstC10YDRj9C10YIsINC40LzQtdC10YIg0LvQuCDRgtC10LrRg9GJ0LjQuSDQv9C+0LvRjNC30L7QstCw0YLQtdC70Ywg0L/RgNCw0LLQviDQvdCwINGB0L7QstC10YDRiNC10L3QuNC1INC+0L/QtdGA0LDRhtC40Lgg0LIg0LPRgNGD0L/Qv9C1INGB0L7RhtGB0LXRgtC4LCDQvtGB0YPRidC10YHRgtCy0LvRj9GPINCy0YvQt9C+0LIg0YTRg9C90LrRhtC40LggQ1NvY05ldEZlYXR1cmVzUGVybXM6OkN1cnJlbnRVc2VyQ2FuUGVyZm9ybU9wZXJhdGlvbigpXHJcbiAgICAvLyB9LFxyXG4gICAgLyoqXHJcbiAgICAgKiDQktC+0LfQstGA0LDRidCw0LXRgiDQvNCw0YHRgdC40LIg0LPRgNGD0L/QvyDRgdC+0YbRgdC10YLQuCwg0LrQsNC20LTQsNGPINC40Lcg0LrQvtGC0L7RgNGL0YUg0YHQvtC00LXRgNC20LjRgiDQvNCw0YHRgdC40LIg0L/QvtC70LXQuSwg0L7RgdGD0YnQtdGB0YLQstC70Y/RjyDQstGL0LfQvtCyIENTb2NOZXRHcm91cDo6R2V0TGlzdCgpLCDQv9GA0Lgg0Y3RgtC+0Lwg0LLQvtC30LLRgNCw0YnQsNGO0YLRgdGPINGC0L7Qu9GM0LrQviDRgtC1INCz0YDRg9C/0L/Riywg0LrQvtGC0L7RgNGL0LUg0LTQvtGB0YLRg9C/0L3RiyDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y4g0L/QviDQv9GA0LDQstCw0LxcclxuICAgICAqL1xyXG4gICAgZ2V0OiBbJHNvbmV0X2dyb3VwLCAkZ2V0XSxcclxuICAgIC8vIC8qKlxyXG4gICAgLy8gICog0JjQt9C80LXQvdGP0LXRgiDQstC70LDQtNC10LvRjNGG0LAg0LPRgNGD0L/Qv9GLXHJcbiAgICAvLyAgKi9cclxuICAgIC8vIHNldE93bmVyOiBbJHNvbmV0X2dyb3VwLCAnc2V0b3duZXInXSxcclxuICAgIC8vIC8qKlxyXG4gICAgLy8gICog0JjQt9C80LXQvdGP0LXRgiDQv9Cw0YDQsNC80LXRgtGA0Ysg0LPRgNGD0L/Qv9GLINGB0L7RhtGB0LXRgtC4LCDQuNGB0L/QvtC70YzQt9GD0Y8g0LzQtdGC0L7QtCBBUEkgQ1NvY05ldEdyb3VwOjpVcGRhdGUoKVxyXG4gICAgLy8gICovXHJcbiAgICAvLyB1cGRhdGU6IFskc29uZXRfZ3JvdXAsICR1cGRhdGVdLFxyXG4gICAgLy8gdXNlcjoge1xyXG4gICAgLy8gICAgIGFkZDogWyRzb25ldF9ncm91cCwgJHVzZXIsICRhZGRdLCAvLyBzb25ldF9ncm91cC51c2VyLmFkZFx00JTQvtCx0LDQstC70Y/QtdGCINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtdC5INCyINC60LDRh9C10YHRgtCy0LUg0YPRh9Cw0YHRgtC90LjQutC+0LIg0YDQsNCx0L7Rh9C10Lkg0LPRgNGD0L/Qv9GLICjQsdC10Lcg0L/RgNC40LPQu9Cw0YjQtdC90LjRjyDQuCDQv9C+0LTRgtCy0LXRgNC20LTQtdC90LjRjylcclxuICAgIC8vICAgICBkZWxldGU6IFskc29uZXRfZ3JvdXAsICR1c2VyLCAkZGVsZXRlXSwgLy9cdNCj0LTQsNC70Y/QtdGCINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtdC5INC40Lcg0YDQsNCx0L7Rh9C10Lkg0LPRgNGD0L/Qv9GLXHJcbiAgICAvLyAgICAgZ2V0OiBbJHNvbmV0X2dyb3VwLCAkdXNlciwgJGdldF0sIC8vINCS0L7Qt9Cy0YDQsNGJ0LDQtdGCINC80LDRgdGB0LjQsiDRg9GH0LDRgdGC0L3QuNC60L7QsiDQs9GA0YPQv9C/0Ysg0YHQvtGG0YHQtdGC0LgsINC+0YHRg9GJ0LXRgdGC0LLQu9GP0Y8g0LLRi9C30L7QsiBDU29jTmV0VXNlclRvR3JvdXA6OkdldExpc3QoKSwg0L/RgNC4INGN0YLQvtC8INC/0YDQvtCy0LXRgNGP0Y7RgtGB0Y8g0L/RgNCw0LLQsCDQvdCwINC00L7RgdGC0YPQvyDRgtC10LrRg9GJ0LXQs9C+INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyDQuiDQs9GA0YPQv9C/0LVcclxuICAgIC8vICAgICBncm91cHM6IFskc29uZXRfZ3JvdXAsICR1c2VyLCAnZ3JvdXBzJ10sIC8vINCS0L7Qt9Cy0YDQsNGJ0LDQtdGCINC80LDRgdGB0LjQsiDQs9GA0YPQv9C/INGB0L7RhtGB0LXRgtC4INGC0LXQutGD0YnQtdCz0L4g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPLCDQvtGB0YPRidC10YHRgtCy0LvRj9GPINCy0YvQt9C+0LIgQ1NvY05ldFVzZXJUb0dyb3VwOjpHZXRMaXN0KClcclxuICAgIC8vICAgICBpbnZpdGU6IFskc29uZXRfZ3JvdXAsICR1c2VyLCAnaW52aXRlJ10sIC8vINCS0YvQv9C+0LvQvdGP0LXRgiDQv9GA0LjQs9C70LDRiNC10L3QuNC1INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtdC5INCyINCz0YDRg9C/0L/RgyDRgdC+0YbRgdC10YLQuCDQvtGCINC70LjRhtCwINGC0LXQutGD0YnQtdCz0L4g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPLCDQv9GA0Lgg0Y3RgtC+0Lwg0L/RgNC+0LLQtdGA0Y/RjtGC0YHRjyDQv9GA0LDQstCwINC90LAg0LTQvtGB0YLRg9C/INGC0LXQutGD0YnQtdCz0L4g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPINC6INCz0YDRg9C/0L/QtVxyXG4gICAgLy8gICAgIHJlcXVlc3Q6IFskc29uZXRfZ3JvdXAsICR1c2VyLCAkcmVxdWVzdF0sIC8vINCe0YLQv9GA0LDQstC70Y/QtdGCINC30LDQv9GA0L7RgSDRgtC10LrRg9GJ0LXQs9C+INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyDQvdCwINCy0YHRgtGD0L/Qu9C10L3QuNC1INCyINCz0YDRg9C/0L/RgyDRgdC+0YbRgdC10YLQuCwg0L/RgNC4INGN0YLQvtC8INC/0YDQvtCy0LXRgNGP0Y7RgtGB0Y8g0L/RgNCw0LLQsCDQvdCwINC00L7RgdGC0YPQvyDRgtC10LrRg9GJ0LXQs9C+INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyDQuiDQs9GA0YPQv9C/0LUuXHJcbiAgICAvLyAgICAgdXBkYXRlOiBbJHNvbmV0X2dyb3VwLCAkdXNlciwgJHVwZGF0ZV0sIC8vINCY0LfQvNC10L3Rj9C10YIg0YDQvtC70Ywg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9C10Lkg0LIg0YDQsNCx0L7Rh9C10Lkg0LPRgNGD0L/Qv9C1INCh0L7QsdGL0YLQuNGPINC/0YDQuCDRgNCw0LHQvtGC0LUg0YEg0LPRgNGD0L/Qv9Cw0LzQuCDQodC+0YbQodC10YLQuFx00KHQv9C40YHQvtC6INGB0L7QsdGL0YLQuNC5INC/0YDQuCDQtNC+0LHQsNCy0LvQtdC90LjQuCwg0LjQt9C80LXQvdC10L3QuNC4INC4INGD0LTQsNC70LXQvdC40Lgg0LPRgNGD0L/Qv9GLLlxyXG4gICAgLy8gfSxcclxuICAgIC8vIHdvcmtncm91cDoge1xyXG4gICAgLy8gICAgIGxpc3Q6IFskc29jaWFsbmV0d29yaywgJGFwaSwgJHdvcmtncm91cCwgJGxpc3RdLCAvLyDQnNC10YLQvtC0INCy0L7Qt9Cy0YDQsNGJ0LDQtdGCINGB0L/QuNGB0L7QuiDQs9GA0YPQv9C/LFxyXG4gICAgLy8gICAgIGdldDogWyRzb2NpYWxuZXR3b3JrLCAkYXBpLCAkd29ya2dyb3VwLCAkZ2V0XSAvLyDQnNC10YLQvtC0INCy0L7Qt9Cy0YDQsNGJ0LDQtdGCINC00LDQvdC90YvQtSDQv9C+INGA0LDQsdC+0YfQtdC5INCz0YDRg9C/0L/QtVxyXG4gICAgLy8gfVxyXG4gIH0sXHJcbiAgc2VydmVyOiB7XHJcbiAgICB0aW1lOiBbJHNlcnZlciwgJHRpbWVdXHJcbiAgfSxcclxuICBsb2c6IHtcclxuICAgIGJsb2dwb3N0OiB7XHJcbiAgICAgIC8qKlxyXG4gICAgICAgKiDQlNC+0LHQsNCy0LvRj9C10YIg0LIg0JbQuNCy0YPRjiDQm9C10L3RgtGDINGB0L7QvtCx0YnQtdC90LjQtSDQvtGCINC40LzQtdC90Lgg0YLQtdC60YPRidC10LPQviDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y9cclxuICAgICAgICovXHJcbiAgICAgIGFkZDogWyRsb2csICRibG9ncG9zdCwgJGFkZF0sIC8vXHJcbiAgICAgIC8vIGdldHVzZXJzOiB7XHJcbiAgICAgIC8vICAgaW1wb3J0YW50OiAnbG9nLmJsb2dwb3N0LmdldHVzZXJzLmltcG9ydGFudCcgLy8g0J7RgtC00LDQtdGCINC80LDRgdGB0LjQsiBJRCDQv9C+0LvRjNC30L7QstCw0YLQtdC70LXQuSwg0L/RgNC+0YfQuNGC0LDQstGI0LjRhSDQktCw0LbQvdC+0LUg0YHQvtC+0LHRidC10L3QuNC1XHJcbiAgICAgIC8vIH0sXHJcbiAgICAgIC8qKlxyXG4gICAgICAgKiDQktC+0LfQstGA0LDRidCw0LXRgiDQvNCw0YHRgdC40LIg0YEg0LTQvtGB0YLRg9C/0L3Ri9C80Lgg0YLQtdC60YPRidC10LzRgyDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y4g0YHQvtC+0LHRidC10L3QuNGP0LzQuCDQltC40LLQvtC5INC70LXQvdGC0YsuINCa0LDQttC00L7QtSDQuNC3INGB0L7QvtCx0YnQtdC90LjQuSDQv9GA0LXQtNGB0YLQsNCy0LvRj9C10YIg0YHQvtCx0L7QuSDQvNCw0YHRgdC40LIg0LfQvdCw0YfQtdC90LjQuSDQv9C+0LvQtdC5ICjQstC60LvRjtGH0LDRjyDQv9C+0LvRjNC30L7QstCw0YLQtdC70YzRgdC60LjQtSDQv9C+0LvRjylcclxuICAgICAgICovXHJcbiAgICAgIGdldDogWyRsb2csICRibG9ncG9zdCwgJGdldF0sXHJcbiAgICAgIC8vIC8qKlxyXG4gICAgICAvLyAgKiDQo9C00LDQu9GP0LXRgiDRgdC+0L7QsdGJ0LXQvdC40LUg0JbQuNCy0L7QuSDQm9C10L3RgtGLXHJcbiAgICAgIC8vICAqL1xyXG4gICAgICAvLyBkZWxldGU6IFskbG9nLCAkYmxvZ3Bvc3QsICRkZWxldGVdLFxyXG4gICAgICAvLyAvKipcclxuICAgICAgLy8gICog0JTQvtCx0LDQstC70Y/QtdGCINC/0L7Qu9GD0YfQsNGC0LXQu9C10Lkg0LIg0YHQvtC+0LHRidC10L3QuNC1INCW0LjQstC+0Lkg0JvQtdC90YLRi1xyXG4gICAgICAvLyAgKi9cclxuICAgICAgLy8gc2hhcmU6IFskbG9nLCAkYmxvZ3Bvc3QsICRzaGFyZV0sXHJcbiAgICAgIC8vIC8qKlxyXG4gICAgICAvLyAgKiDQmNC30LzQtdC90Y/QtdGCINGB0L7QvtCx0YnQtdC90LjQtSDQltC40LLQvtC5INCb0LXQvdGC0YtcclxuICAgICAgLy8gICovXHJcbiAgICAgIC8vIHVwZGF0ZTogWyRsb2csICRibG9ncG9zdCwgJHVwZGF0ZV0sXHJcbiAgICB9LFxyXG4gICAgLy8gYmxvZ2NvbW1lbnQ6IHtcclxuICAgIC8vICAgLyoqXHJcbiAgICAvLyAgICAqINCU0L7QsdCw0LLQu9GP0LXRgiDQutC+0LzQvNC10L3RgtCw0YDQuNC5INC6INGB0L7QvtCx0YnQtdC90LjRjiDQltC40LLQvtC5INC70LXQvdGC0YtcclxuICAgIC8vICAgICovXHJcbiAgICAvLyAgIGFkZDogWyRsb2csICRibG9nY29tbWVudCwgJGFkZF0sXHJcbiAgICAvLyB9XHJcbiAgfSxcclxuICBsaXN0czoge1xyXG4gICAgLy8gLyoqXHJcbiAgICAvLyAgKiDQnNC10YLQvtC0INGB0L7Qt9C00LDRkdGCINGB0L/QuNGB0L7QulxyXG4gICAgLy8gICovXHJcbiAgICAvLyBhZGQ6IFskbGlzdHMsICRhZGRdLFxyXG4gICAgLy8gLyoqXHJcbiAgICAvLyAgKiDQnNC10YLQvtC0INGD0LTQsNC70Y/QtdGCINGB0L/QuNGB0L7QulxyXG4gICAgLy8gICovXHJcbiAgICAvLyBkZWxldGU6IFskbGlzdHMsICRkZWxldGVdLFxyXG4gICAgLyoqXHJcbiAgICAgKiDQnNC10YLQvtC0INCy0L7Qt9Cy0YDQsNGJ0LDQtdGCINC00LDQvdC90YvQtSDQv9C+INGB0L/QuNGB0LrQsNC8XHJcbiAgICAgKi9cclxuICAgIGdldDogWyRsaXN0cywgJGdldF0sXHJcbiAgICAvLyAvKipcclxuICAgIC8vICAqINCc0LXRgtC+0LQg0L7QsdC90L7QstC70Y/QtdGCINGB0YPRidC10YHRgtCy0YPRjtGJ0LjQuSDRgdC/0LjRgdC+0LpcclxuICAgIC8vICAqL1xyXG4gICAgLy8gdXBkYXRlOiBbJGxpc3RzLCAkdXBkYXRlXSxcclxuICAgIC8vIC8qKlxyXG4gICAgLy8gICog0JzQtdGC0L7QtCDQstC+0LfQstGA0LDRidCw0LXRgiBpZCDRgtC40L/QsCDQuNC90YTQvtCx0LvQvtC60LBcclxuICAgIC8vICAqL1xyXG4gICAgLy8gZ2V0SUJsb2NrVHlwZUlkOiBbJGxpc3RzLCAkZ2V0LCAkaWJsb2NrLCAkdHlwZSwgJGlkXSxcclxuICAgIGVsZW1lbnQ6IHtcclxuICAgICAgLyoqXHJcbiAgICAgICAqINCc0LXRgtC+0LQg0YHQvtC30LTQsNGR0YIg0Y3Qu9C10LzQtdC90YIg0YHQv9C40YHQutCwXHJcbiAgICAgICAqL1xyXG4gICAgICBhZGQ6IFskbGlzdHMsICRlbGVtZW50LCAkYWRkXSxcclxuICAgICAgLy8gLyoqXHJcbiAgICAgIC8vICAqINCc0LXRgtC+0LQg0YPQtNCw0LvRj9C10YIg0Y3Qu9C10LzQtdC90YIg0YHQv9C40YHQutCwIFRPRE86INCg0LXQsNC70LjQt9C+0LLQsNGC0YxcclxuICAgICAgLy8gICovXHJcbiAgICAgIC8vIGRlbGV0ZTogWyRsaXN0cywgJGVsZW1lbnQsICRkZWxldGVdLFxyXG4gICAgICAvKipcclxuICAgICAgICog0JzQtdGC0L7QtCDQstC+0LfQstGA0LDRidCw0LXRgiDRgdC/0LjRgdC+0Log0Y3Qu9C10LzQtdC90YLQvtCyINC40LvQuCDRjdC70LXQvNC10L3RglxyXG4gICAgICAgKi9cclxuICAgICAgZ2V0OiBbJGxpc3RzLCAkZWxlbWVudCwgJGdldF0sXHJcbiAgICAgIC8vIC8qKlxyXG4gICAgICAvLyAgKiDQnNC10YLQvtC0INC+0LHQvdC+0LLQu9GP0LXRgiDRjdC70LXQvNC10L3RgiDRgdC/0LjRgdC60LAgVE9ETzog0KDQtdCw0LvQuNC30L7QstCw0YLRjFxyXG4gICAgICAvLyAgKi9cclxuICAgICAgLy8gdXBkYXRlOiBbJGxpc3RzLCAkZWxlbWVudCwgJHVwZGF0ZV0sXHJcbiAgICAgIC8vIC8qKlxyXG4gICAgICAvLyAgKiDQnNC10YLQvtC0INCy0L7Qt9Cy0YDQsNGJ0LDQtdGCINC/0YPRgtGMINC6INGE0LDQudC70YMgVE9ETzog0KDQtdCw0LvQuNC30L7QstCw0YLRjFxyXG4gICAgICAvLyAgKi9cclxuICAgICAgLy8gZ2V0RmlsZVVybDogWyRsaXN0cywgJGVsZW1lbnQsICRnZXQsICRmaWxlLCAkdXJsXVxyXG4gICAgfSxcclxuICAgIGZpZWxkOiB7XHJcbiAgICAgIC8vIC8qKlxyXG4gICAgICAvLyAgKiDQnNC10YLQvtC0INGB0L7Qt9C00LDQtdGCINC/0L7Qu9C1INGB0L/QuNGB0LrQsFxyXG4gICAgICAvLyAgKi9cclxuICAgICAgLy8gYWRkOiBbJGxpc3RzLCAkZmllbGQsICRhZGRdLFxyXG4gICAgICAvLyAvKipcclxuICAgICAgLy8gICog0JzQtdGC0L7QtCDRg9C00LDQu9GP0LXRgiDQv9C+0LvQtSDRgdC/0LjRgdC60LBcclxuICAgICAgLy8gICovXHJcbiAgICAgIC8vIGRlbGV0ZTogWyRsaXN0cywgJGZpZWxkLCAkZGVsZXRlXSxcclxuICAgICAgLyoqXHJcbiAgICAgICAqINCc0LXRgtC+0LQg0LLQvtC30LLRgNCw0YnQsNC10YIg0LTQsNC90L3Ri9C1INC/0L7Qu9GPXHJcbiAgICAgICAqL1xyXG4gICAgICBnZXQ6IFskbGlzdHMsICRmaWVsZCwgJGdldF0sXHJcbiAgICAgIC8vIHR5cGU6IHtcclxuICAgICAgLy8gICAvKipcclxuICAgICAgLy8gICAgKiDQnNC10YLQvtC0INCy0L7Qt9Cy0YDQsNGJ0LDQtdGCINC00L7RgdGC0YPQv9C90YvQtSDRgtC40L/QsCDQv9C+0LvQtdC5INC00LvRjyDRg9C60LDQt9Cw0L3QvdC+0LPQviDRgdC/0LjRgdC60LBcclxuICAgICAgLy8gICAgKi9cclxuICAgICAgLy8gICBnZXQ6IFskbGlzdHMsICRmaWVsZCwgJHR5cGUsICRnZXRdLFxyXG4gICAgICAvLyB9LFxyXG4gICAgICAvLyAvKipcclxuICAgICAgLy8gICog0JzQtdGC0L7QtCDQvtCx0L3QvtCy0LvRj9C10YIg0L/QvtC70LUg0YHQv9C40YHQutCwXHJcbiAgICAgIC8vICAqL1xyXG4gICAgICAvLyB1cGRhdGU6IFskbGlzdHMsICRmaWVsZCwgJHVwZGF0ZV0sXHJcbiAgICB9XHJcbiAgfSxcclxuICBpbToge1xyXG4gICAgY2hhdDoge1xyXG4gICAgICBhZGQ6IFskaW0sICRjaGF0LCAkYWRkXSxcclxuICAgICAgLy8gbGlzdDogWyRpbSwgJGNoYXQsICR1c2VyLCAkbGlzdF0sXHJcbiAgICAgIC8vIGFkZDogWyRpbSwgJGNoYXQsICR1c2VyLCAkYWRkXSxcclxuICAgICAgLy8gZGVsZXRlOiBbJGltLCAkY2hhdCwgJHVzZXIsICRkZWxldGVdLFxyXG4gICAgICAvLyB1cGRhdGVUaXRsZTogWyRpbSwgJGNoYXQsICR1cGRhdGVUaXRsZV0sXHJcbiAgICAgIC8vIHVwZGF0ZUNvbG9yOiBbJGltLCAkY2hhdCwgJHVwZGF0ZUNvbG9yXSxcclxuICAgICAgLy8gdXBkYXRlQXZhdGFyOiBbJGltLCAkY2hhdCwgJHVwZGF0ZUF2YXRhcl0sXHJcbiAgICAgIC8vIHNldE93bmVyOiBbJGltLCAkY2hhdCwgJHNldE93bmVyXSxcclxuICAgICAgLy8gZ2V0OiBbJGltLCAkY2hhdCwgJGdldF0sXHJcbiAgICAgIC8vIG11dGU6IFskaW0sICRjaGF0LCAkbXV0ZV0sXHJcbiAgICB9XHJcbiAgfSxcclxuICBkaXNrOiB7XHJcbiAgICBmaWxlOiB7XHJcbiAgICAgIC8vIC8qKlxyXG4gICAgICAvLyAgKiDQktC+0LfQstGA0LDRidCw0LXRgiDQvtC/0LjRgdCw0L3QuNC1INC/0L7Qu9C10Lkg0YTQsNC50LvQsFxyXG4gICAgICAvLyAgKi9cclxuICAgICAgLy8gZ2V0RmllbGRzOiBbJGRpc2ssICRmaWxlLCAkZ2V0RmllbGRzXSxcclxuICAgICAgLyoqXHJcbiAgICAgICAqINCS0L7Qt9Cy0YDQsNGJ0LDQtdGCINGE0LDQudC7INC/0L4g0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YDRg1xyXG4gICAgICAgKi9cclxuICAgICAgZ2V0OiBbJGRpc2ssICRmaWxlLCAkZ2V0XSwgLy9cclxuICAgICAgLy8gLyoqXHJcbiAgICAgIC8vICAqINCf0LXRgNC10LjQvNC10L3QvtCy0YvQstCw0LXRgiDRhNCw0LnQu1xyXG4gICAgICAvLyAgKi9cclxuICAgICAgLy8gcmVuYW1lOiBbJGRpc2ssICRmaWxlLCAkcmVuYW1lXSxcclxuICAgICAgLy8gLyoqXHJcbiAgICAgIC8vICAqINCa0L7Qv9C40YDRg9C10YIg0YTQsNC50Lsg0LIg0YPQutCw0LfQsNC90L3Rg9GOINC/0LDQv9C60YNcclxuICAgICAgLy8gICovXHJcbiAgICAgIC8vIGNvcHlUbzogWyRkaXNrLCAkZmlsZSwgJGNvcHl0b10sXHJcbiAgICAgIC8vIC8qKlxyXG4gICAgICAvLyAgKiDQn9C10YDQtdC80LXRidCw0LXRgiDRhNCw0LnQuyDQsiDRg9C60LDQt9Cw0L3QvdGD0Y4g0L/QsNC/0LrRg1xyXG4gICAgICAvLyAgKi9cclxuICAgICAgLy8gbW92ZXRvOiBbJGRpc2ssICRmaWxlLCAkbW92ZXRvXSxcclxuICAgICAgLy8gLyoqXHJcbiAgICAgIC8vICAqINCj0L3QuNGH0YLQvtC20LDQtdGCINGE0LDQudC7INC90LDQstGB0LXQs9C00LBcclxuICAgICAgLy8gICovXHJcbiAgICAgIC8vIGRlbGV0ZTogWyRkaXNrLCAkZmlsZSwgJGRlbGV0ZV0sXHJcbiAgICAgIC8qKlxyXG4gICAgICAgKiDQn9C10YDQtdC80LXRidCw0LXRgiDRhNCw0LnQuyDQsiDQutC+0YDQt9C40L3Rg1xyXG4gICAgICAgKi9cclxuICAgICAgbWFya0RlbGV0ZWQ6IFskZGlzaywgJGZpbGUsICRtYXJrZGVsZXRlZF0sXHJcbiAgICAgIC8vIC8qKlxyXG4gICAgICAvLyAgKiDQktC+0YHRgdGC0LDQvdCw0LLQu9C40LLQsNC10YIg0YTQsNC50Lsg0LjQtyDQutC+0YDQt9C40L3Ri1xyXG4gICAgICAvLyAgKi9cclxuICAgICAgLy8gcmVzdG9yZTogWyRkaXNrLCAkZmlsZSwgJHJlc3RvcmVdLFxyXG4gICAgICAvLyAvKipcclxuICAgICAgLy8gICog0JfQsNCz0YDRg9C20LDQtdGCINC90L7QstGD0Y4g0LLQtdGA0YHQuNGOINGE0LDQudC70LBcclxuICAgICAgLy8gICovXHJcbiAgICAgIC8vIHVwbG9hZFZlcnNpb246IFskZGlzaywgJGZpbGUsICd1cGxvYWR2ZXJzaW9uJ10sXHJcbiAgICAgIC8vIC8qKlxyXG4gICAgICAvLyAgKiDQktC+0LfQstGA0LDRidCw0LXRgiDRgdC/0LjRgdC+0Log0LLQtdGA0YHQuNC5INGE0LDQudC70LBcclxuICAgICAgLy8gICovXHJcbiAgICAgIC8vIGdldFZlcnNpb25zOiBbJGRpc2ssICRmaWxlLCAnZ2V0VmVyc2lvbnMnXSxcclxuICAgICAgLy8gLyoqXHJcbiAgICAgIC8vICAqINCS0L7RgdGB0YLQsNC90LDQstC70LjQstCw0LXRgiDRhNCw0LnQuyDQuNC3INC60L7QvdC60YDQtdGC0L3QvtC5INCy0LXRgNGB0LjQuFxyXG4gICAgICAvLyAgKi9cclxuICAgICAgLy8gcmVzdG9yZUZyb21WZXJzaW9uOiBbJGRpc2ssICRmaWxlLCAncmVzdG9yZUZyb21WZXJzaW9uJ10sXHJcbiAgICAgIC8vIC8qKlxyXG4gICAgICAvLyAgKiDQktC+0LfQstGA0LDRidCw0LXRgiDQv9GD0LHQu9C40YfQvdGD0Y4g0YHRgdGL0LvQutGDINC90LAg0YTQsNC50LtcclxuICAgICAgLy8gICovXHJcbiAgICAgIC8vIGdldEV4dGVybmFsTGluazogWyRkaXNrLCAkZmlsZSwgJ2dldGV4dGVybmFsbGluayddXHJcbiAgICB9LFxyXG4gICAgZm9sZGVyOiB7XHJcbiAgICAgIGdldEZpZWxkczogWyRkaXNrLCAkZm9sZGVyLCAkZ2V0RmllbGRzXSxcclxuICAgICAgZ2V0OiBbJGRpc2ssICRmb2xkZXIsICRnZXRdLFxyXG4gICAgICBnZXRDaGlsZHJlbjogWyRkaXNrLCAkZm9sZGVyLCAkZ2V0Y2hpbGRyZW5dLFxyXG4gICAgICBhZGRTdWJGb2xkZXI6IFskZGlzaywgJGZvbGRlciwgJ2FkZHN1YmZvbGRlciddLFxyXG4gICAgICBjb3B5VG86IFskZGlzaywgJGZvbGRlciwgJGNvcHl0b10sXHJcbiAgICAgIG1vdmVUbzogWyRkaXNrLCAkZm9sZGVyLCAkbW92ZXRvXSxcclxuICAgICAgcmVuYW1lOiBbJGRpc2ssICRmb2xkZXIsICRyZW5hbWVdLFxyXG4gICAgICBkZWxldGVUcmVlOiBbJGRpc2ssICRmb2xkZXIsICdkZWxldGV0cmVlJ10sXHJcbiAgICAgIG1hcmtEZWxldGVkOiBbJGRpc2ssICRmb2xkZXIsICRtYXJrZGVsZXRlZF0sXHJcbiAgICAgIHJlc3RvcmU6IFskZGlzaywgJGZvbGRlciwgJHJlc3RvcmVdLFxyXG4gICAgICB1cGxvYWRGaWxlOiBbJGRpc2ssICRmb2xkZXIsICR1cGxvYWRmaWxlXSxcclxuICAgICAgZ2V0RXh0ZXJuYWxMaW5rOiBbJGRpc2ssICRmb2xkZXIsICdnZXRFeHRlcm5hbExpbmsnXVxyXG4gICAgfSxcclxuICAgIGF0dGFjaGVkT2JqZWN0OiB7XHJcbiAgICAgIGdldDogWyRkaXNrLCAnYXR0YWNoZWRPYmplY3QnLCAkZ2V0XVxyXG4gICAgfVxyXG4gIH0sXHJcbiAgZGVwYXJ0bWVudDoge1xyXG4gICAgZ2V0OiBbJGRlcGFydG1lbnQsICRnZXRdLFxyXG4gICAgZGVsOiBbJGRlcGFydG1lbnQsICRkZWxldGVdLFxyXG4gICAgYWRkOiBbJGRlcGFydG1lbnQsICRhZGRdLFxyXG4gICAgdXBkYXRlOiBbJGRlcGFydG1lbnQsICR1cGRhdGVdXHJcbiAgfSxcclxuICBjYWxlbmRhcjoge1xyXG4gICAgZXZlbnQ6IHtcclxuICAgICAgLy8gLyoqXHJcbiAgICAgIC8vICAqINCU0L7QsdCw0LLQu9GP0LXRgiDQvdC+0LLQvtC1INGB0L7QsdGL0YLQuNC1XHJcbiAgICAgIC8vICAqL1xyXG4gICAgICAvLyBhZGQ6IFskY2FsZW5kYXIsICRldmVudCwgJGFkZF0sXHJcbiAgICAgIC8vIC8qKlxyXG4gICAgICAvLyAgKiDQo9C00LDQu9GP0LXRgiDRgdC+0LHRi9GC0LjQtVxyXG4gICAgICAvLyAgKi9cclxuICAgICAgLy8gZGVsZXRlOiBbJGNhbGVuZGFyLCAkZXZlbnQsICRkZWxldGVdLFxyXG4gICAgICAvKipcclxuICAgICAgICog0JLQvtC30LLRgNCw0YnQsNC10YIg0YHQv9C40YHQvtC6INGB0L7QsdGL0YLQuNC5INC60LDQu9C10L3QtNCw0YDRj1xyXG4gICAgICAgKi9cclxuICAgICAgZ2V0OiBbJGNhbGVuZGFyLCAkZXZlbnQsICRnZXRdLFxyXG4gICAgICAvLyAvKipcclxuICAgICAgLy8gICog0JLQvtC30LLRgNCw0YnQsNC10YIg0YHQv9C40YHQvtC6INCx0YPQtNGD0YnQuNGFINGB0L7QsdGL0YLQuNC5INC00LvRjyDRgtC10LrRg9GJ0LXQs9C+INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRj1xyXG4gICAgICAvLyAgKi9cclxuICAgICAgLy8gZ2V0TmVhcmVzdDogWyRjYWxlbmRhciwgJGV2ZW50LCAkZ2V0LCAkbmVhcmVzdF0sXHJcbiAgICAgIC8vIC8qKlxyXG4gICAgICAvLyAgKiDQoNC10LTQsNC60YLQuNGA0YPQtdGCINGB0YPRidC10YHRgtCy0YPRjtGJ0LXQtSDRgdC+0LHRi9GC0LjQtVxyXG4gICAgICAvLyAgKi9cclxuICAgICAgLy8gdXBkYXRlOiBbJGNhbGVuZGFyLCAkZXZlbnQsICRnZXQsICR1cGRhdGVdLFxyXG4gICAgfVxyXG4gIH0sXHJcbiAgYml6UHJvYzoge1xyXG4gICAgd29ya2Zsb3c6IHtcclxuICAgICAgLy8gLyoqXHJcbiAgICAgIC8vICAqINCS0L7Qt9Cy0YDQsNGJ0LDQtdGCINGB0L/QuNGB0L7QuiDQt9Cw0L/Rg9GJ0LXQvdC90YvRhSDQsdC40LfQvdC10YEt0L/RgNC+0YbQtdGB0YHQvtCyIFRPRE86INGA0LXQsNC70LjQt9C+0LLQsNGC0YxcclxuICAgICAgLy8gICovXHJcbiAgICAgIC8vIGluc3RhbmNlczoge1xyXG4gICAgICAvLyAgIC8qKlxyXG4gICAgICAvLyAgICAqINCS0L7Qt9Cy0YDQsNGJ0LDQtdGCINGB0L/QuNGB0L7QuiDQt9Cw0L/Rg9GJ0LXQvdC90YvRhSDQsdC40LfQvdC10YEt0L/RgNC+0YbQtdGB0YHQvtCyLiDQkNC70LjQsNGBIGJpenByb2Mud29ya2Zsb3cuaW5zdGFuY2VzXHJcbiAgICAgIC8vICAgICovXHJcbiAgICAgIC8vICAgbGlzdDogWyRiaXpwcm9jLCAkd29ya2Zsb3csICRpbnN0YW5jZXMsICRsaXN0XVxyXG4gICAgICAvLyB9LFxyXG4gICAgICAvLyAvKipcclxuICAgICAgLy8gICog0J7RgdGC0LDQvdCw0LLQu9C40LLQsNC10YIg0LDQutGC0LjQstC90YvQuSDQkdC40LfQvdC10YEt0L/RgNC+0YbQtdGB0YEgVE9ETzog0YDQtdCw0LvQuNC30L7QstCw0YLRjFxyXG4gICAgICAvLyAgKi9cclxuICAgICAgLy8gdGVybWluYXRlOiB7XHJcbiAgICAgIC8vICAgLyoqXHJcbiAgICAgIC8vICAgICog0JTQvtCx0LDQstC70Y/QtdGCINGI0LDQsdC70L7QvSDQkdC40LfQvdC10YEt0L/RgNC+0YbQtdGB0YHQsCAvLyBUT0RPOiDRgNC10LDQu9C40LfQvtCy0LDRgtGMXHJcbiAgICAgIC8vICAgICovXHJcbiAgICAgIC8vICAgYWRkOiBbJGJpenByb2MsICR3b3JrZmxvdywgJHRlbXBsYXRlLCAkYWRkXSxcclxuICAgICAgLy8gICAvKipcclxuICAgICAgLy8gICAgKiDQo9C00LDQu9GP0LXRgiDRiNCw0LHQu9C+0L0g0JHQuNC30L3QtdGBLdC/0YDQvtGG0LXRgdGB0LAgLy8gVE9ETzog0YDQtdCw0LvQuNC30L7QstCw0YLRjFxyXG4gICAgICAvLyAgICAqL1xyXG4gICAgICAvLyAgIGRlbGV0ZTogWyRiaXpwcm9jLCAkd29ya2Zsb3csICR0ZW1wbGF0ZSwgJGRlbGV0ZV0sXHJcbiAgICAgIC8vICAgLyoqXHJcbiAgICAgIC8vICAgICog0JjQt9C80LXQvdGP0LXRgiDRiNCw0LHQu9C+0L0g0JHQuNC30L3QtdGBLdC/0YDQvtGG0LXRgdGB0LAgLy8gVE9ETzog0YDQtdCw0LvQuNC30L7QstCw0YLRjFxyXG4gICAgICAvLyAgICAqL1xyXG4gICAgICAvLyAgIHVwZGF0ZTogWyRiaXpwcm9jLCAkd29ya2Zsb3csICR0ZW1wbGF0ZSwgJHVwZGF0ZV0sXHJcbiAgICAgIC8vICAgLyoqXHJcbiAgICAgIC8vICAgICog0JLQvtC30LLRgNCw0YnQsNC10YIg0YHQv9C40YHQvtC6INGI0LDQsdC70L7QvdC+0LIg0JHQuNC30L3QtdGBLdC/0YDQvtGG0LXRgdGB0L7Qsiwg0YPRgdGC0LDQvdC+0LLQu9C10L3QvdGL0YUg0L3QsCDRgdCw0LnRgtC1XHJcbiAgICAgIC8vICAgICovXHJcbiAgICAgIC8vICAgbGlzdDogWyRiaXpwcm9jLCAkd29ya2Zsb3csICR0ZW1wbGF0ZSwgJGxpc3RdXHJcbiAgICAgIC8vIH0sXHJcbiAgICAgIC8qKlxyXG4gICAgICAgKiDQl9Cw0L/Rg9GB0LrQsNC10YIg0JHQuNC30L3QtdGBLdC/0YDQvtGG0LXRgdGBXHJcbiAgICAgICAqL1xyXG4gICAgICBzdGFydDogWyRiaXpwcm9jLCAkd29ya2Zsb3csICRzdGFydF0sXHJcbiAgICAgIC8vIC8qKlxyXG4gICAgICAvLyAgKiDQo9C00LDQu9GP0LXRgiDQt9Cw0L/Rg9GJ0LXQvdC90YvQuSDQsdC40LfQvdC10YEt0L/RgNC+0YbQtdGB0YEgVE9ETzog0YDQtdCw0LvQuNC30L7QstCw0YLRjFxyXG4gICAgICAvLyAgKi9cclxuICAgICAgLy8ga2lsbDogWyRiaXpwcm9jLCAkd29ya2Zsb3csICRraWxsXSxcclxuICAgIH0sXHJcbiAgICAvLyBhY3Rpdml0eToge1xyXG4gICAgLy8gICAvKipcclxuICAgIC8vICAgICog0JTQvtCx0LDQstC70Y/QtdGCINC90L7QstC+0LUg0LTQtdC50YHRgtCy0LjQtSDQsiDQsdC40LfQvdC10YEt0L/RgNC+0YbQtdGB0YFcclxuICAgIC8vICAgICovXHJcbiAgICAvLyAgIGFkZDogWyRiaXpwcm9jLCAkYWN0aXZpdHksICRhZGRdLFxyXG4gICAgLy8gICAvKipcclxuICAgIC8vICAgICog0KPQtNCw0LvRj9C10YIg0LTQtdC50YHRgtCy0LjQtVxyXG4gICAgLy8gICAgKi9cclxuICAgIC8vICAgZGVsZXRlOiBbJGJpenByb2MsICRhY3Rpdml0eSwgJGRlbGV0ZV0sXHJcbiAgICAvLyAgIC8qKlxyXG4gICAgLy8gICAgKiDQktC+0LfQstGA0LDRidCw0LXRgiDRgdC/0LjRgdC+0Log0YPRgdGC0LDQvdC+0LLQu9C10L3QvdGL0YUg0L/RgNC40LvQvtC20LXQvdC40LXQvCDQtNC10LnRgdGC0LLQuNC5XHJcbiAgICAvLyAgICAqL1xyXG4gICAgLy8gICBsaXN0OiBbJGJpenByb2MsICRhY3Rpdml0eSwgJGxpc3RdLFxyXG4gICAgLy8gICAvKipcclxuICAgIC8vICAgICog0J/QvtC30LLQvtC70Y/QtdGCINC+0LHQvdC+0LLQuNGC0Ywg0L/QvtC70Y8g0LTQtdC50YHRgtCy0LjRj1xyXG4gICAgLy8gICAgKi9cclxuICAgIC8vICAgdXBkYXRlOiBbJGJpenByb2MsICRhY3Rpdml0eSwgJHVwZGF0ZV0sXHJcbiAgICAvLyAgIC8qKlxyXG4gICAgLy8gICAgKiDQl9Cw0L/QuNGB0YvQstCw0LXRgiDQuNC90YTQvtGA0LzQsNGG0LjRjiDQsiDQu9C+0LMg0LHQuNC30L3QtdGBLdC/0YDQvtGG0LXRgdGB0LBcclxuICAgIC8vICAgICovXHJcbiAgICAvLyAgIGxvZzogWyRiaXpwcm9jLCAkYWN0aXZpdHksICRsb2ddXHJcbiAgICAvLyB9LFxyXG4gICAgLy8gdGFzazoge1xyXG4gICAgLy8gICAvKipcclxuICAgIC8vICAgICog0J7RgdGD0YnQtdGB0YLQstC70Y/QtdGCINCy0YvQv9C+0LvQvdC10L3QuNC1INC30LDQtNCw0L3QuNC5INCR0J9cclxuICAgIC8vICAgICovXHJcbiAgICAvLyAgIGNvbXBsZXRlOiBbJGJpenByb2MsICR0YXNrLCAkY29tcGxldGVdLFxyXG4gICAgLy8gICAvKipcclxuICAgIC8vICAgICog0JLQvtC30LLRgNCw0YnQsNC10YIg0YHQv9C40YHQvtC6INC30LDQtNCw0L3QuNC5INCx0LjQt9C90LXRgS3Qv9GA0L7RhtC10YHRgdC+0LJcclxuICAgIC8vICAgICovXHJcbiAgICAvLyAgIGxpc3Q6IFskYml6cHJvYywgJHRhc2ssICRsaXN0XSxcclxuICAgIC8vIH0sXHJcbiAgICAvLyByb2JvdDoge1xyXG4gICAgLy8gICAvKipcclxuICAgIC8vICAgICog0KDQtdCz0LjRgdGC0YDQuNGA0YPQtdGCINC90L7QstC+0LPQviDRgNC+0LHQvtGC0LBcclxuICAgIC8vICAgICovXHJcbiAgICAvLyAgIGFkZDogWyRiaXpwcm9jLCAkcm9ib3QsICRhZGRdLFxyXG4gICAgLy8gICAvKipcclxuICAgIC8vICAgICog0KPQtNCw0LvRj9C10YIg0LfQsNGA0LXQs9C40YHRgtGA0LjRgNC+0LLQsNC90L3QvtCz0L4g0YDQvtCx0L7RgtCwXHJcbiAgICAvLyAgICAqL1xyXG4gICAgLy8gICBkZWxldGU6IFskYml6cHJvYywgJHJvYm90LCAkZGVsZXRlXSxcclxuICAgIC8vICAgLyoqXHJcbiAgICAvLyAgICAqINCh0L/QuNGB0L7QuiDQt9Cw0YDQtdCz0LjRgdGC0YDQuNGA0L7QstCw0L3QvdGL0YUg0L/RgNC40LvQvtC20LXQvdC40LXQvCDRgNC+0LHQvtGC0L7QslxyXG4gICAgLy8gICAgKi9cclxuICAgIC8vICAgbGlzdDogWyRiaXpwcm9jLCAkcm9ib3QsICRsaXN0XSwgLy9cclxuICAgIC8vICAgLyoqXHJcbiAgICAvLyAgICAqINCe0LHQvdC+0LLQu9GP0LXRgiDQv9C+0LvRjyDRgNC+0LHQvtGC0LBcclxuICAgIC8vICAgICovXHJcbiAgICAvLyAgIHVwZGF0ZTogWyRiaXpwcm9jLCAkcm9ib3QsICR1cGRhdGVdIC8vXHJcbiAgICAvLyB9LFxyXG4gICAgLy8gZXZlbnQ6IHtcclxuICAgIC8vICAgLyoqXHJcbiAgICAvLyAgICAqINCS0L7Qt9Cy0YDQsNGJ0LDQtdGCINC00LXQudGB0YLQstC40Y4g0LLRi9GF0L7QtNC90YvQtSDQv9Cw0YDQsNC80LXRgtGA0YssINC30LDQtNCw0L3QvdGL0LUg0LIg0L7Qv9C40YHQsNC90LjQuCDQtNC10LnRgdGC0LLQuNGPXHJcbiAgICAvLyAgICAqL1xyXG4gICAgLy8gICBzZW5kOiBbJGJpenByb2MsICRldmVudCwgJHNlbmRdLFxyXG4gICAgLy8gfVxyXG4gIH0sXHJcbiAgYXBwOiB7XHJcbiAgICAvKipcclxuICAgICAqINCf0L7QutCw0Lcg0LjQvdGE0L7RgNC80LDRhtC40Lgg0L4g0L/RgNC40LvQvtC20LXQvdC40LguINCc0LXRgtC+0LQg0L/QvtC00LTQtdGA0LbQuNCy0LDQtdGCINCx0LXQt9C+0L/QsNGB0L3Ri9C5INCy0YvQt9C+0LJcclxuICAgICAqL1xyXG4gICAgaW5mbzogWydhcHAnLCAnaW5mbyddXHJcbiAgfVxyXG59Il19
|