@wppconnect/server 2.0.0 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +4 -0
- package/dist/config/upload.js +1 -1
- package/dist/config.js +8 -2
- package/dist/controller/catalogController.js +296 -29
- package/dist/controller/deviceController.js +875 -30
- package/dist/controller/encryptController.js +14 -2
- package/dist/controller/groupController.js +343 -9
- package/dist/controller/labelsController.js +68 -1
- package/dist/controller/messageController.js +289 -40
- package/dist/controller/miscController.js +221 -0
- package/dist/controller/orderController.js +27 -3
- package/dist/controller/sessionController.js +236 -9
- package/dist/controller/statusController.js +53 -5
- package/dist/index.js +8 -8
- package/dist/mapper/index.js +2 -2
- package/dist/middleware/auth.js +16 -15
- package/dist/middleware/healthCheck.js +15 -1
- package/dist/middleware/statusConnection.js +2 -1
- package/dist/routes/index.js +741 -710
- package/dist/swagger-backup.json +21463 -0
- package/dist/swagger.js +100 -0
- package/dist/swagger.json +4957 -20348
- package/dist/types/express/index.d.js +2 -0
- package/dist/util/chatWootClient.js +49 -45
- package/dist/util/createSessionUtil.js +55 -45
- package/dist/util/db/mongodb/db.js +7 -7
- package/dist/util/functions.js +31 -23
- package/dist/util/getAllTokens.js +1 -1
- package/dist/util/logger.js +22 -22
- package/dist/util/manageSession.js +130 -0
- package/dist/util/sessionUtil.js +5 -3
- package/dist/util/tokenStore/FileTokenStore/FileTokenStore.js +7 -7
- package/dist/util/tokenStore/mongodbTokenStory.js +2 -3
- package/dist/util/tokenStore/redisTokenStory.js +25 -25
- package/docker-compose.yml +7 -7
- package/package.json +40 -33
- package/wppconnect_tokens/wppconnect.json +0 -0
- package/dist/types/Request.js +0 -2
package/dist/routes/index.js
CHANGED
|
@@ -24,6 +24,7 @@ var _encryptController = require("../controller/encryptController");
|
|
|
24
24
|
var GroupController = _interopRequireWildcard(require("../controller/groupController"));
|
|
25
25
|
var LabelsController = _interopRequireWildcard(require("../controller/labelsController"));
|
|
26
26
|
var MessageController = _interopRequireWildcard(require("../controller/messageController"));
|
|
27
|
+
var MiscController = _interopRequireWildcard(require("../controller/miscController"));
|
|
27
28
|
var OrderController = _interopRequireWildcard(require("../controller/orderController"));
|
|
28
29
|
var SessionController = _interopRequireWildcard(require("../controller/sessionController"));
|
|
29
30
|
var StatusController = _interopRequireWildcard(require("../controller/statusController"));
|
|
@@ -49,753 +50,783 @@ routes.post('/api/:session/:secretkey/generate-token', _encryptController.encryp
|
|
|
49
50
|
routes.get('/api/:secretkey/show-all-sessions', SessionController.showAllSessions);routes.post('/api/:secretkey/start-all', SessionController.startAllSessions); // Sessions
|
|
50
51
|
routes.get('/api/:session/check-connection-session',
|
|
51
52
|
_auth.default,
|
|
52
|
-
SessionController.checkConnectionSession
|
|
53
|
-
|
|
54
|
-
routes.get(
|
|
55
|
-
'/api/:session/get-media-by-message/:messageId',
|
|
56
|
-
_auth.default,
|
|
57
|
-
SessionController.getMediaByMessage
|
|
58
|
-
|
|
59
|
-
routes.get(
|
|
60
|
-
'/api/:session/
|
|
61
|
-
_auth.default,
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
routes.get(
|
|
65
|
-
'/api/:session/
|
|
66
|
-
_auth.default,
|
|
67
|
-
SessionController.
|
|
68
|
-
|
|
69
|
-
routes.
|
|
70
|
-
'/api/:session/
|
|
71
|
-
_auth.default,
|
|
72
|
-
SessionController.
|
|
73
|
-
|
|
74
|
-
routes.post(
|
|
75
|
-
'/api/:session/
|
|
76
|
-
_auth.default,
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
SessionController.
|
|
84
|
-
|
|
85
|
-
routes.post(
|
|
86
|
-
'/api/:session/
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
53
|
+
SessionController.checkConnectionSession
|
|
54
|
+
);
|
|
55
|
+
routes.get(
|
|
56
|
+
'/api/:session/get-media-by-message/:messageId',
|
|
57
|
+
_auth.default,
|
|
58
|
+
SessionController.getMediaByMessage
|
|
59
|
+
);
|
|
60
|
+
routes.get(
|
|
61
|
+
'/api/:session/get-platform-from-message/:messageId',
|
|
62
|
+
_auth.default,
|
|
63
|
+
DeviceController.getPlatformFromMessage
|
|
64
|
+
);
|
|
65
|
+
routes.get(
|
|
66
|
+
'/api/:session/status-session',
|
|
67
|
+
_auth.default,
|
|
68
|
+
SessionController.getSessionState
|
|
69
|
+
);
|
|
70
|
+
routes.get(
|
|
71
|
+
'/api/:session/qrcode-session',
|
|
72
|
+
_auth.default,
|
|
73
|
+
SessionController.getQrCode
|
|
74
|
+
);
|
|
75
|
+
routes.post(
|
|
76
|
+
'/api/:session/start-session',
|
|
77
|
+
_auth.default,
|
|
78
|
+
SessionController.startSession
|
|
79
|
+
);
|
|
80
|
+
routes.post(
|
|
81
|
+
'/api/:session/logout-session',
|
|
82
|
+
_auth.default,
|
|
83
|
+
_statusConnection.default,
|
|
84
|
+
SessionController.logOutSession
|
|
85
|
+
);
|
|
86
|
+
routes.post(
|
|
87
|
+
'/api/:session/:secretkey/clear-session-data',
|
|
88
|
+
MiscController.clearSessionData
|
|
89
|
+
);
|
|
90
|
+
routes.post(
|
|
91
|
+
'/api/:session/close-session',
|
|
92
|
+
_auth.default,
|
|
93
|
+
SessionController.closeSession
|
|
94
|
+
);
|
|
95
|
+
routes.post(
|
|
96
|
+
'/api/:session/subscribe-presence',
|
|
97
|
+
_auth.default,
|
|
98
|
+
SessionController.subscribePresence
|
|
99
|
+
);
|
|
100
|
+
routes.post(
|
|
101
|
+
'/api/:session/download-media',
|
|
102
|
+
_auth.default,
|
|
103
|
+
_statusConnection.default,
|
|
104
|
+
SessionController.downloadMediaByMessage
|
|
105
|
+
);
|
|
96
106
|
|
|
97
107
|
// Messages
|
|
98
108
|
routes.post(
|
|
99
|
-
'/api/:session/send-message',
|
|
100
|
-
_auth.default,
|
|
101
|
-
_statusConnection.default,
|
|
102
|
-
MessageController.sendMessage
|
|
103
|
-
|
|
104
|
-
routes.post(
|
|
105
|
-
'/api/:session/send-image',
|
|
106
|
-
upload.single('file'),
|
|
107
|
-
_auth.default,
|
|
108
|
-
_statusConnection.default,
|
|
109
|
-
MessageController.sendFile
|
|
110
|
-
|
|
111
|
-
routes.post(
|
|
112
|
-
'/api/:session/send-sticker',
|
|
113
|
-
upload.single('file'),
|
|
114
|
-
_auth.default,
|
|
115
|
-
_statusConnection.default,
|
|
116
|
-
MessageController.sendImageAsSticker
|
|
117
|
-
|
|
118
|
-
routes.post(
|
|
119
|
-
'/api/:session/send-sticker-gif',
|
|
120
|
-
upload.single('file'),
|
|
121
|
-
_auth.default,
|
|
122
|
-
_statusConnection.default,
|
|
123
|
-
MessageController.sendImageAsStickerGif
|
|
124
|
-
|
|
125
|
-
routes.post(
|
|
126
|
-
'/api/:session/send-reply',
|
|
127
|
-
_auth.default,
|
|
128
|
-
_statusConnection.default,
|
|
129
|
-
MessageController.replyMessage
|
|
130
|
-
|
|
131
|
-
routes.post(
|
|
132
|
-
'/api/:session/send-file',
|
|
133
|
-
upload.single('file'),
|
|
134
|
-
_auth.default,
|
|
135
|
-
_statusConnection.default,
|
|
136
|
-
MessageController.sendFile
|
|
137
|
-
|
|
138
|
-
routes.post(
|
|
139
|
-
'/api/:session/send-file-base64',
|
|
140
|
-
_auth.default,
|
|
141
|
-
_statusConnection.default,
|
|
142
|
-
MessageController.sendFile
|
|
143
|
-
|
|
144
|
-
routes.post(
|
|
145
|
-
'/api/:session/send-voice',
|
|
146
|
-
_auth.default,
|
|
147
|
-
_statusConnection.default,
|
|
148
|
-
MessageController.sendVoice
|
|
149
|
-
|
|
150
|
-
routes.post(
|
|
151
|
-
'/api/:session/send-voice-base64',
|
|
152
|
-
_auth.default,
|
|
153
|
-
_statusConnection.default,
|
|
154
|
-
MessageController.sendVoice64
|
|
155
|
-
|
|
156
|
-
routes.post(
|
|
157
|
-
'/api/:session/send-status',
|
|
158
|
-
_auth.default,
|
|
159
|
-
_statusConnection.default,
|
|
160
|
-
MessageController.sendStatusText
|
|
161
|
-
|
|
162
|
-
routes.post(
|
|
163
|
-
'/api/:session/send-link-preview',
|
|
164
|
-
_auth.default,
|
|
165
|
-
_statusConnection.default,
|
|
166
|
-
MessageController.sendLinkPreview
|
|
167
|
-
|
|
168
|
-
routes.post(
|
|
169
|
-
'/api/:session/send-location',
|
|
170
|
-
_auth.default,
|
|
171
|
-
_statusConnection.default,
|
|
172
|
-
MessageController.sendLocation
|
|
173
|
-
|
|
174
|
-
routes.post(
|
|
175
|
-
'/api/:session/send-mentioned',
|
|
176
|
-
_auth.default,
|
|
177
|
-
_statusConnection.default,
|
|
178
|
-
MessageController.sendMentioned
|
|
179
|
-
|
|
180
|
-
routes.post(
|
|
181
|
-
'/api/:session/send-buttons',
|
|
182
|
-
_auth.default,
|
|
183
|
-
_statusConnection.default,
|
|
184
|
-
MessageController.sendButtons
|
|
185
|
-
|
|
186
|
-
routes.post(
|
|
187
|
-
'/api/:session/send-list-message',
|
|
188
|
-
_auth.default,
|
|
189
|
-
_statusConnection.default,
|
|
190
|
-
MessageController.sendListMessage
|
|
191
|
-
|
|
192
|
-
routes.post(
|
|
193
|
-
'/api/:session/send-poll-message',
|
|
194
|
-
_auth.default,
|
|
195
|
-
_statusConnection.default,
|
|
196
|
-
MessageController.sendPollMessage
|
|
197
|
-
|
|
109
|
+
'/api/:session/send-message',
|
|
110
|
+
_auth.default,
|
|
111
|
+
_statusConnection.default,
|
|
112
|
+
MessageController.sendMessage
|
|
113
|
+
);
|
|
114
|
+
routes.post(
|
|
115
|
+
'/api/:session/send-image',
|
|
116
|
+
upload.single('file'),
|
|
117
|
+
_auth.default,
|
|
118
|
+
_statusConnection.default,
|
|
119
|
+
MessageController.sendFile
|
|
120
|
+
);
|
|
121
|
+
routes.post(
|
|
122
|
+
'/api/:session/send-sticker',
|
|
123
|
+
upload.single('file'),
|
|
124
|
+
_auth.default,
|
|
125
|
+
_statusConnection.default,
|
|
126
|
+
MessageController.sendImageAsSticker
|
|
127
|
+
);
|
|
128
|
+
routes.post(
|
|
129
|
+
'/api/:session/send-sticker-gif',
|
|
130
|
+
upload.single('file'),
|
|
131
|
+
_auth.default,
|
|
132
|
+
_statusConnection.default,
|
|
133
|
+
MessageController.sendImageAsStickerGif
|
|
134
|
+
);
|
|
135
|
+
routes.post(
|
|
136
|
+
'/api/:session/send-reply',
|
|
137
|
+
_auth.default,
|
|
138
|
+
_statusConnection.default,
|
|
139
|
+
MessageController.replyMessage
|
|
140
|
+
);
|
|
141
|
+
routes.post(
|
|
142
|
+
'/api/:session/send-file',
|
|
143
|
+
upload.single('file'),
|
|
144
|
+
_auth.default,
|
|
145
|
+
_statusConnection.default,
|
|
146
|
+
MessageController.sendFile
|
|
147
|
+
);
|
|
148
|
+
routes.post(
|
|
149
|
+
'/api/:session/send-file-base64',
|
|
150
|
+
_auth.default,
|
|
151
|
+
_statusConnection.default,
|
|
152
|
+
MessageController.sendFile
|
|
153
|
+
);
|
|
154
|
+
routes.post(
|
|
155
|
+
'/api/:session/send-voice',
|
|
156
|
+
_auth.default,
|
|
157
|
+
_statusConnection.default,
|
|
158
|
+
MessageController.sendVoice
|
|
159
|
+
);
|
|
160
|
+
routes.post(
|
|
161
|
+
'/api/:session/send-voice-base64',
|
|
162
|
+
_auth.default,
|
|
163
|
+
_statusConnection.default,
|
|
164
|
+
MessageController.sendVoice64
|
|
165
|
+
);
|
|
166
|
+
routes.post(
|
|
167
|
+
'/api/:session/send-status',
|
|
168
|
+
_auth.default,
|
|
169
|
+
_statusConnection.default,
|
|
170
|
+
MessageController.sendStatusText
|
|
171
|
+
);
|
|
172
|
+
routes.post(
|
|
173
|
+
'/api/:session/send-link-preview',
|
|
174
|
+
_auth.default,
|
|
175
|
+
_statusConnection.default,
|
|
176
|
+
MessageController.sendLinkPreview
|
|
177
|
+
);
|
|
178
|
+
routes.post(
|
|
179
|
+
'/api/:session/send-location',
|
|
180
|
+
_auth.default,
|
|
181
|
+
_statusConnection.default,
|
|
182
|
+
MessageController.sendLocation
|
|
183
|
+
);
|
|
184
|
+
routes.post(
|
|
185
|
+
'/api/:session/send-mentioned',
|
|
186
|
+
_auth.default,
|
|
187
|
+
_statusConnection.default,
|
|
188
|
+
MessageController.sendMentioned
|
|
189
|
+
);
|
|
190
|
+
routes.post(
|
|
191
|
+
'/api/:session/send-buttons',
|
|
192
|
+
_auth.default,
|
|
193
|
+
_statusConnection.default,
|
|
194
|
+
MessageController.sendButtons
|
|
195
|
+
);
|
|
196
|
+
routes.post(
|
|
197
|
+
'/api/:session/send-list-message',
|
|
198
|
+
_auth.default,
|
|
199
|
+
_statusConnection.default,
|
|
200
|
+
MessageController.sendListMessage
|
|
201
|
+
);
|
|
202
|
+
routes.post(
|
|
203
|
+
'/api/:session/send-poll-message',
|
|
204
|
+
_auth.default,
|
|
205
|
+
_statusConnection.default,
|
|
206
|
+
MessageController.sendPollMessage
|
|
207
|
+
);
|
|
198
208
|
|
|
199
209
|
// Group
|
|
200
210
|
routes.get(
|
|
201
|
-
'/api/:session/all-broadcast-list',
|
|
202
|
-
_auth.default,
|
|
203
|
-
_statusConnection.default,
|
|
204
|
-
GroupController.getAllBroadcastList
|
|
205
|
-
|
|
206
|
-
routes.get(
|
|
207
|
-
'/api/:session/all-groups',
|
|
208
|
-
_auth.default,
|
|
209
|
-
_statusConnection.default,
|
|
210
|
-
GroupController.getAllGroups
|
|
211
|
-
|
|
212
|
-
routes.get(
|
|
213
|
-
'/api/:session/group-members/:groupId',
|
|
214
|
-
_auth.default,
|
|
215
|
-
_statusConnection.default,
|
|
216
|
-
GroupController.getGroupMembers
|
|
217
|
-
|
|
218
|
-
routes.get(
|
|
219
|
-
'/api/:session/group-admins/:groupId',
|
|
220
|
-
_auth.default,
|
|
221
|
-
_statusConnection.default,
|
|
222
|
-
GroupController.getGroupAdmins
|
|
223
|
-
|
|
224
|
-
routes.get(
|
|
225
|
-
'/api/:session/group-invite-link/:groupId',
|
|
226
|
-
_auth.default,
|
|
227
|
-
_statusConnection.default,
|
|
228
|
-
GroupController.getGroupInviteLink
|
|
229
|
-
|
|
230
|
-
routes.get(
|
|
231
|
-
'/api/:session/group-revoke-link/:groupId',
|
|
232
|
-
_auth.default,
|
|
233
|
-
_statusConnection.default,
|
|
234
|
-
GroupController.revokeGroupInviteLink
|
|
235
|
-
|
|
236
|
-
routes.get(
|
|
237
|
-
'/api/:session/group-members-ids/:groupId',
|
|
238
|
-
_auth.default,
|
|
239
|
-
_statusConnection.default,
|
|
240
|
-
GroupController.getGroupMembersIds
|
|
241
|
-
|
|
242
|
-
routes.post(
|
|
243
|
-
'/api/:session/create-group',
|
|
244
|
-
_auth.default,
|
|
245
|
-
_statusConnection.default,
|
|
246
|
-
GroupController.createGroup
|
|
247
|
-
|
|
248
|
-
routes.post(
|
|
249
|
-
'/api/:session/leave-group',
|
|
250
|
-
_auth.default,
|
|
251
|
-
_statusConnection.default,
|
|
252
|
-
GroupController.leaveGroup
|
|
253
|
-
|
|
254
|
-
routes.post(
|
|
255
|
-
'/api/:session/join-code',
|
|
256
|
-
_auth.default,
|
|
257
|
-
_statusConnection.default,
|
|
258
|
-
GroupController.joinGroupByCode
|
|
259
|
-
|
|
260
|
-
routes.post(
|
|
261
|
-
'/api/:session/add-participant-group',
|
|
262
|
-
_auth.default,
|
|
263
|
-
_statusConnection.default,
|
|
264
|
-
GroupController.addParticipant
|
|
265
|
-
|
|
266
|
-
routes.post(
|
|
267
|
-
'/api/:session/remove-participant-group',
|
|
268
|
-
_auth.default,
|
|
269
|
-
_statusConnection.default,
|
|
270
|
-
GroupController.removeParticipant
|
|
271
|
-
|
|
272
|
-
routes.post(
|
|
273
|
-
'/api/:session/promote-participant-group',
|
|
274
|
-
_auth.default,
|
|
275
|
-
_statusConnection.default,
|
|
276
|
-
GroupController.promoteParticipant
|
|
277
|
-
|
|
278
|
-
routes.post(
|
|
279
|
-
'/api/:session/demote-participant-group',
|
|
280
|
-
_auth.default,
|
|
281
|
-
_statusConnection.default,
|
|
282
|
-
GroupController.demoteParticipant
|
|
283
|
-
|
|
284
|
-
routes.post(
|
|
285
|
-
'/api/:session/group-info-from-invite-link',
|
|
286
|
-
_auth.default,
|
|
287
|
-
_statusConnection.default,
|
|
288
|
-
GroupController.getGroupInfoFromInviteLink
|
|
289
|
-
|
|
290
|
-
routes.post(
|
|
291
|
-
'/api/:session/group-description',
|
|
292
|
-
_auth.default,
|
|
293
|
-
_statusConnection.default,
|
|
294
|
-
GroupController.setGroupDescription
|
|
295
|
-
|
|
296
|
-
routes.post(
|
|
297
|
-
'/api/:session/group-property',
|
|
298
|
-
_auth.default,
|
|
299
|
-
_statusConnection.default,
|
|
300
|
-
GroupController.setGroupProperty
|
|
301
|
-
|
|
302
|
-
routes.post(
|
|
303
|
-
'/api/:session/group-subject',
|
|
304
|
-
_auth.default,
|
|
305
|
-
_statusConnection.default,
|
|
306
|
-
GroupController.setGroupSubject
|
|
307
|
-
|
|
308
|
-
routes.post(
|
|
309
|
-
'/api/:session/messages-admins-only',
|
|
310
|
-
_auth.default,
|
|
311
|
-
_statusConnection.default,
|
|
312
|
-
GroupController.setMessagesAdminsOnly
|
|
313
|
-
|
|
314
|
-
routes.post(
|
|
315
|
-
'/api/:session/group-pic',
|
|
316
|
-
upload.single('file'),
|
|
317
|
-
_auth.default,
|
|
318
|
-
_statusConnection.default,
|
|
319
|
-
GroupController.setGroupProfilePic
|
|
320
|
-
|
|
321
|
-
routes.post(
|
|
322
|
-
'/api/:session/change-privacy-group',
|
|
323
|
-
_auth.default,
|
|
324
|
-
_statusConnection.default,
|
|
325
|
-
GroupController.changePrivacyGroup
|
|
326
|
-
|
|
211
|
+
'/api/:session/all-broadcast-list',
|
|
212
|
+
_auth.default,
|
|
213
|
+
_statusConnection.default,
|
|
214
|
+
GroupController.getAllBroadcastList
|
|
215
|
+
);
|
|
216
|
+
routes.get(
|
|
217
|
+
'/api/:session/all-groups',
|
|
218
|
+
_auth.default,
|
|
219
|
+
_statusConnection.default,
|
|
220
|
+
GroupController.getAllGroups
|
|
221
|
+
);
|
|
222
|
+
routes.get(
|
|
223
|
+
'/api/:session/group-members/:groupId',
|
|
224
|
+
_auth.default,
|
|
225
|
+
_statusConnection.default,
|
|
226
|
+
GroupController.getGroupMembers
|
|
227
|
+
);
|
|
228
|
+
routes.get(
|
|
229
|
+
'/api/:session/group-admins/:groupId',
|
|
230
|
+
_auth.default,
|
|
231
|
+
_statusConnection.default,
|
|
232
|
+
GroupController.getGroupAdmins
|
|
233
|
+
);
|
|
234
|
+
routes.get(
|
|
235
|
+
'/api/:session/group-invite-link/:groupId',
|
|
236
|
+
_auth.default,
|
|
237
|
+
_statusConnection.default,
|
|
238
|
+
GroupController.getGroupInviteLink
|
|
239
|
+
);
|
|
240
|
+
routes.get(
|
|
241
|
+
'/api/:session/group-revoke-link/:groupId',
|
|
242
|
+
_auth.default,
|
|
243
|
+
_statusConnection.default,
|
|
244
|
+
GroupController.revokeGroupInviteLink
|
|
245
|
+
);
|
|
246
|
+
routes.get(
|
|
247
|
+
'/api/:session/group-members-ids/:groupId',
|
|
248
|
+
_auth.default,
|
|
249
|
+
_statusConnection.default,
|
|
250
|
+
GroupController.getGroupMembersIds
|
|
251
|
+
);
|
|
252
|
+
routes.post(
|
|
253
|
+
'/api/:session/create-group',
|
|
254
|
+
_auth.default,
|
|
255
|
+
_statusConnection.default,
|
|
256
|
+
GroupController.createGroup
|
|
257
|
+
);
|
|
258
|
+
routes.post(
|
|
259
|
+
'/api/:session/leave-group',
|
|
260
|
+
_auth.default,
|
|
261
|
+
_statusConnection.default,
|
|
262
|
+
GroupController.leaveGroup
|
|
263
|
+
);
|
|
264
|
+
routes.post(
|
|
265
|
+
'/api/:session/join-code',
|
|
266
|
+
_auth.default,
|
|
267
|
+
_statusConnection.default,
|
|
268
|
+
GroupController.joinGroupByCode
|
|
269
|
+
);
|
|
270
|
+
routes.post(
|
|
271
|
+
'/api/:session/add-participant-group',
|
|
272
|
+
_auth.default,
|
|
273
|
+
_statusConnection.default,
|
|
274
|
+
GroupController.addParticipant
|
|
275
|
+
);
|
|
276
|
+
routes.post(
|
|
277
|
+
'/api/:session/remove-participant-group',
|
|
278
|
+
_auth.default,
|
|
279
|
+
_statusConnection.default,
|
|
280
|
+
GroupController.removeParticipant
|
|
281
|
+
);
|
|
282
|
+
routes.post(
|
|
283
|
+
'/api/:session/promote-participant-group',
|
|
284
|
+
_auth.default,
|
|
285
|
+
_statusConnection.default,
|
|
286
|
+
GroupController.promoteParticipant
|
|
287
|
+
);
|
|
288
|
+
routes.post(
|
|
289
|
+
'/api/:session/demote-participant-group',
|
|
290
|
+
_auth.default,
|
|
291
|
+
_statusConnection.default,
|
|
292
|
+
GroupController.demoteParticipant
|
|
293
|
+
);
|
|
294
|
+
routes.post(
|
|
295
|
+
'/api/:session/group-info-from-invite-link',
|
|
296
|
+
_auth.default,
|
|
297
|
+
_statusConnection.default,
|
|
298
|
+
GroupController.getGroupInfoFromInviteLink
|
|
299
|
+
);
|
|
300
|
+
routes.post(
|
|
301
|
+
'/api/:session/group-description',
|
|
302
|
+
_auth.default,
|
|
303
|
+
_statusConnection.default,
|
|
304
|
+
GroupController.setGroupDescription
|
|
305
|
+
);
|
|
306
|
+
routes.post(
|
|
307
|
+
'/api/:session/group-property',
|
|
308
|
+
_auth.default,
|
|
309
|
+
_statusConnection.default,
|
|
310
|
+
GroupController.setGroupProperty
|
|
311
|
+
);
|
|
312
|
+
routes.post(
|
|
313
|
+
'/api/:session/group-subject',
|
|
314
|
+
_auth.default,
|
|
315
|
+
_statusConnection.default,
|
|
316
|
+
GroupController.setGroupSubject
|
|
317
|
+
);
|
|
318
|
+
routes.post(
|
|
319
|
+
'/api/:session/messages-admins-only',
|
|
320
|
+
_auth.default,
|
|
321
|
+
_statusConnection.default,
|
|
322
|
+
GroupController.setMessagesAdminsOnly
|
|
323
|
+
);
|
|
324
|
+
routes.post(
|
|
325
|
+
'/api/:session/group-pic',
|
|
326
|
+
upload.single('file'),
|
|
327
|
+
_auth.default,
|
|
328
|
+
_statusConnection.default,
|
|
329
|
+
GroupController.setGroupProfilePic
|
|
330
|
+
);
|
|
331
|
+
routes.post(
|
|
332
|
+
'/api/:session/change-privacy-group',
|
|
333
|
+
_auth.default,
|
|
334
|
+
_statusConnection.default,
|
|
335
|
+
GroupController.changePrivacyGroup
|
|
336
|
+
);
|
|
327
337
|
|
|
328
338
|
// Chat
|
|
329
339
|
routes.get(
|
|
330
|
-
'/api/:session/all-chats',
|
|
331
|
-
_auth.default,
|
|
332
|
-
_statusConnection.default,
|
|
333
|
-
DeviceController.getAllChats
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
routes.
|
|
409
|
-
'/api/:session/
|
|
410
|
-
_auth.default,
|
|
411
|
-
_statusConnection.default,
|
|
412
|
-
DeviceController.
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
340
|
+
'/api/:session/all-chats',
|
|
341
|
+
_auth.default,
|
|
342
|
+
_statusConnection.default,
|
|
343
|
+
DeviceController.getAllChats
|
|
344
|
+
);
|
|
345
|
+
|
|
346
|
+
routes.get(
|
|
347
|
+
'/api/:session/all-chats-archived',
|
|
348
|
+
_auth.default,
|
|
349
|
+
_statusConnection.default,
|
|
350
|
+
DeviceController.getAllChatsArchiveds
|
|
351
|
+
);
|
|
352
|
+
routes.get(
|
|
353
|
+
'/api/:session/all-chats-with-messages',
|
|
354
|
+
_auth.default,
|
|
355
|
+
_statusConnection.default,
|
|
356
|
+
DeviceController.getAllChatsWithMessages
|
|
357
|
+
);
|
|
358
|
+
routes.get(
|
|
359
|
+
'/api/:session/all-messages-in-chat/:phone',
|
|
360
|
+
_auth.default,
|
|
361
|
+
_statusConnection.default,
|
|
362
|
+
DeviceController.getAllMessagesInChat
|
|
363
|
+
);
|
|
364
|
+
routes.get(
|
|
365
|
+
'/api/:session/all-new-messages',
|
|
366
|
+
_auth.default,
|
|
367
|
+
_statusConnection.default,
|
|
368
|
+
DeviceController.getAllNewMessages
|
|
369
|
+
);
|
|
370
|
+
routes.get(
|
|
371
|
+
'/api/:session/unread-messages',
|
|
372
|
+
_auth.default,
|
|
373
|
+
_statusConnection.default,
|
|
374
|
+
DeviceController.getUnreadMessages
|
|
375
|
+
);
|
|
376
|
+
routes.get(
|
|
377
|
+
'/api/:session/all-unread-messages',
|
|
378
|
+
_auth.default,
|
|
379
|
+
_statusConnection.default,
|
|
380
|
+
DeviceController.getAllUnreadMessages
|
|
381
|
+
);
|
|
382
|
+
routes.get(
|
|
383
|
+
'/api/:session/chat-by-id/:phone',
|
|
384
|
+
_auth.default,
|
|
385
|
+
_statusConnection.default,
|
|
386
|
+
DeviceController.getChatById
|
|
387
|
+
);
|
|
388
|
+
routes.get(
|
|
389
|
+
'/api/:session/message-by-id/:messageId',
|
|
390
|
+
_auth.default,
|
|
391
|
+
_statusConnection.default,
|
|
392
|
+
DeviceController.getMessageById
|
|
393
|
+
);
|
|
394
|
+
routes.get(
|
|
395
|
+
'/api/:session/chat-is-online/:phone',
|
|
396
|
+
_auth.default,
|
|
397
|
+
_statusConnection.default,
|
|
398
|
+
DeviceController.getChatIsOnline
|
|
399
|
+
);
|
|
400
|
+
routes.get(
|
|
401
|
+
'/api/:session/last-seen/:phone',
|
|
402
|
+
_auth.default,
|
|
403
|
+
_statusConnection.default,
|
|
404
|
+
DeviceController.getLastSeen
|
|
405
|
+
);
|
|
406
|
+
routes.get(
|
|
407
|
+
'/api/:session/list-mutes/:type',
|
|
408
|
+
_auth.default,
|
|
409
|
+
_statusConnection.default,
|
|
410
|
+
DeviceController.getListMutes
|
|
411
|
+
);
|
|
412
|
+
routes.get(
|
|
413
|
+
'/api/:session/load-messages-in-chat/:phone',
|
|
414
|
+
_auth.default,
|
|
415
|
+
_statusConnection.default,
|
|
416
|
+
DeviceController.loadAndGetAllMessagesInChat
|
|
417
|
+
);
|
|
418
|
+
routes.get(
|
|
419
|
+
'/api/:session/get-messages/:phone',
|
|
420
|
+
_auth.default,
|
|
421
|
+
_statusConnection.default,
|
|
422
|
+
DeviceController.getMessages
|
|
423
|
+
);
|
|
424
|
+
|
|
425
|
+
routes.post(
|
|
426
|
+
'/api/:session/archive-chat',
|
|
427
|
+
_auth.default,
|
|
428
|
+
_statusConnection.default,
|
|
429
|
+
DeviceController.archiveChat
|
|
430
|
+
);
|
|
431
|
+
routes.post(
|
|
432
|
+
'/api/:session/archive-all-chats',
|
|
433
|
+
_auth.default,
|
|
434
|
+
_statusConnection.default,
|
|
435
|
+
DeviceController.archiveAllChats
|
|
436
|
+
);
|
|
437
|
+
routes.post(
|
|
438
|
+
'/api/:session/clear-chat',
|
|
439
|
+
_auth.default,
|
|
440
|
+
_statusConnection.default,
|
|
441
|
+
DeviceController.clearChat
|
|
442
|
+
);
|
|
443
|
+
routes.post(
|
|
444
|
+
'/api/:session/clear-all-chats',
|
|
445
|
+
_auth.default,
|
|
446
|
+
_statusConnection.default,
|
|
447
|
+
DeviceController.clearAllChats
|
|
448
|
+
);
|
|
449
|
+
routes.post(
|
|
450
|
+
'/api/:session/delete-chat',
|
|
451
|
+
_auth.default,
|
|
452
|
+
_statusConnection.default,
|
|
453
|
+
DeviceController.deleteChat
|
|
454
|
+
);
|
|
455
|
+
routes.post(
|
|
456
|
+
'/api/:session/delete-all-chats',
|
|
457
|
+
_auth.default,
|
|
458
|
+
_statusConnection.default,
|
|
459
|
+
DeviceController.deleteAllChats
|
|
460
|
+
);
|
|
461
|
+
routes.post(
|
|
462
|
+
'/api/:session/delete-message',
|
|
463
|
+
_auth.default,
|
|
464
|
+
_statusConnection.default,
|
|
465
|
+
DeviceController.deleteMessage
|
|
466
|
+
);
|
|
467
|
+
routes.post(
|
|
468
|
+
'/api/:session/react-message',
|
|
469
|
+
_auth.default,
|
|
470
|
+
_statusConnection.default,
|
|
471
|
+
DeviceController.reactMessage
|
|
472
|
+
);
|
|
473
|
+
routes.post(
|
|
474
|
+
'/api/:session/forward-messages',
|
|
475
|
+
_auth.default,
|
|
476
|
+
_statusConnection.default,
|
|
477
|
+
DeviceController.forwardMessages
|
|
478
|
+
);
|
|
479
|
+
routes.post(
|
|
480
|
+
'/api/:session/mark-unseen',
|
|
481
|
+
_auth.default,
|
|
482
|
+
_statusConnection.default,
|
|
483
|
+
DeviceController.markUnseenMessage
|
|
484
|
+
);
|
|
485
|
+
routes.post(
|
|
486
|
+
'/api/:session/pin-chat',
|
|
487
|
+
_auth.default,
|
|
488
|
+
_statusConnection.default,
|
|
489
|
+
DeviceController.pinChat
|
|
490
|
+
);
|
|
491
|
+
routes.post(
|
|
492
|
+
'/api/:session/contact-vcard',
|
|
493
|
+
_auth.default,
|
|
494
|
+
_statusConnection.default,
|
|
495
|
+
DeviceController.sendContactVcard
|
|
496
|
+
);
|
|
497
|
+
routes.post(
|
|
498
|
+
'/api/:session/send-mute',
|
|
499
|
+
_auth.default,
|
|
500
|
+
_statusConnection.default,
|
|
501
|
+
DeviceController.sendMute
|
|
502
|
+
);
|
|
503
|
+
routes.post(
|
|
504
|
+
'/api/:session/send-seen',
|
|
505
|
+
_auth.default,
|
|
506
|
+
_statusConnection.default,
|
|
507
|
+
DeviceController.sendSeen
|
|
508
|
+
);
|
|
509
|
+
routes.post(
|
|
510
|
+
'/api/:session/chat-state',
|
|
511
|
+
_auth.default,
|
|
512
|
+
_statusConnection.default,
|
|
513
|
+
DeviceController.setChatState
|
|
514
|
+
);
|
|
515
|
+
routes.post(
|
|
516
|
+
'/api/:session/temporary-messages',
|
|
517
|
+
_auth.default,
|
|
518
|
+
_statusConnection.default,
|
|
519
|
+
DeviceController.setTemporaryMessages
|
|
520
|
+
);
|
|
521
|
+
routes.post(
|
|
522
|
+
'/api/:session/typing',
|
|
523
|
+
_auth.default,
|
|
524
|
+
_statusConnection.default,
|
|
525
|
+
DeviceController.setTyping
|
|
526
|
+
);
|
|
527
|
+
routes.post(
|
|
528
|
+
'/api/:session/recording',
|
|
529
|
+
_auth.default,
|
|
530
|
+
_statusConnection.default,
|
|
531
|
+
DeviceController.setRecording
|
|
532
|
+
);
|
|
533
|
+
routes.post(
|
|
534
|
+
'/api/:session/star-message',
|
|
535
|
+
_auth.default,
|
|
536
|
+
_statusConnection.default,
|
|
537
|
+
DeviceController.starMessage
|
|
538
|
+
);
|
|
539
|
+
routes.get(
|
|
540
|
+
'/api/:session/reactions/:id',
|
|
541
|
+
_auth.default,
|
|
542
|
+
_statusConnection.default,
|
|
543
|
+
DeviceController.getReactions
|
|
544
|
+
);
|
|
545
|
+
routes.get(
|
|
546
|
+
'/api/:session/votes/:id',
|
|
547
|
+
_auth.default,
|
|
548
|
+
_statusConnection.default,
|
|
549
|
+
DeviceController.getVotes
|
|
550
|
+
);
|
|
551
|
+
routes.post(
|
|
552
|
+
'/api/:session/reject-call',
|
|
553
|
+
_auth.default,
|
|
554
|
+
_statusConnection.default,
|
|
555
|
+
DeviceController.rejectCall
|
|
556
|
+
);
|
|
540
557
|
|
|
541
558
|
// Catalog
|
|
542
559
|
routes.get(
|
|
543
|
-
'/api/:session/get-products',
|
|
544
|
-
_auth.default,
|
|
545
|
-
_statusConnection.default,
|
|
546
|
-
CatalogController.getProducts
|
|
547
|
-
|
|
548
|
-
routes.get(
|
|
549
|
-
'/api/:session/get-product-by-id',
|
|
550
|
-
_auth.default,
|
|
551
|
-
_statusConnection.default,
|
|
552
|
-
CatalogController.getProductById
|
|
553
|
-
|
|
554
|
-
routes.post(
|
|
555
|
-
'/api/:session/add-product',
|
|
556
|
-
_auth.default,
|
|
557
|
-
_statusConnection.default,
|
|
558
|
-
CatalogController.addProduct
|
|
559
|
-
|
|
560
|
-
routes.post(
|
|
561
|
-
'/api/:session/edit-product',
|
|
562
|
-
_auth.default,
|
|
563
|
-
_statusConnection.default,
|
|
564
|
-
CatalogController.editProduct
|
|
565
|
-
|
|
566
|
-
routes.post(
|
|
567
|
-
'/api/:session/del-products',
|
|
568
|
-
_auth.default,
|
|
569
|
-
_statusConnection.default,
|
|
570
|
-
CatalogController.delProducts
|
|
571
|
-
|
|
572
|
-
routes.post(
|
|
573
|
-
'/api/:session/change-product-image',
|
|
574
|
-
_auth.default,
|
|
575
|
-
_statusConnection.default,
|
|
576
|
-
CatalogController.changeProductImage
|
|
577
|
-
|
|
578
|
-
routes.post(
|
|
579
|
-
'/api/:session/add-product-image',
|
|
580
|
-
_auth.default,
|
|
581
|
-
_statusConnection.default,
|
|
582
|
-
CatalogController.addProductImage
|
|
583
|
-
|
|
584
|
-
routes.post(
|
|
585
|
-
'/api/:session/remove-product-image',
|
|
586
|
-
_auth.default,
|
|
587
|
-
_statusConnection.default,
|
|
588
|
-
CatalogController.removeProductImage
|
|
589
|
-
|
|
590
|
-
routes.get(
|
|
591
|
-
'/api/:session/get-collections',
|
|
592
|
-
_auth.default,
|
|
593
|
-
_statusConnection.default,
|
|
594
|
-
CatalogController.getCollections
|
|
595
|
-
|
|
596
|
-
routes.post(
|
|
597
|
-
'/api/:session/create-collection',
|
|
598
|
-
_auth.default,
|
|
599
|
-
_statusConnection.default,
|
|
600
|
-
CatalogController.createCollection
|
|
601
|
-
|
|
602
|
-
routes.post(
|
|
603
|
-
'/api/:session/edit-collection',
|
|
604
|
-
_auth.default,
|
|
605
|
-
_statusConnection.default,
|
|
606
|
-
CatalogController.editCollection
|
|
607
|
-
|
|
608
|
-
routes.post(
|
|
609
|
-
'/api/:session/del-collection',
|
|
610
|
-
_auth.default,
|
|
611
|
-
_statusConnection.default,
|
|
612
|
-
CatalogController.deleteCollection
|
|
613
|
-
|
|
614
|
-
routes.post(
|
|
615
|
-
'/api/:session/send-link-catalog',
|
|
616
|
-
_auth.default,
|
|
617
|
-
_statusConnection.default,
|
|
618
|
-
CatalogController.sendLinkCatalog
|
|
619
|
-
|
|
620
|
-
routes.post(
|
|
621
|
-
'/api/:session/set-product-visibility',
|
|
622
|
-
_auth.default,
|
|
623
|
-
_statusConnection.default,
|
|
624
|
-
CatalogController.setProductVisibility
|
|
625
|
-
|
|
626
|
-
routes.post(
|
|
627
|
-
'/api/:session/set-cart-enabled',
|
|
628
|
-
_auth.default,
|
|
629
|
-
_statusConnection.default,
|
|
630
|
-
CatalogController.updateCartEnabled
|
|
631
|
-
|
|
560
|
+
'/api/:session/get-products',
|
|
561
|
+
_auth.default,
|
|
562
|
+
_statusConnection.default,
|
|
563
|
+
CatalogController.getProducts
|
|
564
|
+
);
|
|
565
|
+
routes.get(
|
|
566
|
+
'/api/:session/get-product-by-id',
|
|
567
|
+
_auth.default,
|
|
568
|
+
_statusConnection.default,
|
|
569
|
+
CatalogController.getProductById
|
|
570
|
+
);
|
|
571
|
+
routes.post(
|
|
572
|
+
'/api/:session/add-product',
|
|
573
|
+
_auth.default,
|
|
574
|
+
_statusConnection.default,
|
|
575
|
+
CatalogController.addProduct
|
|
576
|
+
);
|
|
577
|
+
routes.post(
|
|
578
|
+
'/api/:session/edit-product',
|
|
579
|
+
_auth.default,
|
|
580
|
+
_statusConnection.default,
|
|
581
|
+
CatalogController.editProduct
|
|
582
|
+
);
|
|
583
|
+
routes.post(
|
|
584
|
+
'/api/:session/del-products',
|
|
585
|
+
_auth.default,
|
|
586
|
+
_statusConnection.default,
|
|
587
|
+
CatalogController.delProducts
|
|
588
|
+
);
|
|
589
|
+
routes.post(
|
|
590
|
+
'/api/:session/change-product-image',
|
|
591
|
+
_auth.default,
|
|
592
|
+
_statusConnection.default,
|
|
593
|
+
CatalogController.changeProductImage
|
|
594
|
+
);
|
|
595
|
+
routes.post(
|
|
596
|
+
'/api/:session/add-product-image',
|
|
597
|
+
_auth.default,
|
|
598
|
+
_statusConnection.default,
|
|
599
|
+
CatalogController.addProductImage
|
|
600
|
+
);
|
|
601
|
+
routes.post(
|
|
602
|
+
'/api/:session/remove-product-image',
|
|
603
|
+
_auth.default,
|
|
604
|
+
_statusConnection.default,
|
|
605
|
+
CatalogController.removeProductImage
|
|
606
|
+
);
|
|
607
|
+
routes.get(
|
|
608
|
+
'/api/:session/get-collections',
|
|
609
|
+
_auth.default,
|
|
610
|
+
_statusConnection.default,
|
|
611
|
+
CatalogController.getCollections
|
|
612
|
+
);
|
|
613
|
+
routes.post(
|
|
614
|
+
'/api/:session/create-collection',
|
|
615
|
+
_auth.default,
|
|
616
|
+
_statusConnection.default,
|
|
617
|
+
CatalogController.createCollection
|
|
618
|
+
);
|
|
619
|
+
routes.post(
|
|
620
|
+
'/api/:session/edit-collection',
|
|
621
|
+
_auth.default,
|
|
622
|
+
_statusConnection.default,
|
|
623
|
+
CatalogController.editCollection
|
|
624
|
+
);
|
|
625
|
+
routes.post(
|
|
626
|
+
'/api/:session/del-collection',
|
|
627
|
+
_auth.default,
|
|
628
|
+
_statusConnection.default,
|
|
629
|
+
CatalogController.deleteCollection
|
|
630
|
+
);
|
|
631
|
+
routes.post(
|
|
632
|
+
'/api/:session/send-link-catalog',
|
|
633
|
+
_auth.default,
|
|
634
|
+
_statusConnection.default,
|
|
635
|
+
CatalogController.sendLinkCatalog
|
|
636
|
+
);
|
|
637
|
+
routes.post(
|
|
638
|
+
'/api/:session/set-product-visibility',
|
|
639
|
+
_auth.default,
|
|
640
|
+
_statusConnection.default,
|
|
641
|
+
CatalogController.setProductVisibility
|
|
642
|
+
);
|
|
643
|
+
routes.post(
|
|
644
|
+
'/api/:session/set-cart-enabled',
|
|
645
|
+
_auth.default,
|
|
646
|
+
_statusConnection.default,
|
|
647
|
+
CatalogController.updateCartEnabled
|
|
648
|
+
);
|
|
632
649
|
|
|
633
650
|
// Status
|
|
634
651
|
routes.post(
|
|
635
|
-
'/api/:session/send-text-storie',
|
|
636
|
-
_auth.default,
|
|
637
|
-
_statusConnection.default,
|
|
638
|
-
StatusController.sendTextStorie
|
|
639
|
-
|
|
640
|
-
routes.post(
|
|
641
|
-
'/api/:session/send-image-storie',
|
|
642
|
-
upload.single('file'),
|
|
643
|
-
_auth.default,
|
|
644
|
-
_statusConnection.default,
|
|
645
|
-
StatusController.sendImageStorie
|
|
646
|
-
|
|
647
|
-
routes.post(
|
|
648
|
-
'/api/:session/send-video-storie',
|
|
649
|
-
upload.single('file'),
|
|
650
|
-
_auth.default,
|
|
651
|
-
_statusConnection.default,
|
|
652
|
-
StatusController.sendVideoStorie
|
|
653
|
-
|
|
652
|
+
'/api/:session/send-text-storie',
|
|
653
|
+
_auth.default,
|
|
654
|
+
_statusConnection.default,
|
|
655
|
+
StatusController.sendTextStorie
|
|
656
|
+
);
|
|
657
|
+
routes.post(
|
|
658
|
+
'/api/:session/send-image-storie',
|
|
659
|
+
upload.single('file'),
|
|
660
|
+
_auth.default,
|
|
661
|
+
_statusConnection.default,
|
|
662
|
+
StatusController.sendImageStorie
|
|
663
|
+
);
|
|
664
|
+
routes.post(
|
|
665
|
+
'/api/:session/send-video-storie',
|
|
666
|
+
upload.single('file'),
|
|
667
|
+
_auth.default,
|
|
668
|
+
_statusConnection.default,
|
|
669
|
+
StatusController.sendVideoStorie
|
|
670
|
+
);
|
|
654
671
|
|
|
655
672
|
// Labels
|
|
656
673
|
routes.post(
|
|
657
|
-
'/api/:session/add-new-label',
|
|
658
|
-
_auth.default,
|
|
659
|
-
_statusConnection.default,
|
|
660
|
-
LabelsController.addNewLabel
|
|
661
|
-
|
|
662
|
-
routes.post(
|
|
663
|
-
'/api/:session/add-or-remove-label',
|
|
664
|
-
_auth.default,
|
|
665
|
-
_statusConnection.default,
|
|
666
|
-
LabelsController.addOrRemoveLabels
|
|
667
|
-
|
|
668
|
-
routes.get(
|
|
669
|
-
'/api/:session/get-all-labels',
|
|
670
|
-
_auth.default,
|
|
671
|
-
_statusConnection.default,
|
|
672
|
-
LabelsController.getAllLabels
|
|
673
|
-
|
|
674
|
+
'/api/:session/add-new-label',
|
|
675
|
+
_auth.default,
|
|
676
|
+
_statusConnection.default,
|
|
677
|
+
LabelsController.addNewLabel
|
|
678
|
+
);
|
|
679
|
+
routes.post(
|
|
680
|
+
'/api/:session/add-or-remove-label',
|
|
681
|
+
_auth.default,
|
|
682
|
+
_statusConnection.default,
|
|
683
|
+
LabelsController.addOrRemoveLabels
|
|
684
|
+
);
|
|
685
|
+
routes.get(
|
|
686
|
+
'/api/:session/get-all-labels',
|
|
687
|
+
_auth.default,
|
|
688
|
+
_statusConnection.default,
|
|
689
|
+
LabelsController.getAllLabels
|
|
690
|
+
);
|
|
674
691
|
routes.put(
|
|
675
|
-
'/api/:session/delete-all-labels',
|
|
676
|
-
_auth.default,
|
|
677
|
-
_statusConnection.default,
|
|
678
|
-
LabelsController.deleteAllLabels
|
|
679
|
-
|
|
692
|
+
'/api/:session/delete-all-labels',
|
|
693
|
+
_auth.default,
|
|
694
|
+
_statusConnection.default,
|
|
695
|
+
LabelsController.deleteAllLabels
|
|
696
|
+
);
|
|
680
697
|
routes.put(
|
|
681
|
-
'/api/:session/delete-label/:id',
|
|
682
|
-
_auth.default,
|
|
683
|
-
_statusConnection.default,
|
|
684
|
-
LabelsController.deleteLabel
|
|
685
|
-
|
|
698
|
+
'/api/:session/delete-label/:id',
|
|
699
|
+
_auth.default,
|
|
700
|
+
_statusConnection.default,
|
|
701
|
+
LabelsController.deleteLabel
|
|
702
|
+
);
|
|
686
703
|
|
|
687
704
|
// Contact
|
|
688
705
|
routes.get(
|
|
689
|
-
'/api/:session/check-number-status/:phone',
|
|
690
|
-
_auth.default,
|
|
691
|
-
_statusConnection.default,
|
|
692
|
-
DeviceController.checkNumberStatus
|
|
693
|
-
|
|
694
|
-
routes.get(
|
|
695
|
-
'/api/:session/all-contacts',
|
|
696
|
-
_auth.default,
|
|
697
|
-
_statusConnection.default,
|
|
698
|
-
DeviceController.getAllContacts
|
|
699
|
-
|
|
700
|
-
routes.get(
|
|
701
|
-
'/api/:session/contact/:phone',
|
|
702
|
-
_auth.default,
|
|
703
|
-
_statusConnection.default,
|
|
704
|
-
DeviceController.getContact
|
|
705
|
-
|
|
706
|
-
routes.get(
|
|
707
|
-
'/api/:session/profile/:phone',
|
|
708
|
-
_auth.default,
|
|
709
|
-
_statusConnection.default,
|
|
710
|
-
DeviceController.getNumberProfile
|
|
711
|
-
|
|
712
|
-
routes.get(
|
|
713
|
-
'/api/:session/profile-pic/:phone',
|
|
714
|
-
_auth.default,
|
|
715
|
-
_statusConnection.default,
|
|
716
|
-
DeviceController.getProfilePicFromServer
|
|
717
|
-
|
|
718
|
-
routes.get(
|
|
719
|
-
'/api/:session/profile-status/:phone',
|
|
720
|
-
_auth.default,
|
|
721
|
-
_statusConnection.default,
|
|
722
|
-
DeviceController.getStatus
|
|
723
|
-
|
|
706
|
+
'/api/:session/check-number-status/:phone',
|
|
707
|
+
_auth.default,
|
|
708
|
+
_statusConnection.default,
|
|
709
|
+
DeviceController.checkNumberStatus
|
|
710
|
+
);
|
|
711
|
+
routes.get(
|
|
712
|
+
'/api/:session/all-contacts',
|
|
713
|
+
_auth.default,
|
|
714
|
+
_statusConnection.default,
|
|
715
|
+
DeviceController.getAllContacts
|
|
716
|
+
);
|
|
717
|
+
routes.get(
|
|
718
|
+
'/api/:session/contact/:phone',
|
|
719
|
+
_auth.default,
|
|
720
|
+
_statusConnection.default,
|
|
721
|
+
DeviceController.getContact
|
|
722
|
+
);
|
|
723
|
+
routes.get(
|
|
724
|
+
'/api/:session/profile/:phone',
|
|
725
|
+
_auth.default,
|
|
726
|
+
_statusConnection.default,
|
|
727
|
+
DeviceController.getNumberProfile
|
|
728
|
+
);
|
|
729
|
+
routes.get(
|
|
730
|
+
'/api/:session/profile-pic/:phone',
|
|
731
|
+
_auth.default,
|
|
732
|
+
_statusConnection.default,
|
|
733
|
+
DeviceController.getProfilePicFromServer
|
|
734
|
+
);
|
|
735
|
+
routes.get(
|
|
736
|
+
'/api/:session/profile-status/:phone',
|
|
737
|
+
_auth.default,
|
|
738
|
+
_statusConnection.default,
|
|
739
|
+
DeviceController.getStatus
|
|
740
|
+
);
|
|
724
741
|
|
|
725
742
|
// Blocklist
|
|
726
743
|
routes.get(
|
|
727
|
-
'/api/:session/blocklist',
|
|
728
|
-
_auth.default,
|
|
729
|
-
_statusConnection.default,
|
|
730
|
-
DeviceController.getBlockList
|
|
731
|
-
|
|
744
|
+
'/api/:session/blocklist',
|
|
745
|
+
_auth.default,
|
|
746
|
+
_statusConnection.default,
|
|
747
|
+
DeviceController.getBlockList
|
|
748
|
+
);
|
|
732
749
|
routes.post(
|
|
733
|
-
'/api/:session/block-contact',
|
|
734
|
-
_auth.default,
|
|
735
|
-
_statusConnection.default,
|
|
736
|
-
DeviceController.blockContact
|
|
737
|
-
|
|
750
|
+
'/api/:session/block-contact',
|
|
751
|
+
_auth.default,
|
|
752
|
+
_statusConnection.default,
|
|
753
|
+
DeviceController.blockContact
|
|
754
|
+
);
|
|
738
755
|
routes.post(
|
|
739
|
-
'/api/:session/unblock-contact',
|
|
740
|
-
_auth.default,
|
|
741
|
-
_statusConnection.default,
|
|
742
|
-
DeviceController.unblockContact
|
|
743
|
-
|
|
756
|
+
'/api/:session/unblock-contact',
|
|
757
|
+
_auth.default,
|
|
758
|
+
_statusConnection.default,
|
|
759
|
+
DeviceController.unblockContact
|
|
760
|
+
);
|
|
744
761
|
|
|
745
762
|
// Device
|
|
746
763
|
routes.get(
|
|
747
|
-
'/api/:session/get-battery-level',
|
|
748
|
-
_auth.default,
|
|
749
|
-
_statusConnection.default,
|
|
750
|
-
DeviceController.getBatteryLevel
|
|
751
|
-
|
|
764
|
+
'/api/:session/get-battery-level',
|
|
765
|
+
_auth.default,
|
|
766
|
+
_statusConnection.default,
|
|
767
|
+
DeviceController.getBatteryLevel
|
|
768
|
+
);
|
|
752
769
|
routes.get(
|
|
753
|
-
'/api/:session/host-device',
|
|
754
|
-
_auth.default,
|
|
755
|
-
_statusConnection.default,
|
|
756
|
-
DeviceController.getHostDevice
|
|
757
|
-
|
|
770
|
+
'/api/:session/host-device',
|
|
771
|
+
_auth.default,
|
|
772
|
+
_statusConnection.default,
|
|
773
|
+
DeviceController.getHostDevice
|
|
774
|
+
);
|
|
758
775
|
routes.get(
|
|
759
|
-
'/api/:session/get-phone-number',
|
|
760
|
-
_auth.default,
|
|
761
|
-
_statusConnection.default,
|
|
762
|
-
DeviceController.getPhoneNumber
|
|
763
|
-
|
|
776
|
+
'/api/:session/get-phone-number',
|
|
777
|
+
_auth.default,
|
|
778
|
+
_statusConnection.default,
|
|
779
|
+
DeviceController.getPhoneNumber
|
|
780
|
+
);
|
|
764
781
|
|
|
765
782
|
// Profile
|
|
766
783
|
routes.post(
|
|
767
|
-
'/api/:session/set-profile-pic',
|
|
768
|
-
upload.single('file'),
|
|
769
|
-
_auth.default,
|
|
770
|
-
_statusConnection.default,
|
|
771
|
-
DeviceController.setProfilePic
|
|
772
|
-
|
|
773
|
-
routes.post(
|
|
774
|
-
'/api/:session/profile-status',
|
|
775
|
-
_auth.default,
|
|
776
|
-
_statusConnection.default,
|
|
777
|
-
DeviceController.setProfileStatus
|
|
778
|
-
|
|
779
|
-
routes.post(
|
|
780
|
-
'/api/:session/change-username',
|
|
781
|
-
_auth.default,
|
|
782
|
-
_statusConnection.default,
|
|
783
|
-
DeviceController.setProfileName
|
|
784
|
-
|
|
784
|
+
'/api/:session/set-profile-pic',
|
|
785
|
+
upload.single('file'),
|
|
786
|
+
_auth.default,
|
|
787
|
+
_statusConnection.default,
|
|
788
|
+
DeviceController.setProfilePic
|
|
789
|
+
);
|
|
790
|
+
routes.post(
|
|
791
|
+
'/api/:session/profile-status',
|
|
792
|
+
_auth.default,
|
|
793
|
+
_statusConnection.default,
|
|
794
|
+
DeviceController.setProfileStatus
|
|
795
|
+
);
|
|
796
|
+
routes.post(
|
|
797
|
+
'/api/:session/change-username',
|
|
798
|
+
_auth.default,
|
|
799
|
+
_statusConnection.default,
|
|
800
|
+
DeviceController.setProfileName
|
|
801
|
+
);
|
|
785
802
|
|
|
786
803
|
// Business
|
|
787
|
-
routes.
|
|
788
|
-
'/api/:session/
|
|
789
|
-
_auth.default,
|
|
790
|
-
_statusConnection.default,
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
routes.get(
|
|
794
|
-
'/api/:session/get-
|
|
795
|
-
_auth.default,
|
|
796
|
-
_statusConnection.default,
|
|
797
|
-
OrderController.
|
|
798
|
-
|
|
804
|
+
routes.post(
|
|
805
|
+
'/api/:session/edit-business-profile',
|
|
806
|
+
_auth.default,
|
|
807
|
+
_statusConnection.default,
|
|
808
|
+
SessionController.editBusinessProfile
|
|
809
|
+
);
|
|
810
|
+
routes.get(
|
|
811
|
+
'/api/:session/get-business-profiles-products',
|
|
812
|
+
_auth.default,
|
|
813
|
+
_statusConnection.default,
|
|
814
|
+
OrderController.getBusinessProfilesProducts
|
|
815
|
+
);
|
|
816
|
+
routes.get(
|
|
817
|
+
'/api/:session/get-order-by-messageId',
|
|
818
|
+
_auth.default,
|
|
819
|
+
_statusConnection.default,
|
|
820
|
+
OrderController.getOrderbyMsg
|
|
821
|
+
);
|
|
822
|
+
routes.get('/api/:secretkey/backup-sessions', MiscController.backupAllSessions);
|
|
823
|
+
routes.post(
|
|
824
|
+
'/api/:secretkey/restore-sessions',
|
|
825
|
+
upload.single('file'),
|
|
826
|
+
MiscController.restoreAllSessions
|
|
827
|
+
);
|
|
828
|
+
routes.get('/api/:session/take-screenshot', MiscController.takeScreenshot);
|
|
829
|
+
routes.post('/api/:session/set-limit', MiscController.setLimit);
|
|
799
830
|
|
|
800
831
|
routes.post('/api/:session/chatwoot', DeviceController.chatWoot);
|
|
801
832
|
|
|
@@ -808,4 +839,4 @@ routes.get('/healthz', HealthCheck.healthz);
|
|
|
808
839
|
routes.get('/unhealthy', HealthCheck.unhealthy);var _default =
|
|
809
840
|
|
|
810
841
|
routes;exports.default = _default;
|
|
811
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZXhwcmVzcyIsInJlcXVpcmUiLCJfbXVsdGVyIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9zd2FnZ2VyVWlFeHByZXNzIiwiX3VwbG9hZCIsIkNhdGFsb2dDb250cm9sbGVyIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJEZXZpY2VDb250cm9sbGVyIiwiX2VuY3J5cHRDb250cm9sbGVyIiwiR3JvdXBDb250cm9sbGVyIiwiTGFiZWxzQ29udHJvbGxlciIsIk1lc3NhZ2VDb250cm9sbGVyIiwiT3JkZXJDb250cm9sbGVyIiwiU2Vzc2lvbkNvbnRyb2xsZXIiLCJTdGF0dXNDb250cm9sbGVyIiwiX2F1dGgiLCJIZWFsdGhDaGVjayIsIl9zdGF0dXNDb25uZWN0aW9uIiwiX3N3YWdnZXIiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwidXBsb2FkIiwibXVsdGVyIiwidXBsb2FkQ29uZmlnIiwicm91dGVzIiwiUm91dGVyIiwicG9zdCIsImVuY3J5cHRTZXNzaW9uIiwic2hvd0FsbFNlc3Npb25zIiwic3RhcnRBbGxTZXNzaW9ucyIsInZlcmlmeVRva2VuIiwiY2hlY2tDb25uZWN0aW9uU2Vzc2lvbiIsImdldE1lZGlhQnlNZXNzYWdlIiwiZ2V0U2Vzc2lvblN0YXRlIiwiZ2V0UXJDb2RlIiwic3RhcnRTZXNzaW9uIiwic3RhdHVzQ29ubmVjdGlvbiIsImxvZ091dFNlc3Npb24iLCJjbG9zZVNlc3Npb24iLCJzdWJzY3JpYmVQcmVzZW5jZSIsImRvd25sb2FkTWVkaWFCeU1lc3NhZ2UiLCJzZW5kTWVzc2FnZSIsInNpbmdsZSIsInNlbmRGaWxlIiwic2VuZEltYWdlQXNTdGlja2VyIiwic2VuZEltYWdlQXNTdGlja2VyR2lmIiwicmVwbHlNZXNzYWdlIiwic2VuZFZvaWNlIiwic2VuZFZvaWNlNjQiLCJzZW5kU3RhdHVzVGV4dCIsInNlbmRMaW5rUHJldmlldyIsInNlbmRMb2NhdGlvbiIsInNlbmRNZW50aW9uZWQiLCJzZW5kQnV0dG9ucyIsInNlbmRMaXN0TWVzc2FnZSIsInNlbmRQb2xsTWVzc2FnZSIsImdldEFsbEJyb2FkY2FzdExpc3QiLCJnZXRBbGxHcm91cHMiLCJnZXRHcm91cE1lbWJlcnMiLCJnZXRHcm91cEFkbWlucyIsImdldEdyb3VwSW52aXRlTGluayIsInJldm9rZUdyb3VwSW52aXRlTGluayIsImdldEdyb3VwTWVtYmVyc0lkcyIsImNyZWF0ZUdyb3VwIiwibGVhdmVHcm91cCIsImpvaW5Hcm91cEJ5Q29kZSIsImFkZFBhcnRpY2lwYW50IiwicmVtb3ZlUGFydGljaXBhbnQiLCJwcm9tb3RlUGFydGljaXBhbnQiLCJkZW1vdGVQYXJ0aWNpcGFudCIsImdldEdyb3VwSW5mb0Zyb21JbnZpdGVMaW5rIiwic2V0R3JvdXBEZXNjcmlwdGlvbiIsInNldEdyb3VwUHJvcGVydHkiLCJzZXRHcm91cFN1YmplY3QiLCJzZXRNZXNzYWdlc0FkbWluc09ubHkiLCJzZXRHcm91cFByb2ZpbGVQaWMiLCJjaGFuZ2VQcml2YWN5R3JvdXAiLCJnZXRBbGxDaGF0cyIsImdldEFsbENoYXRzV2l0aE1lc3NhZ2VzIiwiZ2V0QWxsTWVzc2FnZXNJbkNoYXQiLCJnZXRBbGxOZXdNZXNzYWdlcyIsImdldFVucmVhZE1lc3NhZ2VzIiwiZ2V0QWxsVW5yZWFkTWVzc2FnZXMiLCJnZXRDaGF0QnlJZCIsImdldE1lc3NhZ2VCeUlkIiwiZ2V0Q2hhdElzT25saW5lIiwiZ2V0TGFzdFNlZW4iLCJnZXRMaXN0TXV0ZXMiLCJsb2FkQW5kR2V0QWxsTWVzc2FnZXNJbkNoYXQiLCJnZXRNZXNzYWdlcyIsImFyY2hpdmVDaGF0IiwiYXJjaGl2ZUFsbENoYXRzIiwiY2xlYXJDaGF0IiwiY2xlYXJBbGxDaGF0cyIsImRlbGV0ZUNoYXQiLCJkZWxldGVBbGxDaGF0cyIsImRlbGV0ZU1lc3NhZ2UiLCJyZWFjdE1lc3NhZ2UiLCJmb3J3YXJkTWVzc2FnZXMiLCJtYXJrVW5zZWVuTWVzc2FnZSIsInBpbkNoYXQiLCJzZW5kQ29udGFjdFZjYXJkIiwic2VuZE11dGUiLCJzZW5kU2VlbiIsInNldENoYXRTdGF0ZSIsInNldFRlbXBvcmFyeU1lc3NhZ2VzIiwic2V0VHlwaW5nIiwic2V0UmVjb3JkaW5nIiwic3Rhck1lc3NhZ2UiLCJnZXRSZWFjdGlvbnMiLCJnZXRWb3RlcyIsInJlamVjdENhbGwiLCJnZXRQcm9kdWN0cyIsImdldFByb2R1Y3RCeUlkIiwiYWRkUHJvZHVjdCIsImVkaXRQcm9kdWN0IiwiZGVsUHJvZHVjdHMiLCJjaGFuZ2VQcm9kdWN0SW1hZ2UiLCJhZGRQcm9kdWN0SW1hZ2UiLCJyZW1vdmVQcm9kdWN0SW1hZ2UiLCJnZXRDb2xsZWN0aW9ucyIsImNyZWF0ZUNvbGxlY3Rpb24iLCJlZGl0Q29sbGVjdGlvbiIsImRlbGV0ZUNvbGxlY3Rpb24iLCJzZW5kTGlua0NhdGFsb2ciLCJzZXRQcm9kdWN0VmlzaWJpbGl0eSIsInVwZGF0ZUNhcnRFbmFibGVkIiwic2VuZFRleHRTdG9yaWUiLCJzZW5kSW1hZ2VTdG9yaWUiLCJzZW5kVmlkZW9TdG9yaWUiLCJhZGROZXdMYWJlbCIsImFkZE9yUmVtb3ZlTGFiZWxzIiwiZ2V0QWxsTGFiZWxzIiwicHV0IiwiZGVsZXRlQWxsTGFiZWxzIiwiZGVsZXRlTGFiZWwiLCJjaGVja051bWJlclN0YXR1cyIsImdldEFsbENvbnRhY3RzIiwiZ2V0Q29udGFjdCIsImdldE51bWJlclByb2ZpbGUiLCJnZXRQcm9maWxlUGljRnJvbVNlcnZlciIsImdldFN0YXR1cyIsImdldEJsb2NrTGlzdCIsImJsb2NrQ29udGFjdCIsInVuYmxvY2tDb250YWN0IiwiZ2V0QmF0dGVyeUxldmVsIiwiZ2V0SG9zdERldmljZSIsImdldFBob25lTnVtYmVyIiwic2V0UHJvZmlsZVBpYyIsInNldFByb2ZpbGVTdGF0dXMiLCJzZXRQcm9maWxlTmFtZSIsImdldEJ1c2luZXNzUHJvZmlsZXNQcm9kdWN0cyIsImdldE9yZGVyYnlNc2ciLCJjaGF0V29vdCIsInVzZSIsInN3YWdnZXJVaSIsInNlcnZlIiwic2V0dXAiLCJzd2FnZ2VyRG9jdW1lbnQiLCJoZWFsdGh6IiwidW5oZWFsdGh5IiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3JvdXRlcy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMjEgV1BQQ29ubmVjdCBUZWFtXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdleHByZXNzJztcbmltcG9ydCBtdWx0ZXIgZnJvbSAnbXVsdGVyJztcbmltcG9ydCBzd2FnZ2VyVWkgZnJvbSAnc3dhZ2dlci11aS1leHByZXNzJztcblxuaW1wb3J0IHVwbG9hZENvbmZpZyBmcm9tICcuLi9jb25maWcvdXBsb2FkJztcbmltcG9ydCAqIGFzIENhdGFsb2dDb250cm9sbGVyIGZyb20gJy4uL2NvbnRyb2xsZXIvY2F0YWxvZ0NvbnRyb2xsZXInO1xuaW1wb3J0ICogYXMgRGV2aWNlQ29udHJvbGxlciBmcm9tICcuLi9jb250cm9sbGVyL2RldmljZUNvbnRyb2xsZXInO1xuaW1wb3J0IHsgZW5jcnlwdFNlc3Npb24gfSBmcm9tICcuLi9jb250cm9sbGVyL2VuY3J5cHRDb250cm9sbGVyJztcbmltcG9ydCAqIGFzIEdyb3VwQ29udHJvbGxlciBmcm9tICcuLi9jb250cm9sbGVyL2dyb3VwQ29udHJvbGxlcic7XG5pbXBvcnQgKiBhcyBMYWJlbHNDb250cm9sbGVyIGZyb20gJy4uL2NvbnRyb2xsZXIvbGFiZWxzQ29udHJvbGxlcic7XG5pbXBvcnQgKiBhcyBNZXNzYWdlQ29udHJvbGxlciBmcm9tICcuLi9jb250cm9sbGVyL21lc3NhZ2VDb250cm9sbGVyJztcbmltcG9ydCAqIGFzIE9yZGVyQ29udHJvbGxlciBmcm9tICcuLi9jb250cm9sbGVyL29yZGVyQ29udHJvbGxlcic7XG5pbXBvcnQgKiBhcyBTZXNzaW9uQ29udHJvbGxlciBmcm9tICcuLi9jb250cm9sbGVyL3Nlc3Npb25Db250cm9sbGVyJztcbmltcG9ydCAqIGFzIFN0YXR1c0NvbnRyb2xsZXIgZnJvbSAnLi4vY29udHJvbGxlci9zdGF0dXNDb250cm9sbGVyJztcbmltcG9ydCB2ZXJpZnlUb2tlbiBmcm9tICcuLi9taWRkbGV3YXJlL2F1dGgnO1xuaW1wb3J0ICogYXMgSGVhbHRoQ2hlY2sgZnJvbSAnLi4vbWlkZGxld2FyZS9oZWFsdGhDaGVjayc7XG5pbXBvcnQgc3RhdHVzQ29ubmVjdGlvbiBmcm9tICcuLi9taWRkbGV3YXJlL3N0YXR1c0Nvbm5lY3Rpb24nO1xuaW1wb3J0IHN3YWdnZXJEb2N1bWVudCBmcm9tICcuLi9zd2FnZ2VyLmpzb24nO1xuXG5jb25zdCB1cGxvYWQgPSBtdWx0ZXIodXBsb2FkQ29uZmlnIGFzIGFueSk7XG5jb25zdCByb3V0ZXMgPSBSb3V0ZXIoKTtcblxuLy8gR2VuZXJhdGUgVG9rZW5cbnJvdXRlcy5wb3N0KCcvYXBpLzpzZXNzaW9uLzpzZWNyZXRrZXkvZ2VuZXJhdGUtdG9rZW4nLCBlbmNyeXB0U2Vzc2lvbik7XG5cbi8vIEFsbCBTZXNzaW9uc1xucm91dGVzLmdldChcbiAgJy9hcGkvOnNlY3JldGtleS9zaG93LWFsbC1zZXNzaW9ucycsXG4gIFNlc3Npb25Db250cm9sbGVyLnNob3dBbGxTZXNzaW9uc1xuKTtcbnJvdXRlcy5wb3N0KCcvYXBpLzpzZWNyZXRrZXkvc3RhcnQtYWxsJywgU2Vzc2lvbkNvbnRyb2xsZXIuc3RhcnRBbGxTZXNzaW9ucyk7XG5cbi8vIFNlc3Npb25zXG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9jaGVjay1jb25uZWN0aW9uLXNlc3Npb24nLFxuICB2ZXJpZnlUb2tlbixcbiAgU2Vzc2lvbkNvbnRyb2xsZXIuY2hlY2tDb25uZWN0aW9uU2Vzc2lvblxuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2dldC1tZWRpYS1ieS1tZXNzYWdlLzptZXNzYWdlSWQnLFxuICB2ZXJpZnlUb2tlbixcbiAgU2Vzc2lvbkNvbnRyb2xsZXIuZ2V0TWVkaWFCeU1lc3NhZ2Vcbik7XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9zdGF0dXMtc2Vzc2lvbicsXG4gIHZlcmlmeVRva2VuLFxuICBTZXNzaW9uQ29udHJvbGxlci5nZXRTZXNzaW9uU3RhdGVcbik7XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9xcmNvZGUtc2Vzc2lvbicsXG4gIHZlcmlmeVRva2VuLFxuICBTZXNzaW9uQ29udHJvbGxlci5nZXRRckNvZGVcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vc3RhcnQtc2Vzc2lvbicsXG4gIHZlcmlmeVRva2VuLFxuICBTZXNzaW9uQ29udHJvbGxlci5zdGFydFNlc3Npb25cbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vbG9nb3V0LXNlc3Npb24nLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgU2Vzc2lvbkNvbnRyb2xsZXIubG9nT3V0U2Vzc2lvblxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9jbG9zZS1zZXNzaW9uJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIFNlc3Npb25Db250cm9sbGVyLmNsb3NlU2Vzc2lvblxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9zdWJzY3JpYmUtcHJlc2VuY2UnLFxuICB2ZXJpZnlUb2tlbixcbiAgU2Vzc2lvbkNvbnRyb2xsZXIuc3Vic2NyaWJlUHJlc2VuY2Vcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vZG93bmxvYWQtbWVkaWEnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgU2Vzc2lvbkNvbnRyb2xsZXIuZG93bmxvYWRNZWRpYUJ5TWVzc2FnZVxuKTtcblxuLy8gTWVzc2FnZXNcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9zZW5kLW1lc3NhZ2UnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgTWVzc2FnZUNvbnRyb2xsZXIuc2VuZE1lc3NhZ2Vcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vc2VuZC1pbWFnZScsXG4gIHVwbG9hZC5zaW5nbGUoJ2ZpbGUnKSxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIE1lc3NhZ2VDb250cm9sbGVyLnNlbmRGaWxlXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3NlbmQtc3RpY2tlcicsXG4gIHVwbG9hZC5zaW5nbGUoJ2ZpbGUnKSxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIE1lc3NhZ2VDb250cm9sbGVyLnNlbmRJbWFnZUFzU3RpY2tlclxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9zZW5kLXN0aWNrZXItZ2lmJyxcbiAgdXBsb2FkLnNpbmdsZSgnZmlsZScpLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgTWVzc2FnZUNvbnRyb2xsZXIuc2VuZEltYWdlQXNTdGlja2VyR2lmXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3NlbmQtcmVwbHknLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgTWVzc2FnZUNvbnRyb2xsZXIucmVwbHlNZXNzYWdlXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3NlbmQtZmlsZScsXG4gIHVwbG9hZC5zaW5nbGUoJ2ZpbGUnKSxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIE1lc3NhZ2VDb250cm9sbGVyLnNlbmRGaWxlXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3NlbmQtZmlsZS1iYXNlNjQnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgTWVzc2FnZUNvbnRyb2xsZXIuc2VuZEZpbGVcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vc2VuZC12b2ljZScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBNZXNzYWdlQ29udHJvbGxlci5zZW5kVm9pY2Vcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vc2VuZC12b2ljZS1iYXNlNjQnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgTWVzc2FnZUNvbnRyb2xsZXIuc2VuZFZvaWNlNjRcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vc2VuZC1zdGF0dXMnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgTWVzc2FnZUNvbnRyb2xsZXIuc2VuZFN0YXR1c1RleHRcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vc2VuZC1saW5rLXByZXZpZXcnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgTWVzc2FnZUNvbnRyb2xsZXIuc2VuZExpbmtQcmV2aWV3XG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3NlbmQtbG9jYXRpb24nLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgTWVzc2FnZUNvbnRyb2xsZXIuc2VuZExvY2F0aW9uXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3NlbmQtbWVudGlvbmVkJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIE1lc3NhZ2VDb250cm9sbGVyLnNlbmRNZW50aW9uZWRcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vc2VuZC1idXR0b25zJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIE1lc3NhZ2VDb250cm9sbGVyLnNlbmRCdXR0b25zXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3NlbmQtbGlzdC1tZXNzYWdlJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIE1lc3NhZ2VDb250cm9sbGVyLnNlbmRMaXN0TWVzc2FnZVxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9zZW5kLXBvbGwtbWVzc2FnZScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBNZXNzYWdlQ29udHJvbGxlci5zZW5kUG9sbE1lc3NhZ2Vcbik7XG5cbi8vIEdyb3VwXG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9hbGwtYnJvYWRjYXN0LWxpc3QnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgR3JvdXBDb250cm9sbGVyLmdldEFsbEJyb2FkY2FzdExpc3Rcbik7XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9hbGwtZ3JvdXBzJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIEdyb3VwQ29udHJvbGxlci5nZXRBbGxHcm91cHNcbik7XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9ncm91cC1tZW1iZXJzLzpncm91cElkJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIEdyb3VwQ29udHJvbGxlci5nZXRHcm91cE1lbWJlcnNcbik7XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9ncm91cC1hZG1pbnMvOmdyb3VwSWQnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgR3JvdXBDb250cm9sbGVyLmdldEdyb3VwQWRtaW5zXG4pO1xucm91dGVzLmdldChcbiAgJy9hcGkvOnNlc3Npb24vZ3JvdXAtaW52aXRlLWxpbmsvOmdyb3VwSWQnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgR3JvdXBDb250cm9sbGVyLmdldEdyb3VwSW52aXRlTGlua1xuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2dyb3VwLXJldm9rZS1saW5rLzpncm91cElkJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIEdyb3VwQ29udHJvbGxlci5yZXZva2VHcm91cEludml0ZUxpbmtcbik7XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9ncm91cC1tZW1iZXJzLWlkcy86Z3JvdXBJZCcsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBHcm91cENvbnRyb2xsZXIuZ2V0R3JvdXBNZW1iZXJzSWRzXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL2NyZWF0ZS1ncm91cCcsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBHcm91cENvbnRyb2xsZXIuY3JlYXRlR3JvdXBcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vbGVhdmUtZ3JvdXAnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgR3JvdXBDb250cm9sbGVyLmxlYXZlR3JvdXBcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vam9pbi1jb2RlJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIEdyb3VwQ29udHJvbGxlci5qb2luR3JvdXBCeUNvZGVcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vYWRkLXBhcnRpY2lwYW50LWdyb3VwJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIEdyb3VwQ29udHJvbGxlci5hZGRQYXJ0aWNpcGFudFxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9yZW1vdmUtcGFydGljaXBhbnQtZ3JvdXAnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgR3JvdXBDb250cm9sbGVyLnJlbW92ZVBhcnRpY2lwYW50XG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3Byb21vdGUtcGFydGljaXBhbnQtZ3JvdXAnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgR3JvdXBDb250cm9sbGVyLnByb21vdGVQYXJ0aWNpcGFudFxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9kZW1vdGUtcGFydGljaXBhbnQtZ3JvdXAnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgR3JvdXBDb250cm9sbGVyLmRlbW90ZVBhcnRpY2lwYW50XG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL2dyb3VwLWluZm8tZnJvbS1pbnZpdGUtbGluaycsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBHcm91cENvbnRyb2xsZXIuZ2V0R3JvdXBJbmZvRnJvbUludml0ZUxpbmtcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vZ3JvdXAtZGVzY3JpcHRpb24nLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgR3JvdXBDb250cm9sbGVyLnNldEdyb3VwRGVzY3JpcHRpb25cbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vZ3JvdXAtcHJvcGVydHknLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgR3JvdXBDb250cm9sbGVyLnNldEdyb3VwUHJvcGVydHlcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vZ3JvdXAtc3ViamVjdCcsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBHcm91cENvbnRyb2xsZXIuc2V0R3JvdXBTdWJqZWN0XG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL21lc3NhZ2VzLWFkbWlucy1vbmx5JyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIEdyb3VwQ29udHJvbGxlci5zZXRNZXNzYWdlc0FkbWluc09ubHlcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vZ3JvdXAtcGljJyxcbiAgdXBsb2FkLnNpbmdsZSgnZmlsZScpLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgR3JvdXBDb250cm9sbGVyLnNldEdyb3VwUHJvZmlsZVBpY1xuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9jaGFuZ2UtcHJpdmFjeS1ncm91cCcsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBHcm91cENvbnRyb2xsZXIuY2hhbmdlUHJpdmFjeUdyb3VwXG4pO1xuXG4vLyBDaGF0XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9hbGwtY2hhdHMnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5nZXRBbGxDaGF0c1xuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2FsbC1jaGF0cy13aXRoLW1lc3NhZ2VzJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIERldmljZUNvbnRyb2xsZXIuZ2V0QWxsQ2hhdHNXaXRoTWVzc2FnZXNcbik7XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9hbGwtbWVzc2FnZXMtaW4tY2hhdC86cGhvbmUnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5nZXRBbGxNZXNzYWdlc0luQ2hhdFxuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2FsbC1uZXctbWVzc2FnZXMnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5nZXRBbGxOZXdNZXNzYWdlc1xuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL3VucmVhZC1tZXNzYWdlcycsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmdldFVucmVhZE1lc3NhZ2VzXG4pO1xucm91dGVzLmdldChcbiAgJy9hcGkvOnNlc3Npb24vYWxsLXVucmVhZC1tZXNzYWdlcycsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmdldEFsbFVucmVhZE1lc3NhZ2VzXG4pO1xucm91dGVzLmdldChcbiAgJy9hcGkvOnNlc3Npb24vY2hhdC1ieS1pZC86cGhvbmUnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5nZXRDaGF0QnlJZFxuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL21lc3NhZ2UtYnktaWQvOm1lc3NhZ2VJZCcsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmdldE1lc3NhZ2VCeUlkXG4pO1xucm91dGVzLmdldChcbiAgJy9hcGkvOnNlc3Npb24vY2hhdC1pcy1vbmxpbmUvOnBob25lJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIERldmljZUNvbnRyb2xsZXIuZ2V0Q2hhdElzT25saW5lXG4pO1xucm91dGVzLmdldChcbiAgJy9hcGkvOnNlc3Npb24vbGFzdC1zZWVuLzpwaG9uZScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmdldExhc3RTZWVuXG4pO1xucm91dGVzLmdldChcbiAgJy9hcGkvOnNlc3Npb24vbGlzdC1tdXRlcy86dHlwZScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmdldExpc3RNdXRlc1xuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2xvYWQtbWVzc2FnZXMtaW4tY2hhdC86cGhvbmUnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5sb2FkQW5kR2V0QWxsTWVzc2FnZXNJbkNoYXRcbik7XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9nZXQtbWVzc2FnZXMvOnBob25lJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIERldmljZUNvbnRyb2xsZXIuZ2V0TWVzc2FnZXNcbik7XG5cbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9hcmNoaXZlLWNoYXQnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5hcmNoaXZlQ2hhdFxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9hcmNoaXZlLWFsbC1jaGF0cycsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmFyY2hpdmVBbGxDaGF0c1xuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9jbGVhci1jaGF0JyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIERldmljZUNvbnRyb2xsZXIuY2xlYXJDaGF0XG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL2NsZWFyLWFsbC1jaGF0cycsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmNsZWFyQWxsQ2hhdHNcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vZGVsZXRlLWNoYXQnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5kZWxldGVDaGF0XG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL2RlbGV0ZS1hbGwtY2hhdHMnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5kZWxldGVBbGxDaGF0c1xuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9kZWxldGUtbWVzc2FnZScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmRlbGV0ZU1lc3NhZ2Vcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vcmVhY3QtbWVzc2FnZScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLnJlYWN0TWVzc2FnZVxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9mb3J3YXJkLW1lc3NhZ2VzJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIERldmljZUNvbnRyb2xsZXIuZm9yd2FyZE1lc3NhZ2VzXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL21hcmstdW5zZWVuJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIERldmljZUNvbnRyb2xsZXIubWFya1Vuc2Vlbk1lc3NhZ2Vcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vcGluLWNoYXQnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5waW5DaGF0XG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL2NvbnRhY3QtdmNhcmQnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5zZW5kQ29udGFjdFZjYXJkXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3NlbmQtbXV0ZScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLnNlbmRNdXRlXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3NlbmQtc2VlbicsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLnNlbmRTZWVuXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL2NoYXQtc3RhdGUnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5zZXRDaGF0U3RhdGVcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vdGVtcG9yYXJ5LW1lc3NhZ2VzJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIERldmljZUNvbnRyb2xsZXIuc2V0VGVtcG9yYXJ5TWVzc2FnZXNcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vdHlwaW5nJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIERldmljZUNvbnRyb2xsZXIuc2V0VHlwaW5nXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3JlY29yZGluZycsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLnNldFJlY29yZGluZ1xuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9zdGFyLW1lc3NhZ2UnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5zdGFyTWVzc2FnZVxuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL3JlYWN0aW9ucy86aWQnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5nZXRSZWFjdGlvbnNcbik7XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi92b3Rlcy86aWQnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5nZXRWb3Rlc1xuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9yZWplY3QtY2FsbCcsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLnJlamVjdENhbGxcbik7XG5cbi8vIENhdGFsb2dcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2dldC1wcm9kdWN0cycsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBDYXRhbG9nQ29udHJvbGxlci5nZXRQcm9kdWN0c1xuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2dldC1wcm9kdWN0LWJ5LWlkJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIENhdGFsb2dDb250cm9sbGVyLmdldFByb2R1Y3RCeUlkXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL2FkZC1wcm9kdWN0JyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIENhdGFsb2dDb250cm9sbGVyLmFkZFByb2R1Y3Rcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vZWRpdC1wcm9kdWN0JyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIENhdGFsb2dDb250cm9sbGVyLmVkaXRQcm9kdWN0XG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL2RlbC1wcm9kdWN0cycsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBDYXRhbG9nQ29udHJvbGxlci5kZWxQcm9kdWN0c1xuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9jaGFuZ2UtcHJvZHVjdC1pbWFnZScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBDYXRhbG9nQ29udHJvbGxlci5jaGFuZ2VQcm9kdWN0SW1hZ2Vcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vYWRkLXByb2R1Y3QtaW1hZ2UnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgQ2F0YWxvZ0NvbnRyb2xsZXIuYWRkUHJvZHVjdEltYWdlXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3JlbW92ZS1wcm9kdWN0LWltYWdlJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIENhdGFsb2dDb250cm9sbGVyLnJlbW92ZVByb2R1Y3RJbWFnZVxuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2dldC1jb2xsZWN0aW9ucycsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBDYXRhbG9nQ29udHJvbGxlci5nZXRDb2xsZWN0aW9uc1xuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9jcmVhdGUtY29sbGVjdGlvbicsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBDYXRhbG9nQ29udHJvbGxlci5jcmVhdGVDb2xsZWN0aW9uXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL2VkaXQtY29sbGVjdGlvbicsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBDYXRhbG9nQ29udHJvbGxlci5lZGl0Q29sbGVjdGlvblxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9kZWwtY29sbGVjdGlvbicsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBDYXRhbG9nQ29udHJvbGxlci5kZWxldGVDb2xsZWN0aW9uXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3NlbmQtbGluay1jYXRhbG9nJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIENhdGFsb2dDb250cm9sbGVyLnNlbmRMaW5rQ2F0YWxvZ1xuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9zZXQtcHJvZHVjdC12aXNpYmlsaXR5JyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIENhdGFsb2dDb250cm9sbGVyLnNldFByb2R1Y3RWaXNpYmlsaXR5XG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3NldC1jYXJ0LWVuYWJsZWQnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgQ2F0YWxvZ0NvbnRyb2xsZXIudXBkYXRlQ2FydEVuYWJsZWRcbik7XG5cbi8vIFN0YXR1c1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3NlbmQtdGV4dC1zdG9yaWUnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgU3RhdHVzQ29udHJvbGxlci5zZW5kVGV4dFN0b3JpZVxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9zZW5kLWltYWdlLXN0b3JpZScsXG4gIHVwbG9hZC5zaW5nbGUoJ2ZpbGUnKSxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIFN0YXR1c0NvbnRyb2xsZXIuc2VuZEltYWdlU3RvcmllXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3NlbmQtdmlkZW8tc3RvcmllJyxcbiAgdXBsb2FkLnNpbmdsZSgnZmlsZScpLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgU3RhdHVzQ29udHJvbGxlci5zZW5kVmlkZW9TdG9yaWVcbik7XG5cbi8vIExhYmVsc1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL2FkZC1uZXctbGFiZWwnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgTGFiZWxzQ29udHJvbGxlci5hZGROZXdMYWJlbFxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9hZGQtb3ItcmVtb3ZlLWxhYmVsJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIExhYmVsc0NvbnRyb2xsZXIuYWRkT3JSZW1vdmVMYWJlbHNcbik7XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9nZXQtYWxsLWxhYmVscycsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBMYWJlbHNDb250cm9sbGVyLmdldEFsbExhYmVsc1xuKTtcbnJvdXRlcy5wdXQoXG4gICcvYXBpLzpzZXNzaW9uL2RlbGV0ZS1hbGwtbGFiZWxzJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIExhYmVsc0NvbnRyb2xsZXIuZGVsZXRlQWxsTGFiZWxzXG4pO1xucm91dGVzLnB1dChcbiAgJy9hcGkvOnNlc3Npb24vZGVsZXRlLWxhYmVsLzppZCcsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBMYWJlbHNDb250cm9sbGVyLmRlbGV0ZUxhYmVsXG4pO1xuXG4vLyBDb250YWN0XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9jaGVjay1udW1iZXItc3RhdHVzLzpwaG9uZScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmNoZWNrTnVtYmVyU3RhdHVzXG4pO1xucm91dGVzLmdldChcbiAgJy9hcGkvOnNlc3Npb24vYWxsLWNvbnRhY3RzJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIERldmljZUNvbnRyb2xsZXIuZ2V0QWxsQ29udGFjdHNcbik7XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9jb250YWN0LzpwaG9uZScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmdldENvbnRhY3Rcbik7XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9wcm9maWxlLzpwaG9uZScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmdldE51bWJlclByb2ZpbGVcbik7XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9wcm9maWxlLXBpYy86cGhvbmUnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5nZXRQcm9maWxlUGljRnJvbVNlcnZlclxuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL3Byb2ZpbGUtc3RhdHVzLzpwaG9uZScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmdldFN0YXR1c1xuKTtcblxuLy8gQmxvY2tsaXN0XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9ibG9ja2xpc3QnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5nZXRCbG9ja0xpc3Rcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vYmxvY2stY29udGFjdCcsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmJsb2NrQ29udGFjdFxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi91bmJsb2NrLWNvbnRhY3QnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci51bmJsb2NrQ29udGFjdFxuKTtcblxuLy8gRGV2aWNlXG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9nZXQtYmF0dGVyeS1sZXZlbCcsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmdldEJhdHRlcnlMZXZlbFxuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2hvc3QtZGV2aWNlJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIERldmljZUNvbnRyb2xsZXIuZ2V0SG9zdERldmljZVxuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2dldC1waG9uZS1udW1iZXInLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5nZXRQaG9uZU51bWJlclxuKTtcblxuLy8gUHJvZmlsZVxucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3NldC1wcm9maWxlLXBpYycsXG4gIHVwbG9hZC5zaW5nbGUoJ2ZpbGUnKSxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIERldmljZUNvbnRyb2xsZXIuc2V0UHJvZmlsZVBpY1xuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9wcm9maWxlLXN0YXR1cycsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLnNldFByb2ZpbGVTdGF0dXNcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vY2hhbmdlLXVzZXJuYW1lJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIERldmljZUNvbnRyb2xsZXIuc2V0UHJvZmlsZU5hbWVcbik7XG5cbi8vIEJ1c2luZXNzXG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9nZXQtYnVzaW5lc3MtcHJvZmlsZXMtcHJvZHVjdHMnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgT3JkZXJDb250cm9sbGVyLmdldEJ1c2luZXNzUHJvZmlsZXNQcm9kdWN0c1xuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2dldC1vcmRlci1ieS1tZXNzYWdlSWQnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgT3JkZXJDb250cm9sbGVyLmdldE9yZGVyYnlNc2dcbik7XG5cbnJvdXRlcy5wb3N0KCcvYXBpLzpzZXNzaW9uL2NoYXR3b290JywgRGV2aWNlQ29udHJvbGxlci5jaGF0V29vdCk7XG5cbi8vIEFwaSBEb2NcbnJvdXRlcy51c2UoJy9hcGktZG9jcycsIHN3YWdnZXJVaS5zZXJ2ZSk7XG5yb3V0ZXMuZ2V0KCcvYXBpLWRvY3MnLCBzd2FnZ2VyVWkuc2V0dXAoc3dhZ2dlckRvY3VtZW50KSk7XG5cbi8vazhzXG5yb3V0ZXMuZ2V0KCcvaGVhbHRoeicsIEhlYWx0aENoZWNrLmhlYWx0aHopO1xucm91dGVzLmdldCgnL3VuaGVhbHRoeScsIEhlYWx0aENoZWNrLnVuaGVhbHRoeSk7XG5cbmV4cG9ydCBkZWZhdWx0IHJvdXRlcztcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBZUEsSUFBQUEsUUFBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsT0FBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUcsaUJBQUEsR0FBQUQsc0JBQUEsQ0FBQUYsT0FBQTs7QUFFQSxJQUFBSSxPQUFBLEdBQUFGLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBSyxpQkFBQSxHQUFBQyx1QkFBQSxDQUFBTixPQUFBO0FBQ0EsSUFBQU8sZ0JBQUEsR0FBQUQsdUJBQUEsQ0FBQU4sT0FBQTtBQUNBLElBQUFRLGtCQUFBLEdBQUFSLE9BQUE7QUFDQSxJQUFBUyxlQUFBLEdBQUFILHVCQUFBLENBQUFOLE9BQUE7QUFDQSxJQUFBVSxnQkFBQSxHQUFBSix1QkFBQSxDQUFBTixPQUFBO0FBQ0EsSUFBQVcsaUJBQUEsR0FBQUwsdUJBQUEsQ0FBQU4sT0FBQTtBQUNBLElBQUFZLGVBQUEsR0FBQU4sdUJBQUEsQ0FBQU4sT0FBQTtBQUNBLElBQUFhLGlCQUFBLEdBQUFQLHVCQUFBLENBQUFOLE9BQUE7QUFDQSxJQUFBYyxnQkFBQSxHQUFBUix1QkFBQSxDQUFBTixPQUFBO0FBQ0EsSUFBQWUsS0FBQSxHQUFBYixzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQWdCLFdBQUEsR0FBQVYsdUJBQUEsQ0FBQU4sT0FBQTtBQUNBLElBQUFpQixpQkFBQSxHQUFBZixzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFB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
|
|
842
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZXhwcmVzcyIsInJlcXVpcmUiLCJfbXVsdGVyIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9zd2FnZ2VyVWlFeHByZXNzIiwiX3VwbG9hZCIsIkNhdGFsb2dDb250cm9sbGVyIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJEZXZpY2VDb250cm9sbGVyIiwiX2VuY3J5cHRDb250cm9sbGVyIiwiR3JvdXBDb250cm9sbGVyIiwiTGFiZWxzQ29udHJvbGxlciIsIk1lc3NhZ2VDb250cm9sbGVyIiwiTWlzY0NvbnRyb2xsZXIiLCJPcmRlckNvbnRyb2xsZXIiLCJTZXNzaW9uQ29udHJvbGxlciIsIlN0YXR1c0NvbnRyb2xsZXIiLCJfYXV0aCIsIkhlYWx0aENoZWNrIiwiX3N0YXR1c0Nvbm5lY3Rpb24iLCJfc3dhZ2dlciIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJ1cGxvYWQiLCJtdWx0ZXIiLCJ1cGxvYWRDb25maWciLCJyb3V0ZXMiLCJSb3V0ZXIiLCJwb3N0IiwiZW5jcnlwdFNlc3Npb24iLCJzaG93QWxsU2Vzc2lvbnMiLCJzdGFydEFsbFNlc3Npb25zIiwidmVyaWZ5VG9rZW4iLCJjaGVja0Nvbm5lY3Rpb25TZXNzaW9uIiwiZ2V0TWVkaWFCeU1lc3NhZ2UiLCJnZXRQbGF0Zm9ybUZyb21NZXNzYWdlIiwiZ2V0U2Vzc2lvblN0YXRlIiwiZ2V0UXJDb2RlIiwic3RhcnRTZXNzaW9uIiwic3RhdHVzQ29ubmVjdGlvbiIsImxvZ091dFNlc3Npb24iLCJjbGVhclNlc3Npb25EYXRhIiwiY2xvc2VTZXNzaW9uIiwic3Vic2NyaWJlUHJlc2VuY2UiLCJkb3dubG9hZE1lZGlhQnlNZXNzYWdlIiwic2VuZE1lc3NhZ2UiLCJzaW5nbGUiLCJzZW5kRmlsZSIsInNlbmRJbWFnZUFzU3RpY2tlciIsInNlbmRJbWFnZUFzU3RpY2tlckdpZiIsInJlcGx5TWVzc2FnZSIsInNlbmRWb2ljZSIsInNlbmRWb2ljZTY0Iiwic2VuZFN0YXR1c1RleHQiLCJzZW5kTGlua1ByZXZpZXciLCJzZW5kTG9jYXRpb24iLCJzZW5kTWVudGlvbmVkIiwic2VuZEJ1dHRvbnMiLCJzZW5kTGlzdE1lc3NhZ2UiLCJzZW5kUG9sbE1lc3NhZ2UiLCJnZXRBbGxCcm9hZGNhc3RMaXN0IiwiZ2V0QWxsR3JvdXBzIiwiZ2V0R3JvdXBNZW1iZXJzIiwiZ2V0R3JvdXBBZG1pbnMiLCJnZXRHcm91cEludml0ZUxpbmsiLCJyZXZva2VHcm91cEludml0ZUxpbmsiLCJnZXRHcm91cE1lbWJlcnNJZHMiLCJjcmVhdGVHcm91cCIsImxlYXZlR3JvdXAiLCJqb2luR3JvdXBCeUNvZGUiLCJhZGRQYXJ0aWNpcGFudCIsInJlbW92ZVBhcnRpY2lwYW50IiwicHJvbW90ZVBhcnRpY2lwYW50IiwiZGVtb3RlUGFydGljaXBhbnQiLCJnZXRHcm91cEluZm9Gcm9tSW52aXRlTGluayIsInNldEdyb3VwRGVzY3JpcHRpb24iLCJzZXRHcm91cFByb3BlcnR5Iiwic2V0R3JvdXBTdWJqZWN0Iiwic2V0TWVzc2FnZXNBZG1pbnNPbmx5Iiwic2V0R3JvdXBQcm9maWxlUGljIiwiY2hhbmdlUHJpdmFjeUdyb3VwIiwiZ2V0QWxsQ2hhdHMiLCJnZXRBbGxDaGF0c0FyY2hpdmVkcyIsImdldEFsbENoYXRzV2l0aE1lc3NhZ2VzIiwiZ2V0QWxsTWVzc2FnZXNJbkNoYXQiLCJnZXRBbGxOZXdNZXNzYWdlcyIsImdldFVucmVhZE1lc3NhZ2VzIiwiZ2V0QWxsVW5yZWFkTWVzc2FnZXMiLCJnZXRDaGF0QnlJZCIsImdldE1lc3NhZ2VCeUlkIiwiZ2V0Q2hhdElzT25saW5lIiwiZ2V0TGFzdFNlZW4iLCJnZXRMaXN0TXV0ZXMiLCJsb2FkQW5kR2V0QWxsTWVzc2FnZXNJbkNoYXQiLCJnZXRNZXNzYWdlcyIsImFyY2hpdmVDaGF0IiwiYXJjaGl2ZUFsbENoYXRzIiwiY2xlYXJDaGF0IiwiY2xlYXJBbGxDaGF0cyIsImRlbGV0ZUNoYXQiLCJkZWxldGVBbGxDaGF0cyIsImRlbGV0ZU1lc3NhZ2UiLCJyZWFjdE1lc3NhZ2UiLCJmb3J3YXJkTWVzc2FnZXMiLCJtYXJrVW5zZWVuTWVzc2FnZSIsInBpbkNoYXQiLCJzZW5kQ29udGFjdFZjYXJkIiwic2VuZE11dGUiLCJzZW5kU2VlbiIsInNldENoYXRTdGF0ZSIsInNldFRlbXBvcmFyeU1lc3NhZ2VzIiwic2V0VHlwaW5nIiwic2V0UmVjb3JkaW5nIiwic3Rhck1lc3NhZ2UiLCJnZXRSZWFjdGlvbnMiLCJnZXRWb3RlcyIsInJlamVjdENhbGwiLCJnZXRQcm9kdWN0cyIsImdldFByb2R1Y3RCeUlkIiwiYWRkUHJvZHVjdCIsImVkaXRQcm9kdWN0IiwiZGVsUHJvZHVjdHMiLCJjaGFuZ2VQcm9kdWN0SW1hZ2UiLCJhZGRQcm9kdWN0SW1hZ2UiLCJyZW1vdmVQcm9kdWN0SW1hZ2UiLCJnZXRDb2xsZWN0aW9ucyIsImNyZWF0ZUNvbGxlY3Rpb24iLCJlZGl0Q29sbGVjdGlvbiIsImRlbGV0ZUNvbGxlY3Rpb24iLCJzZW5kTGlua0NhdGFsb2ciLCJzZXRQcm9kdWN0VmlzaWJpbGl0eSIsInVwZGF0ZUNhcnRFbmFibGVkIiwic2VuZFRleHRTdG9yaWUiLCJzZW5kSW1hZ2VTdG9yaWUiLCJzZW5kVmlkZW9TdG9yaWUiLCJhZGROZXdMYWJlbCIsImFkZE9yUmVtb3ZlTGFiZWxzIiwiZ2V0QWxsTGFiZWxzIiwicHV0IiwiZGVsZXRlQWxsTGFiZWxzIiwiZGVsZXRlTGFiZWwiLCJjaGVja051bWJlclN0YXR1cyIsImdldEFsbENvbnRhY3RzIiwiZ2V0Q29udGFjdCIsImdldE51bWJlclByb2ZpbGUiLCJnZXRQcm9maWxlUGljRnJvbVNlcnZlciIsImdldFN0YXR1cyIsImdldEJsb2NrTGlzdCIsImJsb2NrQ29udGFjdCIsInVuYmxvY2tDb250YWN0IiwiZ2V0QmF0dGVyeUxldmVsIiwiZ2V0SG9zdERldmljZSIsImdldFBob25lTnVtYmVyIiwic2V0UHJvZmlsZVBpYyIsInNldFByb2ZpbGVTdGF0dXMiLCJzZXRQcm9maWxlTmFtZSIsImVkaXRCdXNpbmVzc1Byb2ZpbGUiLCJnZXRCdXNpbmVzc1Byb2ZpbGVzUHJvZHVjdHMiLCJnZXRPcmRlcmJ5TXNnIiwiYmFja3VwQWxsU2Vzc2lvbnMiLCJyZXN0b3JlQWxsU2Vzc2lvbnMiLCJ0YWtlU2NyZWVuc2hvdCIsInNldExpbWl0IiwiY2hhdFdvb3QiLCJ1c2UiLCJzd2FnZ2VyVWkiLCJzZXJ2ZSIsInNldHVwIiwic3dhZ2dlckRvY3VtZW50IiwiaGVhbHRoeiIsInVuaGVhbHRoeSIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yb3V0ZXMvaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDIxIFdQUENvbm5lY3QgVGVhbVxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnZXhwcmVzcyc7XG5pbXBvcnQgbXVsdGVyIGZyb20gJ211bHRlcic7XG5pbXBvcnQgc3dhZ2dlclVpIGZyb20gJ3N3YWdnZXItdWktZXhwcmVzcyc7XG5cbmltcG9ydCB1cGxvYWRDb25maWcgZnJvbSAnLi4vY29uZmlnL3VwbG9hZCc7XG5pbXBvcnQgKiBhcyBDYXRhbG9nQ29udHJvbGxlciBmcm9tICcuLi9jb250cm9sbGVyL2NhdGFsb2dDb250cm9sbGVyJztcbmltcG9ydCAqIGFzIERldmljZUNvbnRyb2xsZXIgZnJvbSAnLi4vY29udHJvbGxlci9kZXZpY2VDb250cm9sbGVyJztcbmltcG9ydCB7IGVuY3J5cHRTZXNzaW9uIH0gZnJvbSAnLi4vY29udHJvbGxlci9lbmNyeXB0Q29udHJvbGxlcic7XG5pbXBvcnQgKiBhcyBHcm91cENvbnRyb2xsZXIgZnJvbSAnLi4vY29udHJvbGxlci9ncm91cENvbnRyb2xsZXInO1xuaW1wb3J0ICogYXMgTGFiZWxzQ29udHJvbGxlciBmcm9tICcuLi9jb250cm9sbGVyL2xhYmVsc0NvbnRyb2xsZXInO1xuaW1wb3J0ICogYXMgTWVzc2FnZUNvbnRyb2xsZXIgZnJvbSAnLi4vY29udHJvbGxlci9tZXNzYWdlQ29udHJvbGxlcic7XG5pbXBvcnQgKiBhcyBNaXNjQ29udHJvbGxlciBmcm9tICcuLi9jb250cm9sbGVyL21pc2NDb250cm9sbGVyJztcbmltcG9ydCAqIGFzIE9yZGVyQ29udHJvbGxlciBmcm9tICcuLi9jb250cm9sbGVyL29yZGVyQ29udHJvbGxlcic7XG5pbXBvcnQgKiBhcyBTZXNzaW9uQ29udHJvbGxlciBmcm9tICcuLi9jb250cm9sbGVyL3Nlc3Npb25Db250cm9sbGVyJztcbmltcG9ydCAqIGFzIFN0YXR1c0NvbnRyb2xsZXIgZnJvbSAnLi4vY29udHJvbGxlci9zdGF0dXNDb250cm9sbGVyJztcbmltcG9ydCB2ZXJpZnlUb2tlbiBmcm9tICcuLi9taWRkbGV3YXJlL2F1dGgnO1xuaW1wb3J0ICogYXMgSGVhbHRoQ2hlY2sgZnJvbSAnLi4vbWlkZGxld2FyZS9oZWFsdGhDaGVjayc7XG5pbXBvcnQgc3RhdHVzQ29ubmVjdGlvbiBmcm9tICcuLi9taWRkbGV3YXJlL3N0YXR1c0Nvbm5lY3Rpb24nO1xuaW1wb3J0IHN3YWdnZXJEb2N1bWVudCBmcm9tICcuLi9zd2FnZ2VyLmpzb24nO1xuXG5jb25zdCB1cGxvYWQgPSBtdWx0ZXIodXBsb2FkQ29uZmlnIGFzIGFueSk7XG5jb25zdCByb3V0ZXMgPSBSb3V0ZXIoKTtcblxuLy8gR2VuZXJhdGUgVG9rZW5cbnJvdXRlcy5wb3N0KCcvYXBpLzpzZXNzaW9uLzpzZWNyZXRrZXkvZ2VuZXJhdGUtdG9rZW4nLCBlbmNyeXB0U2Vzc2lvbik7XG5cbi8vIEFsbCBTZXNzaW9uc1xucm91dGVzLmdldChcbiAgJy9hcGkvOnNlY3JldGtleS9zaG93LWFsbC1zZXNzaW9ucycsXG4gIFNlc3Npb25Db250cm9sbGVyLnNob3dBbGxTZXNzaW9uc1xuKTtcbnJvdXRlcy5wb3N0KCcvYXBpLzpzZWNyZXRrZXkvc3RhcnQtYWxsJywgU2Vzc2lvbkNvbnRyb2xsZXIuc3RhcnRBbGxTZXNzaW9ucyk7XG5cbi8vIFNlc3Npb25zXG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9jaGVjay1jb25uZWN0aW9uLXNlc3Npb24nLFxuICB2ZXJpZnlUb2tlbixcbiAgU2Vzc2lvbkNvbnRyb2xsZXIuY2hlY2tDb25uZWN0aW9uU2Vzc2lvblxuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2dldC1tZWRpYS1ieS1tZXNzYWdlLzptZXNzYWdlSWQnLFxuICB2ZXJpZnlUb2tlbixcbiAgU2Vzc2lvbkNvbnRyb2xsZXIuZ2V0TWVkaWFCeU1lc3NhZ2Vcbik7XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9nZXQtcGxhdGZvcm0tZnJvbS1tZXNzYWdlLzptZXNzYWdlSWQnLFxuICB2ZXJpZnlUb2tlbixcbiAgRGV2aWNlQ29udHJvbGxlci5nZXRQbGF0Zm9ybUZyb21NZXNzYWdlXG4pO1xucm91dGVzLmdldChcbiAgJy9hcGkvOnNlc3Npb24vc3RhdHVzLXNlc3Npb24nLFxuICB2ZXJpZnlUb2tlbixcbiAgU2Vzc2lvbkNvbnRyb2xsZXIuZ2V0U2Vzc2lvblN0YXRlXG4pO1xucm91dGVzLmdldChcbiAgJy9hcGkvOnNlc3Npb24vcXJjb2RlLXNlc3Npb24nLFxuICB2ZXJpZnlUb2tlbixcbiAgU2Vzc2lvbkNvbnRyb2xsZXIuZ2V0UXJDb2RlXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3N0YXJ0LXNlc3Npb24nLFxuICB2ZXJpZnlUb2tlbixcbiAgU2Vzc2lvbkNvbnRyb2xsZXIuc3RhcnRTZXNzaW9uXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL2xvZ291dC1zZXNzaW9uJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIFNlc3Npb25Db250cm9sbGVyLmxvZ091dFNlc3Npb25cbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vOnNlY3JldGtleS9jbGVhci1zZXNzaW9uLWRhdGEnLFxuICBNaXNjQ29udHJvbGxlci5jbGVhclNlc3Npb25EYXRhXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL2Nsb3NlLXNlc3Npb24nLFxuICB2ZXJpZnlUb2tlbixcbiAgU2Vzc2lvbkNvbnRyb2xsZXIuY2xvc2VTZXNzaW9uXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3N1YnNjcmliZS1wcmVzZW5jZScsXG4gIHZlcmlmeVRva2VuLFxuICBTZXNzaW9uQ29udHJvbGxlci5zdWJzY3JpYmVQcmVzZW5jZVxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9kb3dubG9hZC1tZWRpYScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBTZXNzaW9uQ29udHJvbGxlci5kb3dubG9hZE1lZGlhQnlNZXNzYWdlXG4pO1xuXG4vLyBNZXNzYWdlc1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3NlbmQtbWVzc2FnZScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBNZXNzYWdlQ29udHJvbGxlci5zZW5kTWVzc2FnZVxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9zZW5kLWltYWdlJyxcbiAgdXBsb2FkLnNpbmdsZSgnZmlsZScpLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgTWVzc2FnZUNvbnRyb2xsZXIuc2VuZEZpbGVcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vc2VuZC1zdGlja2VyJyxcbiAgdXBsb2FkLnNpbmdsZSgnZmlsZScpLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgTWVzc2FnZUNvbnRyb2xsZXIuc2VuZEltYWdlQXNTdGlja2VyXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3NlbmQtc3RpY2tlci1naWYnLFxuICB1cGxvYWQuc2luZ2xlKCdmaWxlJyksXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBNZXNzYWdlQ29udHJvbGxlci5zZW5kSW1hZ2VBc1N0aWNrZXJHaWZcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vc2VuZC1yZXBseScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBNZXNzYWdlQ29udHJvbGxlci5yZXBseU1lc3NhZ2Vcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vc2VuZC1maWxlJyxcbiAgdXBsb2FkLnNpbmdsZSgnZmlsZScpLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgTWVzc2FnZUNvbnRyb2xsZXIuc2VuZEZpbGVcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vc2VuZC1maWxlLWJhc2U2NCcsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBNZXNzYWdlQ29udHJvbGxlci5zZW5kRmlsZVxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9zZW5kLXZvaWNlJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIE1lc3NhZ2VDb250cm9sbGVyLnNlbmRWb2ljZVxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9zZW5kLXZvaWNlLWJhc2U2NCcsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBNZXNzYWdlQ29udHJvbGxlci5zZW5kVm9pY2U2NFxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9zZW5kLXN0YXR1cycsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBNZXNzYWdlQ29udHJvbGxlci5zZW5kU3RhdHVzVGV4dFxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9zZW5kLWxpbmstcHJldmlldycsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBNZXNzYWdlQ29udHJvbGxlci5zZW5kTGlua1ByZXZpZXdcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vc2VuZC1sb2NhdGlvbicsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBNZXNzYWdlQ29udHJvbGxlci5zZW5kTG9jYXRpb25cbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vc2VuZC1tZW50aW9uZWQnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgTWVzc2FnZUNvbnRyb2xsZXIuc2VuZE1lbnRpb25lZFxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9zZW5kLWJ1dHRvbnMnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgTWVzc2FnZUNvbnRyb2xsZXIuc2VuZEJ1dHRvbnNcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vc2VuZC1saXN0LW1lc3NhZ2UnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgTWVzc2FnZUNvbnRyb2xsZXIuc2VuZExpc3RNZXNzYWdlXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3NlbmQtcG9sbC1tZXNzYWdlJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIE1lc3NhZ2VDb250cm9sbGVyLnNlbmRQb2xsTWVzc2FnZVxuKTtcblxuLy8gR3JvdXBcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2FsbC1icm9hZGNhc3QtbGlzdCcsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBHcm91cENvbnRyb2xsZXIuZ2V0QWxsQnJvYWRjYXN0TGlzdFxuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2FsbC1ncm91cHMnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgR3JvdXBDb250cm9sbGVyLmdldEFsbEdyb3Vwc1xuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2dyb3VwLW1lbWJlcnMvOmdyb3VwSWQnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgR3JvdXBDb250cm9sbGVyLmdldEdyb3VwTWVtYmVyc1xuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2dyb3VwLWFkbWlucy86Z3JvdXBJZCcsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBHcm91cENvbnRyb2xsZXIuZ2V0R3JvdXBBZG1pbnNcbik7XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9ncm91cC1pbnZpdGUtbGluay86Z3JvdXBJZCcsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBHcm91cENvbnRyb2xsZXIuZ2V0R3JvdXBJbnZpdGVMaW5rXG4pO1xucm91dGVzLmdldChcbiAgJy9hcGkvOnNlc3Npb24vZ3JvdXAtcmV2b2tlLWxpbmsvOmdyb3VwSWQnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgR3JvdXBDb250cm9sbGVyLnJldm9rZUdyb3VwSW52aXRlTGlua1xuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2dyb3VwLW1lbWJlcnMtaWRzLzpncm91cElkJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIEdyb3VwQ29udHJvbGxlci5nZXRHcm91cE1lbWJlcnNJZHNcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vY3JlYXRlLWdyb3VwJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIEdyb3VwQ29udHJvbGxlci5jcmVhdGVHcm91cFxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9sZWF2ZS1ncm91cCcsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBHcm91cENvbnRyb2xsZXIubGVhdmVHcm91cFxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9qb2luLWNvZGUnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgR3JvdXBDb250cm9sbGVyLmpvaW5Hcm91cEJ5Q29kZVxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9hZGQtcGFydGljaXBhbnQtZ3JvdXAnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgR3JvdXBDb250cm9sbGVyLmFkZFBhcnRpY2lwYW50XG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3JlbW92ZS1wYXJ0aWNpcGFudC1ncm91cCcsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBHcm91cENvbnRyb2xsZXIucmVtb3ZlUGFydGljaXBhbnRcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vcHJvbW90ZS1wYXJ0aWNpcGFudC1ncm91cCcsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBHcm91cENvbnRyb2xsZXIucHJvbW90ZVBhcnRpY2lwYW50XG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL2RlbW90ZS1wYXJ0aWNpcGFudC1ncm91cCcsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBHcm91cENvbnRyb2xsZXIuZGVtb3RlUGFydGljaXBhbnRcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vZ3JvdXAtaW5mby1mcm9tLWludml0ZS1saW5rJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIEdyb3VwQ29udHJvbGxlci5nZXRHcm91cEluZm9Gcm9tSW52aXRlTGlua1xuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9ncm91cC1kZXNjcmlwdGlvbicsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBHcm91cENvbnRyb2xsZXIuc2V0R3JvdXBEZXNjcmlwdGlvblxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9ncm91cC1wcm9wZXJ0eScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBHcm91cENvbnRyb2xsZXIuc2V0R3JvdXBQcm9wZXJ0eVxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9ncm91cC1zdWJqZWN0JyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIEdyb3VwQ29udHJvbGxlci5zZXRHcm91cFN1YmplY3Rcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vbWVzc2FnZXMtYWRtaW5zLW9ubHknLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgR3JvdXBDb250cm9sbGVyLnNldE1lc3NhZ2VzQWRtaW5zT25seVxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9ncm91cC1waWMnLFxuICB1cGxvYWQuc2luZ2xlKCdmaWxlJyksXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBHcm91cENvbnRyb2xsZXIuc2V0R3JvdXBQcm9maWxlUGljXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL2NoYW5nZS1wcml2YWN5LWdyb3VwJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIEdyb3VwQ29udHJvbGxlci5jaGFuZ2VQcml2YWN5R3JvdXBcbik7XG5cbi8vIENoYXRcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2FsbC1jaGF0cycsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmdldEFsbENoYXRzXG4pO1xuXG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9hbGwtY2hhdHMtYXJjaGl2ZWQnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5nZXRBbGxDaGF0c0FyY2hpdmVkc1xuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2FsbC1jaGF0cy13aXRoLW1lc3NhZ2VzJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIERldmljZUNvbnRyb2xsZXIuZ2V0QWxsQ2hhdHNXaXRoTWVzc2FnZXNcbik7XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9hbGwtbWVzc2FnZXMtaW4tY2hhdC86cGhvbmUnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5nZXRBbGxNZXNzYWdlc0luQ2hhdFxuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2FsbC1uZXctbWVzc2FnZXMnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5nZXRBbGxOZXdNZXNzYWdlc1xuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL3VucmVhZC1tZXNzYWdlcycsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmdldFVucmVhZE1lc3NhZ2VzXG4pO1xucm91dGVzLmdldChcbiAgJy9hcGkvOnNlc3Npb24vYWxsLXVucmVhZC1tZXNzYWdlcycsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmdldEFsbFVucmVhZE1lc3NhZ2VzXG4pO1xucm91dGVzLmdldChcbiAgJy9hcGkvOnNlc3Npb24vY2hhdC1ieS1pZC86cGhvbmUnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5nZXRDaGF0QnlJZFxuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL21lc3NhZ2UtYnktaWQvOm1lc3NhZ2VJZCcsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmdldE1lc3NhZ2VCeUlkXG4pO1xucm91dGVzLmdldChcbiAgJy9hcGkvOnNlc3Npb24vY2hhdC1pcy1vbmxpbmUvOnBob25lJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIERldmljZUNvbnRyb2xsZXIuZ2V0Q2hhdElzT25saW5lXG4pO1xucm91dGVzLmdldChcbiAgJy9hcGkvOnNlc3Npb24vbGFzdC1zZWVuLzpwaG9uZScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmdldExhc3RTZWVuXG4pO1xucm91dGVzLmdldChcbiAgJy9hcGkvOnNlc3Npb24vbGlzdC1tdXRlcy86dHlwZScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmdldExpc3RNdXRlc1xuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2xvYWQtbWVzc2FnZXMtaW4tY2hhdC86cGhvbmUnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5sb2FkQW5kR2V0QWxsTWVzc2FnZXNJbkNoYXRcbik7XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9nZXQtbWVzc2FnZXMvOnBob25lJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIERldmljZUNvbnRyb2xsZXIuZ2V0TWVzc2FnZXNcbik7XG5cbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9hcmNoaXZlLWNoYXQnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5hcmNoaXZlQ2hhdFxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9hcmNoaXZlLWFsbC1jaGF0cycsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmFyY2hpdmVBbGxDaGF0c1xuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9jbGVhci1jaGF0JyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIERldmljZUNvbnRyb2xsZXIuY2xlYXJDaGF0XG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL2NsZWFyLWFsbC1jaGF0cycsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmNsZWFyQWxsQ2hhdHNcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vZGVsZXRlLWNoYXQnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5kZWxldGVDaGF0XG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL2RlbGV0ZS1hbGwtY2hhdHMnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5kZWxldGVBbGxDaGF0c1xuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9kZWxldGUtbWVzc2FnZScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmRlbGV0ZU1lc3NhZ2Vcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vcmVhY3QtbWVzc2FnZScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLnJlYWN0TWVzc2FnZVxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9mb3J3YXJkLW1lc3NhZ2VzJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIERldmljZUNvbnRyb2xsZXIuZm9yd2FyZE1lc3NhZ2VzXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL21hcmstdW5zZWVuJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIERldmljZUNvbnRyb2xsZXIubWFya1Vuc2Vlbk1lc3NhZ2Vcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vcGluLWNoYXQnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5waW5DaGF0XG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL2NvbnRhY3QtdmNhcmQnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5zZW5kQ29udGFjdFZjYXJkXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3NlbmQtbXV0ZScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLnNlbmRNdXRlXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3NlbmQtc2VlbicsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLnNlbmRTZWVuXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL2NoYXQtc3RhdGUnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5zZXRDaGF0U3RhdGVcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vdGVtcG9yYXJ5LW1lc3NhZ2VzJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIERldmljZUNvbnRyb2xsZXIuc2V0VGVtcG9yYXJ5TWVzc2FnZXNcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vdHlwaW5nJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIERldmljZUNvbnRyb2xsZXIuc2V0VHlwaW5nXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3JlY29yZGluZycsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLnNldFJlY29yZGluZ1xuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9zdGFyLW1lc3NhZ2UnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5zdGFyTWVzc2FnZVxuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL3JlYWN0aW9ucy86aWQnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5nZXRSZWFjdGlvbnNcbik7XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi92b3Rlcy86aWQnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5nZXRWb3Rlc1xuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9yZWplY3QtY2FsbCcsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLnJlamVjdENhbGxcbik7XG5cbi8vIENhdGFsb2dcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2dldC1wcm9kdWN0cycsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBDYXRhbG9nQ29udHJvbGxlci5nZXRQcm9kdWN0c1xuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2dldC1wcm9kdWN0LWJ5LWlkJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIENhdGFsb2dDb250cm9sbGVyLmdldFByb2R1Y3RCeUlkXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL2FkZC1wcm9kdWN0JyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIENhdGFsb2dDb250cm9sbGVyLmFkZFByb2R1Y3Rcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vZWRpdC1wcm9kdWN0JyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIENhdGFsb2dDb250cm9sbGVyLmVkaXRQcm9kdWN0XG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL2RlbC1wcm9kdWN0cycsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBDYXRhbG9nQ29udHJvbGxlci5kZWxQcm9kdWN0c1xuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9jaGFuZ2UtcHJvZHVjdC1pbWFnZScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBDYXRhbG9nQ29udHJvbGxlci5jaGFuZ2VQcm9kdWN0SW1hZ2Vcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vYWRkLXByb2R1Y3QtaW1hZ2UnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgQ2F0YWxvZ0NvbnRyb2xsZXIuYWRkUHJvZHVjdEltYWdlXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3JlbW92ZS1wcm9kdWN0LWltYWdlJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIENhdGFsb2dDb250cm9sbGVyLnJlbW92ZVByb2R1Y3RJbWFnZVxuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2dldC1jb2xsZWN0aW9ucycsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBDYXRhbG9nQ29udHJvbGxlci5nZXRDb2xsZWN0aW9uc1xuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9jcmVhdGUtY29sbGVjdGlvbicsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBDYXRhbG9nQ29udHJvbGxlci5jcmVhdGVDb2xsZWN0aW9uXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL2VkaXQtY29sbGVjdGlvbicsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBDYXRhbG9nQ29udHJvbGxlci5lZGl0Q29sbGVjdGlvblxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9kZWwtY29sbGVjdGlvbicsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBDYXRhbG9nQ29udHJvbGxlci5kZWxldGVDb2xsZWN0aW9uXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3NlbmQtbGluay1jYXRhbG9nJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIENhdGFsb2dDb250cm9sbGVyLnNlbmRMaW5rQ2F0YWxvZ1xuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9zZXQtcHJvZHVjdC12aXNpYmlsaXR5JyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIENhdGFsb2dDb250cm9sbGVyLnNldFByb2R1Y3RWaXNpYmlsaXR5XG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3NldC1jYXJ0LWVuYWJsZWQnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgQ2F0YWxvZ0NvbnRyb2xsZXIudXBkYXRlQ2FydEVuYWJsZWRcbik7XG5cbi8vIFN0YXR1c1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3NlbmQtdGV4dC1zdG9yaWUnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgU3RhdHVzQ29udHJvbGxlci5zZW5kVGV4dFN0b3JpZVxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9zZW5kLWltYWdlLXN0b3JpZScsXG4gIHVwbG9hZC5zaW5nbGUoJ2ZpbGUnKSxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIFN0YXR1c0NvbnRyb2xsZXIuc2VuZEltYWdlU3RvcmllXG4pO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3NlbmQtdmlkZW8tc3RvcmllJyxcbiAgdXBsb2FkLnNpbmdsZSgnZmlsZScpLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgU3RhdHVzQ29udHJvbGxlci5zZW5kVmlkZW9TdG9yaWVcbik7XG5cbi8vIExhYmVsc1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL2FkZC1uZXctbGFiZWwnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgTGFiZWxzQ29udHJvbGxlci5hZGROZXdMYWJlbFxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9hZGQtb3ItcmVtb3ZlLWxhYmVsJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIExhYmVsc0NvbnRyb2xsZXIuYWRkT3JSZW1vdmVMYWJlbHNcbik7XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9nZXQtYWxsLWxhYmVscycsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBMYWJlbHNDb250cm9sbGVyLmdldEFsbExhYmVsc1xuKTtcbnJvdXRlcy5wdXQoXG4gICcvYXBpLzpzZXNzaW9uL2RlbGV0ZS1hbGwtbGFiZWxzJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIExhYmVsc0NvbnRyb2xsZXIuZGVsZXRlQWxsTGFiZWxzXG4pO1xucm91dGVzLnB1dChcbiAgJy9hcGkvOnNlc3Npb24vZGVsZXRlLWxhYmVsLzppZCcsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBMYWJlbHNDb250cm9sbGVyLmRlbGV0ZUxhYmVsXG4pO1xuXG4vLyBDb250YWN0XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9jaGVjay1udW1iZXItc3RhdHVzLzpwaG9uZScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmNoZWNrTnVtYmVyU3RhdHVzXG4pO1xucm91dGVzLmdldChcbiAgJy9hcGkvOnNlc3Npb24vYWxsLWNvbnRhY3RzJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIERldmljZUNvbnRyb2xsZXIuZ2V0QWxsQ29udGFjdHNcbik7XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9jb250YWN0LzpwaG9uZScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmdldENvbnRhY3Rcbik7XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9wcm9maWxlLzpwaG9uZScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmdldE51bWJlclByb2ZpbGVcbik7XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9wcm9maWxlLXBpYy86cGhvbmUnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5nZXRQcm9maWxlUGljRnJvbVNlcnZlclxuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL3Byb2ZpbGUtc3RhdHVzLzpwaG9uZScsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmdldFN0YXR1c1xuKTtcblxuLy8gQmxvY2tsaXN0XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9ibG9ja2xpc3QnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5nZXRCbG9ja0xpc3Rcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vYmxvY2stY29udGFjdCcsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmJsb2NrQ29udGFjdFxuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi91bmJsb2NrLWNvbnRhY3QnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci51bmJsb2NrQ29udGFjdFxuKTtcblxuLy8gRGV2aWNlXG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9nZXQtYmF0dGVyeS1sZXZlbCcsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLmdldEJhdHRlcnlMZXZlbFxuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2hvc3QtZGV2aWNlJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIERldmljZUNvbnRyb2xsZXIuZ2V0SG9zdERldmljZVxuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2dldC1waG9uZS1udW1iZXInLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgRGV2aWNlQ29udHJvbGxlci5nZXRQaG9uZU51bWJlclxuKTtcblxuLy8gUHJvZmlsZVxucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZXNzaW9uL3NldC1wcm9maWxlLXBpYycsXG4gIHVwbG9hZC5zaW5nbGUoJ2ZpbGUnKSxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIERldmljZUNvbnRyb2xsZXIuc2V0UHJvZmlsZVBpY1xuKTtcbnJvdXRlcy5wb3N0KFxuICAnL2FwaS86c2Vzc2lvbi9wcm9maWxlLXN0YXR1cycsXG4gIHZlcmlmeVRva2VuLFxuICBzdGF0dXNDb25uZWN0aW9uLFxuICBEZXZpY2VDb250cm9sbGVyLnNldFByb2ZpbGVTdGF0dXNcbik7XG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vY2hhbmdlLXVzZXJuYW1lJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIERldmljZUNvbnRyb2xsZXIuc2V0UHJvZmlsZU5hbWVcbik7XG5cbi8vIEJ1c2luZXNzXG5yb3V0ZXMucG9zdChcbiAgJy9hcGkvOnNlc3Npb24vZWRpdC1idXNpbmVzcy1wcm9maWxlJyxcbiAgdmVyaWZ5VG9rZW4sXG4gIHN0YXR1c0Nvbm5lY3Rpb24sXG4gIFNlc3Npb25Db250cm9sbGVyLmVkaXRCdXNpbmVzc1Byb2ZpbGVcbik7XG5yb3V0ZXMuZ2V0KFxuICAnL2FwaS86c2Vzc2lvbi9nZXQtYnVzaW5lc3MtcHJvZmlsZXMtcHJvZHVjdHMnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgT3JkZXJDb250cm9sbGVyLmdldEJ1c2luZXNzUHJvZmlsZXNQcm9kdWN0c1xuKTtcbnJvdXRlcy5nZXQoXG4gICcvYXBpLzpzZXNzaW9uL2dldC1vcmRlci1ieS1tZXNzYWdlSWQnLFxuICB2ZXJpZnlUb2tlbixcbiAgc3RhdHVzQ29ubmVjdGlvbixcbiAgT3JkZXJDb250cm9sbGVyLmdldE9yZGVyYnlNc2dcbik7XG5yb3V0ZXMuZ2V0KCcvYXBpLzpzZWNyZXRrZXkvYmFja3VwLXNlc3Npb25zJywgTWlzY0NvbnRyb2xsZXIuYmFja3VwQWxsU2Vzc2lvbnMpO1xucm91dGVzLnBvc3QoXG4gICcvYXBpLzpzZWNyZXRrZXkvcmVzdG9yZS1zZXNzaW9ucycsXG4gIHVwbG9hZC5zaW5nbGUoJ2ZpbGUnKSxcbiAgTWlzY0NvbnRyb2xsZXIucmVzdG9yZUFsbFNlc3Npb25zXG4pO1xucm91dGVzLmdldCgnL2FwaS86c2Vzc2lvbi90YWtlLXNjcmVlbnNob3QnLCBNaXNjQ29udHJvbGxlci50YWtlU2NyZWVuc2hvdCk7XG5yb3V0ZXMucG9zdCgnL2FwaS86c2Vzc2lvbi9zZXQtbGltaXQnLCBNaXNjQ29udHJvbGxlci5zZXRMaW1pdCk7XG5cbnJvdXRlcy5wb3N0KCcvYXBpLzpzZXNzaW9uL2NoYXR3b290JywgRGV2aWNlQ29udHJvbGxlci5jaGF0V29vdCk7XG5cbi8vIEFwaSBEb2NcbnJvdXRlcy51c2UoJy9hcGktZG9jcycsIHN3YWdnZXJVaS5zZXJ2ZSk7XG5yb3V0ZXMuZ2V0KCcvYXBpLWRvY3MnLCBzd2FnZ2VyVWkuc2V0dXAoc3dhZ2dlckRvY3VtZW50KSk7XG5cbi8vazhzXG5yb3V0ZXMuZ2V0KCcvaGVhbHRoeicsIEhlYWx0aENoZWNrLmhlYWx0aHopO1xucm91dGVzLmdldCgnL3VuaGVhbHRoeScsIEhlYWx0aENoZWNrLnVuaGVhbHRoeSk7XG5cbmV4cG9ydCBkZWZhdWx0IHJvdXRlcztcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBZUEsSUFBQUEsUUFBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsT0FBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUcsaUJBQUEsR0FBQUQsc0JBQUEsQ0FBQUYsT0FBQTs7QUFFQSxJQUFBSSxPQUFBLEdBQUFGLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBSyxpQkFBQSxHQUFBQyx1QkFBQSxDQUFBTixPQUFBO0FBQ0EsSUFBQU8sZ0JBQUEsR0FBQUQsdUJBQUEsQ0FBQU4sT0FBQTtBQUNBLElBQUFRLGtCQUFBLEdBQUFSLE9BQUE7QUFDQSxJQUFBUyxlQUFBLEdBQUFILHVCQUFBLENBQUFOLE9BQUE7QUFDQSxJQUFBVSxnQkFBQSxHQUFBSix1QkFBQSxDQUFBTixPQUFBO0FBQ0EsSUFBQVcsaUJBQUEsR0FBQUwsdUJBQUEsQ0FBQU4sT0FBQTtBQUNBLElBQUFZLGNBQUEsR0FBQU4sdUJBQUEsQ0FBQU4sT0FBQTtBQUNBLElBQUFhLGVB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
|