@discordeno/bot 21.0.0 → 21.0.1-next.01dd69b

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (272) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/bot.cjs +1 -1
  3. package/dist/cjs/commandOptionsParser.cjs +1 -1
  4. package/dist/cjs/constants.cjs +7 -7
  5. package/dist/cjs/desiredProperties.cjs +111 -4
  6. package/dist/cjs/handlers/channels/THREAD_MEMBERS_UPDATE.cjs +4 -2
  7. package/dist/cjs/handlers/channels/THREAD_MEMBER_UPDATE.cjs +4 -2
  8. package/dist/cjs/handlers/guilds/GUILD_DELETE.cjs +6 -8
  9. package/dist/cjs/handlers/guilds/index.cjs +2 -2
  10. package/dist/cjs/handlers/index.cjs +3 -3
  11. package/dist/cjs/handlers/members/GUILD_MEMBER_ADD.cjs +2 -2
  12. package/dist/cjs/handlers/messages/MESSAGE_REACTION_ADD.cjs +2 -1
  13. package/dist/cjs/handlers/messages/MESSAGE_REACTION_REMOVE.cjs +2 -1
  14. package/dist/cjs/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.cjs +2 -1
  15. package/dist/cjs/handlers/messages/index.cjs +3 -3
  16. package/dist/cjs/handlers/soundboard/index.cjs +3 -3
  17. package/dist/cjs/handlers/voice/index.cjs +2 -2
  18. package/dist/cjs/helpers.cjs +52 -34
  19. package/dist/cjs/index.cjs +3 -4
  20. package/dist/cjs/transformers/activity.cjs +5 -5
  21. package/dist/cjs/transformers/application.cjs +2 -1
  22. package/dist/cjs/transformers/attachment.cjs +1 -1
  23. package/dist/cjs/transformers/automodActionExecution.cjs +3 -3
  24. package/dist/cjs/transformers/channel.cjs +11 -9
  25. package/dist/cjs/transformers/component.cjs +184 -64
  26. package/dist/cjs/transformers/emoji.cjs +5 -5
  27. package/dist/cjs/transformers/entitlement.cjs +2 -2
  28. package/dist/cjs/transformers/guild.cjs +12 -4
  29. package/dist/cjs/transformers/incidentsData.cjs +21 -0
  30. package/dist/cjs/transformers/index.cjs +5 -3
  31. package/dist/cjs/transformers/interaction.cjs +38 -22
  32. package/dist/cjs/transformers/invite.cjs +4 -3
  33. package/dist/cjs/transformers/lobby.cjs +41 -0
  34. package/dist/cjs/transformers/member.cjs +5 -5
  35. package/dist/cjs/transformers/message.cjs +23 -8
  36. package/dist/cjs/transformers/onboarding.cjs +6 -6
  37. package/dist/cjs/transformers/poll.cjs +8 -7
  38. package/dist/cjs/transformers/presence.cjs +1 -1
  39. package/dist/cjs/transformers/reverse/application.cjs +1 -1
  40. package/dist/cjs/transformers/reverse/attachment.cjs +15 -14
  41. package/dist/cjs/transformers/reverse/component.cjs +104 -15
  42. package/dist/cjs/transformers/reverse/emoji.cjs +3 -3
  43. package/dist/cjs/transformers/reverse/index.cjs +1 -2
  44. package/dist/cjs/transformers/reverse/member.cjs +37 -35
  45. package/dist/cjs/transformers/reverse/presence.cjs +4 -4
  46. package/dist/cjs/transformers/reverse/team.cjs +1 -1
  47. package/dist/cjs/transformers/role.cjs +17 -5
  48. package/dist/cjs/transformers/scheduledEvent.cjs +4 -4
  49. package/dist/cjs/transformers/sku.cjs +1 -1
  50. package/dist/cjs/transformers/soundboardSound.cjs +1 -1
  51. package/dist/cjs/transformers/stageInstance.cjs +1 -1
  52. package/dist/cjs/transformers/stageInviteInstance.cjs +1 -1
  53. package/dist/cjs/transformers/sticker.cjs +4 -4
  54. package/dist/cjs/transformers/subscription.cjs +2 -2
  55. package/dist/cjs/transformers/team.cjs +1 -1
  56. package/dist/cjs/transformers/template.cjs +1 -1
  57. package/dist/cjs/transformers/threadMember.cjs +8 -7
  58. package/dist/cjs/transformers/toggles/Permissions.cjs +1 -1
  59. package/dist/cjs/transformers/toggles/ToggleBitfield.cjs +4 -4
  60. package/dist/cjs/transformers/toggles/channel.cjs +4 -4
  61. package/dist/cjs/transformers/toggles/emoji.cjs +4 -4
  62. package/dist/cjs/transformers/toggles/guild.cjs +24 -7
  63. package/dist/cjs/transformers/toggles/member.cjs +11 -5
  64. package/dist/cjs/transformers/toggles/role.cjs +4 -4
  65. package/dist/cjs/transformers/toggles/user.cjs +4 -4
  66. package/dist/cjs/transformers/toggles/voice.cjs +4 -4
  67. package/dist/cjs/transformers/user.cjs +39 -4
  68. package/dist/cjs/transformers/voiceState.cjs +1 -1
  69. package/dist/cjs/transformers/webhook.cjs +1 -1
  70. package/dist/cjs/transformers/widget.cjs +7 -15
  71. package/dist/cjs/transformers.cjs +165 -142
  72. package/dist/esm/bot.js +2 -2
  73. package/dist/esm/commandOptionsParser.js +1 -1
  74. package/dist/esm/constants.js +2 -2
  75. package/dist/esm/desiredProperties.js +108 -1
  76. package/dist/esm/events.js +1 -1
  77. package/dist/esm/handlers/channels/THREAD_MEMBERS_UPDATE.js +4 -2
  78. package/dist/esm/handlers/channels/THREAD_MEMBER_UPDATE.js +4 -2
  79. package/dist/esm/handlers/guilds/GUILD_DELETE.js +6 -8
  80. package/dist/esm/handlers/guilds/index.js +2 -2
  81. package/dist/esm/handlers/index.js +3 -3
  82. package/dist/esm/handlers/members/GUILD_MEMBER_ADD.js +2 -2
  83. package/dist/esm/handlers/messages/MESSAGE_REACTION_ADD.js +2 -1
  84. package/dist/esm/handlers/messages/MESSAGE_REACTION_REMOVE.js +2 -1
  85. package/dist/esm/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.js +2 -1
  86. package/dist/esm/handlers/messages/index.js +3 -3
  87. package/dist/esm/handlers/soundboard/index.js +3 -3
  88. package/dist/esm/handlers/voice/index.js +2 -2
  89. package/dist/esm/helpers.js +52 -34
  90. package/dist/esm/index.js +3 -4
  91. package/dist/esm/transformers/activity.js +1 -1
  92. package/dist/esm/transformers/application.js +2 -1
  93. package/dist/esm/transformers/attachment.js +1 -1
  94. package/dist/esm/transformers/automodActionExecution.js +3 -3
  95. package/dist/esm/transformers/channel.js +5 -3
  96. package/dist/esm/transformers/component.js +170 -61
  97. package/dist/esm/transformers/emoji.js +1 -1
  98. package/dist/esm/transformers/entitlement.js +2 -2
  99. package/dist/esm/transformers/guild.js +9 -1
  100. package/dist/esm/transformers/incidentsData.js +11 -0
  101. package/dist/esm/transformers/index.js +6 -4
  102. package/dist/esm/transformers/interaction.js +32 -14
  103. package/dist/esm/transformers/invite.js +5 -4
  104. package/dist/esm/transformers/lobby.js +23 -0
  105. package/dist/esm/transformers/member.js +2 -2
  106. package/dist/esm/transformers/message.js +14 -2
  107. package/dist/esm/transformers/onboarding.js +2 -2
  108. package/dist/esm/transformers/poll.js +5 -4
  109. package/dist/esm/transformers/presence.js +1 -1
  110. package/dist/esm/transformers/reverse/application.js +1 -1
  111. package/dist/esm/transformers/reverse/attachment.js +15 -14
  112. package/dist/esm/transformers/reverse/component.js +90 -12
  113. package/dist/esm/transformers/reverse/emoji.js +3 -3
  114. package/dist/esm/transformers/reverse/index.js +1 -2
  115. package/dist/esm/transformers/reverse/member.js +34 -32
  116. package/dist/esm/transformers/reverse/presence.js +1 -1
  117. package/dist/esm/transformers/reverse/team.js +1 -1
  118. package/dist/esm/transformers/role.js +11 -2
  119. package/dist/esm/transformers/scheduledEvent.js +1 -1
  120. package/dist/esm/transformers/sku.js +1 -1
  121. package/dist/esm/transformers/soundboardSound.js +1 -1
  122. package/dist/esm/transformers/stageInstance.js +1 -1
  123. package/dist/esm/transformers/stageInviteInstance.js +1 -1
  124. package/dist/esm/transformers/sticker.js +1 -1
  125. package/dist/esm/transformers/subscription.js +2 -2
  126. package/dist/esm/transformers/team.js +1 -1
  127. package/dist/esm/transformers/template.js +1 -1
  128. package/dist/esm/transformers/threadMember.js +5 -4
  129. package/dist/esm/transformers/toggles/Permissions.js +1 -1
  130. package/dist/esm/transformers/toggles/ToggleBitfield.js +1 -1
  131. package/dist/esm/transformers/toggles/channel.js +1 -1
  132. package/dist/esm/transformers/toggles/emoji.js +1 -1
  133. package/dist/esm/transformers/toggles/guild.js +21 -4
  134. package/dist/esm/transformers/toggles/member.js +8 -2
  135. package/dist/esm/transformers/toggles/role.js +1 -1
  136. package/dist/esm/transformers/toggles/user.js +1 -1
  137. package/dist/esm/transformers/toggles/voice.js +1 -1
  138. package/dist/esm/transformers/types.js +2 -2
  139. package/dist/esm/transformers/user.js +27 -1
  140. package/dist/esm/transformers/voiceState.js +1 -1
  141. package/dist/esm/transformers/webhook.js +1 -1
  142. package/dist/esm/transformers/widget.js +7 -15
  143. package/dist/esm/transformers.js +167 -144
  144. package/dist/types/bot.d.ts +0 -2
  145. package/dist/types/bot.d.ts.map +1 -1
  146. package/dist/types/commandOptionsParser.d.ts +11 -2
  147. package/dist/types/commandOptionsParser.d.ts.map +1 -1
  148. package/dist/types/constants.d.ts.map +1 -1
  149. package/dist/types/desiredProperties.d.ts +21 -5
  150. package/dist/types/desiredProperties.d.ts.map +1 -1
  151. package/dist/types/events.d.ts +6 -2
  152. package/dist/types/events.d.ts.map +1 -1
  153. package/dist/types/handlers/channels/THREAD_MEMBER_UPDATE.d.ts.map +1 -1
  154. package/dist/types/handlers/guilds/GUILD_DELETE.d.ts.map +1 -1
  155. package/dist/types/handlers/guilds/index.d.ts +1 -1
  156. package/dist/types/handlers/guilds/index.d.ts.map +1 -1
  157. package/dist/types/handlers/index.d.ts +2 -2
  158. package/dist/types/handlers/index.d.ts.map +1 -1
  159. package/dist/types/handlers/members/GUILD_MEMBER_ADD.d.ts +2 -2
  160. package/dist/types/handlers/members/GUILD_MEMBER_ADD.d.ts.map +1 -1
  161. package/dist/types/handlers/messages/MESSAGE_REACTION_ADD.d.ts.map +1 -1
  162. package/dist/types/handlers/messages/MESSAGE_REACTION_REMOVE.d.ts.map +1 -1
  163. package/dist/types/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.d.ts.map +1 -1
  164. package/dist/types/handlers/messages/index.d.ts +2 -2
  165. package/dist/types/handlers/messages/index.d.ts.map +1 -1
  166. package/dist/types/handlers/soundboard/index.d.ts +2 -2
  167. package/dist/types/handlers/soundboard/index.d.ts.map +1 -1
  168. package/dist/types/handlers/voice/index.d.ts +1 -1
  169. package/dist/types/handlers/voice/index.d.ts.map +1 -1
  170. package/dist/types/helpers.d.ts +29 -21
  171. package/dist/types/helpers.d.ts.map +1 -1
  172. package/dist/types/index.d.ts +2 -3
  173. package/dist/types/index.d.ts.map +1 -1
  174. package/dist/types/transformers/activity.d.ts +3 -3
  175. package/dist/types/transformers/activity.d.ts.map +1 -1
  176. package/dist/types/transformers/application.d.ts.map +1 -1
  177. package/dist/types/transformers/attachment.d.ts +2 -2
  178. package/dist/types/transformers/attachment.d.ts.map +1 -1
  179. package/dist/types/transformers/automodActionExecution.d.ts.map +1 -1
  180. package/dist/types/transformers/channel.d.ts +5 -5
  181. package/dist/types/transformers/channel.d.ts.map +1 -1
  182. package/dist/types/transformers/component.d.ts +3 -1
  183. package/dist/types/transformers/component.d.ts.map +1 -1
  184. package/dist/types/transformers/emoji.d.ts +4 -4
  185. package/dist/types/transformers/emoji.d.ts.map +1 -1
  186. package/dist/types/transformers/entitlement.d.ts +2 -2
  187. package/dist/types/transformers/entitlement.d.ts.map +1 -1
  188. package/dist/types/transformers/guild.d.ts +4 -4
  189. package/dist/types/transformers/guild.d.ts.map +1 -1
  190. package/dist/types/transformers/incidentsData.d.ts +4 -0
  191. package/dist/types/transformers/incidentsData.d.ts.map +1 -0
  192. package/dist/types/transformers/index.d.ts +5 -3
  193. package/dist/types/transformers/index.d.ts.map +1 -1
  194. package/dist/types/transformers/interaction.d.ts +11 -11
  195. package/dist/types/transformers/interaction.d.ts.map +1 -1
  196. package/dist/types/transformers/invite.d.ts +3 -3
  197. package/dist/types/transformers/invite.d.ts.map +1 -1
  198. package/dist/types/transformers/lobby.d.ts +5 -0
  199. package/dist/types/transformers/lobby.d.ts.map +1 -0
  200. package/dist/types/transformers/member.d.ts +4 -3
  201. package/dist/types/transformers/member.d.ts.map +1 -1
  202. package/dist/types/transformers/message.d.ts +10 -9
  203. package/dist/types/transformers/message.d.ts.map +1 -1
  204. package/dist/types/transformers/onboarding.d.ts +4 -4
  205. package/dist/types/transformers/onboarding.d.ts.map +1 -1
  206. package/dist/types/transformers/poll.d.ts +3 -3
  207. package/dist/types/transformers/poll.d.ts.map +1 -1
  208. package/dist/types/transformers/presence.d.ts +2 -2
  209. package/dist/types/transformers/presence.d.ts.map +1 -1
  210. package/dist/types/transformers/reverse/application.d.ts +2 -2
  211. package/dist/types/transformers/reverse/application.d.ts.map +1 -1
  212. package/dist/types/transformers/reverse/attachment.d.ts +2 -2
  213. package/dist/types/transformers/reverse/attachment.d.ts.map +1 -1
  214. package/dist/types/transformers/reverse/component.d.ts +3 -1
  215. package/dist/types/transformers/reverse/component.d.ts.map +1 -1
  216. package/dist/types/transformers/reverse/emoji.d.ts +2 -2
  217. package/dist/types/transformers/reverse/emoji.d.ts.map +1 -1
  218. package/dist/types/transformers/reverse/index.d.ts +0 -1
  219. package/dist/types/transformers/reverse/index.d.ts.map +1 -1
  220. package/dist/types/transformers/reverse/member.d.ts +3 -4
  221. package/dist/types/transformers/reverse/member.d.ts.map +1 -1
  222. package/dist/types/transformers/reverse/presence.d.ts +2 -2
  223. package/dist/types/transformers/reverse/presence.d.ts.map +1 -1
  224. package/dist/types/transformers/reverse/team.d.ts +2 -2
  225. package/dist/types/transformers/reverse/team.d.ts.map +1 -1
  226. package/dist/types/transformers/role.d.ts +6 -5
  227. package/dist/types/transformers/role.d.ts.map +1 -1
  228. package/dist/types/transformers/scheduledEvent.d.ts +3 -3
  229. package/dist/types/transformers/scheduledEvent.d.ts.map +1 -1
  230. package/dist/types/transformers/sku.d.ts +2 -2
  231. package/dist/types/transformers/sku.d.ts.map +1 -1
  232. package/dist/types/transformers/soundboardSound.d.ts +2 -2
  233. package/dist/types/transformers/soundboardSound.d.ts.map +1 -1
  234. package/dist/types/transformers/stageInstance.d.ts +2 -2
  235. package/dist/types/transformers/stageInstance.d.ts.map +1 -1
  236. package/dist/types/transformers/stageInviteInstance.d.ts +3 -3
  237. package/dist/types/transformers/stageInviteInstance.d.ts.map +1 -1
  238. package/dist/types/transformers/sticker.d.ts +3 -3
  239. package/dist/types/transformers/sticker.d.ts.map +1 -1
  240. package/dist/types/transformers/subscription.d.ts +2 -2
  241. package/dist/types/transformers/subscription.d.ts.map +1 -1
  242. package/dist/types/transformers/team.d.ts +2 -2
  243. package/dist/types/transformers/team.d.ts.map +1 -1
  244. package/dist/types/transformers/template.d.ts +2 -2
  245. package/dist/types/transformers/template.d.ts.map +1 -1
  246. package/dist/types/transformers/threadMember.d.ts +11 -2
  247. package/dist/types/transformers/threadMember.d.ts.map +1 -1
  248. package/dist/types/transformers/toggles/guild.d.ts +13 -1
  249. package/dist/types/transformers/toggles/guild.d.ts.map +1 -1
  250. package/dist/types/transformers/toggles/member.d.ts +4 -0
  251. package/dist/types/transformers/toggles/member.d.ts.map +1 -1
  252. package/dist/types/transformers/types.d.ts +171 -18
  253. package/dist/types/transformers/types.d.ts.map +1 -1
  254. package/dist/types/transformers/user.d.ts +7 -4
  255. package/dist/types/transformers/user.d.ts.map +1 -1
  256. package/dist/types/transformers/voiceState.d.ts +3 -3
  257. package/dist/types/transformers/voiceState.d.ts.map +1 -1
  258. package/dist/types/transformers/webhook.d.ts +2 -2
  259. package/dist/types/transformers/webhook.d.ts.map +1 -1
  260. package/dist/types/transformers/widget.d.ts +1 -1
  261. package/dist/types/transformers/widget.d.ts.map +1 -1
  262. package/dist/types/transformers.d.ts +30 -9
  263. package/dist/types/transformers.d.ts.map +1 -1
  264. package/package.json +27 -22
  265. package/dist/cjs/transformers/reverse/createApplicationCommand.cjs +0 -36
  266. package/dist/cjs/utils.cjs +0 -32
  267. package/dist/esm/transformers/reverse/createApplicationCommand.js +0 -26
  268. package/dist/esm/utils.js +0 -11
  269. package/dist/types/transformers/reverse/createApplicationCommand.d.ts +0 -3
  270. package/dist/types/transformers/reverse/createApplicationCommand.d.ts.map +0 -1
  271. package/dist/types/utils.d.ts +0 -5
  272. package/dist/types/utils.d.ts.map +0 -1
@@ -5,23 +5,26 @@ Object.defineProperty(exports, "__esModule", {
5
5
  function _export(target, all) {
6
6
  for(var name in all)Object.defineProperty(target, name, {
7
7
  enumerable: true,
8
- get: all[name]
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- baseMessage: function() {
12
+ get baseMessage () {
13
13
  return baseMessage;
14
14
  },
15
- transformMessage: function() {
15
+ get transformMessage () {
16
16
  return transformMessage;
17
17
  },
18
- transformMessageCall: function() {
18
+ get transformMessageCall () {
19
19
  return transformMessageCall;
20
20
  },
21
- transformMessageInteractionMetadata: function() {
21
+ get transformMessageInteractionMetadata () {
22
22
  return transformMessageInteractionMetadata;
23
23
  },
24
- transformMessageSnapshot: function() {
24
+ get transformMessagePin () {
25
+ return transformMessagePin;
26
+ },
27
+ get transformMessageSnapshot () {
25
28
  return transformMessageSnapshot;
26
29
  }
27
30
  });
@@ -187,7 +190,8 @@ function transformMessage(bot, payload) {
187
190
  }
188
191
  message.interaction = interaction;
189
192
  }
190
- if (props.member && guildId && userId && payload.message.member) message.member = bot.transformers.member(bot, payload.message.member, guildId, userId);
193
+ if (props.member && guildId && userId && payload.message.member) // @ts-expect-error TODO: partial
194
+ message.member = bot.transformers.member(bot, payload.message.member, guildId, userId);
191
195
  if (payload.message.mention_everyone) message.mentionEveryone = true;
192
196
  if (props.mentionedChannelIds && payload.message.mention_channels?.length) {
193
197
  message.mentionedChannelIds = [
@@ -233,6 +237,7 @@ function transformMessage(bot, payload) {
233
237
  burst: reaction.count_details.burst,
234
238
  normal: reaction.count_details.normal
235
239
  },
240
+ // @ts-expect-error TODO: Deal with partials
236
241
  emoji: bot.transformers.emoji(bot, reaction.emoji),
237
242
  burstColors: reaction.burst_colors
238
243
  }));
@@ -253,6 +258,16 @@ function transformMessage(bot, payload) {
253
258
  if (props.call && payload.message.call) message.call = bot.transformers.messageCall(bot, payload.message.call);
254
259
  return bot.transformers.customizers.message(bot, payload.message, message);
255
260
  }
261
+ function transformMessagePin(bot, payload) {
262
+ const props = bot.transformers.desiredProperties.messagePin;
263
+ const messagePin = {};
264
+ if (props.pinnedAt && payload.pinned_at) messagePin.pinnedAt = Date.parse(payload.pinned_at);
265
+ if (props.message && payload.message) messagePin.message = bot.transformers.message(bot, {
266
+ message: payload.message,
267
+ shardId: 0
268
+ });
269
+ return bot.transformers.customizers.messagePin(bot, payload, messagePin);
270
+ }
256
271
  function transformMessageSnapshot(bot, payload) {
257
272
  const props = bot.transformers.desiredProperties.messageSnapshot;
258
273
  const messageSnapshot = {};
@@ -297,4 +312,4 @@ function transformMessageCall(bot, payload) {
297
312
  return bot.transformers.customizers.messageCall(bot, payload, call);
298
313
  }
299
314
 
300
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvbWVzc2FnZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICB0eXBlIERpc2NvcmRBcHBsaWNhdGlvbixcbiAgRGlzY29yZEFwcGxpY2F0aW9uSW50ZWdyYXRpb25UeXBlLFxuICB0eXBlIERpc2NvcmRNZXNzYWdlLFxuICB0eXBlIERpc2NvcmRNZXNzYWdlQ2FsbCxcbiAgdHlwZSBEaXNjb3JkTWVzc2FnZUludGVyYWN0aW9uTWV0YWRhdGEsXG4gIHR5cGUgRGlzY29yZE1lc3NhZ2VTbmFwc2hvdCxcbiAgTWVzc2FnZUZsYWdzLFxufSBmcm9tICdAZGlzY29yZGVuby90eXBlcydcbmltcG9ydCB7IENIQU5ORUxfTUVOVElPTl9SRUdFWCB9IGZyb20gJy4uL2NvbnN0YW50cy5qcydcbmltcG9ydCB7XG4gIHR5cGUgSW50ZXJuYWxCb3QsXG4gIHR5cGUgTWVzc2FnZSxcbiAgdHlwZSBNZXNzYWdlQ2FsbCxcbiAgdHlwZSBNZXNzYWdlSW50ZXJhY3Rpb25NZXRhZGF0YSxcbiAgdHlwZSBNZXNzYWdlU25hcHNob3QsXG4gIHNub3dmbGFrZVRvVGltZXN0YW1wLFxufSBmcm9tICcuLi9pbmRleC5qcydcbmltcG9ydCB7IFRvZ2dsZUJpdGZpZWxkIH0gZnJvbSAnLi90b2dnbGVzL1RvZ2dsZUJpdGZpZWxkLmpzJ1xuXG5jb25zdCBFTVBUWV9TVFJJTkcgPSAnJ1xuXG5leHBvcnQgY29uc3QgYmFzZU1lc3NhZ2U6IEludGVybmFsQm90Wyd0cmFuc2Zvcm1lcnMnXVsnJGluZmVycmVkVHlwZXMnXVsnbWVzc2FnZSddID0ge1xuICAvLyBUaGlzIGFsbG93cyB0eXBlc2NyaXB0IHRvIHN0aWxsIGNoZWNrIGZvciB0eXBlIGVycm9ycyBvbiBmdW5jdGlvbnMgYmVsb3dcbiAgLi4uKHVuZGVmaW5lZCBhcyB1bmtub3duIGFzIEludGVybmFsQm90Wyd0cmFuc2Zvcm1lcnMnXVsnJGluZmVycmVkVHlwZXMnXVsnbWVzc2FnZSddKSxcblxuICBnZXQgY3Jvc3Nwb3N0ZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZmxhZ3M/LmNvbnRhaW5zKE1lc3NhZ2VGbGFncy5Dcm9zc3Bvc3RlZCkgPz8gZmFsc2VcbiAgfSxcbiAgc2V0IGNyb3NzcG9zdGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKCF0aGlzLmZsYWdzKSByZXR1cm5cbiAgICBpZiAodmFsdWUpIHRoaXMuZmxhZ3MuYWRkKE1lc3NhZ2VGbGFncy5Dcm9zc3Bvc3RlZClcbiAgICBlbHNlIHRoaXMuZmxhZ3MucmVtb3ZlKE1lc3NhZ2VGbGFncy5Dcm9zc3Bvc3RlZClcbiAgfSxcbiAgZ2V0IGVwaGVtZXJhbCgpIHtcbiAgICByZXR1cm4gdGhpcy5mbGFncz8uY29udGFpbnMoTWVzc2FnZUZsYWdzLkVwaGVtZXJhbCkgPz8gZmFsc2VcbiAgfSxcbiAgc2V0IGVwaGVtZXJhbCh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICghdGhpcy5mbGFncykgcmV0dXJuXG4gICAgaWYgKHZhbHVlKSB0aGlzLmZsYWdzLmFkZChNZXNzYWdlRmxhZ3MuRXBoZW1lcmFsKVxuICAgIGVsc2UgdGhpcy5mbGFncy5yZW1vdmUoTWVzc2FnZUZsYWdzLkVwaGVtZXJhbClcbiAgfSxcbiAgZ2V0IGZhaWxlZFRvTWVudGlvblNvbWVSb2xlc0luVGhyZWFkKCkge1xuICAgIHJldHVybiB0aGlzLmZsYWdzPy5jb250YWlucyhNZXNzYWdlRmxhZ3MuRmFpbGVkVG9NZW50aW9uU29tZVJvbGVzSW5UaHJlYWQpID8/IGZhbHNlXG4gIH0sXG4gIHNldCBmYWlsZWRUb01lbnRpb25Tb21lUm9sZXNJblRocmVhZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICghdGhpcy5mbGFncykgcmV0dXJuXG4gICAgaWYgKHZhbHVlKSB0aGlzLmZsYWdzLmFkZChNZXNzYWdlRmxhZ3MuRmFpbGVkVG9NZW50aW9uU29tZVJvbGVzSW5UaHJlYWQpXG4gICAgZWxzZSB0aGlzLmZsYWdzLnJlbW92ZShNZXNzYWdlRmxhZ3MuRmFpbGVkVG9NZW50aW9uU29tZVJvbGVzSW5UaHJlYWQpXG4gIH0sXG4gIGdldCBoYXNUaHJlYWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZmxhZ3M/LmNvbnRhaW5zKE1lc3NhZ2VGbGFncy5IYXNUaHJlYWQpID8/IGZhbHNlXG4gIH0sXG4gIHNldCBoYXNUaHJlYWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBpZiAoIXRoaXMuZmxhZ3MpIHJldHVyblxuICAgIGlmICh2YWx1ZSkgdGhpcy5mbGFncy5hZGQoTWVzc2FnZUZsYWdzLkhhc1RocmVhZClcbiAgICBlbHNlIHRoaXMuZmxhZ3MucmVtb3ZlKE1lc3NhZ2VGbGFncy5IYXNUaHJlYWQpXG4gIH0sXG4gIGdldCBpc0Nyb3NzcG9zdCgpIHtcbiAgICByZXR1cm4gdGhpcy5mbGFncz8uY29udGFpbnMoTWVzc2FnZUZsYWdzLklzQ3Jvc3Nwb3N0KSA/PyBmYWxzZVxuICB9LFxuICBzZXQgaXNDcm9zc3Bvc3QodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBpZiAoIXRoaXMuZmxhZ3MpIHJldHVyblxuICAgIGlmICh2YWx1ZSkgdGhpcy5mbGFncy5hZGQoTWVzc2FnZUZsYWdzLklzQ3Jvc3Nwb3N0KVxuICAgIGVsc2UgdGhpcy5mbGFncy5yZW1vdmUoTWVzc2FnZUZsYWdzLklzQ3Jvc3Nwb3N0KVxuICB9LFxuICBnZXQgbG9hZGluZygpIHtcbiAgICByZXR1cm4gdGhpcy5mbGFncz8uY29udGFpbnMoTWVzc2FnZUZsYWdzLkxvYWRpbmcpID8/IGZhbHNlXG4gIH0sXG4gIHNldCBsb2FkaW5nKHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKCF0aGlzLmZsYWdzKSByZXR1cm5cbiAgICBpZiAodmFsdWUpIHRoaXMuZmxhZ3MuYWRkKE1lc3NhZ2VGbGFncy5Mb2FkaW5nKVxuICAgIGVsc2UgdGhpcy5mbGFncy5yZW1vdmUoTWVzc2FnZUZsYWdzLkxvYWRpbmcpXG4gIH0sXG4gIGdldCBtZW50aW9uZWRVc2VySWRzKCkge1xuICAgIHJldHVybiB0aGlzLm1lbnRpb25zPy5tYXAoKHVzZXIpID0+IHVzZXIuaWQpID8/IFtdXG4gIH0sXG4gIGdldCBtZW50aW9uRXZlcnlvbmUoKSB7XG4gICAgcmV0dXJuIHRoaXMuYml0ZmllbGQ/LmNvbnRhaW5zKDIpID8/IGZhbHNlXG4gIH0sXG4gIHNldCBtZW50aW9uRXZlcnlvbmUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBpZiAoIXRoaXMuYml0ZmllbGQpIHJldHVyblxuICAgIGlmICh2YWx1ZSkgdGhpcy5iaXRmaWVsZC5hZGQoMilcbiAgICBlbHNlIHRoaXMuYml0ZmllbGQucmVtb3ZlKDIpXG4gIH0sXG4gIGdldCBwaW5uZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuYml0ZmllbGQ/LmNvbnRhaW5zKDMpID8/IGZhbHNlXG4gIH0sXG4gIHNldCBwaW5uZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBpZiAoIXRoaXMuYml0ZmllbGQpIHJldHVyblxuICAgIGlmICh2YWx1ZSkgdGhpcy5iaXRmaWVsZC5hZGQoMylcbiAgICBlbHNlIHRoaXMuYml0ZmllbGQucmVtb3ZlKDMpXG4gIH0sXG4gIGdldCBzb3VyY2VNZXNzYWdlRGVsZXRlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5mbGFncz8uY29udGFpbnMoTWVzc2FnZUZsYWdzLlNvdXJjZU1lc3NhZ2VEZWxldGVkKSA/PyBmYWxzZVxuICB9LFxuICBzZXQgc291cmNlTWVzc2FnZURlbGV0ZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBpZiAoIXRoaXMuZmxhZ3MpIHJldHVyblxuICAgIGlmICh2YWx1ZSkgdGhpcy5mbGFncy5hZGQoTWVzc2FnZUZsYWdzLlNvdXJjZU1lc3NhZ2VEZWxldGVkKVxuICAgIGVsc2UgdGhpcy5mbGFncy5yZW1vdmUoTWVzc2FnZUZsYWdzLlNvdXJjZU1lc3NhZ2VEZWxldGVkKVxuICB9LFxuICBnZXQgc3VwcHJlc3NFbWJlZHMoKSB7XG4gICAgcmV0dXJuIHRoaXMuZmxhZ3M/LmNvbnRhaW5zKE1lc3NhZ2VGbGFncy5TdXBwcmVzc0VtYmVkcykgPz8gZmFsc2VcbiAgfSxcbiAgc2V0IHN1cHByZXNzRW1iZWRzKHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKCF0aGlzLmZsYWdzKSByZXR1cm5cbiAgICBpZiAodmFsdWUpIHRoaXMuZmxhZ3MuYWRkKE1lc3NhZ2VGbGFncy5TdXBwcmVzc0VtYmVkcylcbiAgICBlbHNlIHRoaXMuZmxhZ3MucmVtb3ZlKE1lc3NhZ2VGbGFncy5TdXBwcmVzc0VtYmVkcylcbiAgfSxcbiAgZ2V0IHN1cHByZXNzTm90aWZpY2F0aW9ucygpIHtcbiAgICByZXR1cm4gdGhpcy5mbGFncz8uY29udGFpbnMoTWVzc2FnZUZsYWdzLlN1cHByZXNzTm90aWZpY2F0aW9ucykgPz8gZmFsc2VcbiAgfSxcbiAgc2V0IHN1cHByZXNzTm90aWZpY2F0aW9ucyh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICghdGhpcy5mbGFncykgcmV0dXJuXG4gICAgaWYgKHZhbHVlKSB0aGlzLmZsYWdzLmFkZChNZXNzYWdlRmxhZ3MuU3VwcHJlc3NOb3RpZmljYXRpb25zKVxuICAgIGVsc2UgdGhpcy5mbGFncy5yZW1vdmUoTWVzc2FnZUZsYWdzLlN1cHByZXNzTm90aWZpY2F0aW9ucylcbiAgfSxcbiAgZ2V0IHRpbWVzdGFtcCgpIHtcbiAgICByZXR1cm4gdGhpcy5pZCA/IHNub3dmbGFrZVRvVGltZXN0YW1wKHRoaXMuaWQpIDogMFxuICB9LFxuICBnZXQgdHRzKCkge1xuICAgIHJldHVybiB0aGlzLmJpdGZpZWxkPy5jb250YWlucygxKSA/PyBmYWxzZVxuICB9LFxuICBzZXQgdHRzKHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKCF0aGlzLmJpdGZpZWxkKSByZXR1cm5cbiAgICBpZiAodmFsdWUpIHRoaXMuYml0ZmllbGQuYWRkKDEpXG4gICAgZWxzZSB0aGlzLmJpdGZpZWxkLnJlbW92ZSgxKVxuICB9LFxuICBnZXQgdXJnZW50KCkge1xuICAgIHJldHVybiB0aGlzLmZsYWdzPy5jb250YWlucyhNZXNzYWdlRmxhZ3MuVXJnZW50KSA/PyBmYWxzZVxuICB9LFxuICBzZXQgdXJnZW50KHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKCF0aGlzLmZsYWdzKSByZXR1cm5cbiAgICBpZiAodmFsdWUpIHRoaXMuZmxhZ3MuYWRkKE1lc3NhZ2VGbGFncy5VcmdlbnQpXG4gICAgZWxzZSB0aGlzLmZsYWdzLnJlbW92ZShNZXNzYWdlRmxhZ3MuVXJnZW50KVxuICB9LFxufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtTWVzc2FnZShcbiAgYm90OiBJbnRlcm5hbEJvdCxcbiAgcGF5bG9hZDogeyBtZXNzYWdlOiBEaXNjb3JkTWVzc2FnZTsgc2hhcmRJZDogbnVtYmVyIH0sXG4pOiB0eXBlb2YgYm90LnRyYW5zZm9ybWVycy4kaW5mZXJyZWRUeXBlcy5tZXNzYWdlIHtcbiAgY29uc3QgZ3VpbGRJZCA9IHBheWxvYWQubWVzc2FnZS5ndWlsZF9pZCA/IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQubWVzc2FnZS5ndWlsZF9pZCkgOiB1bmRlZmluZWRcbiAgY29uc3QgdXNlcklkID0gcGF5bG9hZC5tZXNzYWdlLmF1dGhvcj8uaWQgPyBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLm1lc3NhZ2UuYXV0aG9yLmlkKSA6IHVuZGVmaW5lZFxuXG4gIGNvbnN0IG1lc3NhZ2U6IE1lc3NhZ2UgPSBPYmplY3QuY3JlYXRlKGJhc2VNZXNzYWdlKVxuICBtZXNzYWdlLmJpdGZpZWxkID0gbmV3IFRvZ2dsZUJpdGZpZWxkKClcbiAgbWVzc2FnZS5mbGFncyA9IG5ldyBUb2dnbGVCaXRmaWVsZChwYXlsb2FkLm1lc3NhZ2UuZmxhZ3MpXG5cbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLm1lc3NhZ2VcblxuICBpZiAocHJvcHMuYXV0aG9yICYmIHBheWxvYWQubWVzc2FnZS5hdXRob3IpIG1lc3NhZ2UuYXV0aG9yID0gYm90LnRyYW5zZm9ybWVycy51c2VyKGJvdCwgcGF5bG9hZC5tZXNzYWdlLmF1dGhvcilcbiAgaWYgKHByb3BzLmFwcGxpY2F0aW9uICYmIHBheWxvYWQubWVzc2FnZS5hcHBsaWNhdGlvbilcbiAgICBtZXNzYWdlLmFwcGxpY2F0aW9uID0gYm90LnRyYW5zZm9ybWVycy5hcHBsaWNhdGlvbihib3QsIHtcbiAgICAgIGFwcGxpY2F0aW9uOiBwYXlsb2FkLm1lc3NhZ2UuYXBwbGljYXRpb24gYXMgRGlzY29yZEFwcGxpY2F0aW9uLFxuICAgICAgc2hhcmRJZDogcGF5bG9hZC5zaGFyZElkLFxuICAgIH0pXG4gIGlmIChwcm9wcy5hcHBsaWNhdGlvbklkICYmIHBheWxvYWQubWVzc2FnZS5hcHBsaWNhdGlvbl9pZCkgbWVzc2FnZS5hcHBsaWNhdGlvbklkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5tZXNzYWdlLmFwcGxpY2F0aW9uX2lkKVxuICBpZiAocHJvcHMuYXR0YWNobWVudHMgJiYgcGF5bG9hZC5tZXNzYWdlLmF0dGFjaG1lbnRzPy5sZW5ndGgpXG4gICAgbWVzc2FnZS5hdHRhY2htZW50cyA9IHBheWxvYWQubWVzc2FnZS5hdHRhY2htZW50cy5tYXAoKGF0dGFjaG1lbnQpID0+IGJvdC50cmFuc2Zvcm1lcnMuYXR0YWNobWVudChib3QsIGF0dGFjaG1lbnQpKVxuICBpZiAocHJvcHMuY2hhbm5lbElkICYmIHBheWxvYWQubWVzc2FnZS5jaGFubmVsX2lkKSBtZXNzYWdlLmNoYW5uZWxJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQubWVzc2FnZS5jaGFubmVsX2lkKVxuICBpZiAocHJvcHMuY29tcG9uZW50cyAmJiBwYXlsb2FkLm1lc3NhZ2UuY29tcG9uZW50cz8ubGVuZ3RoKVxuICAgIG1lc3NhZ2UuY29tcG9uZW50cyA9IHBheWxvYWQubWVzc2FnZS5jb21wb25lbnRzLm1hcCgoY29tcCkgPT4gYm90LnRyYW5zZm9ybWVycy5jb21wb25lbnQoYm90LCBjb21wKSlcbiAgaWYgKHByb3BzLmNvbnRlbnQpIG1lc3NhZ2UuY29udGVudCA9IHBheWxvYWQubWVzc2FnZS5jb250ZW50ID8/IEVNUFRZX1NUUklOR1xuICBpZiAocHJvcHMuZWRpdGVkVGltZXN0YW1wICYmIHBheWxvYWQubWVzc2FnZS5lZGl0ZWRfdGltZXN0YW1wKSBtZXNzYWdlLmVkaXRlZFRpbWVzdGFtcCA9IERhdGUucGFyc2UocGF5bG9hZC5tZXNzYWdlLmVkaXRlZF90aW1lc3RhbXApXG4gIGlmIChwcm9wcy5lbWJlZHMgJiYgcGF5bG9hZC5tZXNzYWdlLmVtYmVkcz8ubGVuZ3RoKSBtZXNzYWdlLmVtYmVkcyA9IHBheWxvYWQubWVzc2FnZS5lbWJlZHMubWFwKChlbWJlZCkgPT4gYm90LnRyYW5zZm9ybWVycy5lbWJlZChib3QsIGVtYmVkKSlcbiAgaWYgKHByb3BzLmd1aWxkSWQgJiYgZ3VpbGRJZCkgbWVzc2FnZS5ndWlsZElkID0gZ3VpbGRJZFxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5tZXNzYWdlLmlkKSBtZXNzYWdlLmlkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5tZXNzYWdlLmlkKVxuICBpZiAocHJvcHMuaW50ZXJhY3Rpb25NZXRhZGF0YSAmJiBwYXlsb2FkLm1lc3NhZ2UuaW50ZXJhY3Rpb25fbWV0YWRhdGEpXG4gICAgbWVzc2FnZS5pbnRlcmFjdGlvbk1ldGFkYXRhID0gYm90LnRyYW5zZm9ybWVycy5tZXNzYWdlSW50ZXJhY3Rpb25NZXRhZGF0YShib3QsIHBheWxvYWQubWVzc2FnZS5pbnRlcmFjdGlvbl9tZXRhZGF0YSlcbiAgaWYgKHByb3BzLmludGVyYWN0aW9uICYmIHBheWxvYWQubWVzc2FnZS5pbnRlcmFjdGlvbikge1xuICAgIGNvbnN0IGludGVyYWN0aW9uID0ge30gYXMgTm9uTnVsbGFibGU8TWVzc2FnZVsnaW50ZXJhY3Rpb24nXT5cbiAgICBjb25zdCBtZXNzYWdlSW50ZXJhY3Rpb25Qcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMubWVzc2FnZUludGVyYWN0aW9uXG5cbiAgICBpZiAobWVzc2FnZUludGVyYWN0aW9uUHJvcHMuaWQpIHtcbiAgICAgIGludGVyYWN0aW9uLmlkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5tZXNzYWdlLmludGVyYWN0aW9uLmlkKVxuICAgIH1cbiAgICBpZiAobWVzc2FnZUludGVyYWN0aW9uUHJvcHMubWVtYmVyICYmIHBheWxvYWQubWVzc2FnZS5pbnRlcmFjdGlvbi5tZW1iZXIpIHtcbiAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgVE9ETzogcGFydGlhbCAtIGNoZWNrIHdoeSB0aGlzIGlzIHBhcnRpYWwgYW5kIGhhbmRsZSBhcyBuZWVkZWRcbiAgICAgIGludGVyYWN0aW9uLm1lbWJlciA9IGJvdC50cmFuc2Zvcm1lcnMubWVtYmVyKGJvdCwgcGF5bG9hZC5tZXNzYWdlLmludGVyYWN0aW9uLm1lbWJlciwgZ3VpbGRJZCwgcGF5bG9hZC5tZXNzYWdlLmludGVyYWN0aW9uLnVzZXIuaWQpXG4gICAgfVxuICAgIGlmIChtZXNzYWdlSW50ZXJhY3Rpb25Qcm9wcy5uYW1lKSB7XG4gICAgICBpbnRlcmFjdGlvbi5uYW1lID0gcGF5bG9hZC5tZXNzYWdlLmludGVyYWN0aW9uLm5hbWVcbiAgICB9XG4gICAgaWYgKG1lc3NhZ2VJbnRlcmFjdGlvblByb3BzLnR5cGUpIHtcbiAgICAgIGludGVyYWN0aW9uLnR5cGUgPSBwYXlsb2FkLm1lc3NhZ2UuaW50ZXJhY3Rpb24udHlwZVxuICAgIH1cbiAgICBpZiAobWVzc2FnZUludGVyYWN0aW9uUHJvcHMudXNlcikge1xuICAgICAgaW50ZXJhY3Rpb24udXNlciA9IGJvdC50cmFuc2Zvcm1lcnMudXNlcihib3QsIHBheWxvYWQubWVzc2FnZS5pbnRlcmFjdGlvbi51c2VyKVxuICAgIH1cblxuICAgIG1lc3NhZ2UuaW50ZXJhY3Rpb24gPSBpbnRlcmFjdGlvblxuICB9XG4gIGlmIChwcm9wcy5tZW1iZXIgJiYgZ3VpbGRJZCAmJiB1c2VySWQgJiYgcGF5bG9hZC5tZXNzYWdlLm1lbWJlcilcbiAgICBtZXNzYWdlLm1lbWJlciA9IGJvdC50cmFuc2Zvcm1lcnMubWVtYmVyKGJvdCwgcGF5bG9hZC5tZXNzYWdlLm1lbWJlciwgZ3VpbGRJZCwgdXNlcklkKVxuICBpZiAocGF5bG9hZC5tZXNzYWdlLm1lbnRpb25fZXZlcnlvbmUpIG1lc3NhZ2UubWVudGlvbkV2ZXJ5b25lID0gdHJ1ZVxuICBpZiAocHJvcHMubWVudGlvbmVkQ2hhbm5lbElkcyAmJiBwYXlsb2FkLm1lc3NhZ2UubWVudGlvbl9jaGFubmVscz8ubGVuZ3RoKSB7XG4gICAgbWVzc2FnZS5tZW50aW9uZWRDaGFubmVsSWRzID0gW1xuICAgICAgLy8gS2VlcCBhbnkgaWRzIHRodCBkaXNjb3JkIHNlbmRzXG4gICAgICAuLi4ocGF5bG9hZC5tZXNzYWdlLm1lbnRpb25fY2hhbm5lbHMgPz8gW10pLm1hcCgobSkgPT4gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UobS5pZCkpLFxuICAgICAgLy8gQWRkIGFueSBvdGhlciBpZHMgdGhhdCBjYW4gYmUgdmFsaWRhdGVkIGluIGEgY2hhbm5lbCBtZW50aW9uIGZvcm1hdFxuICAgICAgLi4uKHBheWxvYWQubWVzc2FnZS5jb250ZW50Py5tYXRjaChDSEFOTkVMX01FTlRJT05fUkVHRVgpID8/IFtdKS5tYXAoKHRleHQpID0+XG4gICAgICAgIC8vIGNvbnZlcnRzIHRoZSA8IzEyMz4gaW50byAxMjNcbiAgICAgICAgYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UodGV4dC5zdWJzdHJpbmcoMiwgdGV4dC5sZW5ndGggLSAxKSksXG4gICAgICApLFxuICAgIF1cbiAgfVxuICBpZiAocHJvcHMubWVudGlvbmVkUm9sZUlkcyAmJiBwYXlsb2FkLm1lc3NhZ2UubWVudGlvbl9yb2xlcz8ubGVuZ3RoKVxuICAgIG1lc3NhZ2UubWVudGlvbmVkUm9sZUlkcyA9IHBheWxvYWQubWVzc2FnZS5tZW50aW9uX3JvbGVzLm1hcCgoaWQpID0+IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKGlkKSlcbiAgaWYgKHByb3BzLm1lbnRpb25zICYmIHBheWxvYWQubWVzc2FnZS5tZW50aW9ucz8ubGVuZ3RoKSBtZXNzYWdlLm1lbnRpb25zID0gcGF5bG9hZC5tZXNzYWdlLm1lbnRpb25zLm1hcCgodXNlcikgPT4gYm90LnRyYW5zZm9ybWVycy51c2VyKGJvdCwgdXNlcikpXG4gIGlmIChwcm9wcy5tZXNzYWdlUmVmZXJlbmNlICYmIHBheWxvYWQubWVzc2FnZS5tZXNzYWdlX3JlZmVyZW5jZSkge1xuICAgIGNvbnN0IHJlZmVyZW5jZSA9IHt9IGFzIE5vbk51bGxhYmxlPE1lc3NhZ2VbJ21lc3NhZ2VSZWZlcmVuY2UnXT5cbiAgICBjb25zdCBtZXNzYWdlUmVmZXJlbmNlUHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLm1lc3NhZ2VSZWZlcmVuY2VcblxuICAgIGlmIChtZXNzYWdlUmVmZXJlbmNlUHJvcHMuY2hhbm5lbElkICYmIHBheWxvYWQubWVzc2FnZS5tZXNzYWdlX3JlZmVyZW5jZS5jaGFubmVsX2lkKSB7XG4gICAgICByZWZlcmVuY2UuY2hhbm5lbElkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5tZXNzYWdlLm1lc3NhZ2VfcmVmZXJlbmNlLmNoYW5uZWxfaWQpXG4gICAgfVxuICAgIGlmIChtZXNzYWdlUmVmZXJlbmNlUHJvcHMuZ3VpbGRJZCAmJiBwYXlsb2FkLm1lc3NhZ2UubWVzc2FnZV9yZWZlcmVuY2UuZ3VpbGRfaWQpIHtcbiAgICAgIHJlZmVyZW5jZS5ndWlsZElkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5tZXNzYWdlLm1lc3NhZ2VfcmVmZXJlbmNlLmd1aWxkX2lkKVxuICAgIH1cbiAgICBpZiAobWVzc2FnZVJlZmVyZW5jZVByb3BzLm1lc3NhZ2VJZCAmJiBwYXlsb2FkLm1lc3NhZ2UubWVzc2FnZV9yZWZlcmVuY2UubWVzc2FnZV9pZCkge1xuICAgICAgcmVmZXJlbmNlLm1lc3NhZ2VJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQubWVzc2FnZS5tZXNzYWdlX3JlZmVyZW5jZS5tZXNzYWdlX2lkKVxuICAgIH1cblxuICAgIG1lc3NhZ2UubWVzc2FnZVJlZmVyZW5jZSA9IHJlZmVyZW5jZVxuICB9XG4gIGlmIChwcm9wcy5yZWZlcmVuY2VkTWVzc2FnZSAmJiBwYXlsb2FkLm1lc3NhZ2UucmVmZXJlbmNlZF9tZXNzYWdlKVxuICAgIG1lc3NhZ2UucmVmZXJlbmNlZE1lc3NhZ2UgPSBib3QudHJhbnNmb3JtZXJzLm1lc3NhZ2UoYm90LCB7IG1lc3NhZ2U6IHBheWxvYWQubWVzc2FnZS5yZWZlcmVuY2VkX21lc3NhZ2UsIHNoYXJkSWQ6IHBheWxvYWQuc2hhcmRJZCB9KVxuICBpZiAocHJvcHMubWVzc2FnZVNuYXBzaG90cyAmJiBwYXlsb2FkLm1lc3NhZ2UubWVzc2FnZV9zbmFwc2hvdHMpXG4gICAgbWVzc2FnZS5tZXNzYWdlU25hcHNob3RzID0gcGF5bG9hZC5tZXNzYWdlLm1lc3NhZ2Vfc25hcHNob3RzLm1hcCgoc25hcCkgPT5cbiAgICAgIGJvdC50cmFuc2Zvcm1lcnMubWVzc2FnZVNuYXBzaG90KGJvdCwgeyBtZXNzYWdlU25hcHNob3Q6IHNuYXAsIHNoYXJkSWQ6IHBheWxvYWQuc2hhcmRJZCB9KSxcbiAgICApXG4gIGlmIChwcm9wcy5ub25jZSAmJiBwYXlsb2FkLm1lc3NhZ2Uubm9uY2UpIG1lc3NhZ2Uubm9uY2UgPSBwYXlsb2FkLm1lc3NhZ2Uubm9uY2VcbiAgaWYgKHBheWxvYWQubWVzc2FnZS5waW5uZWQpIG1lc3NhZ2UucGlubmVkID0gdHJ1ZVxuICBpZiAocHJvcHMucmVhY3Rpb25zICYmIHBheWxvYWQubWVzc2FnZS5yZWFjdGlvbnM/Lmxlbmd0aCkge1xuICAgIG1lc3NhZ2UucmVhY3Rpb25zID0gcGF5bG9hZC5tZXNzYWdlLnJlYWN0aW9ucy5tYXAoKHJlYWN0aW9uKSA9PiAoe1xuICAgICAgbWU6IHJlYWN0aW9uLm1lLFxuICAgICAgbWVCdXJzdDogcmVhY3Rpb24ubWVfYnVyc3QsXG4gICAgICBjb3VudDogcmVhY3Rpb24uY291bnQsXG4gICAgICBjb3VudERldGFpbHM6IHtcbiAgICAgICAgYnVyc3Q6IHJlYWN0aW9uLmNvdW50X2RldGFpbHMuYnVyc3QsXG4gICAgICAgIG5vcm1hbDogcmVhY3Rpb24uY291bnRfZGV0YWlscy5ub3JtYWwsXG4gICAgICB9LFxuICAgICAgZW1vamk6IGJvdC50cmFuc2Zvcm1lcnMuZW1vamkoYm90LCByZWFjdGlvbi5lbW9qaSksXG4gICAgICBidXJzdENvbG9yczogcmVhY3Rpb24uYnVyc3RfY29sb3JzLFxuICAgIH0pKVxuICB9XG4gIGlmIChwcm9wcy5zdGlja2VySXRlbXMgJiYgcGF5bG9hZC5tZXNzYWdlLnN0aWNrZXJfaXRlbXM/Lmxlbmd0aClcbiAgICBtZXNzYWdlLnN0aWNrZXJJdGVtcyA9IHBheWxvYWQubWVzc2FnZS5zdGlja2VyX2l0ZW1zLm1hcCgoaXRlbSkgPT4gKHtcbiAgICAgIGlkOiBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShpdGVtLmlkKSxcbiAgICAgIG5hbWU6IGl0ZW0ubmFtZSxcbiAgICAgIGZvcm1hdFR5cGU6IGl0ZW0uZm9ybWF0X3R5cGUsXG4gICAgfSkpXG4gIGlmIChwYXlsb2FkLm1lc3NhZ2UudHRzKSBtZXNzYWdlLnR0cyA9IHRydWVcbiAgaWYgKHByb3BzLnRocmVhZCAmJiBwYXlsb2FkLm1lc3NhZ2UudGhyZWFkKSBtZXNzYWdlLnRocmVhZCA9IGJvdC50cmFuc2Zvcm1lcnMuY2hhbm5lbChib3QsIHsgY2hhbm5lbDogcGF5bG9hZC5tZXNzYWdlLnRocmVhZCwgZ3VpbGRJZCB9KVxuICBpZiAocHJvcHMudHlwZSkgbWVzc2FnZS50eXBlID0gcGF5bG9hZC5tZXNzYWdlLnR5cGVcbiAgaWYgKHByb3BzLndlYmhvb2tJZCAmJiBwYXlsb2FkLm1lc3NhZ2Uud2ViaG9va19pZCkgbWVzc2FnZS53ZWJob29rSWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLm1lc3NhZ2Uud2ViaG9va19pZClcbiAgaWYgKHByb3BzLnBvbGwgJiYgcGF5bG9hZC5tZXNzYWdlLnBvbGwpIG1lc3NhZ2UucG9sbCA9IGJvdC50cmFuc2Zvcm1lcnMucG9sbChib3QsIHBheWxvYWQubWVzc2FnZS5wb2xsKVxuICBpZiAocHJvcHMuY2FsbCAmJiBwYXlsb2FkLm1lc3NhZ2UuY2FsbCkgbWVzc2FnZS5jYWxsID0gYm90LnRyYW5zZm9ybWVycy5tZXNzYWdlQ2FsbChib3QsIHBheWxvYWQubWVzc2FnZS5jYWxsKVxuXG4gIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmN1c3RvbWl6ZXJzLm1lc3NhZ2UoYm90LCBwYXlsb2FkLm1lc3NhZ2UsIG1lc3NhZ2UpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1NZXNzYWdlU25hcHNob3QoXG4gIGJvdDogSW50ZXJuYWxCb3QsXG4gIHBheWxvYWQ6IHsgbWVzc2FnZVNuYXBzaG90OiBEaXNjb3JkTWVzc2FnZVNuYXBzaG90OyBzaGFyZElkOiBudW1iZXIgfSxcbik6IHR5cGVvZiBib3QudHJhbnNmb3JtZXJzLiRpbmZlcnJlZFR5cGVzLm1lc3NhZ2VTbmFwc2hvdCB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5tZXNzYWdlU25hcHNob3RcbiAgY29uc3QgbWVzc2FnZVNuYXBzaG90ID0ge30gYXMgTWVzc2FnZVNuYXBzaG90XG5cbiAgaWYgKHByb3BzLm1lc3NhZ2UgJiYgcGF5bG9hZC5tZXNzYWdlU25hcHNob3QubWVzc2FnZSlcbiAgICBtZXNzYWdlU25hcHNob3QubWVzc2FnZSA9IGJvdC50cmFuc2Zvcm1lcnMubWVzc2FnZShib3QsIHsgbWVzc2FnZTogcGF5bG9hZC5tZXNzYWdlU25hcHNob3QubWVzc2FnZSBhcyBEaXNjb3JkTWVzc2FnZSwgc2hhcmRJZDogcGF5bG9hZC5zaGFyZElkIH0pXG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMubWVzc2FnZVNuYXBzaG90KGJvdCwgcGF5bG9hZC5tZXNzYWdlU25hcHNob3QsIG1lc3NhZ2VTbmFwc2hvdClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybU1lc3NhZ2VJbnRlcmFjdGlvbk1ldGFkYXRhKFxuICBib3Q6IEludGVybmFsQm90LFxuICBwYXlsb2FkOiBEaXNjb3JkTWVzc2FnZUludGVyYWN0aW9uTWV0YWRhdGEsXG4pOiB0eXBlb2YgYm90LnRyYW5zZm9ybWVycy4kaW5mZXJyZWRUeXBlcy5tZXNzYWdlSW50ZXJhY3Rpb25NZXRhZGF0YSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5tZXNzYWdlSW50ZXJhY3Rpb25NZXRhZGF0YVxuICBjb25zdCBtZXRhZGF0YSA9IHt9IGFzIE1lc3NhZ2VJbnRlcmFjdGlvbk1ldGFkYXRhXG5cbiAgaWYgKHByb3BzLmlkKSBtZXRhZGF0YS5pZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuaWQpXG4gIGlmIChwcm9wcy5hdXRob3JpemluZ0ludGVncmF0aW9uT3duZXJzKSB7XG4gICAgbWV0YWRhdGEuYXV0aG9yaXppbmdJbnRlZ3JhdGlvbk93bmVycyA9IHt9XG4gICAgaWYgKHBheWxvYWQuYXV0aG9yaXppbmdfaW50ZWdyYXRpb25fb3duZXJzWycwJ10pXG4gICAgICBtZXRhZGF0YS5hdXRob3JpemluZ0ludGVncmF0aW9uT3duZXJzW0Rpc2NvcmRBcHBsaWNhdGlvbkludGVncmF0aW9uVHlwZS5HdWlsZEluc3RhbGxdID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UoXG4gICAgICAgIHBheWxvYWQuYXV0aG9yaXppbmdfaW50ZWdyYXRpb25fb3duZXJzWycwJ10sXG4gICAgICApXG4gICAgaWYgKHBheWxvYWQuYXV0aG9yaXppbmdfaW50ZWdyYXRpb25fb3duZXJzWycxJ10pXG4gICAgICBtZXRhZGF0YS5hdXRob3JpemluZ0ludGVncmF0aW9uT3duZXJzW0Rpc2NvcmRBcHBsaWNhdGlvbkludGVncmF0aW9uVHlwZS5Vc2VySW5zdGFsbF0gPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShcbiAgICAgICAgcGF5bG9hZC5hdXRob3JpemluZ19pbnRlZ3JhdGlvbl9vd25lcnNbJzEnXSxcbiAgICAgIClcbiAgfVxuICBpZiAocHJvcHMub3JpZ2luYWxSZXNwb25zZU1lc3NhZ2VJZCAmJiBwYXlsb2FkLm9yaWdpbmFsX3Jlc3BvbnNlX21lc3NhZ2VfaWQpXG4gICAgbWV0YWRhdGEub3JpZ2luYWxSZXNwb25zZU1lc3NhZ2VJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQub3JpZ2luYWxfcmVzcG9uc2VfbWVzc2FnZV9pZClcbiAgaWYgKHByb3BzLnR5cGUpIG1ldGFkYXRhLnR5cGUgPSBwYXlsb2FkLnR5cGVcbiAgaWYgKHByb3BzLnVzZXIgJiYgcGF5bG9hZC51c2VyKSBtZXRhZGF0YS51c2VyID0gYm90LnRyYW5zZm9ybWVycy51c2VyKGJvdCwgcGF5bG9hZC51c2VyKVxuICAvLyBBcHBsaWNhdGlvbiBjb21tYW5kIG1ldGFkYXRhXG4gIGlmICgndGFyZ2V0X3VzZXInIGluIHBheWxvYWQpIHtcbiAgICBpZiAocHJvcHMudGFyZ2V0VXNlciAmJiBwYXlsb2FkLnRhcmdldF91c2VyKSBtZXRhZGF0YS50YXJnZXRVc2VyID0gYm90LnRyYW5zZm9ybWVycy51c2VyKGJvdCwgcGF5bG9hZC50YXJnZXRfdXNlcilcbiAgICBpZiAocHJvcHMudGFyZ2V0TWVzc2FnZUlkICYmIHBheWxvYWQudGFyZ2V0X21lc3NhZ2VfaWQpIG1ldGFkYXRhLnRhcmdldE1lc3NhZ2VJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQudGFyZ2V0X21lc3NhZ2VfaWQpXG4gIH1cbiAgLy8gTWVzc2FnZSBjb21wb25lbnQgbWV0YWRhdGFcbiAgaWYgKCdpbnRlcmFjdGVkX21lc3NhZ2VfaWQnIGluIHBheWxvYWQpIHtcbiAgICBpZiAocHJvcHMuaW50ZXJhY3RlZE1lc3NhZ2VJZCAmJiBwYXlsb2FkLmludGVyYWN0ZWRfbWVzc2FnZV9pZClcbiAgICAgIG1ldGFkYXRhLmludGVyYWN0ZWRNZXNzYWdlSWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLmludGVyYWN0ZWRfbWVzc2FnZV9pZClcbiAgfVxuICAvLyBNb2RhbCBzdWJtaXQgbWV0YWRhdGFcbiAgaWYgKCd0cmlnZ2VyaW5nX2ludGVyYWN0aW9uX21ldGFkYXRhJyBpbiBwYXlsb2FkKSB7XG4gICAgaWYgKHByb3BzLnRyaWdnZXJpbmdJbnRlcmFjdGlvbk1ldGFkYXRhICYmIHBheWxvYWQudHJpZ2dlcmluZ19pbnRlcmFjdGlvbl9tZXRhZGF0YSlcbiAgICAgIG1ldGFkYXRhLnRyaWdnZXJpbmdJbnRlcmFjdGlvbk1ldGFkYXRhID0gYm90LnRyYW5zZm9ybWVycy5tZXNzYWdlSW50ZXJhY3Rpb25NZXRhZGF0YShib3QsIHBheWxvYWQudHJpZ2dlcmluZ19pbnRlcmFjdGlvbl9tZXRhZGF0YSlcbiAgfVxuXG4gIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmN1c3RvbWl6ZXJzLm1lc3NhZ2VJbnRlcmFjdGlvbk1ldGFkYXRhKGJvdCwgcGF5bG9hZCwgbWV0YWRhdGEpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1NZXNzYWdlQ2FsbChib3Q6IEludGVybmFsQm90LCBwYXlsb2FkOiBEaXNjb3JkTWVzc2FnZUNhbGwpOiB0eXBlb2YgYm90LnRyYW5zZm9ybWVycy4kaW5mZXJyZWRUeXBlcy5tZXNzYWdlQ2FsbCB7XG4gIGNvbnN0IGNhbGwgPSB7fSBhcyBNZXNzYWdlQ2FsbFxuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMubWVzc2FnZUNhbGxcblxuICBpZiAocHJvcHMucGFydGljaXBhbnRzICYmIHBheWxvYWQucGFydGljaXBhbnRzKSBjYWxsLnBhcnRpY2lwYW50cyA9IHBheWxvYWQucGFydGljaXBhbnRzLm1hcCgoeCkgPT4gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UoeCkpXG4gIGlmIChwcm9wcy5lbmRlZFRpbWVzdGFtcCAmJiBwYXlsb2FkLmVuZGVkX3RpbWVzdGFtcCkgY2FsbC5lbmRlZFRpbWVzdGFtcCA9IERhdGUucGFyc2UocGF5bG9hZC5lbmRlZF90aW1lc3RhbXApXG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMubWVzc2FnZUNhbGwoYm90LCBwYXlsb2FkLCBjYWxsKVxufVxuIl0sIm5hbWVzIjpbImJhc2VNZXNzYWdlIiwidHJhbnNmb3JtTWVzc2FnZSIsInRyYW5zZm9ybU1lc3NhZ2VDYWxsIiwidHJhbnNmb3JtTWVzc2FnZUludGVyYWN0aW9uTWV0YWRhdGEiLCJ0cmFuc2Zvcm1NZXNzYWdlU25hcHNob3QiLCJFTVBUWV9TVFJJTkciLCJ1bmRlZmluZWQiLCJjcm9zc3Bvc3RlZCIsImZsYWdzIiwiY29udGFpbnMiLCJNZXNzYWdlRmxhZ3MiLCJDcm9zc3Bvc3RlZCIsInZhbHVlIiwiYWRkIiwicmVtb3ZlIiwiZXBoZW1lcmFsIiwiRXBoZW1lcmFsIiwiZmFpbGVkVG9NZW50aW9uU29tZVJvbGVzSW5UaHJlYWQiLCJGYWlsZWRUb01lbnRpb25Tb21lUm9sZXNJblRocmVhZCIsImhhc1RocmVhZCIsIkhhc1RocmVhZCIsImlzQ3Jvc3Nwb3N0IiwiSXNDcm9zc3Bvc3QiLCJsb2FkaW5nIiwiTG9hZGluZyIsIm1lbnRpb25lZFVzZXJJZHMiLCJtZW50aW9ucyIsIm1hcCIsInVzZXIiLCJpZCIsIm1lbnRpb25FdmVyeW9uZSIsImJpdGZpZWxkIiwicGlubmVkIiwic291cmNlTWVzc2FnZURlbGV0ZWQiLCJTb3VyY2VNZXNzYWdlRGVsZXRlZCIsInN1cHByZXNzRW1iZWRzIiwiU3VwcHJlc3NFbWJlZHMiLCJzdXBwcmVzc05vdGlmaWNhdGlvbnMiLCJTdXBwcmVzc05vdGlmaWNhdGlvbnMiLCJ0aW1lc3RhbXAiLCJzbm93Zmxha2VUb1RpbWVzdGFtcCIsInR0cyIsInVyZ2VudCIsIlVyZ2VudCIsImJvdCIsInBheWxvYWQiLCJndWlsZElkIiwibWVzc2FnZSIsImd1aWxkX2lkIiwidHJhbnNmb3JtZXJzIiwic25vd2ZsYWtlIiwidXNlcklkIiwiYXV0aG9yIiwiT2JqZWN0IiwiY3JlYXRlIiwiVG9nZ2xlQml0ZmllbGQiLCJwcm9wcyIsImRlc2lyZWRQcm9wZXJ0aWVzIiwiYXBwbGljYXRpb24iLCJzaGFyZElkIiwiYXBwbGljYXRpb25JZCIsImFwcGxpY2F0aW9uX2lkIiwiYXR0YWNobWVudHMiLCJsZW5ndGgiLCJhdHRhY2htZW50IiwiY2hhbm5lbElkIiwiY2hhbm5lbF9pZCIsImNvbXBvbmVudHMiLCJjb21wIiwiY29tcG9uZW50IiwiY29udGVudCIsImVkaXRlZFRpbWVzdGFtcCIsImVkaXRlZF90aW1lc3RhbXAiLCJEYXRlIiwicGFyc2UiLCJlbWJlZHMiLCJlbWJlZCIsImludGVyYWN0aW9uTWV0YWRhdGEiLCJpbnRlcmFjdGlvbl9tZXRhZGF0YSIsIm1lc3NhZ2VJbnRlcmFjdGlvbk1ldGFkYXRhIiwiaW50ZXJhY3Rpb24iLCJtZXNzYWdlSW50ZXJhY3Rpb25Qcm9wcyIsIm1lc3NhZ2VJbnRlcmFjdGlvbiIsIm1lbWJlciIsIm5hbWUiLCJ0eXBlIiwibWVudGlvbl9ldmVyeW9uZSIsIm1lbnRpb25lZENoYW5uZWxJZHMiLCJtZW50aW9uX2NoYW5uZWxzIiwibSIsIm1hdGNoIiwiQ0hBTk5FTF9NRU5USU9OX1JFR0VYIiwidGV4dCIsInN1YnN0cmluZyIsIm1lbnRpb25lZFJvbGVJZHMiLCJtZW50aW9uX3JvbGVzIiwibWVzc2FnZVJlZmVyZW5jZSIsIm1lc3NhZ2VfcmVmZXJlbmNlIiwicmVmZXJlbmNlIiwibWVzc2FnZVJlZmVyZW5jZVByb3BzIiwibWVzc2FnZUlkIiwibWVzc2FnZV9pZCIsInJlZmVyZW5jZWRNZXNzYWdlIiwicmVmZXJlbmNlZF9tZXNzYWdlIiwibWVzc2FnZVNuYXBzaG90cyIsIm1lc3NhZ2Vfc25hcHNob3RzIiwic25hcCIsIm1lc3NhZ2VTbmFwc2hvdCIsIm5vbmNlIiwicmVhY3Rpb25zIiwicmVhY3Rpb24iLCJtZSIsIm1lQnVyc3QiLCJtZV9idXJzdCIsImNvdW50IiwiY291bnREZXRhaWxzIiwiYnVyc3QiLCJjb3VudF9kZXRhaWxzIiwibm9ybWFsIiwiZW1vamkiLCJidXJzdENvbG9ycyIsImJ1cnN0X2NvbG9ycyIsInN0aWNrZXJJdGVtcyIsInN0aWNrZXJfaXRlbXMiLCJpdGVtIiwiZm9ybWF0VHlwZSIsImZvcm1hdF90eXBlIiwidGhyZWFkIiwiY2hhbm5lbCIsIndlYmhvb2tJZCIsIndlYmhvb2tfaWQiLCJwb2xsIiwiY2FsbCIsIm1lc3NhZ2VDYWxsIiwiY3VzdG9taXplcnMiLCJtZXRhZGF0YSIsImF1dGhvcml6aW5nSW50ZWdyYXRpb25Pd25lcnMiLCJhdXRob3JpemluZ19pbnRlZ3JhdGlvbl9vd25lcnMiLCJEaXNjb3JkQXBwbGljYXRpb25JbnRlZ3JhdGlvblR5cGUiLCJHdWlsZEluc3RhbGwiLCJVc2VySW5zdGFsbCIsIm9yaWdpbmFsUmVzcG9uc2VNZXNzYWdlSWQiLCJvcmlnaW5hbF9yZXNwb25zZV9tZXNzYWdlX2lkIiwidGFyZ2V0VXNlciIsInRhcmdldF91c2VyIiwidGFyZ2V0TWVzc2FnZUlkIiwidGFyZ2V0X21lc3NhZ2VfaWQiLCJpbnRlcmFjdGVkTWVzc2FnZUlkIiwiaW50ZXJhY3RlZF9tZXNzYWdlX2lkIiwidHJpZ2dlcmluZ0ludGVyYWN0aW9uTWV0YWRhdGEiLCJ0cmlnZ2VyaW5nX2ludGVyYWN0aW9uX21ldGFkYXRhIiwicGFydGljaXBhbnRzIiwieCIsImVuZGVkVGltZXN0YW1wIiwiZW5kZWRfdGltZXN0YW1wIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztJQXNCYUEsV0FBVztlQUFYQTs7SUFvSEdDLGdCQUFnQjtlQUFoQkE7O0lBb0xBQyxvQkFBb0I7ZUFBcEJBOztJQTFDQUMsbUNBQW1DO2VBQW5DQTs7SUFiQUMsd0JBQXdCO2VBQXhCQTs7O3VCQS9Q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
315
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvbWVzc2FnZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICB0eXBlIERpc2NvcmRBcHBsaWNhdGlvbixcbiAgRGlzY29yZEFwcGxpY2F0aW9uSW50ZWdyYXRpb25UeXBlLFxuICB0eXBlIERpc2NvcmRNZXNzYWdlLFxuICB0eXBlIERpc2NvcmRNZXNzYWdlQ2FsbCxcbiAgdHlwZSBEaXNjb3JkTWVzc2FnZUludGVyYWN0aW9uTWV0YWRhdGEsXG4gIHR5cGUgRGlzY29yZE1lc3NhZ2VQaW4sXG4gIHR5cGUgRGlzY29yZE1lc3NhZ2VTbmFwc2hvdCxcbiAgTWVzc2FnZUZsYWdzLFxufSBmcm9tICdAZGlzY29yZGVuby90eXBlcydcbmltcG9ydCB7IENIQU5ORUxfTUVOVElPTl9SRUdFWCB9IGZyb20gJy4uL2NvbnN0YW50cy5qcydcbmltcG9ydCB7XG4gIHR5cGUgQm90LFxuICB0eXBlIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3IsXG4gIHR5cGUgTWVzc2FnZSxcbiAgdHlwZSBNZXNzYWdlQ2FsbCxcbiAgdHlwZSBNZXNzYWdlSW50ZXJhY3Rpb24sXG4gIHR5cGUgTWVzc2FnZUludGVyYWN0aW9uTWV0YWRhdGEsXG4gIHR5cGUgTWVzc2FnZVBpbixcbiAgdHlwZSBNZXNzYWdlU25hcHNob3QsXG4gIHR5cGUgU2V0dXBEZXNpcmVkUHJvcHMsXG4gIHNub3dmbGFrZVRvVGltZXN0YW1wLFxuICB0eXBlIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLFxufSBmcm9tICcuLi9pbmRleC5qcydcbmltcG9ydCB7IFRvZ2dsZUJpdGZpZWxkIH0gZnJvbSAnLi90b2dnbGVzL1RvZ2dsZUJpdGZpZWxkLmpzJ1xuXG5jb25zdCBFTVBUWV9TVFJJTkcgPSAnJ1xuXG5leHBvcnQgY29uc3QgYmFzZU1lc3NhZ2U6IE1lc3NhZ2UgPSB7XG4gIC8vIFRoaXMgYWxsb3dzIHR5cGVzY3JpcHQgdG8gc3RpbGwgY2hlY2sgZm9yIHR5cGUgZXJyb3JzIG9uIGZ1bmN0aW9ucyBiZWxvd1xuICAuLi4odW5kZWZpbmVkIGFzIHVua25vd24gYXMgTWVzc2FnZSksXG5cbiAgZ2V0IGNyb3NzcG9zdGVkKCkge1xuICAgIHJldHVybiB0aGlzLmZsYWdzPy5jb250YWlucyhNZXNzYWdlRmxhZ3MuQ3Jvc3Nwb3N0ZWQpID8/IGZhbHNlXG4gIH0sXG4gIHNldCBjcm9zc3Bvc3RlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICghdGhpcy5mbGFncykgcmV0dXJuXG4gICAgaWYgKHZhbHVlKSB0aGlzLmZsYWdzLmFkZChNZXNzYWdlRmxhZ3MuQ3Jvc3Nwb3N0ZWQpXG4gICAgZWxzZSB0aGlzLmZsYWdzLnJlbW92ZShNZXNzYWdlRmxhZ3MuQ3Jvc3Nwb3N0ZWQpXG4gIH0sXG4gIGdldCBlcGhlbWVyYWwoKSB7XG4gICAgcmV0dXJuIHRoaXMuZmxhZ3M/LmNvbnRhaW5zKE1lc3NhZ2VGbGFncy5FcGhlbWVyYWwpID8/IGZhbHNlXG4gIH0sXG4gIHNldCBlcGhlbWVyYWwodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBpZiAoIXRoaXMuZmxhZ3MpIHJldHVyblxuICAgIGlmICh2YWx1ZSkgdGhpcy5mbGFncy5hZGQoTWVzc2FnZUZsYWdzLkVwaGVtZXJhbClcbiAgICBlbHNlIHRoaXMuZmxhZ3MucmVtb3ZlKE1lc3NhZ2VGbGFncy5FcGhlbWVyYWwpXG4gIH0sXG4gIGdldCBmYWlsZWRUb01lbnRpb25Tb21lUm9sZXNJblRocmVhZCgpIHtcbiAgICByZXR1cm4gdGhpcy5mbGFncz8uY29udGFpbnMoTWVzc2FnZUZsYWdzLkZhaWxlZFRvTWVudGlvblNvbWVSb2xlc0luVGhyZWFkKSA/PyBmYWxzZVxuICB9LFxuICBzZXQgZmFpbGVkVG9NZW50aW9uU29tZVJvbGVzSW5UaHJlYWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBpZiAoIXRoaXMuZmxhZ3MpIHJldHVyblxuICAgIGlmICh2YWx1ZSkgdGhpcy5mbGFncy5hZGQoTWVzc2FnZUZsYWdzLkZhaWxlZFRvTWVudGlvblNvbWVSb2xlc0luVGhyZWFkKVxuICAgIGVsc2UgdGhpcy5mbGFncy5yZW1vdmUoTWVzc2FnZUZsYWdzLkZhaWxlZFRvTWVudGlvblNvbWVSb2xlc0luVGhyZWFkKVxuICB9LFxuICBnZXQgaGFzVGhyZWFkKCkge1xuICAgIHJldHVybiB0aGlzLmZsYWdzPy5jb250YWlucyhNZXNzYWdlRmxhZ3MuSGFzVGhyZWFkKSA/PyBmYWxzZVxuICB9LFxuICBzZXQgaGFzVGhyZWFkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKCF0aGlzLmZsYWdzKSByZXR1cm5cbiAgICBpZiAodmFsdWUpIHRoaXMuZmxhZ3MuYWRkKE1lc3NhZ2VGbGFncy5IYXNUaHJlYWQpXG4gICAgZWxzZSB0aGlzLmZsYWdzLnJlbW92ZShNZXNzYWdlRmxhZ3MuSGFzVGhyZWFkKVxuICB9LFxuICBnZXQgaXNDcm9zc3Bvc3QoKSB7XG4gICAgcmV0dXJuIHRoaXMuZmxhZ3M/LmNvbnRhaW5zKE1lc3NhZ2VGbGFncy5Jc0Nyb3NzcG9zdCkgPz8gZmFsc2VcbiAgfSxcbiAgc2V0IGlzQ3Jvc3Nwb3N0KHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKCF0aGlzLmZsYWdzKSByZXR1cm5cbiAgICBpZiAodmFsdWUpIHRoaXMuZmxhZ3MuYWRkKE1lc3NhZ2VGbGFncy5Jc0Nyb3NzcG9zdClcbiAgICBlbHNlIHRoaXMuZmxhZ3MucmVtb3ZlKE1lc3NhZ2VGbGFncy5Jc0Nyb3NzcG9zdClcbiAgfSxcbiAgZ2V0IGxvYWRpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMuZmxhZ3M/LmNvbnRhaW5zKE1lc3NhZ2VGbGFncy5Mb2FkaW5nKSA/PyBmYWxzZVxuICB9LFxuICBzZXQgbG9hZGluZyh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICghdGhpcy5mbGFncykgcmV0dXJuXG4gICAgaWYgKHZhbHVlKSB0aGlzLmZsYWdzLmFkZChNZXNzYWdlRmxhZ3MuTG9hZGluZylcbiAgICBlbHNlIHRoaXMuZmxhZ3MucmVtb3ZlKE1lc3NhZ2VGbGFncy5Mb2FkaW5nKVxuICB9LFxuICBnZXQgbWVudGlvbmVkVXNlcklkcygpIHtcbiAgICByZXR1cm4gdGhpcy5tZW50aW9ucz8ubWFwKCh1c2VyKSA9PiB1c2VyLmlkKSA/PyBbXVxuICB9LFxuICBnZXQgbWVudGlvbkV2ZXJ5b25lKCkge1xuICAgIHJldHVybiB0aGlzLmJpdGZpZWxkPy5jb250YWlucygyKSA/PyBmYWxzZVxuICB9LFxuICBzZXQgbWVudGlvbkV2ZXJ5b25lKHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKCF0aGlzLmJpdGZpZWxkKSByZXR1cm5cbiAgICBpZiAodmFsdWUpIHRoaXMuYml0ZmllbGQuYWRkKDIpXG4gICAgZWxzZSB0aGlzLmJpdGZpZWxkLnJlbW92ZSgyKVxuICB9LFxuICBnZXQgcGlubmVkKCkge1xuICAgIHJldHVybiB0aGlzLmJpdGZpZWxkPy5jb250YWlucygzKSA/PyBmYWxzZVxuICB9LFxuICBzZXQgcGlubmVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKCF0aGlzLmJpdGZpZWxkKSByZXR1cm5cbiAgICBpZiAodmFsdWUpIHRoaXMuYml0ZmllbGQuYWRkKDMpXG4gICAgZWxzZSB0aGlzLmJpdGZpZWxkLnJlbW92ZSgzKVxuICB9LFxuICBnZXQgc291cmNlTWVzc2FnZURlbGV0ZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZmxhZ3M/LmNvbnRhaW5zKE1lc3NhZ2VGbGFncy5Tb3VyY2VNZXNzYWdlRGVsZXRlZCkgPz8gZmFsc2VcbiAgfSxcbiAgc2V0IHNvdXJjZU1lc3NhZ2VEZWxldGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKCF0aGlzLmZsYWdzKSByZXR1cm5cbiAgICBpZiAodmFsdWUpIHRoaXMuZmxhZ3MuYWRkKE1lc3NhZ2VGbGFncy5Tb3VyY2VNZXNzYWdlRGVsZXRlZClcbiAgICBlbHNlIHRoaXMuZmxhZ3MucmVtb3ZlKE1lc3NhZ2VGbGFncy5Tb3VyY2VNZXNzYWdlRGVsZXRlZClcbiAgfSxcbiAgZ2V0IHN1cHByZXNzRW1iZWRzKCkge1xuICAgIHJldHVybiB0aGlzLmZsYWdzPy5jb250YWlucyhNZXNzYWdlRmxhZ3MuU3VwcHJlc3NFbWJlZHMpID8/IGZhbHNlXG4gIH0sXG4gIHNldCBzdXBwcmVzc0VtYmVkcyh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICghdGhpcy5mbGFncykgcmV0dXJuXG4gICAgaWYgKHZhbHVlKSB0aGlzLmZsYWdzLmFkZChNZXNzYWdlRmxhZ3MuU3VwcHJlc3NFbWJlZHMpXG4gICAgZWxzZSB0aGlzLmZsYWdzLnJlbW92ZShNZXNzYWdlRmxhZ3MuU3VwcHJlc3NFbWJlZHMpXG4gIH0sXG4gIGdldCBzdXBwcmVzc05vdGlmaWNhdGlvbnMoKSB7XG4gICAgcmV0dXJuIHRoaXMuZmxhZ3M/LmNvbnRhaW5zKE1lc3NhZ2VGbGFncy5TdXBwcmVzc05vdGlmaWNhdGlvbnMpID8/IGZhbHNlXG4gIH0sXG4gIHNldCBzdXBwcmVzc05vdGlmaWNhdGlvbnModmFsdWU6IGJvb2xlYW4pIHtcbiAgICBpZiAoIXRoaXMuZmxhZ3MpIHJldHVyblxuICAgIGlmICh2YWx1ZSkgdGhpcy5mbGFncy5hZGQoTWVzc2FnZUZsYWdzLlN1cHByZXNzTm90aWZpY2F0aW9ucylcbiAgICBlbHNlIHRoaXMuZmxhZ3MucmVtb3ZlKE1lc3NhZ2VGbGFncy5TdXBwcmVzc05vdGlmaWNhdGlvbnMpXG4gIH0sXG4gIGdldCB0aW1lc3RhbXAoKSB7XG4gICAgcmV0dXJuIHRoaXMuaWQgPyBzbm93Zmxha2VUb1RpbWVzdGFtcCh0aGlzLmlkKSA6IDBcbiAgfSxcbiAgZ2V0IHR0cygpIHtcbiAgICByZXR1cm4gdGhpcy5iaXRmaWVsZD8uY29udGFpbnMoMSkgPz8gZmFsc2VcbiAgfSxcbiAgc2V0IHR0cyh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICghdGhpcy5iaXRmaWVsZCkgcmV0dXJuXG4gICAgaWYgKHZhbHVlKSB0aGlzLmJpdGZpZWxkLmFkZCgxKVxuICAgIGVsc2UgdGhpcy5iaXRmaWVsZC5yZW1vdmUoMSlcbiAgfSxcbiAgZ2V0IHVyZ2VudCgpIHtcbiAgICByZXR1cm4gdGhpcy5mbGFncz8uY29udGFpbnMoTWVzc2FnZUZsYWdzLlVyZ2VudCkgPz8gZmFsc2VcbiAgfSxcbiAgc2V0IHVyZ2VudCh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICghdGhpcy5mbGFncykgcmV0dXJuXG4gICAgaWYgKHZhbHVlKSB0aGlzLmZsYWdzLmFkZChNZXNzYWdlRmxhZ3MuVXJnZW50KVxuICAgIGVsc2UgdGhpcy5mbGFncy5yZW1vdmUoTWVzc2FnZUZsYWdzLlVyZ2VudClcbiAgfSxcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybU1lc3NhZ2UoYm90OiBCb3QsIHBheWxvYWQ6IHsgbWVzc2FnZTogRGlzY29yZE1lc3NhZ2U7IHNoYXJkSWQ6IG51bWJlciB9KTogTWVzc2FnZSB7XG4gIGNvbnN0IGd1aWxkSWQgPSBwYXlsb2FkLm1lc3NhZ2UuZ3VpbGRfaWQgPyBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLm1lc3NhZ2UuZ3VpbGRfaWQpIDogdW5kZWZpbmVkXG4gIGNvbnN0IHVzZXJJZCA9IHBheWxvYWQubWVzc2FnZS5hdXRob3I/LmlkID8gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5tZXNzYWdlLmF1dGhvci5pZCkgOiB1bmRlZmluZWRcblxuICBjb25zdCBtZXNzYWdlOiBTZXR1cERlc2lyZWRQcm9wczxNZXNzYWdlLCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcj4gPSBPYmplY3QuY3JlYXRlKGJhc2VNZXNzYWdlKVxuICBtZXNzYWdlLmJpdGZpZWxkID0gbmV3IFRvZ2dsZUJpdGZpZWxkKClcbiAgbWVzc2FnZS5mbGFncyA9IG5ldyBUb2dnbGVCaXRmaWVsZChwYXlsb2FkLm1lc3NhZ2UuZmxhZ3MpXG5cbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLm1lc3NhZ2VcblxuICBpZiAocHJvcHMuYXV0aG9yICYmIHBheWxvYWQubWVzc2FnZS5hdXRob3IpIG1lc3NhZ2UuYXV0aG9yID0gYm90LnRyYW5zZm9ybWVycy51c2VyKGJvdCwgcGF5bG9hZC5tZXNzYWdlLmF1dGhvcilcbiAgaWYgKHByb3BzLmFwcGxpY2F0aW9uICYmIHBheWxvYWQubWVzc2FnZS5hcHBsaWNhdGlvbilcbiAgICBtZXNzYWdlLmFwcGxpY2F0aW9uID0gYm90LnRyYW5zZm9ybWVycy5hcHBsaWNhdGlvbihib3QsIHtcbiAgICAgIGFwcGxpY2F0aW9uOiBwYXlsb2FkLm1lc3NhZ2UuYXBwbGljYXRpb24gYXMgRGlzY29yZEFwcGxpY2F0aW9uLFxuICAgICAgc2hhcmRJZDogcGF5bG9hZC5zaGFyZElkLFxuICAgIH0pXG4gIGlmIChwcm9wcy5hcHBsaWNhdGlvbklkICYmIHBheWxvYWQubWVzc2FnZS5hcHBsaWNhdGlvbl9pZCkgbWVzc2FnZS5hcHBsaWNhdGlvbklkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5tZXNzYWdlLmFwcGxpY2F0aW9uX2lkKVxuICBpZiAocHJvcHMuYXR0YWNobWVudHMgJiYgcGF5bG9hZC5tZXNzYWdlLmF0dGFjaG1lbnRzPy5sZW5ndGgpXG4gICAgbWVzc2FnZS5hdHRhY2htZW50cyA9IHBheWxvYWQubWVzc2FnZS5hdHRhY2htZW50cy5tYXAoKGF0dGFjaG1lbnQpID0+IGJvdC50cmFuc2Zvcm1lcnMuYXR0YWNobWVudChib3QsIGF0dGFjaG1lbnQpKVxuICBpZiAocHJvcHMuY2hhbm5lbElkICYmIHBheWxvYWQubWVzc2FnZS5jaGFubmVsX2lkKSBtZXNzYWdlLmNoYW5uZWxJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQubWVzc2FnZS5jaGFubmVsX2lkKVxuICBpZiAocHJvcHMuY29tcG9uZW50cyAmJiBwYXlsb2FkLm1lc3NhZ2UuY29tcG9uZW50cz8ubGVuZ3RoKVxuICAgIG1lc3NhZ2UuY29tcG9uZW50cyA9IHBheWxvYWQubWVzc2FnZS5jb21wb25lbnRzLm1hcCgoY29tcCkgPT4gYm90LnRyYW5zZm9ybWVycy5jb21wb25lbnQoYm90LCBjb21wKSlcbiAgaWYgKHByb3BzLmNvbnRlbnQpIG1lc3NhZ2UuY29udGVudCA9IHBheWxvYWQubWVzc2FnZS5jb250ZW50ID8/IEVNUFRZX1NUUklOR1xuICBpZiAocHJvcHMuZWRpdGVkVGltZXN0YW1wICYmIHBheWxvYWQubWVzc2FnZS5lZGl0ZWRfdGltZXN0YW1wKSBtZXNzYWdlLmVkaXRlZFRpbWVzdGFtcCA9IERhdGUucGFyc2UocGF5bG9hZC5tZXNzYWdlLmVkaXRlZF90aW1lc3RhbXApXG4gIGlmIChwcm9wcy5lbWJlZHMgJiYgcGF5bG9hZC5tZXNzYWdlLmVtYmVkcz8ubGVuZ3RoKSBtZXNzYWdlLmVtYmVkcyA9IHBheWxvYWQubWVzc2FnZS5lbWJlZHMubWFwKChlbWJlZCkgPT4gYm90LnRyYW5zZm9ybWVycy5lbWJlZChib3QsIGVtYmVkKSlcbiAgaWYgKHByb3BzLmd1aWxkSWQgJiYgZ3VpbGRJZCkgbWVzc2FnZS5ndWlsZElkID0gZ3VpbGRJZFxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5tZXNzYWdlLmlkKSBtZXNzYWdlLmlkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5tZXNzYWdlLmlkKVxuICBpZiAocHJvcHMuaW50ZXJhY3Rpb25NZXRhZGF0YSAmJiBwYXlsb2FkLm1lc3NhZ2UuaW50ZXJhY3Rpb25fbWV0YWRhdGEpXG4gICAgbWVzc2FnZS5pbnRlcmFjdGlvbk1ldGFkYXRhID0gYm90LnRyYW5zZm9ybWVycy5tZXNzYWdlSW50ZXJhY3Rpb25NZXRhZGF0YShib3QsIHBheWxvYWQubWVzc2FnZS5pbnRlcmFjdGlvbl9tZXRhZGF0YSlcbiAgaWYgKHByb3BzLmludGVyYWN0aW9uICYmIHBheWxvYWQubWVzc2FnZS5pbnRlcmFjdGlvbikge1xuICAgIGNvbnN0IGludGVyYWN0aW9uID0ge30gYXMgU2V0dXBEZXNpcmVkUHJvcHM8TWVzc2FnZUludGVyYWN0aW9uLCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcj5cbiAgICBjb25zdCBtZXNzYWdlSW50ZXJhY3Rpb25Qcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMubWVzc2FnZUludGVyYWN0aW9uXG5cbiAgICBpZiAobWVzc2FnZUludGVyYWN0aW9uUHJvcHMuaWQpIHtcbiAgICAgIGludGVyYWN0aW9uLmlkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5tZXNzYWdlLmludGVyYWN0aW9uLmlkKVxuICAgIH1cbiAgICBpZiAobWVzc2FnZUludGVyYWN0aW9uUHJvcHMubWVtYmVyICYmIHBheWxvYWQubWVzc2FnZS5pbnRlcmFjdGlvbi5tZW1iZXIpIHtcbiAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgVE9ETzogcGFydGlhbCAtIGNoZWNrIHdoeSB0aGlzIGlzIHBhcnRpYWwgYW5kIGhhbmRsZSBhcyBuZWVkZWRcbiAgICAgIGludGVyYWN0aW9uLm1lbWJlciA9IGJvdC50cmFuc2Zvcm1lcnMubWVtYmVyKGJvdCwgcGF5bG9hZC5tZXNzYWdlLmludGVyYWN0aW9uLm1lbWJlciwgZ3VpbGRJZCwgcGF5bG9hZC5tZXNzYWdlLmludGVyYWN0aW9uLnVzZXIuaWQpXG4gICAgfVxuICAgIGlmIChtZXNzYWdlSW50ZXJhY3Rpb25Qcm9wcy5uYW1lKSB7XG4gICAgICBpbnRlcmFjdGlvbi5uYW1lID0gcGF5bG9hZC5tZXNzYWdlLmludGVyYWN0aW9uLm5hbWVcbiAgICB9XG4gICAgaWYgKG1lc3NhZ2VJbnRlcmFjdGlvblByb3BzLnR5cGUpIHtcbiAgICAgIGludGVyYWN0aW9uLnR5cGUgPSBwYXlsb2FkLm1lc3NhZ2UuaW50ZXJhY3Rpb24udHlwZVxuICAgIH1cbiAgICBpZiAobWVzc2FnZUludGVyYWN0aW9uUHJvcHMudXNlcikge1xuICAgICAgaW50ZXJhY3Rpb24udXNlciA9IGJvdC50cmFuc2Zvcm1lcnMudXNlcihib3QsIHBheWxvYWQubWVzc2FnZS5pbnRlcmFjdGlvbi51c2VyKVxuICAgIH1cblxuICAgIG1lc3NhZ2UuaW50ZXJhY3Rpb24gPSBpbnRlcmFjdGlvblxuICB9XG4gIGlmIChwcm9wcy5tZW1iZXIgJiYgZ3VpbGRJZCAmJiB1c2VySWQgJiYgcGF5bG9hZC5tZXNzYWdlLm1lbWJlcilcbiAgICAvLyBAdHMtZXhwZWN0LWVycm9yIFRPRE86IHBhcnRpYWxcbiAgICBtZXNzYWdlLm1lbWJlciA9IGJvdC50cmFuc2Zvcm1lcnMubWVtYmVyKGJvdCwgcGF5bG9hZC5tZXNzYWdlLm1lbWJlciwgZ3VpbGRJZCwgdXNlcklkKVxuICBpZiAocGF5bG9hZC5tZXNzYWdlLm1lbnRpb25fZXZlcnlvbmUpIG1lc3NhZ2UubWVudGlvbkV2ZXJ5b25lID0gdHJ1ZVxuICBpZiAocHJvcHMubWVudGlvbmVkQ2hhbm5lbElkcyAmJiBwYXlsb2FkLm1lc3NhZ2UubWVudGlvbl9jaGFubmVscz8ubGVuZ3RoKSB7XG4gICAgbWVzc2FnZS5tZW50aW9uZWRDaGFubmVsSWRzID0gW1xuICAgICAgLy8gS2VlcCBhbnkgaWRzIHRodCBkaXNjb3JkIHNlbmRzXG4gICAgICAuLi4ocGF5bG9hZC5tZXNzYWdlLm1lbnRpb25fY2hhbm5lbHMgPz8gW10pLm1hcCgobSkgPT4gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UobS5pZCkpLFxuICAgICAgLy8gQWRkIGFueSBvdGhlciBpZHMgdGhhdCBjYW4gYmUgdmFsaWRhdGVkIGluIGEgY2hhbm5lbCBtZW50aW9uIGZvcm1hdFxuICAgICAgLi4uKHBheWxvYWQubWVzc2FnZS5jb250ZW50Py5tYXRjaChDSEFOTkVMX01FTlRJT05fUkVHRVgpID8/IFtdKS5tYXAoKHRleHQpID0+XG4gICAgICAgIC8vIGNvbnZlcnRzIHRoZSA8IzEyMz4gaW50byAxMjNcbiAgICAgICAgYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UodGV4dC5zdWJzdHJpbmcoMiwgdGV4dC5sZW5ndGggLSAxKSksXG4gICAgICApLFxuICAgIF1cbiAgfVxuICBpZiAocHJvcHMubWVudGlvbmVkUm9sZUlkcyAmJiBwYXlsb2FkLm1lc3NhZ2UubWVudGlvbl9yb2xlcz8ubGVuZ3RoKVxuICAgIG1lc3NhZ2UubWVudGlvbmVkUm9sZUlkcyA9IHBheWxvYWQubWVzc2FnZS5tZW50aW9uX3JvbGVzLm1hcCgoaWQpID0+IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKGlkKSlcbiAgaWYgKHByb3BzLm1lbnRpb25zICYmIHBheWxvYWQubWVzc2FnZS5tZW50aW9ucz8ubGVuZ3RoKSBtZXNzYWdlLm1lbnRpb25zID0gcGF5bG9hZC5tZXNzYWdlLm1lbnRpb25zLm1hcCgodXNlcikgPT4gYm90LnRyYW5zZm9ybWVycy51c2VyKGJvdCwgdXNlcikpXG4gIGlmIChwcm9wcy5tZXNzYWdlUmVmZXJlbmNlICYmIHBheWxvYWQubWVzc2FnZS5tZXNzYWdlX3JlZmVyZW5jZSkge1xuICAgIGNvbnN0IHJlZmVyZW5jZSA9IHt9IGFzIE5vbk51bGxhYmxlPE1lc3NhZ2VbJ21lc3NhZ2VSZWZlcmVuY2UnXT5cbiAgICBjb25zdCBtZXNzYWdlUmVmZXJlbmNlUHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLm1lc3NhZ2VSZWZlcmVuY2VcblxuICAgIGlmIChtZXNzYWdlUmVmZXJlbmNlUHJvcHMuY2hhbm5lbElkICYmIHBheWxvYWQubWVzc2FnZS5tZXNzYWdlX3JlZmVyZW5jZS5jaGFubmVsX2lkKSB7XG4gICAgICByZWZlcmVuY2UuY2hhbm5lbElkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5tZXNzYWdlLm1lc3NhZ2VfcmVmZXJlbmNlLmNoYW5uZWxfaWQpXG4gICAgfVxuICAgIGlmIChtZXNzYWdlUmVmZXJlbmNlUHJvcHMuZ3VpbGRJZCAmJiBwYXlsb2FkLm1lc3NhZ2UubWVzc2FnZV9yZWZlcmVuY2UuZ3VpbGRfaWQpIHtcbiAgICAgIHJlZmVyZW5jZS5ndWlsZElkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5tZXNzYWdlLm1lc3NhZ2VfcmVmZXJlbmNlLmd1aWxkX2lkKVxuICAgIH1cbiAgICBpZiAobWVzc2FnZVJlZmVyZW5jZVByb3BzLm1lc3NhZ2VJZCAmJiBwYXlsb2FkLm1lc3NhZ2UubWVzc2FnZV9yZWZlcmVuY2UubWVzc2FnZV9pZCkge1xuICAgICAgcmVmZXJlbmNlLm1lc3NhZ2VJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQubWVzc2FnZS5tZXNzYWdlX3JlZmVyZW5jZS5tZXNzYWdlX2lkKVxuICAgIH1cblxuICAgIG1lc3NhZ2UubWVzc2FnZVJlZmVyZW5jZSA9IHJlZmVyZW5jZVxuICB9XG4gIGlmIChwcm9wcy5yZWZlcmVuY2VkTWVzc2FnZSAmJiBwYXlsb2FkLm1lc3NhZ2UucmVmZXJlbmNlZF9tZXNzYWdlKVxuICAgIG1lc3NhZ2UucmVmZXJlbmNlZE1lc3NhZ2UgPSBib3QudHJhbnNmb3JtZXJzLm1lc3NhZ2UoYm90LCB7IG1lc3NhZ2U6IHBheWxvYWQubWVzc2FnZS5yZWZlcmVuY2VkX21lc3NhZ2UsIHNoYXJkSWQ6IHBheWxvYWQuc2hhcmRJZCB9KVxuICBpZiAocHJvcHMubWVzc2FnZVNuYXBzaG90cyAmJiBwYXlsb2FkLm1lc3NhZ2UubWVzc2FnZV9zbmFwc2hvdHMpXG4gICAgbWVzc2FnZS5tZXNzYWdlU25hcHNob3RzID0gcGF5bG9hZC5tZXNzYWdlLm1lc3NhZ2Vfc25hcHNob3RzLm1hcCgoc25hcCkgPT5cbiAgICAgIGJvdC50cmFuc2Zvcm1lcnMubWVzc2FnZVNuYXBzaG90KGJvdCwgeyBtZXNzYWdlU25hcHNob3Q6IHNuYXAsIHNoYXJkSWQ6IHBheWxvYWQuc2hhcmRJZCB9KSxcbiAgICApXG4gIGlmIChwcm9wcy5ub25jZSAmJiBwYXlsb2FkLm1lc3NhZ2Uubm9uY2UpIG1lc3NhZ2Uubm9uY2UgPSBwYXlsb2FkLm1lc3NhZ2Uubm9uY2VcbiAgaWYgKHBheWxvYWQubWVzc2FnZS5waW5uZWQpIG1lc3NhZ2UucGlubmVkID0gdHJ1ZVxuICBpZiAocHJvcHMucmVhY3Rpb25zICYmIHBheWxvYWQubWVzc2FnZS5yZWFjdGlvbnM/Lmxlbmd0aCkge1xuICAgIG1lc3NhZ2UucmVhY3Rpb25zID0gcGF5bG9hZC5tZXNzYWdlLnJlYWN0aW9ucy5tYXAoKHJlYWN0aW9uKSA9PiAoe1xuICAgICAgbWU6IHJlYWN0aW9uLm1lLFxuICAgICAgbWVCdXJzdDogcmVhY3Rpb24ubWVfYnVyc3QsXG4gICAgICBjb3VudDogcmVhY3Rpb24uY291bnQsXG4gICAgICBjb3VudERldGFpbHM6IHtcbiAgICAgICAgYnVyc3Q6IHJlYWN0aW9uLmNvdW50X2RldGFpbHMuYnVyc3QsXG4gICAgICAgIG5vcm1hbDogcmVhY3Rpb24uY291bnRfZGV0YWlscy5ub3JtYWwsXG4gICAgICB9LFxuICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciBUT0RPOiBEZWFsIHdpdGggcGFydGlhbHNcbiAgICAgIGVtb2ppOiBib3QudHJhbnNmb3JtZXJzLmVtb2ppKGJvdCwgcmVhY3Rpb24uZW1vamkpLFxuICAgICAgYnVyc3RDb2xvcnM6IHJlYWN0aW9uLmJ1cnN0X2NvbG9ycyxcbiAgICB9KSlcbiAgfVxuICBpZiAocHJvcHMuc3RpY2tlckl0ZW1zICYmIHBheWxvYWQubWVzc2FnZS5zdGlja2VyX2l0ZW1zPy5sZW5ndGgpXG4gICAgbWVzc2FnZS5zdGlja2VySXRlbXMgPSBwYXlsb2FkLm1lc3NhZ2Uuc3RpY2tlcl9pdGVtcy5tYXAoKGl0ZW0pID0+ICh7XG4gICAgICBpZDogYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UoaXRlbS5pZCksXG4gICAgICBuYW1lOiBpdGVtLm5hbWUsXG4gICAgICBmb3JtYXRUeXBlOiBpdGVtLmZvcm1hdF90eXBlLFxuICAgIH0pKVxuICBpZiAocGF5bG9hZC5tZXNzYWdlLnR0cykgbWVzc2FnZS50dHMgPSB0cnVlXG4gIGlmIChwcm9wcy50aHJlYWQgJiYgcGF5bG9hZC5tZXNzYWdlLnRocmVhZCkgbWVzc2FnZS50aHJlYWQgPSBib3QudHJhbnNmb3JtZXJzLmNoYW5uZWwoYm90LCB7IGNoYW5uZWw6IHBheWxvYWQubWVzc2FnZS50aHJlYWQsIGd1aWxkSWQgfSlcbiAgaWYgKHByb3BzLnR5cGUpIG1lc3NhZ2UudHlwZSA9IHBheWxvYWQubWVzc2FnZS50eXBlXG4gIGlmIChwcm9wcy53ZWJob29rSWQgJiYgcGF5bG9hZC5tZXNzYWdlLndlYmhvb2tfaWQpIG1lc3NhZ2Uud2ViaG9va0lkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5tZXNzYWdlLndlYmhvb2tfaWQpXG4gIGlmIChwcm9wcy5wb2xsICYmIHBheWxvYWQubWVzc2FnZS5wb2xsKSBtZXNzYWdlLnBvbGwgPSBib3QudHJhbnNmb3JtZXJzLnBvbGwoYm90LCBwYXlsb2FkLm1lc3NhZ2UucG9sbClcbiAgaWYgKHByb3BzLmNhbGwgJiYgcGF5bG9hZC5tZXNzYWdlLmNhbGwpIG1lc3NhZ2UuY2FsbCA9IGJvdC50cmFuc2Zvcm1lcnMubWVzc2FnZUNhbGwoYm90LCBwYXlsb2FkLm1lc3NhZ2UuY2FsbClcblxuICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jdXN0b21pemVycy5tZXNzYWdlKGJvdCwgcGF5bG9hZC5tZXNzYWdlLCBtZXNzYWdlKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtTWVzc2FnZVBpbihib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZE1lc3NhZ2VQaW4pOiBNZXNzYWdlUGluIHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLm1lc3NhZ2VQaW5cbiAgY29uc3QgbWVzc2FnZVBpbiA9IHt9IGFzIFNldHVwRGVzaXJlZFByb3BzPE1lc3NhZ2VQaW4sIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPlxuXG4gIGlmIChwcm9wcy5waW5uZWRBdCAmJiBwYXlsb2FkLnBpbm5lZF9hdCkgbWVzc2FnZVBpbi5waW5uZWRBdCA9IERhdGUucGFyc2UocGF5bG9hZC5waW5uZWRfYXQpXG4gIGlmIChwcm9wcy5tZXNzYWdlICYmIHBheWxvYWQubWVzc2FnZSkgbWVzc2FnZVBpbi5tZXNzYWdlID0gYm90LnRyYW5zZm9ybWVycy5tZXNzYWdlKGJvdCwgeyBtZXNzYWdlOiBwYXlsb2FkLm1lc3NhZ2UsIHNoYXJkSWQ6IDAgfSlcblxuICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jdXN0b21pemVycy5tZXNzYWdlUGluKGJvdCwgcGF5bG9hZCwgbWVzc2FnZVBpbilcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybU1lc3NhZ2VTbmFwc2hvdChib3Q6IEJvdCwgcGF5bG9hZDogeyBtZXNzYWdlU25hcHNob3Q6IERpc2NvcmRNZXNzYWdlU25hcHNob3Q7IHNoYXJkSWQ6IG51bWJlciB9KTogTWVzc2FnZVNuYXBzaG90IHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLm1lc3NhZ2VTbmFwc2hvdFxuICBjb25zdCBtZXNzYWdlU25hcHNob3QgPSB7fSBhcyBTZXR1cERlc2lyZWRQcm9wczxNZXNzYWdlU25hcHNob3QsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPlxuXG4gIGlmIChwcm9wcy5tZXNzYWdlICYmIHBheWxvYWQubWVzc2FnZVNuYXBzaG90Lm1lc3NhZ2UpXG4gICAgbWVzc2FnZVNuYXBzaG90Lm1lc3NhZ2UgPSBib3QudHJhbnNmb3JtZXJzLm1lc3NhZ2UoYm90LCB7XG4gICAgICBtZXNzYWdlOiBwYXlsb2FkLm1lc3NhZ2VTbmFwc2hvdC5tZXNzYWdlIGFzIERpc2NvcmRNZXNzYWdlLFxuICAgICAgc2hhcmRJZDogcGF5bG9hZC5zaGFyZElkLFxuICAgIH0pIGFzIE1lc3NhZ2VcblxuICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jdXN0b21pemVycy5tZXNzYWdlU25hcHNob3QoYm90LCBwYXlsb2FkLm1lc3NhZ2VTbmFwc2hvdCwgbWVzc2FnZVNuYXBzaG90KVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtTWVzc2FnZUludGVyYWN0aW9uTWV0YWRhdGEoYm90OiBCb3QsIHBheWxvYWQ6IERpc2NvcmRNZXNzYWdlSW50ZXJhY3Rpb25NZXRhZGF0YSk6IE1lc3NhZ2VJbnRlcmFjdGlvbk1ldGFkYXRhIHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLm1lc3NhZ2VJbnRlcmFjdGlvbk1ldGFkYXRhXG4gIGNvbnN0IG1ldGFkYXRhID0ge30gYXMgU2V0dXBEZXNpcmVkUHJvcHM8TWVzc2FnZUludGVyYWN0aW9uTWV0YWRhdGEsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPlxuXG4gIGlmIChwcm9wcy5pZCkgbWV0YWRhdGEuaWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLmlkKVxuICBpZiAocHJvcHMuYXV0aG9yaXppbmdJbnRlZ3JhdGlvbk93bmVycykge1xuICAgIG1ldGFkYXRhLmF1dGhvcml6aW5nSW50ZWdyYXRpb25Pd25lcnMgPSB7fVxuICAgIGlmIChwYXlsb2FkLmF1dGhvcml6aW5nX2ludGVncmF0aW9uX293bmVyc1snMCddKVxuICAgICAgbWV0YWRhdGEuYXV0aG9yaXppbmdJbnRlZ3JhdGlvbk93bmVyc1tEaXNjb3JkQXBwbGljYXRpb25JbnRlZ3JhdGlvblR5cGUuR3VpbGRJbnN0YWxsXSA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKFxuICAgICAgICBwYXlsb2FkLmF1dGhvcml6aW5nX2ludGVncmF0aW9uX293bmVyc1snMCddLFxuICAgICAgKVxuICAgIGlmIChwYXlsb2FkLmF1dGhvcml6aW5nX2ludGVncmF0aW9uX293bmVyc1snMSddKVxuICAgICAgbWV0YWRhdGEuYXV0aG9yaXppbmdJbnRlZ3JhdGlvbk93bmVyc1tEaXNjb3JkQXBwbGljYXRpb25JbnRlZ3JhdGlvblR5cGUuVXNlckluc3RhbGxdID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UoXG4gICAgICAgIHBheWxvYWQuYXV0aG9yaXppbmdfaW50ZWdyYXRpb25fb3duZXJzWycxJ10sXG4gICAgICApXG4gIH1cbiAgaWYgKHByb3BzLm9yaWdpbmFsUmVzcG9uc2VNZXNzYWdlSWQgJiYgcGF5bG9hZC5vcmlnaW5hbF9yZXNwb25zZV9tZXNzYWdlX2lkKVxuICAgIG1ldGFkYXRhLm9yaWdpbmFsUmVzcG9uc2VNZXNzYWdlSWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLm9yaWdpbmFsX3Jlc3BvbnNlX21lc3NhZ2VfaWQpXG4gIGlmIChwcm9wcy50eXBlKSBtZXRhZGF0YS50eXBlID0gcGF5bG9hZC50eXBlXG4gIGlmIChwcm9wcy51c2VyICYmIHBheWxvYWQudXNlcikgbWV0YWRhdGEudXNlciA9IGJvdC50cmFuc2Zvcm1lcnMudXNlcihib3QsIHBheWxvYWQudXNlcilcbiAgLy8gQXBwbGljYXRpb24gY29tbWFuZCBtZXRhZGF0YVxuICBpZiAoJ3RhcmdldF91c2VyJyBpbiBwYXlsb2FkKSB7XG4gICAgaWYgKHByb3BzLnRhcmdldFVzZXIgJiYgcGF5bG9hZC50YXJnZXRfdXNlcikgbWV0YWRhdGEudGFyZ2V0VXNlciA9IGJvdC50cmFuc2Zvcm1lcnMudXNlcihib3QsIHBheWxvYWQudGFyZ2V0X3VzZXIpXG4gICAgaWYgKHByb3BzLnRhcmdldE1lc3NhZ2VJZCAmJiBwYXlsb2FkLnRhcmdldF9tZXNzYWdlX2lkKSBtZXRhZGF0YS50YXJnZXRNZXNzYWdlSWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLnRhcmdldF9tZXNzYWdlX2lkKVxuICB9XG4gIC8vIE1lc3NhZ2UgY29tcG9uZW50IG1ldGFkYXRhXG4gIGlmICgnaW50ZXJhY3RlZF9tZXNzYWdlX2lkJyBpbiBwYXlsb2FkKSB7XG4gICAgaWYgKHByb3BzLmludGVyYWN0ZWRNZXNzYWdlSWQgJiYgcGF5bG9hZC5pbnRlcmFjdGVkX21lc3NhZ2VfaWQpXG4gICAgICBtZXRhZGF0YS5pbnRlcmFjdGVkTWVzc2FnZUlkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5pbnRlcmFjdGVkX21lc3NhZ2VfaWQpXG4gIH1cbiAgLy8gTW9kYWwgc3VibWl0IG1ldGFkYXRhXG4gIGlmICgndHJpZ2dlcmluZ19pbnRlcmFjdGlvbl9tZXRhZGF0YScgaW4gcGF5bG9hZCkge1xuICAgIGlmIChwcm9wcy50cmlnZ2VyaW5nSW50ZXJhY3Rpb25NZXRhZGF0YSAmJiBwYXlsb2FkLnRyaWdnZXJpbmdfaW50ZXJhY3Rpb25fbWV0YWRhdGEpXG4gICAgICBtZXRhZGF0YS50cmlnZ2VyaW5nSW50ZXJhY3Rpb25NZXRhZGF0YSA9IGJvdC50cmFuc2Zvcm1lcnMubWVzc2FnZUludGVyYWN0aW9uTWV0YWRhdGEoYm90LCBwYXlsb2FkLnRyaWdnZXJpbmdfaW50ZXJhY3Rpb25fbWV0YWRhdGEpXG4gIH1cblxuICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jdXN0b21pemVycy5tZXNzYWdlSW50ZXJhY3Rpb25NZXRhZGF0YShib3QsIHBheWxvYWQsIG1ldGFkYXRhKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtTWVzc2FnZUNhbGwoYm90OiBCb3QsIHBheWxvYWQ6IERpc2NvcmRNZXNzYWdlQ2FsbCk6IE1lc3NhZ2VDYWxsIHtcbiAgY29uc3QgY2FsbCA9IHt9IGFzIFNldHVwRGVzaXJlZFByb3BzPE1lc3NhZ2VDYWxsLCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcj5cbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLm1lc3NhZ2VDYWxsXG5cbiAgaWYgKHByb3BzLnBhcnRpY2lwYW50cyAmJiBwYXlsb2FkLnBhcnRpY2lwYW50cykgY2FsbC5wYXJ0aWNpcGFudHMgPSBwYXlsb2FkLnBhcnRpY2lwYW50cy5tYXAoKHgpID0+IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHgpKVxuICBpZiAocHJvcHMuZW5kZWRUaW1lc3RhbXAgJiYgcGF5bG9hZC5lbmRlZF90aW1lc3RhbXApIGNhbGwuZW5kZWRUaW1lc3RhbXAgPSBEYXRlLnBhcnNlKHBheWxvYWQuZW5kZWRfdGltZXN0YW1wKVxuXG4gIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmN1c3RvbWl6ZXJzLm1lc3NhZ2VDYWxsKGJvdCwgcGF5bG9hZCwgY2FsbClcbn1cbiJdLCJuYW1lcyI6WyJiYXNlTWVzc2FnZSIsInRyYW5zZm9ybU1lc3NhZ2UiLCJ0cmFuc2Zvcm1NZXNzYWdlQ2FsbCIsInRyYW5zZm9ybU1lc3NhZ2VJbnRlcmFjdGlvbk1ldGFkYXRhIiwidHJhbnNmb3JtTWVzc2FnZVBpbiIsInRyYW5zZm9ybU1lc3NhZ2VTbmFwc2hvdCIsIkVNUFRZX1NUUklORyIsInVuZGVmaW5lZCIsImNyb3NzcG9zdGVkIiwiZmxhZ3MiLCJjb250YWlucyIsIk1lc3NhZ2VGbGFncyIsIkNyb3NzcG9zdGVkIiwidmFsdWUiLCJhZGQiLCJyZW1vdmUiLCJlcGhlbWVyYWwiLCJFcGhlbWVyYWwiLCJmYWlsZWRUb01lbnRpb25Tb21lUm9sZXNJblRocmVhZCIsIkZhaWxlZFRvTWVudGlvblNvbWVSb2xlc0luVGhyZWFkIiwiaGFzVGhyZWFkIiwiSGFzVGhyZWFkIiwiaXNDcm9zc3Bvc3QiLCJJc0Nyb3NzcG9zdCIsImxvYWRpbmciLCJMb2FkaW5nIiwibWVudGlvbmVkVXNlcklkcyIsIm1lbnRpb25zIiwibWFwIiwidXNlciIsImlkIiwibWVudGlvbkV2ZXJ5b25lIiwiYml0ZmllbGQiLCJwaW5uZWQiLCJzb3VyY2VNZXNzYWdlRGVsZXRlZCIsIlNvdXJjZU1lc3NhZ2VEZWxldGVkIiwic3VwcHJlc3NFbWJlZHMiLCJTdXBwcmVzc0VtYmVkcyIsInN1cHByZXNzTm90aWZpY2F0aW9ucyIsIlN1cHByZXNzTm90aWZpY2F0aW9ucyIsInRpbWVzdGFtcCIsInNub3dmbGFrZVRvVGltZXN0YW1wIiwidHRzIiwidXJnZW50IiwiVXJnZW50IiwiYm90IiwicGF5bG9hZCIsImd1aWxkSWQiLCJtZXNzYWdlIiwiZ3VpbGRfaWQiLCJ0cmFuc2Zvcm1lcnMiLCJzbm93Zmxha2UiLCJ1c2VySWQiLCJhdXRob3IiLCJPYmplY3QiLCJjcmVhdGUiLCJUb2dnbGVCaXRmaWVsZCIsInByb3BzIiwiZGVzaXJlZFByb3BlcnRpZXMiLCJhcHBsaWNhdGlvbiIsInNoYXJkSWQiLCJhcHBsaWNhdGlvbklkIiwiYXBwbGljYXRpb25faWQiLCJhdHRhY2htZW50cyIsImxlbmd0aCIsImF0dGFjaG1lbnQiLCJjaGFubmVsSWQiLCJjaGFubmVsX2lkIiwiY29tcG9uZW50cyIsImNvbXAiLCJjb21wb25lbnQiLCJjb250ZW50IiwiZWRpdGVkVGltZXN0YW1wIiwiZWRpdGVkX3RpbWVzdGFtcCIsIkRhdGUiLCJwYXJzZSIsImVtYmVkcyIsImVtYmVkIiwiaW50ZXJhY3Rpb25NZXRhZGF0YSIsImludGVyYWN0aW9uX21ldGFkYXRhIiwibWVzc2FnZUludGVyYWN0aW9uTWV0YWRhdGEiLCJpbnRlcmFjdGlvbiIsIm1lc3NhZ2VJbnRlcmFjdGlvblByb3BzIiwibWVzc2FnZUludGVyYWN0aW9uIiwibWVtYmVyIiwibmFtZSIsInR5cGUiLCJtZW50aW9uX2V2ZXJ5b25lIiwibWVudGlvbmVkQ2hhbm5lbElkcyIsIm1lbnRpb25fY2hhbm5lbHMiLCJtIiwibWF0Y2giLCJDSEFOTkVMX01FTlRJT05fUkVHRVgiLCJ0ZXh0Iiwic3Vic3RyaW5nIiwibWVudGlvbmVkUm9sZUlkcyIsIm1lbnRpb25fcm9sZXMiLCJtZXNzYWdlUmVmZXJlbmNlIiwibWVzc2FnZV9yZWZlcmVuY2UiLCJyZWZlcmVuY2UiLCJtZXNzYWdlUmVmZXJlbmNlUHJvcHMiLCJtZXNzYWdlSWQiLCJtZXNzYWdlX2lkIiwicmVmZXJlbmNlZE1lc3NhZ2UiLCJyZWZlcmVuY2VkX21lc3NhZ2UiLCJtZXNzYWdlU25hcHNob3RzIiwibWVzc2FnZV9zbmFwc2hvdHMiLCJzbmFwIiwibWVzc2FnZVNuYXBzaG90Iiwibm9uY2UiLCJyZWFjdGlvbnMiLCJyZWFjdGlvbiIsIm1lIiwibWVCdXJzdCIsIm1lX2J1cnN0IiwiY291bnQiLCJjb3VudERldGFpbHMiLCJidXJzdCIsImNvdW50X2RldGFpbHMiLCJub3JtYWwiLCJlbW9qaSIsImJ1cnN0Q29sb3JzIiwiYnVyc3RfY29sb3JzIiwic3RpY2tlckl0ZW1zIiwic3RpY2tlcl9pdGVtcyIsIml0ZW0iLCJmb3JtYXRUeXBlIiwiZm9ybWF0X3R5cGUiLCJ0aHJlYWQiLCJjaGFubmVsIiwid2ViaG9va0lkIiwid2ViaG9va19pZCIsInBvbGwiLCJjYWxsIiwibWVzc2FnZUNhbGwiLCJjdXN0b21pemVycyIsIm1lc3NhZ2VQaW4iLCJwaW5uZWRBdCIsInBpbm5lZF9hdCIsIm1ldGFkYXRhIiwiYXV0aG9yaXppbmdJbnRlZ3JhdGlvbk93bmVycyIsImF1dGhvcml6aW5nX2ludGVncmF0aW9uX293bmVycyIsIkRpc2NvcmRBcHBsaWNhdGlvbkludGVncmF0aW9uVHlwZSIsIkd1aWxkSW5zdGFsbCIsIlVzZXJJbnN0YWxsIiwib3JpZ2luYWxSZXNwb25zZU1lc3NhZ2VJZCIsIm9yaWdpbmFsX3Jlc3BvbnNlX21lc3NhZ2VfaWQiLCJ0YXJnZXRVc2VyIiwidGFyZ2V0X3VzZXIiLCJ0YXJnZXRNZXNzYWdlSWQiLCJ0YXJnZXRfbWVzc2FnZV9pZCIsImludGVyYWN0ZWRNZXNzYWdlSWQiLCJpbnRlcmFjdGVkX21lc3NhZ2VfaWQiLCJ0cmlnZ2VyaW5nSW50ZXJhY3Rpb25NZXRhZGF0YSIsInRyaWdnZXJpbmdfaW50ZXJhY3Rpb25fbWV0YWRhdGEiLCJwYXJ0aWNpcGFudHMiLCJ4IiwiZW5kZWRUaW1lc3RhbXAiLCJlbmRlZF90aW1lc3RhbXAiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O1FBNEJhQTtlQUFBQTs7UUFvSEdDO2VBQUFBOztR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
@@ -5,17 +5,17 @@ Object.defineProperty(exports, "__esModule", {
5
5
  function _export(target, all) {
6
6
  for(var name in all)Object.defineProperty(target, name, {
7
7
  enumerable: true,
8
- get: all[name]
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- transformGuildOnboarding: function() {
12
+ get transformGuildOnboarding () {
13
13
  return transformGuildOnboarding;
14
14
  },
15
- transformGuildOnboardingPrompt: function() {
15
+ get transformGuildOnboardingPrompt () {
16
16
  return transformGuildOnboardingPrompt;
17
17
  },
18
- transformGuildOnboardingPromptOption: function() {
18
+ get transformGuildOnboardingPromptOption () {
19
19
  return transformGuildOnboardingPromptOption;
20
20
  }
21
21
  });
@@ -32,7 +32,7 @@ function transformGuildOnboarding(bot, payload) {
32
32
  function transformGuildOnboardingPrompt(bot, payload) {
33
33
  const props = bot.transformers.desiredProperties.guildOnboardingPrompt;
34
34
  const prompt = {};
35
- if (props.id && payload.id) prompt.id = bot.transformers.snowflake(prompt.id);
35
+ if (props.id && payload.id) prompt.id = bot.transformers.snowflake(payload.id);
36
36
  if (props.inOnboarding && payload.in_onboarding) prompt.inOnboarding = payload.in_onboarding;
37
37
  if (props.required && payload.required) prompt.required = payload.required;
38
38
  if (props.singleSelect && payload.single_select) prompt.singleSelect = payload.single_select;
@@ -53,4 +53,4 @@ function transformGuildOnboardingPromptOption(bot, payload) {
53
53
  return bot.transformers.customizers.guildOnboardingPromptOption(bot, payload, option);
54
54
  }
55
55
 
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvb25ib2FyZGluZy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IERpc2NvcmRHdWlsZE9uYm9hcmRpbmcsIERpc2NvcmRHdWlsZE9uYm9hcmRpbmdQcm9tcHQsIERpc2NvcmRHdWlsZE9uYm9hcmRpbmdQcm9tcHRPcHRpb24gfSBmcm9tICdAZGlzY29yZGVuby90eXBlcydcbmltcG9ydCB0eXBlIHsgR3VpbGRPbmJvYXJkaW5nLCBHdWlsZE9uYm9hcmRpbmdQcm9tcHQsIEd1aWxkT25ib2FyZGluZ1Byb21wdE9wdGlvbiwgSW50ZXJuYWxCb3QgfSBmcm9tICcuLi9pbmRleC5qcydcblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUd1aWxkT25ib2FyZGluZyhib3Q6IEludGVybmFsQm90LCBwYXlsb2FkOiBEaXNjb3JkR3VpbGRPbmJvYXJkaW5nKTogdHlwZW9mIGJvdC50cmFuc2Zvcm1lcnMuJGluZmVycmVkVHlwZXMuZ3VpbGRPbmJvYXJkaW5nIHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmd1aWxkT25ib2FyZGluZ1xuICBjb25zdCBndWlsZE9uYm9hcmRpbmcgPSB7fSBhcyBHdWlsZE9uYm9hcmRpbmdcblxuICBpZiAocHJvcHMuZ3VpbGRJZCAmJiBwYXlsb2FkLmd1aWxkX2lkKSBndWlsZE9uYm9hcmRpbmcuZ3VpbGRJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuZ3VpbGRfaWQpXG4gIGlmIChwcm9wcy5kZWZhdWx0Q2hhbm5lbElkcyAmJiBwYXlsb2FkLmRlZmF1bHRfY2hhbm5lbF9pZHMpXG4gICAgZ3VpbGRPbmJvYXJkaW5nLmRlZmF1bHRDaGFubmVsSWRzID0gcGF5bG9hZC5kZWZhdWx0X2NoYW5uZWxfaWRzLm1hcChib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZSlcbiAgaWYgKHByb3BzLmVuYWJsZWQpIGd1aWxkT25ib2FyZGluZy5lbmFibGVkID0gcGF5bG9hZC5lbmFibGVkXG4gIGlmIChwcm9wcy5tb2RlKSBndWlsZE9uYm9hcmRpbmcubW9kZSA9IHBheWxvYWQubW9kZVxuICBpZiAocHJvcHMucHJvbXB0cyAmJiBwYXlsb2FkLnByb21wdHMpIGd1aWxkT25ib2FyZGluZy5wcm9tcHRzID0gcGF5bG9hZC5wcm9tcHRzLm1hcCgocHJvbXB0KSA9PiBib3QudHJhbnNmb3JtZXJzLmd1aWxkT25ib2FyZGluZ1Byb21wdChib3QsIHByb21wdCkpXG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMuZ3VpbGRPbmJvYXJkaW5nKGJvdCwgcGF5bG9hZCwgZ3VpbGRPbmJvYXJkaW5nKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtR3VpbGRPbmJvYXJkaW5nUHJvbXB0KFxuICBib3Q6IEludGVybmFsQm90LFxuICBwYXlsb2FkOiBEaXNjb3JkR3VpbGRPbmJvYXJkaW5nUHJvbXB0LFxuKTogdHlwZW9mIGJvdC50cmFuc2Zvcm1lcnMuJGluZmVycmVkVHlwZXMuZ3VpbGRPbmJvYXJkaW5nUHJvbXB0IHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmd1aWxkT25ib2FyZGluZ1Byb21wdFxuICBjb25zdCBwcm9tcHQgPSB7fSBhcyBHdWlsZE9uYm9hcmRpbmdQcm9tcHRcblxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgcHJvbXB0LmlkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocHJvbXB0LmlkKVxuICBpZiAocHJvcHMuaW5PbmJvYXJkaW5nICYmIHBheWxvYWQuaW5fb25ib2FyZGluZykgcHJvbXB0LmluT25ib2FyZGluZyA9IHBheWxvYWQuaW5fb25ib2FyZGluZ1xuICBpZiAocHJvcHMucmVxdWlyZWQgJiYgcGF5bG9hZC5yZXF1aXJlZCkgcHJvbXB0LnJlcXVpcmVkID0gcGF5bG9hZC5yZXF1aXJlZFxuICBpZiAocHJvcHMuc2luZ2xlU2VsZWN0ICYmIHBheWxvYWQuc2luZ2xlX3NlbGVjdCkgcHJvbXB0LnNpbmdsZVNlbGVjdCA9IHBheWxvYWQuc2luZ2xlX3NlbGVjdFxuICBpZiAocHJvcHMudGl0bGUgJiYgcGF5bG9hZC50aXRsZSkgcHJvbXB0LnRpdGxlID0gcGF5bG9hZC50aXRsZVxuICBpZiAocHJvcHMudHlwZSkgcHJvbXB0LnR5cGUgPSBwYXlsb2FkLnR5cGVcbiAgaWYgKHByb3BzLm9wdGlvbnMgJiYgcGF5bG9hZC5vcHRpb25zKSBwcm9tcHQub3B0aW9ucyA9IHBheWxvYWQub3B0aW9ucy5tYXAoKG9wdGlvbikgPT4gYm90LnRyYW5zZm9ybWVycy5ndWlsZE9uYm9hcmRpbmdQcm9tcHRPcHRpb24oYm90LCBvcHRpb24pKVxuXG4gIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmN1c3RvbWl6ZXJzLmd1aWxkT25ib2FyZGluZ1Byb21wdChib3QsIHBheWxvYWQsIHByb21wdClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUd1aWxkT25ib2FyZGluZ1Byb21wdE9wdGlvbihcbiAgYm90OiBJbnRlcm5hbEJvdCxcbiAgcGF5bG9hZDogRGlzY29yZEd1aWxkT25ib2FyZGluZ1Byb21wdE9wdGlvbixcbik6IHR5cGVvZiBib3QudHJhbnNmb3JtZXJzLiRpbmZlcnJlZFR5cGVzLmd1aWxkT25ib2FyZGluZ1Byb21wdE9wdGlvbiB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5ndWlsZE9uYm9hcmRpbmdQcm9tcHRPcHRpb25cbiAgY29uc3Qgb3B0aW9uID0ge30gYXMgR3VpbGRPbmJvYXJkaW5nUHJvbXB0T3B0aW9uXG5cbiAgaWYgKHByb3BzLmlkICYmIHBheWxvYWQuaWQpIG9wdGlvbi5pZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuaWQpXG4gIGlmIChwcm9wcy5jaGFubmVsSWRzICYmIHBheWxvYWQuY2hhbm5lbF9pZHMpIG9wdGlvbi5jaGFubmVsSWRzID0gcGF5bG9hZC5jaGFubmVsX2lkcy5tYXAoYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UpXG4gIGlmIChwcm9wcy5yb2xlSWRzICYmIHBheWxvYWQucm9sZV9pZHMpIG9wdGlvbi5yb2xlSWRzID0gcGF5bG9hZC5yb2xlX2lkcy5tYXAoYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UpXG4gIGlmIChwcm9wcy5lbW9qaSAmJiBwYXlsb2FkLmVtb2ppKSBvcHRpb24uZW1vamkgPSBib3QudHJhbnNmb3JtZXJzLmVtb2ppKGJvdCwgcGF5bG9hZC5lbW9qaSlcbiAgaWYgKHByb3BzLnRpdGxlICYmIHBheWxvYWQudGl0bGUpIG9wdGlvbi50aXRsZSA9IHBheWxvYWQudGl0bGVcbiAgaWYgKHByb3BzLmRlc2NyaXB0aW9uICYmIHBheWxvYWQuZGVzY3JpcHRpb24pIG9wdGlvbi5kZXNjcmlwdGlvbiA9IHBheWxvYWQuZGVzY3JpcHRpb25cblxuICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jdXN0b21pemVycy5ndWlsZE9uYm9hcmRpbmdQcm9tcHRPcHRpb24oYm90LCBwYXlsb2FkLCBvcHRpb24pXG59XG4iXSwibmFtZXMiOlsidHJhbnNmb3JtR3VpbGRPbmJvYXJkaW5nIiwidHJhbnNmb3JtR3VpbGRPbmJvYXJkaW5nUHJvbXB0IiwidHJhbnNmb3JtR3VpbGRPbmJvYXJkaW5nUHJvbXB0T3B0aW9uIiwiYm90IiwicGF5bG9hZCIsInByb3BzIiwidHJhbnNmb3JtZXJzIiwiZGVzaXJlZFByb3BlcnRpZXMiLCJndWlsZE9uYm9hcmRpbmciLCJndWlsZElkIiwiZ3VpbGRfaWQiLCJzbm93Zmxha2UiLCJkZWZhdWx0Q2hhbm5lbElkcyIsImRlZmF1bHRfY2hhbm5lbF9pZHMiLCJtYXAiLCJlbmFibGVkIiwibW9kZSIsInByb21wdHMiLCJwcm9tcHQiLCJndWlsZE9uYm9hcmRpbmdQcm9tcHQiLCJjdXN0b21pemVycyIsImlkIiwiaW5PbmJvYXJkaW5nIiwiaW5fb25ib2FyZGluZyIsInJlcXVpcmVkIiwic2luZ2xlU2VsZWN0Iiwic2luZ2xlX3NlbGVjdCIsInRpdGxlIiwidHlwZSIsIm9wdGlvbnMiLCJvcHRpb24iLCJndWlsZE9uYm9hcmRpbmdQcm9tcHRPcHRpb24iLCJjaGFubmVsSWRzIiwiY2hhbm5lbF9pZHMiLCJyb2xlSWRzIiwicm9sZV9pZHMiLCJlbW9qaSIsImRlc2NyaXB0aW9uIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztJQUdnQkEsd0JBQXdCO2VBQXhCQTs7SUFjQUMsOEJBQThCO2VBQTlCQTs7SUFrQkFDLG9DQUFvQztlQUFwQ0E7OztBQWhDVCxTQUFTRix5QkFBeUJHLEdBQWdCLEVBQUVDLE9BQStCO0lBQ3hGLE1BQU1DLFFBQVFGLElBQUlHLFlBQVksQ0FBQ0MsaUJBQWlCLENBQUNDLGVBQWU7SUFDaEUsTUFBTUEsa0JBQWtCLENBQUM7SUFFekIsSUFBSUgsTUFBTUksT0FBTyxJQUFJTCxRQUFRTSxRQUFRLEVBQUVGLGdCQUFnQkMsT0FBTyxHQUFHTixJQUFJRyxZQUFZLENBQUNLLFNBQVMsQ0FBQ1AsUUFBUU0sUUFBUTtJQUM1RyxJQUFJTCxNQUFNTyxpQkFBaUIsSUFBSVIsUUFBUVMsbUJBQW1CLEVBQ3hETCxnQkFBZ0JJLGlCQUFpQixHQUFHUixRQUFRUyxtQkFBbUIsQ0FBQ0MsR0FBRyxDQUFDWCxJQUFJRyxZQUFZLENBQUNLLFNBQVM7SUFDaEcsSUFBSU4sTUFBTVUsT0FBTyxFQUFFUCxnQkFBZ0JPLE9BQU8sR0FBR1gsUUFBUVcsT0FBTztJQUM1RCxJQUFJVixNQUFNVyxJQUFJLEVBQUVSLGdCQUFnQlEsSUFBSSxHQUFHWixRQUFRWSxJQUFJO0lBQ25ELElBQUlYLE1BQU1ZLE9BQU8sSUFBSWIsUUFBUWEsT0FBTyxFQUFFVCxnQkFBZ0JTLE9BQU8sR0FBR2IsUUFBUWEsT0FBTyxDQUFDSCxHQUFHLENBQUMsQ0FBQ0ksU0FBV2YsSUFBSUcsWUFBWSxDQUFDYSxxQkFBcUIsQ0FBQ2hCLEtBQUtlO0lBRTVJLE9BQU9mLElBQUlH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
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvb25ib2FyZGluZy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IERpc2NvcmRHdWlsZE9uYm9hcmRpbmcsIERpc2NvcmRHdWlsZE9uYm9hcmRpbmdQcm9tcHQsIERpc2NvcmRHdWlsZE9uYm9hcmRpbmdQcm9tcHRPcHRpb24gfSBmcm9tICdAZGlzY29yZGVuby90eXBlcydcbmltcG9ydCB0eXBlIHtcbiAgQm90LFxuICBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yLFxuICBHdWlsZE9uYm9hcmRpbmcsXG4gIEd1aWxkT25ib2FyZGluZ1Byb21wdCxcbiAgR3VpbGRPbmJvYXJkaW5nUHJvbXB0T3B0aW9uLFxuICBTZXR1cERlc2lyZWRQcm9wcyxcbiAgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsXG59IGZyb20gJy4uL2luZGV4LmpzJ1xuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtR3VpbGRPbmJvYXJkaW5nKGJvdDogQm90LCBwYXlsb2FkOiBEaXNjb3JkR3VpbGRPbmJvYXJkaW5nKTogR3VpbGRPbmJvYXJkaW5nIHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmd1aWxkT25ib2FyZGluZ1xuICBjb25zdCBndWlsZE9uYm9hcmRpbmcgPSB7fSBhcyBTZXR1cERlc2lyZWRQcm9wczxHdWlsZE9uYm9hcmRpbmcsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPlxuXG4gIGlmIChwcm9wcy5ndWlsZElkICYmIHBheWxvYWQuZ3VpbGRfaWQpIGd1aWxkT25ib2FyZGluZy5ndWlsZElkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5ndWlsZF9pZClcbiAgaWYgKHByb3BzLmRlZmF1bHRDaGFubmVsSWRzICYmIHBheWxvYWQuZGVmYXVsdF9jaGFubmVsX2lkcylcbiAgICBndWlsZE9uYm9hcmRpbmcuZGVmYXVsdENoYW5uZWxJZHMgPSBwYXlsb2FkLmRlZmF1bHRfY2hhbm5lbF9pZHMubWFwKGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKVxuICBpZiAocHJvcHMuZW5hYmxlZCkgZ3VpbGRPbmJvYXJkaW5nLmVuYWJsZWQgPSBwYXlsb2FkLmVuYWJsZWRcbiAgaWYgKHByb3BzLm1vZGUpIGd1aWxkT25ib2FyZGluZy5tb2RlID0gcGF5bG9hZC5tb2RlXG4gIGlmIChwcm9wcy5wcm9tcHRzICYmIHBheWxvYWQucHJvbXB0cykgZ3VpbGRPbmJvYXJkaW5nLnByb21wdHMgPSBwYXlsb2FkLnByb21wdHMubWFwKChwcm9tcHQpID0+IGJvdC50cmFuc2Zvcm1lcnMuZ3VpbGRPbmJvYXJkaW5nUHJvbXB0KGJvdCwgcHJvbXB0KSlcblxuICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jdXN0b21pemVycy5ndWlsZE9uYm9hcmRpbmcoYm90LCBwYXlsb2FkLCBndWlsZE9uYm9hcmRpbmcpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1HdWlsZE9uYm9hcmRpbmdQcm9tcHQoYm90OiBCb3QsIHBheWxvYWQ6IERpc2NvcmRHdWlsZE9uYm9hcmRpbmdQcm9tcHQpOiBHdWlsZE9uYm9hcmRpbmdQcm9tcHQge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuZ3VpbGRPbmJvYXJkaW5nUHJvbXB0XG4gIGNvbnN0IHByb21wdCA9IHt9IGFzIFNldHVwRGVzaXJlZFByb3BzPEd1aWxkT25ib2FyZGluZ1Byb21wdCwgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+XG5cbiAgaWYgKHByb3BzLmlkICYmIHBheWxvYWQuaWQpIHByb21wdC5pZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuaWQpXG4gIGlmIChwcm9wcy5pbk9uYm9hcmRpbmcgJiYgcGF5bG9hZC5pbl9vbmJvYXJkaW5nKSBwcm9tcHQuaW5PbmJvYXJkaW5nID0gcGF5bG9hZC5pbl9vbmJvYXJkaW5nXG4gIGlmIChwcm9wcy5yZXF1aXJlZCAmJiBwYXlsb2FkLnJlcXVpcmVkKSBwcm9tcHQucmVxdWlyZWQgPSBwYXlsb2FkLnJlcXVpcmVkXG4gIGlmIChwcm9wcy5zaW5nbGVTZWxlY3QgJiYgcGF5bG9hZC5zaW5nbGVfc2VsZWN0KSBwcm9tcHQuc2luZ2xlU2VsZWN0ID0gcGF5bG9hZC5zaW5nbGVfc2VsZWN0XG4gIGlmIChwcm9wcy50aXRsZSAmJiBwYXlsb2FkLnRpdGxlKSBwcm9tcHQudGl0bGUgPSBwYXlsb2FkLnRpdGxlXG4gIGlmIChwcm9wcy50eXBlKSBwcm9tcHQudHlwZSA9IHBheWxvYWQudHlwZVxuICBpZiAocHJvcHMub3B0aW9ucyAmJiBwYXlsb2FkLm9wdGlvbnMpIHByb21wdC5vcHRpb25zID0gcGF5bG9hZC5vcHRpb25zLm1hcCgob3B0aW9uKSA9PiBib3QudHJhbnNmb3JtZXJzLmd1aWxkT25ib2FyZGluZ1Byb21wdE9wdGlvbihib3QsIG9wdGlvbikpXG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMuZ3VpbGRPbmJvYXJkaW5nUHJvbXB0KGJvdCwgcGF5bG9hZCwgcHJvbXB0KVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtR3VpbGRPbmJvYXJkaW5nUHJvbXB0T3B0aW9uKGJvdDogQm90LCBwYXlsb2FkOiBEaXNjb3JkR3VpbGRPbmJvYXJkaW5nUHJvbXB0T3B0aW9uKTogR3VpbGRPbmJvYXJkaW5nUHJvbXB0T3B0aW9uIHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmd1aWxkT25ib2FyZGluZ1Byb21wdE9wdGlvblxuICBjb25zdCBvcHRpb24gPSB7fSBhcyBTZXR1cERlc2lyZWRQcm9wczxHdWlsZE9uYm9hcmRpbmdQcm9tcHRPcHRpb24sIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPlxuXG4gIGlmIChwcm9wcy5pZCAmJiBwYXlsb2FkLmlkKSBvcHRpb24uaWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLmlkKVxuICBpZiAocHJvcHMuY2hhbm5lbElkcyAmJiBwYXlsb2FkLmNoYW5uZWxfaWRzKSBvcHRpb24uY2hhbm5lbElkcyA9IHBheWxvYWQuY2hhbm5lbF9pZHMubWFwKGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKVxuICBpZiAocHJvcHMucm9sZUlkcyAmJiBwYXlsb2FkLnJvbGVfaWRzKSBvcHRpb24ucm9sZUlkcyA9IHBheWxvYWQucm9sZV9pZHMubWFwKGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKVxuICBpZiAocHJvcHMuZW1vamkgJiYgcGF5bG9hZC5lbW9qaSkgb3B0aW9uLmVtb2ppID0gYm90LnRyYW5zZm9ybWVycy5lbW9qaShib3QsIHBheWxvYWQuZW1vamkpXG4gIGlmIChwcm9wcy50aXRsZSAmJiBwYXlsb2FkLnRpdGxlKSBvcHRpb24udGl0bGUgPSBwYXlsb2FkLnRpdGxlXG4gIGlmIChwcm9wcy5kZXNjcmlwdGlvbiAmJiBwYXlsb2FkLmRlc2NyaXB0aW9uKSBvcHRpb24uZGVzY3JpcHRpb24gPSBwYXlsb2FkLmRlc2NyaXB0aW9uXG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMuZ3VpbGRPbmJvYXJkaW5nUHJvbXB0T3B0aW9uKGJvdCwgcGF5bG9hZCwgb3B0aW9uKVxufVxuIl0sIm5hbWVzIjpbInRyYW5zZm9ybUd1aWxkT25ib2FyZGluZyIsInRyYW5zZm9ybUd1aWxkT25ib2FyZGluZ1Byb21wdCIsInRyYW5zZm9ybUd1aWxkT25ib2FyZGluZ1Byb21wdE9wdGlvbiIsImJvdCIsInBheWxvYWQiLCJwcm9wcyIsInRyYW5zZm9ybWVycyIsImRlc2lyZWRQcm9wZXJ0aWVzIiwiZ3VpbGRPbmJvYXJkaW5nIiwiZ3VpbGRJZCIsImd1aWxkX2lkIiwic25vd2ZsYWtlIiwiZGVmYXVsdENoYW5uZWxJZHMiLCJkZWZhdWx0X2NoYW5uZWxfaWRzIiwibWFwIiwiZW5hYmxlZCIsIm1vZGUiLCJwcm9tcHRzIiwicHJvbXB0IiwiZ3VpbGRPbmJvYXJkaW5nUHJvbXB0IiwiY3VzdG9taXplcnMiLCJpZCIsImluT25ib2FyZGluZyIsImluX29uYm9hcmRpbmciLCJyZXF1aXJlZCIsInNpbmdsZVNlbGVjdCIsInNpbmdsZV9zZWxlY3QiLCJ0aXRsZSIsInR5cGUiLCJvcHRpb25zIiwib3B0aW9uIiwiZ3VpbGRPbmJvYXJkaW5nUHJvbXB0T3B0aW9uIiwiY2hhbm5lbElkcyIsImNoYW5uZWxfaWRzIiwicm9sZUlkcyIsInJvbGVfaWRzIiwiZW1vamkiLCJkZXNjcmlwdGlvbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7UUFXZ0JBO2VBQUFBOztRQWNBQztlQUFBQTs7UUFlQUM7ZUFBQUE7OztBQTdCVCxTQUFTRix5QkFBeUJHLEdBQVEsRUFBRUMsT0FBK0I7SUFDaEYsTUFBTUMsUUFBUUYsSUFBSUcsWUFBWSxDQUFDQyxpQkFBaUIsQ0FBQ0MsZUFBZTtJQUNoRSxNQUFNQSxrQkFBa0IsQ0FBQztJQUV6QixJQUFJSCxNQUFNSSxPQUFPLElBQUlMLFFBQVFNLFFBQVEsRUFBRUYsZ0JBQWdCQyxPQUFPLEdBQUdOLElBQUlHLFlBQVksQ0FBQ0ssU0FBUyxDQUFDUCxRQUFRTSxRQUFRO0lBQzVHLElBQUlMLE1BQU1PLGlCQUFpQixJQUFJUixRQUFRUyxtQkFBbUIsRUFDeERMLGdCQUFnQkksaUJBQWlCLEdBQUdSLFFBQVFTLG1CQUFtQixDQUFDQyxHQUFHLENBQUNYLElBQUlHLFlBQVksQ0FBQ0ssU0FBUztJQUNoRyxJQUFJTixNQUFNVSxPQUFPLEVBQUVQLGdCQUFnQk8sT0FBTyxHQUFHWCxRQUFRVyxPQUFPO0lBQzVELElBQUlWLE1BQU1XLElBQUksRUFBRVIsZ0JBQWdCUSxJQUFJLEdBQUdaLFFBQVFZLElBQUk7SUFDbkQsSUFBSVgsTUFBTVksT0FB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
@@ -5,14 +5,14 @@ Object.defineProperty(exports, "__esModule", {
5
5
  function _export(target, all) {
6
6
  for(var name in all)Object.defineProperty(target, name, {
7
7
  enumerable: true,
8
- get: all[name]
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- transformPoll: function() {
12
+ get transformPoll () {
13
13
  return transformPoll;
14
14
  },
15
- transformPollMedia: function() {
15
+ get transformPollMedia () {
16
16
  return transformPollMedia;
17
17
  }
18
18
  });
@@ -28,14 +28,15 @@ function transformPoll(bot, payload) {
28
28
  if (props.allowMultiselect && payload.allow_multiselect) poll.allowMultiselect = payload.allow_multiselect;
29
29
  if (props.layoutType) poll.layoutType = payload.layout_type;
30
30
  if (props.results && payload.results) {
31
- poll.results = {};
31
+ const results = {};
32
32
  const pollResultProps = bot.transformers.desiredProperties.pollResult;
33
- if (pollResultProps.isFinalized && payload.results.is_finalized) poll.results.isFinalized = payload.results.is_finalized;
34
- if (pollResultProps.answerCounts && payload.results.answer_counts) poll.results.answerCounts = payload.results.answer_counts.map((x)=>({
33
+ if (pollResultProps.isFinalized && payload.results.is_finalized) results.isFinalized = payload.results.is_finalized;
34
+ if (pollResultProps.answerCounts && payload.results.answer_counts) results.answerCounts = payload.results.answer_counts.map((x)=>({
35
35
  id: x.id,
36
36
  count: x.count,
37
37
  meVoted: x.me_voted
38
38
  }));
39
+ poll.results = results;
39
40
  }
40
41
  return bot.transformers.customizers.poll(bot, payload, poll);
41
42
  }
@@ -47,4 +48,4 @@ function transformPollMedia(bot, payload) {
47
48
  return bot.transformers.customizers.pollMedia(bot, payload, pollMedia);
48
49
  }
49
50
 
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvcG9sbC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IERpc2NvcmRFbW9qaSwgRGlzY29yZFBvbGwsIERpc2NvcmRQb2xsTWVkaWEgfSBmcm9tICdAZGlzY29yZGVuby90eXBlcydcbmltcG9ydCB0eXBlIHsgSW50ZXJuYWxCb3QsIFBvbGwsIFBvbGxNZWRpYSwgUG9sbFJlc3VsdCB9IGZyb20gJy4uL2luZGV4LmpzJ1xuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtUG9sbChib3Q6IEludGVybmFsQm90LCBwYXlsb2FkOiBEaXNjb3JkUG9sbCk6IHR5cGVvZiBib3QudHJhbnNmb3JtZXJzLiRpbmZlcnJlZFR5cGVzLnBvbGwge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMucG9sbFxuICBjb25zdCBwb2xsID0ge30gYXMgUG9sbFxuXG4gIGlmIChwcm9wcy5xdWVzdGlvbiAmJiBwYXlsb2FkLnF1ZXN0aW9uKSBwb2xsLnF1ZXN0aW9uID0gYm90LnRyYW5zZm9ybWVycy5wb2xsTWVkaWEoYm90LCBwYXlsb2FkLnF1ZXN0aW9uKVxuICBpZiAocHJvcHMuYW5zd2VycyAmJiBwYXlsb2FkLmFuc3dlcnMpXG4gICAgcG9sbC5hbnN3ZXJzID0gcGF5bG9hZC5hbnN3ZXJzLm1hcCgoeCkgPT4gKHsgYW5zd2VySWQ6IHguYW5zd2VyX2lkLCBwb2xsTWVkaWE6IGJvdC50cmFuc2Zvcm1lcnMucG9sbE1lZGlhKGJvdCwgeC5wb2xsX21lZGlhKSB9KSlcbiAgaWYgKHByb3BzLmV4cGlyeSAmJiBwYXlsb2FkLmV4cGlyeSkgcG9sbC5leHBpcnkgPSBEYXRlLnBhcnNlKHBheWxvYWQuZXhwaXJ5KVxuICBpZiAocHJvcHMuYWxsb3dNdWx0aXNlbGVjdCAmJiBwYXlsb2FkLmFsbG93X211bHRpc2VsZWN0KSBwb2xsLmFsbG93TXVsdGlzZWxlY3QgPSBwYXlsb2FkLmFsbG93X211bHRpc2VsZWN0XG4gIGlmIChwcm9wcy5sYXlvdXRUeXBlKSBwb2xsLmxheW91dFR5cGUgPSBwYXlsb2FkLmxheW91dF90eXBlXG4gIGlmIChwcm9wcy5yZXN1bHRzICYmIHBheWxvYWQucmVzdWx0cykge1xuICAgIHBvbGwucmVzdWx0cyA9IHt9IGFzIFBvbGxSZXN1bHRcbiAgICBjb25zdCBwb2xsUmVzdWx0UHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLnBvbGxSZXN1bHRcblxuICAgIGlmIChwb2xsUmVzdWx0UHJvcHMuaXNGaW5hbGl6ZWQgJiYgcGF5bG9hZC5yZXN1bHRzLmlzX2ZpbmFsaXplZCkgcG9sbC5yZXN1bHRzLmlzRmluYWxpemVkID0gcGF5bG9hZC5yZXN1bHRzLmlzX2ZpbmFsaXplZFxuICAgIGlmIChwb2xsUmVzdWx0UHJvcHMuYW5zd2VyQ291bnRzICYmIHBheWxvYWQucmVzdWx0cy5hbnN3ZXJfY291bnRzKVxuICAgICAgcG9sbC5yZXN1bHRzLmFuc3dlckNvdW50cyA9IHBheWxvYWQucmVzdWx0cy5hbnN3ZXJfY291bnRzLm1hcCgoeCkgPT4gKHsgaWQ6IHguaWQsIGNvdW50OiB4LmNvdW50LCBtZVZvdGVkOiB4Lm1lX3ZvdGVkIH0pKVxuICB9XG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMucG9sbChib3QsIHBheWxvYWQsIHBvbGwpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1Qb2xsTWVkaWEoYm90OiBJbnRlcm5hbEJvdCwgcGF5bG9hZDogRGlzY29yZFBvbGxNZWRpYSk6IHR5cGVvZiBib3QudHJhbnNmb3JtZXJzLiRpbmZlcnJlZFR5cGVzLnBvbGxNZWRpYSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5wb2xsTWVkaWFcbiAgY29uc3QgcG9sbE1lZGlhID0ge30gYXMgUG9sbE1lZGlhXG5cbiAgaWYgKHByb3BzLnRleHQgJiYgcGF5bG9hZC50ZXh0KSBwb2xsTWVkaWEudGV4dCA9IHBheWxvYWQudGV4dFxuICBpZiAocHJvcHMuZW1vamkgJiYgcGF5bG9hZC5lbW9qaSkgcG9sbE1lZGlhLmVtb2ppID0gYm90LnRyYW5zZm9ybWVycy5lbW9qaShib3QsIHBheWxvYWQuZW1vamkgYXMgRGlzY29yZEVtb2ppKVxuXG4gIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmN1c3RvbWl6ZXJzLnBvbGxNZWRpYShib3QsIHBheWxvYWQsIHBvbGxNZWRpYSlcbn1cbiJdLCJuYW1lcyI6WyJ0cmFuc2Zvcm1Qb2xsIiwidHJhbnNmb3JtUG9sbE1lZGlhIiwiYm90IiwicGF5bG9hZCIsInByb3BzIiwidHJhbnNmb3JtZXJzIiwiZGVzaXJlZFByb3BlcnRpZXMiLCJwb2xsIiwicXVlc3Rpb24iLCJwb2xsTWVkaWEiLCJhbnN3ZXJzIiwibWFwIiwieCIsImFuc3dlcklkIiwiYW5zd2VyX2lkIiwicG9sbF9tZWRpYSIsImV4cGlyeSIsIkRhdGUiLCJwYXJzZSIsImFsbG93TXVsdGlzZWxlY3QiLCJhbGxvd19tdWx0aXNlbGVjdCIsImxheW91dFR5cGUiLCJsYXlvdXRfdHlwZSIsInJlc3VsdHMiLCJwb2xsUmVzdWx0UHJvcHMiLCJwb2xsUmVzdWx0IiwiaXNGaW5hbGl6ZWQiLCJpc19maW5hbGl6ZWQiLCJhbnN3ZXJDb3VudHMiLCJhbnN3ZXJfY291bnRzIiwiaWQiLCJjb3VudCIsIm1lVm90ZWQiLCJtZV92b3RlZCIsImN1c3RvbWl6ZXJzIiwidGV4dCIsImVtb2ppIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztJQUdnQkEsYUFBYTtlQUFiQTs7SUFzQkFDLGtCQUFrQjtlQUFsQkE7OztBQXRCVCxTQUFTRCxjQUFjRSxHQUFnQixFQUFFQyxPQUFvQjtJQUNsRSxNQUFNQyxRQUFRRixJQUFJRyxZQUFZLENBQUNDLGlCQUFpQixDQUFDQyxJQUFJO0lBQ3JELE1BQU1BLE9BQU8sQ0FBQztJQUVkLElBQUlILE1BQU1JLFFBQVEsSUFBSUwsUUFBUUssUUFBUSxFQUFFRCxLQUFLQyxRQUFRLEdBQUdOLElBQUlHLFlBQVksQ0FBQ0ksU0FBUyxDQUFDUCxLQUFLQyxRQUFRSyxRQUFRO0lBQ3hHLElBQUlKLE1BQU1NLE9BQU8sSUFBSVAsUUFBUU8sT0FBTyxFQUNsQ0gsS0FBS0csT0FBTyxHQUFHUCxRQUFRTyxPQUFPLENBQUNDLEdBQUcsQ0FBQyxDQUFDQyxJQUFPLENBQUE7WUFBRUMsVUFBVUQsRUFBRUUsU0FBUztZQUFFTCxXQUFXUCxJQUFJRyxZQUFZLENBQUNJLFNBQVMsQ0FBQ1AsS0FBS1UsRUFBRUcsVUFBVTtRQUFFLENBQUE7SUFDL0gsSUFBSVgsTUFBTVksTUFBTSxJQUFJYixRQUFRYSxNQUFNLEVBQUVULEtBQUtTLE1BQU0sR0FBR0MsS0FBS0MsS0FBSyxDQUFDZixRQUFRYSxNQUFNO0lBQzNFLElBQUlaLE1BQU1lLGdCQUFnQixJQUFJaEIsUUFBUWlCLGlCQUFpQixFQUFFYixLQUFLWSxnQkFBZ0IsR0FBR2hCLFFBQVFpQixpQkFBaUI7SUFDMUcsSUFBSWhCLE1BQU1pQixVQUFVLEVBQUVkLEtBQUtjLFVBQVUsR0FBR2xCLFFBQVFtQixXQUFXO0lBQzNELElBQUlsQixNQUFNbUIsT0FBTyxJQUFJcEIsUUFBUW9CLE9BQU8sRUFBRTtRQUNwQ2hCLEtBQUtnQixPQUFPLEdBQUcsQ0FBQztRQUNoQixNQUFNQyxrQkFBa0J0QixJQUFJRyxZQUFZLENBQUNDLGlCQUFpQixDQUFDbUIsVUFBVTtRQUVyRSxJQUFJRCxnQkFBZ0JFLFdBQVcsSUFBSXZCLFFBQVFvQixPQUFPLENBQUNJLFlBQVksRUFBRXBCLEtBQUtnQixPQUFPLENBQUNHLFdBQVcsR0FBR3ZCLFFBQVFvQixPQUFPLENBQUNJLFlBQVk7UUFDeEgsSUFBSUgsZ0JBQWdCSSxZQUFZLElBQUl6QixRQUFRb0IsT0FBTyxDQUFDTSxhQUFhLEVBQy9EdEIsS0FBS2dCLE9BQU8sQ0FBQ0ssWUFBWSxHQUFHekIsUUFBUW9CLE9BQU8sQ0FBQ00sYUFBYSxDQUFDbEIsR0FBRyxDQUFDLENBQUNDLElBQU8sQ0FBQTtnQkFBRWtCLElBQUlsQixFQUFFa0IsRUFBRTtnQkFBRUMsT0FBT25CLEVBQUVtQixLQUFLO2dCQUFFQyxTQUFTcEIsRUFBRXFCLFFBQVE7WUFBQyxDQUFBO0lBQzFIO0lBRUEsT0FBTy9CLElBQUlHLFlBQVksQ0FBQzZCLFdBQVcsQ0FBQzNCLElBQUksQ0FBQ0wsS0FBS0MsU0FBU0k7QUFDekQ7QUFFTyxTQUFTTixtQkFBbUJDLEdBQWdCLEVBQUVDLE9BQXlCO0lBQzVFLE1BQU1DLFFBQVFGLElBQUlHLFlBQVksQ0FBQ0MsaUJBQWlCLENBQUNHLFNBQVM7SUFDMUQsTUFBTUEsWUFBWSxDQUFDO0lBRW5CLElBQUlMLE1BQU0rQixJQUFJLElBQUloQyxRQUFRZ0MsSUFBSSxFQUFFMUIsVUFBVTBCLElBQUksR0FBR2hDLFFBQVFnQyxJQUFJO0lBQzdELElBQUkvQixNQUFNZ0MsS0FBSyxJQUFJakMsUUFBUWlDLEtBQUssRUFBRTNCLFVBQVUyQixLQUFLLEdBQUdsQyxJQUFJRyxZQUFZLENBQUMrQixLQUFLLENBQUNsQyxLQUFLQyxRQUFRaUMsS0FBSztJQUU3RixPQUFPbEMsSUFBSUcsWUFBWSxDQUFDNkIsV0FBVyxDQUFDekIsU0FBUyxDQUFDUCxLQUFLQyxTQUFTTTtBQUM5RCJ9
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvcG9sbC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IERpc2NvcmRFbW9qaSwgRGlzY29yZFBvbGwsIERpc2NvcmRQb2xsTWVkaWEgfSBmcm9tICdAZGlzY29yZGVuby90eXBlcydcbmltcG9ydCB0eXBlIHsgQm90LCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yLCBQb2xsLCBQb2xsTWVkaWEsIFBvbGxSZXN1bHQsIFNldHVwRGVzaXJlZFByb3BzLCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcyB9IGZyb20gJy4uL2luZGV4LmpzJ1xuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtUG9sbChib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZFBvbGwpOiBQb2xsIHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLnBvbGxcbiAgY29uc3QgcG9sbCA9IHt9IGFzIFNldHVwRGVzaXJlZFByb3BzPFBvbGwsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPlxuXG4gIGlmIChwcm9wcy5xdWVzdGlvbiAmJiBwYXlsb2FkLnF1ZXN0aW9uKSBwb2xsLnF1ZXN0aW9uID0gYm90LnRyYW5zZm9ybWVycy5wb2xsTWVkaWEoYm90LCBwYXlsb2FkLnF1ZXN0aW9uKVxuICBpZiAocHJvcHMuYW5zd2VycyAmJiBwYXlsb2FkLmFuc3dlcnMpXG4gICAgcG9sbC5hbnN3ZXJzID0gcGF5bG9hZC5hbnN3ZXJzLm1hcCgoeCkgPT4gKHsgYW5zd2VySWQ6IHguYW5zd2VyX2lkLCBwb2xsTWVkaWE6IGJvdC50cmFuc2Zvcm1lcnMucG9sbE1lZGlhKGJvdCwgeC5wb2xsX21lZGlhKSB9KSlcbiAgaWYgKHByb3BzLmV4cGlyeSAmJiBwYXlsb2FkLmV4cGlyeSkgcG9sbC5leHBpcnkgPSBEYXRlLnBhcnNlKHBheWxvYWQuZXhwaXJ5KVxuICBpZiAocHJvcHMuYWxsb3dNdWx0aXNlbGVjdCAmJiBwYXlsb2FkLmFsbG93X211bHRpc2VsZWN0KSBwb2xsLmFsbG93TXVsdGlzZWxlY3QgPSBwYXlsb2FkLmFsbG93X211bHRpc2VsZWN0XG4gIGlmIChwcm9wcy5sYXlvdXRUeXBlKSBwb2xsLmxheW91dFR5cGUgPSBwYXlsb2FkLmxheW91dF90eXBlXG4gIGlmIChwcm9wcy5yZXN1bHRzICYmIHBheWxvYWQucmVzdWx0cykge1xuICAgIGNvbnN0IHJlc3VsdHMgPSB7fSBhcyBTZXR1cERlc2lyZWRQcm9wczxQb2xsUmVzdWx0LCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcj5cbiAgICBjb25zdCBwb2xsUmVzdWx0UHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLnBvbGxSZXN1bHRcblxuICAgIGlmIChwb2xsUmVzdWx0UHJvcHMuaXNGaW5hbGl6ZWQgJiYgcGF5bG9hZC5yZXN1bHRzLmlzX2ZpbmFsaXplZCkgcmVzdWx0cy5pc0ZpbmFsaXplZCA9IHBheWxvYWQucmVzdWx0cy5pc19maW5hbGl6ZWRcbiAgICBpZiAocG9sbFJlc3VsdFByb3BzLmFuc3dlckNvdW50cyAmJiBwYXlsb2FkLnJlc3VsdHMuYW5zd2VyX2NvdW50cylcbiAgICAgIHJlc3VsdHMuYW5zd2VyQ291bnRzID0gcGF5bG9hZC5yZXN1bHRzLmFuc3dlcl9jb3VudHMubWFwKCh4KSA9PiAoeyBpZDogeC5pZCwgY291bnQ6IHguY291bnQsIG1lVm90ZWQ6IHgubWVfdm90ZWQgfSkpXG5cbiAgICBwb2xsLnJlc3VsdHMgPSByZXN1bHRzXG4gIH1cblxuICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jdXN0b21pemVycy5wb2xsKGJvdCwgcGF5bG9hZCwgcG9sbClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybVBvbGxNZWRpYShib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZFBvbGxNZWRpYSk6IFBvbGxNZWRpYSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5wb2xsTWVkaWFcbiAgY29uc3QgcG9sbE1lZGlhID0ge30gYXMgU2V0dXBEZXNpcmVkUHJvcHM8UG9sbE1lZGlhLCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcj5cblxuICBpZiAocHJvcHMudGV4dCAmJiBwYXlsb2FkLnRleHQpIHBvbGxNZWRpYS50ZXh0ID0gcGF5bG9hZC50ZXh0XG4gIGlmIChwcm9wcy5lbW9qaSAmJiBwYXlsb2FkLmVtb2ppKSBwb2xsTWVkaWEuZW1vamkgPSBib3QudHJhbnNmb3JtZXJzLmVtb2ppKGJvdCwgcGF5bG9hZC5lbW9qaSBhcyBEaXNjb3JkRW1vamkpXG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMucG9sbE1lZGlhKGJvdCwgcGF5bG9hZCwgcG9sbE1lZGlhKVxufVxuIl0sIm5hbWVzIjpbInRyYW5zZm9ybVBvbGwiLCJ0cmFuc2Zvcm1Qb2xsTWVkaWEiLCJib3QiLCJwYXlsb2FkIiwicHJvcHMiLCJ0cmFuc2Zvcm1lcnMiLCJkZXNpcmVkUHJvcGVydGllcyIsInBvbGwiLCJxdWVzdGlvbiIsInBvbGxNZWRpYSIsImFuc3dlcnMiLCJtYXAiLCJ4IiwiYW5zd2VySWQiLCJhbnN3ZXJfaWQiLCJwb2xsX21lZGlhIiwiZXhwaXJ5IiwiRGF0ZSIsInBhcnNlIiwiYWxsb3dNdWx0aXNlbGVjdCIsImFsbG93X211bHRpc2VsZWN0IiwibGF5b3V0VHlwZSIsImxheW91dF90eXBlIiwicmVzdWx0cyIsInBvbGxSZXN1bHRQcm9wcyIsInBvbGxSZXN1bHQiLCJpc0ZpbmFsaXplZCIsImlzX2ZpbmFsaXplZCIsImFuc3dlckNvdW50cyIsImFuc3dlcl9jb3VudHMiLCJpZCIsImNvdW50IiwibWVWb3RlZCIsIm1lX3ZvdGVkIiwiY3VzdG9taXplcnMiLCJ0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
@@ -22,4 +22,4 @@ function transformPresence(bot, payload) {
22
22
  return bot.transformers.customizers.presence(bot, payload, presence);
23
23
  }
24
24
 
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvcHJlc2VuY2UudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBEaXNjb3JkUHJlc2VuY2VVcGRhdGUsIFByZXNlbmNlU3RhdHVzIH0gZnJvbSAnQGRpc2NvcmRlbm8vdHlwZXMnXG5pbXBvcnQgdHlwZSB7IEludGVybmFsQm90LCBQcmVzZW5jZVVwZGF0ZSB9IGZyb20gJy4uL2luZGV4LmpzJ1xuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtUHJlc2VuY2UoYm90OiBJbnRlcm5hbEJvdCwgcGF5bG9hZDogRGlzY29yZFByZXNlbmNlVXBkYXRlKTogUHJlc2VuY2VVcGRhdGUge1xuICBjb25zdCBwcmVzZW5jZSA9IHtcbiAgICB1c2VyOiBib3QudHJhbnNmb3JtZXJzLnVzZXIoYm90LCBwYXlsb2FkLnVzZXIpLFxuICAgIGd1aWxkSWQ6IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuZ3VpbGRfaWQpLFxuICAgIHN0YXR1czogUHJlc2VuY2VTdGF0dXNbcGF5bG9hZC5zdGF0dXNdLFxuICAgIGFjdGl2aXRpZXM6IHBheWxvYWQuYWN0aXZpdGllcy5tYXAoKGFjdGl2aXR5KSA9PiBib3QudHJhbnNmb3JtZXJzLmFjdGl2aXR5KGJvdCwgYWN0aXZpdHkpKSxcbiAgICBkZXNrdG9wOiBwYXlsb2FkLmNsaWVudF9zdGF0dXMuZGVza3RvcCxcbiAgICBtb2JpbGU6IHBheWxvYWQuY2xpZW50X3N0YXR1cy5tb2JpbGUsXG4gICAgd2ViOiBwYXlsb2FkLmNsaWVudF9zdGF0dXMud2ViLFxuICB9IGFzIFByZXNlbmNlVXBkYXRlXG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMucHJlc2VuY2UoYm90LCBwYXlsb2FkLCBwcmVzZW5jZSlcbn1cbiJdLCJuYW1lcyI6WyJ0cmFuc2Zvcm1QcmVzZW5jZSIsImJvdCIsInBheWxvYWQiLCJwcmVzZW5jZSIsInVzZXIiLCJ0cmFuc2Zvcm1lcnMiLCJndWlsZElkIiwic25vd2ZsYWtlIiwiZ3VpbGRfaWQiLCJzdGF0dXMiLCJQcmVzZW5jZVN0YXR1cyIsImFjdGl2aXRpZXMiLCJtYXAiLCJhY3Rpdml0eSIsImRlc2t0b3AiLCJjbGllbnRfc3RhdHVzIiwibW9iaWxlIiwid2ViIiwiY3VzdG9taXplcnMiXSwibWFwcGluZ3MiOiI7Ozs7K0JBR2dCQTs7O2VBQUFBOzs7dUJBSDJDO0FBR3BELFNBQVNBLGtCQUFrQkMsR0FBZ0IsRUFBRUMsT0FBOEI7SUFDaEYsTUFBTUMsV0FBVztRQUNmQyxNQUFNSCxJQUFJSSxZQUFZLENBQUNELElBQUksQ0FBQ0gsS0FBS0MsUUFBUUUsSUFBSTtRQUM3Q0UsU0FBU0wsSUFBSUksWUFBWSxDQUFDRSxTQUFTLENBQUNMLFFBQVFNLFFBQVE7UUFDcERDLFFBQVFDLHFCQUFjLENBQUNSLFFBQVFPLE1BQU0sQ0FBQztRQUN0Q0UsWUFBWVQsUUFBUVMsVUFBVSxDQUFDQyxHQUFHLENBQUMsQ0FBQ0MsV0FBYVosSUFBSUksWUFBWSxDQUFDUSxRQUFRLENBQUNaLEtBQUtZO1FBQ2hGQyxTQUFTWixRQUFRYSxhQUFhLENBQUNELE9BQU87UUFDdENFLFFBQVFkLFFBQVFhLGFBQWEsQ0FBQ0MsTUFBTTtRQUNwQ0MsS0FBS2YsUUFBUWEsYUFBYSxDQUFDRSxHQUFHO0lBQ2hDO0lBRUEsT0FBT2hCLElBQUlJLFlBQVksQ0FBQ2EsV0FBVyxDQUFDZixRQUFRLENBQUNGLEtBQUtDLFNBQVNDO0FBQzdEIn0=
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvcHJlc2VuY2UudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBEaXNjb3JkUHJlc2VuY2VVcGRhdGUsIFByZXNlbmNlU3RhdHVzIH0gZnJvbSAnQGRpc2NvcmRlbm8vdHlwZXMnXG5pbXBvcnQgdHlwZSB7IEJvdCwgUHJlc2VuY2VVcGRhdGUgfSBmcm9tICcuLi9pbmRleC5qcydcblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybVByZXNlbmNlKGJvdDogQm90LCBwYXlsb2FkOiBEaXNjb3JkUHJlc2VuY2VVcGRhdGUpOiBQcmVzZW5jZVVwZGF0ZSB7XG4gIGNvbnN0IHByZXNlbmNlID0ge1xuICAgIHVzZXI6IGJvdC50cmFuc2Zvcm1lcnMudXNlcihib3QsIHBheWxvYWQudXNlciksXG4gICAgZ3VpbGRJZDogYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5ndWlsZF9pZCksXG4gICAgc3RhdHVzOiBQcmVzZW5jZVN0YXR1c1twYXlsb2FkLnN0YXR1c10sXG4gICAgYWN0aXZpdGllczogcGF5bG9hZC5hY3Rpdml0aWVzLm1hcCgoYWN0aXZpdHkpID0+IGJvdC50cmFuc2Zvcm1lcnMuYWN0aXZpdHkoYm90LCBhY3Rpdml0eSkpLFxuICAgIGRlc2t0b3A6IHBheWxvYWQuY2xpZW50X3N0YXR1cy5kZXNrdG9wLFxuICAgIG1vYmlsZTogcGF5bG9hZC5jbGllbnRfc3RhdHVzLm1vYmlsZSxcbiAgICB3ZWI6IHBheWxvYWQuY2xpZW50X3N0YXR1cy53ZWIsXG4gIH0gYXMgUHJlc2VuY2VVcGRhdGVcblxuICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jdXN0b21pemVycy5wcmVzZW5jZShib3QsIHBheWxvYWQsIHByZXNlbmNlKVxufVxuIl0sIm5hbWVzIjpbInRyYW5zZm9ybVByZXNlbmNlIiwiYm90IiwicGF5bG9hZCIsInByZXNlbmNlIiwidXNlciIsInRyYW5zZm9ybWVycyIsImd1aWxkSWQiLCJzbm93Zmxha2UiLCJndWlsZF9pZCIsInN0YXR1cyIsIlByZXNlbmNlU3RhdHVzIiwiYWN0aXZpdGllcyIsIm1hcCIsImFjdGl2aXR5IiwiZGVza3RvcCIsImNsaWVudF9zdGF0dXMiLCJtb2JpbGUiLCJ3ZWIiLCJjdXN0b21pemVycyJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFHZ0JBOzs7ZUFBQUE7Ozt1QkFIMkM7QUFHcEQsU0FBU0Esa0JBQWtCQyxHQUFRLEVBQUVDLE9BQThCO0lBQ3hFLE1BQU1DLFdBQVc7UUFDZkMsTUFBTUgsSUFBSUksWUFBWSxDQUFDRCxJQUFJLENBQUNILEtBQUtDLFFBQVFFLElBQUk7UUFDN0NFLFNBQVNMLElBQUlJLFlBQVksQ0FBQ0UsU0FBUyxDQUFDTCxRQUFRTSxRQUFRO1FBQ3BEQyxRQUFRQyxxQkFBYyxDQUFDUixRQUFRTyxNQUFNLENBQUM7UUFDdENFLFlBQVlULFFBQVFTLFVBQVUsQ0FBQ0MsR0FBRyxDQUFDLENBQUNDLFdBQWFaLElBQUlJLFlBQVksQ0FBQ1EsUUFBUSxDQUFDWixLQUFLWTtRQUNoRkMsU0FBU1osUUFBUWEsYUFBYSxDQUFDRCxPQUFPO1FBQ3RDRSxRQUFRZCxRQUFRYSxhQUFhLENBQUNDLE1BQU07UUFDcENDLEtBQUtmLFFBQVFhLGFBQWEsQ0FBQ0UsR0FBRztJQUNoQztJQUVBLE9BQU9oQixJQUFJSSxZQUFZLENBQUNhLFdBQVcsQ0FBQ2YsUUFBUSxDQUFDRixLQUFLQyxTQUFTQztBQUM3RCJ9
@@ -35,4 +35,4 @@ function transformApplicationToDiscordApplication(bot, payload) {
35
35
  };
36
36
  }
37
37
 
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvcmV2ZXJzZS9hcHBsaWNhdGlvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIEFwcGxpY2F0aW9uLCB0eXBlIERpc2NvcmRBcHBsaWNhdGlvbiwgdHlwZSBJbnRlcm5hbEJvdCwgaWNvbkJpZ2ludFRvSGFzaCB9IGZyb20gJy4uLy4uL2luZGV4LmpzJ1xuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtQXBwbGljYXRpb25Ub0Rpc2NvcmRBcHBsaWNhdGlvbihib3Q6IEludGVybmFsQm90LCBwYXlsb2FkOiBBcHBsaWNhdGlvbik6IERpc2NvcmRBcHBsaWNhdGlvbiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogcGF5bG9hZC5uYW1lLFxuICAgIGRlc2NyaXB0aW9uOiBwYXlsb2FkLmRlc2NyaXB0aW9uLFxuICAgIHJwY19vcmlnaW5zOiBwYXlsb2FkLnJwY09yaWdpbnMsXG4gICAgYm90X3B1YmxpYzogcGF5bG9hZC5ib3RQdWJsaWMsXG4gICAgYm90X3JlcXVpcmVfY29kZV9ncmFudDogcGF5bG9hZC5ib3RSZXF1aXJlQ29kZUdyYW50LFxuICAgIHRlcm1zX29mX3NlcnZpY2VfdXJsOiBwYXlsb2FkLnRlcm1zT2ZTZXJ2aWNlVXJsLFxuICAgIHByaXZhY3lfcG9saWN5X3VybDogcGF5bG9hZC5wcml2YWN5UG9saWN5VXJsLFxuICAgIHZlcmlmeV9rZXk6IHBheWxvYWQudmVyaWZ5S2V5LFxuICAgIHByaW1hcnlfc2t1X2lkOiBwYXlsb2FkLnByaW1hcnlTa3VJZCxcbiAgICBzbHVnOiBwYXlsb2FkLnNsdWcsXG4gICAgY292ZXJfaW1hZ2U6IHBheWxvYWQuY292ZXJJbWFnZSA/IGljb25CaWdpbnRUb0hhc2gocGF5bG9hZC5jb3ZlckltYWdlKSA6IHVuZGVmaW5lZCxcbiAgICBmbGFnczogcGF5bG9hZC5mbGFncyxcbiAgICBhcHByb3hpbWF0ZV91c2VyX2luc3RhbGxfY291bnQ6IHBheWxvYWQuYXBwcm94aW1hdGVVc2VySW5zdGFsbENvdW50LFxuXG4gICAgaWQ6IHBheWxvYWQuaWQudG9TdHJpbmcoKSxcbiAgICBpY29uOiBwYXlsb2FkLmljb24gPyBpY29uQmlnaW50VG9IYXNoKHBheWxvYWQuaWNvbikgOiBudWxsLFxuICAgIG93bmVyOiBwYXlsb2FkLm93bmVyID8gYm90LnRyYW5zZm9ybWVycy5yZXZlcnNlLnVzZXIoYm90LCBwYXlsb2FkLm93bmVyKSA6IHVuZGVmaW5lZCxcbiAgICB0ZWFtOiBwYXlsb2FkLnRlYW0gPyBib3QudHJhbnNmb3JtZXJzLnJldmVyc2UudGVhbShib3QsIHBheWxvYWQudGVhbSkgOiBudWxsLFxuICAgIGd1aWxkX2lkOiBwYXlsb2FkLmd1aWxkSWQ/LnRvU3RyaW5nKCksXG4gICAgZXZlbnRfd2ViaG9va3NfdXJsOiBwYXlsb2FkLmV2ZW50V2ViaG9va3NVcmwsXG4gICAgZXZlbnRfd2ViaG9va3Nfc3RhdHVzOiBwYXlsb2FkLmV2ZW50V2ViaG9va3NTdGF0dXMsXG4gICAgZXZlbnRfd2ViaG9va3NfdHlwZXM6IHBheWxvYWQuZXZlbnRXZWJob29rc1R5cGVzLFxuICB9XG59XG4iXSwibmFtZXMiOlsidHJhbnNmb3JtQXBwbGljYXRpb25Ub0Rpc2NvcmRBcHBsaWNhdGlvbiIsImJvdCIsInBheWxvYWQiLCJuYW1lIiwiZGVzY3JpcHRpb24iLCJycGNfb3JpZ2lucyIsInJwY09yaWdpbnMiLCJib3RfcHVibGljIiwiYm90UHVibGljIiwiYm90X3JlcXVpcmVfY29kZV9ncmFudCIsImJvdFJlcXVpcmVDb2RlR3JhbnQiLCJ0ZXJtc19vZl9zZXJ2aWNlX3VybCIsInRlcm1zT2ZTZXJ2aWNlVXJsIiwicHJpdmFjeV9wb2xpY3lfdXJsIiwicHJpdmFjeVBvbGljeVVybCIsInZlcmlmeV9rZXkiLCJ2ZXJpZnlLZXkiLCJwcmltYXJ5X3NrdV9pZCIsInByaW1hcnlTa3VJZCIsInNsdWciLCJjb3Zlcl9pbWFnZSIsImNvdmVySW1hZ2UiLCJpY29uQmlnaW50VG9IYXNoIiwidW5kZWZpbmVkIiwiZmxhZ3MiLCJhcHByb3hpbWF0ZV91c2VyX2luc3RhbGxfY291bnQiLCJhcHByb3hpbWF0ZVVzZXJJbnN0YWxsQ291bnQiLCJpZCIsInRvU3RyaW5nIiwiaWNvbiIsIm93bmVyIiwidHJhbnNmb3JtZXJzIiwicmV2ZXJzZSIsInVzZXIiLCJ0ZWFtIiwiZ3VpbGRfaWQiLCJndWlsZElkIiwiZXZlbnRfd2ViaG9va3NfdXJsIiwiZXZlbnRXZWJob29rc1VybCIsImV2ZW50X3dlYmhvb2tzX3N0YXR1cyIsImV2ZW50V2ViaG9va3NTdGF0dXMiLCJldmVudF93ZWJob29rc190eXBlcyIsImV2ZW50V2ViaG9va3NUeXBlcyJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFFZ0JBOzs7ZUFBQUE7Ozt1QkFGOEU7QUFFdkYsU0FBU0EseUNBQXlDQyxHQUFnQixFQUFFQyxPQUFvQjtJQUM3RixPQUFPO1FBQ0xDLE1BQU1ELFFBQVFDLElBQUk7UUFDbEJDLGFBQWFGLFFBQVFFLFdBQVc7UUFDaENDLGFBQWFILFFBQVFJLFVBQVU7UUFDL0JDLFlBQVlMLFFBQVFNLFNBQVM7UUFDN0JDLHdCQUF3QlAsUUFBUVEsbUJBQW1CO1FBQ25EQyxzQkFBc0JULFFBQVFVLGlCQUFpQjtRQUMvQ0Msb0JBQW9CWCxRQUFRWSxnQkFBZ0I7UUFDNUNDLFlBQVliLFFBQVFjLFNBQVM7UUFDN0JDLGdCQUFnQmYsUUFBUWdCLFlBQVk7UUFDcENDLE1BQU1qQixRQUFRaUIsSUFBSTtRQUNsQkMsYUFBYWxCLFFBQVFtQixVQUFVLEdBQUdDLElBQUFBLHVCQUFnQixFQUFDcEIsUUFBUW1CLFVBQVUsSUFBSUU7UUFDekVDLE9BQU90QixRQUFRc0IsS0FBSztRQUNwQkMsZ0NBQWdDdkIsUUFBUXdCLDJCQUEyQjtRQUVuRUMsSUFBSXpCLFFBQVF5QixFQUFFLENBQUNDLFFBQVE7UUFDdkJDLE1BQU0zQixRQUFRMkIsSUFBSSxHQUFHUCxJQUFBQSx1QkFBZ0IsRUFBQ3BCLFFBQVEyQixJQUFJLElBQUk7UUFDdERDLE9BQU81QixRQUFRNEIsS0FBSyxHQUFHN0IsSUFBSThCLFlBQVksQ0FBQ0MsT0FBTyxDQUFDQyxJQUFJLENBQUNoQyxLQUFLQyxRQUFRNEIsS0FBSyxJQUFJUDtRQUMzRVcsTUFBTWhDLFFBQVFnQyxJQUFJLEdBQUdqQyxJQUFJOEIsWUFBWSxDQUFDQyxPQUFPLENBQUNFLElBQUksQ0FBQ2pDLEtBQUtDLFFBQVFnQyxJQUFJLElBQUk7UUFDeEVDLFVBQVVqQyxRQUFRa0MsT0FBTyxFQUFFUjtRQUMzQlMsb0JBQW9CbkMsUUFBUW9DLGdCQUFnQjtRQUM1Q0MsdUJBQXVCckMsUUFBUXNDLG1CQUFtQjtRQUNsREMsc0JBQXNCdkMsUUFBUXdDLGtCQUFrQjtJQUNsRDtBQUNGIn0=
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvcmV2ZXJzZS9hcHBsaWNhdGlvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIEFwcGxpY2F0aW9uLCB0eXBlIEJvdCwgdHlwZSBEaXNjb3JkQXBwbGljYXRpb24sIGljb25CaWdpbnRUb0hhc2ggfSBmcm9tICcuLi8uLi9pbmRleC5qcydcblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUFwcGxpY2F0aW9uVG9EaXNjb3JkQXBwbGljYXRpb24oYm90OiBCb3QsIHBheWxvYWQ6IEFwcGxpY2F0aW9uKTogRGlzY29yZEFwcGxpY2F0aW9uIHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBwYXlsb2FkLm5hbWUsXG4gICAgZGVzY3JpcHRpb246IHBheWxvYWQuZGVzY3JpcHRpb24sXG4gICAgcnBjX29yaWdpbnM6IHBheWxvYWQucnBjT3JpZ2lucyxcbiAgICBib3RfcHVibGljOiBwYXlsb2FkLmJvdFB1YmxpYyxcbiAgICBib3RfcmVxdWlyZV9jb2RlX2dyYW50OiBwYXlsb2FkLmJvdFJlcXVpcmVDb2RlR3JhbnQsXG4gICAgdGVybXNfb2Zfc2VydmljZV91cmw6IHBheWxvYWQudGVybXNPZlNlcnZpY2VVcmwsXG4gICAgcHJpdmFjeV9wb2xpY3lfdXJsOiBwYXlsb2FkLnByaXZhY3lQb2xpY3lVcmwsXG4gICAgdmVyaWZ5X2tleTogcGF5bG9hZC52ZXJpZnlLZXksXG4gICAgcHJpbWFyeV9za3VfaWQ6IHBheWxvYWQucHJpbWFyeVNrdUlkLFxuICAgIHNsdWc6IHBheWxvYWQuc2x1ZyxcbiAgICBjb3Zlcl9pbWFnZTogcGF5bG9hZC5jb3ZlckltYWdlID8gaWNvbkJpZ2ludFRvSGFzaChwYXlsb2FkLmNvdmVySW1hZ2UpIDogdW5kZWZpbmVkLFxuICAgIGZsYWdzOiBwYXlsb2FkLmZsYWdzLFxuICAgIGFwcHJveGltYXRlX3VzZXJfaW5zdGFsbF9jb3VudDogcGF5bG9hZC5hcHByb3hpbWF0ZVVzZXJJbnN0YWxsQ291bnQsXG5cbiAgICBpZDogcGF5bG9hZC5pZC50b1N0cmluZygpLFxuICAgIGljb246IHBheWxvYWQuaWNvbiA/IGljb25CaWdpbnRUb0hhc2gocGF5bG9hZC5pY29uKSA6IG51bGwsXG4gICAgb3duZXI6IHBheWxvYWQub3duZXIgPyBib3QudHJhbnNmb3JtZXJzLnJldmVyc2UudXNlcihib3QsIHBheWxvYWQub3duZXIpIDogdW5kZWZpbmVkLFxuICAgIHRlYW06IHBheWxvYWQudGVhbSA/IGJvdC50cmFuc2Zvcm1lcnMucmV2ZXJzZS50ZWFtKGJvdCwgcGF5bG9hZC50ZWFtKSA6IG51bGwsXG4gICAgZ3VpbGRfaWQ6IHBheWxvYWQuZ3VpbGRJZD8udG9TdHJpbmcoKSxcbiAgICBldmVudF93ZWJob29rc191cmw6IHBheWxvYWQuZXZlbnRXZWJob29rc1VybCxcbiAgICBldmVudF93ZWJob29rc19zdGF0dXM6IHBheWxvYWQuZXZlbnRXZWJob29rc1N0YXR1cyxcbiAgICBldmVudF93ZWJob29rc190eXBlczogcGF5bG9hZC5ldmVudFdlYmhvb2tzVHlwZXMsXG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJ0cmFuc2Zvcm1BcHBsaWNhdGlvblRvRGlzY29yZEFwcGxpY2F0aW9uIiwiYm90IiwicGF5bG9hZCIsIm5hbWUiLCJkZXNjcmlwdGlvbiIsInJwY19vcmlnaW5zIiwicnBjT3JpZ2lucyIsImJvdF9wdWJsaWMiLCJib3RQdWJsaWMiLCJib3RfcmVxdWlyZV9jb2RlX2dyYW50IiwiYm90UmVxdWlyZUNvZGVHcmFudCIsInRlcm1zX29mX3NlcnZpY2VfdXJsIiwidGVybXNPZlNlcnZpY2VVcmwiLCJwcml2YWN5X3BvbGljeV91cmwiLCJwcml2YWN5UG9saWN5VXJsIiwidmVyaWZ5X2tleSIsInZlcmlmeUtleSIsInByaW1hcnlfc2t1X2lkIiwicHJpbWFyeVNrdUlkIiwic2x1ZyIsImNvdmVyX2ltYWdlIiwiY292ZXJJbWFnZSIsImljb25CaWdpbnRUb0hhc2giLCJ1bmRlZmluZWQiLCJmbGFncyIsImFwcHJveGltYXRlX3VzZXJfaW5zdGFsbF9jb3VudCIsImFwcHJveGltYXRlVXNlckluc3RhbGxDb3VudCIsImlkIiwidG9TdHJpbmciLCJpY29uIiwib3duZXIiLCJ0cmFuc2Zvcm1lcnMiLCJyZXZlcnNlIiwidXNlciIsInRlYW0iLCJndWlsZF9pZCIsImd1aWxkSWQiLCJldmVudF93ZWJob29rc191cmwiLCJldmVudFdlYmhvb2tzVXJsIiwiZXZlbnRfd2ViaG9va3Nfc3RhdHVzIiwiZXZlbnRXZWJob29rc1N0YXR1cyIsImV2ZW50X3dlYmhvb2tzX3R5cGVzIiwiZXZlbnRXZWJob29rc1R5cGVzIl0sIm1hcHBpbmdzIjoiOzs7OytCQUVnQkE7OztlQUFBQTs7O3VCQUZzRTtBQUUvRSxTQUFTQSx5Q0FBeUNDLEdBQVEsRUFBRUMsT0FBb0I7SUFDckYsT0FBTztRQUNMQyxNQUFNRCxRQUFRQyxJQUFJO1FBQ2xCQyxhQUFhRixRQUFRRSxXQUFXO1FBQ2hDQyxhQUFhSCxRQUFRSSxVQUFVO1FBQy9CQyxZQUFZTCxRQUFRTSxTQUFTO1FBQzdCQyx3QkFBd0JQLFFBQVFRLG1CQUFtQjtRQUNuREMsc0JBQXNCVCxRQUFRVSxpQkFBaUI7UUFDL0NDLG9CQUFvQlgsUUFBUVksZ0JBQWdCO1FBQzVDQyxZQUFZYixRQUFRYyxTQUFTO1FBQzdCQyxnQkFBZ0JmLFFBQVFnQixZQUFZO1FBQ3BDQyxNQUFNakIsUUFBUWlCLElBQUk7UUFDbEJDLGFBQWFsQixRQUFRbUIsVUFBVSxHQUFHQyxJQUFBQSx1QkFBZ0IsRUFBQ3BCLFFBQVFtQixVQUFVLElBQUlFO1FBQ3pFQyxPQUFPdEIsUUFBUXNCLEtBQUs7UUFDcEJDLGdDQUFnQ3ZCLFFBQVF3QiwyQkFBMkI7UUFFbkVDLElBQUl6QixRQUFReUIsRUFBRSxDQUFDQyxRQUFRO1FBQ3ZCQyxNQUFNM0IsUUFBUTJCLElBQUksR0FBR1AsSUFBQUEsdUJBQWdCLEVBQUNwQixRQUFRMkIsSUFBSSxJQUFJO1FBQ3REQyxPQUFPNUIsUUFBUTRCLEtBQUssR0FBRzdCLElBQUk4QixZQUFZLENBQUNDLE9BQU8sQ0FBQ0MsSUFBSSxDQUFDaEMsS0FBS0MsUUFBUTRCLEtBQUssSUFBSVA7UUFDM0VXLE1BQU1oQyxRQUFRZ0MsSUFBSSxHQUFHakMsSUFBSThCLFlBQVksQ0FBQ0MsT0FBTyxDQUFDRSxJQUFJLENBQUNqQyxLQUFLQyxRQUFRZ0MsSUFBSSxJQUFJO1FBQ3hFQyxVQUFVakMsUUFBUWtDLE9BQU8sRUFBRVI7UUFDM0JTLG9CQUFvQm5DLFFBQVFvQyxnQkFBZ0I7UUFDNUNDLHVCQUF1QnJDLFFBQVFzQyxtQkFBbUI7UUFDbERDLHNCQUFzQnZDLFFBQVF3QyxrQkFBa0I7SUFDbEQ7QUFDRiJ9
@@ -9,21 +9,22 @@ Object.defineProperty(exports, "transformAttachmentToDiscordAttachment", {
9
9
  }
10
10
  });
11
11
  function transformAttachmentToDiscordAttachment(bot, payload) {
12
+ const _payload = payload;
12
13
  return {
13
- id: bot.transformers.reverse.snowflake(payload.id),
14
- filename: payload.filename,
15
- content_type: payload.contentType,
16
- size: payload.size,
17
- url: payload.url,
18
- proxy_url: payload.proxyUrl,
19
- height: payload.height,
20
- width: payload.width,
21
- ephemeral: payload.ephemeral,
22
- description: payload.description,
23
- duration_secs: payload.duration_secs,
24
- waveform: payload.waveform,
25
- flags: payload.flags
14
+ id: _payload.id ? bot.transformers.reverse.snowflake(_payload.id) : undefined,
15
+ filename: _payload.filename,
16
+ content_type: _payload.contentType,
17
+ size: _payload.size,
18
+ url: _payload.url,
19
+ proxy_url: _payload.proxyUrl,
20
+ height: _payload.height,
21
+ width: _payload.width,
22
+ ephemeral: _payload.ephemeral,
23
+ description: _payload.description,
24
+ duration_secs: _payload.duration_secs,
25
+ waveform: _payload.waveform,
26
+ flags: _payload.flags
26
27
  };
27
28
  }
28
29
 
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvcmV2ZXJzZS9hdHRhY2htZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQXR0YWNobWVudCwgQm90LCBEaXNjb3JkQXR0YWNobWVudCB9IGZyb20gJy4uLy4uL2luZGV4LmpzJ1xuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtQXR0YWNobWVudFRvRGlzY29yZEF0dGFjaG1lbnQoYm90OiBCb3QsIHBheWxvYWQ6IEF0dGFjaG1lbnQpOiBEaXNjb3JkQXR0YWNobWVudCB7XG4gIHJldHVybiB7XG4gICAgaWQ6IGJvdC50cmFuc2Zvcm1lcnMucmV2ZXJzZS5zbm93Zmxha2UocGF5bG9hZC5pZCksXG4gICAgZmlsZW5hbWU6IHBheWxvYWQuZmlsZW5hbWUsXG4gICAgY29udGVudF90eXBlOiBwYXlsb2FkLmNvbnRlbnRUeXBlLFxuICAgIHNpemU6IHBheWxvYWQuc2l6ZSxcbiAgICB1cmw6IHBheWxvYWQudXJsLFxuICAgIHByb3h5X3VybDogcGF5bG9hZC5wcm94eVVybCxcbiAgICBoZWlnaHQ6IHBheWxvYWQuaGVpZ2h0LFxuICAgIHdpZHRoOiBwYXlsb2FkLndpZHRoLFxuICAgIGVwaGVtZXJhbDogcGF5bG9hZC5lcGhlbWVyYWwsXG4gICAgZGVzY3JpcHRpb246IHBheWxvYWQuZGVzY3JpcHRpb24sXG4gICAgZHVyYXRpb25fc2VjczogcGF5bG9hZC5kdXJhdGlvbl9zZWNzLFxuICAgIHdhdmVmb3JtOiBwYXlsb2FkLndhdmVmb3JtLFxuICAgIGZsYWdzOiBwYXlsb2FkLmZsYWdzLFxuICB9XG59XG4iXSwibmFtZXMiOlsidHJhbnNmb3JtQXR0YWNobWVudFRvRGlzY29yZEF0dGFjaG1lbnQiLCJib3QiLCJwYXlsb2FkIiwiaWQiLCJ0cmFuc2Zvcm1lcnMiLCJyZXZlcnNlIiwic25vd2ZsYWtlIiwiZmlsZW5hbWUiLCJjb250ZW50X3R5cGUiLCJjb250ZW50VHlwZSIsInNpemUiLCJ1cmwiLCJwcm94eV91cmwiLCJwcm94eVVybCIsImhlaWdodCIsIndpZHRoIiwiZXBoZW1lcmFsIiwiZGVzY3JpcHRpb24iLCJkdXJhdGlvbl9zZWNzIiwid2F2ZWZvcm0iLCJmbGFncyJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFFZ0JBOzs7ZUFBQUE7OztBQUFULFNBQVNBLHVDQUF1Q0MsR0FBUSxFQUFFQyxPQUFtQjtJQUNsRixPQUFPO1FBQ0xDLElBQUlGLElBQUlHLFlBQVksQ0FBQ0MsT0FBTyxDQUFDQyxTQUFTLENBQUNKLFFBQVFDLEVBQUU7UUFDakRJLFVBQVVMLFFBQVFLLFFBQVE7UUFDMUJDLGNBQWNOLFFBQVFPLFdBQVc7UUFDakNDLE1BQU1SLFFBQVFRLElBQUk7UUFDbEJDLEtBQUtULFFBQVFTLEdBQUc7UUFDaEJDLFdBQVdWLFFBQVFXLFFBQVE7UUFDM0JDLFFBQVFaLFFBQVFZLE1BQU07UUFDdEJDLE9BQU9iLFFBQVFhLEtBQUs7UUFDcEJDLFdBQVdkLFFBQVFjLFNBQVM7UUFDNUJDLGFBQWFmLFFBQVFlLFdBQVc7UUFDaENDLGVBQWVoQixRQUFRZ0IsYUFBYTtRQUNwQ0MsVUFBVWpCLFFBQVFpQixRQUFRO1FBQzFCQyxPQUFPbEIsUUFBUWtCLEtBQUs7SUFDdEI7QUFDRiJ9
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvcmV2ZXJzZS9hdHRhY2htZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQXR0YWNobWVudCwgQm90LCBEaXNjb3JkQXR0YWNobWVudCB9IGZyb20gJy4uLy4uL2luZGV4LmpzJ1xuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtQXR0YWNobWVudFRvRGlzY29yZEF0dGFjaG1lbnQoYm90OiBCb3QsIHBheWxvYWQ6IHR5cGVvZiBib3QudHJhbnNmb3JtZXJzLiRpbmZlcnJlZFR5cGVzLmF0dGFjaG1lbnQpOiBEaXNjb3JkQXR0YWNobWVudCB7XG4gIGNvbnN0IF9wYXlsb2FkID0gcGF5bG9hZCBhcyBQYXJ0aWFsPEF0dGFjaG1lbnQ+XG5cbiAgcmV0dXJuIHtcbiAgICBpZDogX3BheWxvYWQuaWQgPyBib3QudHJhbnNmb3JtZXJzLnJldmVyc2Uuc25vd2ZsYWtlKF9wYXlsb2FkLmlkKSA6IHVuZGVmaW5lZCEsXG4gICAgZmlsZW5hbWU6IF9wYXlsb2FkLmZpbGVuYW1lISxcbiAgICBjb250ZW50X3R5cGU6IF9wYXlsb2FkLmNvbnRlbnRUeXBlLFxuICAgIHNpemU6IF9wYXlsb2FkLnNpemUhLFxuICAgIHVybDogX3BheWxvYWQudXJsISxcbiAgICBwcm94eV91cmw6IF9wYXlsb2FkLnByb3h5VXJsISxcbiAgICBoZWlnaHQ6IF9wYXlsb2FkLmhlaWdodCxcbiAgICB3aWR0aDogX3BheWxvYWQud2lkdGgsXG4gICAgZXBoZW1lcmFsOiBfcGF5bG9hZC5lcGhlbWVyYWwsXG4gICAgZGVzY3JpcHRpb246IF9wYXlsb2FkLmRlc2NyaXB0aW9uLFxuICAgIGR1cmF0aW9uX3NlY3M6IF9wYXlsb2FkLmR1cmF0aW9uX3NlY3MsXG4gICAgd2F2ZWZvcm06IF9wYXlsb2FkLndhdmVmb3JtLFxuICAgIGZsYWdzOiBfcGF5bG9hZC5mbGFncyxcbiAgfVxufVxuIl0sIm5hbWVzIjpbInRyYW5zZm9ybUF0dGFjaG1lbnRUb0Rpc2NvcmRBdHRhY2htZW50IiwiYm90IiwicGF5bG9hZCIsIl9wYXlsb2FkIiwiaWQiLCJ0cmFuc2Zvcm1lcnMiLCJyZXZlcnNlIiwic25vd2ZsYWtlIiwidW5kZWZpbmVkIiwiZmlsZW5hbWUiLCJjb250ZW50X3R5cGUiLCJjb250ZW50VHlwZSIsInNpemUiLCJ1cmwiLCJwcm94eV91cmwiLCJwcm94eVVybCIsImhlaWdodCIsIndpZHRoIiwiZXBoZW1lcmFsIiwiZGVzY3JpcHRpb24iLCJkdXJhdGlvbl9zZWNzIiwid2F2ZWZvcm0iLCJmbGFncyJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFFZ0JBOzs7ZUFBQUE7OztBQUFULFNBQVNBLHVDQUF1Q0MsR0FBUSxFQUFFQyxPQUEwRDtJQUN6SCxNQUFNQyxXQUFXRDtJQUVqQixPQUFPO1FBQ0xFLElBQUlELFNBQVNDLEVBQUUsR0FBR0gsSUFBSUksWUFBWSxDQUFDQyxPQUFPLENBQUNDLFNBQVMsQ0FBQ0osU0FBU0MsRUFBRSxJQUFJSTtRQUNwRUMsVUFBVU4sU0FBU00sUUFBUTtRQUMzQkMsY0FBY1AsU0FBU1EsV0FBVztRQUNsQ0MsTUFBTVQsU0FBU1MsSUFBSTtRQUNuQkMsS0FBS1YsU0FBU1UsR0FBRztRQUNqQkMsV0FBV1gsU0FBU1ksUUFBUTtRQUM1QkMsUUFBUWIsU0FBU2EsTUFBTTtRQUN2QkMsT0FBT2QsU0FBU2MsS0FBSztRQUNyQkMsV0FBV2YsU0FBU2UsU0FBUztRQUM3QkMsYUFBYWhCLFNBQVNnQixXQUFXO1FBQ2pDQyxlQUFlakIsU0FBU2lCLGFBQWE7UUFDckNDLFVBQVVsQixTQUFTa0IsUUFBUTtRQUMzQkMsT0FBT25CLFNBQVNtQixLQUFLO0lBQ3ZCO0FBQ0YifQ==