@discordeno/bot 21.0.0-next.dbf0459 → 21.0.0-next.dff9df5

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 (49) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/constants.cjs +2 -2
  3. package/dist/cjs/desiredProperties.cjs +64 -1
  4. package/dist/cjs/helpers.cjs +32 -11
  5. package/dist/cjs/transformers/automodActionExecution.cjs +3 -3
  6. package/dist/cjs/transformers/component.cjs +181 -64
  7. package/dist/cjs/transformers/index.cjs +2 -1
  8. package/dist/cjs/transformers/interaction.cjs +7 -2
  9. package/dist/cjs/transformers/lobby.cjs +41 -0
  10. package/dist/cjs/transformers/reverse/component.cjs +97 -11
  11. package/dist/cjs/transformers/threadMember.cjs +3 -2
  12. package/dist/cjs/transformers.cjs +11 -1
  13. package/dist/cjs/utils.cjs +5 -5
  14. package/dist/esm/constants.js +2 -2
  15. package/dist/esm/desiredProperties.js +64 -1
  16. package/dist/esm/helpers.js +32 -11
  17. package/dist/esm/transformers/automodActionExecution.js +3 -3
  18. package/dist/esm/transformers/component.js +167 -61
  19. package/dist/esm/transformers/index.js +2 -1
  20. package/dist/esm/transformers/interaction.js +7 -2
  21. package/dist/esm/transformers/lobby.js +23 -0
  22. package/dist/esm/transformers/reverse/component.js +83 -8
  23. package/dist/esm/transformers/threadMember.js +3 -2
  24. package/dist/esm/transformers/types.js +2 -2
  25. package/dist/esm/transformers.js +13 -3
  26. package/dist/esm/utils.js +5 -5
  27. package/dist/types/constants.d.ts.map +1 -1
  28. package/dist/types/desiredProperties.d.ts +7 -2
  29. package/dist/types/desiredProperties.d.ts.map +1 -1
  30. package/dist/types/helpers.d.ts +19 -13
  31. package/dist/types/helpers.d.ts.map +1 -1
  32. package/dist/types/transformers/automodActionExecution.d.ts.map +1 -1
  33. package/dist/types/transformers/component.d.ts +3 -1
  34. package/dist/types/transformers/component.d.ts.map +1 -1
  35. package/dist/types/transformers/index.d.ts +1 -0
  36. package/dist/types/transformers/index.d.ts.map +1 -1
  37. package/dist/types/transformers/interaction.d.ts.map +1 -1
  38. package/dist/types/transformers/lobby.d.ts +5 -0
  39. package/dist/types/transformers/lobby.d.ts.map +1 -0
  40. package/dist/types/transformers/reverse/component.d.ts +3 -1
  41. package/dist/types/transformers/reverse/component.d.ts.map +1 -1
  42. package/dist/types/transformers/threadMember.d.ts.map +1 -1
  43. package/dist/types/transformers/types.d.ts +89 -10
  44. package/dist/types/transformers/types.d.ts.map +1 -1
  45. package/dist/types/transformers.d.ts +13 -3
  46. package/dist/types/transformers.d.ts.map +1 -1
  47. package/dist/types/utils.d.ts +1 -1
  48. package/dist/types/utils.d.ts.map +1 -1
  49. package/package.json +5 -5
@@ -0,0 +1,23 @@
1
+ import { ToggleBitfield } from '../index.js';
2
+ export function transformLobby(bot, payload) {
3
+ const props = bot.transformers.desiredProperties.lobby;
4
+ const lobby = {};
5
+ if (props.id && payload.id) lobby.id = bot.transformers.snowflake(payload.id);
6
+ if (props.applicationId && payload.application_id) lobby.applicationId = bot.transformers.snowflake(payload.application_id);
7
+ if (props.metadata && payload.metadata) lobby.metadata = payload.metadata;
8
+ if (props.members && payload.members) lobby.members = payload.members.map((member)=>bot.transformers.lobbyMember(bot, member));
9
+ if (props.linkedChannel && payload.linked_channel) lobby.linkedChannel = bot.transformers.channel(bot, {
10
+ channel: payload.linked_channel
11
+ });
12
+ return bot.transformers.customizers.lobby(bot, payload, lobby);
13
+ }
14
+ export function transformLobbyMember(bot, payload) {
15
+ const props = bot.transformers.desiredProperties.lobbyMember;
16
+ const lobbyMember = {};
17
+ if (props.id && payload.id) lobbyMember.id = bot.transformers.snowflake(payload.id);
18
+ if (props.metadata && payload.metadata) lobbyMember.metadata = payload.metadata;
19
+ if (props.flags && payload.flags) lobbyMember.flags = new ToggleBitfield(payload.flags);
20
+ return bot.transformers.customizers.lobbyMember(bot, payload, lobbyMember);
21
+ }
22
+
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvbG9iYnkudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBEaXNjb3JkTG9iYnksIERpc2NvcmRMb2JieU1lbWJlciB9IGZyb20gJ0BkaXNjb3JkZW5vL3R5cGVzJ1xuaW1wb3J0IHsgdHlwZSBJbnRlcm5hbEJvdCwgdHlwZSBMb2JieSwgdHlwZSBMb2JieU1lbWJlciwgVG9nZ2xlQml0ZmllbGQgfSBmcm9tICcuLi9pbmRleC5qcydcblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUxvYmJ5KGJvdDogSW50ZXJuYWxCb3QsIHBheWxvYWQ6IERpc2NvcmRMb2JieSk6IExvYmJ5IHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmxvYmJ5XG4gIGNvbnN0IGxvYmJ5ID0ge30gYXMgTG9iYnlcblxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgbG9iYnkuaWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLmlkKVxuICBpZiAocHJvcHMuYXBwbGljYXRpb25JZCAmJiBwYXlsb2FkLmFwcGxpY2F0aW9uX2lkKSBsb2JieS5hcHBsaWNhdGlvbklkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5hcHBsaWNhdGlvbl9pZClcbiAgaWYgKHByb3BzLm1ldGFkYXRhICYmIHBheWxvYWQubWV0YWRhdGEpIGxvYmJ5Lm1ldGFkYXRhID0gcGF5bG9hZC5tZXRhZGF0YVxuICBpZiAocHJvcHMubWVtYmVycyAmJiBwYXlsb2FkLm1lbWJlcnMpIGxvYmJ5Lm1lbWJlcnMgPSBwYXlsb2FkLm1lbWJlcnMubWFwKChtZW1iZXIpID0+IGJvdC50cmFuc2Zvcm1lcnMubG9iYnlNZW1iZXIoYm90LCBtZW1iZXIpKVxuICBpZiAocHJvcHMubGlua2VkQ2hhbm5lbCAmJiBwYXlsb2FkLmxpbmtlZF9jaGFubmVsKSBsb2JieS5saW5rZWRDaGFubmVsID0gYm90LnRyYW5zZm9ybWVycy5jaGFubmVsKGJvdCwgeyBjaGFubmVsOiBwYXlsb2FkLmxpbmtlZF9jaGFubmVsIH0pXG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMubG9iYnkoYm90LCBwYXlsb2FkLCBsb2JieSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUxvYmJ5TWVtYmVyKGJvdDogSW50ZXJuYWxCb3QsIHBheWxvYWQ6IERpc2NvcmRMb2JieU1lbWJlcik6IExvYmJ5TWVtYmVyIHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmxvYmJ5TWVtYmVyXG4gIGNvbnN0IGxvYmJ5TWVtYmVyID0ge30gYXMgTG9iYnlNZW1iZXJcblxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgbG9iYnlNZW1iZXIuaWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLmlkKVxuICBpZiAocHJvcHMubWV0YWRhdGEgJiYgcGF5bG9hZC5tZXRhZGF0YSkgbG9iYnlNZW1iZXIubWV0YWRhdGEgPSBwYXlsb2FkLm1ldGFkYXRhXG4gIGlmIChwcm9wcy5mbGFncyAmJiBwYXlsb2FkLmZsYWdzKSBsb2JieU1lbWJlci5mbGFncyA9IG5ldyBUb2dnbGVCaXRmaWVsZChwYXlsb2FkLmZsYWdzKVxuXG4gIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmN1c3RvbWl6ZXJzLmxvYmJ5TWVtYmVyKGJvdCwgcGF5bG9hZCwgbG9iYnlNZW1iZXIpXG59XG4iXSwibmFtZXMiOlsiVG9nZ2xlQml0ZmllbGQiLCJ0cmFuc2Zvcm1Mb2JieSIsImJvdCIsInBheWxvYWQiLCJwcm9wcyIsInRyYW5zZm9ybWVycyIsImRlc2lyZWRQcm9wZXJ0aWVzIiwibG9iYnkiLCJpZCIsInNub3dmbGFrZSIsImFwcGxpY2F0aW9uSWQiLCJhcHBsaWNhdGlvbl9pZCIsIm1ldGFkYXRhIiwibWVtYmVycyIsIm1hcCIsIm1lbWJlciIsImxvYmJ5TWVtYmVyIiwibGlua2VkQ2hhbm5lbCIsImxpbmtlZF9jaGFubmVsIiwiY2hhbm5lbCIsImN1c3RvbWl6ZXJzIiwidHJhbnNmb3JtTG9iYnlNZW1iZXIiLCJmbGFncyJdLCJtYXBwaW5ncyI6IkFBQ0EsU0FBeURBLGNBQWMsUUFBUSxjQUFhO0FBRTVGLE9BQU8sU0FBU0MsZUFBZUMsR0FBZ0IsRUFBRUMsT0FBcUI7SUFDcEUsTUFBTUMsUUFBUUYsSUFBSUcsWUFBWSxDQUFDQyxpQkFBaUIsQ0FBQ0MsS0FBSztJQUN0RCxNQUFNQSxRQUFRLENBQUM7SUFFZixJQUFJSCxNQUFNSSxFQUFFLElBQUlMLFFBQVFLLEVBQUUsRUFBRUQsTUFBTUMsRUFBRSxHQUFHTixJQUFJRyxZQUFZLENBQUNJLFNBQVMsQ0FBQ04sUUFBUUssRUFBRTtJQUM1RSxJQUFJSixNQUFNTSxhQUFhLElBQUlQLFFBQVFRLGNBQWMsRUFBRUosTUFBTUcsYUFBYSxHQUFHUixJQUFJRyxZQUFZLENBQUNJLFNBQVMsQ0FBQ04sUUFBUVEsY0FBYztJQUMxSCxJQUFJUCxNQUFNUSxRQUFRLElBQUlULFFBQVFTLFFBQVEsRUFBRUwsTUFBTUssUUFBUSxHQUFHVCxRQUFRUyxRQUFRO0lBQ3pFLElBQUlSLE1BQU1TLE9BQU8sSUFBSVYsUUFBUVUsT0FBTyxFQUFFTixNQUFNTSxPQUFPLEdBQUdWLFFBQVFVLE9BQU8sQ0FBQ0MsR0FBRyxDQUFDLENBQUNDLFNBQVdiLElBQUlHLFlBQVksQ0FBQ1csV0FBVyxDQUFDZCxLQUFLYTtJQUN4SCxJQUFJWCxNQUFNYSxhQUFhLElBQUlkLFFBQVFlLGNBQWMsRUFBRVgsTUFBTVUsYUFBYSxHQUFHZixJQUFJRyxZQUFZLENBQUNjLE9BQU8sQ0FBQ2pCLEtBQUs7UUFBRWlCLFNBQVNoQixRQUFRZSxjQUFjO0lBQUM7SUFFekksT0FBT2hCLElBQUlHLFlBQVksQ0FBQ2UsV0FBVyxDQUFDYixLQUFLLENBQUNMLEtBQUtDLFNBQVNJO0FBQzFEO0FBRUEsT0FBTyxTQUFTYyxxQkFBcUJuQixHQUFnQixFQUFFQyxPQUEyQjtJQUNoRixNQUFNQyxRQUFRRixJQUFJRyxZQUFZLENBQUNDLGlCQUFpQixDQUFDVSxXQUFXO0lBQzVELE1BQU1BLGNBQWMsQ0FBQztJQUVyQixJQUFJWixNQUFNSSxFQUFFLElBQUlMLFFBQVFLLEVBQUUsRUFBRVEsWUFBWVIsRUFBRSxHQUFHTixJQUFJRyxZQUFZLENBQUNJLFNBQVMsQ0FBQ04sUUFBUUssRUFBRTtJQUNsRixJQUFJSixNQUFNUSxRQUFRLElBQUlULFFBQVFTLFFBQVEsRUFBRUksWUFBWUosUUFBUSxHQUFHVCxRQUFRUyxRQUFRO0lBQy9FLElBQUlSLE1BQU1rQixLQUFLLElBQUluQixRQUFRbUIsS0FBSyxFQUFFTixZQUFZTSxLQUFLLEdBQUcsSUFBSXRCLGVBQWVHLFFBQVFtQixLQUFLO0lBRXRGLE9BQU9wQixJQUFJRyxZQUFZLENBQUNlLFdBQVcsQ0FBQ0osV0FBVyxDQUFDZCxLQUFLQyxTQUFTYTtBQUNoRSJ9
@@ -6,27 +6,68 @@ export function transformComponentToDiscordComponent(bot, payload) {
6
6
  return transformActionRow(bot, payload);
7
7
  case MessageComponentTypes.Button:
8
8
  return transformButtonComponent(bot, payload);
9
- case MessageComponentTypes.InputText:
9
+ case MessageComponentTypes.Container:
10
+ return transformContainerComponent(bot, payload);
11
+ case MessageComponentTypes.TextInput:
10
12
  return transformInputTextComponent(bot, payload);
11
- case MessageComponentTypes.SelectMenu:
12
- case MessageComponentTypes.SelectMenuChannels:
13
- case MessageComponentTypes.SelectMenuRoles:
14
- case MessageComponentTypes.SelectMenuUsers:
15
- case MessageComponentTypes.SelectMenuUsersAndRoles:
13
+ case MessageComponentTypes.StringSelect:
14
+ case MessageComponentTypes.ChannelSelect:
15
+ case MessageComponentTypes.RoleSelect:
16
+ case MessageComponentTypes.UserSelect:
17
+ case MessageComponentTypes.MentionableSelect:
16
18
  return transformSelectMenuComponent(bot, payload);
19
+ case MessageComponentTypes.Section:
20
+ return transformSectionComponent(bot, payload);
21
+ case MessageComponentTypes.File:
22
+ return transformFileComponent(bot, payload);
23
+ case MessageComponentTypes.MediaGallery:
24
+ return transformMediaGalleryComponent(bot, payload);
25
+ case MessageComponentTypes.Thumbnail:
26
+ return transformThumbnailComponent(bot, payload);
27
+ case MessageComponentTypes.Separator:
28
+ case MessageComponentTypes.TextDisplay:
29
+ // As of now they are compatible
30
+ return payload;
17
31
  }
18
32
  }
33
+ export function transformUnfurledMediaItemToDiscordUnfurledMediaItem(_bot, payload) {
34
+ return {
35
+ url: payload.url,
36
+ proxy_url: payload.proxyUrl,
37
+ height: payload.height,
38
+ width: payload.width,
39
+ content_type: payload.contentType
40
+ };
41
+ }
42
+ export function transformMediaGalleryItemToDiscordMediaGalleryItem(bot, payload) {
43
+ return {
44
+ media: bot.transformers.reverse.unfurledMediaItem(bot, payload.media),
45
+ description: payload.description,
46
+ spoiler: payload.spoiler
47
+ };
48
+ }
19
49
  function transformActionRow(bot, payload) {
20
50
  return {
21
51
  type: MessageComponentTypes.ActionRow,
52
+ id: payload.id,
22
53
  // The actionRow.components type is kinda annoying, so we need a cast for this
23
54
  components: payload.components?.map((component)=>bot.transformers.reverse.component(bot, component)) ?? []
24
55
  };
25
56
  }
57
+ function transformContainerComponent(bot, payload) {
58
+ return {
59
+ type: MessageComponentTypes.Container,
60
+ id: payload.id,
61
+ accent_color: payload.accentColor,
62
+ spoiler: payload.spoiler,
63
+ components: payload.components?.map((component)=>bot.transformers.reverse.component(bot, component)) ?? []
64
+ };
65
+ }
26
66
  function transformButtonComponent(bot, payload) {
27
67
  // Since Component is a merge of all components, some casts are necessary
28
68
  return {
29
69
  type: MessageComponentTypes.Button,
70
+ id: payload.id,
30
71
  style: payload.style,
31
72
  custom_id: payload.customId,
32
73
  disabled: payload.disabled,
@@ -43,7 +84,8 @@ function transformButtonComponent(bot, payload) {
43
84
  function transformInputTextComponent(_bot, payload) {
44
85
  // Since Component is a merge of all components, some casts are necessary
45
86
  return {
46
- type: MessageComponentTypes.InputText,
87
+ type: MessageComponentTypes.TextInput,
88
+ id: payload.id,
47
89
  style: payload.style,
48
90
  custom_id: payload.customId,
49
91
  label: payload.label,
@@ -57,6 +99,7 @@ function transformInputTextComponent(_bot, payload) {
57
99
  function transformSelectMenuComponent(bot, payload) {
58
100
  return {
59
101
  type: payload.type,
102
+ id: payload.id,
60
103
  custom_id: payload.customId,
61
104
  channel_types: payload.channelTypes,
62
105
  default_values: payload.defaultValues?.map((defaultValue)=>({
@@ -80,5 +123,37 @@ function transformSelectMenuComponent(bot, payload) {
80
123
  placeholder: payload.placeholder
81
124
  };
82
125
  }
126
+ function transformSectionComponent(bot, payload) {
127
+ return {
128
+ type: MessageComponentTypes.Section,
129
+ id: payload.id,
130
+ components: payload.components?.map((component)=>bot.transformers.reverse.component(bot, component)),
131
+ accessory: payload.accessory ? bot.transformers.reverse.component(bot, payload.accessory) : undefined
132
+ };
133
+ }
134
+ function transformFileComponent(bot, payload) {
135
+ return {
136
+ type: MessageComponentTypes.File,
137
+ id: payload.id,
138
+ file: bot.transformers.reverse.unfurledMediaItem(bot, payload.file),
139
+ spoiler: payload.spoiler
140
+ };
141
+ }
142
+ function transformMediaGalleryComponent(bot, payload) {
143
+ return {
144
+ type: MessageComponentTypes.MediaGallery,
145
+ id: payload.id,
146
+ items: payload.items?.map((item)=>bot.transformers.reverse.mediaGalleryItem(bot, item)) ?? []
147
+ };
148
+ }
149
+ function transformThumbnailComponent(bot, payload) {
150
+ return {
151
+ type: MessageComponentTypes.Thumbnail,
152
+ id: payload.id,
153
+ media: bot.transformers.reverse.unfurledMediaItem(bot, payload.media),
154
+ description: payload.description,
155
+ spoiler: payload.spoiler
156
+ };
157
+ }
83
158
 
84
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvcmV2ZXJzZS9jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBEaXNjb3JkQnV0dG9uQ29tcG9uZW50LCB0eXBlIERpc2NvcmRNZXNzYWdlQ29tcG9uZW50LCBNZXNzYWdlQ29tcG9uZW50VHlwZXMsIHR5cGUgVGV4dFN0eWxlcyB9IGZyb20gJ0BkaXNjb3JkZW5vL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBCb3QsIEJ1dHRvblN0eWxlcywgQ29tcG9uZW50LCBEaXNjb3JkQWN0aW9uUm93LCBEaXNjb3JkSW5wdXRUZXh0Q29tcG9uZW50LCBEaXNjb3JkU2VsZWN0TWVudUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2luZGV4LmpzJ1xuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtQ29tcG9uZW50VG9EaXNjb3JkQ29tcG9uZW50KGJvdDogQm90LCBwYXlsb2FkOiBDb21wb25lbnQpOiBEaXNjb3JkTWVzc2FnZUNvbXBvbmVudCB7XG4gIC8vIFRoaXMgc3dpdGNoIHNob3VsZCBpbmNsdWRlIGFsbCBjYXNlc1xuICBzd2l0Y2ggKHBheWxvYWQudHlwZSkge1xuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLkFjdGlvblJvdzpcbiAgICAgIHJldHVybiB0cmFuc2Zvcm1BY3Rpb25Sb3coYm90LCBwYXlsb2FkKVxuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLkJ1dHRvbjpcbiAgICAgIHJldHVybiB0cmFuc2Zvcm1CdXR0b25Db21wb25lbnQoYm90LCBwYXlsb2FkKVxuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLklucHV0VGV4dDpcbiAgICAgIHJldHVybiB0cmFuc2Zvcm1JbnB1dFRleHRDb21wb25lbnQoYm90LCBwYXlsb2FkKVxuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLlNlbGVjdE1lbnU6XG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuU2VsZWN0TWVudUNoYW5uZWxzOlxuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLlNlbGVjdE1lbnVSb2xlczpcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5TZWxlY3RNZW51VXNlcnM6XG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuU2VsZWN0TWVudVVzZXJzQW5kUm9sZXM6XG4gICAgICByZXR1cm4gdHJhbnNmb3JtU2VsZWN0TWVudUNvbXBvbmVudChib3QsIHBheWxvYWQpXG4gIH1cbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtQWN0aW9uUm93KGJvdDogQm90LCBwYXlsb2FkOiBDb21wb25lbnQpOiBEaXNjb3JkQWN0aW9uUm93IHtcbiAgcmV0dXJuIHtcbiAgICB0eXBlOiBNZXNzYWdlQ29tcG9uZW50VHlwZXMuQWN0aW9uUm93LFxuICAgIC8vIFRoZSBhY3Rpb25Sb3cuY29tcG9uZW50cyB0eXBlIGlzIGtpbmRhIGFubm95aW5nLCBzbyB3ZSBuZWVkIGEgY2FzdCBmb3IgdGhpc1xuICAgIGNvbXBvbmVudHM6IChwYXlsb2FkLmNvbXBvbmVudHM/Lm1hcCgoY29tcG9uZW50KSA9PiBib3QudHJhbnNmb3JtZXJzLnJldmVyc2UuY29tcG9uZW50KGJvdCwgY29tcG9uZW50KSkgPz8gW10pIGFzIERpc2NvcmRBY3Rpb25Sb3dbJ2NvbXBvbmVudHMnXSxcbiAgfVxufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm1CdXR0b25Db21wb25lbnQoYm90OiBCb3QsIHBheWxvYWQ6IENvbXBvbmVudCk6IERpc2NvcmRCdXR0b25Db21wb25lbnQge1xuICAvLyBTaW5jZSBDb21wb25lbnQgaXMgYSBtZXJnZSBvZiBhbGwgY29tcG9uZW50cywgc29tZSBjYXN0cyBhcmUgbmVjZXNzYXJ5XG4gIHJldHVybiB7XG4gICAgdHlwZTogTWVzc2FnZUNvbXBvbmVudFR5cGVzLkJ1dHRvbixcbiAgICBzdHlsZTogcGF5bG9hZC5zdHlsZSBhcyBCdXR0b25TdHlsZXMsXG4gICAgY3VzdG9tX2lkOiBwYXlsb2FkLmN1c3RvbUlkLFxuICAgIGRpc2FibGVkOiBwYXlsb2FkLmRpc2FibGVkLFxuICAgIGVtb2ppOiBwYXlsb2FkLmVtb2ppXG4gICAgICA/IHtcbiAgICAgICAgICBpZDogcGF5bG9hZC5lbW9qaS5pZCA/IGJvdC50cmFuc2Zvcm1lcnMucmV2ZXJzZS5zbm93Zmxha2UocGF5bG9hZC5lbW9qaS5pZCkgOiB1bmRlZmluZWQsXG4gICAgICAgICAgbmFtZTogcGF5bG9hZC5lbW9qaS5uYW1lLFxuICAgICAgICAgIGFuaW1hdGVkOiBwYXlsb2FkLmVtb2ppLmFuaW1hdGVkLFxuICAgICAgICB9XG4gICAgICA6IHVuZGVmaW5lZCxcbiAgICBsYWJlbDogcGF5bG9hZC5sYWJlbCxcbiAgICB1cmw6IHBheWxvYWQudXJsLFxuICAgIHNrdV9pZDogcGF5bG9hZC5za3VJZCA/IGJvdC50cmFuc2Zvcm1lcnMucmV2ZXJzZS5zbm93Zmxha2UocGF5bG9hZC5za3VJZCkgOiB1bmRlZmluZWQsXG4gIH1cbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtSW5wdXRUZXh0Q29tcG9uZW50KF9ib3Q6IEJvdCwgcGF5bG9hZDogQ29tcG9uZW50KTogRGlzY29yZElucHV0VGV4dENvbXBvbmVudCB7XG4gIC8vIFNpbmNlIENvbXBvbmVudCBpcyBhIG1lcmdlIG9mIGFsbCBjb21wb25lbnRzLCBzb21lIGNhc3RzIGFyZSBuZWNlc3NhcnlcbiAgcmV0dXJuIHtcbiAgICB0eXBlOiBNZXNzYWdlQ29tcG9uZW50VHlwZXMuSW5wdXRUZXh0LFxuICAgIHN0eWxlOiBwYXlsb2FkLnN0eWxlIGFzIFRleHRTdHlsZXMsXG4gICAgY3VzdG9tX2lkOiBwYXlsb2FkLmN1c3RvbUlkISxcbiAgICBsYWJlbDogcGF5bG9hZC5sYWJlbCEsXG4gICAgdmFsdWU6IHBheWxvYWQudmFsdWUsXG4gICAgbWF4X2xlbmd0aDogcGF5bG9hZC5tYXhMZW5ndGgsXG4gICAgbWluX2xlbmd0aDogcGF5bG9hZC5taW5MZW5ndGgsXG4gICAgcGxhY2Vob2xkZXI6IHBheWxvYWQucGxhY2Vob2xkZXIsXG4gICAgcmVxdWlyZWQ6IHBheWxvYWQucmVxdWlyZWQsXG4gIH1cbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtU2VsZWN0TWVudUNvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogQ29tcG9uZW50KTogRGlzY29yZFNlbGVjdE1lbnVDb21wb25lbnQge1xuICByZXR1cm4ge1xuICAgIHR5cGU6IHBheWxvYWQudHlwZSBhcyBEaXNjb3JkU2VsZWN0TWVudUNvbXBvbmVudFsndHlwZSddLFxuICAgIGN1c3RvbV9pZDogcGF5bG9hZC5jdXN0b21JZCEsXG4gICAgY2hhbm5lbF90eXBlczogcGF5bG9hZC5jaGFubmVsVHlwZXMsXG4gICAgZGVmYXVsdF92YWx1ZXM6IHBheWxvYWQuZGVmYXVsdFZhbHVlcz8ubWFwKChkZWZhdWx0VmFsdWUpID0+ICh7XG4gICAgICBpZDogYm90LnRyYW5zZm9ybWVycy5yZXZlcnNlLnNub3dmbGFrZShkZWZhdWx0VmFsdWUuaWQpLFxuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLnR5cGUsXG4gICAgfSkpLFxuICAgIGRpc2FibGVkOiBwYXlsb2FkLmRpc2FibGVkLFxuICAgIG1heF92YWx1ZXM6IHBheWxvYWQubWF4VmFsdWVzLFxuICAgIG1pbl92YWx1ZXM6IHBheWxvYWQubWluVmFsdWVzLFxuICAgIG9wdGlvbnM6IHBheWxvYWQub3B0aW9ucz8ubWFwKChvcHRpb24pID0+ICh7XG4gICAgICBsYWJlbDogb3B0aW9uLmxhYmVsLFxuICAgICAgdmFsdWU6IG9wdGlvbi52YWx1ZSxcbiAgICAgIGRlc2NyaXB0aW9uOiBvcHRpb24uZGVzY3JpcHRpb24sXG4gICAgICBlbW9qaTogb3B0aW9uLmVtb2ppXG4gICAgICAgID8ge1xuICAgICAgICAgICAgaWQ6IG9wdGlvbi5lbW9qaS5pZCA/IGJvdC50cmFuc2Zvcm1lcnMucmV2ZXJzZS5zbm93Zmxha2Uob3B0aW9uLmVtb2ppLmlkKSA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIG5hbWU6IG9wdGlvbi5lbW9qaS5uYW1lLFxuICAgICAgICAgICAgYW5pbWF0ZWQ6IG9wdGlvbi5lbW9qaS5hbmltYXRlZCxcbiAgICAgICAgICB9XG4gICAgICAgIDogdW5kZWZpbmVkLFxuICAgICAgZGVmYXVsdDogb3B0aW9uLmRlZmF1bHQsXG4gICAgfSkpLFxuICAgIHBsYWNlaG9sZGVyOiBwYXlsb2FkLnBsYWNlaG9sZGVyLFxuICB9XG59XG4iXSwibmFtZXMiOlsiTWVzc2FnZUNvbXBvbmVudFR5cGVzIiwidHJhbnNmb3JtQ29tcG9uZW50VG9EaXNjb3JkQ29tcG9uZW50IiwiYm90IiwicGF5bG9hZCIsInR5cGUiLCJBY3Rpb25Sb3ciLCJ0cmFuc2Zvcm1BY3Rpb25Sb3ciLCJCdXR0b24iLCJ0cmFuc2Zvcm1CdXR0b25Db21wb25lbnQiLCJJbnB1dFRleHQiLCJ0cmFuc2Zvcm1JbnB1dFRleHRDb21wb25lbnQiLCJTZWxlY3RNZW51IiwiU2VsZWN0TWVudUNoYW5uZWxzIiwiU2VsZWN0TWVudVJvbGVzIiwiU2VsZWN0TWVudVVzZXJzIiwiU2VsZWN0TWVudVVzZXJzQW5kUm9sZXMiLCJ0cmFuc2Zvcm1TZWxlY3RNZW51Q29tcG9uZW50IiwiY29tcG9uZW50cyIsIm1hcCIsImNvbXBvbmVudCIsInRyYW5zZm9ybWVycyIsInJldmVyc2UiLCJzdHlsZSIsImN1c3RvbV9pZCIsImN1c3RvbUlkIiwiZGlzYWJsZWQiLCJlbW9qaSIsImlkIiwic25vd2ZsYWtlIiwidW5kZWZpbmVkIiwibmFtZSIsImFuaW1hdGVkIiwibGFiZWwiLCJ1cmwiLCJza3VfaWQiLCJza3VJZCIsIl9ib3QiLCJ2YWx1ZSIsIm1heF9sZW5ndGgiLCJtYXhMZW5ndGgiLCJtaW5fbGVuZ3RoIiwibWluTGVuZ3RoIiwicGxhY2Vob2xkZXIiLCJyZXF1aXJlZCIsImNoYW5uZWxfdHlwZXMiLCJjaGFubmVsVHlwZXMiLCJkZWZhdWx0X3ZhbHVlcyIsImRlZmF1bHRWYWx1ZXMiLCJkZWZhdWx0VmFsdWUiLCJtYXhfdmFsdWVzIiwibWF4VmFsdWVzIiwibWluX3ZhbHVlcyIsIm1pblZhbHVlcyIsIm9wdGlvbnMiLCJvcHRpb24iLCJkZXNjcmlwdGlvbiIsImRlZmF1bHQiXSwibWFwcGluZ3MiOiJBQUFBLFNBQW9FQSxxQkFBcUIsUUFBeUIsb0JBQW1CO0FBR3JJLE9BQU8sU0FBU0MscUNBQXFDQyxHQUFRLEVBQUVDLE9BQWtCO0lBQy9FLHVDQUF1QztJQUN2QyxPQUFRQSxRQUFRQyxJQUFJO1FBQ2xCLEtBQUtKLHNCQUFzQkssU0FBUztZQUNsQyxPQUFPQyxtQkFBbUJKLEtBQUtDO1FBQ2pDLEtBQUtILHNCQUFzQk8sTUFBTTtZQUMvQixPQUFPQyx5QkFBeUJOLEtBQUtDO1FBQ3ZDLEtBQUtILHNCQUFzQlMsU0FBUztZQUNsQyxPQUFPQyw0QkFBNEJSLEtBQUtDO1FBQzFDLEtBQUtILHNCQUFzQlcsVUFBVTtRQUNyQyxLQUFLWCxzQkFBc0JZLGtCQUFrQjtRQUM3QyxLQUFLWixzQkFBc0JhLGVBQWU7UUFDMUMsS0FBS2Isc0JBQXNCYyxlQUFlO1FBQzFDLEtBQUtkLHNCQUFzQmUsdUJBQXVCO1lBQ2hELE9BQU9DLDZCQUE2QmQsS0FBS0M7SUFDN0M7QUFDRjtBQUVBLFNBQVNHLG1CQUFtQkosR0FBUSxFQUFFQyxPQUFrQjtJQUN0RCxPQUFPO1FBQ0xDLE1BQU1KLHNCQUFzQkssU0FBUztRQUNyQyw4RUFBOEU7UUFDOUVZLFlBQWFkLFFBQVFjLFVBQVUsRUFBRUMsSUFBSSxDQUFDQyxZQUFjakIsSUFBSWtCLFlBQVksQ0FBQ0MsT0FBTyxDQUFDRixTQUFTLENBQUNqQixLQUFLaUIsZUFBZSxFQUFFO0lBQy9HO0FBQ0Y7QUFFQSxTQUFTWCx5QkFBeUJOLEdBQVEsRUFBRUMsT0FBa0I7SUFDNUQseUVBQXlFO0lBQ3pFLE9BQU87UUFDTEMsTUFBTUosc0JBQXNCTyxNQUFNO1FBQ2xDZSxPQUFPbkIsUUFBUW1CLEtBQUs7UUFDcEJDLFdBQVdwQixRQUFRcUIsUUFBUTtRQUMzQkMsVUFBVXRCLFFBQVFzQixRQUFRO1FB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
159
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvcmV2ZXJzZS9jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBEaXNjb3JkQnV0dG9uQ29tcG9uZW50LCB0eXBlIERpc2NvcmRNZXNzYWdlQ29tcG9uZW50LCBNZXNzYWdlQ29tcG9uZW50VHlwZXMsIHR5cGUgVGV4dFN0eWxlcyB9IGZyb20gJ0BkaXNjb3JkZW5vL3R5cGVzJ1xuaW1wb3J0IHR5cGUge1xuICBCb3QsXG4gIEJ1dHRvblN0eWxlcyxcbiAgQ29tcG9uZW50LFxuICBEaXNjb3JkQWN0aW9uUm93LFxuICBEaXNjb3JkQ29udGFpbmVyQ29tcG9uZW50LFxuICBEaXNjb3JkRmlsZUNvbXBvbmVudCxcbiAgRGlzY29yZE1lZGlhR2FsbGVyeUNvbXBvbmVudCxcbiAgRGlzY29yZE1lZGlhR2FsbGVyeUl0ZW0sXG4gIERpc2NvcmRTZWN0aW9uQ29tcG9uZW50LFxuICBEaXNjb3JkU2VsZWN0TWVudUNvbXBvbmVudCxcbiAgRGlzY29yZFRleHREaXNwbGF5Q29tcG9uZW50LFxuICBEaXNjb3JkVGV4dElucHV0Q29tcG9uZW50LFxuICBEaXNjb3JkVGh1bWJuYWlsQ29tcG9uZW50LFxuICBEaXNjb3JkVW5mdXJsZWRNZWRpYUl0ZW0sXG4gIE1lZGlhR2FsbGVyeUl0ZW0sXG4gIFVuZnVybGVkTWVkaWFJdGVtLFxufSBmcm9tICcuLi8uLi9pbmRleC5qcydcblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUNvbXBvbmVudFRvRGlzY29yZENvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogQ29tcG9uZW50KTogRGlzY29yZE1lc3NhZ2VDb21wb25lbnQge1xuICAvLyBUaGlzIHN3aXRjaCBzaG91bGQgaW5jbHVkZSBhbGwgY2FzZXNcbiAgc3dpdGNoIChwYXlsb2FkLnR5cGUpIHtcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5BY3Rpb25Sb3c6XG4gICAgICByZXR1cm4gdHJhbnNmb3JtQWN0aW9uUm93KGJvdCwgcGF5bG9hZClcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5CdXR0b246XG4gICAgICByZXR1cm4gdHJhbnNmb3JtQnV0dG9uQ29tcG9uZW50KGJvdCwgcGF5bG9hZClcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5Db250YWluZXI6XG4gICAgICByZXR1cm4gdHJhbnNmb3JtQ29udGFpbmVyQ29tcG9uZW50KGJvdCwgcGF5bG9hZClcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5UZXh0SW5wdXQ6XG4gICAgICByZXR1cm4gdHJhbnNmb3JtSW5wdXRUZXh0Q29tcG9uZW50KGJvdCwgcGF5bG9hZClcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5TdHJpbmdTZWxlY3Q6XG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuQ2hhbm5lbFNlbGVjdDpcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5Sb2xlU2VsZWN0OlxuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLlVzZXJTZWxlY3Q6XG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuTWVudGlvbmFibGVTZWxlY3Q6XG4gICAgICByZXR1cm4gdHJhbnNmb3JtU2VsZWN0TWVudUNvbXBvbmVudChib3QsIHBheWxvYWQpXG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuU2VjdGlvbjpcbiAgICAgIHJldHVybiB0cmFuc2Zvcm1TZWN0aW9uQ29tcG9uZW50KGJvdCwgcGF5bG9hZClcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5GaWxlOlxuICAgICAgcmV0dXJuIHRyYW5zZm9ybUZpbGVDb21wb25lbnQoYm90LCBwYXlsb2FkKVxuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLk1lZGlhR2FsbGVyeTpcbiAgICAgIHJldHVybiB0cmFuc2Zvcm1NZWRpYUdhbGxlcnlDb21wb25lbnQoYm90LCBwYXlsb2FkKVxuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLlRodW1ibmFpbDpcbiAgICAgIHJldHVybiB0cmFuc2Zvcm1UaHVtYm5haWxDb21wb25lbnQoYm90LCBwYXlsb2FkKVxuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLlNlcGFyYXRvcjpcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5UZXh0RGlzcGxheTpcbiAgICAgIC8vIEFzIG9mIG5vdyB0aGV5IGFyZSBjb21wYXRpYmxlXG4gICAgICByZXR1cm4gcGF5bG9hZCBhcyBEaXNjb3JkTWVzc2FnZUNvbXBvbmVudFxuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1VbmZ1cmxlZE1lZGlhSXRlbVRvRGlzY29yZFVuZnVybGVkTWVkaWFJdGVtKF9ib3Q6IEJvdCwgcGF5bG9hZDogVW5mdXJsZWRNZWRpYUl0ZW0pOiBEaXNjb3JkVW5mdXJsZWRNZWRpYUl0ZW0ge1xuICByZXR1cm4ge1xuICAgIHVybDogcGF5bG9hZC51cmwsXG4gICAgcHJveHlfdXJsOiBwYXlsb2FkLnByb3h5VXJsLFxuICAgIGhlaWdodDogcGF5bG9hZC5oZWlnaHQsXG4gICAgd2lkdGg6IHBheWxvYWQud2lkdGgsXG4gICAgY29udGVudF90eXBlOiBwYXlsb2FkLmNvbnRlbnRUeXBlLFxuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1NZWRpYUdhbGxlcnlJdGVtVG9EaXNjb3JkTWVkaWFHYWxsZXJ5SXRlbShib3Q6IEJvdCwgcGF5bG9hZDogTWVkaWFHYWxsZXJ5SXRlbSk6IERpc2NvcmRNZWRpYUdhbGxlcnlJdGVtIHtcbiAgcmV0dXJuIHtcbiAgICBtZWRpYTogYm90LnRyYW5zZm9ybWVycy5yZXZlcnNlLnVuZnVybGVkTWVkaWFJdGVtKGJvdCwgcGF5bG9hZC5tZWRpYSksXG4gICAgZGVzY3JpcHRpb246IHBheWxvYWQuZGVzY3JpcHRpb24sXG4gICAgc3BvaWxlcjogcGF5bG9hZC5zcG9pbGVyLFxuICB9XG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybUFjdGlvblJvdyhib3Q6IEJvdCwgcGF5bG9hZDogQ29tcG9uZW50KTogRGlzY29yZEFjdGlvblJvdyB7XG4gIHJldHVybiB7XG4gICAgdHlwZTogTWVzc2FnZUNvbXBvbmVudFR5cGVzLkFjdGlvblJvdyxcbiAgICBpZDogcGF5bG9hZC5pZCxcbiAgICAvLyBUaGUgYWN0aW9uUm93LmNvbXBvbmVudHMgdHlwZSBpcyBraW5kYSBhbm5veWluZywgc28gd2UgbmVlZCBhIGNhc3QgZm9yIHRoaXNcbiAgICBjb21wb25lbnRzOiAocGF5bG9hZC5jb21wb25lbnRzPy5tYXAoKGNvbXBvbmVudCkgPT4gYm90LnRyYW5zZm9ybWVycy5yZXZlcnNlLmNvbXBvbmVudChib3QsIGNvbXBvbmVudCkpID8/IFtdKSBhcyBEaXNjb3JkQWN0aW9uUm93Wydjb21wb25lbnRzJ10sXG4gIH1cbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtQ29udGFpbmVyQ29tcG9uZW50KGJvdDogQm90LCBwYXlsb2FkOiBDb21wb25lbnQpOiBEaXNjb3JkQ29udGFpbmVyQ29tcG9uZW50IHtcbiAgcmV0dXJuIHtcbiAgICB0eXBlOiBNZXNzYWdlQ29tcG9uZW50VHlwZXMuQ29udGFpbmVyLFxuICAgIGlkOiBwYXlsb2FkLmlkLFxuICAgIGFjY2VudF9jb2xvcjogcGF5bG9hZC5hY2NlbnRDb2xvcixcbiAgICBzcG9pbGVyOiBwYXlsb2FkLnNwb2lsZXIsXG4gICAgY29tcG9uZW50czogKHBheWxvYWQuY29tcG9uZW50cz8ubWFwKChjb21wb25lbnQpID0+IGJvdC50cmFuc2Zvcm1lcnMucmV2ZXJzZS5jb21wb25lbnQoYm90LCBjb21wb25lbnQpKSA/P1xuICAgICAgW10pIGFzIERpc2NvcmRDb250YWluZXJDb21wb25lbnRbJ2NvbXBvbmVudHMnXSxcbiAgfVxufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm1CdXR0b25Db21wb25lbnQoYm90OiBCb3QsIHBheWxvYWQ6IENvbXBvbmVudCk6IERpc2NvcmRCdXR0b25Db21wb25lbnQge1xuICAvLyBTaW5jZSBDb21wb25lbnQgaXMgYSBtZXJnZSBvZiBhbGwgY29tcG9uZW50cywgc29tZSBjYXN0cyBhcmUgbmVjZXNzYXJ5XG4gIHJldHVybiB7XG4gICAgdHlwZTogTWVzc2FnZUNvbXBvbmVudFR5cGVzLkJ1dHRvbixcbiAgICBpZDogcGF5bG9hZC5pZCxcbiAgICBzdHlsZTogcGF5bG9hZC5zdHlsZSBhcyBCdXR0b25TdHlsZXMsXG4gICAgY3VzdG9tX2lkOiBwYXlsb2FkLmN1c3RvbUlkLFxuICAgIGRpc2FibGVkOiBwYXlsb2FkLmRpc2FibGVkLFxuICAgIGVtb2ppOiBwYXlsb2FkLmVtb2ppXG4gICAgICA/IHtcbiAgICAgICAgICBpZDogcGF5bG9hZC5lbW9qaS5pZCA/IGJvdC50cmFuc2Zvcm1lcnMucmV2ZXJzZS5zbm93Zmxha2UocGF5bG9hZC5lbW9qaS5pZCkgOiB1bmRlZmluZWQsXG4gICAgICAgICAgbmFtZTogcGF5bG9hZC5lbW9qaS5uYW1lLFxuICAgICAgICAgIGFuaW1hdGVkOiBwYXlsb2FkLmVtb2ppLmFuaW1hdGVkLFxuICAgICAgICB9XG4gICAgICA6IHVuZGVmaW5lZCxcbiAgICBsYWJlbDogcGF5bG9hZC5sYWJlbCxcbiAgICB1cmw6IHBheWxvYWQudXJsLFxuICAgIHNrdV9pZDogcGF5bG9hZC5za3VJZCA/IGJvdC50cmFuc2Zvcm1lcnMucmV2ZXJzZS5zbm93Zmxha2UocGF5bG9hZC5za3VJZCkgOiB1bmRlZmluZWQsXG4gIH1cbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtSW5wdXRUZXh0Q29tcG9uZW50KF9ib3Q6IEJvdCwgcGF5bG9hZDogQ29tcG9uZW50KTogRGlzY29yZFRleHRJbnB1dENvbXBvbmVudCB7XG4gIC8vIFNpbmNlIENvbXBvbmVudCBpcyBhIG1lcmdlIG9mIGFsbCBjb21wb25lbnRzLCBzb21lIGNhc3RzIGFyZSBuZWNlc3NhcnlcbiAgcmV0dXJuIHtcbiAgICB0eXBlOiBNZXNzYWdlQ29tcG9uZW50VHlwZXMuVGV4dElucHV0LFxuICAgIGlkOiBwYXlsb2FkLmlkLFxuICAgIHN0eWxlOiBwYXlsb2FkLnN0eWxlIGFzIFRleHRTdHlsZXMsXG4gICAgY3VzdG9tX2lkOiBwYXlsb2FkLmN1c3RvbUlkISxcbiAgICBsYWJlbDogcGF5bG9hZC5sYWJlbCEsXG4gICAgdmFsdWU6IHBheWxvYWQudmFsdWUsXG4gICAgbWF4X2xlbmd0aDogcGF5bG9hZC5tYXhMZW5ndGgsXG4gICAgbWluX2xlbmd0aDogcGF5bG9hZC5taW5MZW5ndGgsXG4gICAgcGxhY2Vob2xkZXI6IHBheWxvYWQucGxhY2Vob2xkZXIsXG4gICAgcmVxdWlyZWQ6IHBheWxvYWQucmVxdWlyZWQsXG4gIH1cbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtU2VsZWN0TWVudUNvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogQ29tcG9uZW50KTogRGlzY29yZFNlbGVjdE1lbnVDb21wb25lbnQge1xuICByZXR1cm4ge1xuICAgIHR5cGU6IHBheWxvYWQudHlwZSBhcyBEaXNjb3JkU2VsZWN0TWVudUNvbXBvbmVudFsndHlwZSddLFxuICAgIGlkOiBwYXlsb2FkLmlkLFxuICAgIGN1c3RvbV9pZDogcGF5bG9hZC5jdXN0b21JZCEsXG4gICAgY2hhbm5lbF90eXBlczogcGF5bG9hZC5jaGFubmVsVHlwZXMsXG4gICAgZGVmYXVsdF92YWx1ZXM6IHBheWxvYWQuZGVmYXVsdFZhbHVlcz8ubWFwKChkZWZhdWx0VmFsdWUpID0+ICh7XG4gICAgICBpZDogYm90LnRyYW5zZm9ybWVycy5yZXZlcnNlLnNub3dmbGFrZShkZWZhdWx0VmFsdWUuaWQpLFxuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLnR5cGUsXG4gICAgfSkpLFxuICAgIGRpc2FibGVkOiBwYXlsb2FkLmRpc2FibGVkLFxuICAgIG1heF92YWx1ZXM6IHBheWxvYWQubWF4VmFsdWVzLFxuICAgIG1pbl92YWx1ZXM6IHBheWxvYWQubWluVmFsdWVzLFxuICAgIG9wdGlvbnM6IHBheWxvYWQub3B0aW9ucz8ubWFwKChvcHRpb24pID0+ICh7XG4gICAgICBsYWJlbDogb3B0aW9uLmxhYmVsLFxuICAgICAgdmFsdWU6IG9wdGlvbi52YWx1ZSxcbiAgICAgIGRlc2NyaXB0aW9uOiBvcHRpb24uZGVzY3JpcHRpb24sXG4gICAgICBlbW9qaTogb3B0aW9uLmVtb2ppXG4gICAgICAgID8ge1xuICAgICAgICAgICAgaWQ6IG9wdGlvbi5lbW9qaS5pZCA/IGJvdC50cmFuc2Zvcm1lcnMucmV2ZXJzZS5zbm93Zmxha2Uob3B0aW9uLmVtb2ppLmlkKSA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIG5hbWU6IG9wdGlvbi5lbW9qaS5uYW1lLFxuICAgICAgICAgICAgYW5pbWF0ZWQ6IG9wdGlvbi5lbW9qaS5hbmltYXRlZCxcbiAgICAgICAgICB9XG4gICAgICAgIDogdW5kZWZpbmVkLFxuICAgICAgZGVmYXVsdDogb3B0aW9uLmRlZmF1bHQsXG4gICAgfSkpLFxuICAgIHBsYWNlaG9sZGVyOiBwYXlsb2FkLnBsYWNlaG9sZGVyLFxuICB9XG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybVNlY3Rpb25Db21wb25lbnQoYm90OiBCb3QsIHBheWxvYWQ6IENvbXBvbmVudCk6IERpc2NvcmRTZWN0aW9uQ29tcG9uZW50IHtcbiAgcmV0dXJuIHtcbiAgICB0eXBlOiBNZXNzYWdlQ29tcG9uZW50VHlwZXMuU2VjdGlvbixcbiAgICBpZDogcGF5bG9hZC5pZCxcbiAgICBjb21wb25lbnRzOiBwYXlsb2FkLmNvbXBvbmVudHM/Lm1hcCgoY29tcG9uZW50KSA9PiBib3QudHJhbnNmb3JtZXJzLnJldmVyc2UuY29tcG9uZW50KGJvdCwgY29tcG9uZW50KSkgYXMgRGlzY29yZFRleHREaXNwbGF5Q29tcG9uZW50W10sXG4gICAgYWNjZXNzb3J5OiAocGF5bG9hZC5hY2Nlc3NvcnkgPyBib3QudHJhbnNmb3JtZXJzLnJldmVyc2UuY29tcG9uZW50KGJvdCwgcGF5bG9hZC5hY2Nlc3NvcnkpIDogdW5kZWZpbmVkKSBhcyBEaXNjb3JkU2VjdGlvbkNvbXBvbmVudFsnYWNjZXNzb3J5J10sXG4gIH1cbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtRmlsZUNvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogQ29tcG9uZW50KTogRGlzY29yZEZpbGVDb21wb25lbnQge1xuICByZXR1cm4ge1xuICAgIHR5cGU6IE1lc3NhZ2VDb21wb25lbnRUeXBlcy5GaWxlLFxuICAgIGlkOiBwYXlsb2FkLmlkLFxuICAgIGZpbGU6IGJvdC50cmFuc2Zvcm1lcnMucmV2ZXJzZS51bmZ1cmxlZE1lZGlhSXRlbShib3QsIHBheWxvYWQuZmlsZSEpLFxuICAgIHNwb2lsZXI6IHBheWxvYWQuc3BvaWxlcixcbiAgfVxufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm1NZWRpYUdhbGxlcnlDb21wb25lbnQoYm90OiBCb3QsIHBheWxvYWQ6IENvbXBvbmVudCk6IERpc2NvcmRNZWRpYUdhbGxlcnlDb21wb25lbnQge1xuICByZXR1cm4ge1xuICAgIHR5cGU6IE1lc3NhZ2VDb21wb25lbnRUeXBlcy5NZWRpYUdhbGxlcnksXG4gICAgaWQ6IHBheWxvYWQuaWQsXG4gICAgaXRlbXM6IHBheWxvYWQuaXRlbXM/Lm1hcCgoaXRlbSkgPT4gYm90LnRyYW5zZm9ybWVycy5yZXZlcnNlLm1lZGlhR2FsbGVyeUl0ZW0oYm90LCBpdGVtKSkgPz8gW10sXG4gIH1cbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtVGh1bWJuYWlsQ29tcG9uZW50KGJvdDogQm90LCBwYXlsb2FkOiBDb21wb25lbnQpOiBEaXNjb3JkVGh1bWJuYWlsQ29tcG9uZW50IHtcbiAgcmV0dXJuIHtcbiAgICB0eXBlOiBNZXNzYWdlQ29tcG9uZW50VHlwZXMuVGh1bWJuYWlsLFxuICAgIGlkOiBwYXlsb2FkLmlkLFxuICAgIG1lZGlhOiBib3QudHJhbnNmb3JtZXJzLnJldmVyc2UudW5mdXJsZWRNZWRpYUl0ZW0oYm90LCBwYXlsb2FkLm1lZGlhISksXG4gICAgZGVzY3JpcHRpb246IHBheWxvYWQuZGVzY3JpcHRpb24sXG4gICAgc3BvaWxlcjogcGF5bG9hZC5zcG9pbGVyLFxuICB9XG59XG4iXSwibmFtZXMiOlsiTWVzc2FnZUNvbXBvbmVudFR5cGVzIiwidHJhbnNmb3JtQ29tcG9uZW50VG9EaXNjb3JkQ29tcG9uZW50IiwiYm90IiwicGF5bG9hZCIsInR5cGUiLCJBY3Rpb25Sb3ciLCJ0cmFuc2Zvcm1BY3Rpb25Sb3ciLCJCdXR0b24iLCJ0cmFuc2Zvcm1CdXR0b25Db21wb25lbnQiLCJDb250YWluZXIiLCJ0cmFuc2Zvcm1Db250YWluZXJDb21wb25lbnQiLCJUZXh0SW5wdXQiLCJ0cmFuc2Zvcm1JbnB1dFRleHRDb21wb25lbnQiLCJTdHJpbmdTZWxlY3QiLCJDaGFubmVsU2VsZWN0IiwiUm9sZVNlbGVjdCIsIlVzZXJTZWxlY3QiLCJNZW50aW9uYWJsZVNlbGVjdCIsInRyYW5zZm9ybVNlbGVjdE1lbnVDb21wb25lbnQiLCJTZWN0aW9uIiwidHJhbnNmb3JtU2VjdGlvbkNvbXBvbmVudCIsIkZpbGUiLCJ0cmFuc2Zvcm1GaWxlQ29tcG9uZW50IiwiTWVkaWFHYWxsZXJ5IiwidHJhbnNmb3JtTWVkaWFHYWxsZXJ5Q29tcG9uZW50IiwiVGh1bWJuYWlsIiwidHJhbnNmb3JtVGh1bWJuYWlsQ29tcG9uZW50IiwiU2VwYXJhdG9yIiwiVGV4dERpc3BsYXkiLCJ0cmFuc2Zvcm1VbmZ1cmxlZE1lZGlhSXRlbVRvRGlzY29yZFVuZnVybGVkTWVkaWFJdGVtIiwiX2JvdCIsInVybCIsInByb3h5X3VybCIsInByb3h5VXJsIiwiaGVpZ2h0Iiwid2lkdGgiLCJjb250ZW50X3R5cGUiLCJjb250ZW50VHlwZSIsInRyYW5zZm9ybU1lZGlhR2FsbGVyeUl0ZW1Ub0Rpc2NvcmRNZWRpYUdhbGxlcnlJdGVtIiwibWVkaWEiLCJ0cmFuc2Zvcm1lcnMiLCJyZXZlcnNlIiwidW5mdXJsZWRNZWRpYUl0ZW0iLCJkZXNjcmlwdGlvbiIsInNwb2lsZXIiLCJpZCIsImNvbXBvbmVudHMiLCJtYXAiLCJjb21wb25lbnQiLCJhY2NlbnRfY29sb3IiLCJhY2NlbnRDb2xvciIsInN0eWxlIiwiY3VzdG9tX2lkIiwiY3VzdG9tSWQiLCJkaXNhYmxlZCIsImVtb2ppIiwic25vd2ZsYWtlIiwidW5kZWZpbmVkIiwibmFtZSIsImFuaW1hdGVkIiwibGFiZWwiLCJza3VfaWQiLCJza3VJZCIsInZhbHVlIiwibWF4X2xlbmd0aCIsIm1heExlbmd0aCIsIm1pbl9sZW5ndGgiLCJtaW5MZW5ndGgiLCJwbGFjZWhvbGRlciIsInJlcXVpcmVkIiwiY2hhbm5lbF90eXBlcyIsImNoYW5uZWxUeXBlcyIsImRlZmF1bHRfdmFsdWVzIiwiZGVmYXVsdFZhbHVlcyIsImRlZmF1bHRWYWx1ZSIsIm1heF92YWx1ZXMiLCJtYXhWYWx1ZXMiLCJtaW5fdmFsdWVzIiwibWluVmFsdWVzIiwib3B0aW9ucyIsIm9wdGlvbiIsImRlZmF1bHQiLCJhY2Nlc3NvcnkiLCJmaWxlIiwiaXRlbXMiLCJpdGVtIiwibWVkaWFHYWxsZXJ5SXRlbSJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBb0VBLHFCQUFxQixRQUF5QixvQkFBbUI7QUFvQnJJLE9BQU8sU0FBU0MscUNBQXFDQyxHQUFRLEVBQUVDLE9BQWtCO0lBQy9FLHVDQUF1QztJQUN2QyxPQUFRQSxRQUFRQyxJQUFJO1FBQ2xCLEtBQUtKLHNCQUFzQkssU0FBUztZQUNsQyxPQUFPQyxtQkFBbUJKLEtBQUtDO1FBQ2pDLEtBQUtILHNCQUFzQk8sTUFBTTtZQUMvQixPQUFPQyx5QkFBeUJOLEtBQUtDO1FBQ3ZDLEtBQUtILHNCQUFzQlMsU0FBUztZQUNsQyxPQUFPQyw0QkFBNEJSLEtBQUtDO1FBQzFDLEtBQUtILHNCQUFzQlcsU0FBUztZQUNsQyxPQUFPQyw0QkFBNEJWLEtBQUtDO1FBQzFDLEtBQUtILHNCQUFzQmEsWUFBWTtRQUN2QyxLQUFLYixzQkFBc0JjLGFBQWE7UUFDeEMsS0FBS2Qsc0JBQXNCZSxVQUFVO1FBQ3JDLEtBQUtmLHNCQUFzQmdCLFVBQVU7UUFDckMsS0FBS2hCLHNCQUFzQmlCLGlCQUFpQjtZQUMxQyxPQUFPQyw2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
@@ -3,7 +3,8 @@ export function transformThreadMember(bot, payload) {
3
3
  id: payload.id ? bot.transformers.snowflake(payload.id) : undefined,
4
4
  userId: payload.user_id ? bot.transformers.snowflake(payload.user_id) : undefined,
5
5
  joinTimestamp: Date.parse(payload.join_timestamp),
6
- flags: payload.flags
6
+ flags: payload.flags,
7
+ member: payload.member ? bot.transformers.member(bot, payload.member, undefined, bot.transformers.snowflake(payload.user_id)) : undefined
7
8
  };
8
9
  return bot.transformers.customizers.threadMember(bot, payload, threadMember);
9
10
  }
@@ -14,4 +15,4 @@ export function transformThreadMemberGuildCreate(bot, payload) {
14
15
  return bot.transformers.customizers.threadMemberGuildCreate(bot, payload, threadMember);
15
16
  }
16
17
 
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvdGhyZWFkTWVtYmVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRGlzY29yZFRocmVhZE1lbWJlciwgRGlzY29yZFRocmVhZE1lbWJlckd1aWxkQ3JlYXRlIH0gZnJvbSAnQGRpc2NvcmRlbm8vdHlwZXMnXG5pbXBvcnQgdHlwZSB7IEJvdCwgVGhyZWFkTWVtYmVyLCBUaHJlYWRNZW1iZXJHdWlsZENyZWF0ZSB9IGZyb20gJy4uL2luZGV4LmpzJ1xuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtVGhyZWFkTWVtYmVyKGJvdDogQm90LCBwYXlsb2FkOiBEaXNjb3JkVGhyZWFkTWVtYmVyKTogVGhyZWFkTWVtYmVyIHtcbiAgY29uc3QgdGhyZWFkTWVtYmVyID0ge1xuICAgIGlkOiBwYXlsb2FkLmlkID8gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5pZCkgOiB1bmRlZmluZWQsXG4gICAgdXNlcklkOiBwYXlsb2FkLnVzZXJfaWQgPyBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLnVzZXJfaWQpIDogdW5kZWZpbmVkLFxuICAgIGpvaW5UaW1lc3RhbXA6IERhdGUucGFyc2UocGF5bG9hZC5qb2luX3RpbWVzdGFtcCksXG4gICAgZmxhZ3M6IHBheWxvYWQuZmxhZ3MsXG4gIH0gYXMgVGhyZWFkTWVtYmVyXG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMudGhyZWFkTWVtYmVyKGJvdCwgcGF5bG9hZCwgdGhyZWFkTWVtYmVyKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtVGhyZWFkTWVtYmVyR3VpbGRDcmVhdGUoYm90OiBCb3QsIHBheWxvYWQ6IERpc2NvcmRUaHJlYWRNZW1iZXJHdWlsZENyZWF0ZSk6IFRocmVhZE1lbWJlckd1aWxkQ3JlYXRlIHtcbiAgY29uc3QgdGhyZWFkTWVtYmVyID0ge1xuICAgIGpvaW5UaW1lc3RhbXA6IERhdGUucGFyc2UocGF5bG9hZC5qb2luX3RpbWVzdGFtcCksXG4gIH0gYXMgVGhyZWFkTWVtYmVyR3VpbGRDcmVhdGVcblxuICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jdXN0b21pemVycy50aHJlYWRNZW1iZXJHdWlsZENyZWF0ZShib3QsIHBheWxvYWQsIHRocmVhZE1lbWJlcilcbn1cbiJdLCJuYW1lcyI6WyJ0cmFuc2Zvcm1UaHJlYWRNZW1iZXIiLCJib3QiLCJwYXlsb2FkIiwidGhyZWFkTWVtYmVyIiwiaWQiLCJ0cmFuc2Zvcm1lcnMiLCJzbm93Zmxha2UiLCJ1bmRlZmluZWQiLCJ1c2VySWQiLCJ1c2VyX2lkIiwiam9pblRpbWVzdGFtcCIsIkRhdGUiLCJwYXJzZSIsImpvaW5fdGltZXN0YW1wIiwiZmxhZ3MiLCJjdXN0b21pemVycyIsInRyYW5zZm9ybVRocmVhZE1lbWJlckd1aWxkQ3JlYXRlIiwidGhyZWFkTWVtYmVyR3VpbGRDcmVhdGUiXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sU0FBU0Esc0JBQXNCQyxHQUFRLEVBQUVDLE9BQTRCO0lBQzFFLE1BQU1DLGVBQWU7UUFDbkJDLElBQUlGLFFBQVFFLEVBQUUsR0FBR0gsSUFBSUksWUFBWSxDQUFDQyxTQUFTLENBQUNKLFFBQVFFLEVBQUUsSUFBSUc7UUFDMURDLFFBQVFOLFFBQVFPLE9BQU8sR0FBR1IsSUFBSUksWUFBWSxDQUFDQyxTQUFTLENBQUNKLFFBQVFPLE9BQU8sSUFBSUY7UUFDeEVHLGVBQWVDLEtBQUtDLEtBQUssQ0FBQ1YsUUFBUVcsY0FBYztRQUNoREMsT0FBT1osUUFBUVksS0FBSztJQUN0QjtJQUVBLE9BQU9iLElBQUlJLFlBQVksQ0FBQ1UsV0FBVyxDQUFDWixZQUFZLENBQUNGLEtBQUtDLFNBQVNDO0FBQ2pFO0FBRUEsT0FBTyxTQUFTYSxpQ0FBaUNmLEdBQVEsRUFBRUMsT0FBdUM7SUFDaEcsTUFBTUMsZUFBZTtRQUNuQk8sZUFBZUMsS0FBS0MsS0FBSyxDQUFDVixRQUFRVyxjQUFjO0lBQ2xEO0lBRUEsT0FBT1osSUFBSUksWUFBWSxDQUFDVSxXQUFXLENBQUNFLHVCQUF1QixDQUFDaEIsS0FBS0MsU0FBU0M7QUFDNUUifQ==
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvdGhyZWFkTWVtYmVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRGlzY29yZFRocmVhZE1lbWJlciwgRGlzY29yZFRocmVhZE1lbWJlckd1aWxkQ3JlYXRlIH0gZnJvbSAnQGRpc2NvcmRlbm8vdHlwZXMnXG5pbXBvcnQgdHlwZSB7IEJvdCwgVGhyZWFkTWVtYmVyLCBUaHJlYWRNZW1iZXJHdWlsZENyZWF0ZSB9IGZyb20gJy4uL2luZGV4LmpzJ1xuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtVGhyZWFkTWVtYmVyKGJvdDogQm90LCBwYXlsb2FkOiBEaXNjb3JkVGhyZWFkTWVtYmVyKTogVGhyZWFkTWVtYmVyIHtcbiAgY29uc3QgdGhyZWFkTWVtYmVyID0ge1xuICAgIGlkOiBwYXlsb2FkLmlkID8gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5pZCkgOiB1bmRlZmluZWQsXG4gICAgdXNlcklkOiBwYXlsb2FkLnVzZXJfaWQgPyBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLnVzZXJfaWQpIDogdW5kZWZpbmVkLFxuICAgIGpvaW5UaW1lc3RhbXA6IERhdGUucGFyc2UocGF5bG9hZC5qb2luX3RpbWVzdGFtcCksXG4gICAgZmxhZ3M6IHBheWxvYWQuZmxhZ3MsXG4gICAgbWVtYmVyOiBwYXlsb2FkLm1lbWJlciA/IGJvdC50cmFuc2Zvcm1lcnMubWVtYmVyKGJvdCwgcGF5bG9hZC5tZW1iZXIsIHVuZGVmaW5lZCwgYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC51c2VyX2lkKSkgOiB1bmRlZmluZWQsXG4gIH0gYXMgVGhyZWFkTWVtYmVyXG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMudGhyZWFkTWVtYmVyKGJvdCwgcGF5bG9hZCwgdGhyZWFkTWVtYmVyKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtVGhyZWFkTWVtYmVyR3VpbGRDcmVhdGUoYm90OiBCb3QsIHBheWxvYWQ6IERpc2NvcmRUaHJlYWRNZW1iZXJHdWlsZENyZWF0ZSk6IFRocmVhZE1lbWJlckd1aWxkQ3JlYXRlIHtcbiAgY29uc3QgdGhyZWFkTWVtYmVyID0ge1xuICAgIGpvaW5UaW1lc3RhbXA6IERhdGUucGFyc2UocGF5bG9hZC5qb2luX3RpbWVzdGFtcCksXG4gIH0gYXMgVGhyZWFkTWVtYmVyR3VpbGRDcmVhdGVcblxuICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jdXN0b21pemVycy50aHJlYWRNZW1iZXJHdWlsZENyZWF0ZShib3QsIHBheWxvYWQsIHRocmVhZE1lbWJlcilcbn1cbiJdLCJuYW1lcyI6WyJ0cmFuc2Zvcm1UaHJlYWRNZW1iZXIiLCJib3QiLCJwYXlsb2FkIiwidGhyZWFkTWVtYmVyIiwiaWQiLCJ0cmFuc2Zvcm1lcnMiLCJzbm93Zmxha2UiLCJ1bmRlZmluZWQiLCJ1c2VySWQiLCJ1c2VyX2lkIiwiam9pblRpbWVzdGFtcCIsIkRhdGUiLCJwYXJzZSIsImpvaW5fdGltZXN0YW1wIiwiZmxhZ3MiLCJtZW1iZXIiLCJjdXN0b21pemVycyIsInRyYW5zZm9ybVRocmVhZE1lbWJlckd1aWxkQ3JlYXRlIiwidGhyZWFkTWVtYmVyR3VpbGRDcmVhdGUiXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sU0FBU0Esc0JBQXNCQyxHQUFRLEVBQUVDLE9BQTRCO0lBQzFFLE1BQU1DLGVBQWU7UUFDbkJDLElBQUlGLFFBQVFFLEVBQUUsR0FBR0gsSUFBSUksWUFBWSxDQUFDQyxTQUFTLENBQUNKLFFBQVFFLEVBQUUsSUFBSUc7UUFDMURDLFFBQVFOLFFBQVFPLE9BQU8sR0FBR1IsSUFBSUksWUFBWSxDQUFDQyxTQUFTLENBQUNKLFFBQVFPLE9BQU8sSUFBSUY7UUFDeEVHLGVBQWVDLEtBQUtDLEtBQUssQ0FBQ1YsUUFBUVcsY0FBYztRQUNoREMsT0FBT1osUUFBUVksS0FBSztRQUNwQkMsUUFBUWIsUUFBUWEsTUFBTSxHQUFHZCxJQUFJSSxZQUFZLENBQUNVLE1BQU0sQ0FBQ2QsS0FBS0MsUUFBUWEsTUFBTSxFQUFFUixXQUFXTixJQUFJSSxZQUFZLENBQUNDLFNBQVMsQ0FBQ0osUUFBUU8sT0FBTyxLQUFLRjtJQUNsSTtJQUVBLE9BQU9OLElBQUlJLFlBQVksQ0FBQ1csV0FBVyxDQUFDYixZQUFZLENBQUNGLEtBQUtDLFNBQVNDO0FBQ2pFO0FBRUEsT0FBTyxTQUFTYyxpQ0FBaUNoQixHQUFRLEVBQUVDLE9BQXVDO0lBQ2hHLE1BQU1DLGVBQWU7UUFDbkJPLGVBQWVDLEtBQUtDLEtBQUssQ0FBQ1YsUUFBUVcsY0FBYztJQUNsRDtJQUVBLE9BQU9aLElBQUlJLFlBQVksQ0FBQ1csV0FBVyxDQUFDRSx1QkFBdUIsQ0FBQ2pCLEtBQUtDLFNBQVNDO0FBQzVFIn0=