@discordeno/bot 21.0.1-next.f6ea699 → 22.0.1-next.269a5bf
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bot.d.ts +82 -0
- package/dist/bot.d.ts.map +1 -0
- package/dist/bot.js +72 -0
- package/dist/commandOptionsParser.d.ts.map +1 -0
- package/dist/commandOptionsParser.js +43 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +6 -0
- package/dist/desiredProperties.d.ts +213 -0
- package/dist/desiredProperties.d.ts.map +1 -0
- package/dist/desiredProperties.js +631 -0
- package/dist/events.d.ts +232 -0
- package/dist/events.d.ts.map +1 -0
- package/dist/events.js +3 -0
- package/dist/handlers/channels/CHANNEL_CREATE.d.ts.map +1 -0
- package/dist/handlers/channels/CHANNEL_CREATE.js +10 -0
- package/dist/handlers/channels/CHANNEL_DELETE.d.ts.map +1 -0
- package/dist/handlers/channels/CHANNEL_DELETE.js +9 -0
- package/dist/handlers/channels/CHANNEL_PINS_UPDATE.d.ts.map +1 -0
- package/dist/handlers/channels/CHANNEL_PINS_UPDATE.js +11 -0
- package/dist/handlers/channels/CHANNEL_UPDATE.d.ts.map +1 -0
- package/dist/handlers/channels/CHANNEL_UPDATE.js +8 -0
- package/dist/handlers/channels/STAGE_INSTANCE_CREATE.d.ts.map +1 -0
- package/dist/handlers/channels/STAGE_INSTANCE_CREATE.js +12 -0
- package/dist/handlers/channels/STAGE_INSTANCE_DELETE.d.ts.map +1 -0
- package/dist/handlers/channels/STAGE_INSTANCE_DELETE.js +12 -0
- package/dist/handlers/channels/STAGE_INSTANCE_UPDATE.d.ts.map +1 -0
- package/dist/handlers/channels/STAGE_INSTANCE_UPDATE.js +12 -0
- package/dist/handlers/channels/THREAD_CREATE.d.ts.map +1 -0
- package/dist/handlers/channels/THREAD_CREATE.js +7 -0
- package/dist/handlers/channels/THREAD_DELETE.d.ts.map +1 -0
- package/dist/handlers/channels/THREAD_DELETE.js +7 -0
- package/dist/handlers/channels/THREAD_LIST_SYNC.d.ts.map +1 -0
- package/dist/handlers/channels/THREAD_LIST_SYNC.js +20 -0
- package/dist/handlers/channels/THREAD_MEMBERS_UPDATE.d.ts.map +1 -0
- package/dist/handlers/channels/THREAD_MEMBERS_UPDATE.js +14 -0
- package/dist/handlers/channels/THREAD_MEMBER_UPDATE.d.ts.map +1 -0
- package/dist/handlers/channels/THREAD_MEMBER_UPDATE.js +12 -0
- package/dist/handlers/channels/THREAD_UPDATE.d.ts.map +1 -0
- package/dist/handlers/channels/THREAD_UPDATE.js +7 -0
- package/dist/handlers/channels/index.d.ts.map +1 -0
- package/dist/handlers/channels/index.js +15 -0
- package/dist/handlers/emojis/GUILD_EMOJIS_UPDATE.d.ts.map +1 -0
- package/dist/handlers/emojis/GUILD_EMOJIS_UPDATE.js +14 -0
- package/dist/handlers/emojis/index.d.ts.map +1 -0
- package/dist/handlers/emojis/index.js +3 -0
- package/dist/handlers/entitlements/ENTITLEMENT_CREATE.d.ts.map +1 -0
- package/dist/handlers/entitlements/ENTITLEMENT_CREATE.js +7 -0
- package/dist/handlers/entitlements/ENTITLEMENT_DELETE.d.ts.map +1 -0
- package/dist/handlers/entitlements/ENTITLEMENT_DELETE.js +7 -0
- package/dist/handlers/entitlements/ENTITLEMENT_UPDATE.d.ts.map +1 -0
- package/dist/handlers/entitlements/ENTITLEMENT_UPDATE.js +7 -0
- package/dist/handlers/entitlements/index.d.ts.map +1 -0
- package/dist/handlers/entitlements/index.js +5 -0
- package/dist/handlers/guilds/GUILD_AUDIT_LOG_ENTRY_CREATE.d.ts.map +1 -0
- package/dist/handlers/guilds/GUILD_AUDIT_LOG_ENTRY_CREATE.js +8 -0
- package/dist/handlers/guilds/GUILD_BAN_ADD.d.ts.map +1 -0
- package/dist/handlers/guilds/GUILD_BAN_ADD.js +7 -0
- package/dist/handlers/guilds/GUILD_BAN_REMOVE.d.ts.map +1 -0
- package/dist/handlers/guilds/GUILD_BAN_REMOVE.js +7 -0
- package/dist/handlers/guilds/GUILD_CREATE.d.ts.map +1 -0
- package/dist/handlers/guilds/GUILD_CREATE.js +9 -0
- package/dist/handlers/guilds/GUILD_DELETE.d.ts.map +1 -0
- package/dist/handlers/guilds/GUILD_DELETE.js +10 -0
- package/dist/handlers/guilds/GUILD_INTEGRATIONS_UPDATE.d.ts.map +1 -0
- package/dist/handlers/guilds/GUILD_INTEGRATIONS_UPDATE.js +9 -0
- package/dist/handlers/guilds/GUILD_STICKERS_UPDATE.d.ts.map +1 -0
- package/dist/handlers/guilds/GUILD_STICKERS_UPDATE.js +13 -0
- package/dist/handlers/guilds/GUILD_UPDATE.d.ts.map +1 -0
- package/dist/handlers/guilds/GUILD_UPDATE.js +9 -0
- package/dist/handlers/guilds/automod/AUTO_MODERATION_ACTION_EXECUTION.d.ts.map +1 -0
- package/dist/handlers/guilds/automod/AUTO_MODERATION_ACTION_EXECUTION.js +7 -0
- package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_CREATE.d.ts.map +1 -0
- package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_CREATE.js +7 -0
- package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_DELETE.d.ts.map +1 -0
- package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_DELETE.js +7 -0
- package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_UPDATE.d.ts.map +1 -0
- package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_UPDATE.js +7 -0
- package/dist/handlers/guilds/automod/index.d.ts.map +1 -0
- package/dist/handlers/guilds/automod/index.js +6 -0
- package/dist/handlers/guilds/index.d.ts.map +1 -0
- package/dist/handlers/guilds/index.js +12 -0
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_CREATE.d.ts.map +1 -0
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_CREATE.js +7 -0
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_DELETE.d.ts.map +1 -0
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_DELETE.js +7 -0
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_UPDATE.d.ts.map +1 -0
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_UPDATE.js +7 -0
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_ADD.d.ts.map +1 -0
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_ADD.js +11 -0
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_REMOVE.d.ts.map +1 -0
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_REMOVE.js +11 -0
- package/dist/handlers/guilds/scheduledEvents/index.d.ts.map +1 -0
- package/dist/handlers/guilds/scheduledEvents/index.js +7 -0
- package/dist/handlers/index.d.ts.map +1 -0
- package/dist/handlers/index.js +18 -0
- package/dist/handlers/integrations/INTEGRATION_CREATE.d.ts.map +1 -0
- package/dist/handlers/integrations/INTEGRATION_CREATE.js +6 -0
- package/dist/handlers/integrations/INTEGRATION_DELETE.d.ts.map +1 -0
- package/dist/handlers/integrations/INTEGRATION_DELETE.js +11 -0
- package/dist/handlers/integrations/INTEGRATION_UPDATE.d.ts.map +1 -0
- package/dist/handlers/integrations/INTEGRATION_UPDATE.js +6 -0
- package/dist/handlers/integrations/index.d.ts.map +1 -0
- package/dist/handlers/integrations/index.js +5 -0
- package/dist/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.d.ts.map +1 -0
- package/dist/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.js +7 -0
- package/dist/handlers/interactions/INTERACTION_CREATE.d.ts.map +1 -0
- package/dist/handlers/interactions/INTERACTION_CREATE.js +9 -0
- package/dist/handlers/interactions/index.d.ts.map +1 -0
- package/dist/handlers/interactions/index.js +4 -0
- package/dist/handlers/invites/INVITE_CREATE.d.ts.map +1 -0
- package/dist/handlers/invites/INVITE_CREATE.js +9 -0
- package/dist/handlers/invites/INVITE_DELETE.d.ts.map +1 -0
- package/dist/handlers/invites/INVITE_DELETE.js +11 -0
- package/dist/handlers/invites/index.d.ts.map +1 -0
- package/dist/handlers/invites/index.js +4 -0
- package/dist/handlers/members/GUILD_MEMBERS_CHUNK.d.ts.map +1 -0
- package/dist/handlers/members/GUILD_MEMBERS_CHUNK.js +20 -0
- package/dist/handlers/members/GUILD_MEMBER_ADD.d.ts +4 -0
- package/dist/handlers/members/GUILD_MEMBER_ADD.d.ts.map +1 -0
- package/dist/handlers/members/GUILD_MEMBER_ADD.js +13 -0
- package/dist/handlers/members/GUILD_MEMBER_REMOVE.d.ts.map +1 -0
- package/dist/handlers/members/GUILD_MEMBER_REMOVE.js +9 -0
- package/dist/handlers/members/GUILD_MEMBER_UPDATE.d.ts.map +1 -0
- package/dist/handlers/members/GUILD_MEMBER_UPDATE.js +12 -0
- package/dist/handlers/members/index.d.ts.map +1 -0
- package/dist/handlers/members/index.js +6 -0
- package/dist/handlers/messages/MESSAGE_CREATE.d.ts.map +1 -0
- package/dist/handlers/messages/MESSAGE_CREATE.js +9 -0
- package/dist/handlers/messages/MESSAGE_DELETE.d.ts.map +1 -0
- package/dist/handlers/messages/MESSAGE_DELETE.js +11 -0
- package/dist/handlers/messages/MESSAGE_DELETE_BULK.d.ts.map +1 -0
- package/dist/handlers/messages/MESSAGE_DELETE_BULK.js +13 -0
- package/dist/handlers/messages/MESSAGE_REACTION_ADD.d.ts.map +1 -0
- package/dist/handlers/messages/MESSAGE_REACTION_ADD.js +24 -0
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE.d.ts.map +1 -0
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE.js +15 -0
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.d.ts.map +1 -0
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.js +11 -0
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.d.ts.map +1 -0
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.js +13 -0
- package/dist/handlers/messages/MESSAGE_UPDATE.d.ts.map +1 -0
- package/dist/handlers/messages/MESSAGE_UPDATE.js +10 -0
- package/dist/handlers/messages/index.d.ts.map +1 -0
- package/dist/handlers/messages/index.js +10 -0
- package/dist/handlers/misc/PRESENCE_UPDATE.d.ts.map +1 -0
- package/dist/handlers/misc/PRESENCE_UPDATE.js +6 -0
- package/dist/handlers/misc/READY.d.ts.map +1 -0
- package/dist/handlers/misc/READY.js +18 -0
- package/dist/handlers/misc/TYPING_START.d.ts.map +1 -0
- package/dist/handlers/misc/TYPING_START.js +18 -0
- package/dist/handlers/misc/USER_UPDATE.d.ts.map +1 -0
- package/dist/handlers/misc/USER_UPDATE.js +7 -0
- package/dist/handlers/misc/index.d.ts.map +1 -0
- package/dist/handlers/misc/index.js +6 -0
- package/dist/handlers/poll/MESSAGE_POLL_VOTE_ADD.d.ts.map +1 -0
- package/dist/handlers/poll/MESSAGE_POLL_VOTE_ADD.js +13 -0
- package/dist/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.d.ts.map +1 -0
- package/dist/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.js +13 -0
- package/dist/handlers/poll/index.d.ts.map +1 -0
- package/dist/handlers/poll/index.js +4 -0
- package/dist/handlers/roles/GUILD_ROLE_CREATE.d.ts.map +1 -0
- package/dist/handlers/roles/GUILD_ROLE_CREATE.js +9 -0
- package/dist/handlers/roles/GUILD_ROLE_DELETE.d.ts.map +1 -0
- package/dist/handlers/roles/GUILD_ROLE_DELETE.js +10 -0
- package/dist/handlers/roles/GUILD_ROLE_UPDATE.d.ts.map +1 -0
- package/dist/handlers/roles/GUILD_ROLE_UPDATE.js +9 -0
- package/dist/handlers/roles/index.d.ts.map +1 -0
- package/dist/handlers/roles/index.js +5 -0
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.d.ts.map +1 -0
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.js +10 -0
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.d.ts.map +1 -0
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.js +7 -0
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.d.ts.map +1 -0
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.js +10 -0
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.d.ts.map +1 -0
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.js +7 -0
- package/dist/handlers/soundboard/SOUNDBOARD_SOUNDS.d.ts.map +1 -0
- package/dist/handlers/soundboard/SOUNDBOARD_SOUNDS.js +10 -0
- package/dist/handlers/soundboard/index.d.ts.map +1 -0
- package/dist/handlers/soundboard/index.js +7 -0
- package/dist/handlers/subscriptions/SUBSCRIPTION_CREATE.d.ts.map +1 -0
- package/dist/handlers/subscriptions/SUBSCRIPTION_CREATE.js +7 -0
- package/dist/handlers/subscriptions/SUBSCRIPTION_DELETE.d.ts.map +1 -0
- package/dist/handlers/subscriptions/SUBSCRIPTION_DELETE.js +7 -0
- package/dist/handlers/subscriptions/SUBSCRIPTION_UPDATE.d.ts.map +1 -0
- package/dist/handlers/subscriptions/SUBSCRIPTION_UPDATE.js +7 -0
- package/dist/handlers/subscriptions/index.d.ts.map +1 -0
- package/dist/handlers/subscriptions/index.js +5 -0
- package/dist/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.d.ts.map +1 -0
- package/dist/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.js +16 -0
- package/dist/handlers/voice/VOICE_SERVER_UPDATE.d.ts.map +1 -0
- package/dist/handlers/voice/VOICE_SERVER_UPDATE.js +11 -0
- package/dist/handlers/voice/VOICE_STATE_UPDATE.d.ts.map +1 -0
- package/dist/handlers/voice/VOICE_STATE_UPDATE.js +12 -0
- package/dist/handlers/voice/index.d.ts.map +1 -0
- package/dist/handlers/voice/index.js +5 -0
- package/dist/handlers/webhooks/WEBHOOKS_UPDATE.d.ts.map +1 -0
- package/dist/handlers/webhooks/WEBHOOKS_UPDATE.js +10 -0
- package/dist/handlers/webhooks/index.d.ts.map +1 -0
- package/dist/handlers/webhooks/index.js +3 -0
- package/dist/handlers.d.ts.map +1 -0
- package/dist/handlers.js +81 -0
- package/dist/helpers.d.ts +244 -0
- package/dist/helpers.d.ts.map +1 -0
- package/dist/helpers.js +715 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +16 -0
- package/dist/transformers/activity.d.ts +5 -0
- package/dist/transformers/activity.d.ts.map +1 -0
- package/dist/transformers/activity.js +53 -0
- package/dist/transformers/application.d.ts +5 -0
- package/dist/transformers/application.d.ts.map +1 -0
- package/dist/transformers/application.js +59 -0
- package/dist/transformers/applicationCommand.d.ts.map +1 -0
- package/dist/transformers/applicationCommand.js +19 -0
- package/dist/transformers/applicationCommandOption.d.ts.map +1 -0
- package/dist/transformers/applicationCommandOption.js +21 -0
- package/dist/transformers/applicationCommandOptionChoice.d.ts.map +1 -0
- package/dist/transformers/applicationCommandOptionChoice.js +10 -0
- package/dist/transformers/applicationCommandPermission.d.ts.map +1 -0
- package/dist/transformers/applicationCommandPermission.js +15 -0
- package/dist/transformers/attachment.d.ts +4 -0
- package/dist/transformers/attachment.d.ts.map +1 -0
- package/dist/transformers/attachment.js +21 -0
- package/dist/transformers/auditLogEntry.d.ts.map +1 -0
- package/dist/transformers/auditLogEntry.js +27 -0
- package/dist/transformers/automodActionExecution.d.ts.map +1 -0
- package/dist/transformers/automodActionExecution.js +25 -0
- package/dist/transformers/automodRule.d.ts.map +1 -0
- package/dist/transformers/automodRule.js +31 -0
- package/dist/transformers/avatarDecorationData.d.ts.map +1 -0
- package/dist/transformers/avatarDecorationData.js +10 -0
- package/dist/transformers/channel.d.ts +10 -0
- package/dist/transformers/channel.d.ts.map +1 -0
- package/dist/transformers/channel.js +126 -0
- package/dist/transformers/component.d.ts.map +1 -0
- package/dist/transformers/component.js +196 -0
- package/dist/transformers/embed.d.ts.map +1 -0
- package/dist/transformers/embed.js +44 -0
- package/dist/transformers/emoji.d.ts +6 -0
- package/dist/transformers/emoji.d.ts.map +1 -0
- package/dist/transformers/emoji.js +36 -0
- package/dist/transformers/entitlement.d.ts +4 -0
- package/dist/transformers/entitlement.d.ts.map +1 -0
- package/dist/transformers/entitlement.js +17 -0
- package/dist/transformers/gatewayBot.d.ts.map +1 -0
- package/dist/transformers/gatewayBot.js +15 -0
- package/dist/transformers/guild.d.ts +7 -0
- package/dist/transformers/guild.d.ts.map +1 -0
- package/dist/transformers/guild.js +147 -0
- package/dist/transformers/incidentsData.d.ts +4 -0
- package/dist/transformers/incidentsData.d.ts.map +1 -0
- package/dist/transformers/incidentsData.js +11 -0
- package/dist/transformers/index.d.ts.map +1 -0
- package/dist/transformers/index.js +52 -0
- package/dist/transformers/integration.d.ts.map +1 -0
- package/dist/transformers/integration.js +34 -0
- package/dist/transformers/interaction.d.ts +19 -0
- package/dist/transformers/interaction.d.ts.map +1 -0
- package/dist/transformers/interaction.js +258 -0
- package/dist/transformers/invite.d.ts +6 -0
- package/dist/transformers/invite.d.ts.map +1 -0
- package/dist/transformers/invite.js +41 -0
- package/dist/transformers/lobby.d.ts +5 -0
- package/dist/transformers/lobby.d.ts.map +1 -0
- package/dist/transformers/lobby.js +21 -0
- package/dist/transformers/member.d.ts +9 -0
- package/dist/transformers/member.d.ts.map +1 -0
- package/dist/transformers/member.js +54 -0
- package/dist/transformers/message.d.ts +15 -0
- package/dist/transformers/message.d.ts.map +1 -0
- package/dist/transformers/message.js +287 -0
- package/dist/transformers/onboarding.d.ts +6 -0
- package/dist/transformers/onboarding.d.ts.map +1 -0
- package/dist/transformers/onboarding.js +35 -0
- package/dist/transformers/poll.d.ts +5 -0
- package/dist/transformers/poll.d.ts.map +1 -0
- package/dist/transformers/poll.js +33 -0
- package/dist/transformers/presence.d.ts +4 -0
- package/dist/transformers/presence.d.ts.map +1 -0
- package/dist/transformers/presence.js +14 -0
- package/dist/transformers/reverse/activity.d.ts.map +1 -0
- package/dist/transformers/reverse/activity.js +43 -0
- package/dist/transformers/reverse/allowedMentions.d.ts.map +1 -0
- package/dist/transformers/reverse/allowedMentions.js +10 -0
- package/dist/transformers/reverse/application.d.ts +3 -0
- package/dist/transformers/reverse/application.d.ts.map +1 -0
- package/dist/transformers/reverse/application.js +28 -0
- package/dist/transformers/reverse/applicationCommand.d.ts.map +1 -0
- package/dist/transformers/reverse/applicationCommand.js +18 -0
- package/dist/transformers/reverse/applicationCommandOption.d.ts.map +1 -0
- package/dist/transformers/reverse/applicationCommandOption.js +20 -0
- package/dist/transformers/reverse/applicationCommandOptionChoice.d.ts.map +1 -0
- package/dist/transformers/reverse/applicationCommandOptionChoice.js +9 -0
- package/dist/transformers/reverse/applicationCommandPermission.d.ts.map +1 -0
- package/dist/transformers/reverse/applicationCommandPermission.js +14 -0
- package/dist/transformers/reverse/attachment.d.ts +3 -0
- package/dist/transformers/reverse/attachment.d.ts.map +1 -0
- package/dist/transformers/reverse/attachment.js +20 -0
- package/dist/transformers/reverse/auditLogEntry.d.ts.map +1 -0
- package/dist/transformers/reverse/auditLogEntry.js +27 -0
- package/dist/transformers/reverse/component.d.ts.map +1 -0
- package/dist/transformers/reverse/component.js +162 -0
- package/dist/transformers/reverse/embed.d.ts.map +1 -0
- package/dist/transformers/reverse/embed.js +43 -0
- package/dist/transformers/reverse/emoji.d.ts +4 -0
- package/dist/transformers/reverse/emoji.d.ts.map +1 -0
- package/dist/transformers/reverse/emoji.js +14 -0
- package/dist/transformers/reverse/gatewayBot.d.ts.map +1 -0
- package/dist/transformers/reverse/gatewayBot.js +14 -0
- package/dist/transformers/reverse/index.d.ts +18 -0
- package/dist/transformers/reverse/index.d.ts.map +1 -0
- package/dist/transformers/reverse/index.js +19 -0
- package/dist/transformers/reverse/member.d.ts +5 -0
- package/dist/transformers/reverse/member.d.ts.map +1 -0
- package/dist/transformers/reverse/member.js +43 -0
- package/dist/transformers/reverse/presence.d.ts +10 -0
- package/dist/transformers/reverse/presence.d.ts.map +1 -0
- package/dist/transformers/reverse/presence.js +23 -0
- package/dist/transformers/reverse/team.d.ts +4 -0
- package/dist/transformers/reverse/team.d.ts.map +1 -0
- package/dist/transformers/reverse/team.js +18 -0
- package/dist/transformers/reverse/widgetSettings.d.ts.map +1 -0
- package/dist/transformers/reverse/widgetSettings.js +8 -0
- package/dist/transformers/role.d.ts +8 -0
- package/dist/transformers/role.d.ts.map +1 -0
- package/dist/transformers/role.js +69 -0
- package/dist/transformers/scheduledEvent.d.ts +5 -0
- package/dist/transformers/scheduledEvent.d.ts.map +1 -0
- package/dist/transformers/scheduledEvent.js +40 -0
- package/dist/transformers/sku.d.ts +4 -0
- package/dist/transformers/sku.d.ts.map +1 -0
- package/dist/transformers/sku.js +13 -0
- package/dist/transformers/soundboardSound.d.ts +4 -0
- package/dist/transformers/soundboardSound.d.ts.map +1 -0
- package/dist/transformers/soundboardSound.js +15 -0
- package/dist/transformers/stageInstance.d.ts +4 -0
- package/dist/transformers/stageInstance.d.ts.map +1 -0
- package/dist/transformers/stageInstance.js +12 -0
- package/dist/transformers/stageInviteInstance.d.ts +6 -0
- package/dist/transformers/stageInviteInstance.d.ts.map +1 -0
- package/dist/transformers/stageInviteInstance.js +19 -0
- package/dist/transformers/sticker.d.ts +5 -0
- package/dist/transformers/sticker.d.ts.map +1 -0
- package/dist/transformers/sticker.js +30 -0
- package/dist/transformers/subscription.d.ts +4 -0
- package/dist/transformers/subscription.d.ts.map +1 -0
- package/dist/transformers/subscription.js +17 -0
- package/dist/transformers/team.d.ts +4 -0
- package/dist/transformers/team.d.ts.map +1 -0
- package/dist/transformers/team.js +19 -0
- package/dist/transformers/template.d.ts +4 -0
- package/dist/transformers/template.d.ts.map +1 -0
- package/dist/transformers/template.js +18 -0
- package/dist/transformers/threadMember.d.ts +14 -0
- package/dist/transformers/threadMember.d.ts.map +1 -0
- package/dist/transformers/threadMember.js +21 -0
- package/dist/transformers/toggles/Permissions.d.ts.map +1 -0
- package/dist/transformers/toggles/Permissions.js +18 -0
- package/dist/transformers/toggles/ToggleBitfield.d.ts.map +1 -0
- package/dist/transformers/toggles/ToggleBitfield.js +42 -0
- package/dist/transformers/toggles/channel.d.ts.map +1 -0
- package/dist/transformers/toggles/channel.js +55 -0
- package/dist/transformers/toggles/emoji.d.ts.map +1 -0
- package/dist/transformers/toggles/emoji.js +45 -0
- package/dist/transformers/toggles/guild.d.ts.map +1 -0
- package/dist/transformers/toggles/guild.js +256 -0
- package/dist/transformers/toggles/index.d.ts.map +1 -0
- package/dist/transformers/toggles/index.js +11 -0
- package/dist/transformers/toggles/member.d.ts.map +1 -0
- package/dist/transformers/toggles/member.js +114 -0
- package/dist/transformers/toggles/role.d.ts.map +1 -0
- package/dist/transformers/toggles/role.js +55 -0
- package/dist/transformers/toggles/user.d.ts.map +1 -0
- package/dist/transformers/toggles/user.js +45 -0
- package/dist/transformers/toggles/voice.d.ts.map +1 -0
- package/dist/transformers/toggles/voice.js +60 -0
- package/dist/transformers/types.d.ts +1758 -0
- package/dist/transformers/types.d.ts.map +1 -0
- package/dist/transformers/types.js +3 -0
- package/dist/transformers/user.d.ts +8 -0
- package/dist/transformers/user.d.ts.map +1 -0
- package/dist/transformers/user.js +68 -0
- package/dist/transformers/voiceRegion.d.ts.map +1 -0
- package/dist/transformers/voiceRegion.js +12 -0
- package/dist/transformers/voiceState.d.ts +6 -0
- package/dist/transformers/voiceState.d.ts.map +1 -0
- package/dist/transformers/voiceState.js +16 -0
- package/dist/transformers/webhook.d.ts +4 -0
- package/dist/transformers/webhook.d.ts.map +1 -0
- package/dist/transformers/webhook.js +27 -0
- package/dist/transformers/welcomeScreen.d.ts.map +1 -0
- package/dist/transformers/welcomeScreen.js +14 -0
- package/dist/transformers/widget.d.ts.map +1 -0
- package/dist/transformers/widget.js +15 -0
- package/dist/transformers/widgetSettings.d.ts.map +1 -0
- package/dist/transformers/widgetSettings.js +9 -0
- package/dist/transformers.d.ts +237 -0
- package/dist/transformers.d.ts.map +1 -0
- package/dist/transformers.js +178 -0
- package/package.json +14 -21
- package/dist/cjs/bot.cjs +0 -82
- package/dist/cjs/commandOptionsParser.cjs +0 -53
- package/dist/cjs/constants.cjs +0 -30
- package/dist/cjs/desiredProperties.cjs +0 -649
- package/dist/cjs/events.cjs +0 -6
- package/dist/cjs/handlers/channels/CHANNEL_CREATE.cjs +0 -21
- package/dist/cjs/handlers/channels/CHANNEL_DELETE.cjs +0 -21
- package/dist/cjs/handlers/channels/CHANNEL_PINS_UPDATE.cjs +0 -21
- package/dist/cjs/handlers/channels/CHANNEL_UPDATE.cjs +0 -20
- package/dist/cjs/handlers/channels/STAGE_INSTANCE_CREATE.cjs +0 -22
- package/dist/cjs/handlers/channels/STAGE_INSTANCE_DELETE.cjs +0 -22
- package/dist/cjs/handlers/channels/STAGE_INSTANCE_UPDATE.cjs +0 -22
- package/dist/cjs/handlers/channels/THREAD_CREATE.cjs +0 -19
- package/dist/cjs/handlers/channels/THREAD_DELETE.cjs +0 -19
- package/dist/cjs/handlers/channels/THREAD_LIST_SYNC.cjs +0 -31
- package/dist/cjs/handlers/channels/THREAD_MEMBERS_UPDATE.cjs +0 -22
- package/dist/cjs/handlers/channels/THREAD_MEMBER_UPDATE.cjs +0 -24
- package/dist/cjs/handlers/channels/THREAD_UPDATE.cjs +0 -19
- package/dist/cjs/handlers/channels/index.cjs +0 -32
- package/dist/cjs/handlers/emojis/GUILD_EMOJIS_UPDATE.cjs +0 -24
- package/dist/cjs/handlers/emojis/index.cjs +0 -20
- package/dist/cjs/handlers/entitlements/ENTITLEMENT_CREATE.cjs +0 -17
- package/dist/cjs/handlers/entitlements/ENTITLEMENT_DELETE.cjs +0 -17
- package/dist/cjs/handlers/entitlements/ENTITLEMENT_UPDATE.cjs +0 -17
- package/dist/cjs/handlers/entitlements/index.cjs +0 -22
- package/dist/cjs/handlers/guilds/GUILD_AUDIT_LOG_ENTRY_CREATE.cjs +0 -18
- package/dist/cjs/handlers/guilds/GUILD_BAN_ADD.cjs +0 -17
- package/dist/cjs/handlers/guilds/GUILD_BAN_REMOVE.cjs +0 -17
- package/dist/cjs/handlers/guilds/GUILD_CREATE.cjs +0 -20
- package/dist/cjs/handlers/guilds/GUILD_DELETE.cjs +0 -22
- package/dist/cjs/handlers/guilds/GUILD_INTEGRATIONS_UPDATE.cjs +0 -19
- package/dist/cjs/handlers/guilds/GUILD_STICKERS_UPDATE.cjs +0 -23
- package/dist/cjs/handlers/guilds/GUILD_UPDATE.cjs +0 -20
- package/dist/cjs/handlers/guilds/automod/AUTO_MODERATION_ACTION_EXECUTION.cjs +0 -17
- package/dist/cjs/handlers/guilds/automod/AUTO_MODERATION_RULE_CREATE.cjs +0 -17
- package/dist/cjs/handlers/guilds/automod/AUTO_MODERATION_RULE_DELETE.cjs +0 -17
- package/dist/cjs/handlers/guilds/automod/AUTO_MODERATION_RULE_UPDATE.cjs +0 -17
- package/dist/cjs/handlers/guilds/automod/index.cjs +0 -23
- package/dist/cjs/handlers/guilds/index.cjs +0 -29
- package/dist/cjs/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_CREATE.cjs +0 -17
- package/dist/cjs/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_DELETE.cjs +0 -17
- package/dist/cjs/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_UPDATE.cjs +0 -17
- package/dist/cjs/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_ADD.cjs +0 -21
- package/dist/cjs/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_REMOVE.cjs +0 -21
- package/dist/cjs/handlers/guilds/scheduledEvents/index.cjs +0 -24
- package/dist/cjs/handlers/index.cjs +0 -35
- package/dist/cjs/handlers/integrations/INTEGRATION_CREATE.cjs +0 -16
- package/dist/cjs/handlers/integrations/INTEGRATION_DELETE.cjs +0 -21
- package/dist/cjs/handlers/integrations/INTEGRATION_UPDATE.cjs +0 -16
- package/dist/cjs/handlers/integrations/index.cjs +0 -22
- package/dist/cjs/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.cjs +0 -17
- package/dist/cjs/handlers/interactions/INTERACTION_CREATE.cjs +0 -19
- package/dist/cjs/handlers/interactions/index.cjs +0 -21
- package/dist/cjs/handlers/invites/INVITE_CREATE.cjs +0 -19
- package/dist/cjs/handlers/invites/INVITE_DELETE.cjs +0 -21
- package/dist/cjs/handlers/invites/index.cjs +0 -21
- package/dist/cjs/handlers/members/GUILD_MEMBERS_CHUNK.cjs +0 -30
- package/dist/cjs/handlers/members/GUILD_MEMBER_ADD.cjs +0 -20
- package/dist/cjs/handlers/members/GUILD_MEMBER_REMOVE.cjs +0 -19
- package/dist/cjs/handlers/members/GUILD_MEMBER_UPDATE.cjs +0 -19
- package/dist/cjs/handlers/members/index.cjs +0 -23
- package/dist/cjs/handlers/messages/MESSAGE_CREATE.cjs +0 -20
- package/dist/cjs/handlers/messages/MESSAGE_DELETE.cjs +0 -21
- package/dist/cjs/handlers/messages/MESSAGE_DELETE_BULK.cjs +0 -23
- package/dist/cjs/handlers/messages/MESSAGE_REACTION_ADD.cjs +0 -31
- package/dist/cjs/handlers/messages/MESSAGE_REACTION_REMOVE.cjs +0 -25
- package/dist/cjs/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.cjs +0 -21
- package/dist/cjs/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.cjs +0 -23
- package/dist/cjs/handlers/messages/MESSAGE_UPDATE.cjs +0 -21
- package/dist/cjs/handlers/messages/index.cjs +0 -27
- package/dist/cjs/handlers/misc/PRESENCE_UPDATE.cjs +0 -16
- package/dist/cjs/handlers/misc/READY.cjs +0 -28
- package/dist/cjs/handlers/misc/TYPING_START.cjs +0 -25
- package/dist/cjs/handlers/misc/USER_UPDATE.cjs +0 -17
- package/dist/cjs/handlers/misc/index.cjs +0 -23
- package/dist/cjs/handlers/poll/MESSAGE_POLL_VOTE_ADD.cjs +0 -23
- package/dist/cjs/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.cjs +0 -23
- package/dist/cjs/handlers/poll/index.cjs +0 -21
- package/dist/cjs/handlers/roles/GUILD_ROLE_CREATE.cjs +0 -20
- package/dist/cjs/handlers/roles/GUILD_ROLE_DELETE.cjs +0 -20
- package/dist/cjs/handlers/roles/GUILD_ROLE_UPDATE.cjs +0 -20
- package/dist/cjs/handlers/roles/index.cjs +0 -22
- package/dist/cjs/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.cjs +0 -20
- package/dist/cjs/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.cjs +0 -17
- package/dist/cjs/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.cjs +0 -20
- package/dist/cjs/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.cjs +0 -17
- package/dist/cjs/handlers/soundboard/SOUNDBOARD_SOUNDS.cjs +0 -20
- package/dist/cjs/handlers/soundboard/index.cjs +0 -24
- package/dist/cjs/handlers/subscriptions/SUBSCRIPTION_CREATE.cjs +0 -17
- package/dist/cjs/handlers/subscriptions/SUBSCRIPTION_DELETE.cjs +0 -17
- package/dist/cjs/handlers/subscriptions/SUBSCRIPTION_UPDATE.cjs +0 -17
- package/dist/cjs/handlers/subscriptions/index.cjs +0 -22
- package/dist/cjs/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.cjs +0 -26
- package/dist/cjs/handlers/voice/VOICE_SERVER_UPDATE.cjs +0 -21
- package/dist/cjs/handlers/voice/VOICE_STATE_UPDATE.cjs +0 -22
- package/dist/cjs/handlers/voice/index.cjs +0 -22
- package/dist/cjs/handlers/webhooks/WEBHOOKS_UPDATE.cjs +0 -20
- package/dist/cjs/handlers/webhooks/index.cjs +0 -20
- package/dist/cjs/handlers.cjs +0 -132
- package/dist/cjs/helpers.cjs +0 -792
- package/dist/cjs/index.cjs +0 -34
- package/dist/cjs/transformers/activity.cjs +0 -74
- package/dist/cjs/transformers/application.cjs +0 -70
- package/dist/cjs/transformers/applicationCommand.cjs +0 -29
- package/dist/cjs/transformers/applicationCommandOption.cjs +0 -31
- package/dist/cjs/transformers/applicationCommandOptionChoice.cjs +0 -20
- package/dist/cjs/transformers/applicationCommandPermission.cjs +0 -25
- package/dist/cjs/transformers/attachment.cjs +0 -31
- package/dist/cjs/transformers/auditLogEntry.cjs +0 -37
- package/dist/cjs/transformers/automodActionExecution.cjs +0 -35
- package/dist/cjs/transformers/automodRule.cjs +0 -41
- package/dist/cjs/transformers/avatarDecorationData.cjs +0 -20
- package/dist/cjs/transformers/channel.cjs +0 -149
- package/dist/cjs/transformers/component.cjs +0 -217
- package/dist/cjs/transformers/embed.cjs +0 -54
- package/dist/cjs/transformers/emoji.cjs +0 -57
- package/dist/cjs/transformers/entitlement.cjs +0 -27
- package/dist/cjs/transformers/gatewayBot.cjs +0 -25
- package/dist/cjs/transformers/guild.cjs +0 -158
- package/dist/cjs/transformers/incidentsData.cjs +0 -21
- package/dist/cjs/transformers/index.cjs +0 -68
- package/dist/cjs/transformers/integration.cjs +0 -44
- package/dist/cjs/transformers/interaction.cjs +0 -285
- package/dist/cjs/transformers/invite.cjs +0 -52
- package/dist/cjs/transformers/lobby.cjs +0 -41
- package/dist/cjs/transformers/member.cjs +0 -69
- package/dist/cjs/transformers/message.cjs +0 -315
- package/dist/cjs/transformers/onboarding.cjs +0 -56
- package/dist/cjs/transformers/poll.cjs +0 -50
- package/dist/cjs/transformers/presence.cjs +0 -25
- package/dist/cjs/transformers/reverse/activity.cjs +0 -53
- package/dist/cjs/transformers/reverse/allowedMentions.cjs +0 -20
- package/dist/cjs/transformers/reverse/application.cjs +0 -38
- package/dist/cjs/transformers/reverse/applicationCommand.cjs +0 -28
- package/dist/cjs/transformers/reverse/applicationCommandOption.cjs +0 -30
- package/dist/cjs/transformers/reverse/applicationCommandOptionChoice.cjs +0 -19
- package/dist/cjs/transformers/reverse/applicationCommandPermission.cjs +0 -24
- package/dist/cjs/transformers/reverse/attachment.cjs +0 -29
- package/dist/cjs/transformers/reverse/auditLogEntry.cjs +0 -37
- package/dist/cjs/transformers/reverse/component.cjs +0 -183
- package/dist/cjs/transformers/reverse/createApplicationCommand.cjs +0 -36
- package/dist/cjs/transformers/reverse/embed.cjs +0 -53
- package/dist/cjs/transformers/reverse/emoji.cjs +0 -24
- package/dist/cjs/transformers/reverse/gatewayBot.cjs +0 -24
- package/dist/cjs/transformers/reverse/index.cjs +0 -37
- package/dist/cjs/transformers/reverse/member.cjs +0 -59
- package/dist/cjs/transformers/reverse/presence.cjs +0 -41
- package/dist/cjs/transformers/reverse/team.cjs +0 -28
- package/dist/cjs/transformers/reverse/widgetSettings.cjs +0 -18
- package/dist/cjs/transformers/role.cjs +0 -90
- package/dist/cjs/transformers/scheduledEvent.cjs +0 -58
- package/dist/cjs/transformers/sku.cjs +0 -23
- package/dist/cjs/transformers/soundboardSound.cjs +0 -25
- package/dist/cjs/transformers/stageInstance.cjs +0 -22
- package/dist/cjs/transformers/stageInviteInstance.cjs +0 -23
- package/dist/cjs/transformers/sticker.cjs +0 -48
- package/dist/cjs/transformers/subscription.cjs +0 -27
- package/dist/cjs/transformers/team.cjs +0 -29
- package/dist/cjs/transformers/template.cjs +0 -28
- package/dist/cjs/transformers/threadMember.cjs +0 -36
- package/dist/cjs/transformers/toggles/Permissions.cjs +0 -28
- package/dist/cjs/transformers/toggles/ToggleBitfield.cjs +0 -60
- package/dist/cjs/transformers/toggles/channel.cjs +0 -73
- package/dist/cjs/transformers/toggles/emoji.cjs +0 -63
- package/dist/cjs/transformers/toggles/guild.cjs +0 -274
- package/dist/cjs/transformers/toggles/index.cjs +0 -28
- package/dist/cjs/transformers/toggles/member.cjs +0 -132
- package/dist/cjs/transformers/toggles/role.cjs +0 -73
- package/dist/cjs/transformers/toggles/user.cjs +0 -63
- package/dist/cjs/transformers/toggles/voice.cjs +0 -78
- package/dist/cjs/transformers/types.cjs +0 -6
- package/dist/cjs/transformers/user.cjs +0 -95
- package/dist/cjs/transformers/voiceRegion.cjs +0 -22
- package/dist/cjs/transformers/voiceState.cjs +0 -24
- package/dist/cjs/transformers/webhook.cjs +0 -37
- package/dist/cjs/transformers/welcomeScreen.cjs +0 -24
- package/dist/cjs/transformers/widget.cjs +0 -27
- package/dist/cjs/transformers/widgetSettings.cjs +0 -19
- package/dist/cjs/transformers.cjs +0 -186
- package/dist/cjs/utils.cjs +0 -32
- package/dist/esm/bot.js +0 -72
- package/dist/esm/commandOptionsParser.js +0 -43
- package/dist/esm/constants.js +0 -6
- package/dist/esm/desiredProperties.js +0 -631
- package/dist/esm/events.js +0 -3
- package/dist/esm/handlers/channels/CHANNEL_CREATE.js +0 -11
- package/dist/esm/handlers/channels/CHANNEL_DELETE.js +0 -11
- package/dist/esm/handlers/channels/CHANNEL_PINS_UPDATE.js +0 -11
- package/dist/esm/handlers/channels/CHANNEL_UPDATE.js +0 -10
- package/dist/esm/handlers/channels/STAGE_INSTANCE_CREATE.js +0 -12
- package/dist/esm/handlers/channels/STAGE_INSTANCE_DELETE.js +0 -12
- package/dist/esm/handlers/channels/STAGE_INSTANCE_UPDATE.js +0 -12
- package/dist/esm/handlers/channels/THREAD_CREATE.js +0 -9
- package/dist/esm/handlers/channels/THREAD_DELETE.js +0 -9
- package/dist/esm/handlers/channels/THREAD_LIST_SYNC.js +0 -21
- package/dist/esm/handlers/channels/THREAD_MEMBERS_UPDATE.js +0 -12
- package/dist/esm/handlers/channels/THREAD_MEMBER_UPDATE.js +0 -14
- package/dist/esm/handlers/channels/THREAD_UPDATE.js +0 -9
- package/dist/esm/handlers/channels/index.js +0 -15
- package/dist/esm/handlers/emojis/GUILD_EMOJIS_UPDATE.js +0 -14
- package/dist/esm/handlers/emojis/index.js +0 -3
- package/dist/esm/handlers/entitlements/ENTITLEMENT_CREATE.js +0 -7
- package/dist/esm/handlers/entitlements/ENTITLEMENT_DELETE.js +0 -7
- package/dist/esm/handlers/entitlements/ENTITLEMENT_UPDATE.js +0 -7
- package/dist/esm/handlers/entitlements/index.js +0 -5
- package/dist/esm/handlers/guilds/GUILD_AUDIT_LOG_ENTRY_CREATE.js +0 -8
- package/dist/esm/handlers/guilds/GUILD_BAN_ADD.js +0 -7
- package/dist/esm/handlers/guilds/GUILD_BAN_REMOVE.js +0 -7
- package/dist/esm/handlers/guilds/GUILD_CREATE.js +0 -10
- package/dist/esm/handlers/guilds/GUILD_DELETE.js +0 -12
- package/dist/esm/handlers/guilds/GUILD_INTEGRATIONS_UPDATE.js +0 -9
- package/dist/esm/handlers/guilds/GUILD_STICKERS_UPDATE.js +0 -13
- package/dist/esm/handlers/guilds/GUILD_UPDATE.js +0 -10
- package/dist/esm/handlers/guilds/automod/AUTO_MODERATION_ACTION_EXECUTION.js +0 -7
- package/dist/esm/handlers/guilds/automod/AUTO_MODERATION_RULE_CREATE.js +0 -7
- package/dist/esm/handlers/guilds/automod/AUTO_MODERATION_RULE_DELETE.js +0 -7
- package/dist/esm/handlers/guilds/automod/AUTO_MODERATION_RULE_UPDATE.js +0 -7
- package/dist/esm/handlers/guilds/automod/index.js +0 -6
- package/dist/esm/handlers/guilds/index.js +0 -12
- package/dist/esm/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_CREATE.js +0 -7
- package/dist/esm/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_DELETE.js +0 -7
- package/dist/esm/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_UPDATE.js +0 -7
- package/dist/esm/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_ADD.js +0 -11
- package/dist/esm/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_REMOVE.js +0 -11
- package/dist/esm/handlers/guilds/scheduledEvents/index.js +0 -7
- package/dist/esm/handlers/index.js +0 -18
- package/dist/esm/handlers/integrations/INTEGRATION_CREATE.js +0 -6
- package/dist/esm/handlers/integrations/INTEGRATION_DELETE.js +0 -11
- package/dist/esm/handlers/integrations/INTEGRATION_UPDATE.js +0 -6
- package/dist/esm/handlers/integrations/index.js +0 -5
- package/dist/esm/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.js +0 -7
- package/dist/esm/handlers/interactions/INTERACTION_CREATE.js +0 -9
- package/dist/esm/handlers/interactions/index.js +0 -4
- package/dist/esm/handlers/invites/INVITE_CREATE.js +0 -9
- package/dist/esm/handlers/invites/INVITE_DELETE.js +0 -11
- package/dist/esm/handlers/invites/index.js +0 -4
- package/dist/esm/handlers/members/GUILD_MEMBERS_CHUNK.js +0 -20
- package/dist/esm/handlers/members/GUILD_MEMBER_ADD.js +0 -10
- package/dist/esm/handlers/members/GUILD_MEMBER_REMOVE.js +0 -9
- package/dist/esm/handlers/members/GUILD_MEMBER_UPDATE.js +0 -9
- package/dist/esm/handlers/members/index.js +0 -6
- package/dist/esm/handlers/messages/MESSAGE_CREATE.js +0 -10
- package/dist/esm/handlers/messages/MESSAGE_DELETE.js +0 -11
- package/dist/esm/handlers/messages/MESSAGE_DELETE_BULK.js +0 -13
- package/dist/esm/handlers/messages/MESSAGE_REACTION_ADD.js +0 -21
- package/dist/esm/handlers/messages/MESSAGE_REACTION_REMOVE.js +0 -15
- package/dist/esm/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.js +0 -11
- package/dist/esm/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.js +0 -13
- package/dist/esm/handlers/messages/MESSAGE_UPDATE.js +0 -11
- package/dist/esm/handlers/messages/index.js +0 -10
- package/dist/esm/handlers/misc/PRESENCE_UPDATE.js +0 -6
- package/dist/esm/handlers/misc/READY.js +0 -18
- package/dist/esm/handlers/misc/TYPING_START.js +0 -15
- package/dist/esm/handlers/misc/USER_UPDATE.js +0 -7
- package/dist/esm/handlers/misc/index.js +0 -6
- package/dist/esm/handlers/poll/MESSAGE_POLL_VOTE_ADD.js +0 -13
- package/dist/esm/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.js +0 -13
- package/dist/esm/handlers/poll/index.js +0 -4
- package/dist/esm/handlers/roles/GUILD_ROLE_CREATE.js +0 -10
- package/dist/esm/handlers/roles/GUILD_ROLE_DELETE.js +0 -10
- package/dist/esm/handlers/roles/GUILD_ROLE_UPDATE.js +0 -10
- package/dist/esm/handlers/roles/index.js +0 -5
- package/dist/esm/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.js +0 -10
- package/dist/esm/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.js +0 -7
- package/dist/esm/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.js +0 -10
- package/dist/esm/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.js +0 -7
- package/dist/esm/handlers/soundboard/SOUNDBOARD_SOUNDS.js +0 -10
- package/dist/esm/handlers/soundboard/index.js +0 -7
- package/dist/esm/handlers/subscriptions/SUBSCRIPTION_CREATE.js +0 -7
- package/dist/esm/handlers/subscriptions/SUBSCRIPTION_DELETE.js +0 -7
- package/dist/esm/handlers/subscriptions/SUBSCRIPTION_UPDATE.js +0 -7
- package/dist/esm/handlers/subscriptions/index.js +0 -5
- package/dist/esm/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.js +0 -16
- package/dist/esm/handlers/voice/VOICE_SERVER_UPDATE.js +0 -11
- package/dist/esm/handlers/voice/VOICE_STATE_UPDATE.js +0 -12
- package/dist/esm/handlers/voice/index.js +0 -5
- package/dist/esm/handlers/webhooks/WEBHOOKS_UPDATE.js +0 -10
- package/dist/esm/handlers/webhooks/index.js +0 -3
- package/dist/esm/handlers.js +0 -81
- package/dist/esm/helpers.js +0 -782
- package/dist/esm/index.js +0 -17
- package/dist/esm/transformers/activity.js +0 -53
- package/dist/esm/transformers/application.js +0 -60
- package/dist/esm/transformers/applicationCommand.js +0 -19
- package/dist/esm/transformers/applicationCommandOption.js +0 -21
- package/dist/esm/transformers/applicationCommandOptionChoice.js +0 -10
- package/dist/esm/transformers/applicationCommandPermission.js +0 -15
- package/dist/esm/transformers/attachment.js +0 -21
- package/dist/esm/transformers/auditLogEntry.js +0 -27
- package/dist/esm/transformers/automodActionExecution.js +0 -25
- package/dist/esm/transformers/automodRule.js +0 -31
- package/dist/esm/transformers/avatarDecorationData.js +0 -10
- package/dist/esm/transformers/channel.js +0 -122
- package/dist/esm/transformers/component.js +0 -196
- package/dist/esm/transformers/embed.js +0 -44
- package/dist/esm/transformers/emoji.js +0 -36
- package/dist/esm/transformers/entitlement.js +0 -17
- package/dist/esm/transformers/gatewayBot.js +0 -15
- package/dist/esm/transformers/guild.js +0 -140
- package/dist/esm/transformers/incidentsData.js +0 -11
- package/dist/esm/transformers/index.js +0 -52
- package/dist/esm/transformers/integration.js +0 -34
- package/dist/esm/transformers/interaction.js +0 -252
- package/dist/esm/transformers/invite.js +0 -42
- package/dist/esm/transformers/lobby.js +0 -23
- package/dist/esm/transformers/member.js +0 -51
- package/dist/esm/transformers/message.js +0 -285
- package/dist/esm/transformers/onboarding.js +0 -35
- package/dist/esm/transformers/poll.js +0 -32
- package/dist/esm/transformers/presence.js +0 -15
- package/dist/esm/transformers/reverse/activity.js +0 -43
- package/dist/esm/transformers/reverse/allowedMentions.js +0 -10
- package/dist/esm/transformers/reverse/application.js +0 -28
- package/dist/esm/transformers/reverse/applicationCommand.js +0 -18
- package/dist/esm/transformers/reverse/applicationCommandOption.js +0 -20
- package/dist/esm/transformers/reverse/applicationCommandOptionChoice.js +0 -9
- package/dist/esm/transformers/reverse/applicationCommandPermission.js +0 -14
- package/dist/esm/transformers/reverse/attachment.js +0 -19
- package/dist/esm/transformers/reverse/auditLogEntry.js +0 -27
- package/dist/esm/transformers/reverse/component.js +0 -162
- package/dist/esm/transformers/reverse/createApplicationCommand.js +0 -26
- package/dist/esm/transformers/reverse/embed.js +0 -43
- package/dist/esm/transformers/reverse/emoji.js +0 -14
- package/dist/esm/transformers/reverse/gatewayBot.js +0 -14
- package/dist/esm/transformers/reverse/index.js +0 -20
- package/dist/esm/transformers/reverse/member.js +0 -41
- package/dist/esm/transformers/reverse/presence.js +0 -23
- package/dist/esm/transformers/reverse/team.js +0 -18
- package/dist/esm/transformers/reverse/widgetSettings.js +0 -8
- package/dist/esm/transformers/role.js +0 -69
- package/dist/esm/transformers/scheduledEvent.js +0 -40
- package/dist/esm/transformers/sku.js +0 -13
- package/dist/esm/transformers/soundboardSound.js +0 -15
- package/dist/esm/transformers/stageInstance.js +0 -12
- package/dist/esm/transformers/stageInviteInstance.js +0 -13
- package/dist/esm/transformers/sticker.js +0 -30
- package/dist/esm/transformers/subscription.js +0 -17
- package/dist/esm/transformers/team.js +0 -19
- package/dist/esm/transformers/template.js +0 -18
- package/dist/esm/transformers/threadMember.js +0 -18
- package/dist/esm/transformers/toggles/Permissions.js +0 -18
- package/dist/esm/transformers/toggles/ToggleBitfield.js +0 -42
- package/dist/esm/transformers/toggles/channel.js +0 -55
- package/dist/esm/transformers/toggles/emoji.js +0 -45
- package/dist/esm/transformers/toggles/guild.js +0 -256
- package/dist/esm/transformers/toggles/index.js +0 -11
- package/dist/esm/transformers/toggles/member.js +0 -114
- package/dist/esm/transformers/toggles/role.js +0 -55
- package/dist/esm/transformers/toggles/user.js +0 -45
- package/dist/esm/transformers/toggles/voice.js +0 -60
- package/dist/esm/transformers/types.js +0 -3
- package/dist/esm/transformers/user.js +0 -68
- package/dist/esm/transformers/voiceRegion.js +0 -12
- package/dist/esm/transformers/voiceState.js +0 -14
- package/dist/esm/transformers/webhook.js +0 -27
- package/dist/esm/transformers/welcomeScreen.js +0 -14
- package/dist/esm/transformers/widget.js +0 -17
- package/dist/esm/transformers/widgetSettings.js +0 -9
- package/dist/esm/transformers.js +0 -176
- package/dist/esm/utils.js +0 -11
- package/dist/types/bot.d.ts +0 -86
- package/dist/types/bot.d.ts.map +0 -1
- package/dist/types/commandOptionsParser.d.ts.map +0 -1
- package/dist/types/constants.d.ts.map +0 -1
- package/dist/types/desiredProperties.d.ts +0 -212
- package/dist/types/desiredProperties.d.ts.map +0 -1
- package/dist/types/events.d.ts +0 -232
- package/dist/types/events.d.ts.map +0 -1
- package/dist/types/handlers/channels/CHANNEL_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/channels/CHANNEL_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/channels/CHANNEL_PINS_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/channels/CHANNEL_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/channels/STAGE_INSTANCE_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/channels/STAGE_INSTANCE_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/channels/STAGE_INSTANCE_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/channels/THREAD_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/channels/THREAD_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/channels/THREAD_LIST_SYNC.d.ts.map +0 -1
- package/dist/types/handlers/channels/THREAD_MEMBERS_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/channels/THREAD_MEMBER_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/channels/THREAD_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/channels/index.d.ts.map +0 -1
- package/dist/types/handlers/emojis/GUILD_EMOJIS_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/emojis/index.d.ts.map +0 -1
- package/dist/types/handlers/entitlements/ENTITLEMENT_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/entitlements/ENTITLEMENT_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/entitlements/ENTITLEMENT_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/entitlements/index.d.ts.map +0 -1
- package/dist/types/handlers/guilds/GUILD_AUDIT_LOG_ENTRY_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/GUILD_BAN_ADD.d.ts.map +0 -1
- package/dist/types/handlers/guilds/GUILD_BAN_REMOVE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/GUILD_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/GUILD_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/GUILD_INTEGRATIONS_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/GUILD_STICKERS_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/GUILD_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/automod/AUTO_MODERATION_ACTION_EXECUTION.d.ts.map +0 -1
- package/dist/types/handlers/guilds/automod/AUTO_MODERATION_RULE_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/automod/AUTO_MODERATION_RULE_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/automod/AUTO_MODERATION_RULE_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/automod/index.d.ts.map +0 -1
- package/dist/types/handlers/guilds/index.d.ts.map +0 -1
- package/dist/types/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_ADD.d.ts.map +0 -1
- package/dist/types/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_REMOVE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/scheduledEvents/index.d.ts.map +0 -1
- package/dist/types/handlers/index.d.ts.map +0 -1
- package/dist/types/handlers/integrations/INTEGRATION_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/integrations/INTEGRATION_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/integrations/INTEGRATION_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/integrations/index.d.ts.map +0 -1
- package/dist/types/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/interactions/INTERACTION_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/interactions/index.d.ts.map +0 -1
- package/dist/types/handlers/invites/INVITE_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/invites/INVITE_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/invites/index.d.ts.map +0 -1
- package/dist/types/handlers/members/GUILD_MEMBERS_CHUNK.d.ts.map +0 -1
- package/dist/types/handlers/members/GUILD_MEMBER_ADD.d.ts +0 -4
- package/dist/types/handlers/members/GUILD_MEMBER_ADD.d.ts.map +0 -1
- package/dist/types/handlers/members/GUILD_MEMBER_REMOVE.d.ts.map +0 -1
- package/dist/types/handlers/members/GUILD_MEMBER_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/members/index.d.ts.map +0 -1
- package/dist/types/handlers/messages/MESSAGE_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/messages/MESSAGE_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/messages/MESSAGE_DELETE_BULK.d.ts.map +0 -1
- package/dist/types/handlers/messages/MESSAGE_REACTION_ADD.d.ts.map +0 -1
- package/dist/types/handlers/messages/MESSAGE_REACTION_REMOVE.d.ts.map +0 -1
- package/dist/types/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.d.ts.map +0 -1
- package/dist/types/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.d.ts.map +0 -1
- package/dist/types/handlers/messages/MESSAGE_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/messages/index.d.ts.map +0 -1
- package/dist/types/handlers/misc/PRESENCE_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/misc/READY.d.ts.map +0 -1
- package/dist/types/handlers/misc/TYPING_START.d.ts.map +0 -1
- package/dist/types/handlers/misc/USER_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/misc/index.d.ts.map +0 -1
- package/dist/types/handlers/poll/MESSAGE_POLL_VOTE_ADD.d.ts.map +0 -1
- package/dist/types/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.d.ts.map +0 -1
- package/dist/types/handlers/poll/index.d.ts.map +0 -1
- package/dist/types/handlers/roles/GUILD_ROLE_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/roles/GUILD_ROLE_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/roles/GUILD_ROLE_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/roles/index.d.ts.map +0 -1
- package/dist/types/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/soundboard/SOUNDBOARD_SOUNDS.d.ts.map +0 -1
- package/dist/types/handlers/soundboard/index.d.ts.map +0 -1
- package/dist/types/handlers/subscriptions/SUBSCRIPTION_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/subscriptions/SUBSCRIPTION_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/subscriptions/SUBSCRIPTION_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/subscriptions/index.d.ts.map +0 -1
- package/dist/types/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.d.ts.map +0 -1
- package/dist/types/handlers/voice/VOICE_SERVER_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/voice/VOICE_STATE_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/voice/index.d.ts.map +0 -1
- package/dist/types/handlers/webhooks/WEBHOOKS_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/webhooks/index.d.ts.map +0 -1
- package/dist/types/handlers.d.ts.map +0 -1
- package/dist/types/helpers.d.ts +0 -244
- package/dist/types/helpers.d.ts.map +0 -1
- package/dist/types/index.d.ts +0 -16
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/transformers/activity.d.ts +0 -5
- package/dist/types/transformers/activity.d.ts.map +0 -1
- package/dist/types/transformers/application.d.ts +0 -6
- package/dist/types/transformers/application.d.ts.map +0 -1
- package/dist/types/transformers/applicationCommand.d.ts.map +0 -1
- package/dist/types/transformers/applicationCommandOption.d.ts.map +0 -1
- package/dist/types/transformers/applicationCommandOptionChoice.d.ts.map +0 -1
- package/dist/types/transformers/applicationCommandPermission.d.ts.map +0 -1
- package/dist/types/transformers/attachment.d.ts +0 -4
- package/dist/types/transformers/attachment.d.ts.map +0 -1
- package/dist/types/transformers/auditLogEntry.d.ts.map +0 -1
- package/dist/types/transformers/automodActionExecution.d.ts.map +0 -1
- package/dist/types/transformers/automodRule.d.ts.map +0 -1
- package/dist/types/transformers/avatarDecorationData.d.ts.map +0 -1
- package/dist/types/transformers/channel.d.ts +0 -11
- package/dist/types/transformers/channel.d.ts.map +0 -1
- package/dist/types/transformers/component.d.ts.map +0 -1
- package/dist/types/transformers/embed.d.ts.map +0 -1
- package/dist/types/transformers/emoji.d.ts +0 -6
- package/dist/types/transformers/emoji.d.ts.map +0 -1
- package/dist/types/transformers/entitlement.d.ts +0 -4
- package/dist/types/transformers/entitlement.d.ts.map +0 -1
- package/dist/types/transformers/gatewayBot.d.ts.map +0 -1
- package/dist/types/transformers/guild.d.ts +0 -8
- package/dist/types/transformers/guild.d.ts.map +0 -1
- package/dist/types/transformers/incidentsData.d.ts +0 -4
- package/dist/types/transformers/incidentsData.d.ts.map +0 -1
- package/dist/types/transformers/index.d.ts.map +0 -1
- package/dist/types/transformers/integration.d.ts.map +0 -1
- package/dist/types/transformers/interaction.d.ts +0 -23
- package/dist/types/transformers/interaction.d.ts.map +0 -1
- package/dist/types/transformers/invite.d.ts +0 -7
- package/dist/types/transformers/invite.d.ts.map +0 -1
- package/dist/types/transformers/lobby.d.ts +0 -5
- package/dist/types/transformers/lobby.d.ts.map +0 -1
- package/dist/types/transformers/member.d.ts +0 -5
- package/dist/types/transformers/member.d.ts.map +0 -1
- package/dist/types/transformers/message.d.ts +0 -15
- package/dist/types/transformers/message.d.ts.map +0 -1
- package/dist/types/transformers/onboarding.d.ts +0 -6
- package/dist/types/transformers/onboarding.d.ts.map +0 -1
- package/dist/types/transformers/poll.d.ts +0 -5
- package/dist/types/transformers/poll.d.ts.map +0 -1
- package/dist/types/transformers/presence.d.ts +0 -4
- package/dist/types/transformers/presence.d.ts.map +0 -1
- package/dist/types/transformers/reverse/activity.d.ts.map +0 -1
- package/dist/types/transformers/reverse/allowedMentions.d.ts.map +0 -1
- package/dist/types/transformers/reverse/application.d.ts +0 -3
- package/dist/types/transformers/reverse/application.d.ts.map +0 -1
- package/dist/types/transformers/reverse/applicationCommand.d.ts.map +0 -1
- package/dist/types/transformers/reverse/applicationCommandOption.d.ts.map +0 -1
- package/dist/types/transformers/reverse/applicationCommandOptionChoice.d.ts.map +0 -1
- package/dist/types/transformers/reverse/applicationCommandPermission.d.ts.map +0 -1
- package/dist/types/transformers/reverse/attachment.d.ts +0 -3
- package/dist/types/transformers/reverse/attachment.d.ts.map +0 -1
- package/dist/types/transformers/reverse/auditLogEntry.d.ts.map +0 -1
- package/dist/types/transformers/reverse/component.d.ts.map +0 -1
- package/dist/types/transformers/reverse/createApplicationCommand.d.ts +0 -3
- package/dist/types/transformers/reverse/createApplicationCommand.d.ts.map +0 -1
- package/dist/types/transformers/reverse/embed.d.ts.map +0 -1
- package/dist/types/transformers/reverse/emoji.d.ts +0 -4
- package/dist/types/transformers/reverse/emoji.d.ts.map +0 -1
- package/dist/types/transformers/reverse/gatewayBot.d.ts.map +0 -1
- package/dist/types/transformers/reverse/index.d.ts +0 -19
- package/dist/types/transformers/reverse/index.d.ts.map +0 -1
- package/dist/types/transformers/reverse/member.d.ts +0 -6
- package/dist/types/transformers/reverse/member.d.ts.map +0 -1
- package/dist/types/transformers/reverse/presence.d.ts +0 -10
- package/dist/types/transformers/reverse/presence.d.ts.map +0 -1
- package/dist/types/transformers/reverse/team.d.ts +0 -4
- package/dist/types/transformers/reverse/team.d.ts.map +0 -1
- package/dist/types/transformers/reverse/widgetSettings.d.ts.map +0 -1
- package/dist/types/transformers/role.d.ts +0 -9
- package/dist/types/transformers/role.d.ts.map +0 -1
- package/dist/types/transformers/scheduledEvent.d.ts +0 -5
- package/dist/types/transformers/scheduledEvent.d.ts.map +0 -1
- package/dist/types/transformers/sku.d.ts +0 -4
- package/dist/types/transformers/sku.d.ts.map +0 -1
- package/dist/types/transformers/soundboardSound.d.ts +0 -4
- package/dist/types/transformers/soundboardSound.d.ts.map +0 -1
- package/dist/types/transformers/stageInstance.d.ts +0 -4
- package/dist/types/transformers/stageInstance.d.ts.map +0 -1
- package/dist/types/transformers/stageInviteInstance.d.ts +0 -6
- package/dist/types/transformers/stageInviteInstance.d.ts.map +0 -1
- package/dist/types/transformers/sticker.d.ts +0 -5
- package/dist/types/transformers/sticker.d.ts.map +0 -1
- package/dist/types/transformers/subscription.d.ts +0 -4
- package/dist/types/transformers/subscription.d.ts.map +0 -1
- package/dist/types/transformers/team.d.ts +0 -4
- package/dist/types/transformers/team.d.ts.map +0 -1
- package/dist/types/transformers/template.d.ts +0 -4
- package/dist/types/transformers/template.d.ts.map +0 -1
- package/dist/types/transformers/threadMember.d.ts +0 -5
- package/dist/types/transformers/threadMember.d.ts.map +0 -1
- package/dist/types/transformers/toggles/Permissions.d.ts.map +0 -1
- package/dist/types/transformers/toggles/ToggleBitfield.d.ts.map +0 -1
- package/dist/types/transformers/toggles/channel.d.ts.map +0 -1
- package/dist/types/transformers/toggles/emoji.d.ts.map +0 -1
- package/dist/types/transformers/toggles/guild.d.ts.map +0 -1
- package/dist/types/transformers/toggles/index.d.ts.map +0 -1
- package/dist/types/transformers/toggles/member.d.ts.map +0 -1
- package/dist/types/transformers/toggles/role.d.ts.map +0 -1
- package/dist/types/transformers/toggles/user.d.ts.map +0 -1
- package/dist/types/transformers/toggles/voice.d.ts.map +0 -1
- package/dist/types/transformers/types.d.ts +0 -1758
- package/dist/types/transformers/types.d.ts.map +0 -1
- package/dist/types/transformers/user.d.ts +0 -8
- package/dist/types/transformers/user.d.ts.map +0 -1
- package/dist/types/transformers/voiceRegion.d.ts.map +0 -1
- package/dist/types/transformers/voiceState.d.ts +0 -7
- package/dist/types/transformers/voiceState.d.ts.map +0 -1
- package/dist/types/transformers/webhook.d.ts +0 -4
- package/dist/types/transformers/webhook.d.ts.map +0 -1
- package/dist/types/transformers/welcomeScreen.d.ts.map +0 -1
- package/dist/types/transformers/widget.d.ts.map +0 -1
- package/dist/types/transformers/widgetSettings.d.ts.map +0 -1
- package/dist/types/transformers.d.ts +0 -219
- package/dist/types/transformers.d.ts.map +0 -1
- package/dist/types/utils.d.ts +0 -5
- package/dist/types/utils.d.ts.map +0 -1
- /package/dist/{types/commandOptionsParser.d.ts → commandOptionsParser.d.ts} +0 -0
- /package/dist/{types/constants.d.ts → constants.d.ts} +0 -0
- /package/dist/{types/handlers → handlers}/channels/CHANNEL_CREATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/channels/CHANNEL_DELETE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/channels/CHANNEL_PINS_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/channels/CHANNEL_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/channels/STAGE_INSTANCE_CREATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/channels/STAGE_INSTANCE_DELETE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/channels/STAGE_INSTANCE_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/channels/THREAD_CREATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/channels/THREAD_DELETE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/channels/THREAD_LIST_SYNC.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/channels/THREAD_MEMBERS_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/channels/THREAD_MEMBER_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/channels/THREAD_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/channels/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/emojis/GUILD_EMOJIS_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/emojis/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/entitlements/ENTITLEMENT_CREATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/entitlements/ENTITLEMENT_DELETE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/entitlements/ENTITLEMENT_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/entitlements/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/GUILD_AUDIT_LOG_ENTRY_CREATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/GUILD_BAN_ADD.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/GUILD_BAN_REMOVE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/GUILD_CREATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/GUILD_DELETE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/GUILD_INTEGRATIONS_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/GUILD_STICKERS_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/GUILD_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/automod/AUTO_MODERATION_ACTION_EXECUTION.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/automod/AUTO_MODERATION_RULE_CREATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/automod/AUTO_MODERATION_RULE_DELETE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/automod/AUTO_MODERATION_RULE_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/automod/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_CREATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_DELETE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_ADD.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_REMOVE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/scheduledEvents/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/integrations/INTEGRATION_CREATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/integrations/INTEGRATION_DELETE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/integrations/INTEGRATION_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/integrations/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/interactions/INTERACTION_CREATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/interactions/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/invites/INVITE_CREATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/invites/INVITE_DELETE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/invites/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/members/GUILD_MEMBERS_CHUNK.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/members/GUILD_MEMBER_REMOVE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/members/GUILD_MEMBER_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/members/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/messages/MESSAGE_CREATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/messages/MESSAGE_DELETE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/messages/MESSAGE_DELETE_BULK.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/messages/MESSAGE_REACTION_ADD.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/messages/MESSAGE_REACTION_REMOVE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/messages/MESSAGE_REACTION_REMOVE_ALL.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/messages/MESSAGE_REACTION_REMOVE_EMOJI.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/messages/MESSAGE_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/messages/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/misc/PRESENCE_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/misc/READY.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/misc/TYPING_START.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/misc/USER_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/misc/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/poll/MESSAGE_POLL_VOTE_ADD.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/poll/MESSAGE_POLL_VOTE_REMOVE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/poll/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/roles/GUILD_ROLE_CREATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/roles/GUILD_ROLE_DELETE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/roles/GUILD_ROLE_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/roles/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/soundboard/SOUNDBOARD_SOUNDS.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/soundboard/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/subscriptions/SUBSCRIPTION_CREATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/subscriptions/SUBSCRIPTION_DELETE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/subscriptions/SUBSCRIPTION_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/subscriptions/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/voice/VOICE_CHANNEL_EFFECT_SEND.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/voice/VOICE_SERVER_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/voice/VOICE_STATE_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/voice/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/webhooks/WEBHOOKS_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/webhooks/index.d.ts +0 -0
- /package/dist/{types/handlers.d.ts → handlers.d.ts} +0 -0
- /package/dist/{types/transformers → transformers}/applicationCommand.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/applicationCommandOption.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/applicationCommandOptionChoice.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/applicationCommandPermission.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/auditLogEntry.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/automodActionExecution.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/automodRule.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/avatarDecorationData.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/component.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/embed.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/gatewayBot.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/index.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/integration.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/reverse/activity.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/reverse/allowedMentions.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/reverse/applicationCommand.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/reverse/applicationCommandOption.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/reverse/applicationCommandOptionChoice.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/reverse/applicationCommandPermission.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/reverse/auditLogEntry.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/reverse/component.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/reverse/embed.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/reverse/gatewayBot.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/reverse/widgetSettings.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/toggles/Permissions.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/toggles/ToggleBitfield.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/toggles/channel.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/toggles/emoji.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/toggles/guild.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/toggles/index.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/toggles/member.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/toggles/role.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/toggles/user.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/toggles/voice.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/voiceRegion.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/welcomeScreen.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/widget.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/widgetSettings.d.ts +0 -0
package/dist/cjs/helpers.cjs
DELETED
|
@@ -1,792 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "createBotHelpers", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return createBotHelpers;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
const _utils = require("@discordeno/utils");
|
|
12
|
-
function createBotHelpers(bot) {
|
|
13
|
-
return {
|
|
14
|
-
createAutomodRule: async (guildId, options, reason)=>{
|
|
15
|
-
return bot.transformers.automodRule(bot, (0, _utils.snakelize)(await bot.rest.createAutomodRule(guildId, options, reason)));
|
|
16
|
-
},
|
|
17
|
-
createChannel: async (guildId, options, reason)=>{
|
|
18
|
-
return bot.transformers.channel(bot, {
|
|
19
|
-
channel: (0, _utils.snakelize)(await bot.rest.createChannel(guildId, options, reason)),
|
|
20
|
-
guildId
|
|
21
|
-
});
|
|
22
|
-
},
|
|
23
|
-
createEmoji: async (guildId, options, reason)=>{
|
|
24
|
-
return bot.transformers.emoji(bot, (0, _utils.snakelize)(await bot.rest.createEmoji(guildId, options, reason)));
|
|
25
|
-
},
|
|
26
|
-
createApplicationEmoji: async (options)=>{
|
|
27
|
-
return bot.transformers.emoji(bot, (0, _utils.snakelize)(await bot.rest.createApplicationEmoji(options)));
|
|
28
|
-
},
|
|
29
|
-
createForumThread: async (channelId, options, reason)=>{
|
|
30
|
-
return bot.transformers.channel(bot, {
|
|
31
|
-
channel: (0, _utils.snakelize)(await bot.rest.createForumThread(channelId, options, reason))
|
|
32
|
-
});
|
|
33
|
-
},
|
|
34
|
-
createGlobalApplicationCommand: async (command, options)=>{
|
|
35
|
-
return bot.transformers.applicationCommand(bot, (0, _utils.snakelize)(await bot.rest.createGlobalApplicationCommand(command, options)));
|
|
36
|
-
},
|
|
37
|
-
createGuildApplicationCommand: async (command, guildId, options)=>{
|
|
38
|
-
return bot.transformers.applicationCommand(bot, (0, _utils.snakelize)(await bot.rest.createGuildApplicationCommand(command, guildId, options)));
|
|
39
|
-
},
|
|
40
|
-
createGuildSticker: async (guildId, options, reason)=>{
|
|
41
|
-
return bot.transformers.sticker(bot, (0, _utils.snakelize)(await bot.rest.createGuildSticker(guildId, options, reason)));
|
|
42
|
-
},
|
|
43
|
-
createGuildTemplate: async (guildId, options)=>{
|
|
44
|
-
return bot.transformers.template(bot, (0, _utils.snakelize)(await bot.rest.createGuildTemplate(guildId, options)));
|
|
45
|
-
},
|
|
46
|
-
createInvite: async (channelId, options, reason)=>{
|
|
47
|
-
return await bot.rest.createInvite(channelId, options, reason);
|
|
48
|
-
},
|
|
49
|
-
createRole: async (guildId, options, reason)=>{
|
|
50
|
-
return bot.transformers.role(bot, {
|
|
51
|
-
role: (0, _utils.snakelize)(await bot.rest.createRole(guildId, options, reason)),
|
|
52
|
-
guildId
|
|
53
|
-
});
|
|
54
|
-
},
|
|
55
|
-
createScheduledEvent: async (guildId, options, reason)=>{
|
|
56
|
-
return bot.transformers.scheduledEvent(bot, (0, _utils.snakelize)(await bot.rest.createScheduledEvent(guildId, options, reason)));
|
|
57
|
-
},
|
|
58
|
-
createStageInstance: async (options, reason)=>{
|
|
59
|
-
return bot.transformers.stageInstance(bot, (0, _utils.snakelize)(await bot.rest.createStageInstance(options, reason)));
|
|
60
|
-
},
|
|
61
|
-
createWebhook: async (channelId, options, reason)=>{
|
|
62
|
-
return bot.transformers.webhook(bot, (0, _utils.snakelize)(await bot.rest.createWebhook(channelId, options, reason)));
|
|
63
|
-
},
|
|
64
|
-
editApplicationCommandPermissions: async (guildId, commandId, bearerToken, options)=>{
|
|
65
|
-
return bot.transformers.applicationCommandPermission(bot, (0, _utils.snakelize)(await bot.rest.editApplicationCommandPermissions(guildId, commandId, bearerToken, options)));
|
|
66
|
-
},
|
|
67
|
-
editAutomodRule: async (guildId, ruleId, options, reason)=>{
|
|
68
|
-
return bot.transformers.automodRule(bot, (0, _utils.snakelize)(await bot.rest.editAutomodRule(guildId, ruleId, options, reason)));
|
|
69
|
-
},
|
|
70
|
-
editBotProfile: async (options)=>{
|
|
71
|
-
return bot.transformers.user(bot, (0, _utils.snakelize)(await bot.rest.editBotProfile(options)));
|
|
72
|
-
},
|
|
73
|
-
editChannel: async (channelId, options, reason)=>{
|
|
74
|
-
return bot.transformers.channel(bot, {
|
|
75
|
-
channel: (0, _utils.snakelize)(await bot.rest.editChannel(channelId, options, reason))
|
|
76
|
-
});
|
|
77
|
-
},
|
|
78
|
-
editEmoji: async (guildId, id, options, reason)=>{
|
|
79
|
-
return bot.transformers.emoji(bot, (0, _utils.snakelize)(await bot.rest.editEmoji(guildId, id, options, reason)));
|
|
80
|
-
},
|
|
81
|
-
editApplicationEmoji: async (id, options)=>{
|
|
82
|
-
return bot.transformers.emoji(bot, (0, _utils.snakelize)(await bot.rest.editApplicationEmoji(id, options)));
|
|
83
|
-
},
|
|
84
|
-
editFollowupMessage: async (token, messageId, options)=>{
|
|
85
|
-
return bot.transformers.message(bot, {
|
|
86
|
-
message: (0, _utils.snakelize)(await bot.rest.editFollowupMessage(token, messageId, options)),
|
|
87
|
-
shardId: 0
|
|
88
|
-
});
|
|
89
|
-
},
|
|
90
|
-
editGlobalApplicationCommand: async (commandId, options)=>{
|
|
91
|
-
return bot.transformers.applicationCommand(bot, (0, _utils.snakelize)(await bot.rest.editGlobalApplicationCommand(commandId, options)));
|
|
92
|
-
},
|
|
93
|
-
editGuild: async (guildId, options, reason)=>{
|
|
94
|
-
return bot.transformers.guild(bot, {
|
|
95
|
-
guild: (0, _utils.snakelize)(await bot.rest.editGuild(guildId, options, reason)),
|
|
96
|
-
shardId: 0
|
|
97
|
-
});
|
|
98
|
-
},
|
|
99
|
-
editGuildApplicationCommand: async (commandId, guildId, options)=>{
|
|
100
|
-
return bot.transformers.applicationCommand(bot, (0, _utils.snakelize)(await bot.rest.editGuildApplicationCommand(commandId, guildId, options)));
|
|
101
|
-
},
|
|
102
|
-
editGuildSticker: async (guildId, stickerId, options, reason)=>{
|
|
103
|
-
return bot.transformers.sticker(bot, (0, _utils.snakelize)(await bot.rest.editGuildSticker(guildId, stickerId, options, reason)));
|
|
104
|
-
},
|
|
105
|
-
editGuildTemplate: async (guildId, templateCode, options)=>{
|
|
106
|
-
return bot.transformers.template(bot, (0, _utils.snakelize)(await bot.rest.editGuildTemplate(guildId, templateCode, options)));
|
|
107
|
-
},
|
|
108
|
-
editMessage: async (channelId, messageId, options)=>{
|
|
109
|
-
return bot.transformers.message(bot, {
|
|
110
|
-
message: (0, _utils.snakelize)(await bot.rest.editMessage(channelId, messageId, options)),
|
|
111
|
-
shardId: 0
|
|
112
|
-
});
|
|
113
|
-
},
|
|
114
|
-
editOriginalInteractionResponse: async (token, options)=>{
|
|
115
|
-
return bot.transformers.message(bot, {
|
|
116
|
-
message: (0, _utils.snakelize)(await bot.rest.editOriginalInteractionResponse(token, options)),
|
|
117
|
-
shardId: 0
|
|
118
|
-
});
|
|
119
|
-
},
|
|
120
|
-
editRole: async (guildId, roleId, options, reason)=>{
|
|
121
|
-
return bot.transformers.role(bot, {
|
|
122
|
-
role: (0, _utils.snakelize)(await bot.rest.editRole(guildId, roleId, options, reason)),
|
|
123
|
-
guildId
|
|
124
|
-
});
|
|
125
|
-
},
|
|
126
|
-
editRolePositions: async (guildId, options, reason)=>{
|
|
127
|
-
return (0, _utils.snakelize)(await bot.rest.editRolePositions(guildId, options, reason)).map((role)=>bot.transformers.role(bot, {
|
|
128
|
-
role,
|
|
129
|
-
guildId
|
|
130
|
-
}));
|
|
131
|
-
},
|
|
132
|
-
editScheduledEvent: async (guildId, eventId, options, reason)=>{
|
|
133
|
-
return bot.transformers.scheduledEvent(bot, (0, _utils.snakelize)(await bot.rest.editScheduledEvent(guildId, eventId, options, reason)));
|
|
134
|
-
},
|
|
135
|
-
editStageInstance: async (channelId, topic, reason)=>{
|
|
136
|
-
return bot.transformers.stageInstance(bot, (0, _utils.snakelize)(await bot.rest.editStageInstance(channelId, topic, reason)));
|
|
137
|
-
},
|
|
138
|
-
editWebhook: async (webhookId, options, reason)=>{
|
|
139
|
-
return bot.transformers.webhook(bot, (0, _utils.snakelize)(await bot.rest.editWebhook(webhookId, options, reason)));
|
|
140
|
-
},
|
|
141
|
-
editWebhookMessage: async (webhookId, token, messageId, options)=>{
|
|
142
|
-
return bot.transformers.message(bot, {
|
|
143
|
-
message: (0, _utils.snakelize)(await bot.rest.editWebhookMessage(webhookId, token, messageId, options)),
|
|
144
|
-
shardId: 0
|
|
145
|
-
});
|
|
146
|
-
},
|
|
147
|
-
editWebhookWithToken: async (webhookId, token, options)=>{
|
|
148
|
-
return bot.transformers.webhook(bot, (0, _utils.snakelize)(await bot.rest.editWebhookWithToken(webhookId, token, options)));
|
|
149
|
-
},
|
|
150
|
-
editWelcomeScreen: async (guildId, options, reason)=>{
|
|
151
|
-
return bot.transformers.welcomeScreen(bot, (0, _utils.snakelize)(await bot.rest.editWelcomeScreen(guildId, options, reason)));
|
|
152
|
-
},
|
|
153
|
-
editWidgetSettings: async (guildId, options, reason)=>{
|
|
154
|
-
return bot.transformers.widgetSettings(bot, (0, _utils.snakelize)(await bot.rest.editWidgetSettings(guildId, options, reason)));
|
|
155
|
-
},
|
|
156
|
-
executeWebhook: async (webhookId, token, options)=>{
|
|
157
|
-
const result = await bot.rest.executeWebhook(webhookId, token, options);
|
|
158
|
-
if (!result) return;
|
|
159
|
-
return bot.transformers.message(bot, {
|
|
160
|
-
message: (0, _utils.snakelize)(result),
|
|
161
|
-
shardId: 0
|
|
162
|
-
});
|
|
163
|
-
},
|
|
164
|
-
followAnnouncement: async (sourceChannelId, targetChannelId)=>{
|
|
165
|
-
return await bot.rest.followAnnouncement(sourceChannelId, targetChannelId);
|
|
166
|
-
},
|
|
167
|
-
getActiveThreads: async (guildId)=>{
|
|
168
|
-
const result = await bot.rest.getActiveThreads(guildId);
|
|
169
|
-
return {
|
|
170
|
-
threads: result.threads.map((thread)=>bot.transformers.channel(bot, {
|
|
171
|
-
guildId,
|
|
172
|
-
channel: (0, _utils.snakelize)(thread)
|
|
173
|
-
})),
|
|
174
|
-
members: result.members.map((member)=>bot.transformers.threadMember(bot, (0, _utils.snakelize)(member)))
|
|
175
|
-
};
|
|
176
|
-
},
|
|
177
|
-
getApplicationInfo: async ()=>{
|
|
178
|
-
return bot.transformers.application(bot, {
|
|
179
|
-
application: (0, _utils.snakelize)(await bot.rest.getApplicationInfo()),
|
|
180
|
-
shardId: 0
|
|
181
|
-
});
|
|
182
|
-
},
|
|
183
|
-
editApplicationInfo: async (body)=>{
|
|
184
|
-
return bot.transformers.application(bot, {
|
|
185
|
-
application: (0, _utils.snakelize)(await bot.rest.editApplicationInfo(body)),
|
|
186
|
-
shardId: 0
|
|
187
|
-
});
|
|
188
|
-
},
|
|
189
|
-
getCurrentAuthenticationInfo: async (bearerToken)=>{
|
|
190
|
-
return await bot.rest.getCurrentAuthenticationInfo(bearerToken);
|
|
191
|
-
},
|
|
192
|
-
exchangeToken: async (clientId, clientSecret, options)=>{
|
|
193
|
-
return await bot.rest.exchangeToken(clientId, clientSecret, options);
|
|
194
|
-
},
|
|
195
|
-
revokeToken: async (clientId, clientSecret, options)=>{
|
|
196
|
-
return await bot.rest.revokeToken(clientId, clientSecret, options);
|
|
197
|
-
},
|
|
198
|
-
getApplicationCommandPermission: async (guildId, commandId, options)=>{
|
|
199
|
-
const res = await bot.rest.getApplicationCommandPermission(guildId, commandId, options);
|
|
200
|
-
const snakedRes = (0, _utils.snakelize)(res);
|
|
201
|
-
return bot.transformers.applicationCommandPermission(bot, snakedRes);
|
|
202
|
-
},
|
|
203
|
-
getApplicationCommandPermissions: async (guildId, options)=>{
|
|
204
|
-
return (await bot.rest.getApplicationCommandPermissions(guildId, options)).map((res)=>bot.transformers.applicationCommandPermission(bot, (0, _utils.snakelize)(res)));
|
|
205
|
-
},
|
|
206
|
-
getAuditLog: async (guildId, options)=>{
|
|
207
|
-
return await bot.rest.getAuditLog(guildId, options);
|
|
208
|
-
},
|
|
209
|
-
getAutomodRule: async (guildId, ruleId)=>{
|
|
210
|
-
return bot.transformers.automodRule(bot, (0, _utils.snakelize)(await bot.rest.getAutomodRule(guildId, ruleId)));
|
|
211
|
-
},
|
|
212
|
-
getAutomodRules: async (guildId)=>{
|
|
213
|
-
return (await bot.rest.getAutomodRules(guildId)).map((res)=>bot.transformers.automodRule(bot, (0, _utils.snakelize)(res)));
|
|
214
|
-
},
|
|
215
|
-
getAvailableVoiceRegions: async ()=>{
|
|
216
|
-
return (await bot.rest.getAvailableVoiceRegions()).map((res)=>bot.transformers.voiceRegion(bot, (0, _utils.snakelize)(res)));
|
|
217
|
-
},
|
|
218
|
-
getBan: async (guildId, userId)=>{
|
|
219
|
-
return await bot.rest.getBan(guildId, userId);
|
|
220
|
-
},
|
|
221
|
-
getBans: async (guildId, options)=>{
|
|
222
|
-
return await bot.rest.getBans(guildId, options);
|
|
223
|
-
},
|
|
224
|
-
getChannel: async (channelId)=>{
|
|
225
|
-
return bot.transformers.channel(bot, {
|
|
226
|
-
channel: (0, _utils.snakelize)(await bot.rest.getChannel(channelId))
|
|
227
|
-
});
|
|
228
|
-
},
|
|
229
|
-
getChannelInvites: async (channelId)=>{
|
|
230
|
-
return await bot.rest.getChannelInvites(channelId);
|
|
231
|
-
// return (await bot.rest.getChannelInvites(channelId)).map((res) => bot.transformers.invite(bot, snakelize(res)))
|
|
232
|
-
},
|
|
233
|
-
getChannels: async (guildId)=>{
|
|
234
|
-
return (await bot.rest.getChannels(guildId)).map((res)=>bot.transformers.channel(bot, {
|
|
235
|
-
channel: (0, _utils.snakelize)(res),
|
|
236
|
-
guildId
|
|
237
|
-
}));
|
|
238
|
-
},
|
|
239
|
-
getChannelWebhooks: async (channelId)=>{
|
|
240
|
-
return (await bot.rest.getChannelWebhooks(channelId)).map((res)=>bot.transformers.webhook(bot, (0, _utils.snakelize)(res)));
|
|
241
|
-
},
|
|
242
|
-
getDmChannel: async (userId)=>{
|
|
243
|
-
return bot.transformers.channel(bot, {
|
|
244
|
-
channel: (0, _utils.snakelize)(await bot.rest.getDmChannel(userId))
|
|
245
|
-
});
|
|
246
|
-
},
|
|
247
|
-
getGroupDmChannel: async (options)=>{
|
|
248
|
-
return bot.transformers.channel(bot, {
|
|
249
|
-
channel: (0, _utils.snakelize)(await bot.rest.getGroupDmChannel(options))
|
|
250
|
-
});
|
|
251
|
-
},
|
|
252
|
-
getEmoji: async (guildId, emojiId)=>{
|
|
253
|
-
return bot.transformers.emoji(bot, (0, _utils.snakelize)(await bot.rest.getEmoji(guildId, emojiId)));
|
|
254
|
-
},
|
|
255
|
-
getApplicationEmoji: async (emojiId)=>{
|
|
256
|
-
return bot.transformers.emoji(bot, (0, _utils.snakelize)(await bot.rest.getApplicationEmoji(emojiId)));
|
|
257
|
-
},
|
|
258
|
-
getEmojis: async (guildId)=>{
|
|
259
|
-
return (await bot.rest.getEmojis(guildId)).map((res)=>bot.transformers.emoji(bot, (0, _utils.snakelize)(res)));
|
|
260
|
-
},
|
|
261
|
-
getApplicationEmojis: async ()=>{
|
|
262
|
-
const res = await bot.rest.getApplicationEmojis();
|
|
263
|
-
return {
|
|
264
|
-
items: res.items.map((item)=>bot.transformers.emoji(bot, (0, _utils.snakelize)(item)))
|
|
265
|
-
};
|
|
266
|
-
},
|
|
267
|
-
getFollowupMessage: async (token, messageId)=>{
|
|
268
|
-
return bot.transformers.message(bot, {
|
|
269
|
-
message: (0, _utils.snakelize)(await bot.rest.getFollowupMessage(token, messageId)),
|
|
270
|
-
shardId: 0
|
|
271
|
-
});
|
|
272
|
-
},
|
|
273
|
-
getGatewayBot: async ()=>{
|
|
274
|
-
return bot.transformers.gatewayBot(bot, (0, _utils.snakelize)(await bot.rest.getGatewayBot()));
|
|
275
|
-
},
|
|
276
|
-
getGlobalApplicationCommand: async (commandId)=>{
|
|
277
|
-
return bot.transformers.applicationCommand(bot, (0, _utils.snakelize)(await bot.rest.getGlobalApplicationCommand(commandId)));
|
|
278
|
-
},
|
|
279
|
-
getGlobalApplicationCommands: async ()=>{
|
|
280
|
-
return (await bot.rest.getGlobalApplicationCommands()).map((res)=>bot.transformers.applicationCommand(bot, (0, _utils.snakelize)(res)));
|
|
281
|
-
},
|
|
282
|
-
getGuild: async (guildId, options)=>{
|
|
283
|
-
return bot.transformers.guild(bot, {
|
|
284
|
-
guild: (0, _utils.snakelize)(await bot.rest.getGuild(guildId, options)),
|
|
285
|
-
shardId: 0
|
|
286
|
-
});
|
|
287
|
-
},
|
|
288
|
-
getGuilds: async (bearerToken, options)=>{
|
|
289
|
-
return (await bot.rest.getGuilds(bearerToken, options)).map((res)=>// @ts-expect-error getGuilds returns partial guilds
|
|
290
|
-
bot.transformers.guild(bot, {
|
|
291
|
-
guild: (0, _utils.snakelize)(res),
|
|
292
|
-
shardId: 0
|
|
293
|
-
}));
|
|
294
|
-
},
|
|
295
|
-
getGuildApplicationCommand: async (commandId, guildId)=>{
|
|
296
|
-
return bot.transformers.applicationCommand(bot, (0, _utils.snakelize)(await bot.rest.getGuildApplicationCommand(commandId, guildId)));
|
|
297
|
-
},
|
|
298
|
-
getGuildApplicationCommands: async (guildId)=>{
|
|
299
|
-
return (await bot.rest.getGuildApplicationCommands(guildId)).map((res)=>bot.transformers.applicationCommand(bot, (0, _utils.snakelize)(res)));
|
|
300
|
-
},
|
|
301
|
-
getGuildPreview: async (guildId)=>{
|
|
302
|
-
return await bot.rest.getGuildPreview(guildId);
|
|
303
|
-
// return bot.transformers.xxx(bot, snakelize(await bot.rest.getGuildPreview(guildId)))
|
|
304
|
-
},
|
|
305
|
-
getGuildSticker: async (guildId, stickerId)=>{
|
|
306
|
-
return bot.transformers.sticker(bot, (0, _utils.snakelize)(await bot.rest.getGuildSticker(guildId, stickerId)));
|
|
307
|
-
},
|
|
308
|
-
getGuildStickers: async (guildId)=>{
|
|
309
|
-
return (await bot.rest.getGuildStickers(guildId)).map((res)=>bot.transformers.sticker(bot, (0, _utils.snakelize)(res)));
|
|
310
|
-
},
|
|
311
|
-
getGuildTemplate: async (templateCode)=>{
|
|
312
|
-
return bot.transformers.template(bot, (0, _utils.snakelize)(await bot.rest.getGuildTemplate(templateCode)));
|
|
313
|
-
},
|
|
314
|
-
getGuildTemplates: async (guildId)=>{
|
|
315
|
-
return (await bot.rest.getGuildTemplates(guildId)).map((res)=>bot.transformers.template(bot, (0, _utils.snakelize)(res)));
|
|
316
|
-
},
|
|
317
|
-
getGuildWebhooks: async (guildId)=>{
|
|
318
|
-
return (await bot.rest.getGuildWebhooks(guildId)).map((res)=>bot.transformers.webhook(bot, (0, _utils.snakelize)(res)));
|
|
319
|
-
},
|
|
320
|
-
getIntegrations: async (guildId)=>{
|
|
321
|
-
return (await bot.rest.getIntegrations(guildId)).map((res)=>bot.transformers.integration(bot, (0, _utils.snakelize)({
|
|
322
|
-
...res,
|
|
323
|
-
guildId: guildId.toString()
|
|
324
|
-
})));
|
|
325
|
-
},
|
|
326
|
-
getInvite: async (inviteCode, options)=>{
|
|
327
|
-
return bot.transformers.invite(bot, {
|
|
328
|
-
invite: (0, _utils.snakelize)(await bot.rest.getInvite(inviteCode, options)),
|
|
329
|
-
shardId: 0
|
|
330
|
-
});
|
|
331
|
-
},
|
|
332
|
-
getInvites: async (guildId)=>{
|
|
333
|
-
return (await bot.rest.getInvites(guildId)).map((res)=>bot.transformers.invite(bot, {
|
|
334
|
-
invite: (0, _utils.snakelize)(res),
|
|
335
|
-
shardId: 0
|
|
336
|
-
}));
|
|
337
|
-
},
|
|
338
|
-
getMessage: async (channelId, messageId)=>{
|
|
339
|
-
return bot.transformers.message(bot, {
|
|
340
|
-
message: (0, _utils.snakelize)(await bot.rest.getMessage(channelId, messageId)),
|
|
341
|
-
shardId: 0
|
|
342
|
-
});
|
|
343
|
-
},
|
|
344
|
-
getMessages: async (channelId, options)=>{
|
|
345
|
-
return (await bot.rest.getMessages(channelId, options)).map((res)=>bot.transformers.message(bot, {
|
|
346
|
-
message: (0, _utils.snakelize)(res),
|
|
347
|
-
shardId: 0
|
|
348
|
-
}));
|
|
349
|
-
},
|
|
350
|
-
getStickerPack: async (stickerPackId)=>{
|
|
351
|
-
return bot.transformers.stickerPack(bot, (0, _utils.snakelize)(await bot.rest.getStickerPack(stickerPackId)));
|
|
352
|
-
},
|
|
353
|
-
getStickerPacks: async ()=>{
|
|
354
|
-
return (await bot.rest.getStickerPacks()).map((res)=>bot.transformers.stickerPack(bot, (0, _utils.snakelize)(res)));
|
|
355
|
-
},
|
|
356
|
-
getOriginalInteractionResponse: async (token)=>{
|
|
357
|
-
return bot.transformers.message(bot, {
|
|
358
|
-
message: (0, _utils.snakelize)(await bot.rest.getOriginalInteractionResponse(token)),
|
|
359
|
-
shardId: 0
|
|
360
|
-
});
|
|
361
|
-
},
|
|
362
|
-
getChannelPins: async (channelId, options)=>{
|
|
363
|
-
const res = (0, _utils.snakelize)(await bot.rest.getChannelPins(channelId, options));
|
|
364
|
-
return {
|
|
365
|
-
hasMore: res.has_more,
|
|
366
|
-
items: res.items.map((item)=>bot.transformers.messagePin(bot, item))
|
|
367
|
-
};
|
|
368
|
-
},
|
|
369
|
-
getPinnedMessages: async (channelId)=>{
|
|
370
|
-
return (await bot.rest.getPinnedMessages(channelId)).map((res)=>bot.transformers.message(bot, {
|
|
371
|
-
message: (0, _utils.snakelize)(res),
|
|
372
|
-
shardId: 0
|
|
373
|
-
}));
|
|
374
|
-
},
|
|
375
|
-
getPrivateArchivedThreads: async (channelId, options)=>{
|
|
376
|
-
return await bot.rest.getPrivateArchivedThreads(channelId, options);
|
|
377
|
-
},
|
|
378
|
-
getPrivateJoinedArchivedThreads: async (channelId, options)=>{
|
|
379
|
-
return await bot.rest.getPrivateJoinedArchivedThreads(channelId, options);
|
|
380
|
-
},
|
|
381
|
-
getPruneCount: async (guildId, options)=>{
|
|
382
|
-
return await bot.rest.getPruneCount(guildId, options);
|
|
383
|
-
},
|
|
384
|
-
getPublicArchivedThreads: async (channelId, options)=>{
|
|
385
|
-
return await bot.rest.getPublicArchivedThreads(channelId, options);
|
|
386
|
-
},
|
|
387
|
-
getRoles: async (guildId)=>{
|
|
388
|
-
return (0, _utils.snakelize)(await bot.rest.getRoles(guildId)).map((role)=>bot.transformers.role(bot, {
|
|
389
|
-
role,
|
|
390
|
-
guildId
|
|
391
|
-
}));
|
|
392
|
-
},
|
|
393
|
-
getRole: async (guildId, roleId)=>{
|
|
394
|
-
return bot.transformers.role(bot, {
|
|
395
|
-
role: (0, _utils.snakelize)(await bot.rest.getRole(guildId, roleId)),
|
|
396
|
-
guildId
|
|
397
|
-
});
|
|
398
|
-
},
|
|
399
|
-
getScheduledEvent: async (guildId, eventId, options)=>{
|
|
400
|
-
return bot.transformers.scheduledEvent(bot, (0, _utils.snakelize)(await bot.rest.getScheduledEvent(guildId, eventId, options)));
|
|
401
|
-
},
|
|
402
|
-
getScheduledEvents: async (guildId, options)=>{
|
|
403
|
-
return (await bot.rest.getScheduledEvents(guildId, options)).map((res)=>bot.transformers.scheduledEvent(bot, (0, _utils.snakelize)(res)));
|
|
404
|
-
},
|
|
405
|
-
getScheduledEventUsers: async (guildId, eventId, options)=>{
|
|
406
|
-
return (await bot.rest.getScheduledEventUsers(guildId, eventId, options)).map((u)=>{
|
|
407
|
-
return {
|
|
408
|
-
user: bot.transformers.user(bot, (0, _utils.snakelize)(u.user)),
|
|
409
|
-
member: u.member && bot.transformers.member(bot, (0, _utils.snakelize)(u.member), guildId, bot.transformers.snowflake(u.user.id))
|
|
410
|
-
};
|
|
411
|
-
});
|
|
412
|
-
},
|
|
413
|
-
getSessionInfo: async ()=>{
|
|
414
|
-
return bot.transformers.gatewayBot(bot, (0, _utils.snakelize)(await bot.rest.getSessionInfo()));
|
|
415
|
-
},
|
|
416
|
-
getStageInstance: async (channelId)=>{
|
|
417
|
-
return bot.transformers.stageInstance(bot, (0, _utils.snakelize)(await bot.rest.getStageInstance(channelId)));
|
|
418
|
-
},
|
|
419
|
-
getOwnVoiceState: async (guildId)=>{
|
|
420
|
-
return bot.transformers.voiceState(bot, {
|
|
421
|
-
guildId,
|
|
422
|
-
voiceState: (0, _utils.snakelize)(await bot.rest.getOwnVoiceState(guildId))
|
|
423
|
-
});
|
|
424
|
-
},
|
|
425
|
-
getUserVoiceState: async (guildId, userId)=>{
|
|
426
|
-
return bot.transformers.voiceState(bot, {
|
|
427
|
-
guildId,
|
|
428
|
-
voiceState: (0, _utils.snakelize)(await bot.rest.getUserVoiceState(guildId, userId))
|
|
429
|
-
});
|
|
430
|
-
},
|
|
431
|
-
getSticker: async (stickerId)=>{
|
|
432
|
-
return bot.transformers.sticker(bot, (0, _utils.snakelize)(await bot.rest.getSticker(stickerId)));
|
|
433
|
-
},
|
|
434
|
-
getThreadMember: async (channelId, userId, options)=>{
|
|
435
|
-
return bot.transformers.threadMember(bot, (0, _utils.snakelize)(await bot.rest.getThreadMember(channelId, userId, options)));
|
|
436
|
-
},
|
|
437
|
-
getThreadMembers: async (channelId, options)=>{
|
|
438
|
-
return (await bot.rest.getThreadMembers(channelId, options)).map((res)=>bot.transformers.threadMember(bot, (0, _utils.snakelize)(res)));
|
|
439
|
-
},
|
|
440
|
-
getReactions: async (channelId, messageId, reaction, options)=>{
|
|
441
|
-
return (await bot.rest.getReactions(channelId, messageId, reaction, options)).map((res)=>bot.transformers.user(bot, (0, _utils.snakelize)(res)));
|
|
442
|
-
},
|
|
443
|
-
getUser: async (id)=>{
|
|
444
|
-
return bot.transformers.user(bot, (0, _utils.snakelize)(await bot.rest.getUser(id)));
|
|
445
|
-
},
|
|
446
|
-
getCurrentUser: async (bearerToken)=>{
|
|
447
|
-
return bot.transformers.user(bot, (0, _utils.snakelize)(await bot.rest.getCurrentUser(bearerToken)));
|
|
448
|
-
},
|
|
449
|
-
getUserConnections: async (bearerToken)=>{
|
|
450
|
-
return await bot.rest.getUserConnections(bearerToken);
|
|
451
|
-
},
|
|
452
|
-
getUserApplicationRoleConnection: async (bearerToken, applicationId)=>{
|
|
453
|
-
return await bot.rest.getUserApplicationRoleConnection(bearerToken, applicationId);
|
|
454
|
-
},
|
|
455
|
-
getVanityUrl: async (guildId)=>{
|
|
456
|
-
return await bot.rest.getVanityUrl(guildId);
|
|
457
|
-
},
|
|
458
|
-
getVoiceRegions: async (guildId)=>{
|
|
459
|
-
return (await bot.rest.getVoiceRegions(guildId)).map((res)=>bot.transformers.voiceRegion(bot, (0, _utils.snakelize)(res)));
|
|
460
|
-
},
|
|
461
|
-
getWebhook: async (webhookId)=>{
|
|
462
|
-
return bot.transformers.webhook(bot, (0, _utils.snakelize)(await bot.rest.getWebhook(webhookId)));
|
|
463
|
-
},
|
|
464
|
-
getWebhookMessage: async (webhookId, token, messageId, options)=>{
|
|
465
|
-
return bot.transformers.message(bot, {
|
|
466
|
-
message: (0, _utils.snakelize)(await bot.rest.getWebhookMessage(webhookId, token, messageId, options)),
|
|
467
|
-
shardId: 0
|
|
468
|
-
});
|
|
469
|
-
},
|
|
470
|
-
getWebhookWithToken: async (webhookId, token)=>{
|
|
471
|
-
return bot.transformers.webhook(bot, (0, _utils.snakelize)(await bot.rest.getWebhookWithToken(webhookId, token)));
|
|
472
|
-
},
|
|
473
|
-
getWelcomeScreen: async (guildId)=>{
|
|
474
|
-
return bot.transformers.welcomeScreen(bot, (0, _utils.snakelize)(await bot.rest.getWelcomeScreen(guildId)));
|
|
475
|
-
},
|
|
476
|
-
getWidget: async (guildId)=>{
|
|
477
|
-
return bot.transformers.widget(bot, (0, _utils.snakelize)(await bot.rest.getWidget(guildId)));
|
|
478
|
-
},
|
|
479
|
-
getWidgetSettings: async (guildId)=>{
|
|
480
|
-
return bot.transformers.widgetSettings(bot, (0, _utils.snakelize)(await bot.rest.getWidgetSettings(guildId)));
|
|
481
|
-
},
|
|
482
|
-
publishMessage: async (channelId, messageId)=>{
|
|
483
|
-
return bot.transformers.message(bot, {
|
|
484
|
-
message: (0, _utils.snakelize)(await bot.rest.publishMessage(channelId, messageId)),
|
|
485
|
-
shardId: 0
|
|
486
|
-
});
|
|
487
|
-
},
|
|
488
|
-
sendMessage: async (channelId, options)=>{
|
|
489
|
-
return bot.transformers.message(bot, {
|
|
490
|
-
message: (0, _utils.snakelize)(await bot.rest.sendMessage(channelId, options)),
|
|
491
|
-
shardId: 0
|
|
492
|
-
});
|
|
493
|
-
},
|
|
494
|
-
sendFollowupMessage: async (token, options)=>{
|
|
495
|
-
return bot.transformers.message(bot, {
|
|
496
|
-
message: (0, _utils.snakelize)(await bot.rest.sendFollowupMessage(token, options)),
|
|
497
|
-
shardId: 0
|
|
498
|
-
});
|
|
499
|
-
},
|
|
500
|
-
startThreadWithMessage: async (channelId, messageId, options, reason)=>{
|
|
501
|
-
return bot.transformers.channel(bot, {
|
|
502
|
-
channel: (0, _utils.snakelize)(await bot.rest.startThreadWithMessage(channelId, messageId, options, reason))
|
|
503
|
-
});
|
|
504
|
-
},
|
|
505
|
-
startThreadWithoutMessage: async (channelId, options, reason)=>{
|
|
506
|
-
return bot.transformers.channel(bot, {
|
|
507
|
-
channel: (0, _utils.snakelize)(await bot.rest.startThreadWithoutMessage(channelId, options, reason))
|
|
508
|
-
});
|
|
509
|
-
},
|
|
510
|
-
syncGuildTemplate: async (guildId)=>{
|
|
511
|
-
return bot.transformers.template(bot, (0, _utils.snakelize)(await bot.rest.syncGuildTemplate(guildId)));
|
|
512
|
-
},
|
|
513
|
-
upsertGlobalApplicationCommands: async (commands, options)=>{
|
|
514
|
-
return (await bot.rest.upsertGlobalApplicationCommands(commands, options)).map((res)=>bot.transformers.applicationCommand(bot, (0, _utils.snakelize)(res)));
|
|
515
|
-
},
|
|
516
|
-
upsertGuildApplicationCommands: async (guildId, commands, options)=>{
|
|
517
|
-
return (await bot.rest.upsertGuildApplicationCommands(guildId, commands, options)).map((res)=>bot.transformers.applicationCommand(bot, (0, _utils.snakelize)(res)));
|
|
518
|
-
},
|
|
519
|
-
editBotMember: async (guildId, options, reason)=>{
|
|
520
|
-
return bot.transformers.member(bot, (0, _utils.snakelize)(await bot.rest.editBotMember(guildId, options, reason)), guildId, bot.id);
|
|
521
|
-
},
|
|
522
|
-
editMember: async (guildId, userId, options, reason)=>{
|
|
523
|
-
return bot.transformers.member(bot, (0, _utils.snakelize)(await bot.rest.editMember(guildId, userId, options, reason)), guildId, userId);
|
|
524
|
-
},
|
|
525
|
-
getMember: async (guildId, userId)=>{
|
|
526
|
-
return bot.transformers.member(bot, (0, _utils.snakelize)(await bot.rest.getMember(guildId, userId)), guildId, userId);
|
|
527
|
-
},
|
|
528
|
-
getCurrentMember: async (guildId, bearerToken)=>{
|
|
529
|
-
const res = await bot.rest.getCurrentMember(guildId, bearerToken);
|
|
530
|
-
return bot.transformers.member(bot, (0, _utils.snakelize)(res), guildId, bot.transformers.snowflake(res.user.id));
|
|
531
|
-
},
|
|
532
|
-
getMembers: async (guildId, options)=>{
|
|
533
|
-
return (await bot.rest.getMembers(guildId, options)).map((res)=>bot.transformers.member(bot, (0, _utils.snakelize)(res), guildId, bot.transformers.snowflake(res.user.id)));
|
|
534
|
-
},
|
|
535
|
-
pruneMembers: async (guildId, options, reason)=>{
|
|
536
|
-
return await bot.rest.pruneMembers(guildId, options, reason);
|
|
537
|
-
},
|
|
538
|
-
searchMembers: async (guildId, query, options)=>{
|
|
539
|
-
return (await bot.rest.searchMembers(guildId, query, options)).map((res)=>bot.transformers.member(bot, (0, _utils.snakelize)(res), guildId, bot.transformers.snowflake(res.user.id)));
|
|
540
|
-
},
|
|
541
|
-
bulkBanMembers: async (guildId, options, reason)=>{
|
|
542
|
-
const res = await bot.rest.bulkBanMembers(guildId, options, reason);
|
|
543
|
-
return {
|
|
544
|
-
bannedUsers: res.bannedUsers.map((x)=>bot.transformers.snowflake(x)),
|
|
545
|
-
failedUsers: res.failedUsers.map((x)=>bot.transformers.snowflake(x))
|
|
546
|
-
};
|
|
547
|
-
},
|
|
548
|
-
getApplicationActivityInstance: async (applicationId, instanceId)=>{
|
|
549
|
-
return await bot.rest.getApplicationActivityInstance(applicationId, instanceId);
|
|
550
|
-
},
|
|
551
|
-
listApplicationRoleConnectionsMetadataRecords: async (applicationId)=>{
|
|
552
|
-
return await bot.rest.listApplicationRoleConnectionsMetadataRecords(applicationId);
|
|
553
|
-
},
|
|
554
|
-
updateApplicationRoleConnectionsMetadataRecords: async (applicationId, options)=>{
|
|
555
|
-
return await bot.rest.updateApplicationRoleConnectionsMetadataRecords(applicationId, options);
|
|
556
|
-
},
|
|
557
|
-
createLobby: async (options)=>{
|
|
558
|
-
return bot.transformers.lobby(bot, (0, _utils.snakelize)(await bot.rest.createLobby(options)));
|
|
559
|
-
},
|
|
560
|
-
getLobby: async (lobbyId)=>{
|
|
561
|
-
return bot.transformers.lobby(bot, (0, _utils.snakelize)(await bot.rest.getLobby(lobbyId)));
|
|
562
|
-
},
|
|
563
|
-
modifyLobby: async (lobbyId, options)=>{
|
|
564
|
-
return bot.transformers.lobby(bot, (0, _utils.snakelize)(await bot.rest.modifyLobby(lobbyId, options)));
|
|
565
|
-
},
|
|
566
|
-
addMemberToLobby: async (lobbyId, userId, options)=>{
|
|
567
|
-
return bot.transformers.lobbyMember(bot, (0, _utils.snakelize)(await bot.rest.addMemberToLobby(lobbyId, userId, options)));
|
|
568
|
-
},
|
|
569
|
-
linkChannelToLobby: async (lobbyId, bearerToken, options)=>{
|
|
570
|
-
return bot.transformers.lobby(bot, (0, _utils.snakelize)(await bot.rest.linkChannelToLobby(lobbyId, bearerToken, options)));
|
|
571
|
-
},
|
|
572
|
-
unlinkChannelToLobby: async (lobbyId, bearerToken)=>{
|
|
573
|
-
return bot.transformers.lobby(bot, (0, _utils.snakelize)(await bot.rest.unlinkChannelToLobby(lobbyId, bearerToken)));
|
|
574
|
-
},
|
|
575
|
-
// All useless void return functions here
|
|
576
|
-
addReaction: async (channelId, messageId, reaction)=>{
|
|
577
|
-
return await bot.rest.addReaction(channelId, messageId, reaction);
|
|
578
|
-
},
|
|
579
|
-
addReactions: async (channelId, messageId, reactions, ordered)=>{
|
|
580
|
-
return await bot.rest.addReactions(channelId, messageId, reactions, ordered);
|
|
581
|
-
},
|
|
582
|
-
addRole: async (guildId, userId, roleId, reason)=>{
|
|
583
|
-
return await bot.rest.addRole(guildId, userId, roleId, reason);
|
|
584
|
-
},
|
|
585
|
-
addThreadMember: async (channelId, userId)=>{
|
|
586
|
-
return await bot.rest.addThreadMember(channelId, userId);
|
|
587
|
-
},
|
|
588
|
-
addDmRecipient: async (channelId, userId, options)=>{
|
|
589
|
-
return await bot.rest.addDmRecipient(channelId, userId, options);
|
|
590
|
-
},
|
|
591
|
-
addGuildMember: async (guildId, userId, options)=>{
|
|
592
|
-
return await bot.rest.addGuildMember(guildId, userId, options);
|
|
593
|
-
},
|
|
594
|
-
deleteAutomodRule: async (guildId, ruleId, reason)=>{
|
|
595
|
-
return await bot.rest.deleteAutomodRule(guildId, ruleId, reason);
|
|
596
|
-
},
|
|
597
|
-
deleteChannel: async (channelId, reason)=>{
|
|
598
|
-
return await bot.rest.deleteChannel(channelId, reason);
|
|
599
|
-
},
|
|
600
|
-
deleteChannelPermissionOverride: async (channelId, overwriteId, reason)=>{
|
|
601
|
-
return await bot.rest.deleteChannelPermissionOverride(channelId, overwriteId, reason);
|
|
602
|
-
},
|
|
603
|
-
deleteEmoji: async (guildId, id, reason)=>{
|
|
604
|
-
return await bot.rest.deleteEmoji(guildId, id, reason);
|
|
605
|
-
},
|
|
606
|
-
deleteApplicationEmoji: async (id)=>{
|
|
607
|
-
return await bot.rest.deleteApplicationEmoji(id);
|
|
608
|
-
},
|
|
609
|
-
deleteFollowupMessage: async (token, messageId)=>{
|
|
610
|
-
return await bot.rest.deleteFollowupMessage(token, messageId);
|
|
611
|
-
},
|
|
612
|
-
deleteGlobalApplicationCommand: async (commandId)=>{
|
|
613
|
-
return await bot.rest.deleteGlobalApplicationCommand(commandId);
|
|
614
|
-
},
|
|
615
|
-
deleteGuildApplicationCommand: async (commandId, guildId)=>{
|
|
616
|
-
return await bot.rest.deleteGuildApplicationCommand(commandId, guildId);
|
|
617
|
-
},
|
|
618
|
-
deleteGuildSticker: async (guildId, stickerId, reason)=>{
|
|
619
|
-
return await bot.rest.deleteGuildSticker(guildId, stickerId, reason);
|
|
620
|
-
},
|
|
621
|
-
deleteGuildTemplate: async (guildId, templateCode)=>{
|
|
622
|
-
return await bot.rest.deleteGuildTemplate(guildId, templateCode);
|
|
623
|
-
},
|
|
624
|
-
deleteIntegration: async (guildId, integrationId, reason)=>{
|
|
625
|
-
return await bot.rest.deleteIntegration(guildId, integrationId, reason);
|
|
626
|
-
},
|
|
627
|
-
deleteInvite: async (inviteCode, reason)=>{
|
|
628
|
-
return await bot.rest.deleteInvite(inviteCode, reason);
|
|
629
|
-
},
|
|
630
|
-
deleteMessage: async (channelId, messageId, reason)=>{
|
|
631
|
-
return await bot.rest.deleteMessage(channelId, messageId, reason);
|
|
632
|
-
},
|
|
633
|
-
deleteMessages: async (channelId, messageIds, reason)=>{
|
|
634
|
-
return await bot.rest.deleteMessages(channelId, messageIds, reason);
|
|
635
|
-
},
|
|
636
|
-
deleteOriginalInteractionResponse: async (token)=>{
|
|
637
|
-
return await bot.rest.deleteOriginalInteractionResponse(token);
|
|
638
|
-
},
|
|
639
|
-
deleteOwnReaction: async (channelId, messageId, reaction)=>{
|
|
640
|
-
return await bot.rest.deleteOwnReaction(channelId, messageId, reaction);
|
|
641
|
-
},
|
|
642
|
-
deleteReactionsAll: async (channelId, messageId)=>{
|
|
643
|
-
return await bot.rest.deleteReactionsAll(channelId, messageId);
|
|
644
|
-
},
|
|
645
|
-
deleteReactionsEmoji: async (channelId, messageId, reaction)=>{
|
|
646
|
-
return await bot.rest.deleteReactionsEmoji(channelId, messageId, reaction);
|
|
647
|
-
},
|
|
648
|
-
deleteRole: async (guildId, roleId, reason)=>{
|
|
649
|
-
return await bot.rest.deleteRole(guildId, roleId, reason);
|
|
650
|
-
},
|
|
651
|
-
deleteScheduledEvent: async (guildId, eventId)=>{
|
|
652
|
-
return await bot.rest.deleteScheduledEvent(guildId, eventId);
|
|
653
|
-
},
|
|
654
|
-
deleteStageInstance: async (channelId, reason)=>{
|
|
655
|
-
return await bot.rest.deleteStageInstance(channelId, reason);
|
|
656
|
-
},
|
|
657
|
-
deleteUserReaction: async (channelId, messageId, userId, reaction)=>{
|
|
658
|
-
return await bot.rest.deleteUserReaction(channelId, messageId, userId, reaction);
|
|
659
|
-
},
|
|
660
|
-
deleteWebhook: async (webhookId, reason)=>{
|
|
661
|
-
return await bot.rest.deleteWebhook(webhookId, reason);
|
|
662
|
-
},
|
|
663
|
-
deleteWebhookMessage: async (webhookId, token, messageId, options)=>{
|
|
664
|
-
return await bot.rest.deleteWebhookMessage(webhookId, token, messageId, options);
|
|
665
|
-
},
|
|
666
|
-
deleteWebhookWithToken: async (webhookId, token)=>{
|
|
667
|
-
return await bot.rest.deleteWebhookWithToken(webhookId, token);
|
|
668
|
-
},
|
|
669
|
-
editChannelPermissionOverrides: async (channelId, options, reason)=>{
|
|
670
|
-
return await bot.rest.editChannelPermissionOverrides(channelId, options, reason);
|
|
671
|
-
},
|
|
672
|
-
editChannelPositions: async (guildId, channelPositions)=>{
|
|
673
|
-
return await bot.rest.editChannelPositions(guildId, channelPositions);
|
|
674
|
-
},
|
|
675
|
-
editOwnVoiceState: async (guildId, options)=>{
|
|
676
|
-
return await bot.rest.editOwnVoiceState(guildId, options);
|
|
677
|
-
},
|
|
678
|
-
editUserVoiceState: async (guildId, options)=>{
|
|
679
|
-
return await bot.rest.editUserVoiceState(guildId, options);
|
|
680
|
-
},
|
|
681
|
-
editUserApplicationRoleConnection: async (bearerToken, applicationId, options)=>{
|
|
682
|
-
return await bot.rest.editUserApplicationRoleConnection(bearerToken, applicationId, options);
|
|
683
|
-
},
|
|
684
|
-
joinThread: async (channelId)=>{
|
|
685
|
-
return await bot.rest.joinThread(channelId);
|
|
686
|
-
},
|
|
687
|
-
leaveGuild: async (guildId)=>{
|
|
688
|
-
return await bot.rest.leaveGuild(guildId);
|
|
689
|
-
},
|
|
690
|
-
leaveThread: async (channelId)=>{
|
|
691
|
-
return await bot.rest.leaveThread(channelId);
|
|
692
|
-
},
|
|
693
|
-
removeRole: async (guildId, userId, roleId, reason)=>{
|
|
694
|
-
return await bot.rest.removeRole(guildId, userId, roleId, reason);
|
|
695
|
-
},
|
|
696
|
-
removeThreadMember: async (channelId, userId)=>{
|
|
697
|
-
return await bot.rest.removeThreadMember(channelId, userId);
|
|
698
|
-
},
|
|
699
|
-
removeDmRecipient: async (channelId, userId)=>{
|
|
700
|
-
return await bot.rest.removeDmRecipient(channelId, userId);
|
|
701
|
-
},
|
|
702
|
-
sendInteractionResponse: async (interactionId, token, options, params)=>{
|
|
703
|
-
const response = await bot.rest.sendInteractionResponse(interactionId, token, options, params);
|
|
704
|
-
if (!response) return;
|
|
705
|
-
return bot.transformers.interactionCallbackResponse(bot, {
|
|
706
|
-
interactionCallbackResponse: (0, _utils.snakelize)(response),
|
|
707
|
-
shardId: 0
|
|
708
|
-
});
|
|
709
|
-
},
|
|
710
|
-
triggerTypingIndicator: async (channelId)=>{
|
|
711
|
-
return await bot.rest.triggerTypingIndicator(channelId);
|
|
712
|
-
},
|
|
713
|
-
banMember: async (guildId, userId, options, reason)=>{
|
|
714
|
-
return await bot.rest.banMember(guildId, userId, options, reason);
|
|
715
|
-
},
|
|
716
|
-
kickMember: async (guildId, userId, reason)=>{
|
|
717
|
-
return await bot.rest.kickMember(guildId, userId, reason);
|
|
718
|
-
},
|
|
719
|
-
pinMessage: async (channelId, messageId, reason)=>{
|
|
720
|
-
return await bot.rest.pinMessage(channelId, messageId, reason);
|
|
721
|
-
},
|
|
722
|
-
unbanMember: async (guildId, userId, reason)=>{
|
|
723
|
-
return await bot.rest.unbanMember(guildId, userId, reason);
|
|
724
|
-
},
|
|
725
|
-
unpinMessage: async (channelId, messageId, reason)=>{
|
|
726
|
-
return await bot.rest.unpinMessage(channelId, messageId, reason);
|
|
727
|
-
},
|
|
728
|
-
getGuildOnboarding: async (guildId)=>{
|
|
729
|
-
return bot.transformers.guildOnboarding(bot, (0, _utils.snakelize)(await bot.rest.getGuildOnboarding(guildId)));
|
|
730
|
-
},
|
|
731
|
-
editGuildOnboarding: async (guildId, options, reason)=>{
|
|
732
|
-
return bot.transformers.guildOnboarding(bot, (0, _utils.snakelize)(await bot.rest.editGuildOnboarding(guildId, options, reason)));
|
|
733
|
-
},
|
|
734
|
-
listEntitlements: async (applicationId, options)=>{
|
|
735
|
-
return (await bot.rest.listEntitlements(applicationId, options)).map((entitlement)=>bot.transformers.entitlement(bot, (0, _utils.snakelize)(entitlement)));
|
|
736
|
-
},
|
|
737
|
-
getEntitlement: async (applicationId, entitlementId)=>{
|
|
738
|
-
return bot.transformers.entitlement(bot, (0, _utils.snakelize)(await bot.rest.getEntitlement(applicationId, entitlementId)));
|
|
739
|
-
},
|
|
740
|
-
createTestEntitlement: async (applicationId, body)=>{
|
|
741
|
-
// @ts-expect-error createTestEntitlement gives a partial, and this method returns a partial
|
|
742
|
-
return bot.transformers.entitlement(bot, (0, _utils.snakelize)(await bot.rest.createTestEntitlement(applicationId, body)));
|
|
743
|
-
},
|
|
744
|
-
deleteTestEntitlement: async (applicationId, entitlementId)=>{
|
|
745
|
-
await bot.rest.deleteTestEntitlement(applicationId, entitlementId);
|
|
746
|
-
},
|
|
747
|
-
listSkus: async (applicationId)=>{
|
|
748
|
-
return (await bot.rest.listSkus(applicationId)).map((sku)=>bot.transformers.sku(bot, (0, _utils.snakelize)(sku)));
|
|
749
|
-
},
|
|
750
|
-
getSubscription: async (skuId, subscriptionId)=>{
|
|
751
|
-
return bot.transformers.subscription(bot, (0, _utils.snakelize)(await bot.rest.getSubscription(skuId, subscriptionId)));
|
|
752
|
-
},
|
|
753
|
-
listSubscriptions: async (skuId, options)=>{
|
|
754
|
-
return (await bot.rest.listSubscriptions(skuId, options)).map((subscription)=>bot.transformers.subscription(bot, (0, _utils.snakelize)(subscription)));
|
|
755
|
-
},
|
|
756
|
-
sendSoundboardSound: async (channelId, options)=>{
|
|
757
|
-
await bot.rest.sendSoundboardSound(channelId, options);
|
|
758
|
-
},
|
|
759
|
-
listDefaultSoundboardSounds: async ()=>{
|
|
760
|
-
return (await bot.rest.listDefaultSoundboardSounds()).map((sound)=>bot.transformers.soundboardSound(bot, (0, _utils.snakelize)(sound)));
|
|
761
|
-
},
|
|
762
|
-
listGuildSoundboardSounds: async (guildId)=>{
|
|
763
|
-
const res = await bot.rest.listGuildSoundboardSounds(guildId);
|
|
764
|
-
return {
|
|
765
|
-
items: res.items.map((sound)=>bot.transformers.soundboardSound(bot, (0, _utils.snakelize)(sound)))
|
|
766
|
-
};
|
|
767
|
-
},
|
|
768
|
-
getGuildSoundboardSound: async (guildId, soundId)=>{
|
|
769
|
-
return bot.transformers.soundboardSound(bot, (0, _utils.snakelize)(await bot.rest.getGuildSoundboardSound(guildId, soundId)));
|
|
770
|
-
},
|
|
771
|
-
createGuildSoundboardSound: async (guildId, options, reason)=>{
|
|
772
|
-
return bot.transformers.soundboardSound(bot, (0, _utils.snakelize)(await bot.rest.createGuildSoundboardSound(guildId, options, reason)));
|
|
773
|
-
},
|
|
774
|
-
modifyGuildSoundboardSound: async (guildId, soundId, options, reason)=>{
|
|
775
|
-
return bot.transformers.soundboardSound(bot, (0, _utils.snakelize)(await bot.rest.modifyGuildSoundboardSound(guildId, soundId, options, reason)));
|
|
776
|
-
},
|
|
777
|
-
deleteGuildSoundboardSound: async (guildId, soundId, reason)=>{
|
|
778
|
-
await bot.rest.deleteGuildSoundboardSound(guildId, soundId, reason);
|
|
779
|
-
},
|
|
780
|
-
deleteLobby: async (lobbyId)=>{
|
|
781
|
-
await bot.rest.deleteLobby(lobbyId);
|
|
782
|
-
},
|
|
783
|
-
removeMemberFromLobby: async (lobbyId, userId)=>{
|
|
784
|
-
await bot.rest.removeMemberFromLobby(lobbyId, userId);
|
|
785
|
-
},
|
|
786
|
-
leaveLobby: async (lobbyId, bearerToken)=>{
|
|
787
|
-
await bot.rest.leaveLobby(lobbyId, bearerToken);
|
|
788
|
-
}
|
|
789
|
-
};
|
|
790
|
-
}
|
|
791
|
-
|
|
792
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9oZWxwZXJzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtcbiAgQWRkRG1SZWNpcGllbnRPcHRpb25zLFxuICBBZGRHdWlsZE1lbWJlck9wdGlvbnMsXG4gIEFkZExvYmJ5TWVtYmVyLFxuICBBdExlYXN0T25lLFxuICBCZWdpbkd1aWxkUHJ1bmUsXG4gIEJpZ1N0cmluZyxcbiAgQ2FtZWxpemUsXG4gIENyZWF0ZUFwcGxpY2F0aW9uQ29tbWFuZCxcbiAgQ3JlYXRlQXBwbGljYXRpb25FbW9qaSxcbiAgQ3JlYXRlQXV0b01vZGVyYXRpb25SdWxlT3B0aW9ucyxcbiAgQ3JlYXRlQ2hhbm5lbEludml0ZSxcbiAgQ3JlYXRlRW50aXRsZW1lbnQsXG4gIENyZWF0ZUZvcnVtUG9zdFdpdGhNZXNzYWdlLFxuICBDcmVhdGVHbG9iYWxBcHBsaWNhdGlvbkNvbW1hbmRPcHRpb25zLFxuICBDcmVhdGVHdWlsZEFwcGxpY2F0aW9uQ29tbWFuZE9wdGlvbnMsXG4gIENyZWF0ZUd1aWxkQmFuLFxuICBDcmVhdGVHdWlsZEJ1bGtCYW4sXG4gIENyZWF0ZUd1aWxkQ2hhbm5lbCxcbiAgQ3JlYXRlR3VpbGRFbW9qaSxcbiAgQ3JlYXRlR3VpbGRSb2xlLFxuICBDcmVhdGVHdWlsZFNvdW5kYm9hcmRTb3VuZCxcbiAgQ3JlYXRlR3VpbGRTdGlja2VyT3B0aW9ucyxcbiAgQ3JlYXRlTG9iYnksXG4gIENyZWF0ZU1lc3NhZ2VPcHRpb25zLFxuICBDcmVhdGVTY2hlZHVsZWRFdmVudCxcbiAgQ3JlYXRlU3RhZ2VJbnN0YW5jZSxcbiAgQ3JlYXRlVGVtcGxhdGUsXG4gIENyZWF0ZVdlYmhvb2ssXG4gIERlbGV0ZVdlYmhvb2tNZXNzYWdlT3B0aW9ucyxcbiAgRGlzY29yZEFjY2Vzc1Rva2VuUmVzcG9uc2UsXG4gIERpc2NvcmRBY3Rpdml0eUluc3RhbmNlLFxuICBEaXNjb3JkQXBwbGljYXRpb25Db21tYW5kUGVybWlzc2lvbnMsXG4gIERpc2NvcmRBcHBsaWNhdGlvblJvbGVDb25uZWN0aW9uLFxuICBEaXNjb3JkQXBwbGljYXRpb25Sb2xlQ29ubmVjdGlvbk1ldGFkYXRhLFxuICBEaXNjb3JkQXVkaXRMb2csXG4gIERpc2NvcmRCYW4sXG4gIERpc2NvcmRDb25uZWN0aW9uLFxuICBEaXNjb3JkQ3VycmVudEF1dGhvcml6YXRpb24sXG4gIERpc2NvcmRGb2xsb3dlZENoYW5uZWwsXG4gIERpc2NvcmRHZXRHYXRld2F5Qm90LFxuICBEaXNjb3JkR3VpbGRQcmV2aWV3LFxuICBEaXNjb3JkR3VpbGRXaWRnZXRTZXR0aW5ncyxcbiAgRGlzY29yZEludml0ZSxcbiAgRGlzY29yZEludml0ZU1ldGFkYXRhLFxuICBEaXNjb3JkTGlzdEFyY2hpdmVkVGhyZWFkcyxcbiAgRGlzY29yZE1lc3NhZ2UsXG4gIERpc2NvcmRNb2RpZnlHdWlsZFdlbGNvbWVTY3JlZW4sXG4gIERpc2NvcmRQcnVuZWRDb3VudCxcbiAgRGlzY29yZFRva2VuRXhjaGFuZ2UsXG4gIERpc2NvcmRUb2tlblJldm9jYXRpb24sXG4gIERpc2NvcmRWYW5pdHlVcmwsXG4gIERpc2NvcmRWb2ljZVJlZ2lvbixcbiAgRWRpdEFwcGxpY2F0aW9uLFxuICBFZGl0QXV0b01vZGVyYXRpb25SdWxlT3B0aW9ucyxcbiAgRWRpdEJvdE1lbWJlck9wdGlvbnMsXG4gIEVkaXRDaGFubmVsUGVybWlzc2lvbk92ZXJyaWRlc09wdGlvbnMsXG4gIEVkaXRHdWlsZE9uYm9hcmRpbmcsXG4gIEVkaXRHdWlsZFJvbGUsXG4gIEVkaXRHdWlsZFN0aWNrZXJPcHRpb25zLFxuICBFZGl0TWVzc2FnZSxcbiAgRWRpdE93blZvaWNlU3RhdGUsXG4gIEVkaXRTY2hlZHVsZWRFdmVudCxcbiAgRWRpdFVzZXJWb2ljZVN0YXRlLFxuICBFZGl0V2ViaG9va01lc3NhZ2VPcHRpb25zLFxuICBFeGVjdXRlV2ViaG9vayxcbiAgR2V0QXBwbGljYXRpb25Db21tYW5kUGVybWlzc2lvbk9wdGlvbnMsXG4gIEdldEJhbnMsXG4gIEdldENoYW5uZWxQaW5zT3B0aW9ucyxcbiAgR2V0RW50aXRsZW1lbnRzLFxuICBHZXRHcm91cERtT3B0aW9ucyxcbiAgR2V0R3VpbGRBdWRpdExvZyxcbiAgR2V0R3VpbGRQcnVuZUNvdW50UXVlcnksXG4gIEdldEludml0ZSxcbiAgR2V0TWVzc2FnZXNPcHRpb25zLFxuICBHZXRSZWFjdGlvbnMsXG4gIEdldFNjaGVkdWxlZEV2ZW50cyxcbiAgR2V0U2NoZWR1bGVkRXZlbnRVc2VycyxcbiAgR2V0VGhyZWFkTWVtYmVyLFxuICBHZXRVc2VyR3VpbGRzLFxuICBHZXRXZWJob29rTWVzc2FnZU9wdGlvbnMsXG4gIEludGVyYWN0aW9uQ2FsbGJhY2tEYXRhLFxuICBJbnRlcmFjdGlvbkNhbGxiYWNrT3B0aW9ucyxcbiAgSW50ZXJhY3Rpb25SZXNwb25zZSxcbiAgTGlua0NoYW5uZWxUb0xvYmJ5LFxuICBMaXN0QXJjaGl2ZWRUaHJlYWRzLFxuICBMaXN0R3VpbGRNZW1iZXJzLFxuICBMaXN0U2t1U3Vic2NyaXB0aW9uc09wdGlvbnMsXG4gIExpc3RUaHJlYWRNZW1iZXJzLFxuICBNb2RpZnlBcHBsaWNhdGlvbkVtb2ppLFxuICBNb2RpZnlDaGFubmVsLFxuICBNb2RpZnlHdWlsZCxcbiAgTW9kaWZ5R3VpbGRDaGFubmVsUG9zaXRpb25zLFxuICBNb2RpZnlHdWlsZEVtb2ppLFxuICBNb2RpZnlHdWlsZE1lbWJlcixcbiAgTW9kaWZ5R3VpbGRTb3VuZGJvYXJkU291bmQsXG4gIE1vZGlmeUd1aWxkVGVtcGxhdGUsXG4gIE1vZGlmeUxvYmJ5LFxuICBNb2RpZnlSb2xlUG9zaXRpb25zLFxuICBNb2RpZnlXZWJob29rLFxuICBTZWFyY2hNZW1iZXJzLFxuICBTZW5kU291bmRib2FyZFNvdW5kLFxuICBTdGFydFRocmVhZFdpdGhNZXNzYWdlLFxuICBTdGFydFRocmVhZFdpdGhvdXRNZXNzYWdlLFxuICBVcHNlcnRHbG9iYWxBcHBsaWNhdGlvbkNvbW1hbmRPcHRpb25zLFxuICBVcHNlcnRHdWlsZEFwcGxpY2F0aW9uQ29tbWFuZE9wdGlvbnMsXG59IGZyb20gJ0BkaXNjb3JkZW5vL3R5cGVzJ1xuaW1wb3J0IHsgc25ha2VsaXplIH0gZnJvbSAnQGRpc2NvcmRlbm8vdXRpbHMnXG5pbXBvcnQgdHlwZSB7IEJvdCB9IGZyb20gJy4vYm90LmpzJ1xuaW1wb3J0IHR5cGUgeyBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yLCBTZXR1cERlc2lyZWRQcm9wcywgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMgfSBmcm9tICcuL2Rlc2lyZWRQcm9wZXJ0aWVzLmpzJ1xuaW1wb3J0IHR5cGUge1xuICBBcHBsaWNhdGlvbixcbiAgQXBwbGljYXRpb25Db21tYW5kLFxuICBBdXRvTW9kZXJhdGlvblJ1bGUsXG4gIENoYW5uZWwsXG4gIEVtb2ppLFxuICBFbnRpdGxlbWVudCxcbiAgR3VpbGQsXG4gIEd1aWxkQXBwbGljYXRpb25Db21tYW5kUGVybWlzc2lvbnMsXG4gIEd1aWxkT25ib2FyZGluZyxcbiAgR3VpbGRXaWRnZXQsXG4gIEd1aWxkV2lkZ2V0U2V0dGluZ3MsXG4gIEludGVncmF0aW9uLFxuICBJbnRlcmFjdGlvbkNhbGxiYWNrUmVzcG9uc2UsXG4gIEludml0ZSxcbiAgTG9iYnksXG4gIExvYmJ5TWVtYmVyLFxuICBNZW1iZXIsXG4gIE1lc3NhZ2UsXG4gIE1lc3NhZ2VQaW4sXG4gIFJvbGUsXG4gIFNjaGVkdWxlZEV2ZW50LFxuICBTa3UsXG4gIFNvdW5kYm9hcmRTb3VuZCxcbiAgU3RhZ2VJbnN0YW5jZSxcbiAgU3RpY2tlcixcbiAgU3RpY2tlclBhY2ssXG4gIFN1YnNjcmlwdGlvbixcbiAgVGVtcGxhdGUsXG4gIFRocmVhZE1lbWJlcixcbiAgVXNlcixcbiAgVm9pY2VTdGF0ZSxcbiAgV2ViaG9vayxcbiAgV2VsY29tZVNjcmVlbixcbn0gZnJvbSAnLi90cmFuc2Zvcm1lcnMvaW5kZXguanMnXG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVCb3RIZWxwZXJzPFRQcm9wcyBleHRlbmRzIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBUQmVoYXZpb3IgZXh0ZW5kcyBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPihcbiAgYm90OiBCb3Q8VFByb3BzLCBUQmVoYXZpb3I+LFxuKTogQm90SGVscGVyczxUUHJvcHMsIFRCZWhhdmlvcj4ge1xuICByZXR1cm4ge1xuICAgIGNyZWF0ZUF1dG9tb2RSdWxlOiBhc3luYyAoZ3VpbGRJZCwgb3B0aW9ucywgcmVhc29uKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5hdXRvbW9kUnVsZShib3QsIHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5jcmVhdGVBdXRvbW9kUnVsZShndWlsZElkLCBvcHRpb25zLCByZWFzb24pKSlcbiAgICB9LFxuICAgIGNyZWF0ZUNoYW5uZWw6IGFzeW5jIChndWlsZElkLCBvcHRpb25zLCByZWFzb24pID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmNoYW5uZWwoYm90LCB7IGNoYW5uZWw6IHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5jcmVhdGVDaGFubmVsKGd1aWxkSWQsIG9wdGlvbnMsIHJlYXNvbikpLCBndWlsZElkIH0pXG4gICAgfSxcbiAgICBjcmVhdGVFbW9qaTogYXN5bmMgKGd1aWxkSWQsIG9wdGlvbnMsIHJlYXNvbikgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuZW1vamkoYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuY3JlYXRlRW1vamkoZ3VpbGRJZCwgb3B0aW9ucywgcmVhc29uKSkpXG4gICAgfSxcbiAgICBjcmVhdGVBcHBsaWNhdGlvbkVtb2ppOiBhc3luYyAob3B0aW9ucykgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuZW1vamkoYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuY3JlYXRlQXBwbGljYXRpb25FbW9qaShvcHRpb25zKSkpXG4gICAgfSxcbiAgICBjcmVhdGVGb3J1bVRocmVhZDogYXN5bmMgKGNoYW5uZWxJZCwgb3B0aW9ucywgcmVhc29uKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jaGFubmVsKGJvdCwgeyBjaGFubmVsOiBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuY3JlYXRlRm9ydW1UaHJlYWQoY2hhbm5lbElkLCBvcHRpb25zLCByZWFzb24pKSB9KVxuICAgIH0sXG4gICAgY3JlYXRlR2xvYmFsQXBwbGljYXRpb25Db21tYW5kOiBhc3luYyAoY29tbWFuZCwgb3B0aW9ucykgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuYXBwbGljYXRpb25Db21tYW5kKGJvdCwgc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmNyZWF0ZUdsb2JhbEFwcGxpY2F0aW9uQ29tbWFuZChjb21tYW5kLCBvcHRpb25zKSkpXG4gICAgfSxcbiAgICBjcmVhdGVHdWlsZEFwcGxpY2F0aW9uQ29tbWFuZDogYXN5bmMgKGNvbW1hbmQsIGd1aWxkSWQsIG9wdGlvbnMpID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmFwcGxpY2F0aW9uQ29tbWFuZChib3QsIHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5jcmVhdGVHdWlsZEFwcGxpY2F0aW9uQ29tbWFuZChjb21tYW5kLCBndWlsZElkLCBvcHRpb25zKSkpXG4gICAgfSxcbiAgICBjcmVhdGVHdWlsZFN0aWNrZXI6IGFzeW5jIChndWlsZElkLCBvcHRpb25zLCByZWFzb24pID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLnN0aWNrZXIoYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuY3JlYXRlR3VpbGRTdGlja2VyKGd1aWxkSWQsIG9wdGlvbnMsIHJlYXNvbikpKVxuICAgIH0sXG4gICAgY3JlYXRlR3VpbGRUZW1wbGF0ZTogYXN5bmMgKGd1aWxkSWQsIG9wdGlvbnMpID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLnRlbXBsYXRlKGJvdCwgc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmNyZWF0ZUd1aWxkVGVtcGxhdGUoZ3VpbGRJZCwgb3B0aW9ucykpKVxuICAgIH0sXG4gICAgY3JlYXRlSW52aXRlOiBhc3luYyAoY2hhbm5lbElkLCBvcHRpb25zLCByZWFzb24pID0+IHtcbiAgICAgIHJldHVybiBhd2FpdCBib3QucmVzdC5jcmVhdGVJbnZpdGUoY2hhbm5lbElkLCBvcHRpb25zLCByZWFzb24pXG4gICAgfSxcbiAgICBjcmVhdGVSb2xlOiBhc3luYyAoZ3VpbGRJZCwgb3B0aW9ucywgcmVhc29uKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5yb2xlKGJvdCwgeyByb2xlOiBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuY3JlYXRlUm9sZShndWlsZElkLCBvcHRpb25zLCByZWFzb24pKSwgZ3VpbGRJZCB9KVxuICAgIH0sXG4gICAgY3JlYXRlU2NoZWR1bGVkRXZlbnQ6IGFzeW5jIChndWlsZElkLCBvcHRpb25zLCByZWFzb24pID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLnNjaGVkdWxlZEV2ZW50KGJvdCwgc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmNyZWF0ZVNjaGVkdWxlZEV2ZW50KGd1aWxkSWQsIG9wdGlvbnMsIHJlYXNvbikpKVxuICAgIH0sXG4gICAgY3JlYXRlU3RhZ2VJbnN0YW5jZTogYXN5bmMgKG9wdGlvbnMsIHJlYXNvbikgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuc3RhZ2VJbnN0YW5jZShib3QsIHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5jcmVhdGVTdGFnZUluc3RhbmNlKG9wdGlvbnMsIHJlYXNvbikpKVxuICAgIH0sXG4gICAgY3JlYXRlV2ViaG9vazogYXN5bmMgKGNoYW5uZWxJZCwgb3B0aW9ucywgcmVhc29uKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy53ZWJob29rKGJvdCwgc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmNyZWF0ZVdlYmhvb2soY2hhbm5lbElkLCBvcHRpb25zLCByZWFzb24pKSlcbiAgICB9LFxuICAgIGVkaXRBcHBsaWNhdGlvbkNvbW1hbmRQZXJtaXNzaW9uczogYXN5bmMgKGd1aWxkSWQsIGNvbW1hbmRJZCwgYmVhcmVyVG9rZW4sIG9wdGlvbnMpID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmFwcGxpY2F0aW9uQ29tbWFuZFBlcm1pc3Npb24oXG4gICAgICAgIGJvdCxcbiAgICAgICAgc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmVkaXRBcHBsaWNhdGlvbkNvbW1hbmRQZXJtaXNzaW9ucyhndWlsZElkLCBjb21tYW5kSWQsIGJlYXJlclRva2VuLCBvcHRpb25zKSksXG4gICAgICApXG4gICAgfSxcbiAgICBlZGl0QXV0b21vZFJ1bGU6IGFzeW5jIChndWlsZElkLCBydWxlSWQsIG9wdGlvbnMsIHJlYXNvbikgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuYXV0b21vZFJ1bGUoYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZWRpdEF1dG9tb2RSdWxlKGd1aWxkSWQsIHJ1bGVJZCwgb3B0aW9ucywgcmVhc29uKSkpXG4gICAgfSxcbiAgICBlZGl0Qm90UHJvZmlsZTogYXN5bmMgKG9wdGlvbnMpID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLnVzZXIoYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZWRpdEJvdFByb2ZpbGUob3B0aW9ucykpKVxuICAgIH0sXG4gICAgZWRpdENoYW5uZWw6IGFzeW5jIChjaGFubmVsSWQsIG9wdGlvbnMsIHJlYXNvbikgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY2hhbm5lbChib3QsIHsgY2hhbm5lbDogc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmVkaXRDaGFubmVsKGNoYW5uZWxJZCwgb3B0aW9ucywgcmVhc29uKSkgfSlcbiAgICB9LFxuICAgIGVkaXRFbW9qaTogYXN5bmMgKGd1aWxkSWQsIGlkLCBvcHRpb25zLCByZWFzb24pID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmVtb2ppKGJvdCwgc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmVkaXRFbW9qaShndWlsZElkLCBpZCwgb3B0aW9ucywgcmVhc29uKSkpXG4gICAgfSxcbiAgICBlZGl0QXBwbGljYXRpb25FbW9qaTogYXN5bmMgKGlkLCBvcHRpb25zKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5lbW9qaShib3QsIHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5lZGl0QXBwbGljYXRpb25FbW9qaShpZCwgb3B0aW9ucykpKVxuICAgIH0sXG4gICAgZWRpdEZvbGxvd3VwTWVzc2FnZTogYXN5bmMgKHRva2VuLCBtZXNzYWdlSWQsIG9wdGlvbnMpID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLm1lc3NhZ2UoYm90LCB7IG1lc3NhZ2U6IHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5lZGl0Rm9sbG93dXBNZXNzYWdlKHRva2VuLCBtZXNzYWdlSWQsIG9wdGlvbnMpKSwgc2hhcmRJZDogMCB9KVxuICAgIH0sXG4gICAgZWRpdEdsb2JhbEFwcGxpY2F0aW9uQ29tbWFuZDogYXN5bmMgKGNvbW1hbmRJZCwgb3B0aW9ucykgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuYXBwbGljYXRpb25Db21tYW5kKGJvdCwgc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmVkaXRHbG9iYWxBcHBsaWNhdGlvbkNvbW1hbmQoY29tbWFuZElkLCBvcHRpb25zKSkpXG4gICAgfSxcbiAgICBlZGl0R3VpbGQ6IGFzeW5jIChndWlsZElkLCBvcHRpb25zLCByZWFzb24pID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmd1aWxkKGJvdCwgeyBndWlsZDogc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmVkaXRHdWlsZChndWlsZElkLCBvcHRpb25zLCByZWFzb24pKSwgc2hhcmRJZDogMCB9KVxuICAgIH0sXG4gICAgZWRpdEd1aWxkQXBwbGljYXRpb25Db21tYW5kOiBhc3luYyAoY29tbWFuZElkLCBndWlsZElkLCBvcHRpb25zKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5hcHBsaWNhdGlvbkNvbW1hbmQoYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZWRpdEd1aWxkQXBwbGljYXRpb25Db21tYW5kKGNvbW1hbmRJZCwgZ3VpbGRJZCwgb3B0aW9ucykpKVxuICAgIH0sXG4gICAgZWRpdEd1aWxkU3RpY2tlcjogYXN5bmMgKGd1aWxkSWQsIHN0aWNrZXJJZCwgb3B0aW9ucywgcmVhc29uKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5zdGlja2VyKGJvdCwgc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmVkaXRHdWlsZFN0aWNrZXIoZ3VpbGRJZCwgc3RpY2tlcklkLCBvcHRpb25zLCByZWFzb24pKSlcbiAgICB9LFxuICAgIGVkaXRHdWlsZFRlbXBsYXRlOiBhc3luYyAoZ3VpbGRJZCwgdGVtcGxhdGVDb2RlLCBvcHRpb25zKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy50ZW1wbGF0ZShib3QsIHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5lZGl0R3VpbGRUZW1wbGF0ZShndWlsZElkLCB0ZW1wbGF0ZUNvZGUsIG9wdGlvbnMpKSlcbiAgICB9LFxuICAgIGVkaXRNZXNzYWdlOiBhc3luYyAoY2hhbm5lbElkLCBtZXNzYWdlSWQsIG9wdGlvbnMpID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLm1lc3NhZ2UoYm90LCB7XG4gICAgICAgIG1lc3NhZ2U6IHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5lZGl0TWVzc2FnZShjaGFubmVsSWQsIG1lc3NhZ2VJZCwgb3B0aW9ucykpIGFzIERpc2NvcmRNZXNzYWdlLFxuICAgICAgICBzaGFyZElkOiAwLFxuICAgICAgfSlcbiAgICB9LFxuICAgIGVkaXRPcmlnaW5hbEludGVyYWN0aW9uUmVzcG9uc2U6IGFzeW5jICh0b2tlbiwgb3B0aW9ucykgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMubWVzc2FnZShib3QsIHsgbWVzc2FnZTogc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmVkaXRPcmlnaW5hbEludGVyYWN0aW9uUmVzcG9uc2UodG9rZW4sIG9wdGlvbnMpKSwgc2hhcmRJZDogMCB9KVxuICAgIH0sXG4gICAgZWRpdFJvbGU6IGFzeW5jIChndWlsZElkLCByb2xlSWQsIG9wdGlvbnMsIHJlYXNvbikgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMucm9sZShib3QsIHsgcm9sZTogc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmVkaXRSb2xlKGd1aWxkSWQsIHJvbGVJZCwgb3B0aW9ucywgcmVhc29uKSksIGd1aWxkSWQgfSlcbiAgICB9LFxuICAgIGVkaXRSb2xlUG9zaXRpb25zOiBhc3luYyAoZ3VpbGRJZCwgb3B0aW9ucywgcmVhc29uKSA9PiB7XG4gICAgICByZXR1cm4gc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmVkaXRSb2xlUG9zaXRpb25zKGd1aWxkSWQsIG9wdGlvbnMsIHJlYXNvbikpLm1hcCgocm9sZSkgPT4gYm90LnRyYW5zZm9ybWVycy5yb2xlKGJvdCwgeyByb2xlLCBndWlsZElkIH0pKVxuICAgIH0sXG4gICAgZWRpdFNjaGVkdWxlZEV2ZW50OiBhc3luYyAoZ3VpbGRJZCwgZXZlbnRJZCwgb3B0aW9ucywgcmVhc29uKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5zY2hlZHVsZWRFdmVudChib3QsIHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5lZGl0U2NoZWR1bGVkRXZlbnQoZ3VpbGRJZCwgZXZlbnRJZCwgb3B0aW9ucywgcmVhc29uKSkpXG4gICAgfSxcbiAgICBlZGl0U3RhZ2VJbnN0YW5jZTogYXN5bmMgKGNoYW5uZWxJZCwgdG9waWMsIHJlYXNvbikgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuc3RhZ2VJbnN0YW5jZShib3QsIHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5lZGl0U3RhZ2VJbnN0YW5jZShjaGFubmVsSWQsIHRvcGljLCByZWFzb24pKSlcbiAgICB9LFxuICAgIGVkaXRXZWJob29rOiBhc3luYyAod2ViaG9va0lkLCBvcHRpb25zLCByZWFzb24pID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLndlYmhvb2soYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZWRpdFdlYmhvb2sod2ViaG9va0lkLCBvcHRpb25zLCByZWFzb24pKSlcbiAgICB9LFxuICAgIGVkaXRXZWJob29rTWVzc2FnZTogYXN5bmMgKHdlYmhvb2tJZCwgdG9rZW4sIG1lc3NhZ2VJZCwgb3B0aW9ucykgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMubWVzc2FnZShib3QsIHtcbiAgICAgICAgbWVzc2FnZTogc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmVkaXRXZWJob29rTWVzc2FnZSh3ZWJob29rSWQsIHRva2VuLCBtZXNzYWdlSWQsIG9wdGlvbnMpKSBhcyBEaXNjb3JkTWVzc2FnZSxcbiAgICAgICAgc2hhcmRJZDogMCxcbiAgICAgIH0pXG4gICAgfSxcbiAgICBlZGl0V2ViaG9va1dpdGhUb2tlbjogYXN5bmMgKHdlYmhvb2tJZCwgdG9rZW4sIG9wdGlvbnMpID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLndlYmhvb2soYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZWRpdFdlYmhvb2tXaXRoVG9rZW4od2ViaG9va0lkLCB0b2tlbiwgb3B0aW9ucykpKVxuICAgIH0sXG4gICAgZWRpdFdlbGNvbWVTY3JlZW46IGFzeW5jIChndWlsZElkLCBvcHRpb25zLCByZWFzb24pID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLndlbGNvbWVTY3JlZW4oYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZWRpdFdlbGNvbWVTY3JlZW4oZ3VpbGRJZCwgb3B0aW9ucywgcmVhc29uKSkpXG4gICAgfSxcbiAgICBlZGl0V2lkZ2V0U2V0dGluZ3M6IGFzeW5jIChndWlsZElkLCBvcHRpb25zLCByZWFzb24pID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLndpZGdldFNldHRpbmdzKGJvdCwgc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmVkaXRXaWRnZXRTZXR0aW5ncyhndWlsZElkLCBvcHRpb25zLCByZWFzb24pKSlcbiAgICB9LFxuICAgIGV4ZWN1dGVXZWJob29rOiBhc3luYyAod2ViaG9va0lkLCB0b2tlbiwgb3B0aW9ucykgPT4ge1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgYm90LnJlc3QuZXhlY3V0ZVdlYmhvb2sod2ViaG9va0lkLCB0b2tlbiwgb3B0aW9ucylcbiAgICAgIGlmICghcmVzdWx0KSByZXR1cm5cblxuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMubWVzc2FnZShib3QsIHsgbWVzc2FnZTogc25ha2VsaXplKHJlc3VsdCkgYXMgRGlzY29yZE1lc3NhZ2UsIHNoYXJkSWQ6IDAgfSlcbiAgICB9LFxuICAgIGZvbGxvd0Fubm91bmNlbWVudDogYXN5bmMgKHNvdXJjZUNoYW5uZWxJZCwgdGFyZ2V0Q2hhbm5lbElkKSA9PiB7XG4gICAgICByZXR1cm4gYXdhaXQgYm90LnJlc3QuZm9sbG93QW5ub3VuY2VtZW50KHNvdXJjZUNoYW5uZWxJZCwgdGFyZ2V0Q2hhbm5lbElkKVxuICAgIH0sXG4gICAgZ2V0QWN0aXZlVGhyZWFkczogYXN5bmMgKGd1aWxkSWQpID0+IHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGJvdC5yZXN0LmdldEFjdGl2ZVRocmVhZHMoZ3VpbGRJZClcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHRocmVhZHM6IHJlc3VsdC50aHJlYWRzLm1hcCgodGhyZWFkKSA9PiBib3QudHJhbnNmb3JtZXJzLmNoYW5uZWwoYm90LCB7IGd1aWxkSWQsIGNoYW5uZWw6IHNuYWtlbGl6ZSh0aHJlYWQpIH0pKSxcbiAgICAgICAgbWVtYmVyczogcmVzdWx0Lm1lbWJlcnMubWFwKChtZW1iZXIpID0+IGJvdC50cmFuc2Zvcm1lcnMudGhyZWFkTWVtYmVyKGJvdCwgc25ha2VsaXplKG1lbWJlcikpKSxcbiAgICAgIH1cbiAgICB9LFxuICAgIGdldEFwcGxpY2F0aW9uSW5mbzogYXN5bmMgKCkgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuYXBwbGljYXRpb24oYm90LCB7IGFwcGxpY2F0aW9uOiBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZ2V0QXBwbGljYXRpb25JbmZvKCkpLCBzaGFyZElkOiAwIH0pXG4gICAgfSxcbiAgICBlZGl0QXBwbGljYXRpb25JbmZvOiBhc3luYyAoYm9keSkgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuYXBwbGljYXRpb24oYm90LCB7IGFwcGxpY2F0aW9uOiBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZWRpdEFwcGxpY2F0aW9uSW5mbyhib2R5KSksIHNoYXJkSWQ6IDAgfSlcbiAgICB9LFxuICAgIGdldEN1cnJlbnRBdXRoZW50aWNhdGlvbkluZm86IGFzeW5jIChiZWFyZXJUb2tlbikgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJvdC5yZXN0LmdldEN1cnJlbnRBdXRoZW50aWNhdGlvbkluZm8oYmVhcmVyVG9rZW4pXG4gICAgfSxcbiAgICBleGNoYW5nZVRva2VuOiBhc3luYyAoY2xpZW50SWQsIGNsaWVudFNlY3JldCwgb3B0aW9ucykgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJvdC5yZXN0LmV4Y2hhbmdlVG9rZW4oY2xpZW50SWQsIGNsaWVudFNlY3JldCwgb3B0aW9ucylcbiAgICB9LFxuICAgIHJldm9rZVRva2VuOiBhc3luYyAoY2xpZW50SWQsIGNsaWVudFNlY3JldCwgb3B0aW9ucykgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJvdC5yZXN0LnJldm9rZVRva2VuKGNsaWVudElkLCBjbGllbnRTZWNyZXQsIG9wdGlvbnMpXG4gICAgfSxcbiAgICBnZXRBcHBsaWNhdGlvbkNvbW1hbmRQZXJtaXNzaW9uOiBhc3luYyAoZ3VpbGRJZCwgY29tbWFuZElkLCBvcHRpb25zKSA9PiB7XG4gICAgICBjb25zdCByZXMgPSBhd2FpdCBib3QucmVzdC5nZXRBcHBsaWNhdGlvbkNvbW1hbmRQZXJtaXNzaW9uKGd1aWxkSWQsIGNvbW1hbmRJZCwgb3B0aW9ucylcbiAgICAgIGNvbnN0IHNuYWtlZFJlcyA9IHNuYWtlbGl6ZShyZXMpXG5cbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmFwcGxpY2F0aW9uQ29tbWFuZFBlcm1pc3Npb24oYm90LCBzbmFrZWRSZXMpXG4gICAgfSxcbiAgICBnZXRBcHBsaWNhdGlvbkNvbW1hbmRQZXJtaXNzaW9uczogYXN5bmMgKGd1aWxkSWQsIG9wdGlvbnMpID0+IHtcbiAgICAgIHJldHVybiAoYXdhaXQgYm90LnJlc3QuZ2V0QXBwbGljYXRpb25Db21tYW5kUGVybWlzc2lvbnMoZ3VpbGRJZCwgb3B0aW9ucykpLm1hcCgocmVzKSA9PlxuICAgICAgICBib3QudHJhbnNmb3JtZXJzLmFwcGxpY2F0aW9uQ29tbWFuZFBlcm1pc3Npb24oYm90LCBzbmFrZWxpemUocmVzKSksXG4gICAgICApXG4gICAgfSxcbiAgICBnZXRBdWRpdExvZzogYXN5bmMgKGd1aWxkSWQsIG9wdGlvbnMpID0+IHtcbiAgICAgIHJldHVybiBhd2FpdCBib3QucmVzdC5nZXRBdWRpdExvZyhndWlsZElkLCBvcHRpb25zKVxuICAgIH0sXG4gICAgZ2V0QXV0b21vZFJ1bGU6IGFzeW5jIChndWlsZElkLCBydWxlSWQpID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmF1dG9tb2RSdWxlKGJvdCwgc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmdldEF1dG9tb2RSdWxlKGd1aWxkSWQsIHJ1bGVJZCkpKVxuICAgIH0sXG4gICAgZ2V0QXV0b21vZFJ1bGVzOiBhc3luYyAoZ3VpbGRJZCkgPT4ge1xuICAgICAgcmV0dXJuIChhd2FpdCBib3QucmVzdC5nZXRBdXRvbW9kUnVsZXMoZ3VpbGRJZCkpLm1hcCgocmVzKSA9PiBib3QudHJhbnNmb3JtZXJzLmF1dG9tb2RSdWxlKGJvdCwgc25ha2VsaXplKHJlcykpKVxuICAgIH0sXG4gICAgZ2V0QXZhaWxhYmxlVm9pY2VSZWdpb25zOiBhc3luYyAoKSA9PiB7XG4gICAgICByZXR1cm4gKGF3YWl0IGJvdC5yZXN0LmdldEF2YWlsYWJsZVZvaWNlUmVnaW9ucygpKS5tYXAoKHJlcykgPT4gYm90LnRyYW5zZm9ybWVycy52b2ljZVJlZ2lvbihib3QsIHNuYWtlbGl6ZShyZXMpKSlcbiAgICB9LFxuICAgIGdldEJhbjogYXN5bmMgKGd1aWxkSWQsIHVzZXJJZCkgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJvdC5yZXN0LmdldEJhbihndWlsZElkLCB1c2VySWQpXG4gICAgfSxcbiAgICBnZXRCYW5zOiBhc3luYyAoZ3VpbGRJZCwgb3B0aW9ucykgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJvdC5yZXN0LmdldEJhbnMoZ3VpbGRJZCwgb3B0aW9ucylcbiAgICB9LFxuICAgIGdldENoYW5uZWw6IGFzeW5jIChjaGFubmVsSWQpID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmNoYW5uZWwoYm90LCB7IGNoYW5uZWw6IHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5nZXRDaGFubmVsKGNoYW5uZWxJZCkpIH0pXG4gICAgfSxcbiAgICBnZXRDaGFubmVsSW52aXRlczogYXN5bmMgKGNoYW5uZWxJZCkgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJvdC5yZXN0LmdldENoYW5uZWxJbnZpdGVzKGNoYW5uZWxJZClcbiAgICAgIC8vIHJldHVybiAoYXdhaXQgYm90LnJlc3QuZ2V0Q2hhbm5lbEludml0ZXMoY2hhbm5lbElkKSkubWFwKChyZXMpID0+IGJvdC50cmFuc2Zvcm1lcnMuaW52aXRlKGJvdCwgc25ha2VsaXplKHJlcykpKVxuICAgIH0sXG4gICAgZ2V0Q2hhbm5lbHM6IGFzeW5jIChndWlsZElkKSA9PiB7XG4gICAgICByZXR1cm4gKGF3YWl0IGJvdC5yZXN0LmdldENoYW5uZWxzKGd1aWxkSWQpKS5tYXAoKHJlcykgPT4gYm90LnRyYW5zZm9ybWVycy5jaGFubmVsKGJvdCwgeyBjaGFubmVsOiBzbmFrZWxpemUocmVzKSwgZ3VpbGRJZCB9KSlcbiAgICB9LFxuICAgIGdldENoYW5uZWxXZWJob29rczogYXN5bmMgKGNoYW5uZWxJZCkgPT4ge1xuICAgICAgcmV0dXJuIChhd2FpdCBib3QucmVzdC5nZXRDaGFubmVsV2ViaG9va3MoY2hhbm5lbElkKSkubWFwKChyZXMpID0+IGJvdC50cmFuc2Zvcm1lcnMud2ViaG9vayhib3QsIHNuYWtlbGl6ZShyZXMpKSlcbiAgICB9LFxuICAgIGdldERtQ2hhbm5lbDogYXN5bmMgKHVzZXJJZCkgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY2hhbm5lbChib3QsIHsgY2hhbm5lbDogc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmdldERtQ2hhbm5lbCh1c2VySWQpKSB9KVxuICAgIH0sXG4gICAgZ2V0R3JvdXBEbUNoYW5uZWw6IGFzeW5jIChvcHRpb25zKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jaGFubmVsKGJvdCwgeyBjaGFubmVsOiBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZ2V0R3JvdXBEbUNoYW5uZWwob3B0aW9ucykpIH0pXG4gICAgfSxcbiAgICBnZXRFbW9qaTogYXN5bmMgKGd1aWxkSWQsIGVtb2ppSWQpID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmVtb2ppKGJvdCwgc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmdldEVtb2ppKGd1aWxkSWQsIGVtb2ppSWQpKSlcbiAgICB9LFxuICAgIGdldEFwcGxpY2F0aW9uRW1vamk6IGFzeW5jIChlbW9qaUlkKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5lbW9qaShib3QsIHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5nZXRBcHBsaWNhdGlvbkVtb2ppKGVtb2ppSWQpKSlcbiAgICB9LFxuICAgIGdldEVtb2ppczogYXN5bmMgKGd1aWxkSWQpID0+IHtcbiAgICAgIHJldHVybiAoYXdhaXQgYm90LnJlc3QuZ2V0RW1vamlzKGd1aWxkSWQpKS5tYXAoKHJlcykgPT4gYm90LnRyYW5zZm9ybWVycy5lbW9qaShib3QsIHNuYWtlbGl6ZShyZXMpKSlcbiAgICB9LFxuICAgIGdldEFwcGxpY2F0aW9uRW1vamlzOiBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCByZXMgPSBhd2FpdCBib3QucmVzdC5nZXRBcHBsaWNhdGlvbkVtb2ppcygpXG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIGl0ZW1zOiByZXMuaXRlbXMubWFwKChpdGVtKSA9PiBib3QudHJhbnNmb3JtZXJzLmVtb2ppKGJvdCwgc25ha2VsaXplKGl0ZW0pKSksXG4gICAgICB9XG4gICAgfSxcbiAgICBnZXRGb2xsb3d1cE1lc3NhZ2U6IGFzeW5jICh0b2tlbiwgbWVzc2FnZUlkKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5tZXNzYWdlKGJvdCwgeyBtZXNzYWdlOiBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZ2V0Rm9sbG93dXBNZXNzYWdlKHRva2VuLCBtZXNzYWdlSWQpKSwgc2hhcmRJZDogMCB9KVxuICAgIH0sXG4gICAgZ2V0R2F0ZXdheUJvdDogYXN5bmMgKCkgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuZ2F0ZXdheUJvdChib3QsIHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5nZXRHYXRld2F5Qm90KCkpKVxuICAgIH0sXG4gICAgZ2V0R2xvYmFsQXBwbGljYXRpb25Db21tYW5kOiBhc3luYyAoY29tbWFuZElkKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5hcHBsaWNhdGlvbkNvbW1hbmQoYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZ2V0R2xvYmFsQXBwbGljYXRpb25Db21tYW5kKGNvbW1hbmRJZCkpKVxuICAgIH0sXG4gICAgZ2V0R2xvYmFsQXBwbGljYXRpb25Db21tYW5kczogYXN5bmMgKCkgPT4ge1xuICAgICAgcmV0dXJuIChhd2FpdCBib3QucmVzdC5nZXRHbG9iYWxBcHBsaWNhdGlvbkNvbW1hbmRzKCkpLm1hcCgocmVzKSA9PiBib3QudHJhbnNmb3JtZXJzLmFwcGxpY2F0aW9uQ29tbWFuZChib3QsIHNuYWtlbGl6ZShyZXMpKSlcbiAgICB9LFxuICAgIGdldEd1aWxkOiBhc3luYyAoZ3VpbGRJZCwgb3B0aW9ucykgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuZ3VpbGQoYm90LCB7IGd1aWxkOiBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZ2V0R3VpbGQoZ3VpbGRJZCwgb3B0aW9ucykpLCBzaGFyZElkOiAwIH0pXG4gICAgfSxcbiAgICBnZXRHdWlsZHM6IGFzeW5jIChiZWFyZXJUb2tlbiwgb3B0aW9ucykgPT4ge1xuICAgICAgcmV0dXJuIChhd2FpdCBib3QucmVzdC5nZXRHdWlsZHMoYmVhcmVyVG9rZW4sIG9wdGlvbnMpKS5tYXA8UGFydGlhbDx0eXBlb2YgYm90LnRyYW5zZm9ybWVycy4kaW5mZXJyZWRUeXBlcy5ndWlsZD4+KChyZXMpID0+XG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgZ2V0R3VpbGRzIHJldHVybnMgcGFydGlhbCBndWlsZHNcbiAgICAgICAgYm90LnRyYW5zZm9ybWVycy5ndWlsZChib3QsIHsgZ3VpbGQ6IHNuYWtlbGl6ZShyZXMpLCBzaGFyZElkOiAwIH0pLFxuICAgICAgKVxuICAgIH0sXG4gICAgZ2V0R3VpbGRBcHBsaWNhdGlvbkNvbW1hbmQ6IGFzeW5jIChjb21tYW5kSWQsIGd1aWxkSWQpID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmFwcGxpY2F0aW9uQ29tbWFuZChib3QsIHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5nZXRHdWlsZEFwcGxpY2F0aW9uQ29tbWFuZChjb21tYW5kSWQsIGd1aWxkSWQpKSlcbiAgICB9LFxuICAgIGdldEd1aWxkQXBwbGljYXRpb25Db21tYW5kczogYXN5bmMgKGd1aWxkSWQpID0+IHtcbiAgICAgIHJldHVybiAoYXdhaXQgYm90LnJlc3QuZ2V0R3VpbGRBcHBsaWNhdGlvbkNvbW1hbmRzKGd1aWxkSWQpKS5tYXAoKHJlcykgPT4gYm90LnRyYW5zZm9ybWVycy5hcHBsaWNhdGlvbkNvbW1hbmQoYm90LCBzbmFrZWxpemUocmVzKSkpXG4gICAgfSxcbiAgICBnZXRHdWlsZFByZXZpZXc6IGFzeW5jIChndWlsZElkKSA9PiB7XG4gICAgICByZXR1cm4gYXdhaXQgYm90LnJlc3QuZ2V0R3VpbGRQcmV2aWV3KGd1aWxkSWQpXG4gICAgICAvLyByZXR1cm4gYm90LnRyYW5zZm9ybWVycy54eHgoYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZ2V0R3VpbGRQcmV2aWV3KGd1aWxkSWQpKSlcbiAgICB9LFxuICAgIGdldEd1aWxkU3RpY2tlcjogYXN5bmMgKGd1aWxkSWQsIHN0aWNrZXJJZCkgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuc3RpY2tlcihib3QsIHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5nZXRHdWlsZFN0aWNrZXIoZ3VpbGRJZCwgc3RpY2tlcklkKSkpXG4gICAgfSxcbiAgICBnZXRHdWlsZFN0aWNrZXJzOiBhc3luYyAoZ3VpbGRJZCkgPT4ge1xuICAgICAgcmV0dXJuIChhd2FpdCBib3QucmVzdC5nZXRHdWlsZFN0aWNrZXJzKGd1aWxkSWQpKS5tYXAoKHJlcykgPT4gYm90LnRyYW5zZm9ybWVycy5zdGlja2VyKGJvdCwgc25ha2VsaXplKHJlcykpKVxuICAgIH0sXG4gICAgZ2V0R3VpbGRUZW1wbGF0ZTogYXN5bmMgKHRlbXBsYXRlQ29kZSkgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMudGVtcGxhdGUoYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZ2V0R3VpbGRUZW1wbGF0ZSh0ZW1wbGF0ZUNvZGUpKSlcbiAgICB9LFxuICAgIGdldEd1aWxkVGVtcGxhdGVzOiBhc3luYyAoZ3VpbGRJZCkgPT4ge1xuICAgICAgcmV0dXJuIChhd2FpdCBib3QucmVzdC5nZXRHdWlsZFRlbXBsYXRlcyhndWlsZElkKSkubWFwKChyZXMpID0+IGJvdC50cmFuc2Zvcm1lcnMudGVtcGxhdGUoYm90LCBzbmFrZWxpemUocmVzKSkpXG4gICAgfSxcbiAgICBnZXRHdWlsZFdlYmhvb2tzOiBhc3luYyAoZ3VpbGRJZCkgPT4ge1xuICAgICAgcmV0dXJuIChhd2FpdCBib3QucmVzdC5nZXRHdWlsZFdlYmhvb2tzKGd1aWxkSWQpKS5tYXAoKHJlcykgPT4gYm90LnRyYW5zZm9ybWVycy53ZWJob29rKGJvdCwgc25ha2VsaXplKHJlcykpKVxuICAgIH0sXG4gICAgZ2V0SW50ZWdyYXRpb25zOiBhc3luYyAoZ3VpbGRJZCkgPT4ge1xuICAgICAgcmV0dXJuIChhd2FpdCBib3QucmVzdC5nZXRJbnRlZ3JhdGlvbnMoZ3VpbGRJZCkpLm1hcCgocmVzKSA9PlxuICAgICAgICBib3QudHJhbnNmb3JtZXJzLmludGVncmF0aW9uKGJvdCwgc25ha2VsaXplKHsgLi4ucmVzLCBndWlsZElkOiBndWlsZElkLnRvU3RyaW5nKCkgfSkpLFxuICAgICAgKVxuICAgIH0sXG4gICAgZ2V0SW52aXRlOiBhc3luYyAoaW52aXRlQ29kZSwgb3B0aW9ucykgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuaW52aXRlKGJvdCwgeyBpbnZpdGU6IHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5nZXRJbnZpdGUoaW52aXRlQ29kZSwgb3B0aW9ucykpLCBzaGFyZElkOiAwIH0pXG4gICAgfSxcbiAgICBnZXRJbnZpdGVzOiBhc3luYyAoZ3VpbGRJZCkgPT4ge1xuICAgICAgcmV0dXJuIChhd2FpdCBib3QucmVzdC5nZXRJbnZpdGVzKGd1aWxkSWQpKS5tYXAoKHJlcykgPT4gYm90LnRyYW5zZm9ybWVycy5pbnZpdGUoYm90LCB7IGludml0ZTogc25ha2VsaXplKHJlcyksIHNoYXJkSWQ6IDAgfSkpXG4gICAgfSxcbiAgICBnZXRNZXNzYWdlOiBhc3luYyAoY2hhbm5lbElkLCBtZXNzYWdlSWQpID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLm1lc3NhZ2UoYm90LCB7IG1lc3NhZ2U6IHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5nZXRNZXNzYWdlKGNoYW5uZWxJZCwgbWVzc2FnZUlkKSksIHNoYXJkSWQ6IDAgfSlcbiAgICB9LFxuICAgIGdldE1lc3NhZ2VzOiBhc3luYyAoY2hhbm5lbElkLCBvcHRpb25zKSA9PiB7XG4gICAgICByZXR1cm4gKGF3YWl0IGJvdC5yZXN0LmdldE1lc3NhZ2VzKGNoYW5uZWxJZCwgb3B0aW9ucykpLm1hcCgocmVzKSA9PiBib3QudHJhbnNmb3JtZXJzLm1lc3NhZ2UoYm90LCB7IG1lc3NhZ2U6IHNuYWtlbGl6ZShyZXMpLCBzaGFyZElkOiAwIH0pKVxuICAgIH0sXG4gICAgZ2V0U3RpY2tlclBhY2s6IGFzeW5jIChzdGlja2VyUGFja0lkKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5zdGlja2VyUGFjayhib3QsIHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5nZXRTdGlja2VyUGFjayhzdGlja2VyUGFja0lkKSkpXG4gICAgfSxcbiAgICBnZXRTdGlja2VyUGFja3M6IGFzeW5jICgpID0+IHtcbiAgICAgIHJldHVybiAoYXdhaXQgYm90LnJlc3QuZ2V0U3RpY2tlclBhY2tzKCkpLm1hcCgocmVzKSA9PiBib3QudHJhbnNmb3JtZXJzLnN0aWNrZXJQYWNrKGJvdCwgc25ha2VsaXplKHJlcykpKVxuICAgIH0sXG4gICAgZ2V0T3JpZ2luYWxJbnRlcmFjdGlvblJlc3BvbnNlOiBhc3luYyAodG9rZW4pID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLm1lc3NhZ2UoYm90LCB7IG1lc3NhZ2U6IHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5nZXRPcmlnaW5hbEludGVyYWN0aW9uUmVzcG9uc2UodG9rZW4pKSwgc2hhcmRJZDogMCB9KVxuICAgIH0sXG4gICAgZ2V0Q2hhbm5lbFBpbnM6IGFzeW5jIChjaGFubmVsSWQsIG9wdGlvbnMpID0+IHtcbiAgICAgIGNvbnN0IHJlcyA9IHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5nZXRDaGFubmVsUGlucyhjaGFubmVsSWQsIG9wdGlvbnMpKVxuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBoYXNNb3JlOiByZXMuaGFzX21vcmUsXG4gICAgICAgIGl0ZW1zOiByZXMuaXRlbXMubWFwKChpdGVtKSA9PiBib3QudHJhbnNmb3JtZXJzLm1lc3NhZ2VQaW4oYm90LCBpdGVtKSksXG4gICAgICB9XG4gICAgfSxcbiAgICBnZXRQaW5uZWRNZXNzYWdlczogYXN5bmMgKGNoYW5uZWxJZCkgPT4ge1xuICAgICAgcmV0dXJuIChhd2FpdCBib3QucmVzdC5nZXRQaW5uZWRNZXNzYWdlcyhjaGFubmVsSWQpKS5tYXAoKHJlcykgPT4gYm90LnRyYW5zZm9ybWVycy5tZXNzYWdlKGJvdCwgeyBtZXNzYWdlOiBzbmFrZWxpemUocmVzKSwgc2hhcmRJZDogMCB9KSlcbiAgICB9LFxuICAgIGdldFByaXZhdGVBcmNoaXZlZFRocmVhZHM6IGFzeW5jIChjaGFubmVsSWQsIG9wdGlvbnMpID0+IHtcbiAgICAgIHJldHVybiBhd2FpdCBib3QucmVzdC5nZXRQcml2YXRlQXJjaGl2ZWRUaHJlYWRzKGNoYW5uZWxJZCwgb3B0aW9ucylcbiAgICB9LFxuICAgIGdldFByaXZhdGVKb2luZWRBcmNoaXZlZFRocmVhZHM6IGFzeW5jIChjaGFubmVsSWQsIG9wdGlvbnMpID0+IHtcbiAgICAgIHJldHVybiBhd2FpdCBib3QucmVzdC5nZXRQcml2YXRlSm9pbmVkQXJjaGl2ZWRUaHJlYWRzKGNoYW5uZWxJZCwgb3B0aW9ucylcbiAgICB9LFxuICAgIGdldFBydW5lQ291bnQ6IGFzeW5jIChndWlsZElkLCBvcHRpb25zKSA9PiB7XG4gICAgICByZXR1cm4gYXdhaXQgYm90LnJlc3QuZ2V0UHJ1bmVDb3VudChndWlsZElkLCBvcHRpb25zKVxuICAgIH0sXG4gICAgZ2V0UHVibGljQXJjaGl2ZWRUaHJlYWRzOiBhc3luYyAoY2hhbm5lbElkLCBvcHRpb25zKSA9PiB7XG4gICAgICByZXR1cm4gYXdhaXQgYm90LnJlc3QuZ2V0UHVibGljQXJjaGl2ZWRUaHJlYWRzKGNoYW5uZWxJZCwgb3B0aW9ucylcbiAgICB9LFxuICAgIGdldFJvbGVzOiBhc3luYyAoZ3VpbGRJZCkgPT4ge1xuICAgICAgcmV0dXJuIHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5nZXRSb2xlcyhndWlsZElkKSkubWFwKChyb2xlKSA9PiBib3QudHJhbnNmb3JtZXJzLnJvbGUoYm90LCB7IHJvbGUsIGd1aWxkSWQgfSkpXG4gICAgfSxcbiAgICBnZXRSb2xlOiBhc3luYyAoZ3VpbGRJZCwgcm9sZUlkKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5yb2xlKGJvdCwgeyByb2xlOiBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZ2V0Um9sZShndWlsZElkLCByb2xlSWQpKSwgZ3VpbGRJZCB9KVxuICAgIH0sXG4gICAgZ2V0U2NoZWR1bGVkRXZlbnQ6IGFzeW5jIChndWlsZElkLCBldmVudElkLCBvcHRpb25zKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5zY2hlZHVsZWRFdmVudChib3QsIHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5nZXRTY2hlZHVsZWRFdmVudChndWlsZElkLCBldmVudElkLCBvcHRpb25zKSkpXG4gICAgfSxcbiAgICBnZXRTY2hlZHVsZWRFdmVudHM6IGFzeW5jIChndWlsZElkLCBvcHRpb25zKSA9PiB7XG4gICAgICByZXR1cm4gKGF3YWl0IGJvdC5yZXN0LmdldFNjaGVkdWxlZEV2ZW50cyhndWlsZElkLCBvcHRpb25zKSkubWFwKChyZXMpID0+IGJvdC50cmFuc2Zvcm1lcnMuc2NoZWR1bGVkRXZlbnQoYm90LCBzbmFrZWxpemUocmVzKSkpXG4gICAgfSxcbiAgICBnZXRTY2hlZHVsZWRFdmVudFVzZXJzOiBhc3luYyAoZ3VpbGRJZCwgZXZlbnRJZCwgb3B0aW9ucykgPT4ge1xuICAgICAgcmV0dXJuIChhd2FpdCBib3QucmVzdC5nZXRTY2hlZHVsZWRFdmVudFVzZXJzKGd1aWxkSWQsIGV2ZW50SWQsIG9wdGlvbnMpKS5tYXAoKHUpID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICB1c2VyOiBib3QudHJhbnNmb3JtZXJzLnVzZXIoYm90LCBzbmFrZWxpemUodS51c2VyKSksXG4gICAgICAgICAgbWVtYmVyOiB1Lm1lbWJlciAmJiBib3QudHJhbnNmb3JtZXJzLm1lbWJlcihib3QsIHNuYWtlbGl6ZSh1Lm1lbWJlciksIGd1aWxkSWQsIGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHUudXNlci5pZCkpLFxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH0sXG4gICAgZ2V0U2Vzc2lvbkluZm86IGFzeW5jICgpID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmdhdGV3YXlCb3QoYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZ2V0U2Vzc2lvbkluZm8oKSkpXG4gICAgfSxcbiAgICBnZXRTdGFnZUluc3RhbmNlOiBhc3luYyAoY2hhbm5lbElkKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5zdGFnZUluc3RhbmNlKGJvdCwgc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmdldFN0YWdlSW5zdGFuY2UoY2hhbm5lbElkKSkpXG4gICAgfSxcbiAgICBnZXRPd25Wb2ljZVN0YXRlOiBhc3luYyAoZ3VpbGRJZCkgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMudm9pY2VTdGF0ZShib3QsIHsgZ3VpbGRJZCwgdm9pY2VTdGF0ZTogc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmdldE93blZvaWNlU3RhdGUoZ3VpbGRJZCkpIH0pXG4gICAgfSxcbiAgICBnZXRVc2VyVm9pY2VTdGF0ZTogYXN5bmMgKGd1aWxkSWQsIHVzZXJJZCkgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMudm9pY2VTdGF0ZShib3QsIHsgZ3VpbGRJZCwgdm9pY2VTdGF0ZTogc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmdldFVzZXJWb2ljZVN0YXRlKGd1aWxkSWQsIHVzZXJJZCkpIH0pXG4gICAgfSxcbiAgICBnZXRTdGlja2VyOiBhc3luYyAoc3RpY2tlcklkKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5zdGlja2VyKGJvdCwgc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmdldFN0aWNrZXIoc3RpY2tlcklkKSkpXG4gICAgfSxcbiAgICBnZXRUaHJlYWRNZW1iZXI6IGFzeW5jIChjaGFubmVsSWQsIHVzZXJJZCwgb3B0aW9ucykgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMudGhyZWFkTWVtYmVyKGJvdCwgc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmdldFRocmVhZE1lbWJlcihjaGFubmVsSWQsIHVzZXJJZCwgb3B0aW9ucykpKVxuICAgIH0sXG4gICAgZ2V0VGhyZWFkTWVtYmVyczogYXN5bmMgKGNoYW5uZWxJZCwgb3B0aW9ucykgPT4ge1xuICAgICAgcmV0dXJuIChhd2FpdCBib3QucmVzdC5nZXRUaHJlYWRNZW1iZXJzKGNoYW5uZWxJZCwgb3B0aW9ucykpLm1hcCgocmVzKSA9PiBib3QudHJhbnNmb3JtZXJzLnRocmVhZE1lbWJlcihib3QsIHNuYWtlbGl6ZShyZXMpKSlcbiAgICB9LFxuICAgIGdldFJlYWN0aW9uczogYXN5bmMgKGNoYW5uZWxJZCwgbWVzc2FnZUlkLCByZWFjdGlvbiwgb3B0aW9ucykgPT4ge1xuICAgICAgcmV0dXJuIChhd2FpdCBib3QucmVzdC5nZXRSZWFjdGlvbnMoY2hhbm5lbElkLCBtZXNzYWdlSWQsIHJlYWN0aW9uLCBvcHRpb25zKSkubWFwKChyZXMpID0+IGJvdC50cmFuc2Zvcm1lcnMudXNlcihib3QsIHNuYWtlbGl6ZShyZXMpKSlcbiAgICB9LFxuICAgIGdldFVzZXI6IGFzeW5jIChpZCkgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMudXNlcihib3QsIHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5nZXRVc2VyKGlkKSkpXG4gICAgfSxcbiAgICBnZXRDdXJyZW50VXNlcjogYXN5bmMgKGJlYXJlclRva2VuKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy51c2VyKGJvdCwgc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmdldEN1cnJlbnRVc2VyKGJlYXJlclRva2VuKSkpXG4gICAgfSxcbiAgICBnZXRVc2VyQ29ubmVjdGlvbnM6IGFzeW5jIChiZWFyZXJUb2tlbikgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJvdC5yZXN0LmdldFVzZXJDb25uZWN0aW9ucyhiZWFyZXJUb2tlbilcbiAgICB9LFxuICAgIGdldFVzZXJBcHBsaWNhdGlvblJvbGVDb25uZWN0aW9uOiBhc3luYyAoYmVhcmVyVG9rZW4sIGFwcGxpY2F0aW9uSWQpID0+IHtcbiAgICAgIHJldHVybiBhd2FpdCBib3QucmVzdC5nZXRVc2VyQXBwbGljYXRpb25Sb2xlQ29ubmVjdGlvbihiZWFyZXJUb2tlbiwgYXBwbGljYXRpb25JZClcbiAgICB9LFxuICAgIGdldFZhbml0eVVybDogYXN5bmMgKGd1aWxkSWQpID0+IHtcbiAgICAgIHJldHVybiBhd2FpdCBib3QucmVzdC5nZXRWYW5pdHlVcmwoZ3VpbGRJZClcbiAgICB9LFxuICAgIGdldFZvaWNlUmVnaW9uczogYXN5bmMgKGd1aWxkSWQpID0+IHtcbiAgICAgIHJldHVybiAoYXdhaXQgYm90LnJlc3QuZ2V0Vm9pY2VSZWdpb25zKGd1aWxkSWQpKS5tYXAoKHJlcykgPT4gYm90LnRyYW5zZm9ybWVycy52b2ljZVJlZ2lvbihib3QsIHNuYWtlbGl6ZShyZXMpKSlcbiAgICB9LFxuICAgIGdldFdlYmhvb2s6IGFzeW5jICh3ZWJob29rSWQpID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLndlYmhvb2soYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZ2V0V2ViaG9vayh3ZWJob29rSWQpKSlcbiAgICB9LFxuICAgIGdldFdlYmhvb2tNZXNzYWdlOiBhc3luYyAod2ViaG9va0lkLCB0b2tlbiwgbWVzc2FnZUlkLCBvcHRpb25zKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5tZXNzYWdlKGJvdCwgeyBtZXNzYWdlOiBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZ2V0V2ViaG9va01lc3NhZ2Uod2ViaG9va0lkLCB0b2tlbiwgbWVzc2FnZUlkLCBvcHRpb25zKSksIHNoYXJkSWQ6IDAgfSlcbiAgICB9LFxuICAgIGdldFdlYmhvb2tXaXRoVG9rZW46IGFzeW5jICh3ZWJob29rSWQsIHRva2VuKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy53ZWJob29rKGJvdCwgc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmdldFdlYmhvb2tXaXRoVG9rZW4od2ViaG9va0lkLCB0b2tlbikpKVxuICAgIH0sXG4gICAgZ2V0V2VsY29tZVNjcmVlbjogYXN5bmMgKGd1aWxkSWQpID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLndlbGNvbWVTY3JlZW4oYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZ2V0V2VsY29tZVNjcmVlbihndWlsZElkKSkpXG4gICAgfSxcbiAgICBnZXRXaWRnZXQ6IGFzeW5jIChndWlsZElkKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy53aWRnZXQoYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZ2V0V2lkZ2V0KGd1aWxkSWQpKSlcbiAgICB9LFxuICAgIGdldFdpZGdldFNldHRpbmdzOiBhc3luYyAoZ3VpbGRJZCkgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMud2lkZ2V0U2V0dGluZ3MoYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZ2V0V2lkZ2V0U2V0dGluZ3MoZ3VpbGRJZCkpKVxuICAgIH0sXG4gICAgcHVibGlzaE1lc3NhZ2U6IGFzeW5jIChjaGFubmVsSWQsIG1lc3NhZ2VJZCkgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMubWVzc2FnZShib3QsIHsgbWVzc2FnZTogc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LnB1Ymxpc2hNZXNzYWdlKGNoYW5uZWxJZCwgbWVzc2FnZUlkKSksIHNoYXJkSWQ6IDAgfSlcbiAgICB9LFxuICAgIHNlbmRNZXNzYWdlOiBhc3luYyAoY2hhbm5lbElkLCBvcHRpb25zKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5tZXNzYWdlKGJvdCwgeyBtZXNzYWdlOiBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3Quc2VuZE1lc3NhZ2UoY2hhbm5lbElkLCBvcHRpb25zKSksIHNoYXJkSWQ6IDAgfSlcbiAgICB9LFxuICAgIHNlbmRGb2xsb3d1cE1lc3NhZ2U6IGFzeW5jICh0b2tlbiwgb3B0aW9ucykgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMubWVzc2FnZShib3QsIHsgbWVzc2FnZTogc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LnNlbmRGb2xsb3d1cE1lc3NhZ2UodG9rZW4sIG9wdGlvbnMpKSwgc2hhcmRJZDogMCB9KVxuICAgIH0sXG4gICAgc3RhcnRUaHJlYWRXaXRoTWVzc2FnZTogYXN5bmMgKGNoYW5uZWxJZCwgbWVzc2FnZUlkLCBvcHRpb25zLCByZWFzb24pID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmNoYW5uZWwoYm90LCB7XG4gICAgICAgIGNoYW5uZWw6IHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5zdGFydFRocmVhZFdpdGhNZXNzYWdlKGNoYW5uZWxJZCwgbWVzc2FnZUlkLCBvcHRpb25zLCByZWFzb24pKSxcbiAgICAgIH0pXG4gICAgfSxcbiAgICBzdGFydFRocmVhZFdpdGhvdXRNZXNzYWdlOiBhc3luYyAoY2hhbm5lbElkLCBvcHRpb25zLCByZWFzb24pID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmNoYW5uZWwoYm90LCB7IGNoYW5uZWw6IHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5zdGFydFRocmVhZFdpdGhvdXRNZXNzYWdlKGNoYW5uZWxJZCwgb3B0aW9ucywgcmVhc29uKSkgfSlcbiAgICB9LFxuICAgIHN5bmNHdWlsZFRlbXBsYXRlOiBhc3luYyAoZ3VpbGRJZCkgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMudGVtcGxhdGUoYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3Quc3luY0d1aWxkVGVtcGxhdGUoZ3VpbGRJZCkpKVxuICAgIH0sXG4gICAgdXBzZXJ0R2xvYmFsQXBwbGljYXRpb25Db21tYW5kczogYXN5bmMgKGNvbW1hbmRzLCBvcHRpb25zKSA9PiB7XG4gICAgICByZXR1cm4gKGF3YWl0IGJvdC5yZXN0LnVwc2VydEdsb2JhbEFwcGxpY2F0aW9uQ29tbWFuZHMoY29tbWFuZHMsIG9wdGlvbnMpKS5tYXAoKHJlcykgPT5cbiAgICAgICAgYm90LnRyYW5zZm9ybWVycy5hcHBsaWNhdGlvbkNvbW1hbmQoYm90LCBzbmFrZWxpemUocmVzKSksXG4gICAgICApXG4gICAgfSxcbiAgICB1cHNlcnRHdWlsZEFwcGxpY2F0aW9uQ29tbWFuZHM6IGFzeW5jIChndWlsZElkLCBjb21tYW5kcywgb3B0aW9ucykgPT4ge1xuICAgICAgcmV0dXJuIChhd2FpdCBib3QucmVzdC51cHNlcnRHdWlsZEFwcGxpY2F0aW9uQ29tbWFuZHMoZ3VpbGRJZCwgY29tbWFuZHMsIG9wdGlvbnMpKS5tYXAoKHJlcykgPT5cbiAgICAgICAgYm90LnRyYW5zZm9ybWVycy5hcHBsaWNhdGlvbkNvbW1hbmQoYm90LCBzbmFrZWxpemUocmVzKSksXG4gICAgICApXG4gICAgfSxcbiAgICBlZGl0Qm90TWVtYmVyOiBhc3luYyAoZ3VpbGRJZCwgb3B0aW9ucywgcmVhc29uKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5tZW1iZXIoYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZWRpdEJvdE1lbWJlcihndWlsZElkLCBvcHRpb25zLCByZWFzb24pKSwgZ3VpbGRJZCwgYm90LmlkKVxuICAgIH0sXG4gICAgZWRpdE1lbWJlcjogYXN5bmMgKGd1aWxkSWQsIHVzZXJJZCwgb3B0aW9ucywgcmVhc29uKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5tZW1iZXIoYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZWRpdE1lbWJlcihndWlsZElkLCB1c2VySWQsIG9wdGlvbnMsIHJlYXNvbikpLCBndWlsZElkLCB1c2VySWQpXG4gICAgfSxcbiAgICBnZXRNZW1iZXI6IGFzeW5jIChndWlsZElkLCB1c2VySWQpID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLm1lbWJlcihib3QsIHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5nZXRNZW1iZXIoZ3VpbGRJZCwgdXNlcklkKSksIGd1aWxkSWQsIHVzZXJJZClcbiAgICB9LFxuICAgIGdldEN1cnJlbnRNZW1iZXI6IGFzeW5jIChndWlsZElkLCBiZWFyZXJUb2tlbikgPT4ge1xuICAgICAgY29uc3QgcmVzID0gYXdhaXQgYm90LnJlc3QuZ2V0Q3VycmVudE1lbWJlcihndWlsZElkLCBiZWFyZXJUb2tlbilcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLm1lbWJlcihib3QsIHNuYWtlbGl6ZShyZXMpLCBndWlsZElkLCBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShyZXMudXNlci5pZCkpXG4gICAgfSxcbiAgICBnZXRNZW1iZXJzOiBhc3luYyAoZ3VpbGRJZCwgb3B0aW9ucykgPT4ge1xuICAgICAgcmV0dXJuIChhd2FpdCBib3QucmVzdC5nZXRNZW1iZXJzKGd1aWxkSWQsIG9wdGlvbnMpKS5tYXAoKHJlcykgPT5cbiAgICAgICAgYm90LnRyYW5zZm9ybWVycy5tZW1iZXIoYm90LCBzbmFrZWxpemUocmVzKSwgZ3VpbGRJZCwgYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocmVzLnVzZXIuaWQpKSxcbiAgICAgIClcbiAgICB9LFxuICAgIHBydW5lTWVtYmVyczogYXN5bmMgKGd1aWxkSWQsIG9wdGlvbnMsIHJlYXNvbikgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJvdC5yZXN0LnBydW5lTWVtYmVycyhndWlsZElkLCBvcHRpb25zLCByZWFzb24pXG4gICAgfSxcbiAgICBzZWFyY2hNZW1iZXJzOiBhc3luYyAoZ3VpbGRJZCwgcXVlcnksIG9wdGlvbnMpID0+IHtcbiAgICAgIHJldHVybiAoYXdhaXQgYm90LnJlc3Quc2VhcmNoTWVtYmVycyhndWlsZElkLCBxdWVyeSwgb3B0aW9ucykpLm1hcCgocmVzKSA9PlxuICAgICAgICBib3QudHJhbnNmb3JtZXJzLm1lbWJlcihib3QsIHNuYWtlbGl6ZShyZXMpLCBndWlsZElkLCBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShyZXMudXNlci5pZCkpLFxuICAgICAgKVxuICAgIH0sXG4gICAgYnVsa0Jhbk1lbWJlcnM6IGFzeW5jIChndWlsZElkLCBvcHRpb25zLCByZWFzb24pID0+IHtcbiAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IGJvdC5yZXN0LmJ1bGtCYW5NZW1iZXJzKGd1aWxkSWQsIG9wdGlvbnMsIHJlYXNvbilcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgYmFubmVkVXNlcnM6IHJlcy5iYW5uZWRVc2Vycy5tYXAoKHgpID0+IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHgpKSxcbiAgICAgICAgZmFpbGVkVXNlcnM6IHJlcy5mYWlsZWRVc2Vycy5tYXAoKHgpID0+IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHgpKSxcbiAgICAgIH1cbiAgICB9LFxuICAgIGdldEFwcGxpY2F0aW9uQWN0aXZpdHlJbnN0YW5jZTogYXN5bmMgKGFwcGxpY2F0aW9uSWQsIGluc3RhbmNlSWQpID0+IHtcbiAgICAgIHJldHVybiBhd2FpdCBib3QucmVzdC5nZXRBcHBsaWNhdGlvbkFjdGl2aXR5SW5zdGFuY2UoYXBwbGljYXRpb25JZCwgaW5zdGFuY2VJZClcbiAgICB9LFxuICAgIGxpc3RBcHBsaWNhdGlvblJvbGVDb25uZWN0aW9uc01ldGFkYXRhUmVjb3JkczogYXN5bmMgKGFwcGxpY2F0aW9uSWQpID0+IHtcbiAgICAgIHJldHVybiBhd2FpdCBib3QucmVzdC5saXN0QXBwbGljYXRpb25Sb2xlQ29ubmVjdGlvbnNNZXRhZGF0YVJlY29yZHMoYXBwbGljYXRpb25JZClcbiAgICB9LFxuICAgIHVwZGF0ZUFwcGxpY2F0aW9uUm9sZUNvbm5lY3Rpb25zTWV0YWRhdGFSZWNvcmRzOiBhc3luYyAoYXBwbGljYXRpb25JZCwgb3B0aW9ucykgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJvdC5yZXN0LnVwZGF0ZUFwcGxpY2F0aW9uUm9sZUNvbm5lY3Rpb25zTWV0YWRhdGFSZWNvcmRzKGFwcGxpY2F0aW9uSWQsIG9wdGlvbnMpXG4gICAgfSxcbiAgICBjcmVhdGVMb2JieTogYXN5bmMgKG9wdGlvbnMpID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmxvYmJ5KGJvdCwgc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmNyZWF0ZUxvYmJ5KG9wdGlvbnMpKSlcbiAgICB9LFxuICAgIGdldExvYmJ5OiBhc3luYyAobG9iYnlJZCkgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMubG9iYnkoYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZ2V0TG9iYnkobG9iYnlJZCkpKVxuICAgIH0sXG4gICAgbW9kaWZ5TG9iYnk6IGFzeW5jIChsb2JieUlkLCBvcHRpb25zKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5sb2JieShib3QsIHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5tb2RpZnlMb2JieShsb2JieUlkLCBvcHRpb25zKSkpXG4gICAgfSxcbiAgICBhZGRNZW1iZXJUb0xvYmJ5OiBhc3luYyAobG9iYnlJZCwgdXNlcklkLCBvcHRpb25zKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5sb2JieU1lbWJlcihib3QsIHNuYWtlbGl6ZShhd2FpdCBib3QucmVzdC5hZGRNZW1iZXJUb0xvYmJ5KGxvYmJ5SWQsIHVzZXJJZCwgb3B0aW9ucykpKVxuICAgIH0sXG4gICAgbGlua0NoYW5uZWxUb0xvYmJ5OiBhc3luYyAobG9iYnlJZCwgYmVhcmVyVG9rZW4sIG9wdGlvbnMpID0+IHtcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmxvYmJ5KGJvdCwgc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmxpbmtDaGFubmVsVG9Mb2JieShsb2JieUlkLCBiZWFyZXJUb2tlbiwgb3B0aW9ucykpKVxuICAgIH0sXG4gICAgdW5saW5rQ2hhbm5lbFRvTG9iYnk6IGFzeW5jIChsb2JieUlkLCBiZWFyZXJUb2tlbikgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMubG9iYnkoYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QudW5saW5rQ2hhbm5lbFRvTG9iYnkobG9iYnlJZCwgYmVhcmVyVG9rZW4pKSlcbiAgICB9LFxuICAgIC8vIEFsbCB1c2VsZXNzIHZvaWQgcmV0dXJuIGZ1bmN0aW9ucyBoZXJlXG4gICAgYWRkUmVhY3Rpb246IGFzeW5jIChjaGFubmVsSWQsIG1lc3NhZ2VJZCwgcmVhY3Rpb24pID0+IHtcbiAgICAgIHJldHVybiBhd2FpdCBib3QucmVzdC5hZGRSZWFjdGlvbihjaGFubmVsSWQsIG1lc3NhZ2VJZCwgcmVhY3Rpb24pXG4gICAgfSxcbiAgICBhZGRSZWFjdGlvbnM6IGFzeW5jIChjaGFubmVsSWQsIG1lc3NhZ2VJZCwgcmVhY3Rpb25zLCBvcmRlcmVkKSA9PiB7XG4gICAgICByZXR1cm4gYXdhaXQgYm90LnJlc3QuYWRkUmVhY3Rpb25zKGNoYW5uZWxJZCwgbWVzc2FnZUlkLCByZWFjdGlvbnMsIG9yZGVyZWQpXG4gICAgfSxcbiAgICBhZGRSb2xlOiBhc3luYyAoZ3VpbGRJZCwgdXNlcklkLCByb2xlSWQsIHJlYXNvbikgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJvdC5yZXN0LmFkZFJvbGUoZ3VpbGRJZCwgdXNlcklkLCByb2xlSWQsIHJlYXNvbilcbiAgICB9LFxuICAgIGFkZFRocmVhZE1lbWJlcjogYXN5bmMgKGNoYW5uZWxJZCwgdXNlcklkKSA9PiB7XG4gICAgICByZXR1cm4gYXdhaXQgYm90LnJlc3QuYWRkVGhyZWFkTWVtYmVyKGNoYW5uZWxJZCwgdXNlcklkKVxuICAgIH0sXG4gICAgYWRkRG1SZWNpcGllbnQ6IGFzeW5jIChjaGFubmVsSWQsIHVzZXJJZCwgb3B0aW9ucykgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJvdC5yZXN0LmFkZERtUmVjaXBpZW50KGNoYW5uZWxJZCwgdXNlcklkLCBvcHRpb25zKVxuICAgIH0sXG4gICAgYWRkR3VpbGRNZW1iZXI6IGFzeW5jIChndWlsZElkLCB1c2VySWQsIG9wdGlvbnMpID0+IHtcbiAgICAgIHJldHVybiBhd2FpdCBib3QucmVzdC5hZGRHdWlsZE1lbWJlcihndWlsZElkLCB1c2VySWQsIG9wdGlvbnMpXG4gICAgfSxcbiAgICBkZWxldGVBdXRvbW9kUnVsZTogYXN5bmMgKGd1aWxkSWQsIHJ1bGVJZCwgcmVhc29uKSA9PiB7XG4gICAgICByZXR1cm4gYXdhaXQgYm90LnJlc3QuZGVsZXRlQXV0b21vZFJ1bGUoZ3VpbGRJZCwgcnVsZUlkLCByZWFzb24pXG4gICAgfSxcbiAgICBkZWxldGVDaGFubmVsOiBhc3luYyAoY2hhbm5lbElkLCByZWFzb24pID0+IHtcbiAgICAgIHJldHVybiBhd2FpdCBib3QucmVzdC5kZWxldGVDaGFubmVsKGNoYW5uZWxJZCwgcmVhc29uKVxuICAgIH0sXG4gICAgZGVsZXRlQ2hhbm5lbFBlcm1pc3Npb25PdmVycmlkZTogYXN5bmMgKGNoYW5uZWxJZCwgb3ZlcndyaXRlSWQsIHJlYXNvbikgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJvdC5yZXN0LmRlbGV0ZUNoYW5uZWxQZXJtaXNzaW9uT3ZlcnJpZGUoY2hhbm5lbElkLCBvdmVyd3JpdGVJZCwgcmVhc29uKVxuICAgIH0sXG4gICAgZGVsZXRlRW1vamk6IGFzeW5jIChndWlsZElkLCBpZCwgcmVhc29uKSA9PiB7XG4gICAgICByZXR1cm4gYXdhaXQgYm90LnJlc3QuZGVsZXRlRW1vamkoZ3VpbGRJZCwgaWQsIHJlYXNvbilcbiAgICB9LFxuICAgIGRlbGV0ZUFwcGxpY2F0aW9uRW1vamk6IGFzeW5jIChpZCkgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJvdC5yZXN0LmRlbGV0ZUFwcGxpY2F0aW9uRW1vamkoaWQpXG4gICAgfSxcbiAgICBkZWxldGVGb2xsb3d1cE1lc3NhZ2U6IGFzeW5jICh0b2tlbiwgbWVzc2FnZUlkKSA9PiB7XG4gICAgICByZXR1cm4gYXdhaXQgYm90LnJlc3QuZGVsZXRlRm9sbG93dXBNZXNzYWdlKHRva2VuLCBtZXNzYWdlSWQpXG4gICAgfSxcbiAgICBkZWxldGVHbG9iYWxBcHBsaWNhdGlvbkNvbW1hbmQ6IGFzeW5jIChjb21tYW5kSWQpID0+IHtcbiAgICAgIHJldHVybiBhd2FpdCBib3QucmVzdC5kZWxldGVHbG9iYWxBcHBsaWNhdGlvbkNvbW1hbmQoY29tbWFuZElkKVxuICAgIH0sXG4gICAgZGVsZXRlR3VpbGRBcHBsaWNhdGlvbkNvbW1hbmQ6IGFzeW5jIChjb21tYW5kSWQsIGd1aWxkSWQpID0+IHtcbiAgICAgIHJldHVybiBhd2FpdCBib3QucmVzdC5kZWxldGVHdWlsZEFwcGxpY2F0aW9uQ29tbWFuZChjb21tYW5kSWQsIGd1aWxkSWQpXG4gICAgfSxcbiAgICBkZWxldGVHdWlsZFN0aWNrZXI6IGFzeW5jIChndWlsZElkLCBzdGlja2VySWQsIHJlYXNvbikgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJvdC5yZXN0LmRlbGV0ZUd1aWxkU3RpY2tlcihndWlsZElkLCBzdGlja2VySWQsIHJlYXNvbilcbiAgICB9LFxuICAgIGRlbGV0ZUd1aWxkVGVtcGxhdGU6IGFzeW5jIChndWlsZElkLCB0ZW1wbGF0ZUNvZGUpID0+IHtcbiAgICAgIHJldHVybiBhd2FpdCBib3QucmVzdC5kZWxldGVHdWlsZFRlbXBsYXRlKGd1aWxkSWQsIHRlbXBsYXRlQ29kZSlcbiAgICB9LFxuICAgIGRlbGV0ZUludGVncmF0aW9uOiBhc3luYyAoZ3VpbGRJZCwgaW50ZWdyYXRpb25JZCwgcmVhc29uKSA9PiB7XG4gICAgICByZXR1cm4gYXdhaXQgYm90LnJlc3QuZGVsZXRlSW50ZWdyYXRpb24oZ3VpbGRJZCwgaW50ZWdyYXRpb25JZCwgcmVhc29uKVxuICAgIH0sXG4gICAgZGVsZXRlSW52aXRlOiBhc3luYyAoaW52aXRlQ29kZSwgcmVhc29uKSA9PiB7XG4gICAgICByZXR1cm4gYXdhaXQgYm90LnJlc3QuZGVsZXRlSW52aXRlKGludml0ZUNvZGUsIHJlYXNvbilcbiAgICB9LFxuICAgIGRlbGV0ZU1lc3NhZ2U6IGFzeW5jIChjaGFubmVsSWQsIG1lc3NhZ2VJZCwgcmVhc29uKSA9PiB7XG4gICAgICByZXR1cm4gYXdhaXQgYm90LnJlc3QuZGVsZXRlTWVzc2FnZShjaGFubmVsSWQsIG1lc3NhZ2VJZCwgcmVhc29uKVxuICAgIH0sXG4gICAgZGVsZXRlTWVzc2FnZXM6IGFzeW5jIChjaGFubmVsSWQsIG1lc3NhZ2VJZHMsIHJlYXNvbikgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJvdC5yZXN0LmRlbGV0ZU1lc3NhZ2VzKGNoYW5uZWxJZCwgbWVzc2FnZUlkcywgcmVhc29uKVxuICAgIH0sXG4gICAgZGVsZXRlT3JpZ2luYWxJbnRlcmFjdGlvblJlc3BvbnNlOiBhc3luYyAodG9rZW4pID0+IHtcbiAgICAgIHJldHVybiBhd2FpdCBib3QucmVzdC5kZWxldGVPcmlnaW5hbEludGVyYWN0aW9uUmVzcG9uc2UodG9rZW4pXG4gICAgfSxcbiAgICBkZWxldGVPd25SZWFjdGlvbjogYXN5bmMgKGNoYW5uZWxJZCwgbWVzc2FnZUlkLCByZWFjdGlvbikgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJvdC5yZXN0LmRlbGV0ZU93blJlYWN0aW9uKGNoYW5uZWxJZCwgbWVzc2FnZUlkLCByZWFjdGlvbilcbiAgICB9LFxuICAgIGRlbGV0ZVJlYWN0aW9uc0FsbDogYXN5bmMgKGNoYW5uZWxJZCwgbWVzc2FnZUlkKSA9PiB7XG4gICAgICByZXR1cm4gYXdhaXQgYm90LnJlc3QuZGVsZXRlUmVhY3Rpb25zQWxsKGNoYW5uZWxJZCwgbWVzc2FnZUlkKVxuICAgIH0sXG4gICAgZGVsZXRlUmVhY3Rpb25zRW1vamk6IGFzeW5jIChjaGFubmVsSWQsIG1lc3NhZ2VJZCwgcmVhY3Rpb24pID0+IHtcbiAgICAgIHJldHVybiBhd2FpdCBib3QucmVzdC5kZWxldGVSZWFjdGlvbnNFbW9qaShjaGFubmVsSWQsIG1lc3NhZ2VJZCwgcmVhY3Rpb24pXG4gICAgfSxcbiAgICBkZWxldGVSb2xlOiBhc3luYyAoZ3VpbGRJZCwgcm9sZUlkLCByZWFzb24pID0+IHtcbiAgICAgIHJldHVybiBhd2FpdCBib3QucmVzdC5kZWxldGVSb2xlKGd1aWxkSWQsIHJvbGVJZCwgcmVhc29uKVxuICAgIH0sXG4gICAgZGVsZXRlU2NoZWR1bGVkRXZlbnQ6IGFzeW5jIChndWlsZElkLCBldmVudElkKSA9PiB7XG4gICAgICByZXR1cm4gYXdhaXQgYm90LnJlc3QuZGVsZXRlU2NoZWR1bGVkRXZlbnQoZ3VpbGRJZCwgZXZlbnRJZClcbiAgICB9LFxuICAgIGRlbGV0ZVN0YWdlSW5zdGFuY2U6IGFzeW5jIChjaGFubmVsSWQsIHJlYXNvbikgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJvdC5yZXN0LmRlbGV0ZVN0YWdlSW5zdGFuY2UoY2hhbm5lbElkLCByZWFzb24pXG4gICAgfSxcbiAgICBkZWxldGVVc2VyUmVhY3Rpb246IGFzeW5jIChjaGFubmVsSWQsIG1lc3NhZ2VJZCwgdXNlcklkLCByZWFjdGlvbikgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJvdC5yZXN0LmRlbGV0ZVVzZXJSZWFjdGlvbihjaGFubmVsSWQsIG1lc3NhZ2VJZCwgdXNlcklkLCByZWFjdGlvbilcbiAgICB9LFxuICAgIGRlbGV0ZVdlYmhvb2s6IGFzeW5jICh3ZWJob29rSWQsIHJlYXNvbikgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJvdC5yZXN0LmRlbGV0ZVdlYmhvb2sod2ViaG9va0lkLCByZWFzb24pXG4gICAgfSxcbiAgICBkZWxldGVXZWJob29rTWVzc2FnZTogYXN5bmMgKHdlYmhvb2tJZCwgdG9rZW4sIG1lc3NhZ2VJZCwgb3B0aW9ucykgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJvdC5yZXN0LmRlbGV0ZVdlYmhvb2tNZXNzYWdlKHdlYmhvb2tJZCwgdG9rZW4sIG1lc3NhZ2VJZCwgb3B0aW9ucylcbiAgICB9LFxuICAgIGRlbGV0ZVdlYmhvb2tXaXRoVG9rZW46IGFzeW5jICh3ZWJob29rSWQsIHRva2VuKSA9PiB7XG4gICAgICByZXR1cm4gYXdhaXQgYm90LnJlc3QuZGVsZXRlV2ViaG9va1dpdGhUb2tlbih3ZWJob29rSWQsIHRva2VuKVxuICAgIH0sXG4gICAgZWRpdENoYW5uZWxQZXJtaXNzaW9uT3ZlcnJpZGVzOiBhc3luYyAoY2hhbm5lbElkLCBvcHRpb25zLCByZWFzb24pID0+IHtcbiAgICAgIHJldHVybiBhd2FpdCBib3QucmVzdC5lZGl0Q2hhbm5lbFBlcm1pc3Npb25PdmVycmlkZXMoY2hhbm5lbElkLCBvcHRpb25zLCByZWFzb24pXG4gICAgfSxcbiAgICBlZGl0Q2hhbm5lbFBvc2l0aW9uczogYXN5bmMgKGd1aWxkSWQsIGNoYW5uZWxQb3NpdGlvbnMpID0+IHtcbiAgICAgIHJldHVybiBhd2FpdCBib3QucmVzdC5lZGl0Q2hhbm5lbFBvc2l0aW9ucyhndWlsZElkLCBjaGFubmVsUG9zaXRpb25zKVxuICAgIH0sXG4gICAgZWRpdE93blZvaWNlU3RhdGU6IGFzeW5jIChndWlsZElkLCBvcHRpb25zKSA9PiB7XG4gICAgICByZXR1cm4gYXdhaXQgYm90LnJlc3QuZWRpdE93blZvaWNlU3RhdGUoZ3VpbGRJZCwgb3B0aW9ucylcbiAgICB9LFxuICAgIGVkaXRVc2VyVm9pY2VTdGF0ZTogYXN5bmMgKGd1aWxkSWQsIG9wdGlvbnMpID0+IHtcbiAgICAgIHJldHVybiBhd2FpdCBib3QucmVzdC5lZGl0VXNlclZvaWNlU3RhdGUoZ3VpbGRJZCwgb3B0aW9ucylcbiAgICB9LFxuICAgIGVkaXRVc2VyQXBwbGljYXRpb25Sb2xlQ29ubmVjdGlvbjogYXN5bmMgKGJlYXJlclRva2VuLCBhcHBsaWNhdGlvbklkLCBvcHRpb25zKSA9PiB7XG4gICAgICByZXR1cm4gYXdhaXQgYm90LnJlc3QuZWRpdFVzZXJBcHBsaWNhdGlvblJvbGVDb25uZWN0aW9uKGJlYXJlclRva2VuLCBhcHBsaWNhdGlvbklkLCBvcHRpb25zKVxuICAgIH0sXG4gICAgam9pblRocmVhZDogYXN5bmMgKGNoYW5uZWxJZCkgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJvdC5yZXN0LmpvaW5UaHJlYWQoY2hhbm5lbElkKVxuICAgIH0sXG4gICAgbGVhdmVHdWlsZDogYXN5bmMgKGd1aWxkSWQpID0+IHtcbiAgICAgIHJldHVybiBhd2FpdCBib3QucmVzdC5sZWF2ZUd1aWxkKGd1aWxkSWQpXG4gICAgfSxcbiAgICBsZWF2ZVRocmVhZDogYXN5bmMgKGNoYW5uZWxJZCkgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJvdC5yZXN0LmxlYXZlVGhyZWFkKGNoYW5uZWxJZClcbiAgICB9LFxuICAgIHJlbW92ZVJvbGU6IGFzeW5jIChndWlsZElkLCB1c2VySWQsIHJvbGVJZCwgcmVhc29uKSA9PiB7XG4gICAgICByZXR1cm4gYXdhaXQgYm90LnJlc3QucmVtb3ZlUm9sZShndWlsZElkLCB1c2VySWQsIHJvbGVJZCwgcmVhc29uKVxuICAgIH0sXG4gICAgcmVtb3ZlVGhyZWFkTWVtYmVyOiBhc3luYyAoY2hhbm5lbElkLCB1c2VySWQpID0+IHtcbiAgICAgIHJldHVybiBhd2FpdCBib3QucmVzdC5yZW1vdmVUaHJlYWRNZW1iZXIoY2hhbm5lbElkLCB1c2VySWQpXG4gICAgfSxcbiAgICByZW1vdmVEbVJlY2lwaWVudDogYXN5bmMgKGNoYW5uZWxJZCwgdXNlcklkKSA9PiB7XG4gICAgICByZXR1cm4gYXdhaXQgYm90LnJlc3QucmVtb3ZlRG1SZWNpcGllbnQoY2hhbm5lbElkLCB1c2VySWQpXG4gICAgfSxcbiAgICBzZW5kSW50ZXJhY3Rpb25SZXNwb25zZTogYXN5bmMgKGludGVyYWN0aW9uSWQsIHRva2VuLCBvcHRpb25zLCBwYXJhbXMpID0+IHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgYm90LnJlc3Quc2VuZEludGVyYWN0aW9uUmVzcG9uc2UoaW50ZXJhY3Rpb25JZCwgdG9rZW4sIG9wdGlvbnMsIHBhcmFtcylcblxuICAgICAgaWYgKCFyZXNwb25zZSkgcmV0dXJuXG5cbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmludGVyYWN0aW9uQ2FsbGJhY2tSZXNwb25zZShib3QsIHsgaW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlOiBzbmFrZWxpemUocmVzcG9uc2UpLCBzaGFyZElkOiAwIH0pXG4gICAgfSxcbiAgICB0cmlnZ2VyVHlwaW5nSW5kaWNhdG9yOiBhc3luYyAoY2hhbm5lbElkKSA9PiB7XG4gICAgICByZXR1cm4gYXdhaXQgYm90LnJlc3QudHJpZ2dlclR5cGluZ0luZGljYXRvcihjaGFubmVsSWQpXG4gICAgfSxcbiAgICBiYW5NZW1iZXI6IGFzeW5jIChndWlsZElkLCB1c2VySWQsIG9wdGlvbnMsIHJlYXNvbikgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJvdC5yZXN0LmJhbk1lbWJlcihndWlsZElkLCB1c2VySWQsIG9wdGlvbnMsIHJlYXNvbilcbiAgICB9LFxuXG4gICAga2lja01lbWJlcjogYXN5bmMgKGd1aWxkSWQsIHVzZXJJZCwgcmVhc29uKSA9PiB7XG4gICAgICByZXR1cm4gYXdhaXQgYm90LnJlc3Qua2lja01lbWJlcihndWlsZElkLCB1c2VySWQsIHJlYXNvbilcbiAgICB9LFxuICAgIHBpbk1lc3NhZ2U6IGFzeW5jIChjaGFubmVsSWQsIG1lc3NhZ2VJZCwgcmVhc29uKSA9PiB7XG4gICAgICByZXR1cm4gYXdhaXQgYm90LnJlc3QucGluTWVzc2FnZShjaGFubmVsSWQsIG1lc3NhZ2VJZCwgcmVhc29uKVxuICAgIH0sXG4gICAgdW5iYW5NZW1iZXI6IGFzeW5jIChndWlsZElkLCB1c2VySWQsIHJlYXNvbikgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJvdC5yZXN0LnVuYmFuTWVtYmVyKGd1aWxkSWQsIHVzZXJJZCwgcmVhc29uKVxuICAgIH0sXG4gICAgdW5waW5NZXNzYWdlOiBhc3luYyAoY2hhbm5lbElkLCBtZXNzYWdlSWQsIHJlYXNvbikgPT4ge1xuICAgICAgcmV0dXJuIGF3YWl0IGJvdC5yZXN0LnVucGluTWVzc2FnZShjaGFubmVsSWQsIG1lc3NhZ2VJZCwgcmVhc29uKVxuICAgIH0sXG4gICAgZ2V0R3VpbGRPbmJvYXJkaW5nOiBhc3luYyAoZ3VpbGRJZCkgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuZ3VpbGRPbmJvYXJkaW5nKGJvdCwgc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmdldEd1aWxkT25ib2FyZGluZyhndWlsZElkKSkpXG4gICAgfSxcbiAgICBlZGl0R3VpbGRPbmJvYXJkaW5nOiBhc3luYyAoZ3VpbGRJZCwgb3B0aW9ucywgcmVhc29uKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5ndWlsZE9uYm9hcmRpbmcoYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZWRpdEd1aWxkT25ib2FyZGluZyhndWlsZElkLCBvcHRpb25zLCByZWFzb24pKSlcbiAgICB9LFxuICAgIGxpc3RFbnRpdGxlbWVudHM6IGFzeW5jIChhcHBsaWNhdGlvbklkLCBvcHRpb25zKSA9PiB7XG4gICAgICByZXR1cm4gKGF3YWl0IGJvdC5yZXN0Lmxpc3RFbnRpdGxlbWVudHMoYXBwbGljYXRpb25JZCwgb3B0aW9ucykpLm1hcCgoZW50aXRsZW1lbnQpID0+IGJvdC50cmFuc2Zvcm1lcnMuZW50aXRsZW1lbnQoYm90LCBzbmFrZWxpemUoZW50aXRsZW1lbnQpKSlcbiAgICB9LFxuICAgIGdldEVudGl0bGVtZW50OiBhc3luYyAoYXBwbGljYXRpb25JZCwgZW50aXRsZW1lbnRJZCkgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuZW50aXRsZW1lbnQoYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZ2V0RW50aXRsZW1lbnQoYXBwbGljYXRpb25JZCwgZW50aXRsZW1lbnRJZCkpKVxuICAgIH0sXG4gICAgY3JlYXRlVGVzdEVudGl0bGVtZW50OiBhc3luYyAoYXBwbGljYXRpb25JZCwgYm9keSkgPT4ge1xuICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciBjcmVhdGVUZXN0RW50aXRsZW1lbnQgZ2l2ZXMgYSBwYXJ0aWFsLCBhbmQgdGhpcyBtZXRob2QgcmV0dXJucyBhIHBhcnRpYWxcbiAgICAgIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmVudGl0bGVtZW50KGJvdCwgc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmNyZWF0ZVRlc3RFbnRpdGxlbWVudChhcHBsaWNhdGlvbklkLCBib2R5KSkpIGFzIFBhcnRpYWw8XG4gICAgICAgIHR5cGVvZiBib3QudHJhbnNmb3JtZXJzLiRpbmZlcnJlZFR5cGVzLmVudGl0bGVtZW50XG4gICAgICA+XG4gICAgfSxcbiAgICBkZWxldGVUZXN0RW50aXRsZW1lbnQ6IGFzeW5jIChhcHBsaWNhdGlvbklkLCBlbnRpdGxlbWVudElkKSA9PiB7XG4gICAgICBhd2FpdCBib3QucmVzdC5kZWxldGVUZXN0RW50aXRsZW1lbnQoYXBwbGljYXRpb25JZCwgZW50aXRsZW1lbnRJZClcbiAgICB9LFxuICAgIGxpc3RTa3VzOiBhc3luYyAoYXBwbGljYXRpb25JZCkgPT4ge1xuICAgICAgcmV0dXJuIChhd2FpdCBib3QucmVzdC5saXN0U2t1cyhhcHBsaWNhdGlvbklkKSkubWFwKChza3UpID0+IGJvdC50cmFuc2Zvcm1lcnMuc2t1KGJvdCwgc25ha2VsaXplKHNrdSkpKVxuICAgIH0sXG4gICAgZ2V0U3Vic2NyaXB0aW9uOiBhc3luYyAoc2t1SWQsIHN1YnNjcmlwdGlvbklkKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5zdWJzY3JpcHRpb24oYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuZ2V0U3Vic2NyaXB0aW9uKHNrdUlkLCBzdWJzY3JpcHRpb25JZCkpKVxuICAgIH0sXG4gICAgbGlzdFN1YnNjcmlwdGlvbnM6IGFzeW5jIChza3VJZCwgb3B0aW9ucykgPT4ge1xuICAgICAgcmV0dXJuIChhd2FpdCBib3QucmVzdC5saXN0U3Vic2NyaXB0aW9ucyhza3VJZCwgb3B0aW9ucykpLm1hcCgoc3Vic2NyaXB0aW9uKSA9PiBib3QudHJhbnNmb3JtZXJzLnN1YnNjcmlwdGlvbihib3QsIHNuYWtlbGl6ZShzdWJzY3JpcHRpb24pKSlcbiAgICB9LFxuICAgIHNlbmRTb3VuZGJvYXJkU291bmQ6IGFzeW5jIChjaGFubmVsSWQsIG9wdGlvbnMpID0+IHtcbiAgICAgIGF3YWl0IGJvdC5yZXN0LnNlbmRTb3VuZGJvYXJkU291bmQoY2hhbm5lbElkLCBvcHRpb25zKVxuICAgIH0sXG4gICAgbGlzdERlZmF1bHRTb3VuZGJvYXJkU291bmRzOiBhc3luYyAoKSA9PiB7XG4gICAgICByZXR1cm4gKGF3YWl0IGJvdC5yZXN0Lmxpc3REZWZhdWx0U291bmRib2FyZFNvdW5kcygpKS5tYXAoKHNvdW5kKSA9PiBib3QudHJhbnNmb3JtZXJzLnNvdW5kYm9hcmRTb3VuZChib3QsIHNuYWtlbGl6ZShzb3VuZCkpKVxuICAgIH0sXG4gICAgbGlzdEd1aWxkU291bmRib2FyZFNvdW5kczogYXN5bmMgKGd1aWxkSWQpID0+IHtcbiAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IGJvdC5yZXN0Lmxpc3RHdWlsZFNvdW5kYm9hcmRTb3VuZHMoZ3VpbGRJZClcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaXRlbXM6IHJlcy5pdGVtcy5tYXAoKHNvdW5kKSA9PiBib3QudHJhbnNmb3JtZXJzLnNvdW5kYm9hcmRTb3VuZChib3QsIHNuYWtlbGl6ZShzb3VuZCkpKSxcbiAgICAgIH1cbiAgICB9LFxuICAgIGdldEd1aWxkU291bmRib2FyZFNvdW5kOiBhc3luYyAoZ3VpbGRJZCwgc291bmRJZCkgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuc291bmRib2FyZFNvdW5kKGJvdCwgc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0LmdldEd1aWxkU291bmRib2FyZFNvdW5kKGd1aWxkSWQsIHNvdW5kSWQpKSlcbiAgICB9LFxuICAgIGNyZWF0ZUd1aWxkU291bmRib2FyZFNvdW5kOiBhc3luYyAoZ3VpbGRJZCwgb3B0aW9ucywgcmVhc29uKSA9PiB7XG4gICAgICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5zb3VuZGJvYXJkU291bmQoYm90LCBzbmFrZWxpemUoYXdhaXQgYm90LnJlc3QuY3JlYXRlR3VpbGRTb3VuZGJvYXJkU291bmQoZ3VpbGRJZCwgb3B0aW9ucywgcmVhc29uKSkpXG4gICAgfSxcbiAgICBtb2RpZnlHdWlsZFNvdW5kYm9hcmRTb3VuZDogYXN5bmMgKGd1aWxkSWQsIHNvdW5kSWQsIG9wdGlvbnMsIHJlYXNvbikgPT4ge1xuICAgICAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuc291bmRib2FyZFNvdW5kKGJvdCwgc25ha2VsaXplKGF3YWl0IGJvdC5yZXN0Lm1vZGlmeUd1aWxkU291bmRib2FyZFNvdW5kKGd1aWxkSWQsIHNvdW5kSWQsIG9wdGlvbnMsIHJlYXNvbikpKVxuICAgIH0sXG4gICAgZGVsZXRlR3VpbGRTb3VuZGJvYXJkU291bmQ6IGFzeW5jIChndWlsZElkLCBzb3VuZElkLCByZWFzb24pID0+IHtcbiAgICAgIGF3YWl0IGJvdC5yZXN0LmRlbGV0ZUd1aWxkU291bmRib2FyZFNvdW5kKGd1aWxkSWQsIHNvdW5kSWQsIHJlYXNvbilcbiAgICB9LFxuICAgIGRlbGV0ZUxvYmJ5OiBhc3luYyAobG9iYnlJZCkgPT4ge1xuICAgICAgYXdhaXQgYm90LnJlc3QuZGVsZXRlTG9iYnkobG9iYnlJZClcbiAgICB9LFxuICAgIHJlbW92ZU1lbWJlckZyb21Mb2JieTogYXN5bmMgKGxvYmJ5SWQsIHVzZXJJZCkgPT4ge1xuICAgICAgYXdhaXQgYm90LnJlc3QucmVtb3ZlTWVtYmVyRnJvbUxvYmJ5KGxvYmJ5SWQsIHVzZXJJZClcbiAgICB9LFxuICAgIGxlYXZlTG9iYnk6IGFzeW5jIChsb2JieUlkLCBiZWFyZXJUb2tlbikgPT4ge1xuICAgICAgYXdhaXQgYm90LnJlc3QubGVhdmVMb2JieShsb2JieUlkLCBiZWFyZXJUb2tlbilcbiAgICB9LFxuICB9XG59XG5cbmV4cG9ydCB0eXBlIEJvdEhlbHBlcnM8VFByb3BzIGV4dGVuZHMgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIFRCZWhhdmlvciBleHRlbmRzIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+ID0ge1xuICBjcmVhdGVBdXRvbW9kUnVsZTogKGd1aWxkSWQ6IEJpZ1N0cmluZywgb3B0aW9uczogQ3JlYXRlQXV0b01vZGVyYXRpb25SdWxlT3B0aW9ucywgcmVhc29uPzogc3RyaW5nKSA9PiBQcm9taXNlPEF1dG9Nb2RlcmF0aW9uUnVsZT5cbiAgY3JlYXRlQ2hhbm5lbDogKGd1aWxkSWQ6IEJpZ1N0cmluZywgb3B0aW9uczogQ3JlYXRlR3VpbGRDaGFubmVsLCByZWFzb24/OiBzdHJpbmcpID0+IFByb21pc2U8U2V0dXBEZXNpcmVkUHJvcHM8Q2hhbm5lbCwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICBjcmVhdGVFbW9qaTogKGd1aWxkSWQ6IEJpZ1N0cmluZywgb3B0aW9uczogQ3JlYXRlR3VpbGRFbW9qaSwgcmVhc29uPzogc3RyaW5nKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPEVtb2ppLCBUUHJvcHMsIFRCZWhhdmlvcj4+XG4gIGNyZWF0ZUFwcGxpY2F0aW9uRW1vamk6IChvcHRpb25zOiBDcmVhdGVBcHBsaWNhdGlvbkVtb2ppKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPEVtb2ppLCBUUHJvcHMsIFRCZWhhdmlvcj4+XG4gIGNyZWF0ZUZvcnVtVGhyZWFkOiAoXG4gICAgY2hhbm5lbElkOiBCaWdTdHJpbmcsXG4gICAgb3B0aW9uczogQ3JlYXRlRm9ydW1Qb3N0V2l0aE1lc3NhZ2UsXG4gICAgcmVhc29uPzogc3RyaW5nLFxuICApID0+IFByb21pc2U8U2V0dXBEZXNpcmVkUHJvcHM8Q2hhbm5lbCwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICBjcmVhdGVHbG9iYWxBcHBsaWNhdGlvbkNvbW1hbmQ6IChjb21tYW5kOiBDcmVhdGVBcHBsaWNhdGlvbkNvbW1hbmQsIG9wdGlvbnM/OiBDcmVhdGVHbG9iYWxBcHBsaWNhdGlvbkNvbW1hbmRPcHRpb25zKSA9PiBQcm9taXNlPEFwcGxpY2F0aW9uQ29tbWFuZD5cbiAgY3JlYXRlR3VpbGRBcHBsaWNhdGlvbkNvbW1hbmQ6IChcbiAgICBjb21tYW5kOiBDcmVhdGVBcHBsaWNhdGlvbkNvbW1hbmQsXG4gICAgZ3VpbGRJZDogQmlnU3RyaW5nLFxuICAgIG9wdGlvbnM/OiBDcmVhdGVHdWlsZEFwcGxpY2F0aW9uQ29tbWFuZE9wdGlvbnMsXG4gICkgPT4gUHJvbWlzZTxBcHBsaWNhdGlvbkNvbW1hbmQ+XG4gIGNyZWF0ZUd1aWxkU3RpY2tlcjogKFxuICAgIGd1aWxkSWQ6IEJpZ1N0cmluZyxcbiAgICBvcHRpb25zOiBDcmVhdGVHdWlsZFN0aWNrZXJPcHRpb25zLFxuICAgIHJlYXNvbj86IHN0cmluZyxcbiAgKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPFN0aWNrZXIsIFRQcm9wcywgVEJlaGF2aW9yPj5cbiAgY3JlYXRlR3VpbGRUZW1wbGF0ZTogKGd1aWxkSWQ6IEJpZ1N0cmluZywgb3B0aW9uczogQ3JlYXRlVGVtcGxhdGUpID0+IFByb21pc2U8VGVtcGxhdGU+XG4gIGNyZWF0ZUludml0ZTogKGNoYW5uZWxJZDogQmlnU3RyaW5nLCBvcHRpb25zPzogQ3JlYXRlQ2hhbm5lbEludml0ZSwgcmVhc29uPzogc3RyaW5nKSA9PiBQcm9taXNlPENhbWVsaXplPERpc2NvcmRJbnZpdGU+PlxuICBjcmVhdGVSb2xlOiAoZ3VpbGRJZDogQmlnU3RyaW5nLCBvcHRpb25zOiBDcmVhdGVHdWlsZFJvbGUsIHJlYXNvbj86IHN0cmluZykgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxSb2xlLCBUUHJvcHMsIFRCZWhhdmlvcj4+XG4gIGNyZWF0ZVNjaGVkdWxlZEV2ZW50OiAoXG4gICAgZ3VpbGRJZDogQmlnU3RyaW5nLFxuICAgIG9wdGlvbnM6IENyZWF0ZVNjaGVkdWxlZEV2ZW50LFxuICAgIHJlYXNvbj86IHN0cmluZyxcbiAgKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPFNjaGVkdWxlZEV2ZW50LCBUUHJvcHMsIFRCZWhhdmlvcj4+XG4gIGNyZWF0ZVN0YWdlSW5zdGFuY2U6IChvcHRpb25zOiBDcmVhdGVTdGFnZUluc3RhbmNlLCByZWFzb24/OiBzdHJpbmcpID0+IFByb21pc2U8U2V0dXBEZXNpcmVkUHJvcHM8U3RhZ2VJbnN0YW5jZSwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICBjcmVhdGVXZWJob29rOiAoY2hhbm5lbElkOiBCaWdTdHJpbmcsIG9wdGlvbnM6IENyZWF0ZVdlYmhvb2ssIHJlYXNvbj86IHN0cmluZykgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxXZWJob29rLCBUUHJvcHMsIFRCZWhhdmlvcj4+XG4gIGVkaXRBcHBsaWNhdGlvbkNvbW1hbmRQZXJtaXNzaW9uczogKFxuICAgIGd1aWxkSWQ6IEJpZ1N0cmluZyxcbiAgICBjb21tYW5kSWQ6IEJpZ1N0cmluZyxcbiAgICBiZWFyZXJUb2tlbjogc3RyaW5nLFxuICAgIG9wdGlvbnM6IENhbWVsaXplPERpc2NvcmRBcHBsaWNhdGlvbkNvbW1hbmRQZXJtaXNzaW9ucz5bXSxcbiAgKSA9PiBQcm9taXNlPEd1aWxkQXBwbGljYXRpb25Db21tYW5kUGVybWlzc2lvbnM+XG4gIGVkaXRBdXRvbW9kUnVsZTogKFxuICAgIGd1aWxkSWQ6IEJpZ1N0cmluZyxcbiAgICBydWxlSWQ6IEJpZ1N0cmluZyxcbiAgICBvcHRpb25zOiBQYXJ0aWFsPEVkaXRBdXRvTW9kZXJhdGlvblJ1bGVPcHRpb25zPixcbiAgICByZWFzb24/OiBzdHJpbmcsXG4gICkgPT4gUHJvbWlzZTxBdXRvTW9kZXJhdGlvblJ1bGU+XG4gIGVkaXRCb3RQcm9maWxlOiAob3B0aW9uczoge1xuICAgIHVzZXJuYW1lPzogc3RyaW5nXG4gICAgYm90QXZhdGFyVVJMPzogc3RyaW5nIHwgbnVsbFxuICAgIGJvdEJhbm5lclVSTD86IHN0cmluZyB8IG51bGxcbiAgfSkgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxVc2VyLCBUUHJvcHMsIFRCZWhhdmlvcj4+XG4gIGVkaXRDaGFubmVsOiAoY2hhbm5lbElkOiBCaWdTdHJpbmcsIG9wdGlvbnM6IE1vZGlmeUNoYW5uZWwsIHJlYXNvbj86IHN0cmluZykgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxDaGFubmVsLCBUUHJvcHMsIFRCZWhhdmlvcj4+XG4gIGVkaXRFbW9qaTogKGd1aWxkSWQ6IEJpZ1N0cmluZywgaWQ6IEJpZ1N0cmluZywgb3B0aW9uczogTW9kaWZ5R3VpbGRFbW9qaSwgcmVhc29uPzogc3RyaW5nKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPEVtb2ppLCBUUHJvcHMsIFRCZWhhdmlvcj4+XG4gIGVkaXRBcHBsaWNhdGlvbkVtb2ppOiAoaWQ6IEJpZ1N0cmluZywgb3B0aW9uczogTW9kaWZ5QXBwbGljYXRpb25FbW9qaSkgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxFbW9qaSwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICBlZGl0Rm9sbG93dXBNZXNzYWdlOiAoXG4gICAgdG9rZW46IHN0cmluZyxcbiAgICBtZXNzYWdlSWQ6IEJpZ1N0cmluZyxcbiAgICBvcHRpb25zOiBJbnRlcmFjdGlvbkNhbGxiYWNrRGF0YSxcbiAgKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPE1lc3NhZ2UsIFRQcm9wcywgVEJlaGF2aW9yPj5cbiAgZWRpdEdsb2JhbEFwcGxpY2F0aW9uQ29tbWFuZDogKGNvbW1hbmRJZDogQmlnU3RyaW5nLCBvcHRpb25zOiBDcmVhdGVBcHBsaWNhdGlvbkNvbW1hbmQpID0+IFByb21pc2U8QXBwbGljYXRpb25Db21tYW5kPlxuICBlZGl0R3VpbGQ6IChndWlsZElkOiBCaWdTdHJpbmcsIG9wdGlvbnM6IE1vZGlmeUd1aWxkLCByZWFzb24/OiBzdHJpbmcpID0+IFByb21pc2U8U2V0dXBEZXNpcmVkUHJvcHM8R3VpbGQsIFRQcm9wcywgVEJlaGF2aW9yPj5cbiAgZWRpdEd1aWxkQXBwbGljYXRpb25Db21tYW5kOiAoY29tbWFuZElkOiBCaWdTdHJpbmcsIGd1aWxkSWQ6IEJpZ1N0cmluZywgb3B0aW9uczogQ3JlYXRlQXBwbGljYXRpb25Db21tYW5kKSA9PiBQcm9taXNlPEFwcGxpY2F0aW9uQ29tbWFuZD5cbiAgZWRpdEd1aWxkU3RpY2tlcjogKFxuICAgIGd1aWxkSWQ6IEJpZ1N0cmluZyxcbiAgICBzdGlja2VySWQ6IEJpZ1N0cmluZyxcbiAgICBvcHRpb25zOiBBdExlYXN0T25lPEVkaXRHdWlsZFN0aWNrZXJPcHRpb25zPixcbiAgICByZWFzb24/OiBzdHJpbmcsXG4gICkgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxTdGlja2VyLCBUUHJvcHMsIFRCZWhhdmlvcj4+XG4gIGVkaXRHdWlsZFRlbXBsYXRlOiAoZ3VpbGRJZDogQmlnU3RyaW5nLCB0ZW1wbGF0ZUNvZGU6IHN0cmluZywgb3B0aW9uczogTW9kaWZ5R3VpbGRUZW1wbGF0ZSkgPT4gUHJvbWlzZTxUZW1wbGF0ZT5cbiAgZWRpdE1lc3NhZ2U6IChjaGFubmVsSWQ6IEJpZ1N0cmluZywgbWVzc2FnZUlkOiBCaWdTdHJpbmcsIG9wdGlvbnM6IEVkaXRNZXNzYWdlKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPE1lc3NhZ2UsIFRQcm9wcywgVEJlaGF2aW9yPj5cbiAgZWRpdE9yaWdpbmFsSW50ZXJhY3Rpb25SZXNwb25zZTogKHRva2VuOiBzdHJpbmcsIG9wdGlvbnM6IEludGVyYWN0aW9uQ2FsbGJhY2tEYXRhKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPE1lc3NhZ2UsIFRQcm9wcywgVEJlaGF2aW9yPj5cbiAgZWRpdFJvbGU6IChndWlsZElkOiBCaWdTdHJpbmcsIHJvbGVJZDogQmlnU3RyaW5nLCBvcHRpb25zOiBFZGl0R3VpbGRSb2xlLCByZWFzb24/OiBzdHJpbmcpID0+IFByb21pc2U8U2V0dXBEZXNpcmVkUHJvcHM8Um9sZSwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICBlZGl0Um9sZVBvc2l0aW9uczogKGd1aWxkSWQ6IEJpZ1N0cmluZywgb3B0aW9uczogTW9kaWZ5Um9sZVBvc2l0aW9uc1tdLCByZWFzb24/OiBzdHJpbmcpID0+IFByb21pc2U8U2V0dXBEZXNpcmVkUHJvcHM8Um9sZSwgVFByb3BzLCBUQmVoYXZpb3I+W10+XG4gIGVkaXRTY2hlZHVsZWRFdmVudDogKFxuICAgIGd1aWxkSWQ6IEJpZ1N0cmluZyxcbiAgICBldmVudElkOiBCaWdTdHJpbmcsXG4gICAgb3B0aW9uczogUGFydGlhbDxFZGl0U2NoZWR1bGVkRXZlbnQ+LFxuICAgIHJlYXNvbj86IHN0cmluZyxcbiAgKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPFNjaGVkdWxlZEV2ZW50LCBUUHJvcHMsIFRCZWhhdmlvcj4+XG4gIGVkaXRTdGFnZUluc3RhbmNlOiAoY2hhbm5lbElkOiBCaWdTdHJpbmcsIHRvcGljOiBzdHJpbmcsIHJlYXNvbj86IHN0cmluZykgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxTdGFnZUluc3RhbmNlLCBUUHJvcHMsIFRCZWhhdmlvcj4+XG4gIGVkaXRXZWJob29rOiAod2ViaG9va0lkOiBCaWdTdHJpbmcsIG9wdGlvbnM6IE1vZGlmeVdlYmhvb2ssIHJlYXNvbj86IHN0cmluZykgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxXZWJob29rLCBUUHJvcHMsIFRCZWhhdmlvcj4+XG4gIGVkaXRXZWJob29rTWVzc2FnZTogKFxuICAgIHdlYmhvb2tJZDogQmlnU3RyaW5nLFxuICAgIHRva2VuOiBzdHJpbmcsXG4gICAgbWVzc2FnZUlkOiBCaWdTdHJpbmcsXG4gICAgb3B0aW9uczogRWRpdFdlYmhvb2tNZXNzYWdlT3B0aW9ucyxcbiAgKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPE1lc3NhZ2UsIFRQcm9wcywgVEJlaGF2aW9yPj5cbiAgZWRpdFdlYmhvb2tXaXRoVG9rZW46IChcbiAgICB3ZWJob29rSWQ6IEJpZ1N0cmluZyxcbiAgICB0b2tlbjogc3RyaW5nLFxuICAgIG9wdGlvbnM6IE9taXQ8TW9kaWZ5V2ViaG9vaywgJ2NoYW5uZWxJZCc+LFxuICApID0+IFByb21pc2U8U2V0dXBEZXNpcmVkUHJvcHM8V2ViaG9vaywgVFByb3BzLCBUQmVoYXZpb3I+PlxuICBlZGl0V2VsY29tZVNjcmVlbjogKGd1aWxkSWQ6IEJpZ1N0cmluZywgb3B0aW9uczogQ2FtZWxpemU8RGlzY29yZE1vZGlmeUd1aWxkV2VsY29tZVNjcmVlbj4sIHJlYXNvbj86IHN0cmluZykgPT4gUHJvbWlzZTxXZWxjb21lU2NyZWVuPlxuICBlZGl0V2lkZ2V0U2V0dGluZ3M6IChndWlsZElkOiBCaWdTdHJpbmcsIG9wdGlvbnM6IENhbWVsaXplPERpc2NvcmRHdWlsZFdpZGdldFNldHRpbmdzPiwgcmVhc29uPzogc3RyaW5nKSA9PiBQcm9taXNlPEd1aWxkV2lkZ2V0U2V0dGluZ3M+XG4gIGVkaXRVc2VyQXBwbGljYXRpb25Sb2xlQ29ubmVjdGlvbjogKFxuICAgIGJlYXJlclRva2VuOiBzdHJpbmcsXG4gICAgYXBwbGljYXRpb25JZDogQmlnU3RyaW5nLFxuICAgIG9wdGlvbnM6IENhbWVsaXplPERpc2NvcmRBcHBsaWNhdGlvblJvbGVDb25uZWN0aW9uPixcbiAgKSA9PiBQcm9taXNlPENhbWVsaXplPERpc2NvcmRBcHBsaWNhdGlvblJvbGVDb25uZWN0aW9uPj5cbiAgZXhlY3V0ZVdlYmhvb2s6ICh3ZWJob29rSWQ6IEJpZ1N0cmluZywgdG9rZW46IHN0cmluZywgb3B0aW9uczogRXhlY3V0ZVdlYmhvb2spID0+IFByb21pc2U8U2V0dXBEZXNpcmVkUHJvcHM8TWVzc2FnZSwgVFByb3BzLCBUQmVoYXZpb3I+IHwgdW5kZWZpbmVkPlxuICBmb2xsb3dBbm5vdW5jZW1lbnQ6IChzb3VyY2VDaGFubmVsSWQ6IEJpZ1N0cmluZywgdGFyZ2V0Q2hhbm5lbElkOiBCaWdTdHJpbmcpID0+IFByb21pc2U8Q2FtZWxpemU8RGlzY29yZEZvbGxvd2VkQ2hhbm5lbD4+XG4gIGdldEFjdGl2ZVRocmVhZHM6IChndWlsZElkOiBCaWdTdHJpbmcpID0+IFByb21pc2U8eyB0aHJlYWRzOiBTZXR1cERlc2lyZWRQcm9wczxDaGFubmVsLCBUUHJvcHMsIFRCZWhhdmlvcj5bXTsgbWVtYmVyczogVGhyZWFkTWVtYmVyW10gfT5cbiAgZ2V0QXBwbGljYXRpb25JbmZvOiAoKSA9PiBQcm9taXNlPEFwcGxpY2F0aW9uPlxuICBlZGl0QXBwbGljYXRpb25JbmZvOiAoYm9keTogRWRpdEFwcGxpY2F0aW9uKSA9PiBQcm9taXNlPEFwcGxpY2F0aW9uPlxuICBnZXRDdXJyZW50QXV0aGVudGljYXRpb25JbmZvOiAoYmVhcmVyVG9rZW46IHN0cmluZykgPT4gUHJvbWlzZTxDYW1lbGl6ZTxEaXNjb3JkQ3VycmVudEF1dGhvcml6YXRpb24+PlxuICBleGNoYW5nZVRva2VuOiAoY2xpZW50SWQ6IEJpZ1N0cmluZywgY2xpZW50U2VjcmV0OiBzdHJpbmcsIG9wdGlvbnM6IENhbWVsaXplPERpc2NvcmRUb2tlbkV4Y2hhbmdlPikgPT4gUHJvbWlzZTxDYW1lbGl6ZTxEaXNjb3JkQWNjZXNzVG9rZW5SZXNwb25zZT4+XG4gIHJldm9rZVRva2VuOiAoY2xpZW50SWQ6IEJpZ1N0cmluZywgY2xpZW50U2VjcmV0OiBzdHJpbmcsIG9wdGlvbnM6IENhbWVsaXplPERpc2NvcmRUb2tlblJldm9jYXRpb24+KSA9PiBQcm9taXNlPHZvaWQ+XG4gIGdldEFwcGxpY2F0aW9uQ29tbWFuZFBlcm1pc3Npb246IChcbiAgICBndWlsZElkOiBCaWdTdHJpbmcsXG4gICAgY29tbWFuZElkOiBCaWdTdHJpbmcsXG4gICAgb3B0aW9ucz86IEdldEFwcGxpY2F0aW9uQ29tbWFuZFBlcm1pc3Npb25PcHRpb25zLFxuICApID0+IFByb21pc2U8R3VpbGRBcHBsaWNhdGlvbkNvbW1hbmRQZXJtaXNzaW9ucz5cbiAgZ2V0QXBwbGljYXRpb25Db21tYW5kUGVybWlzc2lvbnM6IChcbiAgICBndWlsZElkOiBCaWdTdHJpbmcsXG4gICAgb3B0aW9ucz86IEdldEFwcGxpY2F0aW9uQ29tbWFuZFBlcm1pc3Npb25PcHRpb25zLFxuICApID0+IFByb21pc2U8R3VpbGRBcHBsaWNhdGlvbkNvbW1hbmRQZXJtaXNzaW9uc1tdPlxuICBnZXRBdWRpdExvZzogKGd1aWxkSWQ6IEJpZ1N0cmluZywgb3B0aW9ucz86IEdldEd1aWxkQXVkaXRMb2cpID0+IFByb21pc2U8Q2FtZWxpemU8RGlzY29yZEF1ZGl0TG9nPj5cbiAgZ2V0QXV0b21vZFJ1bGU6IChndWlsZElkOiBCaWdTdHJpbmcsIHJ1bGVJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPEF1dG9Nb2RlcmF0aW9uUnVsZT5cbiAgZ2V0QXV0b21vZFJ1bGVzOiAoZ3VpbGRJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPEF1dG9Nb2RlcmF0aW9uUnVsZVtdPlxuICBnZXRBdmFpbGFibGVWb2ljZVJlZ2lvbnM6ICgpID0+IFByb21pc2U8Q2FtZWxpemU8RGlzY29yZFZvaWNlUmVnaW9uPltdPlxuICBnZXRCYW46IChndWlsZElkOiBCaWdTdHJpbmcsIHVzZXJJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPENhbWVsaXplPERpc2NvcmRCYW4+PlxuICBnZXRCYW5zOiAoZ3VpbGRJZDogQmlnU3RyaW5nLCBvcHRpb25zPzogR2V0QmFucykgPT4gUHJvbWlzZTxDYW1lbGl6ZTxEaXNjb3JkQmFuPltdPlxuICBnZXRDaGFubmVsOiAoY2hhbm5lbElkOiBCaWdTdHJpbmcpID0+IFByb21pc2U8U2V0dXBEZXNpcmVkUHJvcHM8Q2hhbm5lbCwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICBnZXRDaGFubmVsSW52aXRlczogKGNoYW5uZWxJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPENhbWVsaXplPERpc2NvcmRJbnZpdGVNZXRhZGF0YT5bXT5cbiAgZ2V0Q2hhbm5lbHM6IChndWlsZElkOiBCaWdTdHJpbmcpID0+IFByb21pc2U8U2V0dXBEZXNpcmVkUHJvcHM8Q2hhbm5lbCwgVFByb3BzLCBUQmVoYXZpb3I+W10+XG4gIGdldENoYW5uZWxXZWJob29rczogKGNoYW5uZWxJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPFdlYmhvb2ssIFRQcm9wcywgVEJlaGF2aW9yPltdPlxuICBnZXREbUNoYW5uZWw6ICh1c2VySWQ6IEJpZ1N0cmluZykgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxDaGFubmVsLCBUUHJvcHMsIFRCZWhhdmlvcj4+XG4gIGdldEdyb3VwRG1DaGFubmVsOiAob3B0aW9uczogR2V0R3JvdXBEbU9wdGlvbnMpID0+IFByb21pc2U8U2V0dXBEZXNpcmVkUHJvcHM8Q2hhbm5lbCwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICBnZXRFbW9qaTogKGd1aWxkSWQ6IEJpZ1N0cmluZywgZW1vamlJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPEVtb2ppLCBUUHJvcHMsIFRCZWhhdmlvcj4+XG4gIGdldEFwcGxpY2F0aW9uRW1vamk6IChlbW9qaUlkOiBCaWdTdHJpbmcpID0+IFByb21pc2U8U2V0dXBEZXNpcmVkUHJvcHM8RW1vamksIFRQcm9wcywgVEJlaGF2aW9yPj5cbiAgZ2V0RW1vamlzOiAoZ3VpbGRJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPEVtb2ppLCBUUHJvcHMsIFRCZWhhdmlvcj5bXT5cbiAgZ2V0QXBwbGljYXRpb25FbW9qaXM6ICgpID0+IFByb21pc2U8eyBpdGVtczogU2V0dXBEZXNpcmVkUHJvcHM8RW1vamksIFRQcm9wcywgVEJlaGF2aW9yPltdIH0+XG4gIGdldEZvbGxvd3VwTWVzc2FnZTogKHRva2VuOiBzdHJpbmcsIG1lc3NhZ2VJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPE1lc3NhZ2UsIFRQcm9wcywgVEJlaGF2aW9yPj5cbiAgZ2V0R2F0ZXdheUJvdDogKCkgPT4gUHJvbWlzZTxDYW1lbGl6ZTxEaXNjb3JkR2V0R2F0ZXdheUJvdD4+XG4gIGdldEdsb2JhbEFwcGxpY2F0aW9uQ29tbWFuZDogKGNvbW1hbmRJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPEFwcGxpY2F0aW9uQ29tbWFuZD5cbiAgZ2V0R2xvYmFsQXBwbGljYXRpb25Db21tYW5kczogKCkgPT4gUHJvbWlzZTxBcHBsaWNhdGlvbkNvbW1hbmRbXT5cbiAgZ2V0R3VpbGQ6IChndWlsZElkOiBCaWdTdHJpbmcsIG9wdGlvbnM/OiB7IGNvdW50cz86IGJvb2xlYW4gfSkgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxHdWlsZCwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICBnZXRHdWlsZHM6IChiZWFyZXJUb2tlbjogc3RyaW5nLCBvcHRpb25zPzogR2V0VXNlckd1aWxkcykgPT4gUHJvbWlzZTxQYXJ0aWFsPFNldHVwRGVzaXJlZFByb3BzPEd1aWxkLCBUUHJvcHMsIFRCZWhhdmlvcj4+W10+XG4gIGdldEd1aWxkQXBwbGljYXRpb25Db21tYW5kOiAoY29tbWFuZElkOiBCaWdTdHJpbmcsIGd1aWxkSWQ6IEJpZ1N0cmluZykgPT4gUHJvbWlzZTxBcHBsaWNhdGlvbkNvbW1hbmQ+XG4gIGdldEd1aWxkQXBwbGljYXRpb25Db21tYW5kczogKGd1aWxkSWQ6IEJpZ1N0cmluZykgPT4gUHJvbWlzZTxBcHBsaWNhdGlvbkNvbW1hbmRbXT5cbiAgZ2V0R3VpbGRQcmV2aWV3OiAoZ3VpbGRJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPENhbWVsaXplPERpc2NvcmRHdWlsZFByZXZpZXc+PlxuICBnZXRHdWlsZFN0aWNrZXI6IChndWlsZElkOiBCaWdTdHJpbmcsIHN0aWNrZXJJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPFN0aWNrZXIsIFRQcm9wcywgVEJlaGF2aW9yPj5cbiAgZ2V0R3VpbGRTdGlja2VyczogKGd1aWxkSWQ6IEJpZ1N0cmluZykgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxTdGlja2VyLCBUUHJvcHMsIFRCZWhhdmlvcj5bXT5cbiAgZ2V0R3VpbGRUZW1wbGF0ZTogKHRlbXBsYXRlQ29kZTogc3RyaW5nKSA9PiBQcm9taXNlPFRlbXBsYXRlPlxuICBnZXRHdWlsZFRlbXBsYXRlczogKGd1aWxkSWQ6IEJpZ1N0cmluZykgPT4gUHJvbWlzZTxUZW1wbGF0ZVtdPlxuICBnZXRHdWlsZFdlYmhvb2tzOiAoZ3VpbGRJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPFdlYmhvb2ssIFRQcm9wcywgVEJlaGF2aW9yPltdPlxuICBnZXRJbnRlZ3JhdGlvbnM6IChndWlsZElkOiBCaWdTdHJpbmcpID0+IFByb21pc2U8SW50ZWdyYXRpb25bXT5cbiAgZ2V0SW52aXRlOiAoaW52aXRlQ29kZTogc3RyaW5nLCBvcHRpb25zPzogR2V0SW52aXRlKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPEludml0ZSwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICBnZXRJbnZpdGVzOiAoZ3VpbGRJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPEludml0ZSwgVFByb3BzLCBUQmVoYXZpb3I+W10+XG4gIGdldE1lc3NhZ2U6IChjaGFubmVsSWQ6IEJpZ1N0cmluZywgbWVzc2FnZUlkOiBCaWdTdHJpbmcpID0+IFByb21pc2U8U2V0dXBEZXNpcmVkUHJvcHM8TWVzc2FnZSwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICBnZXRNZXNzYWdlczogKGNoYW5uZWxJZDogQmlnU3RyaW5nLCBvcHRpb25zPzogR2V0TWVzc2FnZXNPcHRpb25zKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPE1lc3NhZ2UsIFRQcm9wcywgVEJlaGF2aW9yPltdPlxuICBnZXRTdGlja2VyUGFjazogKHN0aWNrZXJQYWNrSWQ6IEJpZ1N0cmluZykgPT4gUHJvbWlzZTxTdGlja2VyUGFjaz5cbiAgZ2V0U3RpY2tlclBhY2tzOiAoKSA9PiBQcm9taXNlPFN0aWNrZXJQYWNrW10+XG4gIGdldE9yaWdpbmFsSW50ZXJhY3Rpb25SZXNwb25zZTogKHRva2VuOiBzdHJpbmcpID0+IFByb21pc2U8U2V0dXBEZXNpcmVkUHJvcHM8TWVzc2FnZSwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICBnZXRDaGFubmVsUGluczogKFxuICAgIGNoYW5uZWxJZDogQmlnU3RyaW5nLFxuICAgIG9wdGlvbnM/OiBHZXRDaGFubmVsUGluc09wdGlvbnMsXG4gICkgPT4gUHJvbWlzZTx7IGl0ZW1zOiBTZXR1cERlc2lyZWRQcm9wczxNZXNzYWdlUGluLCBUUHJvcHMsIFRCZWhhdmlvcj5bXTsgaGFzTW9yZTogYm9vbGVhbiB9PlxuICAvKiogQGRlcHJlY2F0ZWQgVXNlIHtAbGluayBCb3RIZWxwZXJzLmdldENoYW5uZWxQaW5zfSBpbnN0ZWFkICovXG4gIGdldFBpbm5lZE1lc3NhZ2VzOiAoY2hhbm5lbElkOiBCaWdTdHJpbmcpID0+IFByb21pc2U8U2V0dXBEZXNpcmVkUHJvcHM8TWVzc2FnZSwgVFByb3BzLCBUQmVoYXZpb3I+W10+XG4gIGdldFByaXZhdGVBcmNoaXZlZFRocmVhZHM6IChjaGFubmVsSWQ6IEJpZ1N0cmluZywgb3B0aW9ucz86IExpc3RBcmNoaXZlZFRocmVhZHMpID0+IFByb21pc2U8Q2FtZWxpemU8RGlzY29yZExpc3RBcmNoaXZlZFRocmVhZHM+PlxuICBnZXRQcml2YXRlSm9pbmVkQXJjaGl2ZWRUaHJlYWRzOiAoY2hhbm5lbElkOiBCaWdTdHJpbmcsIG9wdGlvbnM/OiBMaXN0QXJjaGl2ZWRUaHJlYWRzKSA9PiBQcm9taXNlPENhbWVsaXplPERpc2NvcmRMaXN0QXJjaGl2ZWRUaHJlYWRzPj5cbiAgZ2V0UHJ1bmVDb3VudDogKGd1aWxkSWQ6IEJpZ1N0cmluZywgb3B0aW9ucz86IEdldEd1aWxkUHJ1bmVDb3VudFF1ZXJ5KSA9PiBQcm9taXNlPENhbWVsaXplPERpc2NvcmRQcnVuZWRDb3VudD4+XG4gIGdldFB1YmxpY0FyY2hpdmVkVGhyZWFkczogKGNoYW5uZWxJZDogQmlnU3RyaW5nLCBvcHRpb25zPzogTGlzdEFyY2hpdmVkVGhyZWFkcykgPT4gUHJvbWlzZTxDYW1lbGl6ZTxEaXNjb3JkTGlzdEFyY2hpdmVkVGhyZWFkcz4+XG4gIGdldFJvbGVzOiAoZ3VpbGRJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPFJvbGUsIFRQcm9wcywgVEJlaGF2aW9yPltdPlxuICBnZXRSb2xlOiAoZ3VpbGRJZDogQmlnU3RyaW5nLCByb2xlSWQ6IEJpZ1N0cmluZykgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxSb2xlLCBUUHJvcHMsIFRCZWhhdmlvcj4+XG4gIGdldFNjaGVkdWxlZEV2ZW50OiAoXG4gICAgZ3VpbGRJZDogQmlnU3RyaW5nLFxuICAgIGV2ZW50SWQ6IEJpZ1N0cmluZyxcbiAgICBvcHRpb25zPzogeyB3aXRoVXNlckNvdW50PzogYm9vbGVhbiB9LFxuICApID0+IFByb21pc2U8U2V0dXBEZXNpcmVkUHJvcHM8U2NoZWR1bGVkRXZlbnQsIFRQcm9wcywgVEJlaGF2aW9yPj5cbiAgZ2V0U2NoZWR1bGVkRXZlbnRzOiAoZ3VpbGRJZDogQmlnU3RyaW5nLCBvcHRpb25zPzogR2V0U2NoZWR1bGVkRXZlbnRzKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPFNjaGVkdWxlZEV2ZW50LCBUUHJvcHMsIFRCZWhhdmlvcj5bXT5cbiAgZ2V0U2NoZWR1bGVkRXZlbnRVc2VyczogKFxuICAgIGd1aWxkSWQ6IEJpZ1N0cmluZyxcbiAgICBldmVudElkOiBCaWdTdHJpbmcsXG4gICAgb3B0aW9ucz86IEdldFNjaGVkdWxlZEV2ZW50VXNlcnMsXG4gICkgPT4gUHJvbWlzZTxBcnJheTx7IHVzZXI6IFNldHVwRGVzaXJlZFByb3BzPFVzZXIsIFRQcm9wcywgVEJlaGF2aW9yPjsgbWVtYmVyPzogU2V0dXBEZXNpcmVkUHJvcHM8TWVtYmVyLCBUUHJvcHMsIFRCZWhhdmlvcj4gfT4+XG4gIGdldFNlc3Npb25JbmZvOiAoKSA9PiBQcm9taXNlPENhbWVsaXplPERpc2NvcmRHZXRHYXRld2F5Qm90Pj5cbiAgZ2V0U3RhZ2VJbnN0YW5jZTogKGNoYW5uZWxJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPFN0YWdlSW5zdGFuY2UsIFRQcm9wcywgVEJlaGF2aW9yPj5cbiAgZ2V0T3duVm9pY2VTdGF0ZTogKGd1aWxkSWQ6IEJpZ1N0cmluZykgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxWb2ljZVN0YXRlLCBUUHJvcHMsIFRCZWhhdmlvcj4+XG4gIGdldFVzZXJWb2ljZVN0YXRlOiAoZ3VpbGRJZDogQmlnU3RyaW5nLCB1c2VySWQ6IEJpZ1N0cmluZykgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxWb2ljZVN0YXRlLCBUUHJvcHMsIFRCZWhhdmlvcj4+XG4gIGdldFN0aWNrZXI6IChzdGlja2VySWQ6IEJpZ1N0cmluZykgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxTdGlja2VyLCBUUHJvcHMsIFRCZWhhdmlvcj4+XG4gIGdldFRocmVhZE1lbWJlcjogKGNoYW5uZWxJZDogQmlnU3RyaW5nLCB1c2VySWQ6IEJpZ1N0cmluZywgb3B0aW9ucz86IEdldFRocmVhZE1lbWJlcikgPT4gUHJvbWlzZTxUaHJlYWRNZW1iZXI+XG4gIGdldFRocmVhZE1lbWJlcnM6IChjaGFubmVsSWQ6IEJpZ1N0cmluZywgb3B0aW9ucz86IExpc3RUaHJlYWRNZW1iZXJzKSA9PiBQcm9taXNlPFRocmVhZE1lbWJlcltdPlxuICBnZXRSZWFjdGlvbnM6IChcbiAgICBjaGFubmVsSWQ6IEJpZ1N0cmluZyxcbiAgICBtZXNzYWdlSWQ6IEJpZ1N0cmluZyxcbiAgICByZWFjdGlvbjogc3RyaW5nLFxuICAgIG9wdGlvbnM/OiBHZXRSZWFjdGlvbnMsXG4gICkgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxVc2VyLCBUUHJvcHMsIFRCZWhhdmlvcj5bXT5cbiAgZ2V0VXNlcjogKGlkOiBCaWdTdHJpbmcpID0+IFByb21pc2U8U2V0dXBEZXNpcmVkUHJvcHM8VXNlciwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICBnZXRDdXJyZW50VXNlcjogKGJlYXJlclRva2VuOiBzdHJpbmcpID0+IFByb21pc2U8U2V0dXBEZXNpcmVkUHJvcHM8VXNlciwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICBnZXRVc2VyQ29ubmVjdGlvbnM6IChiZWFyZXJUb2tlbjogc3RyaW5nKSA9PiBQcm9taXNlPENhbWVsaXplPERpc2NvcmRDb25uZWN0aW9uPltdPlxuICBnZXRVc2VyQXBwbGljYXRpb25Sb2xlQ29ubmVjdGlvbjogKGJlYXJlclRva2VuOiBzdHJpbmcsIGFwcGxpY2F0aW9uSWQ6IEJpZ1N0cmluZykgPT4gUHJvbWlzZTxDYW1lbGl6ZTxEaXNjb3JkQXBwbGljYXRpb25Sb2xlQ29ubmVjdGlvbj4+XG4gIGdldFZhbml0eVVybDogKGd1aWxkSWQ6IEJpZ1N0cmluZykgPT4gUHJvbWlzZTxDYW1lbGl6ZTxEaXNjb3JkVmFuaXR5VXJsPj5cbiAgZ2V0Vm9pY2VSZWdpb25zOiAoZ3VpbGRJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPENhbWVsaXplPERpc2NvcmRWb2ljZVJlZ2lvbj5bXT5cbiAgZ2V0V2ViaG9vazogKHdlYmhvb2tJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPFdlYmhvb2ssIFRQcm9wcywgVEJlaGF2aW9yPj5cbiAgZ2V0V2ViaG9va01lc3NhZ2U6IChcbiAgICB3ZWJob29rSWQ6IEJpZ1N0cmluZyxcbiAgICB0b2tlbjogc3RyaW5nLFxuICAgIG1lc3NhZ2VJZDogQmlnU3RyaW5nLFxuICAgIG9wdGlvbnM/OiBHZXRXZWJob29rTWVzc2FnZU9wdGlvbnMsXG4gICkgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxNZXNzYWdlLCBUUHJvcHMsIFRCZWhhdmlvcj4+XG4gIGdldFdlYmhvb2tXaXRoVG9rZW46ICh3ZWJob29rSWQ6IEJpZ1N0cmluZywgdG9rZW46IHN0cmluZykgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxXZWJob29rLCBUUHJvcHMsIFRCZWhhdmlvcj4+XG4gIGdldFdlbGNvbWVTY3JlZW46IChndWlsZElkOiBCaWdTdHJpbmcpID0+IFByb21pc2U8V2VsY29tZVNjcmVlbj5cbiAgZ2V0V2lkZ2V0OiAoZ3VpbGRJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPEd1aWxkV2lkZ2V0PlxuICBnZXRXaWRnZXRTZXR0aW5nczogKGd1aWxkSWQ6IEJpZ1N0cmluZykgPT4gUHJvbWlzZTxHdWlsZFdpZGdldFNldHRpbmdzPlxuICBwdWJsaXNoTWVzc2FnZTogKGNoYW5uZWxJZDogQmlnU3RyaW5nLCBtZXNzYWdlSWQ6IEJpZ1N0cmluZykgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxNZXNzYWdlLCBUUHJvcHMsIFRCZWhhdmlvcj4+XG4gIHNlbmRNZXNzYWdlOiAoY2hhbm5lbElkOiBCaWdTdHJpbmcsIG9wdGlvbnM6IENyZWF0ZU1lc3NhZ2VPcHRpb25zKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPE1lc3NhZ2UsIFRQcm9wcywgVEJlaGF2aW9yPj5cbiAgc2VuZEZvbGxvd3VwTWVzc2FnZTogKHRva2VuOiBzdHJpbmcsIG9wdGlvbnM6IEludGVyYWN0aW9uQ2FsbGJhY2tEYXRhKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPE1lc3NhZ2UsIFRQcm9wcywgVEJlaGF2aW9yPj5cbiAgc3RhcnRUaHJlYWRXaXRoTWVzc2FnZTogKFxuICAgIGNoYW5uZWxJZDogQmlnU3RyaW5nLFxuICAgIG1lc3NhZ2VJZDogQmlnU3RyaW5nLFxuICAgIG9wdGlvbnM6IFN0YXJ0VGhyZWFkV2l0aE1lc3NhZ2UsXG4gICAgcmVhc29uPzogc3RyaW5nLFxuICApID0+IFByb21pc2U8U2V0dXBEZXNpcmVkUHJvcHM8Q2hhbm5lbCwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICBzdGFydFRocmVhZFdpdGhvdXRNZXNzYWdlOiAoXG4gICAgY2hhbm5lbElkOiBCaWdTdHJpbmcsXG4gICAgb3B0aW9uczogU3RhcnRUaHJlYWRXaXRob3V0TWVzc2FnZSxcbiAgICByZWFzb24/OiBzdHJpbmcsXG4gICkgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxDaGFubmVsLCBUUHJvcHMsIFRCZWhhdmlvcj4+XG4gIHN5bmNHdWlsZFRlbXBsYXRlOiAoZ3VpbGRJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPFRlbXBsYXRlPlxuICB1cHNlcnRHbG9iYWxBcHBsaWNhdGlvbkNvbW1hbmRzOiAoXG4gICAgY29tbWFuZHM6IENyZWF0ZUFwcGxpY2F0aW9uQ29tbWFuZFtdLFxuICAgIG9wdGlvbnM/OiBVcHNlcnRHbG9iYWxBcHBsaWNhdGlvbkNvbW1hbmRPcHRpb25zLFxuICApID0+IFByb21pc2U8QXBwbGljYXRpb25Db21tYW5kW10+XG4gIHVwc2VydEd1aWxkQXBwbGljYXRpb25Db21tYW5kczogKFxuICAgIGd1aWxkSWQ6IEJpZ1N0cmluZyxcbiAgICBjb21tYW5kczogQ3JlYXRlQXBwbGljYXRpb25Db21tYW5kW10sXG4gICAgb3B0aW9ucz86IFVwc2VydEd1aWxkQXBwbGljYXRpb25Db21tYW5kT3B0aW9ucyxcbiAgKSA9PiBQcm9taXNlPEFwcGxpY2F0aW9uQ29tbWFuZFtdPlxuICBlZGl0Qm90TWVtYmVyOiAoZ3VpbGRJZDogQmlnU3RyaW5nLCBvcHRpb25zOiBFZGl0Qm90TWVtYmVyT3B0aW9ucywgcmVhc29uPzogc3RyaW5nKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPE1lbWJlciwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICBlZGl0TWVtYmVyOiAoXG4gICAgZ3VpbGRJZDogQmlnU3RyaW5nLFxuICAgIHVzZXJJZDogQmlnU3RyaW5nLFxuICAgIG9wdGlvbnM6IE1vZGlmeUd1aWxkTWVtYmVyLFxuICAgIHJlYXNvbj86IHN0cmluZyxcbiAgKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPE1lbWJlciwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICBnZXRNZW1iZXI6IChndWlsZElkOiBCaWdTdHJpbmcsIHVzZXJJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPE1lbWJlciwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICBnZXRDdXJyZW50TWVtYmVyOiAoZ3VpbGRJZDogQmlnU3RyaW5nLCBiZWFyZXJUb2tlbjogc3RyaW5nKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPE1lbWJlciwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICBnZXRNZW1iZXJzOiAoZ3VpbGRJZDogQmlnU3RyaW5nLCBvcHRpb25zOiBMaXN0R3VpbGRNZW1iZXJzKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPE1lbWJlciwgVFByb3BzLCBUQmVoYXZpb3I+W10+XG4gIHBydW5lTWVtYmVyczogKGd1aWxkSWQ6IEJpZ1N0cmluZywgb3B0aW9uczogQmVnaW5HdWlsZFBydW5lLCByZWFzb24/OiBzdHJpbmcpID0+IFByb21pc2U8eyBwcnVuZWQ6IG51bWJlciB8IG51bGwgfT5cbiAgc2VhcmNoTWVtYmVyczogKFxuICAgIGd1aWxkSWQ6IEJpZ1N0cmluZyxcbiAgICBxdWVyeTogc3RyaW5nLFxuICAgIG9wdGlvbnM/OiBPbWl0PFNlYXJjaE1lbWJlcnMsICdxdWVyeSc+LFxuICApID0+IFByb21pc2U8U2V0dXBEZXNpcmVkUHJvcHM8TWVtYmVyLCBUUHJvcHMsIFRCZWhhdmlvcj5bXT5cbiAgYnVsa0Jhbk1lbWJlcnM6IChndWlsZElkOiBCaWdTdHJpbmcsIG9wdGlvbnM6IENyZWF0ZUd1aWxkQnVsa0JhbiwgcmVhc29uPzogc3RyaW5nKSA9PiBQcm9taXNlPHsgYmFubmVkVXNlcnM6IGJpZ2ludFtdOyBmYWlsZWRVc2VyczogYmlnaW50W10gfT5cbiAgZ2V0QXBwbGljYXRpb25BY3Rpdml0eUluc3RhbmNlOiAoYXBwbGljYXRpb25JZDogQmlnU3RyaW5nLCBpbnN0YW5jZUlkOiBzdHJpbmcpID0+IFByb21pc2U8Q2FtZWxpemU8RGlzY29yZEFjdGl2aXR5SW5zdGFuY2U+PlxuICBsaXN0QXBwbGljYXRpb25Sb2xlQ29ubmVjdGlvbnNNZXRhZGF0YVJlY29yZHM6IChhcHBsaWNhdGlvbklkOiBCaWdTdHJpbmcpID0+IFByb21pc2U8Q2FtZWxpemU8RGlzY29yZEFwcGxpY2F0aW9uUm9sZUNvbm5lY3Rpb25NZXRhZGF0YT5bXT5cbiAgdXBkYXRlQXBwbGljYXRpb25Sb2xlQ29ubmVjdGlvbnNNZXRhZGF0YVJlY29yZHM6IChcbiAgICBhcHBsaWNhdGlvbklkOiBCaWdTdHJpbmcsXG4gICAgb3B0aW9uczogQ2FtZWxpemU8RGlzY29yZEFwcGxpY2F0aW9uUm9sZUNvbm5lY3Rpb25NZXRhZGF0YT5bXSxcbiAgKSA9PiBQcm9taXNlPENhbWVsaXplPERpc2NvcmRBcHBsaWNhdGlvblJvbGVDb25uZWN0aW9uTWV0YWRhdGE+W10+XG4gIGNyZWF0ZUxvYmJ5OiAob3B0aW9uczogQ3JlYXRlTG9iYnkpID0+IFByb21pc2U8U2V0dXBEZXNpcmVkUHJvcHM8TG9iYnksIFRQcm9wcywgVEJlaGF2aW9yPj5cbiAgZ2V0TG9iYnk6IChsb2JieUlkOiBCaWdTdHJpbmcpID0+IFByb21pc2U8U2V0dXBEZXNpcmVkUHJvcHM8TG9iYnksIFRQcm9wcywgVEJlaGF2aW9yPj5cbiAgbW9kaWZ5TG9iYnk6IChsb2JieUlkOiBCaWdTdHJpbmcsIG9wdGlvbnM6IE1vZGlmeUxvYmJ5KSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPExvYmJ5LCBUUHJvcHMsIFRCZWhhdmlvcj4+XG4gIGFkZE1lbWJlclRvTG9iYnk6IChsb2JieUlkOiBCaWdTdHJpbmcsIHVzZXJJZDogQmlnU3RyaW5nLCBvcHRpb25zOiBBZGRMb2JieU1lbWJlcikgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxMb2JieU1lbWJlciwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICBsaW5rQ2hhbm5lbFRvTG9iYnk6IChsb2JieUlkOiBCaWdTdHJpbmcsIGJlYXJlclRva2VuOiBzdHJpbmcsIG9wdGlvbnM6IExpbmtDaGFubmVsVG9Mb2JieSkgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxMb2JieSwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICB1bmxpbmtDaGFubmVsVG9Mb2JieTogKGxvYmJ5SWQ6IEJpZ1N0cmluZywgYmVhcmVyVG9rZW46IHN0cmluZykgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxMb2JieSwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICAvLyBmdW5jdGlvbnMgcmV0dXJuIFZvaWQgc28gZG9udCBuZWVkIGFueSBzcGVjaWFsIGhhbmRsaW5nXG4gIGFkZFJlYWN0aW9uOiAoY2hhbm5lbElkOiBCaWdTdHJpbmcsIG1lc3NhZ2VJZDogQmlnU3RyaW5nLCByZWFjdGlvbjogc3RyaW5nKSA9PiBQcm9taXNlPHZvaWQ+XG4gIGFkZFJlYWN0aW9uczogKGNoYW5uZWxJZDogQmlnU3RyaW5nLCBtZXNzYWdlSWQ6IEJpZ1N0cmluZywgcmVhY3Rpb25zOiBzdHJpbmdbXSwgb3JkZXJlZD86IGJvb2xlYW4pID0+IFByb21pc2U8dm9pZD5cbiAgYWRkUm9sZTogKGd1aWxkSWQ6IEJpZ1N0cmluZywgdXNlcklkOiBCaWdTdHJpbmcsIHJvbGVJZDogQmlnU3RyaW5nLCByZWFzb24/OiBzdHJpbmcpID0+IFByb21pc2U8dm9pZD5cbiAgYWRkVGhyZWFkTWVtYmVyOiAoY2hhbm5lbElkOiBCaWdTdHJpbmcsIHVzZXJJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPHZvaWQ+XG4gIGFkZERtUmVjaXBpZW50OiAoY2hhbm5lbElkOiBCaWdTdHJpbmcsIHVzZXJJZDogQmlnU3RyaW5nLCBvcHRpb25zOiBBZGREbVJlY2lwaWVudE9wdGlvbnMpID0+IFByb21pc2U8dm9pZD5cbiAgYWRkR3VpbGRNZW1iZXI6IChndWlsZElkOiBCaWdTdHJpbmcsIHVzZXJJZDogQmlnU3RyaW5nLCBvcHRpb25zOiBBZGRHdWlsZE1lbWJlck9wdGlvbnMpID0+IFByb21pc2U8dm9pZD5cbiAgZGVsZXRlQXV0b21vZFJ1bGU6IChndWlsZElkOiBCaWdTdHJpbmcsIHJ1bGVJZDogQmlnU3RyaW5nLCByZWFzb24/OiBzdHJpbmcpID0+IFByb21pc2U8dm9pZD5cbiAgZGVsZXRlQ2hhbm5lbDogKGNoYW5uZWxJZDogQmlnU3RyaW5nLCByZWFzb24/OiBzdHJpbmcpID0+IFByb21pc2U8dm9pZD5cbiAgZGVsZXRlQ2hhbm5lbFBlcm1pc3Npb25PdmVycmlkZTogKGNoYW5uZWxJZDogQmlnU3RyaW5nLCBvdmVyd3JpdGVJZDogQmlnU3RyaW5nLCByZWFzb24/OiBzdHJpbmcpID0+IFByb21pc2U8dm9pZD5cbiAgZGVsZXRlRW1vamk6IChndWlsZElkOiBCaWdTdHJpbmcsIGlkOiBCaWdTdHJpbmcsIHJlYXNvbj86IHN0cmluZykgPT4gUHJvbWlzZTx2b2lkPlxuICBkZWxldGVBcHBsaWNhdGlvbkVtb2ppOiAoaWQ6IEJpZ1N0cmluZykgPT4gUHJvbWlzZTx2b2lkPlxuICBkZWxldGVGb2xsb3d1cE1lc3NhZ2U6ICh0b2tlbjogc3RyaW5nLCBtZXNzYWdlSWQ6IEJpZ1N0cmluZykgPT4gUHJvbWlzZTx2b2lkPlxuICBkZWxldGVHbG9iYWxBcHBsaWNhdGlvbkNvbW1hbmQ6IChjb21tYW5kSWQ6IEJpZ1N0cmluZykgPT4gUHJvbWlzZTx2b2lkPlxuICBkZWxldGVHdWlsZEFwcGxpY2F0aW9uQ29tbWFuZDogKGNvbW1hbmRJZDogQmlnU3RyaW5nLCBndWlsZElkOiBCaWdTdHJpbmcpID0+IFByb21pc2U8dm9pZD5cbiAgZGVsZXRlR3VpbGRTdGlja2VyOiAoZ3VpbGRJZDogQmlnU3RyaW5nLCBzdGlja2VySWQ6IEJpZ1N0cmluZywgcmVhc29uPzogc3RyaW5nKSA9PiBQcm9taXNlPHZvaWQ+XG4gIGRlbGV0ZUd1aWxkVGVtcGxhdGU6IChndWlsZElkOiBCaWdTdHJpbmcsIHRlbXBsYXRlQ29kZTogc3RyaW5nKSA9PiBQcm9taXNlPHZvaWQ+XG4gIGRlbGV0ZUludGVncmF0aW9uOiAoZ3VpbGRJZDogQmlnU3RyaW5nLCBpbnRlZ3JhdGlvbklkOiBCaWdTdHJpbmcsIHJlYXNvbj86IHN0cmluZykgPT4gUHJvbWlzZTx2b2lkPlxuICBkZWxldGVJbnZpdGU6IChpbnZpdGVDb2RlOiBzdHJpbmcsIHJlYXNvbj86IHN0cmluZykgPT4gUHJvbWlzZTx2b2lkPlxuICBkZWxldGVNZXNzYWdlOiAoY2hhbm5lbElkOiBCaWdTdHJpbmcsIG1lc3NhZ2VJZDogQmlnU3RyaW5nLCByZWFzb24/OiBzdHJpbmcpID0+IFByb21pc2U8dm9pZD5cbiAgZGVsZXRlTWVzc2FnZXM6IChjaGFubmVsSWQ6IEJpZ1N0cmluZywgbWVzc2FnZUlkczogQmlnU3RyaW5nW10sIHJlYXNvbj86IHN0cmluZykgPT4gUHJvbWlzZTx2b2lkPlxuICBkZWxldGVPcmlnaW5hbEludGVyYWN0aW9uUmVzcG9uc2U6ICh0b2tlbjogc3RyaW5nKSA9PiBQcm9taXNlPHZvaWQ+XG4gIGRlbGV0ZU93blJlYWN0aW9uOiAoY2hhbm5lbElkOiBCaWdTdHJpbmcsIG1lc3NhZ2VJZDogQmlnU3RyaW5nLCByZWFjdGlvbjogc3RyaW5nKSA9PiBQcm9taXNlPHZvaWQ+XG4gIGRlbGV0ZVJlYWN0aW9uc0FsbDogKGNoYW5uZWxJZDogQmlnU3RyaW5nLCBtZXNzYWdlSWQ6IEJpZ1N0cmluZykgPT4gUHJvbWlzZTx2b2lkPlxuICBkZWxldGVSZWFjdGlvbnNFbW9qaTogKGNoYW5uZWxJZDogQmlnU3RyaW5nLCBtZXNzYWdlSWQ6IEJpZ1N0cmluZywgcmVhY3Rpb246IHN0cmluZykgPT4gUHJvbWlzZTx2b2lkPlxuICBkZWxldGVSb2xlOiAoZ3VpbGRJZDogQmlnU3RyaW5nLCByb2xlSWQ6IEJpZ1N0cmluZywgcmVhc29uPzogc3RyaW5nKSA9PiBQcm9taXNlPHZvaWQ+XG4gIGRlbGV0ZVNjaGVkdWxlZEV2ZW50OiAoZ3VpbGRJZDogQmlnU3RyaW5nLCBldmVudElkOiBCaWdTdHJpbmcpID0+IFByb21pc2U8dm9pZD5cbiAgZGVsZXRlU3RhZ2VJbnN0YW5jZTogKGNoYW5uZWxJZDogQmlnU3RyaW5nLCByZWFzb24/OiBzdHJpbmcpID0+IFByb21pc2U8dm9pZD5cbiAgZGVsZXRlVXNlclJlYWN0aW9uOiAoY2hhbm5lbElkOiBCaWdTdHJpbmcsIG1lc3NhZ2VJZDogQmlnU3RyaW5nLCB1c2VySWQ6IEJpZ1N0cmluZywgcmVhY3Rpb246IHN0cmluZykgPT4gUHJvbWlzZTx2b2lkPlxuICBkZWxldGVXZWJob29rOiAod2ViaG9va0lkOiBCaWdTdHJpbmcsIHJlYXNvbj86IHN0cmluZykgPT4gUHJvbWlzZTx2b2lkPlxuICBkZWxldGVXZWJob29rTWVzc2FnZTogKHdlYmhvb2tJZDogQmlnU3RyaW5nLCB0b2tlbjogc3RyaW5nLCBtZXNzYWdlSWQ6IEJpZ1N0cmluZywgb3B0aW9ucz86IERlbGV0ZVdlYmhvb2tNZXNzYWdlT3B0aW9ucykgPT4gUHJvbWlzZTx2b2lkPlxuICBkZWxldGVXZWJob29rV2l0aFRva2VuOiAod2ViaG9va0lkOiBCaWdTdHJpbmcsIHRva2VuOiBzdHJpbmcpID0+IFByb21pc2U8dm9pZD5cbiAgZWRpdENoYW5uZWxQZXJtaXNzaW9uT3ZlcnJpZGVzOiAoY2hhbm5lbElkOiBCaWdTdHJpbmcsIG9wdGlvbnM6IEVkaXRDaGFubmVsUGVybWlzc2lvbk92ZXJyaWRlc09wdGlvbnMsIHJlYXNvbj86IHN0cmluZykgPT4gUHJvbWlzZTx2b2lkPlxuICBlZGl0Q2hhbm5lbFBvc2l0aW9uczogKGd1aWxkSWQ6IEJpZ1N0cmluZywgY2hhbm5lbFBvc2l0aW9uczogTW9kaWZ5R3VpbGRDaGFubmVsUG9zaXRpb25zW10pID0+IFByb21pc2U8dm9pZD5cbiAgZWRpdE93blZvaWNlU3RhdGU6IChndWlsZElkOiBCaWdTdHJpbmcsIG9wdGlvbnM6IEVkaXRPd25Wb2ljZVN0YXRlKSA9PiBQcm9taXNlPHZvaWQ+XG4gIGVkaXRVc2VyVm9pY2VTdGF0ZTogKGd1aWxkSWQ6IEJpZ1N0cmluZywgb3B0aW9uczogRWRpdFVzZXJWb2ljZVN0YXRlKSA9PiBQcm9taXNlPHZvaWQ+XG4gIGpvaW5UaHJlYWQ6IChjaGFubmVsSWQ6IEJpZ1N0cmluZykgPT4gUHJvbWlzZTx2b2lkPlxuICBsZWF2ZUd1aWxkOiAoZ3VpbGRJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPHZvaWQ+XG4gIGxlYXZlVGhyZWFkOiAoY2hhbm5lbElkOiBCaWdTdHJpbmcpID0+IFByb21pc2U8dm9pZD5cbiAgcmVtb3ZlUm9sZTogKGd1aWxkSWQ6IEJpZ1N0cmluZywgdXNlcklkOiBCaWdTdHJpbmcsIHJvbGVJZDogQmlnU3RyaW5nLCByZWFzb24/OiBzdHJpbmcpID0+IFByb21pc2U8dm9pZD5cbiAgcmVtb3ZlVGhyZWFkTWVtYmVyOiAoY2hhbm5lbElkOiBCaWdTdHJpbmcsIHVzZXJJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPHZvaWQ+XG4gIHJlbW92ZURtUmVjaXBpZW50OiAoY2hhbm5lbElkOiBCaWdTdHJpbmcsIHVzZXJJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPHZvaWQ+XG4gIHNlbmRJbnRlcmFjdGlvblJlc3BvbnNlOiAoXG4gICAgaW50ZXJhY3Rpb25JZDogQmlnU3RyaW5nLFxuICAgIHRva2VuOiBzdHJpbmcsXG4gICAgb3B0aW9uczogSW50ZXJhY3Rpb25SZXNwb25zZSxcbiAgICBwYXJhbXM/OiBJbnRlcmFjdGlvbkNhbGxiYWNrT3B0aW9ucyxcbiAgKSA9PiBQcm9taXNlPHZvaWQgfCBTZXR1cERlc2lyZWRQcm9wczxJbnRlcmFjdGlvbkNhbGxiYWNrUmVzcG9uc2UsIFRQcm9wcywgVEJlaGF2aW9yPj5cbiAgdHJpZ2dlclR5cGluZ0luZGljYXRvcjogKGNoYW5uZWxJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPHZvaWQ+XG4gIGJhbk1lbWJlcjogKGd1aWxkSWQ6IEJpZ1N0cmluZywgdXNlcklkOiBCaWdTdHJpbmcsIG9wdGlvbnM/OiBDcmVhdGVHdWlsZEJhbiwgcmVhc29uPzogc3RyaW5nKSA9PiBQcm9taXNlPHZvaWQ+XG4gIGtpY2tNZW1iZXI6IChndWlsZElkOiBCaWdTdHJpbmcsIHVzZXJJZDogQmlnU3RyaW5nLCByZWFzb24/OiBzdHJpbmcpID0+IFByb21pc2U8dm9pZD5cbiAgcGluTWVzc2FnZTogKGNoYW5uZWxJZDogQmlnU3RyaW5nLCBtZXNzYWdlSWQ6IEJpZ1N0cmluZywgcmVhc29uPzogc3RyaW5nKSA9PiBQcm9taXNlPHZvaWQ+XG4gIHVuYmFuTWVtYmVyOiAoZ3VpbGRJZDogQmlnU3RyaW5nLCB1c2VySWQ6IEJpZ1N0cmluZywgcmVhc29uPzogc3RyaW5nKSA9PiBQcm9taXNlPHZvaWQ+XG4gIHVucGluTWVzc2FnZTogKGNoYW5uZWxJZDogQmlnU3RyaW5nLCBtZXNzYWdlSWQ6IEJpZ1N0cmluZywgcmVhc29uPzogc3RyaW5nKSA9PiBQcm9taXNlPHZvaWQ+XG4gIGdldEd1aWxkT25ib2FyZGluZzogKGd1aWxkSWQ6IEJpZ1N0cmluZykgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxHdWlsZE9uYm9hcmRpbmcsIFRQcm9wcywgVEJlaGF2aW9yPj5cbiAgZWRpdEd1aWxkT25ib2FyZGluZzogKFxuICAgIGd1aWxkSWQ6IEJpZ1N0cmluZyxcbiAgICBvcHRpb25zOiBFZGl0R3VpbGRPbmJvYXJkaW5nLFxuICAgIHJlYXNvbj86IHN0cmluZyxcbiAgKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPEd1aWxkT25ib2FyZGluZywgVFByb3BzLCBUQmVoYXZpb3I+PlxuICBsaXN0RW50aXRsZW1lbnRzOiAoYXBwbGljYXRpb25JZDogQmlnU3RyaW5nLCBvcHRpb25zPzogR2V0RW50aXRsZW1lbnRzKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPEVudGl0bGVtZW50LCBUUHJvcHMsIFRCZWhhdmlvcj5bXT5cbiAgZ2V0RW50aXRsZW1lbnQ6IChhcHBsaWNhdGlvbklkOiBCaWdTdHJpbmcsIGVudGl0bGVtZW50SWQ6IEJpZ1N0cmluZykgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxFbnRpdGxlbWVudCwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICBjcmVhdGVUZXN0RW50aXRsZW1lbnQ6IChhcHBsaWNhdGlvbklkOiBCaWdTdHJpbmcsIGJvZHk6IENyZWF0ZUVudGl0bGVtZW50KSA9PiBQcm9taXNlPFBhcnRpYWw8U2V0dXBEZXNpcmVkUHJvcHM8RW50aXRsZW1lbnQsIFRQcm9wcywgVEJlaGF2aW9yPj4+XG4gIGRlbGV0ZVRlc3RFbnRpdGxlbWVudDogKGFwcGxpY2F0aW9uSWQ6IEJpZ1N0cmluZywgZW50aXRsZW1lbnRJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPHZvaWQ+XG4gIGxpc3RTa3VzOiAoYXBwbGljYXRpb25JZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPFNrdSwgVFByb3BzLCBUQmVoYXZpb3I+W10+XG4gIGxpc3RTdWJzY3JpcHRpb25zOiAoc2t1SWQ6IEJpZ1N0cmluZywgb3B0aW9ucz86IExpc3RTa3VTdWJzY3JpcHRpb25zT3B0aW9ucykgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxTdWJzY3JpcHRpb24sIFRQcm9wcywgVEJlaGF2aW9yPltdPlxuICBnZXRTdWJzY3JpcHRpb246IChza3VJZDogQmlnU3RyaW5nLCBzdWJzY3JpcHRpb25JZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPFN1YnNjcmlwdGlvbiwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICBzZW5kU291bmRib2FyZFNvdW5kOiAoY2hhbm5lbElkOiBCaWdTdHJpbmcsIG9wdGlvbnM6IFNlbmRTb3VuZGJvYXJkU291bmQpID0+IFByb21pc2U8dm9pZD5cbiAgbGlzdERlZmF1bHRTb3VuZGJvYXJkU291bmRzOiAoKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPFNvdW5kYm9hcmRTb3VuZCwgVFByb3BzLCBUQmVoYXZpb3I+W10+XG4gIGxpc3RHdWlsZFNvdW5kYm9hcmRTb3VuZHM6IChndWlsZElkOiBCaWdTdHJpbmcpID0+IFByb21pc2U8eyBpdGVtczogU2V0dXBEZXNpcmVkUHJvcHM8U291bmRib2FyZFNvdW5kLCBUUHJvcHMsIFRCZWhhdmlvcj5bXSB9PlxuICBnZXRHdWlsZFNvdW5kYm9hcmRTb3VuZDogKGd1aWxkSWQ6IEJpZ1N0cmluZywgc291bmRJZDogQmlnU3RyaW5nKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPFNvdW5kYm9hcmRTb3VuZCwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICBjcmVhdGVHdWlsZFNvdW5kYm9hcmRTb3VuZDogKFxuICAgIGd1aWxkSWQ6IEJpZ1N0cmluZyxcbiAgICBvcHRpb25zOiBDcmVhdGVHdWlsZFNvdW5kYm9hcmRTb3VuZCxcbiAgICByZWFzb24/OiBzdHJpbmcsXG4gICkgPT4gUHJvbWlzZTxTZXR1cERlc2lyZWRQcm9wczxTb3VuZGJvYXJkU291bmQsIFRQcm9wcywgVEJlaGF2aW9yPj5cbiAgbW9kaWZ5R3VpbGRTb3VuZGJvYXJkU291bmQ6IChcbiAgICBndWlsZElkOiBCaWdTdHJpbmcsXG4gICAgc291bmRJZDogQmlnU3RyaW5nLFxuICAgIG9wdGlvbnM6IE1vZGlmeUd1aWxkU291bmRib2FyZFNvdW5kLFxuICAgIHJlYXNvbj86IHN0cmluZyxcbiAgKSA9PiBQcm9taXNlPFNldHVwRGVzaXJlZFByb3BzPFNvdW5kYm9hcmRTb3VuZCwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICBkZWxldGVHdWlsZFNvdW5kYm9hcmRTb3VuZDogKGd1aWxkSWQ6IEJpZ1N0cmluZywgc291bmRJZDogQmlnU3RyaW5nLCByZWFzb24/OiBzdHJpbmcpID0+IFByb21pc2U8dm9pZD5cbiAgZGVsZXRlTG9iYnk6IChsb2JieUlkOiBCaWdTdHJpbmcpID0+IFByb21pc2U8dm9pZD5cbiAgcmVtb3ZlTWVtYmVyRnJvbUxvYmJ5OiAobG9iYnlJZDogQmlnU3RyaW5nLCB1c2VySWQ6IEJpZ1N0cmluZykgPT4gUHJvbWlzZTx2b2lkPlxuICBsZWF2ZUxvYmJ5OiAobG9iYnlJZDogQmlnU3RyaW5nLCBiZWFyZXJUb2tlbjogc3RyaW5nKSA9PiBQcm9taXNlPHZvaWQ+XG59XG4iXSwibmFtZXMiOlsiY3JlYXRlQm90SGVscGVycyIsImJvdCIsImNyZWF0ZUF1dG9tb2RSdWxlIiwiZ3VpbGRJZCIsIm9wdGlvbnMiLCJyZWFzb24iLCJ0cmFuc2Zvcm1lcnMiLCJhdXRvbW9kUnVsZSIsInNuYWtlbGl6ZSIsInJlc3QiLCJjcmVhdGVDaGFubmVsIiwiY2hhbm5lbCIsImNyZWF0ZUVtb2ppIiwiZW1vamkiLCJjcmVhdGVBcHBsaWNhdGlvbkVtb2ppIiwiY3JlYXRlRm9ydW1UaHJlYWQiLCJjaGFubmVsSWQiLCJjcmVhdGVHbG9iYWxBcHBsaWNhdGlvbkNvbW1hbmQiLCJjb21tYW5kIiwiYXBwbGljYXRpb25Db21tYW5kIiwiY3JlYXRlR3VpbGRBcHBsaWNhdGlvbkNvbW1hbmQiLCJjcmVhdGVHdWlsZFN0aWNrZXIiLCJzdGlja2VyIiwiY3JlYXRlR3VpbGRUZW1wbGF0ZSIsInRlbXBsYXRlIiwiY3JlYXRlSW52aXRlIiwiY3JlYXRlUm9sZSIsInJvbGUiLCJjcmVhdGVTY2hlZHVsZWRFdmVudCIsInNjaGVkdWxlZEV2ZW50IiwiY3JlYXRlU3RhZ2VJbnN0YW5jZSIsInN0YWdlSW5zdGFuY2UiLCJjcmVhdGVXZWJob29rIiwid2ViaG9vayIsImVkaXRBcHBsaWNhdGlvbkNvbW1hbmRQZXJtaXNzaW9ucyIsImNvbW1hbmRJZCIsImJlYXJlclRva2VuIiwiYXBwbGljYXRpb25Db21tYW5kUGVybWlzc2lvbiIsImVkaXRBdXRvbW9kUnVsZSIsInJ1bGVJZCIsImVkaXRCb3RQcm9maWxlIiwidXNlciIsImVkaXRDaGFubmVsIiwiZWRpdEVtb2ppIiwiaWQiLCJlZGl0QXBwbGljYXRpb25FbW9qaSIsImVkaXRGb2xsb3d1cE1lc3NhZ2UiLCJ0b2tlbiIsIm1lc3NhZ2VJZCIsIm1lc3NhZ2UiLCJzaGFyZElkIiwiZWRpdEdsb2JhbEFwcGxpY2F0aW9uQ29tbWFuZCIsImVkaXRHdWlsZCIsImd1aWxkIiwiZWRpdEd1aWxkQXBwbGljYXRpb25Db21tYW5kIiwiZWRpdEd1aWxkU3RpY2tlciIsInN0aWNrZXJJZCIsImVkaXRHdWlsZFRlbXBsYXRlIiwidGVtcGxhdGVDb2RlIiwiZWRpdE1lc3NhZ2UiLCJlZGl0T3JpZ2luYWxJbnRlcmFjdGlvblJlc3BvbnNlIiwiZWRpdFJvbGUiLCJyb2xlSWQiLCJlZGl0Um9sZVBvc2l0aW9ucyIsIm1hcCIsImVkaXRTY2hlZHVsZWRFdmVudCIsImV2ZW50SWQiLCJlZGl0U3RhZ2VJbnN0YW5jZSIsInRvcGljIiwiZWRpdFdlYmhvb2siLCJ3ZWJob29rSWQiLCJlZGl0V2ViaG9va01lc3NhZ2UiLCJlZGl0V2ViaG9va1dpdGhUb2tlbiIsImVkaXRXZWxjb21lU2NyZWVuIiwid2VsY29tZVNjcmVlbiIsImVkaXRXaWRnZXRTZXR0aW5ncyIsIndpZGdldFNldHRpbmdzIiwiZXhlY3V0ZVdlYmhvb2siLCJyZXN1bHQiLCJmb2xsb3dBbm5vdW5jZW1lbnQiLCJzb3VyY2VDaGFubmVsSWQiLCJ0YXJnZXRDaGFubmVsSWQiLCJnZXRBY3RpdmVUaHJlYWRzIiwidGhyZWFkcyIsInRocmVhZCIsIm1lbWJlcnMiLCJtZW1iZXIiLCJ0aHJlYWRNZW1iZXIiLCJnZXRBcHBsaWNhdGlvbkluZm8iLCJhcHBsaWNhdGlvbiIsImVkaXRBcHBsaWNhdGlvbkluZm8iLCJib2R5IiwiZ2V0Q3VycmVudEF1dGhlbnRpY2F0aW9uSW5mbyIsImV4Y2hhbmdlVG9rZW4iLCJjbGllbnRJZCIsImNsaWVudFNlY3JldCIsInJldm9rZVRva2VuIiwiZ2V0QXBwbGljYXRpb25Db21tYW5kUGVybWlzc2lvbiIsInJlcyIsInNuYWtlZFJlcyIsImdldEFwcGxpY2F0aW9uQ29tbWFuZFBlcm1pc3Npb25zIiwiZ2V0QXVkaXRMb2ciLCJnZXRBdXRvbW9kUnVsZSIsImdldEF1dG9tb2RSdWxlcyIsImdldEF2YWlsYWJsZVZvaWNlUmVnaW9ucyIsInZvaWNlUmVnaW9uIiwiZ2V0QmFuIiwidXNlcklkIiwiZ2V0QmFucyIsImdldENoYW5uZWwiLCJnZXRDaGFubmVsSW52aXRlcyIsImdldENoYW5uZWxzIiwiZ2V0Q2hhbm5lbFdlYmhvb2tzIiwiZ2V0RG1DaGFubmVsIiwiZ2V0R3JvdXBEbUNoYW5uZWwiLCJnZXRFbW9qaSIsImVtb2ppSWQiLCJnZXRBcHBsaWNhdGlvbkVtb2ppIiwiZ2V0RW1vamlzIiwiZ2V0QXBwbGljYXRpb25FbW9qaXMiLCJpdGVtcyIsIml0ZW0iLCJnZXRGb2xsb3d1cE1lc3NhZ2UiLCJnZXRHYXRld2F5Qm90IiwiZ2F0ZXdheUJvdCIsImdldEdsb2JhbEFwcGxpY2F0aW9uQ29tbWFuZCIsImdldEdsb2JhbEFwcGxpY2F0aW9uQ29tbWFuZHMiLCJnZXRHdWlsZCIsImdldEd1aWxkcyIsImdldEd1aWxkQXBwbGljYXRpb25Db21tYW5kIiwiZ2V0R3VpbGRBcHBsaWNhdGlvbkNvbW1hbmRzIiwiZ2V0R3VpbGRQcmV2aWV3IiwiZ2V0R3VpbGRTdGlja2VyIiwiZ2V0R3VpbGRTdGlja2VycyIsImdldEd1aWxkVGVtcGxhdGUiLCJnZXRHdWlsZFRlbXBsYXRlcyIsImdldEd1aWxkV2ViaG9va3MiLCJnZXRJbnRlZ3JhdGlvbnMiLCJpbnRlZ3JhdGlvbiIsInRvU3RyaW5nIiwiZ2V0SW52aXRlIiwiaW52aXRlQ29kZSIsImludml0ZSIsImdldEludml0ZXMiLCJnZXRNZXNzYWdlIiwiZ2V0TWVzc2FnZXMiLCJnZXRTdGlja2VyUGFjayIsInN0aWNrZXJQYWNrSWQiLCJzdGlja2VyUGFjayIsImdldFN0aWNrZXJQYWNrcyIsImdldE9yaWdpbmFsSW50ZXJhY3Rpb25SZXNwb25zZSIsImdldENoYW5uZWxQaW5zIiwiaGFzTW9yZSIsImhhc19tb3JlIiwibWVzc2FnZVBpbiIsImdldFBpbm5lZE1lc3NhZ2VzIiwiZ2V0UHJpdmF0ZUFyY2hpdmVkVGhyZWFkcyIsImdldFByaXZhdGVKb2luZWRBcmNoaXZlZFRocmVhZHMiLCJnZXRQcnVuZUNvdW50IiwiZ2V0UHVibGljQXJjaGl2ZWRUaHJlYWRzIiwiZ2V0Um9sZXMiLCJnZXRSb2xlIiwiZ2V0U2NoZWR1bGVkRXZlbnQiLCJnZXRTY2hlZHVsZWRFdmVudHMiLCJnZXRTY2hlZHVsZWRFdmVudFVzZXJzIiwidSIsInNub3dmbGFrZSIsImdldFNlc3Npb25JbmZvIiwiZ2V0U3RhZ2VJbnN0YW5jZSIsImdldE93blZvaWNlU3RhdGUiLCJ2b2ljZVN0YXRlIiwiZ2V0VXNlclZvaWNlU3RhdGUiLCJnZXRTdGlja2VyIiwiZ2V0VGhyZWFkTWVtYmVyIiwiZ2V0VGhyZWFkTWVtYmVycyIsImdldFJlYWN0aW9ucyIsInJlYWN0aW9uIiwiZ2V0VXNlciIsImdldEN1cnJlbnRVc2VyIiwiZ2V0VXNlckNvbm5lY3Rpb25zIiwiZ2V0VXNlckFwcGxpY2F0aW9uUm9sZUNvbm5lY3Rpb24iLCJhcHBsaWNhdGlvbklkIiwiZ2V0VmFuaXR5VXJsIiwiZ2V0Vm9pY2VSZWdpb25zIiwiZ2V0V2ViaG9vayIsImdldFdlYmhvb2tNZXNzYWdlIiwiZ2V0V2ViaG9va1dpdGhUb2tlbiIsImdldFdlbGNvbWVTY3JlZW4iLCJnZXRXaWRnZXQiLCJ3aWRnZXQiLCJnZXRXaWRnZXRTZXR0aW5ncyIsInB1Ymxpc2hNZXNzYWdlIiwic2VuZE1lc3NhZ2UiLCJzZW5kRm9sbG93dXBNZXNzYWdlIiwic3RhcnRUaHJlYWRXaXRoTWVzc2FnZSIsInN0YXJ0VGhyZWFkV2l0aG91dE1lc3NhZ2UiLCJzeW5jR3VpbGRUZW1wbGF0ZSIsInVwc2VydEdsb2JhbEFwcGxpY2F0aW9uQ29tbWFuZHMiLCJjb21tYW5kcyIsInVwc2VydEd1aWxkQXBwbGljYXRpb25Db21tYW5kcyIsImVkaXRCb3RNZW1iZXIiLCJlZGl0TWVtYmVyIiwiZ2V0TWVtYmVyIiwiZ2V0Q3VycmVudE1lbWJlciIsImdldE1lbWJlcnMiLCJwcnVuZU1lbWJlcnMiLCJzZWFyY2hNZW1iZXJzIiwicXVlcnkiLCJidWxrQmFuTWVtYmVycyIsImJhbm5lZFVzZXJzIiwieCIsImZhaWxlZFVzZXJzIiwiZ2V0QXBwbGljYXRpb25BY3Rpdml0eUluc3RhbmNlIiwiaW5zdGFuY2VJZCIsImxpc3RBcHBsaWNhdGlvblJvbGVDb25uZWN0aW9uc01ldGFkYXRhUmVjb3JkcyIsInVwZGF0ZUFwcGxpY2F0aW9uUm9sZUNvbm5lY3Rpb25zTWV0YWRhdGFSZWNvcmRzIiwiY3JlYXRlTG9iYnkiLCJsb2JieSIsImdldExvYmJ5IiwibG9iYnlJZCIsIm1vZGlmeUxvYmJ5IiwiYWRkTWVtYmVyVG9Mb2JieSIsImxvYmJ5TWVtYmVyIiwibGlua0NoYW5uZWxUb0xvYmJ5IiwidW5saW5rQ2hhbm5lbFRvTG9iYnkiLCJhZGRSZWFjdGlvbiIsImFkZFJlYWN0aW9ucyIsInJlYWN0aW9ucyIsIm9yZGVyZWQiLCJhZGRSb2xlIiwiYWRkVGhyZWFkTWVtYmVyIiwiYWRkRG1SZWNpcGllbnQiLCJhZGRHdWlsZE1lbWJlciIsImRlbGV0ZUF1dG9tb2RSdWxlIiwiZGVsZXRlQ2hhbm5lbCIsImRlbGV0ZUNoYW5uZWxQZXJtaXNzaW9uT3ZlcnJpZGUiLCJvdmVyd3JpdGVJZCIsImRlbGV0ZUVtb2ppIiwiZGVsZXRlQXBwbGljYXRpb25FbW9qaSIsImRlbGV0ZUZvbGxvd3VwTWVzc2FnZSIsImRlbGV0ZUdsb2JhbEFwcGxpY2F0aW9uQ29tbWFuZCIsImRlbGV0ZUd1aWxkQXBwbGljYXRpb25Db21tYW5kIiwiZGVsZXRlR3VpbGRTdGlja2VyIiwiZGVsZXRlR3VpbGRUZW1wbGF0ZSIsImRlbGV0ZUludGVncmF0aW9uIiwiaW50ZWdyYXRpb25JZCIsImRlbGV0ZUludml0ZSIsImRlbGV0ZU1lc3NhZ2UiLCJkZWxldGVNZXNzYWdlcyIsIm1lc3NhZ2VJZHMiLCJkZWxldGVPcmlnaW5hbEludGVyYWN0aW9uUmVzcG9uc2UiLCJkZWxldGVPd25SZWFjdGlvbiIsImRlbGV0ZVJlYWN0aW9uc0FsbCIsImRlbGV0ZVJlYWN0aW9uc0Vtb2ppIiwiZGVsZXRlUm9sZSIsImRlbGV0ZVNjaGVkdWxlZEV2ZW50IiwiZGVsZXRlU3RhZ2VJbnN0YW5jZSIsImRlbGV0ZVVzZXJSZWFjdGlvbiIsImRlbGV0ZVdlYmhvb2siLCJkZWxldGVXZWJob29rTWVzc2FnZSIsImRlbGV0ZVdlYmhvb2tXaXRoVG9rZW4iLCJlZGl0Q2hhbm5lbFBlcm1pc3Npb25PdmVycmlkZXMiLCJlZGl0Q2hhbm5lbFBvc2l0aW9ucyIsImNoYW5uZWxQb3NpdGlvbnMiLCJlZGl0T3duVm9pY2VTdGF0ZSIsImVkaXRVc2VyVm9pY2VTdGF0ZSIsImVkaXRVc2VyQXBwbGljYXRpb25Sb2xlQ29ubmVjdGlvbiIsImpvaW5UaHJlYWQiLCJsZWF2ZUd1aWxkIiwibGVhdmVUaHJlYWQiLCJyZW1vdmVSb2xlIiwicmVtb3ZlVGhyZWFkTWVtYmVyIiwicmVtb3ZlRG1SZWNpcGllbnQiLCJzZW5kSW50ZXJhY3Rpb25SZXNwb25zZSIsImludGVyYWN0aW9uSWQiLCJwYXJhbXMiLCJyZXNwb25zZSIsImludGVyYWN0aW9uQ2FsbGJhY2tSZXNwb25zZSIsInRyaWdnZXJUeXBpbmdJbmRpY2F0b3IiLCJiYW5NZW1iZXIiLCJraWNrTWVtYmVyIiwicGluTWVzc2FnZSIsInVuYmFuTWVtYmVyIiwidW5waW5NZXNzYWdlIiwiZ2V0R3VpbGRPbmJvYXJkaW5nIiwiZ3VpbGRPbmJvYXJkaW5nIiwiZWRpdEd1aWxkT25ib2FyZGluZyIsImxpc3RFbnRpdGxlbWVudHMiLCJlbnRpdGxlbWVudCIsImdldEVudGl0bGVtZW50IiwiZW50aXRsZW1lbnRJZCIsImNyZWF0ZVRlc3RFbnRpdGxlbWVudCIsImRlbGV0ZVRlc3RFbnRpdGxlbWVudCIsImxpc3RTa3VzIiwic2t1IiwiZ2V0U3Vic2NyaXB0aW9uIiwic2t1SWQiLCJzdWJzY3JpcHRpb25JZCIsInN1YnNjcmlwdGlvbiIsImxpc3RTdWJzY3JpcHRpb25zIiwic2VuZFNvdW5kYm9hcmRTb3VuZCIsImxpc3REZWZhdWx0U291bmRib2FyZFNvdW5kcyIsInNvdW5kIiwic291bmRib2FyZFNvdW5kIiwibGlzdEd1aWxkU291bmRib2FyZFNvdW5kcyIsImdldEd1aWxkU291bmRib2FyZFNvdW5kIiwic291bmRJZCIsImNyZWF0ZUd1aWxkU291bmRib2FyZFNvdW5kIiwibW9kaWZ5R3VpbGRTb3VuZGJvYXJkU291bmQiLCJkZWxldGVHdWlsZFNvdW5kYm9hcmRTb3VuZCIsImRlbGV0ZUxvYmJ5IiwicmVtb3ZlTWVtYmVyRnJvbUxvYmJ5IiwibGVhdmVMb2JieSJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFrSmdCQTs7O2VBQUFBOzs7dUJBdkNVO0FBdUNuQixTQUFTQSxpQkFDZEMsR0FBMkI7SUFFM0IsT0FBTztRQUNMQyxtQkFBbUIsT0FBT0MsU0FBU0MsU0FBU0M7WUFDMUMsT0FBT0osSUFBSUssWUFBWSxDQUFDQyxXQUFXLENBQUNOLEtBQUtPLElBQUFBLGdCQUFTLEVBQUMsTUFBTVAsSUFBSVEsSUFBSSxDQUFDUCxpQkFBaUIsQ0FBQ0MsU0FBU0MsU0FBU0M7UUFDeEc7UUFDQUssZUFBZSxPQUFPUCxTQUFTQyxTQUFTQztZQUN0QyxPQUFPSixJQUFJSyxZQUFZLENBQUNLLE9BQU8sQ0FBQ1YsS0FBSztnQkFBRVUsU0FBU0gsSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUNDLGFBQWEsQ0FBQ1AsU0FBU0MsU0FBU0M7Z0JBQVVGO1lBQVE7UUFDN0g7UUFDQVMsYUFBYSxPQUFPVCxTQUFTQyxTQUFTQztZQUNwQyxPQUFPSixJQUFJSyxZQUFZLENBQUNPLEtBQUssQ0FBQ1osS0FBS08sSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUNHLFdBQVcsQ0FBQ1QsU0FBU0MsU0FBU0M7UUFDNUY7UUFDQVMsd0JBQXdCLE9BQU9WO1lBQzdCLE9BQU9ILElBQUlLLFlBQVksQ0FBQ08sS0FBSyxDQUFDWixLQUFLTyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ0ssc0JBQXNCLENBQUNWO1FBQ3JGO1FBQ0FXLG1CQUFtQixPQUFPQyxXQUFXWixTQUFTQztZQUM1QyxPQUFPSixJQUFJSyxZQUFZLENBQUNLLE9BQU8sQ0FBQ1YsS0FBSztnQkFBRVUsU0FBU0gsSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUNNLGlCQUFpQixDQUFDQyxXQUFXWixTQUFTQztZQUFTO1FBQzFIO1FBQ0FZLGdDQUFnQyxPQUFPQyxTQUFTZDtZQUM5QyxPQUFPSCxJQUFJSyxZQUFZLENBQUNhLGtCQUFrQixDQUFDbEIsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUNRLDhCQUE4QixDQUFDQyxTQUFTZDtRQUNuSDtRQUNBZ0IsK0JBQStCLE9BQU9GLFNBQVNmLFNBQVNDO1lBQ3RELE9BQU9ILElBQUlLLFlBQVksQ0FBQ2Esa0JBQWtCLENBQUNsQixLQUFLTyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ1csNkJBQTZCLENBQUNGLFNBQVNmLFNBQVNDO1FBQzNIO1FBQ0FpQixvQkFBb0IsT0FBT2xCLFNBQVNDLFNBQVNDO1lBQzNDLE9BQU9KLElBQUlLLFlBQVksQ0FBQ2dCLE9BQU8sQ0FBQ3JCLEtBQUtPLElBQUFBLGdCQUFTLEVBQUMsTUFBTVAsSUFBSVEsSUFBSSxDQUFDWSxrQkFBa0IsQ0FBQ2xCLFNBQVNDLFNBQVNDO1FBQ3JHO1FBQ0FrQixxQkFBcUIsT0FBT3BCLFNBQVNDO1lBQ25DLE9BQU9ILElBQUlLLFlBQVksQ0FBQ2tCLFFBQVEsQ0FBQ3ZCLEtBQUtPLElBQUFBLGdCQUFTLEVBQUMsTUFBTVAsSUFBSVEsSUFBSSxDQUFDYyxtQkFBbUIsQ0FBQ3BCLFNBQVNDO1FBQzlGO1FBQ0FxQixjQUFjLE9BQU9ULFdBQVdaLFNBQVNDO1lBQ3ZDLE9BQU8sTUFBTUosSUFBSVEsSUFBSSxDQUFDZ0IsWUFBWSxDQUFDVCxXQUFXWixTQUFTQztRQUN6RDtRQUNBcUIsWUFBWSxPQUFPdkIsU0FBU0MsU0FBU0M7WUFDbkMsT0FBT0osSUFBSUssWUFBWSxDQUFDcUIsSUFBSSxDQUFDMUIsS0FBSztnQkFBRTBCLE1BQU1uQixJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ2lCLFVBQVUsQ0FBQ3ZCLFNBQVNDLFNBQVNDO2dCQUFVRjtZQUFRO1FBQ3BIO1FBQ0F5QixzQkFBc0IsT0FBT3pCLFNBQVNDLFNBQVNDO1lBQzdDLE9BQU9KLElBQUlLLFlBQVksQ0FBQ3VCLGNBQWMsQ0FBQzVCLEtBQUtPLElBQUFBLGdCQUFTLEVBQUMsTUFBTVAsSUFBSVEsSUFBSSxDQUFDbUIsb0JBQW9CLENBQUN6QixTQUFTQyxTQUFTQztRQUM5RztRQUNBeUIscUJBQXFCLE9BQU8xQixTQUFTQztZQUNuQyxPQUFPSixJQUFJSyxZQUFZLENBQUN5QixhQUFhLENBQUM5QixLQUFLTyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ3FCLG1CQUFtQixDQUFDMUIsU0FBU0M7UUFDbkc7UUFDQTJCLGVBQWUsT0FBT2hCLFdBQVdaLFNBQVNDO1lBQ3hDLE9BQU9KLElBQUlLLFlBQVksQ0FBQzJCLE9BQU8sQ0FBQ2hDLEtBQUtPLElBQUFBLGdCQUFTLEVBQUMsTUFBTVAsSUFBSVEsSUFBSSxDQUFDdUIsYUFBYSxDQUFDaEIsV0FBV1osU0FBU0M7UUFDbEc7UUFDQTZCLG1DQUFtQyxPQUFPL0IsU0FBU2dDLFdBQVdDLGFBQWFoQztZQUN6RSxPQUFPSCxJQUFJSyxZQUFZLENBQUMrQiw0QkFBNEIsQ0FDbERwQyxLQUNBTyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ3lCLGlDQUFpQyxDQUFDL0IsU0FBU2dDLFdBQVdDLGFBQWFoQztRQUVoRztRQUNBa0MsaUJBQWlCLE9BQU9uQyxTQUFTb0MsUUFBUW5DLFNBQVNDO1lBQ2hELE9BQU9KLElBQUlLLFlBQVksQ0FBQ0MsV0FBVyxDQUFDTixLQUFLTyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQzZCLGVBQWUsQ0FBQ25DLFNBQVNvQyxRQUFRbkMsU0FBU0M7UUFDOUc7UUFDQW1DLGdCQUFnQixPQUFPcEM7WUFDckIsT0FBT0gsSUFBSUssWUFBWSxDQUFDbUMsSUFBSSxDQUFDeEMsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUMrQixjQUFjLENBQUNwQztRQUM1RTtRQUNBc0MsYUFBYSxPQUFPMUIsV0FBV1osU0FBU0M7WUFDdEMsT0FBT0osSUFBSUssWUFBWSxDQUFDSyxPQUFPLENBQUNWLEtBQUs7Z0JBQUVVLFNBQVNILElBQUFBLGdCQUFTLEVBQUMsTUFBTVAsSUFBSVEsSUFBSSxDQUFDaUMsV0FBVyxDQUFDMUIsV0FBV1osU0FBU0M7WUFBUztRQUNwSDtRQUNBc0MsV0FBVyxPQUFPeEMsU0FBU3lDLElBQUl4QyxTQUFTQztZQUN0QyxPQUFPSixJQUFJSyxZQUFZLENBQUNPLEtBQUssQ0FBQ1osS0FBS08sSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUNrQyxTQUFTLENBQUN4QyxTQUFTeUMsSUFBSXhDLFNBQVNDO1FBQzlGO1FBQ0F3QyxzQkFBc0IsT0FBT0QsSUFBSXhDO1lBQy9CLE9BQU9ILElBQUlLLFlBQVksQ0FBQ08sS0FBSyxDQUFDWixLQUFLTyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ29DLG9CQUFvQixDQUFDRCxJQUFJeEM7UUFDdkY7UUFDQTBDLHFCQUFxQixPQUFPQyxPQUFPQyxXQUFXNUM7WUFDNUMsT0FBT0gsSUFBSUssWUFBWSxDQUFDMkMsT0FBTyxDQUFDaEQsS0FBSztnQkFBRWdELFNBQVN6QyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ3FDLG1CQUFtQixDQUFDQyxPQUFPQyxXQUFXNUM7Z0JBQVc4QyxTQUFTO1lBQUU7UUFDdkk7UUFDQUMsOEJBQThCLE9BQU9oQixXQUFXL0I7WUFDOUMsT0FBT0gsSUFBSUssWUFBWSxDQUFDYSxrQkFBa0IsQ0FBQ2xCLEtBQUtPLElBQUFBLGdCQUFTLEVBQUMsTUFBTVAsSUFBSVEsSUFBSSxDQUFDMEMsNEJBQTRCLENBQUNoQixXQUFXL0I7UUFDbkg7UUFDQWdELFdBQVcsT0FBT2pELFNBQVNDLFNBQVNDO1lBQ2xDLE9BQU9KLElBQUlLLFlBQVksQ0FBQytDLEtBQUssQ0FBQ3BELEtBQUs7Z0JBQUVvRCxPQUFPN0MsSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUMyQyxTQUFTLENBQUNqRCxTQUFTQyxTQUFTQztnQkFBVTZDLFNBQVM7WUFBRTtRQUN4SDtRQUNBSSw2QkFBNkIsT0FBT25CLFdBQVdoQyxTQUFTQztZQUN0RCxPQUFPSCxJQUFJSyxZQUFZLENBQUNhLGtCQUFrQixDQUFDbEIsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUM2QywyQkFBMkIsQ0FBQ25CLFdBQVdoQyxTQUFTQztRQUMzSDtRQUNBbUQsa0JBQWtCLE9BQU9wRCxTQUFTcUQsV0FBV3BELFNBQVNDO1lBQ3BELE9BQU9KLElBQUlLLFlBQVksQ0FBQ2dCLE9BQU8sQ0FBQ3JCLEtBQUtPLElBQUFBLGdCQUFTLEVBQUMsTUFBTVAsSUFBSVEsSUFBSSxDQUFDOEMsZ0JBQWdCLENBQUNwRCxTQUFTcUQsV0FBV3BELFNBQVNDO1FBQzlHO1FBQ0FvRCxtQkFBbUIsT0FBT3RELFNBQVN1RCxjQUFjdEQ7WUFDL0MsT0FBT0gsSUFBSUssWUFBWSxDQUFDa0IsUUFBUSxDQUFDdkIsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUNnRCxpQkFBaUIsQ0FBQ3RELFNBQVN1RCxjQUFjdEQ7UUFDMUc7UUFDQXVELGFBQWEsT0FBTzNDLFdBQVdnQyxXQUFXNUM7WUFDeEMsT0FBT0gsSUFBSUssWUFBWSxDQUFDMkMsT0FBTyxDQUFDaEQsS0FBSztnQkFDbkNnRCxTQUFTekMsSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUNrRCxXQUFXLENBQUMzQyxXQUFXZ0MsV0FBVzVDO2dCQUNwRThDLFNBQVM7WUFDWDtRQUNGO1FBQ0FVLGlDQUFpQyxPQUFPYixPQUFPM0M7WUFDN0MsT0FBT0gsSUFBSUssWUFBWSxDQUFDMkMsT0FBTyxDQUFDaEQsS0FBSztnQkFBRWdELFNBQVN6QyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ21ELCtCQUErQixDQUFDYixPQUFPM0M7Z0JBQVc4QyxTQUFTO1lBQUU7UUFDeEk7UUFDQVcsVUFBVSxPQUFPMUQsU0FBUzJELFFBQVExRCxTQUFTQztZQUN6QyxPQUFPSixJQUFJSyxZQUFZLENBQUNxQixJQUFJLENBQUMxQixLQUFLO2dCQUFFMEIsTUFBTW5CLElBQUFBLGdCQUFTLEVBQUMsTUFBTVAsSUFBSVEsSUFBSSxDQUFDb0QsUUFBUSxDQUFDMUQsU0FBUzJELFFBQVExRCxTQUFTQztnQkFBVUY7WUFBUTtRQUMxSDtRQUNBNEQsbUJBQW1CLE9BQU81RCxTQUFTQyxTQUFTQztZQUMxQyxPQUFPRyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ3NELGlCQUFpQixDQUFDNUQsU0FBU0MsU0FBU0MsU0FBUzJELEdBQUcsQ0FBQyxDQUFDckMsT0FBUzFCLElBQUlLLFlBQVksQ0FBQ3FCLElBQUksQ0FBQzFCLEtBQUs7b0JBQUUwQjtvQkFBTXhCO2dCQUFRO1FBQ3hJO1FBQ0E4RCxvQkFBb0IsT0FBTzlELFNBQVMrRCxTQUFTOUQsU0FBU0M7WUFDcEQsT0FBT0osSUFBSUssWUFBWSxDQUFDdUIsY0FBYyxDQUFDNUIsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUN3RCxrQkFBa0IsQ0FBQzlELFNBQVMrRCxTQUFTOUQsU0FBU0M7UUFDckg7UUFDQThELG1CQUFtQixPQUFPbkQsV0FBV29ELE9BQU8vRDtZQUMxQyxPQUFPSixJQUFJSyxZQUFZLENBQUN5QixhQUFhLENBQUM5QixLQUFLTyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQzBELGlCQUFpQixDQUFDbkQsV0FBV29ELE9BQU8vRDtRQUMxRztRQUNBZ0UsYUFBYSxPQUFPQyxXQUFXbEUsU0FBU0M7WUFDdEMsT0FBT0osSUFBSUssWUFBWSxDQUFDMkIsT0FBTyxDQUFDaEMsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUM0RCxXQUFXLENBQUNDLFdBQVdsRSxTQUFTQztRQUNoRztRQUNBa0Usb0JBQW9CLE9BQU9ELFdBQVd2QixPQUFPQyxXQUFXNUM7WUFDdEQsT0FBT0gsSUFBSUssWUFBWSxDQUFDMkMsT0FBTyxDQUFDaEQsS0FBSztnQkFDbkNnRCxTQUFTekMsSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUM4RCxrQkFBa0IsQ0FBQ0QsV0FBV3ZCLE9BQU9DLFdBQVc1QztnQkFDbEY4QyxTQUFTO1lBQ1g7UUFDRjtRQUNBc0Isc0JBQXNCLE9BQU9GLFdBQVd2QixPQUFPM0M7WUFDN0MsT0FBT0gsSUFBSUssWUFBWSxDQUFDMkIsT0FBTyxDQUFDaEMsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUMrRCxvQkFBb0IsQ0FBQ0YsV0FBV3ZCLE9BQU8zQztRQUN2RztRQUNBcUUsbUJBQW1CLE9BQU90RSxTQUFTQyxTQUFTQztZQUMxQyxPQUFPSixJQUFJSyxZQUFZLENBQUNvRSxhQUFhLENBQUN6RSxLQUFLTyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ2dFLGlCQUFpQixDQUFDdEUsU0FBU0MsU0FBU0M7UUFDMUc7UUFDQXNFLG9CQUFvQixPQUFPeEUsU0FBU0MsU0FBU0M7WUFDM0MsT0FBT0osSUFBSUssWUFBWSxDQUFDc0UsY0FBYyxDQUFDM0UsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUNrRSxrQkFBa0IsQ0FBQ3hFLFNBQVNDLFNBQVNDO1FBQzVHO1FBQ0F3RSxnQkFBZ0IsT0FBT1AsV0FBV3ZCLE9BQU8zQztZQUN2QyxNQUFNMEUsU0FBUyxNQUFNN0UsSUFBSVEsSUFBSSxDQUFDb0UsY0FBYyxDQUFDUCxXQUFXdkIsT0FBTzNDO1lBQy9ELElBQUksQ0FBQzBFLFFBQVE7WUFFYixPQUFPN0UsSUFBSUssWUFBWSxDQUFDMkMsT0FBTyxDQUFDaEQsS0FBSztnQkFBRWdELFNBQVN6QyxJQUFBQSxnQkFBUyxFQUFDc0U7Z0JBQTJCNUIsU0FBUztZQUFFO1FBQ2xHO1FBQ0E2QixvQkFBb0IsT0FBT0MsaUJBQWlCQztZQUMxQyxPQUFPLE1BQU1oRixJQUFJUSxJQUFJLENBQUNzRSxrQkFBa0IsQ0FBQ0MsaUJBQWlCQztRQUM1RDtRQUNBQyxrQkFBa0IsT0FBTy9FO1lBQ3ZCLE1BQU0yRSxTQUFTLE1BQU03RSxJQUFJUSxJQUFJLENBQUN5RSxnQkFBZ0IsQ0FBQy9FO1lBQy9DLE9BQU87Z0JBQ0xnRixTQUFTTCxPQUFPSyxPQUFPLENBQUNuQixHQUFHLENBQUMsQ0FBQ29CLFNBQVduRixJQUFJSyxZQUFZLENBQUNLLE9BQU8sQ0FBQ1YsS0FBSzt3QkFBRUU7d0JBQVNRLFNBQVNILElBQUFBLGdCQUFTLEVBQUM0RTtvQkFBUTtnQkFDNUdDLFNBQVNQLE9BQU9PLE9BQU8sQ0FBQ3JCLEdBQUcsQ0FBQyxDQUFDc0IsU0FBV3JGLElBQUlLLFlBQVksQ0FBQ2lGLFlBQVksQ0FBQ3RGLEtBQUtPLElBQUFBLGdCQUFTLEVBQUM4RTtZQUN2RjtRQUNGO1FBQ0FFLG9CQUFvQjtZQUNsQixPQUFPdkYsSUFBSUssWUFBWSxDQUFDbUYsV0FBVyxDQUFDeEYsS0FBSztnQkFBRXdGLGFBQWFqRixJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQytFLGtCQUFrQjtnQkFBS3RDLFNBQVM7WUFBRTtRQUNySDtRQUNBd0MscUJBQXFCLE9BQU9DO1lBQzFCLE9BQU8xRixJQUFJSyxZQUFZLENBQUNtRixXQUFXLENBQUN4RixLQUFLO2dCQUFFd0YsYUFBYWpGLElBQUFBLGdCQUFTLEVBQUMsTUFBTVAsSUFBSVEsSUFBSSxDQUFDaUYsbUJBQW1CLENBQUNDO2dCQUFRekMsU0FBUztZQUFFO1FBQzFIO1FBQ0EwQyw4QkFBOEIsT0FBT3hEO1lBQ25DLE9BQU8sTUFBTW5DLElBQUlRLElBQUksQ0FBQ21GLDRCQUE0QixDQUFDeEQ7UUFDckQ7UUFDQXlELGVBQWUsT0FBT0MsVUFBVUMsY0FBYzNGO1lBQzVDLE9BQU8sTUFBTUgsSUFBSVEsSUFBSSxDQUFDb0YsYUFBYSxDQUFDQyxVQUFVQyxjQUFjM0Y7UUFDOUQ7UUFDQTRGLGFBQWEsT0FBT0YsVUFBVUMsY0FBYzNGO1lBQzFDLE9BQU8sTUFBTUgsSUFBSVEsSUFBSSxDQUFDdUYsV0FBVyxDQUFDRixVQUFVQyxjQUFjM0Y7UUFDNUQ7UUFDQTZGLGlDQUFpQyxPQUFPOUYsU0FBU2dDLFdBQVcvQjtZQUMxRCxNQUFNOEYsTUFBTSxNQUFNakcsSUFBSVEsSUFBSSxDQUFDd0YsK0JBQStCLENBQUM5RixTQUFTZ0MsV0FBVy9CO1lBQy9FLE1BQU0rRixZQUFZM0YsSUFBQUEsZ0JBQVMsRUFBQzBGO1lBRTVCLE9BQU9qRyxJQUFJSyxZQUFZLENBQUMrQiw0QkFBNEIsQ0FBQ3BDLEtBQUtrRztRQUM1RDtRQUNBQyxrQ0FBa0MsT0FBT2pHLFNBQVNDO1lBQ2hELE9BQU8sQUFBQyxDQUFBLE1BQU1ILElBQUlRLElBQUksQ0FBQzJGLGdDQUFnQyxDQUFDakcsU0FBU0MsUUFBTyxFQUFHNEQsR0FBRyxDQUFDLENBQUNrQyxNQUM5RWpHLElBQUlLLFlBQVksQ0FBQytCLDRCQUE0QixDQUFDcEMsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQzBGO1FBRWpFO1FBQ0FHLGFBQWEsT0FBT2xHLFNBQVNDO1lBQzNCLE9BQU8sTUFBTUgsSUFBSVEsSUFBSSxDQUFDNEYsV0FBVyxDQUFDbEcsU0FBU0M7UUFDN0M7UUFDQWtHLGdCQUFnQixPQUFPbkcsU0FBU29DO1lBQzlCLE9BQU90QyxJQUFJSyxZQUFZLENBQUNDLFdBQVcsQ0FBQ04sS0FBS08sSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUM2RixjQUFjLENBQUNuRyxTQUFTb0M7UUFDNUY7UUFDQWdFLGlCQUFpQixPQUFPcEc7WUFDdEIsT0FBTyxBQUFDLENBQUEsTUFBTUYsSUFBSVEsSUFBSSxDQUFDOEYsZUFBZSxDQUFDcEcsUUFBTyxFQUFHNkQsR0FBRyxDQUFDLENBQUNrQyxNQUFRakcsSUFBSUssWUFBWSxDQUFDQyxXQUFXLENBQUNOLEtBQUtPLElBQUFBLGdCQUFTLEVBQUMwRjtRQUM1RztRQUNBTSwwQkFBMEI7WUFDeEIsT0FBTyxBQUFDLENBQUEsTUFBTXZHLElBQUlRLElBQUksQ0FBQytGLHdCQUF3QixFQUFDLEVBQUd4QyxHQUFHLENBQUMsQ0FBQ2tDLE1BQVFqRyxJQUFJSyxZQUFZLENBQUNtRyxXQUFXLENBQUN4RyxLQUFLTyxJQUFBQSxnQkFBUyxFQUFDMEY7UUFDOUc7UUFDQVEsUUFBUSxPQUFPdkcsU0FBU3dHO1lBQ3RCLE9BQU8sTUFBTTFHLElBQUlRLElBQUksQ0FBQ2lHLE1BQU0sQ0FBQ3ZHLFNBQVN3RztRQUN4QztRQUNBQyxTQUFTLE9BQU96RyxTQUFTQztZQUN2QixPQUFPLE1BQU1ILElBQUlRLElBQUksQ0FBQ21HLE9BQU8sQ0FBQ3pHLFNBQVNDO1FBQ3pDO1FBQ0F5RyxZQUFZLE9BQU83RjtZQUNqQixPQUFPZixJQUFJSyxZQUFZLENBQUNLLE9BQU8sQ0FBQ1YsS0FBSztnQkFBRVUsU0FBU0gsSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUNvRyxVQUFVLENBQUM3RjtZQUFZO1FBQ2xHO1FBQ0E4RixtQkFBbUIsT0FBTzlGO1lBQ3hCLE9BQU8sTUFBTWYsSUFBSVEsSUFBSSxDQUFDcUcsaUJBQWlCLENBQUM5RjtRQUN4QyxrSEFBa0g7UUFDcEg7UUFDQStGLGFBQWEsT0FBTzVHO1lBQ2xCLE9BQU8sQUFBQyxDQUFBLE1BQU1GLElBQUlRLElBQUksQ0FBQ3NHLFdBQVcsQ0FBQzVHLFFBQU8sRUFBRzZELEdBQUcsQ0FBQyxDQUFDa0MsTUFBUWpHLElBQUlLLFlBQVksQ0FBQ0ssT0FBTyxDQUFDVixLQUFLO29CQUFFVSxTQUFTSCxJQUFBQSxnQkFBUyxFQUFDMEY7b0JBQU0vRjtnQkFBUTtRQUM3SDtRQUNBNkcsb0JBQW9CLE9BQU9oRztZQUN6QixPQUFPLEFBQUMsQ0FBQSxNQUFNZixJQUFJUSxJQUFJLENBQUN1RyxrQkFBa0IsQ0FBQ2hHLFVBQVMsRUFBR2dELEdBQUcsQ0FBQyxDQUFDa0MsTUFBUWpHLElBQUlLLFlBQVksQ0FBQzJCLE9BQU8sQ0FBQ2hDLEtBQUtPLElBQUFBLGdCQUFTLEVBQUMwRjtRQUM3RztRQUNBZSxjQUFjLE9BQU9OO1lBQ25CLE9BQU8xRyxJQUFJSyxZQUFZLENBQUNLLE9BQU8sQ0FBQ1YsS0FBSztnQkFBRVUsU0FBU0gsSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUN3RyxZQUFZLENBQUNOO1lBQVM7UUFDakc7UUFDQU8sbUJBQW1CLE9BQU85RztZQUN4QixPQUFPSCxJQUFJSyxZQUFZLENBQUNLLE9BQU8sQ0FBQ1YsS0FBSztnQkFBRVUsU0FBU0gsSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUN5RyxpQkFBaUIsQ0FBQzlHO1lBQVU7UUFDdkc7UUFDQStHLFVBQVUsT0FBT2hILFNBQVNpSDtZQUN4QixPQUFPbkgsSUFBSUssWUFBWSxDQUFDTyxLQUFLLENBQUNaLEtBQUtPLElBQUFBLGdCQUFTLEVBQUMsTUFBTVAsSUFBSVEsSUFBSSxDQUFDMEcsUUFBUSxDQUFDaEgsU0FBU2lIO1FBQ2hGO1FBQ0FDLHFCQUFxQixPQUFPRDtZQUMxQixPQUFPbkgsSUFBSUssWUFBWSxDQUFDTyxLQUFLLENBQUNaLEtBQUtPLElBQUFBLGdCQUFTLEVBQUMsTUFBTVAsSUFBSVEsSUFBSSxDQUFDNEcsbUJBQW1CLENBQUNEO1FBQ2xGO1FBQ0FFLFdBQVcsT0FBT25IO1lBQ2hCLE9BQU8sQUFBQyxDQUFBLE1BQU1GLElBQUlRLElBQUksQ0FBQzZHLFNBQVMsQ0FBQ25ILFFBQU8sRUFBRzZELEdBQUcsQ0FBQyxDQUFDa0MsTUFBUWpHLElBQUlLLFlBQVksQ0FBQ08sS0FBSyxDQUFDWixLQUFLTyxJQUFBQSxnQkFBUyxFQUFDMEY7UUFDaEc7UUFDQXFCLHNCQUFzQjtZQUNwQixNQUFNckIsTUFBTSxNQUFNakcsSUFBSVEsSUFBSSxDQUFDOEcsb0JBQW9CO1lBRS9DLE9BQU87Z0JBQ0xDLE9BQU90QixJQUFJc0IsS0FBSyxDQUFDeEQsR0FBRyxDQUFDLENBQUN5RCxPQUFTeEgsSUFBSUssWUFBWSxDQUFDTyxLQUFLLENBQUNaLEtBQUtPLElBQUFBLGdCQUFTLEVBQUNpSDtZQUN2RTtRQUNGO1FBQ0FDLG9CQUFvQixPQUFPM0UsT0FBT0M7WUFDaEMsT0FBTy9DLElBQUlLLFlBQVksQ0FBQzJDLE9BQU8sQ0FBQ2hELEtBQUs7Z0JBQUVnRCxTQUFTekMsSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUNpSCxrQkFBa0IsQ0FBQzNFLE9BQU9DO2dCQUFhRSxTQUFTO1lBQUU7UUFDN0g7UUFDQXlFLGVBQWU7WUFDYixPQUFPMUgsSUFBSUssWUFBWSxDQUFDc0gsVUFBVSxDQUFDM0gsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUNrSCxhQUFhO1FBQ2hGO1FBQ0FFLDZCQUE2QixPQUFPMUY7WUFDbEMsT0FBT2xDLElBQUlLLFlBQVksQ0FBQ2Esa0JBQWtCLENBQUNsQixLQUFLTyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ29ILDJCQUEyQixDQUFDMUY7UUFDdkc7UUFDQTJGLDhCQUE4QjtZQUM1QixPQUFPLEFBQUMsQ0FBQSxNQUFNN0gsSUFBSVEsSUFBSSxDQUFDcUgsNEJBQTRCLEVBQUMsRUFBRzlELEdBQUcsQ0FBQyxDQUFDa0MsTUFBUWpHLElBQUlLLFlBQVksQ0FBQ2Esa0JBQWtCLENBQUNsQixLQUFLTyxJQUFBQSxnQkFBUyxFQUFDMEY7UUFDekg7UUFDQTZCLFVBQVUsT0FBTzVILFNBQVNDO1lBQ3hCLE9BQU9ILElBQUlLLFlBQVksQ0FBQytDLEtBQUssQ0FBQ3BELEtBQUs7Z0JBQUVvRCxPQUFPN0MsSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUNzSCxRQUFRLENBQUM1SCxTQUFTQztnQkFBVzhDLFNBQVM7WUFBRTtRQUMvRztRQUNBOEUsV0FBVyxPQUFPNUYsYUFBYWhDO1lBQzdCLE9BQU8sQUFBQyxDQUFBLE1BQU1ILElBQUlRLElBQUksQ0FBQ3VILFNBQVMsQ0FBQzVGLGFBQWFoQyxRQUFPLEVBQUc0RCxHQUFHLENBQXdELENBQUNrQyxNQUNsSCxvREFBb0Q7Z0JBQ3BEakcsSUFBSUssWUFBWSxDQUFDK0MsS0FBSyxDQUFDcEQsS0FBSztvQkFBRW9ELE9BQU83QyxJQUFBQSxnQkFBUyxFQUFDMEY7b0JBQU1oRCxTQUFTO2dCQUFFO1FBRXBFO1FBQ0ErRSw0QkFBNEIsT0FBTzlGLFdBQVdoQztZQUM1QyxPQUFPRixJQUFJSyxZQUFZLENBQUNhLGtCQUFrQixDQUFDbEIsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUN3SCwwQkFBMEIsQ0FBQzlGLFdBQVdoQztRQUNqSDtRQUNBK0gsNkJBQTZCLE9BQU8vSDtZQUNsQyxPQUFPLEFBQUMsQ0FBQSxNQUFNRixJQUFJUSxJQUFJLENBQUN5SCwyQkFBMkIsQ0FBQy9ILFFBQU8sRUFBRzZELEdBQUcsQ0FBQyxDQUFDa0MsTUFBUWpHLElBQUlLLFlBQVksQ0FBQ2Esa0JBQWtCLENBQUNsQixLQUFLTyxJQUFBQSxnQkFBUyxFQUFDMEY7UUFDL0g7UUFDQWlDLGlCQUFpQixPQUFPaEk7WUFDdEIsT0FBTyxNQUFNRixJQUFJUSxJQUFJLENBQUMwSCxlQUFlLENBQUNoSTtRQUN0Qyx1RkFBdUY7UUFDekY7UUFDQWlJLGlCQUFpQixPQUFPakksU0FBU3FEO1lBQy9CLE9BQU92RCxJQUFJSyxZQUFZLENBQUNnQixPQUFPLENBQUNyQixLQUFLTyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQzJILGVBQWUsQ0FBQ2pJLFNBQVNxRDtRQUN6RjtRQUNBNkUsa0JBQWtCLE9BQU9sSTtZQUN2QixPQUFPLEFBQUMsQ0FBQSxNQUFNRixJQUFJUSxJQUFJLENBQUM0SCxnQkFBZ0IsQ0FBQ2xJLFFBQU8sRUFBRzZELEdBQUcsQ0FBQyxDQUFDa0MsTUFBUWpHLElBQUlLLFlBQVksQ0FBQ2dCLE9BQU8sQ0FBQ3JCLEtBQUtPLElBQUFBLGdCQUFTLEVBQUMwRjtRQUN6RztRQUNBb0Msa0JBQWtCLE9BQU81RTtZQUN2QixPQUFPekQsSUFBSUssWUFBWSxDQUFDa0IsUUFBUSxDQUFDdkIsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUM2SCxnQkFBZ0IsQ0FBQzVFO1FBQ2xGO1FBQ0E2RSxtQkFBbUIsT0FBT3BJO1lBQ3hCLE9BQU8sQUFBQyxDQUFBLE1BQU1GLElBQUlRLElBQUksQ0FBQzhILGlCQUFpQixDQUFDcEksUUFBTyxFQUFHNkQsR0FBRyxDQUFDLENBQUNrQyxNQUFRakcsSUFBSUssWUFBWSxDQUFDa0IsUUFBUSxDQUFDdkIsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQzBGO1FBQzNHO1FBQ0FzQyxrQkFBa0IsT0FBT3JJO1lBQ3ZCLE9BQU8sQUFBQyxDQUFBLE1BQU1GLElBQUlRLElBQUksQ0FBQytILGdCQUFnQixDQUFDckksUUFBTyxFQUFHNkQsR0FBRyxDQUFDLENBQUNrQyxNQUFRakcsSUFBSUssWUFBWSxDQUFDMkIsT0FBTyxDQUFDaEMsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQzBGO1FBQ3pHO1FBQ0F1QyxpQkFBaUIsT0FBT3RJO1lBQ3RCLE9BQU8sQUFBQyxDQUFBLE1BQU1GLElBQUlRLElBQUksQ0FBQ2dJLGVBQWUsQ0FBQ3RJLFFBQU8sRUFBRzZELEdBQUcsQ0FBQyxDQUFDa0MsTUFDcERqRyxJQUFJSyxZQUFZLENBQUNvSSxXQUFXLENBQUN6SSxLQUFLTyxJQUFBQSxnQkFBUyxFQUFDO29CQUFFLEdBQUcwRixHQUFHO29CQUFFL0YsU0FBU0EsUUFBUXdJLFFBQVE7Z0JBQUc7UUFFdEY7UUFDQUMsV0FBVyxPQUFPQyxZQUFZekk7WUFDNUIsT0FBT0gsSUFBSUssWUFBWSxDQUFDd0ksTUFBTSxDQUFDN0ksS0FBSztnQkFBRTZJLFFBQVF0SSxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ21JLFNBQVMsQ0FBQ0MsWUFBWXpJO2dCQUFXOEMsU0FBUztZQUFFO1FBQ3JIO1FBQ0E2RixZQUFZLE9BQU81STtZQUNqQixPQUFPLEFBQUMsQ0FBQSxNQUFNRixJQUFJUSxJQUFJLENBQUNzSSxVQUFVLENBQUM1SSxRQUFPLEVBQUc2RCxHQUFHLENBQUMsQ0FBQ2tDLE1BQVFqRyxJQUFJSyxZQUFZLENBQUN3SSxNQUFNLENBQUM3SSxLQUFLO29CQUFFNkksUUFBUXRJLElBQUFBLGdCQUFTLEVBQUMwRjtvQkFBTWhELFNBQVM7Z0JBQUU7UUFDN0g7UUFDQThGLFlBQVksT0FBT2hJLFdBQVdnQztZQUM1QixPQUFPL0MsSUFBSUssWUFBWSxDQUFDMkMsT0FBTyxDQUFDaEQsS0FBSztnQkFBRWdELFNBQVN6QyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ3VJLFVBQVUsQ0FBQ2hJLFdBQVdnQztnQkFBYUUsU0FBUztZQUFFO1FBQ3pIO1FBQ0ErRixhQUFhLE9BQU9qSSxXQUFXWjtZQUM3QixPQUFPLEFBQUMsQ0FBQSxNQUFNSCxJQUFJUSxJQUFJLENBQUN3SSxXQUFXLENBQUNqSSxXQUFXWixRQUFPLEVBQUc0RCxHQUFHLENBQUMsQ0FBQ2tDLE1BQVFqRyxJQUFJSyxZQUFZLENBQUMyQyxPQUFPLENBQUNoRCxLQUFLO29CQUFFZ0QsU0FBU3pDLElBQUFBLGdCQUFTLEVBQUMwRjtvQkFBTWhELFNBQVM7Z0JBQUU7UUFDM0k7UUFDQWdHLGdCQUFnQixPQUFPQztZQUNyQixPQUFPbEosSUFBSUssWUFBWSxDQUFDOEksV0FBVyxDQUFDbkosS0FBS08sSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUN5SSxjQUFjLENBQUNDO1FBQ25GO1FBQ0FFLGlCQUFpQjtZQUNmLE9BQU8sQUFBQyxDQUFBLE1BQU1wSixJQUFJUSxJQUFJLENBQUM0SSxlQUFlLEVBQUMsRUFBR3JGLEdBQUcsQ0FBQyxDQUFDa0MsTUFBUWpHLElBQUlLLFlBQVksQ0FBQzhJLFdBQVcsQ0FBQ25KLEtBQUtPLElBQUFBLGdCQUFTLEVBQUMwRjtRQUNyRztRQUNBb0QsZ0NBQWdDLE9BQU92RztZQUNyQyxPQUFPOUMsSUFBSUssWUFBWSxDQUFDMkMsT0FBTyxDQUFDaEQsS0FBSztnQkFBRWdELFNBQVN6QyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQzZJLDhCQUE4QixDQUFDdkc7Z0JBQVNHLFNBQVM7WUFBRTtRQUM5SDtRQUNBcUcsZ0JBQWdCLE9BQU92SSxXQUFXWjtZQUNoQyxNQUFNOEYsTUFBTTFGLElBQUFBLGdCQUFTLEVBQUMsTUFBTVAsSUFBSVEsSUFBSSxDQUFDOEksY0FBYyxDQUFDdkksV0FBV1o7WUFFL0QsT0FBTztnQkFDTG9KLFNBQVN0RCxJQUFJdUQsUUFBUTtnQkFDckJqQyxPQUFPdEIsSUFBSXNCLEtBQUssQ0FBQ3hELEdBQUcsQ0FBQyxDQUFDeUQsT0FBU3hILElBQUlLLFlBQVksQ0FBQ29KLFVBQVUsQ0FBQ3pKLEtBQUt3SDtZQUNsRTtRQUNGO1FBQ0FrQyxtQkFBbUIsT0FBTzNJO1lBQ3hCLE9BQU8sQUFBQyxDQUFBLE1BQU1mLElBQUlRLElBQUksQ0FBQ2tKLGlCQUFpQixDQUFDM0ksVUFBUyxFQUFHZ0QsR0FBRyxDQUFDLENBQUNrQyxNQUFRakcsSUFBSUssWUFBWSxDQUFDMkMsT0FBTyxDQUFDaEQsS0FBSztvQkFBRWdELFNBQVN6QyxJQUFBQSxnQkFBUyxFQUFDMEY7b0JBQU1oRCxTQUFTO2dCQUFFO1FBQ3hJO1FBQ0EwRywyQkFBMkIsT0FBTzVJLFdBQVdaO1lBQzNDLE9BQU8sTUFBTUgsSUFBSVEsSUFBSSxDQUFDbUoseUJBQXlCLENBQUM1SSxXQUFXWjtRQUM3RDtRQUNBeUosaUNBQWlDLE9BQU83SSxXQUFXWjtZQUNqRCxPQUFPLE1BQU1ILElBQUlRLElBQUksQ0FBQ29KLCtCQUErQixDQUFDN0ksV0FBV1o7UUFDbkU7UUFDQTBKLGVBQWUsT0FBTzNKLFNBQVNDO1lBQzdCLE9BQU8sTUFBTUgsSUFBSVEsSUFBSSxDQUFDcUosYUFBYSxDQUFDM0osU0FBU0M7UUFDL0M7UUFDQTJKLDBCQUEwQixPQUFPL0ksV0FBV1o7WUFDMUMsT0FBTyxNQUFNSCxJQUFJUSxJQUFJLENBQUNzSix3QkFBd0IsQ0FBQy9JLFdBQVdaO1FBQzVEO1FBQ0E0SixVQUFVLE9BQU83SjtZQUNmLE9BQU9LLElBQUFBLGdCQUFTLEVBQUMsTUFBTVAsSUFBSVEsSUFBSSxDQUFDdUosUUFBUSxDQUFDN0osVUFBVTZELEdBQUcsQ0FBQyxDQUFDckMsT0FBUzFCLElBQUlLLFlBQVksQ0FBQ3FCLElBQUksQ0FBQzFCLEtBQUs7b0JBQUUwQjtvQkFBTXhCO2dCQUFRO1FBQzlHO1FBQ0E4SixTQUFTLE9BQU85SixTQUFTMkQ7WUFDdkIsT0FBTzdELElBQUlLLFlBQVksQ0FBQ3FCLElBQUksQ0FBQzFCLEtBQUs7Z0JBQUUwQixNQUFNbkIsSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUN3SixPQUFPLENBQUM5SixTQUFTMkQ7Z0JBQVUzRDtZQUFRO1FBQ3hHO1FBQ0ErSixtQkFBbUIsT0FBTy9KLFNBQVMrRCxTQUFTOUQ7WUFDMUMsT0FBT0gsSUFBSUssWUFBWSxDQUFDdUIsY0FBYyxDQUFDNUIsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUN5SixpQkFBaUIsQ0FBQy9KLFNBQVMrRCxTQUFTOUQ7UUFDM0c7UUFDQStKLG9CQUFvQixPQUFPaEssU0FBU0M7WUFDbEMsT0FBTyxBQUFDLENBQUEsTUFBTUgsSUFBSVEsSUFBSSxDQUFDMEosa0JBQWtCLENBQUNoSyxTQUFTQyxRQUFPLEVBQUc0RCxHQUFHLENBQUMsQ0FBQ2tDLE1BQVFqRyxJQUFJSyxZQUFZLENBQUN1QixjQUFjLENBQUM1QixLQUFLTyxJQUFBQSxnQkFBUyxFQUFDMEY7UUFDM0g7UUFDQWtFLHdCQUF3QixPQUFPakssU0FBUytELFNBQVM5RDtZQUMvQyxPQUFPLEFBQUMsQ0FBQSxNQUFNSCxJQUFJUSxJQUFJLENBQUMySixzQkFBc0IsQ0FBQ2pLLFNBQVMrRCxTQUFTOUQsUUFBTyxFQUFHNEQsR0FBRyxDQUFDLENBQUNxRztnQkFDN0UsT0FBTztvQkFDTDVILE1BQU14QyxJQUFJSyxZQUFZLENBQUNtQyxJQUFJLENBQUN4QyxLQUFLTyxJQUFBQSxnQkFBUyxFQUFDNkosRUFBRTVILElBQUk7b0JBQ2pENkMsUUFBUStFLEVBQUUvRSxNQUFNLElBQUlyRixJQUFJSyxZQUFZLENBQUNnRixNQUFNLENBQUNyRixLQUFLTyxJQUFBQSxnQkFBUyxFQUFDNkosRUFBRS9FLE1BQU0sR0FBR25GLFNBQVNGLElBQUlLLFlBQVksQ0FBQ2dLLFNBQVMsQ0FBQ0QsRUFBRTVILElBQUksQ0FBQ0csRUFBRTtnQkFDckg7WUFDRjtRQUNGO1FBQ0EySCxnQkFBZ0I7WUFDZCxPQUFPdEssSUFBSUssWUFBWSxDQUFDc0gsVUFBVSxDQUFDM0gsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUM4SixjQUFjO1FBQ2pGO1FBQ0FDLGtCQUFrQixPQUFPeEo7WUFDdkIsT0FBT2YsSUFBSUssWUFBWSxDQUFDeUIsYUFBYSxDQUFDOUIsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUMrSixnQkFBZ0IsQ0FBQ3hKO1FBQ3ZGO1FBQ0F5SixrQkFBa0IsT0FBT3RLO1lBQ3ZCLE9BQU9GLElBQUlLLFlBQVksQ0FBQ29LLFVBQVUsQ0FBQ3pLLEtBQUs7Z0JBQUVFO2dCQUFTdUssWUFBWWxLLElBQUFBLGdCQUFTLEVBQUMsTUFBTVAsSUFBSVEsSUFBSSxDQUFDZ0ssZ0JBQWdCLENBQUN0SztZQUFVO1FBQ3JIO1FBQ0F3SyxtQkFBbUIsT0FBT3hLLFNBQVN3RztZQUNqQyxPQUFPMUcsSUFBSUssWUFBWSxDQUFDb0ssVUFBVSxDQUFDekssS0FBSztnQkFBRUU7Z0JBQVN1SyxZQUFZbEssSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUNrSyxpQkFBaUIsQ0FBQ3hLLFNBQVN3RztZQUFTO1FBQzlIO1FBQ0FpRSxZQUFZLE9BQU9wSDtZQUNqQixPQUFPdkQsSUFBSUssWUFBWSxDQUFDZ0IsT0FBTyxDQUFDckIsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUNtSyxVQUFVLENBQUNwSDtRQUMzRTtRQUNBcUgsaUJBQWlCLE9BQU83SixXQUFXMkYsUUFBUXZHO1lBQ3pDLE9BQU9ILElBQUlLLFlBQVksQ0FBQ2lGLFlBQVksQ0FBQ3RGLEtBQUtPLElBQUFBLGdCQUFTLEVBQUMsTUFBTVAsSUFBSVEsSUFBSSxDQUFDb0ssZUFBZSxDQUFDN0osV0FBVzJGLFFBQVF2RztRQUN4RztRQUNBMEssa0JBQWtCLE9BQU85SixXQUFXWjtZQUNsQyxPQUFPLEFBQUMsQ0FBQSxNQUFNSCxJQUFJUSxJQUFJLENBQUNxSyxnQkFBZ0IsQ0FBQzlKLFdBQVdaLFFBQU8sRUFBRzRELEdBQUcsQ0FBQyxDQUFDa0MsTUFBUWpHLElBQUlLLFlBQVksQ0FBQ2lGLFlBQVksQ0FBQ3RGLEtBQUtPLElBQUFBLGdCQUFTLEVBQUMwRjtRQUN6SDtRQUNBNkUsY0FBYyxPQUFPL0osV0FBV2dDLFdBQVdnSSxVQUFVNUs7WUFDbkQsT0FBTyxBQUFDLENBQUEsTUFBTUgsSUFBSVEsSUFBSSxDQUFDc0ssWUFBWSxDQUFDL0osV0FBV2dDLFdBQVdnSSxVQUFVNUssUUFBTyxFQUFHNEQsR0FBRyxDQUFDLENBQUNrQyxNQUFRakcsSUFBSUssWUFBWSxDQUFDbUMsSUFBSSxDQUFDeEMsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQzBGO1FBQ2xJO1FBQ0ErRSxTQUFTLE9BQU9ySTtZQUNkLE9BQU8zQyxJQUFJSyxZQUFZLENBQUNtQyxJQUFJLENBQUN4QyxLQUFLTyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ3dLLE9BQU8sQ0FBQ3JJO1FBQ3JFO1FBQ0FzSSxnQkFBZ0IsT0FBTzlJO1lBQ3JCLE9BQU9uQyxJQUFJSyxZQUFZLENBQUNtQyxJQUFJLENBQUN4QyxLQUFLTyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ3lLLGNBQWMsQ0FBQzlJO1FBQzVFO1FBQ0ErSSxvQkFBb0IsT0FBTy9JO1lBQ3pCLE9BQU8sTUFBTW5DLElBQUlRLElBQUksQ0FBQzBLLGtCQUFrQixDQUFDL0k7UUFDM0M7UUFDQWdKLGtDQUFrQyxPQUFPaEosYUFBYWlKO1lBQ3BELE9BQU8sTUFBTXBMLElBQUlRLElBQUksQ0FBQzJLLGdDQUFnQyxDQUFDaEosYUFBYWlKO1FBQ3RFO1FBQ0FDLGNBQWMsT0FBT25MO1lBQ25CLE9BQU8sTUFBTUYsSUFBSVEsSUFBSSxDQUFDNkssWUFBWSxDQUFDbkw7UUFDckM7UUFDQW9MLGlCQUFpQixPQUFPcEw7WUFDdEIsT0FBTyxBQUFDLENBQUEsTUFBTUYsSUFBSVEsSUFBSSxDQUFDOEssZUFBZSxDQUFDcEwsUUFBTyxFQUFHNkQsR0FBRyxDQUFDLENBQUNrQyxNQUFRakcsSUFBSUssWUFBWSxDQUFDbUcsV0FBVyxDQUFDeEcsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQzBGO1FBQzVHO1FBQ0FzRixZQUFZLE9BQU9sSDtZQUNqQixPQUFPckUsSUFBSUssWUFBWSxDQUFDMkIsT0FBTyxDQUFDaEMsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUMrSyxVQUFVLENBQUNsSDtRQUMzRTtRQUNBbUgsbUJBQW1CLE9BQU9uSCxXQUFXdkIsT0FBT0MsV0FBVzVDO1lBQ3JELE9BQU9ILElBQUlLLFlBQVksQ0FBQzJDLE9BQU8sQ0FBQ2hELEtBQUs7Z0JBQUVnRCxTQUFTekMsSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUNnTCxpQkFBaUIsQ0FBQ25ILFdBQVd2QixPQUFPQyxXQUFXNUM7Z0JBQVc4QyxTQUFTO1lBQUU7UUFDaEo7UUFDQXdJLHFCQUFxQixPQUFPcEgsV0FBV3ZCO1lBQ3JDLE9BQU85QyxJQUFJSyxZQUFZLENBQUMyQixPQUFPLENBQUNoQyxLQUFLTyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ2lMLG1CQUFtQixDQUFDcEgsV0FBV3ZCO1FBQy9GO1FBQ0E0SSxrQkFBa0IsT0FBT3hMO1lBQ3ZCLE9BQU9GLElBQUlLLFlBQVksQ0FBQ29FLGFBQWEsQ0FBQ3pFLEtBQUtPLElBQUFBLGdCQUFTLEVBQUMsTUFBTVAsSUFBSVEsSUFBSSxDQUFDa0wsZ0JBQWdCLENBQUN4TDtRQUN2RjtRQUNBeUwsV0FBVyxPQUFPekw7WUFDaEIsT0FBT0YsSUFBSUssWUFBWSxDQUFDdUwsTUFBTSxDQUFDNUwsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUNtTCxTQUFTLENBQUN6TDtRQUN6RTtRQUNBMkwsbUJBQW1CLE9BQU8zTDtZQUN4QixPQUFPRixJQUFJSyxZQUFZLENBQUNzRSxjQUFjLENBQUMzRSxLQUFLTyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ3FMLGlCQUFpQixDQUFDM0w7UUFDekY7UUFDQTRMLGdCQUFnQixPQUFPL0ssV0FBV2dDO1lBQ2hDLE9BQU8vQyxJQUFJSyxZQUFZLENBQUMyQyxPQUFPLENBQUNoRCxLQUFLO2dCQUFFZ0QsU0FBU3pDLElBQUFBLGdCQUFTLEVBQUMsTUFBTVAsSUFBSVEsSUFBSSxDQUFDc0wsY0FBYyxDQUFDL0ssV0FBV2dDO2dCQUFhRSxTQUFTO1lBQUU7UUFDN0g7UUFDQThJLGFBQWEsT0FBT2hMLFdBQVdaO1lBQzdCLE9BQU9ILElBQUlLLFlBQVksQ0FBQzJDLE9BQU8sQ0FBQ2hELEtBQUs7Z0JBQUVnRCxTQUFTekMsSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUN1TCxXQUFXLENBQUNoTCxXQUFXWjtnQkFBVzhDLFNBQVM7WUFBRTtRQUN4SDtRQUNBK0kscUJBQXFCLE9BQU9sSixPQUFPM0M7WUFDakMsT0FBT0gsSUFBSUssWUFBWSxDQUFDMkMsT0FBTyxDQUFDaEQsS0FBSztnQkFBRWdELFNBQVN6QyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ3dMLG1CQUFtQixDQUFDbEosT0FBTzNDO2dCQUFXOEMsU0FBUztZQUFFO1FBQzVIO1FBQ0FnSix3QkFBd0IsT0FBT2xMLFdBQVdnQyxXQUFXNUMsU0FBU0M7WUFDNUQsT0FBT0osSUFBSUssWUFBWSxDQUFDSyxPQUFPLENBQUNWLEtBQUs7Z0JBQ25DVSxTQUFTSCxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ3lMLHNCQUFzQixDQUFDbEwsV0FBV2dDLFdBQVc1QyxTQUFTQztZQUMxRjtRQUNGO1FBQ0E4TCwyQkFBMkIsT0FBT25MLFdBQVdaLFNBQVNDO1lBQ3BELE9BQU9KLElBQUlLLFlBQVksQ0FBQ0ssT0FBTyxDQUFDVixLQUFLO2dCQUFFVSxTQUFTSCxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQzBMLHlCQUF5QixDQUFDbkwsV0FBV1osU0FBU0M7WUFBUztRQUNsSTtRQUNBK0wsbUJBQW1CLE9BQU9qTTtZQUN4QixPQUFPRixJQUFJSyxZQUFZLENBQUNrQixRQUFRLENBQUN2QixLQUFLTyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQzJMLGlCQUFpQixDQUFDak07UUFDbkY7UUFDQWtNLGlDQUFpQyxPQUFPQyxVQUFVbE07WUFDaEQsT0FBTyxBQUFDLENBQUEsTUFBTUgsSUFBSVEsSUFBSSxDQUFDNEwsK0JBQStCLENBQUNDLFVBQVVsTSxRQUFPLEVBQUc0RCxHQUFHLENBQUMsQ0FBQ2tDLE1BQzlFakcsSUFBSUssWUFBWSxDQUFDYSxrQkFBa0IsQ0FBQ2xCLEtBQUtPLElBQUFBLGdCQUFTLEVBQUMwRjtRQUV2RDtRQUNBcUcsZ0NBQWdDLE9BQU9wTSxTQUFTbU0sVUFBVWxNO1lBQ3hELE9BQU8sQUFBQyxDQUFBLE1BQU1ILElBQUlRLElBQUksQ0FBQzhMLDhCQUE4QixDQUFDcE0sU0FBU21NLFVBQVVsTSxRQUFPLEVBQUc0RCxHQUFHLENBQUMsQ0FBQ2tDLE1BQ3RGakcsSUFBSUssWUFBWSxDQUFDYSxrQkFBa0IsQ0FBQ2xCLEtBQUtPLElBQUFBLGdCQUFTLEVBQUMwRjtRQUV2RDtRQUNBc0csZUFBZSxPQUFPck0sU0FBU0MsU0FBU0M7WUFDdEMsT0FBT0osSUFBSUssWUFBWSxDQUFDZ0YsTUFBTSxDQUFDckYsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUMrTCxhQUFhLENBQUNyTSxTQUFTQyxTQUFTQyxVQUFVRixTQUFTRixJQUFJMkMsRUFBRTtRQUN4SDtRQUNBNkosWUFBWSxPQUFPdE0sU0FBU3dHLFFBQVF2RyxTQUFTQztZQUMzQyxPQUFPSixJQUFJSyxZQUFZLENBQUNnRixNQUFNLENBQUNyRixLQUFLTyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ2dNLFVBQVUsQ0FBQ3RNLFNBQVN3RyxRQUFRdkcsU0FBU0MsVUFBVUYsU0FBU3dHO1FBQ3ZIO1FBQ0ErRixXQUFXLE9BQU92TSxTQUFTd0c7WUFDekIsT0FBTzFHLElBQUlLLFlBQVksQ0FBQ2dGLE1BQU0sQ0FBQ3JGLEtBQUtPLElBQUFBLGdCQUFTLEVBQUMsTUFBTVAsSUFBSVEsSUFBSSxDQUFDaU0sU0FBUyxDQUFDdk0sU0FBU3dHLFVBQVV4RyxTQUFTd0c7UUFDckc7UUFDQWdHLGtCQUFrQixPQUFPeE0sU0FBU2lDO1lBQ2hDLE1BQU04RCxNQUFNLE1BQU1qRyxJQUFJUSxJQUFJLENBQUNrTSxnQkFBZ0IsQ0FBQ3hNLFNBQVNpQztZQUNyRCxPQUFPbkMsSUFBSUssWUFBWSxDQUFDZ0YsTUFBTSxDQUFDckYsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQzBGLE1BQU0vRixTQUFTRixJQUFJSyxZQUFZLENBQUNnSyxTQUFTLENBQUNwRSxJQUFJekQsSUFBSSxDQUFDRyxFQUFFO1FBQ3JHO1FBQ0FnSyxZQUFZLE9BQU96TSxTQUFTQztZQUMxQixPQUFPLEFBQUMsQ0FBQSxNQUFNSCxJQUFJUSxJQUFJLENBQUNtTSxVQUFVLENBQUN6TSxTQUFTQyxRQUFPLEVBQUc0RCxHQUFHLENBQUMsQ0FBQ2tDLE1BQ3hEakcsSUFBSUssWUFBWSxDQUFDZ0YsTUFBTSxDQUFDckYsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQzBGLE1BQU0vRixTQUFTRixJQUFJSyxZQUFZLENBQUNnSyxTQUFTLENBQUNwRSxJQUFJekQsSUFBSSxDQUFDRyxFQUFFO1FBRWhHO1FBQ0FpSyxjQUFjLE9BQU8xTSxTQUFTQyxTQUFTQztZQUNyQyxPQUFPLE1BQU1KLElBQUlRLElBQUksQ0FBQ29NLFlBQVksQ0FBQzFNLFNBQVNDLFNBQVNDO1FBQ3ZEO1FBQ0F5TSxlQUFlLE9BQU8zTSxTQUFTNE0sT0FBTzNNO1lBQ3BDLE9BQU8sQUFBQyxDQUFBLE1BQU1ILElBQUlRLElBQUksQ0FBQ3FNLGFBQWEsQ0FBQzNNLFNBQVM0TSxPQUFPM00sUUFBTyxFQUFHNEQsR0FBRyxDQUFDLENBQUNrQyxNQUNsRWpHLElBQUlLLFlBQVksQ0FBQ2dGLE1BQU0sQ0FBQ3JGLEtBQUtPLElBQUFBLGdCQUFTLEVBQUMwRixNQUFNL0YsU0FBU0YsSUFBSUssWUFBWSxDQUFDZ0ssU0FBUyxDQUFDcEUsSUFBSXpELElBQUksQ0FBQ0csRUFBRTtRQUVoRztRQUNBb0ssZ0JBQWdCLE9BQU83TSxTQUFTQyxTQUFTQztZQUN2QyxNQUFNNkYsTUFBTSxNQUFNakcsSUFBSVEsSUFBSSxDQUFDdU0sY0FBYyxDQUFDN00sU0FBU0MsU0FBU0M7WUFFNUQsT0FBTztnQkFDTDRNLGFBQWEvRyxJQUFJK0csV0FBVyxDQUFDakosR0FBRyxDQUFDLENBQUNrSixJQUFNak4sSUFBSUssWUFBWSxDQUFDZ0ssU0FBUyxDQUFDNEM7Z0JBQ25FQyxhQUFhakgsSUFBSWlILFdBQVcsQ0FBQ25KLEdBQUcsQ0FBQyxDQUFDa0osSUFBTWpOLElBQUlLLFlBQVksQ0FBQ2dLLFNBQVMsQ0FBQzRDO1lBQ3JFO1FBQ0Y7UUFDQUUsZ0NBQWdDLE9BQU8vQixlQUFlZ0M7WUFDcEQsT0FBTyxNQUFNcE4sSUFBSVEsSUFBSSxDQUFDMk0sOEJBQThCLENBQUMvQixlQUFlZ0M7UUFDdEU7UUFDQUMsK0NBQStDLE9BQU9qQztZQUNwRCxPQUFPLE1BQU1wTCxJQUFJUSxJQUFJLENBQUM2TSw2Q0FBNkMsQ0FBQ2pDO1FBQ3RFO1FBQ0FrQyxpREFBaUQsT0FBT2xDLGVBQWVqTDtZQUNyRSxPQUFPLE1BQU1ILElBQUlRLElBQUksQ0FBQzhNLCtDQUErQyxDQUFDbEMsZUFBZWpMO1FBQ3ZGO1FBQ0FvTixhQUFhLE9BQU9wTjtZQUNsQixPQUFPSCxJQUFJSyxZQUFZLENBQUNtTixLQUFLLENBQUN4TixLQUFLTyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQytNLFdBQVcsQ0FBQ3BOO1FBQzFFO1FBQ0FzTixVQUFVLE9BQU9DO1lBQ2YsT0FBTzFOLElBQUlLLFlBQVksQ0FBQ21OLEtBQUssQ0FBQ3hOLEtBQUtPLElBQUFBLGdCQUFTLEVBQUMsTUFBTVAsSUFBSVEsSUFBSSxDQUFDaU4sUUFBUSxDQUFDQztRQUN2RTtRQUNBQyxhQUFhLE9BQU9ELFNBQVN2TjtZQUMzQixPQUFPSCxJQUFJSyxZQUFZLENBQUNtTixLQUFLLENBQUN4TixLQUFLTyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ21OLFdBQVcsQ0FBQ0QsU0FBU3ZOO1FBQ25GO1FBQ0F5TixrQkFBa0IsT0FBT0YsU0FBU2hILFFBQVF2RztZQUN4QyxPQUFPSCxJQUFJSyxZQUFZLENBQUN3TixXQUFXLENBQUM3TixLQUFLTyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ29OLGdCQUFnQixDQUFDRixTQUFTaEgsUUFBUXZHO1FBQ3RHO1FBQ0EyTixvQkFBb0IsT0FBT0osU0FBU3ZMLGFBQWFoQztZQUMvQyxPQUFPSCxJQUFJSyxZQUFZLENBQUNtTixLQUFLLENBQUN4TixLQUFLTyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ3NOLGtCQUFrQixDQUFDSixTQUFTdkwsYUFBYWhDO1FBQ3ZHO1FBQ0E0TixzQkFBc0IsT0FBT0wsU0FBU3ZMO1lBQ3BDLE9BQU9uQyxJQUFJSyxZQUFZLENBQUNtTixLQUFLLENBQUN4TixLQUFLTyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ3VOLG9CQUFvQixDQUFDTCxTQUFTdkw7UUFDNUY7UUFDQSx5Q0FBeUM7UUFDekM2TCxhQUFhLE9BQU9qTixXQUFXZ0MsV0FBV2dJO1lBQ3hDLE9BQU8sTUFBTS9LLElBQUlRLElBQUksQ0FBQ3dOLFdBQVcsQ0FBQ2pOLFdBQVdnQyxXQUFXZ0k7UUFDMUQ7UUFDQWtELGNBQWMsT0FBT2xOLFdBQVdnQyxXQUFXbUwsV0FBV0M7WUFDcEQsT0FBTyxNQUFNbk8sSUFBSVEsSUFBSSxDQUFDeU4sWUFBWSxDQUFDbE4sV0FBV2dDLFdBQVdtTCxXQUFXQztRQUN0RTtRQUNBQyxTQUFTLE9BQU9sTyxTQUFTd0csUUFBUTdDLFFBQVF6RDtZQUN2QyxPQUFPLE1BQU1KLElBQUlRLElBQUksQ0FBQzROLE9BQU8sQ0FBQ2xPLFNBQVN3RyxRQUFRN0MsUUFBUXpEO1FBQ3pEO1FBQ0FpTyxpQkFBaUIsT0FBT3ROLFdBQVcyRjtZQUNqQyxPQUFPLE1BQU0xRyxJQUFJUSxJQUFJLENBQUM2TixlQUFlLENBQUN0TixXQUFXMkY7UUFDbkQ7UUFDQTRILGdCQUFnQixPQUFPdk4sV0FBVzJGLFFBQVF2RztZQUN4QyxPQUFPLE1BQU1ILElBQUlRLElBQUksQ0FBQzhOLGNBQWMsQ0FBQ3ZOLFdBQVcyRixRQUFRdkc7UUFDMUQ7UUFDQW9PLGdCQUFnQixPQUFPck8sU0FBU3dHLFFBQVF2RztZQUN0QyxPQUFPLE1BQU1ILElBQUlRLElBQUksQ0FBQytOLGNBQWMsQ0FBQ3JPLFNBQVN3RyxRQUFRdkc7UUFDeEQ7UUFDQXFPLG1CQUFtQixPQUFPdE8sU0FBU29DLFFBQVFsQztZQUN6QyxPQUFPLE1BQU1KLElBQUlRLElBQUksQ0FBQ2dPLGlCQUFpQixDQUFDdE8sU0FBU29DLFFBQVFsQztRQUMzRDtRQUNBcU8sZUFBZSxPQUFPMU4sV0FBV1g7WUFDL0IsT0FBTyxNQUFNSixJQUFJUSxJQUFJLENBQUNpTyxhQUFhLENBQUMxTixXQUFXWDtRQUNqRDtRQUNBc08saUNBQWlDLE9BQU8zTixXQUFXNE4sYUFBYXZPO1lBQzlELE9BQU8sTUFBTUosSUFBSVEsSUFBSSxDQUFDa08sK0JBQStCLENBQUMzTixXQUFXNE4sYUFBYXZPO1FBQ2hGO1FBQ0F3TyxhQUFhLE9BQU8xTyxTQUFTeUMsSUFBSXZDO1lBQy9CLE9BQU8sTUFBTUosSUFBSVEsSUFBSSxDQUFDb08sV0FBVyxDQUFDMU8sU0FBU3lDLElBQUl2QztRQUNqRDtRQUNBeU8sd0JBQXdCLE9BQU9sTTtZQUM3QixPQUFPLE1BQU0zQyxJQUFJUSxJQUFJLENBQUNxTyxzQkFBc0IsQ0FBQ2xNO1FBQy9DO1FBQ0FtTSx1QkFBdUIsT0FBT2hNLE9BQU9DO1lBQ25DLE9BQU8sTUFBTS9DLElBQUlRLElBQUksQ0FBQ3NPLHFCQUFxQixDQUFDaE0sT0FBT0M7UUFDckQ7UUFDQWdNLGdDQUFnQyxPQUFPN007WUFDckMsT0FBTyxNQUFNbEMsSUFBSVEsSUFBSSxDQUFDdU8sOEJBQThCLENBQUM3TTtRQUN2RDtRQUNBOE0sK0JBQStCLE9BQU85TSxXQUFXaEM7WUFDL0MsT0FBTyxNQUFNRixJQUFJUSxJQUFJLENBQUN3Tyw2QkFBNkIsQ0FBQzlNLFdBQVdoQztRQUNqRTtRQUNBK08sb0JBQW9CLE9BQU8vTyxTQUFTcUQsV0FBV25EO1lBQzdDLE9BQU8sTUFBTUosSUFBSVEsSUFBSSxDQUFDeU8sa0JBQWtCLENBQUMvTyxTQUFTcUQsV0FBV25EO1FBQy9EO1FBQ0E4TyxxQkFBcUIsT0FBT2hQLFNBQVN1RDtZQUNuQyxPQUFPLE1BQU16RCxJQUFJUSxJQUFJLENBQUMwTyxtQkFBbUIsQ0FBQ2hQLFNBQVN1RDtRQUNyRDtRQUNBMEwsbUJBQW1CLE9BQU9qUCxTQUFTa1AsZUFBZWhQO1lBQ2hELE9BQU8sTUFBTUosSUFBSVEsSUFBSSxDQUFDMk8saUJBQWlCLENBQUNqUCxTQUFTa1AsZUFBZWhQO1FBQ2xFO1FBQ0FpUCxjQUFjLE9BQU96RyxZQUFZeEk7WUFDL0IsT0FBTyxNQUFNSixJQUFJUSxJQUFJLENBQUM2TyxZQUFZLENBQUN6RyxZQUFZeEk7UUFDakQ7UUFDQWtQLGVBQWUsT0FBT3ZPLFdBQVdnQyxXQUFXM0M7WUFDMUMsT0FBTyxNQUFNSixJQUFJUSxJQUFJLENBQUM4TyxhQUFhLENBQUN2TyxXQUFXZ0MsV0FBVzNDO1FBQzVEO1FBQ0FtUCxnQkFBZ0IsT0FBT3hPLFdBQVd5TyxZQUFZcFA7WUFDNUMsT0FBTyxNQUFNSixJQUFJUSxJQUFJLENBQUMrTyxjQUFjLENBQUN4TyxXQUFXeU8sWUFBWXBQO1FBQzlEO1FBQ0FxUCxtQ0FBbUMsT0FBTzNNO1lBQ3hDLE9BQU8sTUFBTTlDLElBQUlRLElBQUksQ0FBQ2lQLGlDQUFpQyxDQUFDM007UUFDMUQ7UUFDQTRNLG1CQUFtQixPQUFPM08sV0FBV2dDLFdBQVdnSTtZQUM5QyxPQUFPLE1BQU0vSyxJQUFJUSxJQUFJLENBQUNrUCxpQkFBaUIsQ0FBQzNPLFdBQVdnQyxXQUFXZ0k7UUFDaEU7UUFDQTRFLG9CQUFvQixPQUFPNU8sV0FBV2dDO1lBQ3BDLE9BQU8sTUFBTS9DLElBQUlRLElBQUksQ0FBQ21QLGtCQUFrQixDQUFDNU8sV0FBV2dDO1FBQ3REO1FBQ0E2TSxzQkFBc0IsT0FBTzdPLFdBQVdnQyxXQUFXZ0k7WUFDakQsT0FBTyxNQUFNL0ssSUFBSVEsSUFBSSxDQUFDb1Asb0JBQW9CLENBQUM3TyxXQUFXZ0MsV0FBV2dJO1FBQ25FO1FBQ0E4RSxZQUFZLE9BQU8zUCxTQUFTMkQsUUFBUXpEO1lBQ2xDLE9BQU8sTUFBTUosSUFBSVEsSUFBSSxDQUFDcVAsVUFBVSxDQUFDM1AsU0FBUzJELFFBQVF6RDtRQUNwRDtRQUNBMFAsc0JBQXNCLE9BQU81UCxTQUFTK0Q7WUFDcEMsT0FBTyxNQUFNakUsSUFBSVEsSUFBSSxDQUFDc1Asb0JBQW9CLENBQUM1UCxTQUFTK0Q7UUFDdEQ7UUFDQThMLHFCQUFxQixPQUFPaFAsV0FBV1g7WUFDckMsT0FBTyxNQUFNSixJQUFJUSxJQUFJLENBQUN1UCxtQkFBbUIsQ0FBQ2hQLFdBQVdYO1FBQ3ZEO1FBQ0E0UCxvQkFBb0IsT0FBT2pQLFdBQVdnQyxXQUFXMkQsUUFBUXFFO1lBQ3ZELE9BQU8sTUFBTS9LLElBQUlRLElBQUksQ0FBQ3dQLGtCQUFrQixDQUFDalAsV0FBV2dDLFdBQVcyRCxRQUFRcUU7UUFDekU7UUFDQWtGLGVBQWUsT0FBTzVMLFdBQVdqRTtZQUMvQixPQUFPLE1BQU1KLElBQUlRLElBQUksQ0FBQ3lQLGFBQWEsQ0FBQzVMLFdBQVdqRTtRQUNqRDtRQUNBOFAsc0JBQXNCLE9BQU83TCxXQUFXdkIsT0FBT0MsV0FBVzVDO1lBQ3hELE9BQU8sTUFBTUgsSUFBSVEsSUFBSSxDQUFDMFAsb0JBQW9CLENBQUM3TCxXQUFXdkIsT0FBT0MsV0FBVzVDO1FBQzFFO1FBQ0FnUSx3QkFBd0IsT0FBTzlMLFdBQVd2QjtZQUN4QyxPQUFPLE1BQU05QyxJQUFJUSxJQUFJLENBQUMyUCxzQkFBc0IsQ0FBQzlMLFdBQVd2QjtRQUMxRDtRQUNBc04sZ0NBQWdDLE9BQU9yUCxXQUFXWixTQUFTQztZQUN6RCxPQUFPLE1BQU1KLElBQUlRLElBQUksQ0FBQzRQLDhCQUE4QixDQUFDclAsV0FBV1osU0FBU0M7UUFDM0U7UUFDQWlRLHNCQUFzQixPQUFPblEsU0FBU29RO1lBQ3BDLE9BQU8sTUFBTXRRLElBQUlRLElBQUksQ0FBQzZQLG9CQUFvQixDQUFDblEsU0FBU29RO1FBQ3REO1FBQ0FDLG1CQUFtQixPQUFPclEsU0FBU0M7WUFDakMsT0FBTyxNQUFNSCxJQUFJUSxJQUFJLENBQUMrUCxpQkFBaUIsQ0FBQ3JRLFNBQVNDO1FBQ25EO1FBQ0FxUSxvQkFBb0IsT0FBT3RRLFNBQVNDO1lBQ2xDLE9BQU8sTUFBTUgsSUFBSVEsSUFBSSxDQUFDZ1Esa0JBQWtCLENBQUN0USxTQUFTQztRQUNwRDtRQUNBc1EsbUNBQW1DLE9BQU90TyxhQUFhaUosZUFBZWpMO1lBQ3BFLE9BQU8sTUFBTUgsSUFBSVEsSUFBSSxDQUFDaVEsaUNBQWlDLENBQUN0TyxhQUFhaUosZUFBZWpMO1FBQ3RGO1FBQ0F1USxZQUFZLE9BQU8zUDtZQUNqQixPQUFPLE1BQU1mLElBQUlRLElBQUksQ0FBQ2tRLFVBQVUsQ0FBQzNQO1FBQ25DO1FBQ0E0UCxZQUFZLE9BQU96UTtZQUNqQixPQUFPLE1BQU1GLElBQUlRLElBQUksQ0FBQ21RLFVBQVUsQ0FBQ3pRO1FBQ25DO1FBQ0EwUSxhQUFhLE9BQU83UDtZQUNsQixPQUFPLE1BQU1mLElBQUlRLElBQUksQ0FBQ29RLFdBQVcsQ0FBQzdQO1FBQ3BDO1FBQ0E4UCxZQUFZLE9BQU8zUSxTQUFTd0csUUFBUTdDLFFBQVF6RDtZQUMxQyxPQUFPLE1BQU1KLElBQUlRLElBQUksQ0FBQ3FRLFVBQVUsQ0FBQzNRLFNBQVN3RyxRQUFRN0MsUUFBUXpEO1FBQzVEO1FBQ0EwUSxvQkFBb0IsT0FBTy9QLFdBQVcyRjtZQUNwQyxPQUFPLE1BQU0xRyxJQUFJUSxJQUFJLENBQUNzUSxrQkFBa0IsQ0FBQy9QLFdBQVcyRjtRQUN0RDtRQUNBcUssbUJBQW1CLE9BQU9oUSxXQUFXMkY7WUFDbkMsT0FBTyxNQUFNMUcsSUFBSVEsSUFBSSxDQUFDdVEsaUJBQWlCLENBQUNoUSxXQUFXMkY7UUFDckQ7UUFDQXNLLHlCQUF5QixPQUFPQyxlQUFlbk8sT0FBTzNDLFNBQVMrUTtZQUM3RCxNQUFNQyxXQUFXLE1BQU1uUixJQUFJUSxJQUFJLENBQUN3USx1QkFBdUIsQ0FBQ0MsZUFBZW5PLE9BQU8zQyxTQUFTK1E7WUFFdkYsSUFBSSxDQUFDQyxVQUFVO1lBRWYsT0FBT25SLElBQUlLLFlBQVksQ0FBQytRLDJCQUEyQixDQUFDcFIsS0FBSztnQkFBRW9SLDZCQUE2QjdRLElBQUFBLGdCQUFTLEVBQUM0UTtnQkFBV2xPLFNBQVM7WUFBRTtRQUMxSDtRQUNBb08sd0JBQXdCLE9BQU90UTtZQUM3QixPQUFPLE1BQU1mLElBQUlRLElBQUksQ0FBQzZRLHNCQUFzQixDQUFDdFE7UUFDL0M7UUFDQXVRLFdBQVcsT0FBT3BSLFNBQVN3RyxRQUFRdkcsU0FBU0M7WUFDMUMsT0FBTyxNQUFNSixJQUFJUSxJQUFJLENBQUM4USxTQUFTLENBQUNwUixTQUFTd0csUUFBUXZHLFNBQVNDO1FBQzVEO1FBRUFtUixZQUFZLE9BQU9yUixTQUFTd0csUUFBUXRHO1lBQ2xDLE9BQU8sTUFBTUosSUFBSVEsSUFBSSxDQUFDK1EsVUFBVSxDQUFDclIsU0FBU3dHLFFBQVF0RztRQUNwRDtRQUNBb1IsWUFBWSxPQUFPelEsV0FBV2dDLFdBQVczQztZQUN2QyxPQUFPLE1BQU1KLElBQUlRLElBQUksQ0FBQ2dSLFVBQVUsQ0FBQ3pRLFdBQVdnQyxXQUFXM0M7UUFDekQ7UUFDQXFSLGFBQWEsT0FBT3ZSLFNBQVN3RyxRQUFRdEc7WUFDbkMsT0FBTyxNQUFNSixJQUFJUSxJQUFJLENBQUNpUixXQUFXLENBQUN2UixTQUFTd0csUUFBUXRHO1FBQ3JEO1FBQ0FzUixjQUFjLE9BQU8zUSxXQUFXZ0MsV0FBVzNDO1lBQ3pDLE9BQU8sTUFBTUosSUFBSVEsSUFBSSxDQUFDa1IsWUFBWSxDQUFDM1EsV0FBV2dDLFdBQVczQztRQUMzRDtRQUNBdVIsb0JBQW9CLE9BQU96UjtZQUN6QixPQUFPRixJQUFJSyxZQUFZLENBQUN1UixlQUFlLENBQUM1UixLQUFLTyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ21SLGtCQUFrQixDQUFDelI7UUFDM0Y7UUFDQTJSLHFCQUFxQixPQUFPM1IsU0FBU0MsU0FBU0M7WUFDNUMsT0FBT0osSUFBSUssWUFBWSxDQUFDdVIsZUFBZSxDQUFDNVIsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUNxUixtQkFBbUIsQ0FBQzNSLFNBQVNDLFNBQVNDO1FBQzlHO1FBQ0EwUixrQkFBa0IsT0FBTzFHLGVBQWVqTDtZQUN0QyxPQUFPLEFBQUMsQ0FBQSxNQUFNSCxJQUFJUSxJQUFJLENBQUNzUixnQkFBZ0IsQ0FBQzFHLGVBQWVqTCxRQUFPLEVBQUc0RCxHQUFHLENBQUMsQ0FBQ2dPLGNBQWdCL1IsSUFBSUssWUFBWSxDQUFDMFIsV0FBVyxDQUFDL1IsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQ3dSO1FBQ3BJO1FBQ0FDLGdCQUFnQixPQUFPNUcsZUFBZTZHO1lBQ3BDLE9BQU9qUyxJQUFJSyxZQUFZLENBQUMwUixXQUFXLENBQUMvUixLQUFLTyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQ3dSLGNBQWMsQ0FBQzVHLGVBQWU2RztRQUNsRztRQUNBQyx1QkFBdUIsT0FBTzlHLGVBQWUxRjtZQUMzQyw0RkFBNEY7WUFDNUYsT0FBTzFGLElBQUlLLFlBQVksQ0FBQzBSLFdBQVcsQ0FBQy9SLEtBQUtPLElBQUFBLGdCQUFTLEVBQUMsTUFBTVAsSUFBSVEsSUFBSSxDQUFDMFIscUJBQXFCLENBQUM5RyxlQUFlMUY7UUFHekc7UUFDQXlNLHVCQUF1QixPQUFPL0csZUFBZTZHO1lBQzNDLE1BQU1qUyxJQUFJUSxJQUFJLENBQUMyUixxQkFBcUIsQ0FBQy9HLGVBQWU2RztRQUN0RDtRQUNBRyxVQUFVLE9BQU9oSDtZQUNmLE9BQU8sQUFBQyxDQUFBLE1BQU1wTCxJQUFJUSxJQUFJLENBQUM0UixRQUFRLENBQUNoSCxjQUFhLEVBQUdySCxHQUFHLENBQUMsQ0FBQ3NPLE1BQVFyUyxJQUFJSyxZQUFZLENBQUNnUyxHQUFHLENBQUNyUyxLQUFLTyxJQUFBQSxnQkFBUyxFQUFDOFI7UUFDbkc7UUFDQUMsaUJBQWlCLE9BQU9DLE9BQU9DO1lBQzdCLE9BQU94UyxJQUFJSyxZQUFZLENBQUNvUyxZQUFZLENBQUN6UyxLQUFLTyxJQUFBQSxnQkFBUyxFQUFDLE1BQU1QLElBQUlRLElBQUksQ0FBQzhSLGVBQWUsQ0FBQ0MsT0FBT0M7UUFDNUY7UUFDQUUsbUJBQW1CLE9BQU9ILE9BQU9wUztZQUMvQixPQUFPLEFBQUMsQ0FBQSxNQUFNSCxJQUFJUSxJQUFJLENBQUNrUyxpQkFBaUIsQ0FBQ0gsT0FBT3BTLFFBQU8sRUFBRzRELEdBQUcsQ0FBQyxDQUFDME8sZUFBaUJ6UyxJQUFJSyxZQUFZLENBQUNvUyxZQUFZLENBQUN6UyxLQUFLTyxJQUFBQSxnQkFBUyxFQUFDa1M7UUFDL0g7UUFDQUUscUJBQXFCLE9BQU81UixXQUFXWjtZQUNyQyxNQUFNSCxJQUFJUSxJQUFJLENBQUNtUyxtQkFBbUIsQ0FBQzVSLFdBQVdaO1FBQ2hEO1FBQ0F5Uyw2QkFBNkI7WUFDM0IsT0FBTyxBQUFDLENBQUEsTUFBTTVTLElBQUlRLElBQUksQ0FBQ29TLDJCQUEyQixFQUFDLEVBQUc3TyxHQUFHLENBQUMsQ0FBQzhPLFFBQVU3UyxJQUFJSyxZQUFZLENBQUN5UyxlQUFlLENBQUM5UyxLQUFLTyxJQUFBQSxnQkFBUyxFQUFDc1M7UUFDdkg7UUFDQUUsMkJBQTJCLE9BQU83UztZQUNoQyxNQUFNK0YsTUFBTSxNQUFNakcsSUFBSVEsSUFBSSxDQUFDdVMseUJBQXlCLENBQUM3UztZQUVyRCxPQUFPO2dCQUNMcUgsT0FBT3RCLElBQUlzQixLQUFLLENBQUN4RCxHQUFHLENBQUMsQ0FBQzhPLFFBQVU3UyxJQUFJSyxZQUFZLENBQUN5UyxlQUFlLENBQUM5UyxLQUFLTyxJQUFBQSxnQkFBUyxFQUFDc1M7WUFDbEY7UUFDRjtRQUNBRyx5QkFBeUIsT0FBTzlTLFNBQVMrUztZQUN2QyxPQUFPalQsSUFBSUssWUFBWSxDQUFDeVMsZUFBZSxDQUFDOVMsS0FBS08sSUFBQUEsZ0JBQVMsRUFBQyxNQUFNUCxJQUFJUSxJQUFJLENBQUN3Uyx1QkFBdUIsQ0FBQzlTLFNBQVMrUztRQUN6RztRQUNBQyw0QkFBNEIsT0FBT2hULFNBQVNDLFNBQVNDO1lBQ25ELE9BQU9KLElBQUlLLFlBQVksQ0FBQ3lTLGVBQWUsQ0FBQzlTLEtBQUtPLElBQUFBLGdCQUFTLEVBQUMsTUFBTVAsSUFBSVEsSUFBSSxDQUFDMFMsMEJBQTBCLENBQUNoVCxTQUFTQyxTQUFTQztRQUNySDtRQUNBK1MsNEJBQTRCLE9BQU9qVCxTQUFTK1MsU0FBUzlTLFNBQVNDO1lBQzVELE9BQU9KLElBQUlLLFlBQVksQ0FBQ3lTLGVBQWUsQ0FBQzlTLEtBQUtPLElBQUFBLGdCQUFTLEVBQUMsTUFBTVAsSUFBSVEsSUFBSSxDQUFDMlMsMEJBQTBCLENBQUNqVCxTQUFTK1MsU0FBUzlTLFNBQVNDO1FBQzlIO1FBQ0FnVCw0QkFBNEIsT0FBT2xULFNBQVMrUyxTQUFTN1M7WUFDbkQsTUFBTUosSUFBSVEsSUFBSSxDQUFDNFMsMEJBQTBCLENBQUNsVCxTQUFTK1MsU0FBUzdTO1FBQzlEO1FBQ0FpVCxhQUFhLE9BQU8zRjtZQUNsQixNQUFNMU4sSUFBSVEsSUFBSSxDQUFDNlMsV0FBVyxDQUFDM0Y7UUFDN0I7UUFDQTRGLHVCQUF1QixPQUFPNUYsU0FBU2hIO1lBQ3JDLE1BQU0xRyxJQUFJUSxJQUFJLENBQUM4UyxxQkFBcUIsQ0FBQzVGLFNBQVNoSDtRQUNoRDtRQUNBNk0sWUFBWSxPQUFPN0YsU0FBU3ZMO1lBQzFCLE1BQU1uQyxJQUFJUSxJQUFJLENBQUMrUyxVQUFVLENBQUM3RixTQUFTdkw7UUFDckM7SUFDRjtBQUNGIn0=
|