@discordeno/bot 22.0.1-next.ea88819 → 22.0.1-next.eb4cdaa
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 +4 -4
- package/dist/bot.d.ts.map +1 -1
- package/dist/bot.js +2 -3
- package/dist/commandOptionsParser.d.ts +2 -2
- package/dist/commandOptionsParser.d.ts.map +1 -1
- package/dist/commandOptionsParser.js +1 -1
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +1 -1
- package/dist/desiredProperties.d.ts +114 -87
- package/dist/desiredProperties.d.ts.map +1 -1
- package/dist/desiredProperties.js +289 -2
- package/dist/events.d.ts +10 -11
- package/dist/events.d.ts.map +1 -1
- package/dist/events.js +1 -1
- package/dist/handlers/channels/CHANNEL_CREATE.d.ts.map +1 -1
- package/dist/handlers/channels/CHANNEL_CREATE.js +1 -1
- package/dist/handlers/channels/CHANNEL_DELETE.d.ts.map +1 -1
- package/dist/handlers/channels/CHANNEL_DELETE.js +1 -1
- package/dist/handlers/channels/CHANNEL_PINS_UPDATE.d.ts.map +1 -1
- package/dist/handlers/channels/CHANNEL_PINS_UPDATE.js +1 -1
- package/dist/handlers/channels/CHANNEL_UPDATE.d.ts.map +1 -1
- package/dist/handlers/channels/CHANNEL_UPDATE.js +1 -1
- package/dist/handlers/channels/STAGE_INSTANCE_CREATE.d.ts.map +1 -1
- package/dist/handlers/channels/STAGE_INSTANCE_CREATE.js +1 -1
- package/dist/handlers/channels/STAGE_INSTANCE_DELETE.d.ts.map +1 -1
- package/dist/handlers/channels/STAGE_INSTANCE_DELETE.js +1 -1
- package/dist/handlers/channels/STAGE_INSTANCE_UPDATE.d.ts.map +1 -1
- package/dist/handlers/channels/STAGE_INSTANCE_UPDATE.js +1 -1
- package/dist/handlers/channels/THREAD_CREATE.d.ts.map +1 -1
- package/dist/handlers/channels/THREAD_CREATE.js +1 -1
- package/dist/handlers/channels/THREAD_DELETE.d.ts.map +1 -1
- package/dist/handlers/channels/THREAD_DELETE.js +1 -1
- package/dist/handlers/channels/THREAD_LIST_SYNC.d.ts.map +1 -1
- package/dist/handlers/channels/THREAD_LIST_SYNC.js +1 -1
- package/dist/handlers/channels/THREAD_MEMBERS_UPDATE.d.ts.map +1 -1
- package/dist/handlers/channels/THREAD_MEMBERS_UPDATE.js +2 -2
- package/dist/handlers/channels/THREAD_MEMBER_UPDATE.d.ts.map +1 -1
- package/dist/handlers/channels/THREAD_MEMBER_UPDATE.js +1 -1
- package/dist/handlers/channels/THREAD_UPDATE.d.ts.map +1 -1
- package/dist/handlers/channels/THREAD_UPDATE.js +1 -1
- package/dist/handlers/channels/index.d.ts.map +1 -1
- package/dist/handlers/channels/index.js +1 -1
- package/dist/handlers/emojis/GUILD_EMOJIS_UPDATE.d.ts.map +1 -1
- package/dist/handlers/emojis/GUILD_EMOJIS_UPDATE.js +1 -1
- package/dist/handlers/emojis/index.d.ts.map +1 -1
- package/dist/handlers/emojis/index.js +1 -1
- package/dist/handlers/entitlements/ENTITLEMENT_CREATE.d.ts.map +1 -1
- package/dist/handlers/entitlements/ENTITLEMENT_CREATE.js +1 -1
- package/dist/handlers/entitlements/ENTITLEMENT_DELETE.d.ts.map +1 -1
- package/dist/handlers/entitlements/ENTITLEMENT_DELETE.js +1 -1
- package/dist/handlers/entitlements/ENTITLEMENT_UPDATE.d.ts.map +1 -1
- package/dist/handlers/entitlements/ENTITLEMENT_UPDATE.js +1 -1
- package/dist/handlers/entitlements/index.d.ts.map +1 -1
- package/dist/handlers/entitlements/index.js +1 -1
- package/dist/handlers/guilds/GUILD_AUDIT_LOG_ENTRY_CREATE.d.ts.map +1 -1
- package/dist/handlers/guilds/GUILD_AUDIT_LOG_ENTRY_CREATE.js +1 -1
- package/dist/handlers/guilds/GUILD_BAN_ADD.d.ts.map +1 -1
- package/dist/handlers/guilds/GUILD_BAN_ADD.js +1 -1
- package/dist/handlers/guilds/GUILD_BAN_REMOVE.d.ts.map +1 -1
- package/dist/handlers/guilds/GUILD_BAN_REMOVE.js +1 -1
- package/dist/handlers/guilds/GUILD_CREATE.d.ts.map +1 -1
- package/dist/handlers/guilds/GUILD_CREATE.js +1 -1
- package/dist/handlers/guilds/GUILD_DELETE.d.ts.map +1 -1
- package/dist/handlers/guilds/GUILD_DELETE.js +1 -1
- package/dist/handlers/guilds/GUILD_INTEGRATIONS_UPDATE.d.ts.map +1 -1
- package/dist/handlers/guilds/GUILD_INTEGRATIONS_UPDATE.js +1 -1
- package/dist/handlers/guilds/GUILD_STICKERS_UPDATE.d.ts.map +1 -1
- package/dist/handlers/guilds/GUILD_STICKERS_UPDATE.js +1 -1
- package/dist/handlers/guilds/GUILD_UPDATE.d.ts.map +1 -1
- package/dist/handlers/guilds/GUILD_UPDATE.js +1 -1
- package/dist/handlers/guilds/automod/AUTO_MODERATION_ACTION_EXECUTION.d.ts.map +1 -1
- package/dist/handlers/guilds/automod/AUTO_MODERATION_ACTION_EXECUTION.js +1 -1
- package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_CREATE.d.ts.map +1 -1
- package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_CREATE.js +1 -1
- package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_DELETE.d.ts.map +1 -1
- package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_DELETE.js +1 -1
- package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_UPDATE.d.ts.map +1 -1
- package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_UPDATE.js +1 -1
- package/dist/handlers/guilds/automod/index.d.ts.map +1 -1
- package/dist/handlers/guilds/automod/index.js +1 -1
- package/dist/handlers/guilds/index.d.ts.map +1 -1
- package/dist/handlers/guilds/index.js +1 -1
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_CREATE.d.ts.map +1 -1
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_CREATE.js +1 -1
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_DELETE.d.ts.map +1 -1
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_DELETE.js +1 -1
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_UPDATE.d.ts.map +1 -1
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_UPDATE.js +1 -1
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_ADD.d.ts.map +1 -1
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_ADD.js +1 -1
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_REMOVE.d.ts.map +1 -1
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_REMOVE.js +1 -1
- package/dist/handlers/guilds/scheduledEvents/index.d.ts.map +1 -1
- package/dist/handlers/guilds/scheduledEvents/index.js +1 -1
- package/dist/handlers/index.d.ts.map +1 -1
- package/dist/handlers/index.js +1 -1
- package/dist/handlers/integrations/INTEGRATION_CREATE.d.ts.map +1 -1
- package/dist/handlers/integrations/INTEGRATION_CREATE.js +1 -1
- package/dist/handlers/integrations/INTEGRATION_DELETE.d.ts.map +1 -1
- package/dist/handlers/integrations/INTEGRATION_DELETE.js +1 -1
- package/dist/handlers/integrations/INTEGRATION_UPDATE.d.ts.map +1 -1
- package/dist/handlers/integrations/INTEGRATION_UPDATE.js +1 -1
- package/dist/handlers/integrations/index.d.ts.map +1 -1
- package/dist/handlers/integrations/index.js +1 -1
- package/dist/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.d.ts.map +1 -1
- package/dist/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.js +1 -1
- package/dist/handlers/interactions/INTERACTION_CREATE.d.ts.map +1 -1
- package/dist/handlers/interactions/INTERACTION_CREATE.js +1 -1
- package/dist/handlers/interactions/index.d.ts.map +1 -1
- package/dist/handlers/interactions/index.js +1 -1
- package/dist/handlers/invites/INVITE_CREATE.d.ts.map +1 -1
- package/dist/handlers/invites/INVITE_CREATE.js +2 -1
- package/dist/handlers/invites/INVITE_DELETE.d.ts.map +1 -1
- package/dist/handlers/invites/INVITE_DELETE.js +1 -1
- package/dist/handlers/invites/index.d.ts.map +1 -1
- package/dist/handlers/invites/index.js +1 -1
- package/dist/handlers/members/GUILD_MEMBERS_CHUNK.d.ts.map +1 -1
- package/dist/handlers/members/GUILD_MEMBERS_CHUNK.js +1 -1
- package/dist/handlers/members/GUILD_MEMBER_ADD.d.ts.map +1 -1
- package/dist/handlers/members/GUILD_MEMBER_ADD.js +1 -1
- package/dist/handlers/members/GUILD_MEMBER_REMOVE.d.ts.map +1 -1
- package/dist/handlers/members/GUILD_MEMBER_REMOVE.js +1 -1
- package/dist/handlers/members/GUILD_MEMBER_UPDATE.d.ts.map +1 -1
- package/dist/handlers/members/GUILD_MEMBER_UPDATE.js +1 -1
- package/dist/handlers/members/index.d.ts.map +1 -1
- package/dist/handlers/members/index.js +1 -1
- package/dist/handlers/messages/MESSAGE_CREATE.d.ts.map +1 -1
- package/dist/handlers/messages/MESSAGE_CREATE.js +1 -1
- package/dist/handlers/messages/MESSAGE_DELETE.d.ts.map +1 -1
- package/dist/handlers/messages/MESSAGE_DELETE.js +1 -1
- package/dist/handlers/messages/MESSAGE_DELETE_BULK.d.ts.map +1 -1
- package/dist/handlers/messages/MESSAGE_DELETE_BULK.js +1 -1
- package/dist/handlers/messages/MESSAGE_REACTION_ADD.d.ts.map +1 -1
- package/dist/handlers/messages/MESSAGE_REACTION_ADD.js +1 -1
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE.d.ts.map +1 -1
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE.js +1 -1
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.d.ts.map +1 -1
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.js +1 -1
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.d.ts.map +1 -1
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.js +1 -1
- package/dist/handlers/messages/MESSAGE_UPDATE.d.ts.map +1 -1
- package/dist/handlers/messages/MESSAGE_UPDATE.js +1 -1
- package/dist/handlers/messages/index.d.ts.map +1 -1
- package/dist/handlers/messages/index.js +1 -1
- package/dist/handlers/misc/PRESENCE_UPDATE.d.ts.map +1 -1
- package/dist/handlers/misc/PRESENCE_UPDATE.js +1 -1
- package/dist/handlers/misc/RATE_LIMITED.d.ts.map +1 -1
- package/dist/handlers/misc/RATE_LIMITED.js +1 -1
- package/dist/handlers/misc/READY.d.ts.map +1 -1
- package/dist/handlers/misc/READY.js +1 -1
- package/dist/handlers/misc/RESUMED.d.ts.map +1 -1
- package/dist/handlers/misc/RESUMED.js +1 -1
- package/dist/handlers/misc/TYPING_START.d.ts.map +1 -1
- package/dist/handlers/misc/TYPING_START.js +1 -1
- package/dist/handlers/misc/USER_UPDATE.d.ts.map +1 -1
- package/dist/handlers/misc/USER_UPDATE.js +1 -1
- package/dist/handlers/misc/index.d.ts.map +1 -1
- package/dist/handlers/misc/index.js +1 -1
- package/dist/handlers/poll/MESSAGE_POLL_VOTE_ADD.d.ts.map +1 -1
- package/dist/handlers/poll/MESSAGE_POLL_VOTE_ADD.js +1 -1
- package/dist/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.d.ts.map +1 -1
- package/dist/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.js +1 -1
- package/dist/handlers/poll/index.d.ts.map +1 -1
- package/dist/handlers/poll/index.js +1 -1
- package/dist/handlers/roles/GUILD_ROLE_CREATE.d.ts.map +1 -1
- package/dist/handlers/roles/GUILD_ROLE_CREATE.js +1 -1
- package/dist/handlers/roles/GUILD_ROLE_DELETE.d.ts.map +1 -1
- package/dist/handlers/roles/GUILD_ROLE_DELETE.js +1 -1
- package/dist/handlers/roles/GUILD_ROLE_UPDATE.d.ts.map +1 -1
- package/dist/handlers/roles/GUILD_ROLE_UPDATE.js +1 -1
- package/dist/handlers/roles/index.d.ts.map +1 -1
- package/dist/handlers/roles/index.js +1 -1
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.d.ts.map +1 -1
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.js +1 -1
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.d.ts.map +1 -1
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.js +1 -1
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.d.ts.map +1 -1
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.js +1 -1
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.d.ts.map +1 -1
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.js +1 -1
- package/dist/handlers/soundboard/SOUNDBOARD_SOUNDS.d.ts.map +1 -1
- package/dist/handlers/soundboard/SOUNDBOARD_SOUNDS.js +1 -1
- package/dist/handlers/soundboard/index.d.ts.map +1 -1
- package/dist/handlers/soundboard/index.js +1 -1
- package/dist/handlers/subscriptions/SUBSCRIPTION_CREATE.d.ts.map +1 -1
- package/dist/handlers/subscriptions/SUBSCRIPTION_CREATE.js +1 -1
- package/dist/handlers/subscriptions/SUBSCRIPTION_DELETE.d.ts.map +1 -1
- package/dist/handlers/subscriptions/SUBSCRIPTION_DELETE.js +1 -1
- package/dist/handlers/subscriptions/SUBSCRIPTION_UPDATE.d.ts.map +1 -1
- package/dist/handlers/subscriptions/SUBSCRIPTION_UPDATE.js +1 -1
- package/dist/handlers/subscriptions/index.d.ts.map +1 -1
- package/dist/handlers/subscriptions/index.js +1 -1
- package/dist/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.d.ts.map +1 -1
- package/dist/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.js +1 -1
- package/dist/handlers/voice/VOICE_SERVER_UPDATE.d.ts.map +1 -1
- package/dist/handlers/voice/VOICE_SERVER_UPDATE.js +1 -1
- package/dist/handlers/voice/VOICE_STATE_UPDATE.d.ts.map +1 -1
- package/dist/handlers/voice/VOICE_STATE_UPDATE.js +1 -1
- package/dist/handlers/voice/index.d.ts.map +1 -1
- package/dist/handlers/voice/index.js +1 -1
- package/dist/handlers/webhooks/WEBHOOKS_UPDATE.d.ts.map +1 -1
- package/dist/handlers/webhooks/WEBHOOKS_UPDATE.js +1 -1
- package/dist/handlers/webhooks/index.d.ts.map +1 -1
- package/dist/handlers/webhooks/index.js +1 -1
- package/dist/handlers.d.ts.map +1 -1
- package/dist/handlers.js +1 -1
- package/dist/helpers.d.ts +56 -44
- package/dist/helpers.d.ts.map +1 -1
- package/dist/helpers.js +46 -11
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/transformers/activity.d.ts +3 -2
- package/dist/transformers/activity.d.ts.map +1 -1
- package/dist/transformers/activity.js +25 -14
- package/dist/transformers/application.d.ts.map +1 -1
- package/dist/transformers/application.js +4 -1
- package/dist/transformers/applicationCommand.d.ts.map +1 -1
- package/dist/transformers/applicationCommand.js +1 -1
- package/dist/transformers/applicationCommandOption.d.ts.map +1 -1
- package/dist/transformers/applicationCommandOption.js +1 -1
- package/dist/transformers/applicationCommandOptionChoice.d.ts.map +1 -1
- package/dist/transformers/applicationCommandOptionChoice.js +1 -1
- package/dist/transformers/applicationCommandPermission.d.ts.map +1 -1
- package/dist/transformers/applicationCommandPermission.js +1 -1
- package/dist/transformers/attachment.d.ts.map +1 -1
- package/dist/transformers/attachment.js +6 -1
- package/dist/transformers/auditLogEntry.d.ts.map +1 -1
- package/dist/transformers/auditLogEntry.js +1 -1
- package/dist/transformers/automodActionExecution.d.ts.map +1 -1
- package/dist/transformers/automodActionExecution.js +1 -1
- package/dist/transformers/automodRule.d.ts.map +1 -1
- package/dist/transformers/automodRule.js +3 -2
- package/dist/transformers/avatarDecorationData.d.ts.map +1 -1
- package/dist/transformers/avatarDecorationData.js +1 -1
- package/dist/transformers/channel.d.ts.map +1 -1
- package/dist/transformers/channel.js +5 -4
- package/dist/transformers/component.d.ts +2 -2
- package/dist/transformers/component.d.ts.map +1 -1
- package/dist/transformers/component.js +225 -31
- package/dist/transformers/embed.d.ts.map +1 -1
- package/dist/transformers/embed.js +22 -5
- package/dist/transformers/emoji.d.ts.map +1 -1
- package/dist/transformers/emoji.js +1 -1
- package/dist/transformers/entitlement.d.ts.map +1 -1
- package/dist/transformers/entitlement.js +1 -1
- package/dist/transformers/gatewayBot.d.ts.map +1 -1
- package/dist/transformers/gatewayBot.js +1 -1
- package/dist/transformers/guild.d.ts.map +1 -1
- package/dist/transformers/guild.js +1 -1
- package/dist/transformers/incidentsData.d.ts.map +1 -1
- package/dist/transformers/incidentsData.js +1 -1
- package/dist/transformers/index.d.ts.map +1 -1
- package/dist/transformers/index.js +1 -1
- package/dist/transformers/integration.d.ts.map +1 -1
- package/dist/transformers/integration.js +1 -1
- package/dist/transformers/interaction.d.ts.map +1 -1
- package/dist/transformers/interaction.js +17 -7
- package/dist/transformers/invite.d.ts.map +1 -1
- package/dist/transformers/invite.js +3 -6
- package/dist/transformers/lobby.d.ts +4 -2
- package/dist/transformers/lobby.d.ts.map +1 -1
- package/dist/transformers/lobby.js +22 -1
- package/dist/transformers/member.d.ts.map +1 -1
- package/dist/transformers/member.js +2 -1
- package/dist/transformers/message.d.ts +3 -2
- package/dist/transformers/message.d.ts.map +1 -1
- package/dist/transformers/message.js +11 -1
- package/dist/transformers/onboarding.d.ts.map +1 -1
- package/dist/transformers/onboarding.js +1 -1
- package/dist/transformers/poll.d.ts.map +1 -1
- package/dist/transformers/poll.js +1 -1
- package/dist/transformers/presence.d.ts.map +1 -1
- package/dist/transformers/presence.js +1 -1
- package/dist/transformers/reverse/activity.d.ts +4 -3
- package/dist/transformers/reverse/activity.d.ts.map +1 -1
- package/dist/transformers/reverse/activity.js +20 -24
- package/dist/transformers/reverse/allowedMentions.d.ts.map +1 -1
- package/dist/transformers/reverse/allowedMentions.js +1 -1
- package/dist/transformers/reverse/application.d.ts.map +1 -1
- package/dist/transformers/reverse/application.js +1 -1
- package/dist/transformers/reverse/applicationCommand.d.ts.map +1 -1
- package/dist/transformers/reverse/applicationCommand.js +2 -2
- package/dist/transformers/reverse/applicationCommandOption.d.ts.map +1 -1
- package/dist/transformers/reverse/applicationCommandOption.js +1 -1
- package/dist/transformers/reverse/applicationCommandOptionChoice.d.ts.map +1 -1
- package/dist/transformers/reverse/applicationCommandOptionChoice.js +1 -1
- package/dist/transformers/reverse/applicationCommandPermission.d.ts.map +1 -1
- package/dist/transformers/reverse/applicationCommandPermission.js +1 -1
- package/dist/transformers/reverse/attachment.d.ts.map +1 -1
- package/dist/transformers/reverse/attachment.js +1 -1
- package/dist/transformers/reverse/auditLogEntry.d.ts.map +1 -1
- package/dist/transformers/reverse/auditLogEntry.js +1 -1
- package/dist/transformers/reverse/component.d.ts +2 -2
- package/dist/transformers/reverse/component.d.ts.map +1 -1
- package/dist/transformers/reverse/component.js +185 -12
- package/dist/transformers/reverse/embed.d.ts.map +1 -1
- package/dist/transformers/reverse/embed.js +19 -4
- package/dist/transformers/reverse/emoji.d.ts.map +1 -1
- package/dist/transformers/reverse/emoji.js +1 -1
- package/dist/transformers/reverse/gatewayBot.d.ts.map +1 -1
- package/dist/transformers/reverse/gatewayBot.js +1 -1
- package/dist/transformers/reverse/index.d.ts.map +1 -1
- package/dist/transformers/reverse/index.js +1 -1
- package/dist/transformers/reverse/member.d.ts.map +1 -1
- package/dist/transformers/reverse/member.js +4 -2
- package/dist/transformers/reverse/presence.d.ts.map +1 -1
- package/dist/transformers/reverse/presence.js +1 -1
- package/dist/transformers/reverse/team.d.ts.map +1 -1
- package/dist/transformers/reverse/team.js +1 -1
- package/dist/transformers/reverse/user.d.ts +5 -0
- package/dist/transformers/reverse/user.d.ts.map +1 -0
- package/dist/transformers/reverse/user.js +17 -0
- package/dist/transformers/reverse/widgetSettings.d.ts.map +1 -1
- package/dist/transformers/reverse/widgetSettings.js +1 -1
- package/dist/transformers/role.d.ts.map +1 -1
- package/dist/transformers/role.js +2 -1
- package/dist/transformers/scheduledEvent.d.ts.map +1 -1
- package/dist/transformers/scheduledEvent.js +1 -1
- package/dist/transformers/sku.d.ts.map +1 -1
- package/dist/transformers/sku.js +1 -1
- package/dist/transformers/soundboardSound.d.ts.map +1 -1
- package/dist/transformers/soundboardSound.js +1 -1
- package/dist/transformers/stageInstance.d.ts.map +1 -1
- package/dist/transformers/stageInstance.js +1 -1
- package/dist/transformers/stageInviteInstance.d.ts.map +1 -1
- package/dist/transformers/stageInviteInstance.js +1 -1
- package/dist/transformers/sticker.d.ts.map +1 -1
- package/dist/transformers/sticker.js +1 -1
- package/dist/transformers/subscription.d.ts.map +1 -1
- package/dist/transformers/subscription.js +1 -1
- package/dist/transformers/team.d.ts.map +1 -1
- package/dist/transformers/team.js +1 -1
- package/dist/transformers/template.d.ts.map +1 -1
- package/dist/transformers/template.js +1 -1
- package/dist/transformers/threadMember.d.ts.map +1 -1
- package/dist/transformers/threadMember.js +1 -1
- package/dist/transformers/toggles/Permissions.d.ts.map +1 -1
- package/dist/transformers/toggles/Permissions.js +1 -1
- package/dist/transformers/toggles/ToggleBitfield.d.ts.map +1 -1
- package/dist/transformers/toggles/ToggleBitfield.js +1 -1
- package/dist/transformers/toggles/channel.d.ts +1 -1
- package/dist/transformers/toggles/channel.d.ts.map +1 -1
- package/dist/transformers/toggles/channel.js +2 -2
- package/dist/transformers/toggles/emoji.d.ts.map +1 -1
- package/dist/transformers/toggles/emoji.js +1 -1
- package/dist/transformers/toggles/guild.d.ts +2 -2
- package/dist/transformers/toggles/guild.d.ts.map +1 -1
- package/dist/transformers/toggles/guild.js +3 -3
- package/dist/transformers/toggles/index.d.ts.map +1 -1
- package/dist/transformers/toggles/index.js +1 -1
- package/dist/transformers/toggles/member.d.ts.map +1 -1
- package/dist/transformers/toggles/member.js +1 -1
- package/dist/transformers/toggles/role.d.ts.map +1 -1
- package/dist/transformers/toggles/role.js +1 -1
- package/dist/transformers/toggles/user.d.ts.map +1 -1
- package/dist/transformers/toggles/user.js +1 -1
- package/dist/transformers/toggles/voice.d.ts.map +1 -1
- package/dist/transformers/toggles/voice.js +1 -1
- package/dist/transformers/types.d.ts +260 -52
- package/dist/transformers/types.d.ts.map +1 -1
- package/dist/transformers/types.js +2 -2
- package/dist/transformers/user.d.ts.map +1 -1
- package/dist/transformers/user.js +20 -3
- package/dist/transformers/voiceRegion.d.ts.map +1 -1
- package/dist/transformers/voiceRegion.js +1 -1
- package/dist/transformers/voiceState.d.ts.map +1 -1
- package/dist/transformers/voiceState.js +1 -1
- package/dist/transformers/webhook.d.ts.map +1 -1
- package/dist/transformers/webhook.js +5 -5
- package/dist/transformers/welcomeScreen.d.ts.map +1 -1
- package/dist/transformers/welcomeScreen.js +1 -1
- package/dist/transformers/widget.d.ts.map +1 -1
- package/dist/transformers/widget.js +1 -1
- package/dist/transformers/widgetSettings.d.ts.map +1 -1
- package/dist/transformers/widgetSettings.js +1 -1
- package/dist/transformers.d.ts +41 -34
- package/dist/transformers.d.ts.map +1 -1
- package/dist/transformers.js +17 -5
- package/package.json +23 -25
|
@@ -1,3 +1,249 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Metadata for typescript to create the correct types for desired properties
|
|
3
|
+
*
|
|
4
|
+
* @private This is subject to breaking changes without notices
|
|
5
|
+
*/ export const transformersDesiredPropertiesMetadata = {
|
|
6
|
+
channel: {
|
|
7
|
+
dependencies: {
|
|
8
|
+
archived: [
|
|
9
|
+
'toggles'
|
|
10
|
+
],
|
|
11
|
+
invitable: [
|
|
12
|
+
'toggles'
|
|
13
|
+
],
|
|
14
|
+
locked: [
|
|
15
|
+
'toggles'
|
|
16
|
+
],
|
|
17
|
+
nsfw: [
|
|
18
|
+
'toggles'
|
|
19
|
+
],
|
|
20
|
+
newlyCreated: [
|
|
21
|
+
'toggles'
|
|
22
|
+
],
|
|
23
|
+
managed: [
|
|
24
|
+
'toggles'
|
|
25
|
+
]
|
|
26
|
+
},
|
|
27
|
+
alwaysPresents: [
|
|
28
|
+
'toggles',
|
|
29
|
+
'internalOverwrites',
|
|
30
|
+
'internalThreadMetadata'
|
|
31
|
+
]
|
|
32
|
+
},
|
|
33
|
+
guild: {
|
|
34
|
+
dependencies: {
|
|
35
|
+
threads: [
|
|
36
|
+
'channels'
|
|
37
|
+
],
|
|
38
|
+
features: [
|
|
39
|
+
'toggles'
|
|
40
|
+
]
|
|
41
|
+
},
|
|
42
|
+
alwaysPresents: []
|
|
43
|
+
},
|
|
44
|
+
interaction: {
|
|
45
|
+
dependencies: {
|
|
46
|
+
respond: [
|
|
47
|
+
'type',
|
|
48
|
+
'token',
|
|
49
|
+
'id'
|
|
50
|
+
],
|
|
51
|
+
sendFollowupMessage: [
|
|
52
|
+
'token'
|
|
53
|
+
],
|
|
54
|
+
edit: [
|
|
55
|
+
'type',
|
|
56
|
+
'token',
|
|
57
|
+
'id'
|
|
58
|
+
],
|
|
59
|
+
deferEdit: [
|
|
60
|
+
'type',
|
|
61
|
+
'token',
|
|
62
|
+
'id'
|
|
63
|
+
],
|
|
64
|
+
defer: [
|
|
65
|
+
'type',
|
|
66
|
+
'token',
|
|
67
|
+
'id'
|
|
68
|
+
],
|
|
69
|
+
delete: [
|
|
70
|
+
'type',
|
|
71
|
+
'token'
|
|
72
|
+
]
|
|
73
|
+
},
|
|
74
|
+
alwaysPresents: [
|
|
75
|
+
'bot',
|
|
76
|
+
'acknowledged'
|
|
77
|
+
]
|
|
78
|
+
},
|
|
79
|
+
member: {
|
|
80
|
+
dependencies: {
|
|
81
|
+
deaf: [
|
|
82
|
+
'toggles'
|
|
83
|
+
],
|
|
84
|
+
mute: [
|
|
85
|
+
'toggles'
|
|
86
|
+
],
|
|
87
|
+
pending: [
|
|
88
|
+
'toggles'
|
|
89
|
+
],
|
|
90
|
+
flags: [
|
|
91
|
+
'toggles'
|
|
92
|
+
],
|
|
93
|
+
didRejoin: [
|
|
94
|
+
'toggles'
|
|
95
|
+
],
|
|
96
|
+
startedOnboarding: [
|
|
97
|
+
'toggles'
|
|
98
|
+
],
|
|
99
|
+
bypassesVerification: [
|
|
100
|
+
'toggles'
|
|
101
|
+
],
|
|
102
|
+
completedOnboarding: [
|
|
103
|
+
'toggles'
|
|
104
|
+
]
|
|
105
|
+
},
|
|
106
|
+
alwaysPresents: []
|
|
107
|
+
},
|
|
108
|
+
message: {
|
|
109
|
+
dependencies: {
|
|
110
|
+
crossposted: [
|
|
111
|
+
'flags'
|
|
112
|
+
],
|
|
113
|
+
ephemeral: [
|
|
114
|
+
'flags'
|
|
115
|
+
],
|
|
116
|
+
failedToMentionSomeRolesInThread: [
|
|
117
|
+
'flags'
|
|
118
|
+
],
|
|
119
|
+
hasThread: [
|
|
120
|
+
'flags'
|
|
121
|
+
],
|
|
122
|
+
isCrosspost: [
|
|
123
|
+
'flags'
|
|
124
|
+
],
|
|
125
|
+
loading: [
|
|
126
|
+
'flags'
|
|
127
|
+
],
|
|
128
|
+
mentionedUserIds: [
|
|
129
|
+
'mentions'
|
|
130
|
+
],
|
|
131
|
+
mentionEveryone: [
|
|
132
|
+
'bitfield'
|
|
133
|
+
],
|
|
134
|
+
pinned: [
|
|
135
|
+
'bitfield'
|
|
136
|
+
],
|
|
137
|
+
sourceMessageDeleted: [
|
|
138
|
+
'flags'
|
|
139
|
+
],
|
|
140
|
+
suppressEmbeds: [
|
|
141
|
+
'flags'
|
|
142
|
+
],
|
|
143
|
+
suppressNotifications: [
|
|
144
|
+
'flags'
|
|
145
|
+
],
|
|
146
|
+
timestamp: [
|
|
147
|
+
'id'
|
|
148
|
+
],
|
|
149
|
+
tts: [
|
|
150
|
+
'bitfield'
|
|
151
|
+
],
|
|
152
|
+
urgent: [
|
|
153
|
+
'flags'
|
|
154
|
+
]
|
|
155
|
+
},
|
|
156
|
+
alwaysPresents: [
|
|
157
|
+
'bitfield',
|
|
158
|
+
'flags'
|
|
159
|
+
]
|
|
160
|
+
},
|
|
161
|
+
role: {
|
|
162
|
+
dependencies: {
|
|
163
|
+
hoist: [
|
|
164
|
+
'toggles'
|
|
165
|
+
],
|
|
166
|
+
managed: [
|
|
167
|
+
'toggles'
|
|
168
|
+
],
|
|
169
|
+
mentionable: [
|
|
170
|
+
'toggles'
|
|
171
|
+
],
|
|
172
|
+
premiumSubscriber: [
|
|
173
|
+
'toggles'
|
|
174
|
+
],
|
|
175
|
+
availableForPurchase: [
|
|
176
|
+
'toggles'
|
|
177
|
+
],
|
|
178
|
+
guildConnections: [
|
|
179
|
+
'toggles'
|
|
180
|
+
]
|
|
181
|
+
},
|
|
182
|
+
alwaysPresents: [
|
|
183
|
+
'internalTags'
|
|
184
|
+
]
|
|
185
|
+
},
|
|
186
|
+
user: {
|
|
187
|
+
dependencies: {
|
|
188
|
+
tag: [
|
|
189
|
+
'username',
|
|
190
|
+
'discriminator'
|
|
191
|
+
],
|
|
192
|
+
bot: [
|
|
193
|
+
'toggles'
|
|
194
|
+
],
|
|
195
|
+
system: [
|
|
196
|
+
'toggles'
|
|
197
|
+
],
|
|
198
|
+
mfaEnabled: [
|
|
199
|
+
'toggles'
|
|
200
|
+
],
|
|
201
|
+
verified: [
|
|
202
|
+
'toggles'
|
|
203
|
+
],
|
|
204
|
+
avatarUrl: [
|
|
205
|
+
'avatar',
|
|
206
|
+
'id'
|
|
207
|
+
],
|
|
208
|
+
displayName: [
|
|
209
|
+
'username',
|
|
210
|
+
'globalName'
|
|
211
|
+
],
|
|
212
|
+
defaultAvatarUrl: [
|
|
213
|
+
'id',
|
|
214
|
+
'discriminator'
|
|
215
|
+
],
|
|
216
|
+
displayAvatarUrl: [
|
|
217
|
+
'avatar',
|
|
218
|
+
'id',
|
|
219
|
+
'discriminator'
|
|
220
|
+
],
|
|
221
|
+
createdTimestamp: [
|
|
222
|
+
'id'
|
|
223
|
+
]
|
|
224
|
+
},
|
|
225
|
+
alwaysPresents: []
|
|
226
|
+
},
|
|
227
|
+
emoji: {
|
|
228
|
+
dependencies: {
|
|
229
|
+
animated: [
|
|
230
|
+
'toggles'
|
|
231
|
+
],
|
|
232
|
+
available: [
|
|
233
|
+
'toggles'
|
|
234
|
+
],
|
|
235
|
+
managed: [
|
|
236
|
+
'toggles'
|
|
237
|
+
],
|
|
238
|
+
requireColons: [
|
|
239
|
+
'toggles'
|
|
240
|
+
]
|
|
241
|
+
},
|
|
242
|
+
alwaysPresents: [
|
|
243
|
+
'toggles'
|
|
244
|
+
]
|
|
245
|
+
}
|
|
246
|
+
};
|
|
1
247
|
export function createDesiredPropertiesObject(desiredProperties, defaultValue = false) {
|
|
2
248
|
return {
|
|
3
249
|
activityInstance: {
|
|
@@ -30,6 +276,11 @@ export function createDesiredPropertiesObject(desiredProperties, defaultValue =
|
|
|
30
276
|
duration_secs: defaultValue,
|
|
31
277
|
waveform: defaultValue,
|
|
32
278
|
flags: defaultValue,
|
|
279
|
+
application: defaultValue,
|
|
280
|
+
clipCreatedAt: defaultValue,
|
|
281
|
+
clipParticipants: defaultValue,
|
|
282
|
+
placeholder: defaultValue,
|
|
283
|
+
placeholderVersion: defaultValue,
|
|
33
284
|
...desiredProperties.attachment
|
|
34
285
|
},
|
|
35
286
|
channel: {
|
|
@@ -47,6 +298,7 @@ export function createDesiredPropertiesObject(desiredProperties, defaultValue =
|
|
|
47
298
|
permissionOverwrites: defaultValue,
|
|
48
299
|
id: defaultValue,
|
|
49
300
|
permissions: defaultValue,
|
|
301
|
+
appPermissions: defaultValue,
|
|
50
302
|
lastMessageId: defaultValue,
|
|
51
303
|
ownerId: defaultValue,
|
|
52
304
|
applicationId: defaultValue,
|
|
@@ -80,6 +332,7 @@ export function createDesiredPropertiesObject(desiredProperties, defaultValue =
|
|
|
80
332
|
style: defaultValue,
|
|
81
333
|
label: defaultValue,
|
|
82
334
|
value: defaultValue,
|
|
335
|
+
default: defaultValue,
|
|
83
336
|
emoji: defaultValue,
|
|
84
337
|
url: defaultValue,
|
|
85
338
|
channelTypes: defaultValue,
|
|
@@ -105,6 +358,9 @@ export function createDesiredPropertiesObject(desiredProperties, defaultValue =
|
|
|
105
358
|
accentColor: defaultValue,
|
|
106
359
|
name: defaultValue,
|
|
107
360
|
size: defaultValue,
|
|
361
|
+
component: defaultValue,
|
|
362
|
+
values: defaultValue,
|
|
363
|
+
resolved: defaultValue,
|
|
108
364
|
...desiredProperties.component
|
|
109
365
|
},
|
|
110
366
|
forumTag: {
|
|
@@ -250,9 +506,9 @@ export function createDesiredPropertiesObject(desiredProperties, defaultValue =
|
|
|
250
506
|
approximateMemberCount: defaultValue,
|
|
251
507
|
approximatePresenceCount: defaultValue,
|
|
252
508
|
guildScheduledEvent: defaultValue,
|
|
253
|
-
stageInstance: defaultValue,
|
|
254
509
|
expiresAt: defaultValue,
|
|
255
510
|
flags: defaultValue,
|
|
511
|
+
roles: defaultValue,
|
|
256
512
|
...desiredProperties.invite
|
|
257
513
|
},
|
|
258
514
|
member: {
|
|
@@ -269,6 +525,7 @@ export function createDesiredPropertiesObject(desiredProperties, defaultValue =
|
|
|
269
525
|
communicationDisabledUntil: defaultValue,
|
|
270
526
|
toggles: defaultValue,
|
|
271
527
|
avatarDecorationData: defaultValue,
|
|
528
|
+
collectibles: defaultValue,
|
|
272
529
|
...desiredProperties.member
|
|
273
530
|
},
|
|
274
531
|
message: {
|
|
@@ -290,6 +547,7 @@ export function createDesiredPropertiesObject(desiredProperties, defaultValue =
|
|
|
290
547
|
mentionedChannelIds: defaultValue,
|
|
291
548
|
mentionedRoleIds: defaultValue,
|
|
292
549
|
mentions: defaultValue,
|
|
550
|
+
channelType: defaultValue,
|
|
293
551
|
messageReference: defaultValue,
|
|
294
552
|
messageSnapshots: defaultValue,
|
|
295
553
|
referencedMessage: defaultValue,
|
|
@@ -301,6 +559,8 @@ export function createDesiredPropertiesObject(desiredProperties, defaultValue =
|
|
|
301
559
|
webhookId: defaultValue,
|
|
302
560
|
poll: defaultValue,
|
|
303
561
|
call: defaultValue,
|
|
562
|
+
sharedClientTheme: defaultValue,
|
|
563
|
+
resolved: defaultValue,
|
|
304
564
|
...desiredProperties.message
|
|
305
565
|
},
|
|
306
566
|
messageSnapshot: {
|
|
@@ -404,6 +664,13 @@ export function createDesiredPropertiesObject(desiredProperties, defaultValue =
|
|
|
404
664
|
count: defaultValue,
|
|
405
665
|
...desiredProperties.scheduledEventRecurrenceRule
|
|
406
666
|
},
|
|
667
|
+
sharedClientTheme: {
|
|
668
|
+
colors: defaultValue,
|
|
669
|
+
baseMix: defaultValue,
|
|
670
|
+
gradientAngle: defaultValue,
|
|
671
|
+
baseTheme: defaultValue,
|
|
672
|
+
...desiredProperties.sharedClientTheme
|
|
673
|
+
},
|
|
407
674
|
stageInstance: {
|
|
408
675
|
id: defaultValue,
|
|
409
676
|
guildId: defaultValue,
|
|
@@ -446,6 +713,9 @@ export function createDesiredPropertiesObject(desiredProperties, defaultValue =
|
|
|
446
713
|
width: defaultValue,
|
|
447
714
|
contentType: defaultValue,
|
|
448
715
|
attachmentId: defaultValue,
|
|
716
|
+
flags: defaultValue,
|
|
717
|
+
placeholder: defaultValue,
|
|
718
|
+
placeholderVersion: defaultValue,
|
|
449
719
|
...desiredProperties.unfurledMediaItem
|
|
450
720
|
},
|
|
451
721
|
user: {
|
|
@@ -619,6 +889,23 @@ export function createDesiredPropertiesObject(desiredProperties, defaultValue =
|
|
|
619
889
|
metadata: defaultValue,
|
|
620
890
|
flags: defaultValue,
|
|
621
891
|
...desiredProperties.lobbyMember
|
|
892
|
+
},
|
|
893
|
+
lobbyMessage: {
|
|
894
|
+
id: defaultValue,
|
|
895
|
+
content: defaultValue,
|
|
896
|
+
applicationId: defaultValue,
|
|
897
|
+
flags: defaultValue,
|
|
898
|
+
author: defaultValue,
|
|
899
|
+
channelId: defaultValue,
|
|
900
|
+
lobbyId: defaultValue,
|
|
901
|
+
metadata: defaultValue,
|
|
902
|
+
moderationMetadata: defaultValue,
|
|
903
|
+
type: defaultValue,
|
|
904
|
+
...desiredProperties.lobbyMessage
|
|
905
|
+
},
|
|
906
|
+
lobbyInvite: {
|
|
907
|
+
code: defaultValue,
|
|
908
|
+
...desiredProperties.lobbyInvite
|
|
622
909
|
}
|
|
623
910
|
};
|
|
624
911
|
}
|
|
@@ -628,4 +915,4 @@ export function createDesiredPropertiesObject(desiredProperties, defaultValue =
|
|
|
628
915
|
return DesiredPropertiesBehavior;
|
|
629
916
|
}({});
|
|
630
917
|
|
|
631
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kZXNpcmVkUHJvcGVydGllcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFJlY3Vyc2l2ZVBhcnRpYWwgfSBmcm9tICdAZGlzY29yZGVuby90eXBlcydcbmltcG9ydCB0eXBlIHsgQ29sbGVjdGlvbiB9IGZyb20gJ0BkaXNjb3JkZW5vL3V0aWxzJ1xuaW1wb3J0IHR5cGUgeyBCb3QgfSBmcm9tICcuL2JvdC5qcydcbmltcG9ydCB0eXBlIHsgSW50ZXJhY3Rpb25SZXNvbHZlZERhdGFDaGFubmVsLCBJbnRlcmFjdGlvblJlc29sdmVkRGF0YU1lbWJlciB9IGZyb20gJy4vY29tbWFuZE9wdGlvbnNQYXJzZXIuanMnXG5pbXBvcnQgdHlwZSB7XG4gIEFjdGl2aXR5SW5zdGFuY2UsXG4gIEFjdGl2aXR5TG9jYXRpb24sXG4gIEF0dGFjaG1lbnQsXG4gIEF2YXRhckRlY29yYXRpb25EYXRhLFxuICBDaGFubmVsLFxuICBDb2xsZWN0aWJsZXMsXG4gIENvbXBvbmVudCxcbiAgRGVmYXVsdFJlYWN0aW9uRW1vamksXG4gIEVtb2ppLFxuICBFbnRpdGxlbWVudCxcbiAgRm9ydW1UYWcsXG4gIEd1aWxkLFxuICBHdWlsZE9uYm9hcmRpbmcsXG4gIEd1aWxkT25ib2FyZGluZ1Byb21wdCxcbiAgR3VpbGRPbmJvYXJkaW5nUHJvbXB0T3B0aW9uLFxuICBJbmNpZGVudHNEYXRhLFxuICBJbnRlcmFjdGlvbixcbiAgSW50ZXJhY3Rpb25DYWxsYmFjayxcbiAgSW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlLFxuICBJbnRlcmFjdGlvblJlc291cmNlLFxuICBJbnZpdGUsXG4gIEludml0ZVN0YWdlSW5zdGFuY2UsXG4gIExvYmJ5LFxuICBMb2JieU1lbWJlcixcbiAgTWVkaWFHYWxsZXJ5SXRlbSxcbiAgTWVtYmVyLFxuICBNZXNzYWdlLFxuICBNZXNzYWdlQ2FsbCxcbiAgTWVzc2FnZUludGVyYWN0aW9uLFxuICBNZXNzYWdlSW50ZXJhY3Rpb25NZXRhZGF0YSxcbiAgTWVzc2FnZVBpbixcbiAgTWVzc2FnZVJlZmVyZW5jZSxcbiAgTWVzc2FnZVNuYXBzaG90LFxuICBOYW1lcGxhdGUsXG4gIFBvbGwsXG4gIFBvbGxBbnN3ZXIsXG4gIFBvbGxBbnN3ZXJDb3VudCxcbiAgUG9sbE1lZGlhLFxuICBQb2xsUmVzdWx0LFxuICBSb2xlLFxuICBSb2xlQ29sb3JzLFxuICBTY2hlZHVsZWRFdmVudCxcbiAgU2NoZWR1bGVkRXZlbnRSZWN1cnJlbmNlUnVsZSxcbiAgU2t1LFxuICBTb3VuZGJvYXJkU291bmQsXG4gIFN0YWdlSW5zdGFuY2UsXG4gIFN0aWNrZXIsXG4gIFN1YnNjcmlwdGlvbixcbiAgVW5mdXJsZWRNZWRpYUl0ZW0sXG4gIFVzZXIsXG4gIFVzZXJQcmltYXJ5R3VpbGQsXG4gIFZvaWNlU3RhdGUsXG4gIFdlYmhvb2ssXG59IGZyb20gJy4vdHJhbnNmb3JtZXJzL3R5cGVzLmpzJ1xuXG4vKipcbiAqIEFsbCB0aGUgb2JqZWN0cyB0aGF0IHN1cHBvcnQgZGVzaXJlZCBwcm9wZXJ0aWVzXG4gKlxuICogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgYXQgYW55IHRpbWVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUcmFuc2Zvcm1lcnNPYmplY3RzIHtcbiAgYWN0aXZpdHlJbnN0YW5jZTogQWN0aXZpdHlJbnN0YW5jZVxuICBhY3Rpdml0eUxvY2F0aW9uOiBBY3Rpdml0eUxvY2F0aW9uXG4gIGF0dGFjaG1lbnQ6IEF0dGFjaG1lbnRcbiAgYXZhdGFyRGVjb3JhdGlvbkRhdGE6IEF2YXRhckRlY29yYXRpb25EYXRhXG4gIGNoYW5uZWw6IENoYW5uZWxcbiAgY29sbGVjdGlibGVzOiBDb2xsZWN0aWJsZXNcbiAgY29tcG9uZW50OiBDb21wb25lbnRcbiAgZGVmYXVsdFJlYWN0aW9uRW1vamk6IERlZmF1bHRSZWFjdGlvbkVtb2ppXG4gIGVtb2ppOiBFbW9qaVxuICBlbnRpdGxlbWVudDogRW50aXRsZW1lbnRcbiAgZm9ydW1UYWc6IEZvcnVtVGFnXG4gIGd1aWxkOiBHdWlsZFxuICBndWlsZE9uYm9hcmRpbmc6IEd1aWxkT25ib2FyZGluZ1xuICBndWlsZE9uYm9hcmRpbmdQcm9tcHQ6IEd1aWxkT25ib2FyZGluZ1Byb21wdFxuICBndWlsZE9uYm9hcmRpbmdQcm9tcHRPcHRpb246IEd1aWxkT25ib2FyZGluZ1Byb21wdE9wdGlvblxuICBpbmNpZGVudHNEYXRhOiBJbmNpZGVudHNEYXRhXG4gIGludGVyYWN0aW9uOiBJbnRlcmFjdGlvblxuICBpbnRlcmFjdGlvbkNhbGxiYWNrOiBJbnRlcmFjdGlvbkNhbGxiYWNrXG4gIGludGVyYWN0aW9uQ2FsbGJhY2tSZXNwb25zZTogSW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlXG4gIGludGVyYWN0aW9uUmVzb3VyY2U6IEludGVyYWN0aW9uUmVzb3VyY2VcbiAgaW52aXRlOiBJbnZpdGVcbiAgaW52aXRlU3RhZ2VJbnN0YW5jZTogSW52aXRlU3RhZ2VJbnN0YW5jZVxuICBsb2JieTogTG9iYnlcbiAgbG9iYnlNZW1iZXI6IExvYmJ5TWVtYmVyXG4gIG1lZGlhR2FsbGVyeUl0ZW06IE1lZGlhR2FsbGVyeUl0ZW1cbiAgbWVtYmVyOiBNZW1iZXJcbiAgbWVzc2FnZTogTWVzc2FnZVxuICBtZXNzYWdlQ2FsbDogTWVzc2FnZUNhbGxcbiAgbWVzc2FnZUludGVyYWN0aW9uOiBNZXNzYWdlSW50ZXJhY3Rpb25cbiAgbWVzc2FnZUludGVyYWN0aW9uTWV0YWRhdGE6IE1lc3NhZ2VJbnRlcmFjdGlvbk1ldGFkYXRhXG4gIG1lc3NhZ2VQaW46IE1lc3NhZ2VQaW5cbiAgbWVzc2FnZVJlZmVyZW5jZTogTWVzc2FnZVJlZmVyZW5jZVxuICBtZXNzYWdlU25hcHNob3Q6IE1lc3NhZ2VTbmFwc2hvdFxuICBuYW1lcGxhdGU6IE5hbWVwbGF0ZVxuICBwb2xsOiBQb2xsXG4gIHBvbGxBbnN3ZXI6IFBvbGxBbnN3ZXJcbiAgcG9sbEFuc3dlckNvdW50OiBQb2xsQW5zd2VyQ291bnRcbiAgcG9sbE1lZGlhOiBQb2xsTWVkaWFcbiAgcG9sbFJlc3VsdDogUG9sbFJlc3VsdFxuICByb2xlOiBSb2xlXG4gIHJvbGVDb2xvcnM6IFJvbGVDb2xvcnNcbiAgc2NoZWR1bGVkRXZlbnQ6IFNjaGVkdWxlZEV2ZW50XG4gIHNjaGVkdWxlZEV2ZW50UmVjdXJyZW5jZVJ1bGU6IFNjaGVkdWxlZEV2ZW50UmVjdXJyZW5jZVJ1bGVcbiAgc2t1OiBTa3VcbiAgc291bmRib2FyZFNvdW5kOiBTb3VuZGJvYXJkU291bmRcbiAgc3RhZ2VJbnN0YW5jZTogU3RhZ2VJbnN0YW5jZVxuICBzdGlja2VyOiBTdGlja2VyXG4gIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uXG4gIHVuZnVybGVkTWVkaWFJdGVtOiBVbmZ1cmxlZE1lZGlhSXRlbVxuICB1c2VyOiBVc2VyXG4gIHVzZXJQcmltYXJ5R3VpbGQ6IFVzZXJQcmltYXJ5R3VpbGRcbiAgdm9pY2VTdGF0ZTogVm9pY2VTdGF0ZVxuICB3ZWJob29rOiBXZWJob29rXG59XG5cbi8vIE5PVEU6IHRoZSB0b3AtbGV2ZWwgb2JqZWN0cyBuZWVkIGJvdGggdGhlIGRlcGVuZGVuY2llcyBhbmQgYWx3YXlzUHJlc2VudHMgZXZlbiBpZiBlbXB0eSB3aGVuIHRoZSBrZXkgaXMgc3BlY2lmaWVkLCB0aGlzIGlzIGR1ZSB0aGUgZXh0ZW5kcyAmIG51bGxhYmlsaXR5IG9uIERlc2lyZWRQcm9wZXJ0aWVzTWV0YWRhdGFcbi8vICAgICAgIGludGVybmFsIHByb3BlcnRpZXMgbmVlZHMgdG8gYmUgaW4gdGhlIGFsd2F5c1ByZXNlbnRzIGFycmF5LCBkZXBlbmRpbmcgb24gYW4gYWx3YXlzIHByZXNlbnQgdmFsdWUgaXMgYWNjZXB0ZWRcblxuLyoqXG4gKiBNZXRhZGF0YSBmb3IgdHlwZXNjcmlwdCB0byBjcmVhdGUgdGhlIGNvcnJlY3QgdHlwZXMgZm9yIGRlc2lyZWQgcHJvcGVydGllc1xuICpcbiAqIEBwcml2YXRlIFRoaXMgaXMgc3ViamVjdCB0byBicmVha2luZyBjaGFuZ2VzIHdpdGhvdXQgbm90aWNlc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzTWV0YWRhdGEgZXh0ZW5kcyBEZXNpcmVkUHJvcGVydGllc01ldGFkYXRhIHtcbiAgY2hhbm5lbDoge1xuICAgIGRlcGVuZGVuY2llczoge1xuICAgICAgYXJjaGl2ZWQ6IFsndG9nZ2xlcyddXG4gICAgICBpbnZpdGFibGU6IFsndG9nZ2xlcyddXG4gICAgICBsb2NrZWQ6IFsndG9nZ2xlcyddXG4gICAgICBuc2Z3OiBbJ3RvZ2dsZXMnXVxuICAgICAgbmV3bHlDcmVhdGVkOiBbJ3RvZ2dsZXMnXVxuICAgICAgbWFuYWdlZDogWyd0b2dnbGVzJ11cbiAgICB9XG4gICAgYWx3YXlzUHJlc2VudHM6IFsndG9nZ2xlcycsICdpbnRlcm5hbE92ZXJ3cml0ZXMnLCAnaW50ZXJuYWxUaHJlYWRNZXRhZGF0YSddXG4gIH1cblxuICBndWlsZDoge1xuICAgIGRlcGVuZGVuY2llczoge1xuICAgICAgdGhyZWFkczogWydjaGFubmVscyddXG4gICAgICBmZWF0dXJlczogWyd0b2dnbGVzJ11cbiAgICB9XG4gICAgYWx3YXlzUHJlc2VudHM6IFtdXG4gIH1cblxuICBpbnRlcmFjdGlvbjoge1xuICAgIGRlcGVuZGVuY2llczoge1xuICAgICAgcmVzcG9uZDogWyd0eXBlJywgJ3Rva2VuJywgJ2lkJ11cbiAgICAgIGVkaXQ6IFsndHlwZScsICd0b2tlbicsICdpZCddXG4gICAgICBkZWZlckVkaXQ6IFsndHlwZScsICd0b2tlbicsICdpZCddXG4gICAgICBkZWZlcjogWyd0eXBlJywgJ3Rva2VuJywgJ2lkJ11cbiAgICAgIGRlbGV0ZTogWyd0eXBlJywgJ3Rva2VuJ11cbiAgICB9XG4gICAgYWx3YXlzUHJlc2VudHM6IFsnYm90JywgJ2Fja25vd2xlZGdlZCddXG4gIH1cblxuICBtZW1iZXI6IHtcbiAgICBkZXBlbmRlbmNpZXM6IHtcbiAgICAgIGRlYWY6IFsndG9nZ2xlcyddXG4gICAgICBtdXRlOiBbJ3RvZ2dsZXMnXVxuICAgICAgcGVuZGluZzogWyd0b2dnbGVzJ11cbiAgICAgIGZsYWdzOiBbJ3RvZ2dsZXMnXVxuICAgICAgZGlkUmVqb2luOiBbJ3RvZ2dsZXMnXVxuICAgICAgc3RhcnRlZE9uYm9hcmRpbmc6IFsndG9nZ2xlcyddXG4gICAgICBieXBhc3Nlc1ZlcmlmaWNhdGlvbjogWyd0b2dnbGVzJ11cbiAgICAgIGNvbXBsZXRlZE9uYm9hcmRpbmc6IFsndG9nZ2xlcyddXG4gICAgfVxuICAgIGFsd2F5c1ByZXNlbnRzOiBbXVxuICB9XG5cbiAgbWVzc2FnZToge1xuICAgIGRlcGVuZGVuY2llczoge1xuICAgICAgY3Jvc3Nwb3N0ZWQ6IFsnZmxhZ3MnXVxuICAgICAgZXBoZW1lcmFsOiBbJ2ZsYWdzJ11cbiAgICAgIGZhaWxlZFRvTWVudGlvblNvbWVSb2xlc0luVGhyZWFkOiBbJ2ZsYWdzJ11cbiAgICAgIGhhc1RocmVhZDogWydmbGFncyddXG4gICAgICBpc0Nyb3NzcG9zdDogWydmbGFncyddXG4gICAgICBsb2FkaW5nOiBbJ2ZsYWdzJ11cbiAgICAgIG1lbnRpb25lZFVzZXJJZHM6IFsnbWVudGlvbnMnXVxuICAgICAgbWVudGlvbkV2ZXJ5b25lOiBbJ2JpdGZpZWxkJ11cbiAgICAgIHBpbm5lZDogWydiaXRmaWVsZCddXG4gICAgICBzb3VyY2VNZXNzYWdlRGVsZXRlZDogWydmbGFncyddXG4gICAgICBzdXBwcmVzc0VtYmVkczogWydmbGFncyddXG4gICAgICBzdXBwcmVzc05vdGlmaWNhdGlvbnM6IFsnZmxhZ3MnXVxuICAgICAgdGltZXN0YW1wOiBbJ2lkJ11cbiAgICAgIHR0czogWydiaXRmaWVsZCddXG4gICAgICB1cmdlbnQ6IFsnZmxhZ3MnXVxuICAgIH1cbiAgICBhbHdheXNQcmVzZW50czogWydiaXRmaWVsZCcsICdmbGFncyddXG4gIH1cblxuICByb2xlOiB7XG4gICAgZGVwZW5kZW5jaWVzOiB7XG4gICAgICBob2lzdDogWyd0b2dnbGVzJ11cbiAgICAgIG1hbmFnZWQ6IFsndG9nZ2xlcyddXG4gICAgICBtZW50aW9uYWJsZTogWyd0b2dnbGVzJ11cbiAgICAgIHByZW1pdW1TdWJzY3JpYmVyOiBbJ3RvZ2dsZXMnXVxuICAgICAgYXZhaWxhYmxlRm9yUHVyY2hhc2U6IFsndG9nZ2xlcyddXG4gICAgICBndWlsZENvbm5lY3Rpb25zOiBbJ3RvZ2dsZXMnXVxuICAgIH1cbiAgICBhbHdheXNQcmVzZW50czogWydpbnRlcm5hbFRhZ3MnXVxuICB9XG5cbiAgdXNlcjoge1xuICAgIGRlcGVuZGVuY2llczoge1xuICAgICAgdGFnOiBbJ3VzZXJuYW1lJywgJ2Rpc2NyaW1pbmF0b3InXVxuICAgICAgYm90OiBbJ3RvZ2dsZXMnXVxuICAgICAgc3lzdGVtOiBbJ3RvZ2dsZXMnXVxuICAgICAgbWZhRW5hYmxlZDogWyd0b2dnbGVzJ11cbiAgICAgIHZlcmlmaWVkOiBbJ3RvZ2dsZXMnXVxuICAgIH1cbiAgICBhbHdheXNQcmVzZW50czogW11cbiAgfVxuXG4gIGVtb2ppOiB7XG4gICAgZGVwZW5kZW5jaWVzOiB7XG4gICAgICBhbmltYXRlZDogWyd0b2dnbGVzJ11cbiAgICAgIGF2YWlsYWJsZTogWyd0b2dnbGVzJ11cbiAgICAgIG1hbmFnZWQ6IFsndG9nZ2xlcyddXG4gICAgICByZXF1aXJlQ29sb25zOiBbJ3RvZ2dsZXMnXVxuICAgIH1cbiAgICBhbHdheXNQcmVzZW50czogWyd0b2dnbGVzJ11cbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRGVzaXJlZFByb3BlcnRpZXNPYmplY3Q8VCBleHRlbmRzIFJlY3Vyc2l2ZVBhcnRpYWw8VHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXM+LCBURGVmYXVsdCBleHRlbmRzIGJvb2xlYW4gPSBmYWxzZT4oXG4gIGRlc2lyZWRQcm9wZXJ0aWVzOiBULFxuICBkZWZhdWx0VmFsdWU6IFREZWZhdWx0ID0gZmFsc2UgYXMgVERlZmF1bHQsXG4pOiBDb21wbGV0ZURlc2lyZWRQcm9wZXJ0aWVzPFQsIFREZWZhdWx0PiB7XG4gIHJldHVybiB7XG4gICAgYWN0aXZpdHlJbnN0YW5jZToge1xuICAgICAgYXBwbGljYXRpb25JZDogZGVmYXVsdFZhbHVlLFxuICAgICAgaW5zdGFuY2VJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgbGF1bmNoSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGxvY2F0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1c2VyczogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuYWN0aXZpdHlJbnN0YW5jZSxcbiAgICB9LFxuICAgIGFjdGl2aXR5TG9jYXRpb246IHtcbiAgICAgIGNoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZ3VpbGRJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGtpbmQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmFjdGl2aXR5TG9jYXRpb24sXG4gICAgfSxcbiAgICBhdHRhY2htZW50OiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZmlsZW5hbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRpdGxlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjb250ZW50VHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgc2l6ZTogZGVmYXVsdFZhbHVlLFxuICAgICAgdXJsOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwcm94eVVybDogZGVmYXVsdFZhbHVlLFxuICAgICAgaGVpZ2h0OiBkZWZhdWx0VmFsdWUsXG4gICAgICB3aWR0aDogZGVmYXVsdFZhbHVlLFxuICAgICAgZXBoZW1lcmFsOiBkZWZhdWx0VmFsdWUsXG4gICAgICBkZXNjcmlwdGlvbjogZGVmYXVsdFZhbHVlLFxuICAgICAgZHVyYXRpb25fc2VjczogZGVmYXVsdFZhbHVlLFxuICAgICAgd2F2ZWZvcm06IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGZsYWdzOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5hdHRhY2htZW50LFxuICAgIH0sXG4gICAgY2hhbm5lbDoge1xuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgcG9zaXRpb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG5hbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRvcGljOiBkZWZhdWx0VmFsdWUsXG4gICAgICBiaXRyYXRlOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1c2VyTGltaXQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJhdGVMaW1pdFBlclVzZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJ0Y1JlZ2lvbjogZGVmYXVsdFZhbHVlLFxuICAgICAgdmlkZW9RdWFsaXR5TW9kZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZ3VpbGRJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgbGFzdFBpblRpbWVzdGFtcDogZGVmYXVsdFZhbHVlLFxuICAgICAgcGVybWlzc2lvbk92ZXJ3cml0ZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwZXJtaXNzaW9uczogZGVmYXVsdFZhbHVlLFxuICAgICAgbGFzdE1lc3NhZ2VJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgb3duZXJJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwbGljYXRpb25JZDogZGVmYXVsdFZhbHVlLFxuICAgICAgcGFyZW50SWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lbWJlckNvdW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZXNzYWdlQ291bnQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRlZmF1bHRBdXRvQXJjaGl2ZUR1cmF0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBmbGFnczogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwbGllZFRhZ3M6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGF2YWlsYWJsZVRhZ3M6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRlZmF1bHRGb3J1bUxheW91dDogZGVmYXVsdFZhbHVlLFxuICAgICAgZGVmYXVsdFJlYWN0aW9uRW1vamk6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRlZmF1bHRTb3J0T3JkZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRlZmF1bHRUaHJlYWRSYXRlTGltaXRQZXJVc2VyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpY29uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZW1iZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJlY2lwaWVudHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRvdGFsTWVzc2FnZVNlbnQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRocmVhZE1ldGFkYXRhOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5jaGFubmVsLFxuICAgIH0sXG4gICAgY29sbGVjdGlibGVzOiB7XG4gICAgICBuYW1lcGxhdGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmNvbGxlY3RpYmxlcyxcbiAgICB9LFxuICAgIGNvbXBvbmVudDoge1xuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgY3VzdG9tSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJlcXVpcmVkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBkaXNhYmxlZDogZGVmYXVsdFZhbHVlLFxuICAgICAgc3R5bGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGxhYmVsOiBkZWZhdWx0VmFsdWUsXG4gICAgICB2YWx1ZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZW1vamk6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVybDogZGVmYXVsdFZhbHVlLFxuICAgICAgY2hhbm5lbFR5cGVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBvcHRpb25zOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwbGFjZWhvbGRlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgbWluVmFsdWVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtYXhWYWx1ZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1pbkxlbmd0aDogZGVmYXVsdFZhbHVlLFxuICAgICAgbWF4TGVuZ3RoOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjb21wb25lbnRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBkZWZhdWx0VmFsdWVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBza3VJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFjY2Vzc29yeTogZGVmYXVsdFZhbHVlLFxuICAgICAgY29udGVudDogZGVmYXVsdFZhbHVlLFxuICAgICAgZGVzY3JpcHRpb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNwb2lsZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGl0ZW1zOiBkZWZhdWx0VmFsdWUsXG4gICAgICBkaXZpZGVyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzcGFjaW5nOiBkZWZhdWx0VmFsdWUsXG4gICAgICBmaWxlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZWRpYTogZGVmYXVsdFZhbHVlLFxuICAgICAgYWNjZW50Q29sb3I6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG5hbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNpemU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmNvbXBvbmVudCxcbiAgICB9LFxuICAgIGZvcnVtVGFnOiB7XG4gICAgICBlbW9qaUlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbW9qaU5hbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtb2RlcmF0ZWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG5hbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmZvcnVtVGFnLFxuICAgIH0sXG4gICAgZW1vamk6IHtcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBuYW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICByb2xlczogZGVmYXVsdFZhbHVlLFxuICAgICAgdXNlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuZW1vamksXG4gICAgfSxcbiAgICBkZWZhdWx0UmVhY3Rpb25FbW9qaToge1xuICAgICAgZW1vamlJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZW1vamlOYW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5kZWZhdWx0UmVhY3Rpb25FbW9qaSxcbiAgICB9LFxuICAgIGd1aWxkOiB7XG4gICAgICBhZmtUaW1lb3V0OiBkZWZhdWx0VmFsdWUsXG4gICAgICBhcHByb3hpbWF0ZU1lbWJlckNvdW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICBhcHByb3hpbWF0ZVByZXNlbmNlQ291bnQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRlZmF1bHRNZXNzYWdlTm90aWZpY2F0aW9uczogZGVmYXVsdFZhbHVlLFxuICAgICAgZGVzY3JpcHRpb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGV4cGxpY2l0Q29udGVudEZpbHRlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgbWF4TWVtYmVyczogZGVmYXVsdFZhbHVlLFxuICAgICAgbWF4UHJlc2VuY2VzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtYXhWaWRlb0NoYW5uZWxVc2VyczogZGVmYXVsdFZhbHVlLFxuICAgICAgbWZhTGV2ZWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG5hbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNoYW5uZWxzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbW9qaXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGljb25IYXNoOiBkZWZhdWx0VmFsdWUsXG4gICAgICBsYXJnZTogZGVmYXVsdFZhbHVlLFxuICAgICAgbWVtYmVyczogZGVmYXVsdFZhbHVlLFxuICAgICAgb3duZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHByZXNlbmNlczogZGVmYXVsdFZhbHVlLFxuICAgICAgcm9sZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHN0aWNrZXJzOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0b2dnbGVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1bmF2YWlsYWJsZTogZGVmYXVsdFZhbHVlLFxuICAgICAgdm9pY2VTdGF0ZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHdpZGdldEVuYWJsZWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG5zZndMZXZlbDogZGVmYXVsdFZhbHVlLFxuICAgICAgcHJlZmVycmVkTG9jYWxlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwcmVtaXVtU3Vic2NyaXB0aW9uQ291bnQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHByZW1pdW1UaWVyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzdGFnZUluc3RhbmNlczogZGVmYXVsdFZhbHVlLFxuICAgICAgc3lzdGVtQ2hhbm5lbEZsYWdzOiBkZWZhdWx0VmFsdWUsXG4gICAgICB2YW5pdHlVcmxDb2RlOiBkZWZhdWx0VmFsdWUsXG4gICAgICB2ZXJpZmljYXRpb25MZXZlbDogZGVmYXVsdFZhbHVlLFxuICAgICAgd2VsY29tZVNjcmVlbjogZGVmYXVsdFZhbHVlLFxuICAgICAgZGlzY292ZXJ5U3BsYXNoOiBkZWZhdWx0VmFsdWUsXG4gICAgICBqb2luZWRBdDogZGVmYXVsdFZhbHVlLFxuICAgICAgbWVtYmVyQ291bnQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNoYXJkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGljb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGJhbm5lcjogZGVmYXVsdFZhbHVlLFxuICAgICAgc3BsYXNoOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgb3duZXJJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgcGVybWlzc2lvbnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFma0NoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgd2lkZ2V0Q2hhbm5lbElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhcHBsaWNhdGlvbklkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzeXN0ZW1DaGFubmVsSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJ1bGVzQ2hhbm5lbElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwdWJsaWNVcGRhdGVzQ2hhbm5lbElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwcmVtaXVtUHJvZ3Jlc3NCYXJFbmFibGVkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzYWZldHlBbGVydHNDaGFubmVsSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1heFN0YWdlVmlkZW9DaGFubmVsVXNlcnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGluY2lkZW50c0RhdGE6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmd1aWxkLFxuICAgIH0sXG4gICAgaW5jaWRlbnRzRGF0YToge1xuICAgICAgZG1TcGFtRGV0ZWN0ZWRBdDogZGVmYXVsdFZhbHVlLFxuICAgICAgZG1zRGlzYWJsZWRVbnRpbDogZGVmYXVsdFZhbHVlLFxuICAgICAgaW52aXRlc0Rpc2FibGVkVW50aWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJhaWREZXRlY3RlZEF0OiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5pbmNpZGVudHNEYXRhLFxuICAgIH0sXG4gICAgaW50ZXJhY3Rpb246IHtcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhcHBsaWNhdGlvbklkOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0eXBlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBndWlsZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZ3VpbGRJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgY2hhbm5lbDogZGVmYXVsdFZhbHVlLFxuICAgICAgY2hhbm5lbElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZW1iZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVzZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRva2VuOiBkZWZhdWx0VmFsdWUsXG4gICAgICB2ZXJzaW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZXNzYWdlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBkYXRhOiBkZWZhdWx0VmFsdWUsXG4gICAgICBsb2NhbGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkTG9jYWxlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbnRpdGxlbWVudHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFwcFBlcm1pc3Npb25zOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhdXRob3JpemluZ0ludGVncmF0aW9uT3duZXJzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjb250ZXh0OiBkZWZhdWx0VmFsdWUsXG4gICAgICBhdHRhY2htZW50U2l6ZUxpbWl0OiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5pbnRlcmFjdGlvbixcbiAgICB9LFxuICAgIGludGVyYWN0aW9uQ2FsbGJhY2s6IHtcbiAgICAgIHR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhY3Rpdml0eUluc3RhbmNlSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJlc3BvbnNlTWVzc2FnZUVwaGVtZXJhbDogZGVmYXVsdFZhbHVlLFxuICAgICAgcmVzcG9uc2VNZXNzYWdlSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJlc3BvbnNlTWVzc2FnZUxvYWRpbmc6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmludGVyYWN0aW9uQ2FsbGJhY2ssXG4gICAgfSxcbiAgICBpbnRlcmFjdGlvbkNhbGxiYWNrUmVzcG9uc2U6IHtcbiAgICAgIGludGVyYWN0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICByZXNvdXJjZTogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuaW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlLFxuICAgIH0sXG4gICAgaW50ZXJhY3Rpb25SZXNvdXJjZToge1xuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgYWN0aXZpdHlJbnN0YW5jZTogZGVmYXVsdFZhbHVlLFxuICAgICAgbWVzc2FnZTogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuaW50ZXJhY3Rpb25SZXNvdXJjZSxcbiAgICB9LFxuICAgIGludml0ZToge1xuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgY2hhbm5lbElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjb2RlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjcmVhdGVkQXQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGludml0ZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1heEFnZTogZGVmYXVsdFZhbHVlLFxuICAgICAgbWF4VXNlczogZGVmYXVsdFZhbHVlLFxuICAgICAgdGFyZ2V0VHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgdGFyZ2V0VXNlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgdGFyZ2V0QXBwbGljYXRpb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRlbXBvcmFyeTogZGVmYXVsdFZhbHVlLFxuICAgICAgdXNlczogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwcm94aW1hdGVNZW1iZXJDb3VudDogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwcm94aW1hdGVQcmVzZW5jZUNvdW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICBndWlsZFNjaGVkdWxlZEV2ZW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICBzdGFnZUluc3RhbmNlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBleHBpcmVzQXQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGZsYWdzOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5pbnZpdGUsXG4gICAgfSxcbiAgICBtZW1iZXI6IHtcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBndWlsZElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1c2VyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBuaWNrOiBkZWZhdWx0VmFsdWUsXG4gICAgICByb2xlczogZGVmYXVsdFZhbHVlLFxuICAgICAgam9pbmVkQXQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHByZW1pdW1TaW5jZTogZGVmYXVsdFZhbHVlLFxuICAgICAgYXZhdGFyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBiYW5uZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHBlcm1pc3Npb25zOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjb21tdW5pY2F0aW9uRGlzYWJsZWRVbnRpbDogZGVmYXVsdFZhbHVlLFxuICAgICAgdG9nZ2xlczogZGVmYXVsdFZhbHVlLFxuICAgICAgYXZhdGFyRGVjb3JhdGlvbkRhdGE6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLm1lbWJlcixcbiAgICB9LFxuICAgIG1lc3NhZ2U6IHtcbiAgICAgIGFjdGl2aXR5OiBkZWZhdWx0VmFsdWUsXG4gICAgICBhcHBsaWNhdGlvbjogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwbGljYXRpb25JZDogZGVmYXVsdFZhbHVlLFxuICAgICAgYXR0YWNobWVudHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGF1dGhvcjogZGVmYXVsdFZhbHVlLFxuICAgICAgY2hhbm5lbElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjb21wb25lbnRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjb250ZW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICBlZGl0ZWRUaW1lc3RhbXA6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGVtYmVkczogZGVmYXVsdFZhbHVlLFxuICAgICAgZ3VpbGRJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGludGVyYWN0aW9uTWV0YWRhdGE6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGludGVyYWN0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZW1iZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lbnRpb25lZENoYW5uZWxJZHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lbnRpb25lZFJvbGVJZHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lbnRpb25zOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZXNzYWdlUmVmZXJlbmNlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZXNzYWdlU25hcHNob3RzOiBkZWZhdWx0VmFsdWUsXG4gICAgICByZWZlcmVuY2VkTWVzc2FnZTogZGVmYXVsdFZhbHVlLFxuICAgICAgbm9uY2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJlYWN0aW9uczogZGVmYXVsdFZhbHVlLFxuICAgICAgc3RpY2tlckl0ZW1zOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0aHJlYWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHdlYmhvb2tJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgcG9sbDogZGVmYXVsdFZhbHVlLFxuICAgICAgY2FsbDogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMubWVzc2FnZSxcbiAgICB9LFxuICAgIG1lc3NhZ2VTbmFwc2hvdDoge1xuICAgICAgbWVzc2FnZTogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMubWVzc2FnZVNuYXBzaG90LFxuICAgIH0sXG4gICAgbWVzc2FnZUludGVyYWN0aW9uTWV0YWRhdGE6IHtcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0eXBlOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1c2VyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhdXRob3JpemluZ0ludGVncmF0aW9uT3duZXJzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBvcmlnaW5hbFJlc3BvbnNlTWVzc2FnZUlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpbnRlcmFjdGVkTWVzc2FnZUlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0cmlnZ2VyaW5nSW50ZXJhY3Rpb25NZXRhZGF0YTogZGVmYXVsdFZhbHVlLFxuICAgICAgdGFyZ2V0TWVzc2FnZUlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0YXJnZXRVc2VyOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5tZXNzYWdlSW50ZXJhY3Rpb25NZXRhZGF0YSxcbiAgICB9LFxuICAgIG1lc3NhZ2VQaW46IHtcbiAgICAgIG1lc3NhZ2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHBpbm5lZEF0OiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5tZXNzYWdlUGluLFxuICAgIH0sXG4gICAgbWVzc2FnZUludGVyYWN0aW9uOiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgbWVtYmVyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBuYW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0eXBlOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1c2VyOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5tZXNzYWdlSW50ZXJhY3Rpb24sXG4gICAgfSxcbiAgICBtZXNzYWdlUmVmZXJlbmNlOiB7XG4gICAgICBtZXNzYWdlSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZ3VpbGRJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMubWVzc2FnZVJlZmVyZW5jZSxcbiAgICB9LFxuICAgIG1lc3NhZ2VDYWxsOiB7XG4gICAgICBwYXJ0aWNpcGFudHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGVuZGVkVGltZXN0YW1wOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5tZXNzYWdlQ2FsbCxcbiAgICB9LFxuICAgIG5hbWVwbGF0ZToge1xuICAgICAgc2t1SWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFzc2V0OiBkZWZhdWx0VmFsdWUsXG4gICAgICBsYWJlbDogZGVmYXVsdFZhbHVlLFxuICAgICAgcGFsZXR0ZTogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMubmFtZXBsYXRlLFxuICAgIH0sXG4gICAgcm9sZToge1xuICAgICAgbmFtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZ3VpbGRJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgcG9zaXRpb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNvbG9yOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjb2xvcnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwZXJtaXNzaW9uczogZGVmYXVsdFZhbHVlLFxuICAgICAgaWNvbjogZGVmYXVsdFZhbHVlLFxuICAgICAgdW5pY29kZUVtb2ppOiBkZWZhdWx0VmFsdWUsXG4gICAgICBmbGFnczogZGVmYXVsdFZhbHVlLFxuICAgICAgdGFnczogZGVmYXVsdFZhbHVlLFxuICAgICAgdG9nZ2xlczogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMucm9sZSxcbiAgICB9LFxuICAgIHJvbGVDb2xvcnM6IHtcbiAgICAgIHByaW1hcnlDb2xvcjogZGVmYXVsdFZhbHVlLFxuICAgICAgc2Vjb25kYXJ5Q29sb3I6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRlcnRpYXJ5Q29sb3I6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnJvbGVDb2xvcnMsXG4gICAgfSxcbiAgICBzY2hlZHVsZWRFdmVudDoge1xuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgY3JlYXRvcklkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzY2hlZHVsZWRTdGFydFRpbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNjaGVkdWxlZEVuZFRpbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGVudGl0eUlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjcmVhdG9yOiBkZWZhdWx0VmFsdWUsXG4gICAgICBuYW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICBkZXNjcmlwdGlvbjogZGVmYXVsdFZhbHVlLFxuICAgICAgcHJpdmFjeUxldmVsOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzdGF0dXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGVudGl0eVR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVzZXJDb3VudDogZGVmYXVsdFZhbHVlLFxuICAgICAgbG9jYXRpb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGltYWdlOiBkZWZhdWx0VmFsdWUsXG4gICAgICByZWN1cnJlbmNlUnVsZTogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuc2NoZWR1bGVkRXZlbnQsXG4gICAgfSxcbiAgICBzY2hlZHVsZWRFdmVudFJlY3VycmVuY2VSdWxlOiB7XG4gICAgICBzdGFydDogZGVmYXVsdFZhbHVlLFxuICAgICAgZW5kOiBkZWZhdWx0VmFsdWUsXG4gICAgICBmcmVxdWVuY3k6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGludGVydmFsOiBkZWZhdWx0VmFsdWUsXG4gICAgICBieVdlZWtkYXk6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGJ5TldlZWtkYXk6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGJ5TW9udGg6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGJ5TW9udGhEYXk6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGJ5WWVhckRheTogZGVmYXVsdFZhbHVlLFxuICAgICAgY291bnQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnNjaGVkdWxlZEV2ZW50UmVjdXJyZW5jZVJ1bGUsXG4gICAgfSxcbiAgICBzdGFnZUluc3RhbmNlOiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZ3VpbGRJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgY2hhbm5lbElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0b3BpYzogZGVmYXVsdFZhbHVlLFxuICAgICAgZ3VpbGRTY2hlZHVsZWRFdmVudElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5zdGFnZUluc3RhbmNlLFxuICAgIH0sXG4gICAgaW52aXRlU3RhZ2VJbnN0YW5jZToge1xuICAgICAgbWVtYmVyczogZGVmYXVsdFZhbHVlLFxuICAgICAgcGFydGljaXBhbnRDb3VudDogZGVmYXVsdFZhbHVlLFxuICAgICAgc3BlYWtlckNvdW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICB0b3BpYzogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuaW52aXRlU3RhZ2VJbnN0YW5jZSxcbiAgICB9LFxuICAgIG1lZGlhR2FsbGVyeUl0ZW06IHtcbiAgICAgIG1lZGlhOiBkZWZhdWx0VmFsdWUsXG4gICAgICBkZXNjcmlwdGlvbjogZGVmYXVsdFZhbHVlLFxuICAgICAgc3BvaWxlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMubWVkaWFHYWxsZXJ5SXRlbSxcbiAgICB9LFxuICAgIHN0aWNrZXI6IHtcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwYWNrSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG5hbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRlc2NyaXB0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0YWdzOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0eXBlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBmb3JtYXRUeXBlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhdmFpbGFibGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVzZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNvcnRWYWx1ZTogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuc3RpY2tlcixcbiAgICB9LFxuICAgIHVuZnVybGVkTWVkaWFJdGVtOiB7XG4gICAgICB1cmw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHByb3h5VXJsOiBkZWZhdWx0VmFsdWUsXG4gICAgICBoZWlnaHQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHdpZHRoOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjb250ZW50VHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgYXR0YWNobWVudElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy51bmZ1cmxlZE1lZGlhSXRlbSxcbiAgICB9LFxuICAgIHVzZXI6IHtcbiAgICAgIHVzZXJuYW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICBnbG9iYWxOYW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICBsb2NhbGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGZsYWdzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwcmVtaXVtVHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgcHVibGljRmxhZ3M6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFjY2VudENvbG9yOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZGlzY3JpbWluYXRvcjogZGVmYXVsdFZhbHVlLFxuICAgICAgYXZhdGFyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbWFpbDogZGVmYXVsdFZhbHVlLFxuICAgICAgYmFubmVyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhdmF0YXJEZWNvcmF0aW9uRGF0YTogZGVmYXVsdFZhbHVlLFxuICAgICAgdG9nZ2xlczogZGVmYXVsdFZhbHVlLFxuICAgICAgY29sbGVjdGlibGVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwcmltYXJ5R3VpbGQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnVzZXIsXG4gICAgfSxcbiAgICB1c2VyUHJpbWFyeUd1aWxkOiB7XG4gICAgICBpZGVudGl0eUd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGlkZW50aXR5RW5hYmxlZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdGFnOiBkZWZhdWx0VmFsdWUsXG4gICAgICBiYWRnZTogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMudXNlclByaW1hcnlHdWlsZCxcbiAgICB9LFxuICAgIGF2YXRhckRlY29yYXRpb25EYXRhOiB7XG4gICAgICBhc3NldDogZGVmYXVsdFZhbHVlLFxuICAgICAgc2t1SWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmF2YXRhckRlY29yYXRpb25EYXRhLFxuICAgIH0sXG4gICAgd2ViaG9vazoge1xuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdXNlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgbmFtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgYXZhdGFyOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0b2tlbjogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwbGljYXRpb25JZDogZGVmYXVsdFZhbHVlLFxuICAgICAgc291cmNlR3VpbGQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNvdXJjZUNoYW5uZWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVybDogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMud2ViaG9vayxcbiAgICB9LFxuICAgIGd1aWxkT25ib2FyZGluZzoge1xuICAgICAgZGVmYXVsdENoYW5uZWxJZHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGVuYWJsZWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1vZGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHByb21wdHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmd1aWxkT25ib2FyZGluZyxcbiAgICB9LFxuICAgIGd1aWxkT25ib2FyZGluZ1Byb21wdDoge1xuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGluT25ib2FyZGluZzogZGVmYXVsdFZhbHVlLFxuICAgICAgb3B0aW9uczogZGVmYXVsdFZhbHVlLFxuICAgICAgcmVxdWlyZWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNpbmdsZVNlbGVjdDogZGVmYXVsdFZhbHVlLFxuICAgICAgdGl0bGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmd1aWxkT25ib2FyZGluZ1Byb21wdCxcbiAgICB9LFxuICAgIGd1aWxkT25ib2FyZGluZ1Byb21wdE9wdGlvbjoge1xuICAgICAgY2hhbm5lbElkczogZGVmYXVsdFZhbHVlLFxuICAgICAgZGVzY3JpcHRpb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGVtb2ppOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgcm9sZUlkczogZGVmYXVsdFZhbHVlLFxuICAgICAgdGl0bGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmd1aWxkT25ib2FyZGluZ1Byb21wdE9wdGlvbixcbiAgICB9LFxuICAgIGVudGl0bGVtZW50OiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgc2t1SWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVzZXJJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZ3VpbGRJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwbGljYXRpb25JZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZGVsZXRlZDogZGVmYXVsdFZhbHVlLFxuICAgICAgc3RhcnRzQXQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGVuZHNBdDogZGVmYXVsdFZhbHVlLFxuICAgICAgY29uc3VtZWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmVudGl0bGVtZW50LFxuICAgIH0sXG4gICAgc2t1OiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwbGljYXRpb25JZDogZGVmYXVsdFZhbHVlLFxuICAgICAgbmFtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgc2x1ZzogZGVmYXVsdFZhbHVlLFxuICAgICAgZmxhZ3M6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnNrdSxcbiAgICB9LFxuICAgIHZvaWNlU3RhdGU6IHtcbiAgICAgIHJlcXVlc3RUb1NwZWFrVGltZXN0YW1wOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjaGFubmVsSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRvZ2dsZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNlc3Npb25JZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdXNlcklkOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy52b2ljZVN0YXRlLFxuICAgIH0sXG4gICAgcG9sbDoge1xuICAgICAgcXVlc3Rpb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFuc3dlcnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGV4cGlyeTogZGVmYXVsdFZhbHVlLFxuICAgICAgbGF5b3V0VHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgYWxsb3dNdWx0aXNlbGVjdDogZGVmYXVsdFZhbHVlLFxuICAgICAgcmVzdWx0czogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMucG9sbCxcbiAgICB9LFxuICAgIHBvbGxBbnN3ZXI6IHtcbiAgICAgIGFuc3dlcklkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwb2xsTWVkaWE6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnBvbGxBbnN3ZXIsXG4gICAgfSxcbiAgICBwb2xsUmVzdWx0OiB7XG4gICAgICBpc0ZpbmFsaXplZDogZGVmYXVsdFZhbHVlLFxuICAgICAgYW5zd2VyQ291bnRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5wb2xsUmVzdWx0LFxuICAgIH0sXG4gICAgcG9sbEFuc3dlckNvdW50OiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgY291bnQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lVm90ZWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnBvbGxBbnN3ZXJDb3VudCxcbiAgICB9LFxuICAgIHBvbGxNZWRpYToge1xuICAgICAgdGV4dDogZGVmYXVsdFZhbHVlLFxuICAgICAgZW1vamk6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnBvbGxNZWRpYSxcbiAgICB9LFxuICAgIHN1YnNjcmlwdGlvbjoge1xuICAgICAgY2FuY2VsZWRBdDogZGVmYXVsdFZhbHVlLFxuICAgICAgY291bnRyeTogZGVmYXVsdFZhbHVlLFxuICAgICAgY3VycmVudFBlcmlvZEVuZDogZGVmYXVsdFZhbHVlLFxuICAgICAgY3VycmVudFBlcmlvZFN0YXJ0OiBkZWZhdWx0VmFsdWUsXG4gICAgICByZW5ld2FsU2t1SWRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbnRpdGxlbWVudElkczogZGVmYXVsdFZhbHVlLFxuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNrdUlkczogZGVmYXVsdFZhbHVlLFxuICAgICAgc3RhdHVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1c2VySWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnN1YnNjcmlwdGlvbixcbiAgICB9LFxuICAgIHNvdW5kYm9hcmRTb3VuZDoge1xuICAgICAgYXZhaWxhYmxlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbW9qaUlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbW9qaU5hbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG5hbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNvdW5kSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVzZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHZvbHVtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuc291bmRib2FyZFNvdW5kLFxuICAgIH0sXG4gICAgbG9iYnk6IHtcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhcHBsaWNhdGlvbklkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZXRhZGF0YTogZGVmYXVsdFZhbHVlLFxuICAgICAgbWVtYmVyczogZGVmYXVsdFZhbHVlLFxuICAgICAgbGlua2VkQ2hhbm5lbDogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMubG9iYnksXG4gICAgfSxcbiAgICBsb2JieU1lbWJlcjoge1xuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1ldGFkYXRhOiBkZWZhdWx0VmFsdWUsXG4gICAgICBmbGFnczogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMubG9iYnlNZW1iZXIsXG4gICAgfSxcbiAgfSBzYXRpc2ZpZXMgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMgYXMgQ29tcGxldGVEZXNpcmVkUHJvcGVydGllczxULCBURGVmYXVsdD5cbn1cblxuLyoqIEBwcml2YXRlIFRoaXMgaXMgc3ViamVjdCB0byBicmVha2luZyBjaGFuZ2VzIHdpdGhvdXQgbm90aWNlcyAqL1xuZXhwb3J0IHR5cGUgS2V5QnlWYWx1ZTxUT2JqLCBUVmFsdWU+ID0ge1xuICBbS2V5IGluIGtleW9mIFRPYmpdOiBUT2JqW0tleV0gZXh0ZW5kcyBUVmFsdWUgPyBLZXkgOiBuZXZlclxufVtrZXlvZiBUT2JqXVxuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgdHlwZSBDb21wbGV0ZTxUT2JqLCBURGVmYXVsdD4gPSB7XG4gIFtLIGluIGtleW9mIFRPYmpdLT86IHVuZGVmaW5lZCBleHRlbmRzIFRPYmpbS10gPyBURGVmYXVsdCA6IEV4Y2x1ZGU8VE9ialtLXSwgdW5kZWZpbmVkPlxufVxuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgdHlwZSBKb2luVHVwbGU8VCBleHRlbmRzIHN0cmluZ1tdLCBURGVsaW1pdGVyIGV4dGVuZHMgc3RyaW5nPiA9IFQgZXh0ZW5kcyByZWFkb25seSBbaW5mZXIgRiBleHRlbmRzIHN0cmluZywgLi4uaW5mZXIgUiBleHRlbmRzIHN0cmluZ1tdXVxuICA/IFJbJ2xlbmd0aCddIGV4dGVuZHMgMFxuICAgID8gRlxuICAgIDogYCR7Rn0ke1REZWxpbWl0ZXJ9JHtKb2luVHVwbGU8UiwgVERlbGltaXRlcj59YFxuICA6ICcnXG5cbi8qKiBAcHJpdmF0ZSBUaGlzIGlzIHN1YmplY3QgdG8gYnJlYWtpbmcgY2hhbmdlcyB3aXRob3V0IG5vdGljZXMgKi9cbmV4cG9ydCB0eXBlIERlc2lyZWRQcm9wZXJ0aWVzTWV0YWRhdGEgPSB7XG4gIFtLIGluIGtleW9mIFRyYW5zZm9ybWVyc09iamVjdHNdOiB7XG4gICAgZGVwZW5kZW5jaWVzPzoge1xuICAgICAgW0tleSBpbiBrZXlvZiBUcmFuc2Zvcm1lcnNPYmplY3RzW0tdXT86IChrZXlvZiBUcmFuc2Zvcm1lcnNPYmplY3RzW0tdKVtdXG4gICAgfVxuICAgIGFsd2F5c1ByZXNlbnRzPzogKGtleW9mIFRyYW5zZm9ybWVyc09iamVjdHNbS10pW11cbiAgfVxufVxuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgdHlwZSBEZXNpcmFibGVQcm9wZXJ0aWVzPFxuICBUIGV4dGVuZHMgVHJhbnNmb3JtZXJzT2JqZWN0c1trZXlvZiBUcmFuc2Zvcm1lcnNPYmplY3RzXSxcbiAgVEtleSBleHRlbmRzIGtleW9mIFRyYW5zZm9ybWVyc09iamVjdHMgPSBLZXlCeVZhbHVlPFRyYW5zZm9ybWVyc09iamVjdHMsIFQ+LFxuPiA9IEV4Y2x1ZGU8XG4gIGtleW9mIFQsXG4gIC8vIEV4Y2x1ZGUgdGhlIHByb3BzIHRoYXQgZGVwZW5kIG9uIHNvbWV0aGluZyBlbHNlIGZyb20gdGhlIGRlc2lyYWJsZSBwcm9wZXJ0aWVzXG4gIHwga2V5b2YgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXNNZXRhZGF0YVtUS2V5XVsnZGVwZW5kZW5jaWVzJ11cbiAgLy8gQ2hlY2sgaWYgYWxsIHRoZSBrZXlzIGFyZSBcImFsd2F5cyBwcmVzZW50c1wiLCBpZiB0aGlzIGlzIHRoZSBjYXNlIGl0IG1lYW5zIHdlIGRpZCBub3Qgc3BlY2lmeSBhbnkgYWx3YXlzIHByZXNlbnQga2V5XG4gIHwgKGtleW9mIFQgZXh0ZW5kcyBOb25OdWxsYWJsZTxUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllc01ldGFkYXRhW1RLZXldWydhbHdheXNQcmVzZW50cyddPltudW1iZXJdXG4gICAgICA/IG5ldmVyXG4gICAgICA6IE5vbk51bGxhYmxlPFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzTWV0YWRhdGFbVEtleV1bJ2Fsd2F5c1ByZXNlbnRzJ10+W251bWJlcl0pXG4+XG5cbi8qKiBAcHJpdmF0ZSBUaGlzIGlzIHN1YmplY3QgdG8gYnJlYWtpbmcgY2hhbmdlcyB3aXRob3V0IG5vdGljZXMgKi9cbmV4cG9ydCB0eXBlIERlc2lyZWRQcm9wZXJ0aWVzTWFwcGVyPFQgZXh0ZW5kcyBUcmFuc2Zvcm1lcnNPYmplY3RzW2tleW9mIFRyYW5zZm9ybWVyc09iamVjdHNdPiA9IHtcbiAgW0tleSBpbiBEZXNpcmFibGVQcm9wZXJ0aWVzPFQ+XTogYm9vbGVhblxufVxuXG5kZWNsYXJlIGNvbnN0IFR5cGVFcnJvclN5bWJvbDogdW5pcXVlIHN5bWJvbFxuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgaW50ZXJmYWNlIERlc2lyZWRQcm9wZXJ0aWVzRXJyb3I8VCBleHRlbmRzIHN0cmluZz4ge1xuICBbVHlwZUVycm9yU3ltYm9sXTogVFxufVxuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgdHlwZSBBcmVEZXBlbmRlbmNpZXNTYXRpc2ZpZWQ8VCwgVERlcGVuZGVuY2llcyBleHRlbmRzIFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPiB8IHVuZGVmaW5lZCwgVFByb3BzPiA9IHtcbiAgW0sgaW4ga2V5b2YgVF06IElzS2V5RGVzaXJlZDxUW0tdLCBURGVwZW5kZW5jaWVzLCBUUHJvcHM+IGV4dGVuZHMgdHJ1ZSA/IHRydWUgOiBmYWxzZVxufVxuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgdHlwZSBJc0tleURlc2lyZWQ8VEtleSwgVERlcGVuZGVuY2llcyBleHRlbmRzIFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPiB8IHVuZGVmaW5lZCwgVFByb3BzPiA9IFRLZXkgZXh0ZW5kcyBrZXlvZiBUUHJvcHMgLy8gVGhlIGtleSBoYXMgYSBkZXNpcmVkIHByb3BzP1xuICA/IC8vIFllcywgaXMgaXQgdHJ1ZT9cbiAgICBUUHJvcHNbVEtleV0gZXh0ZW5kcyB0cnVlXG4gICAgPyAvLyBZZXMsIHRoaXMgaXMgYSBrZXkgdG8gaW5jbHVkZVxuICAgICAgdHJ1ZVxuICAgIDogLy8gTm8sIHRoaXMgaXMgYSBrZXkgdG8gZXhjbHVkZVxuICAgICAgRGVzaXJlZFByb3BlcnRpZXNFcnJvcjxgVGhpcyBwcm9wZXJ0eSBpcyBub3Qgc2V0IGFzIGRlc2lyZWQgaW4gZGVzaXJlZFByb3BlcnRpZXMgb3B0aW9uIGluIGNyZWF0ZUJvdCgpLCBzbyB5b3UgY2FuJ3QgdXNlIGl0LiBNb3JlIGluZm8gaGVyZTogaHR0cHM6Ly9kaXNjb3JkZW5vLmpzLm9yZy9kZXNpcmVkLXByb3BzYD5cbiAgOiAvLyBObywgaXQgaXMgYSBwcm9wcyB3aXRoIGRlcGVuZGVuY2llcz9cbiAgICBUS2V5IGV4dGVuZHMga2V5b2YgVERlcGVuZGVuY2llc1xuICAgID8gLy8gWWVzLCBoYXMgYWxsIG9mIGl0cyBkZXBlbmRlbmNpZXMgc2F0aXNmaWVkP1xuICAgICAgQXJlRGVwZW5kZW5jaWVzU2F0aXNmaWVkPFREZXBlbmRlbmNpZXNbVEtleV0sIFREZXBlbmRlbmNpZXMsIFRQcm9wcz4gZXh0ZW5kcyB0cnVlW11cbiAgICAgID8gLy8gWWVzLCB0aGlzIGlzIGEga2V5IHRvIGluY2x1ZGVcbiAgICAgICAgdHJ1ZVxuICAgICAgOiAvLyBObywgdGhpcyBpcyBhIGtleSB0byBub3QgaW5jbHVkZVxuICAgICAgICBEZXNpcmVkUHJvcGVydGllc0Vycm9yPGBUaGlzIHByb3BlcnR5IGRlcGVuZHMgb24gdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzOiAke0pvaW5UdXBsZTxOb25OdWxsYWJsZTxURGVwZW5kZW5jaWVzPltUS2V5XSwgJywgJz59LiBOb3QgYWxsIG9mIHRoZXNlIHByb3BzIGFyZSBzZXQgYXMgZGVzaXJlZCBpbiBkZXNpcmVkUHJvcGVydGllcyBvcHRpb24gaW4gY3JlYXRlQm90KCksIHNvIHlvdSBjYW4ndCB1c2UgaXQuIE1vcmUgaW5mbyBoZXJlOiBodHRwczovL2Rpc2NvcmRlbm8uanMub3JnL2Rlc2lyZWQtcHJvcHNgPlxuICAgIDogLy8gTm8sIHdlIGluY2x1ZGUgaXQgYnV0IGl0IGRvZXMgbm90IGhhdmUgbmVpdGhlciBwcm9wcyBub3IgZGVwZW5kZW5jaWVzXG4gICAgICB0cnVlXG5cbi8qKiBUaGUgYmVoYXZpb3IgaXQgc2hvdWxkIGJlIHVzZWQgd2hlbiByZXNvbHZpbmcgYW4gdW5kZXNpcmVkIHByb3BlcnR5ICovXG5leHBvcnQgZW51bSBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yIHtcbiAgLyoqIFdoZW4gdGhpcyBiZWhhdmlvciBpcyB1c2VkIHRoZSBrZXkgd2lsbCBiZSBtaXNzaW5nIGNvbXBsZXRlbHkgKi9cbiAgUmVtb3ZlS2V5LFxuICAvKiogV2hlbiB0aGlzIGJlaGF2aW9yIGlzIHVzZWQgdGhlIGtleSB3aWxsIGJlIGEgc3RyaW5nIGV4cGxhaW5pbmcgd2h5IHRoZSBwcm9wZXJ0eSBpcyBkaXNhYmxlZCAqL1xuICBDaGFuZ2VUeXBlLFxufVxuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgdHlwZSBSZW1vdmVLZXlJZlVuZGVzaXJlZDxLZXksIFQsIFRQcm9wcyBleHRlbmRzIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzPiA9IElzS2V5RGVzaXJlZDxcbiAgS2V5LFxuICBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllc01ldGFkYXRhW0tleUJ5VmFsdWU8VHJhbnNmb3JtZXJzT2JqZWN0cywgVD5dWydkZXBlbmRlbmNpZXMnXSxcbiAgVFByb3BzW0tleUJ5VmFsdWU8VHJhbnNmb3JtZXJzT2JqZWN0cywgVD5dXG4+IGV4dGVuZHMgdHJ1ZVxuICA/IEtleVxuICA6IG5ldmVyXG5cbi8qKiBAcHJpdmF0ZSBUaGlzIGlzIHN1YmplY3QgdG8gYnJlYWtpbmcgY2hhbmdlcyB3aXRob3V0IG5vdGljZXMgKi9cbmV4cG9ydCB0eXBlIEdldEVycm9yV2hlblVuZGVzaXJlZDxcbiAgS2V5IGV4dGVuZHMga2V5b2YgVCxcbiAgVCxcbiAgVFByb3BzIGV4dGVuZHMgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsXG4gIFRCZWhhdmlvciBleHRlbmRzIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3IsXG4gIC8vIFRoaXMgZ2VuZXJpYyB2YWx1ZSBpcyB1c2VkIGFzIGFuIGFsaWFzXG4gIFRJc0Rlc2lyZWQgPSBJc0tleURlc2lyZWQ8XG4gICAgS2V5LFxuICAgIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzTWV0YWRhdGFbS2V5QnlWYWx1ZTxUcmFuc2Zvcm1lcnNPYmplY3RzLCBUPl1bJ2RlcGVuZGVuY2llcyddLFxuICAgIFRQcm9wc1tLZXlCeVZhbHVlPFRyYW5zZm9ybWVyc09iamVjdHMsIFQ+XVxuICA+LFxuPiA9IFRJc0Rlc2lyZWQgZXh0ZW5kcyB0cnVlID8gVHJhbnNmb3JtUHJvcGVydHk8VFtLZXldLCBUUHJvcHMsIFRCZWhhdmlvcj4gOiBUSXNEZXNpcmVkXG5cbi8qKiBAcHJpdmF0ZSBUaGlzIGlzIHN1YmplY3QgdG8gYnJlYWtpbmcgY2hhbmdlcyB3aXRob3V0IG5vdGljZXMgKi9cbmV4cG9ydCB0eXBlIElzT2JqZWN0PFQ+ID0gVCBleHRlbmRzIG9iamVjdCA/IChUIGV4dGVuZHMgRnVuY3Rpb24gPyBmYWxzZSA6IHRydWUpIDogZmFsc2VcblxuLy8gSWYgdGhlIG9iamVjdCBpcyBhIHRyYW5zZm9ybWVkIG9iamVjdCwgYSBjb2xsZWN0aW9uIG9mIHRyYW5zZm9ybWVkIG9iamVjdCBvciBhbiBhcnJheSBvZiB0cmFuc2Zvcm1lZCBvYmplY3RzIHdlIG5lZWQgdG8gYXBwbHkgdGhlIGRlc2lyZWQgcHJvcHMgdG8gdGhlbSBhcyB3ZWxsXG4vLyBOT1RFOiBjaGFuZ2luZyB0aGUgb3JkZXIgb2YgdGhlc2UgdGVybmFyaWVzIGNhbiBjYXVzZSBidWdzLCBmb3IgdGhpcyByZWFzb24gd2UgY2hlY2sgaW4gdGhpcyBvcmRlcjpcbi8vICAgICAgLSBJcyBpdCBhbiBhcnJheT9cbi8vICAgICAgLSBJcyBpdCBhIGNvbGxlY3Rpb24/XG4vLyAgICAgIC0gSXMgaXQgYSBib3Q/XG4vLyAgICAgIC0gSXMgaXQgYSB0cmFuc2Zvcm1lZCBvYmplY3Q/XG4vLyAgICAgIC0gSXMgaXQgYW4gaW50ZXJhY3Rpb24gcmVzb2x2ZWQgZGF0YSBtZW1iZXI/XG4vLyAgICAgIC0gSXMgaXQgYW4gaW50ZXJhY3Rpb24gcmVzb2x2ZWQgZGF0YSBjaGFubmVsP1xuLy8gICAgICAtIElzIGl0IGFuIG9iamVjdD9cbi8vICAgICAgLSBJdCdzIG5vdCBhbiBvYmplY3RcblxuLyoqXG4gKiBUcmFuc2Zvcm0gYSBnZW5lcmljIG9iamVjdCBwcm9wZXJ0aWVzIGJhc2VkIG9uIHRoZSBkZXNpcmVkIHByb3BlcnRpZXMgYW5kIGJlaGF2aW9yIGZvciBvdGhlciB0cmFuc2Zvcm1lciBvYmplY3RzIGluIHRoZSBvYmplY3QuXG4gKi9cbmV4cG9ydCB0eXBlIFRyYW5zZm9ybVByb3BlcnR5PFQsIFRQcm9wcyBleHRlbmRzIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBUQmVoYXZpb3IgZXh0ZW5kcyBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPiA9IFQgZXh0ZW5kcyBBcnJheTxpbmZlciBVPiAvLyBpcyBpdCBhbiBhcnJheT9cbiAgPyAvLyBZZXMsIGFwcGx5IHRoZSBkZXNpcmVkIHByb3BzXG4gICAgVHJhbnNmb3JtUHJvcGVydHk8VSwgVFByb3BzLCBUQmVoYXZpb3I+W11cbiAgOiAvLyBObywgaXMgaXQgYSBjb2xsZWN0aW9uP1xuICAgIFQgZXh0ZW5kcyBDb2xsZWN0aW9uPGluZmVyIFUsIGluZmVyIFVPYmo+XG4gICAgPyAvLyBZZXMsIGNoZWNrIGZvciBuZXN0ZWQgcHJvcHJpZXRpZXNcbiAgICAgIENvbGxlY3Rpb248VSwgVHJhbnNmb3JtUHJvcGVydHk8VU9iaiwgVFByb3BzLCBUQmVoYXZpb3I+PlxuICAgIDogLy8gTm8sIGlzIGl0IGEgQm90P1xuICAgICAgVCBleHRlbmRzIEJvdFxuICAgICAgPyAvLyBZZXMsIHJldHVybiBhIGJvdCB3aXRoIHRoZSBjb3JyZWN0IHNldCBvZiBwcm9wcyAmIGJlaGF2aW9yXG4gICAgICAgIEJvdDxUUHJvcHMsIFRCZWhhdmlvcj5cbiAgICAgIDogLy8gTm8sIGlzIGl0IGEgdHJhbnNmb3JtZWQgb2JqZWN0P1xuICAgICAgICBUIGV4dGVuZHMgVHJhbnNmb3JtZXJzT2JqZWN0c1trZXlvZiBUcmFuc2Zvcm1lcnNPYmplY3RzXVxuICAgICAgICA/IC8vIFllcywgYXBwbHkgdGhlIGRlc2lyZWQgcHJvcHNcbiAgICAgICAgICBTZXR1cERlc2lyZWRQcm9wczxULCBUUHJvcHMsIFRCZWhhdmlvcj5cbiAgICAgICAgOiAvLyBObywgaXMgaXQgYW4gaW50ZXJhY3Rpb24gcmVzb2x2ZWQgZGF0YSBtZW1iZXI/IHwgV2UgbmVlZCB0byBjaGVjayB0aGlzIGhlcmUgYmVjYXVzZSB0aGUgdHlwZSBpdHNlbGYgaGFzIG5vdCB3YXkgb2YgZ2V0dGluZyB0aGUgZGVzaXJlZCBwcm9wc1xuICAgICAgICAgIFQgZXh0ZW5kcyBJbnRlcmFjdGlvblJlc29sdmVkRGF0YU1lbWJlcjxUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcj5cbiAgICAgICAgICA/IC8vIFllcywgYXBwbHkgdGhlIGRlc2lyZWQgcHJvcHNcbiAgICAgICAgICAgIEludGVyYWN0aW9uUmVzb2x2ZWREYXRhTWVtYmVyPFRQcm9wcywgVEJlaGF2aW9yPlxuICAgICAgICAgIDogLy8gTm8sIGlzIGl0IGFuIGludGVyYWN0aW9uIHJlc29sdmVkIGRhdGEgY2hhbm5lbD8gfCBXZSBuZWVkIHRvIGNoZWNrIHRoaXMgaGVyZSBiZWNhdXNlIHRoZSB0eXBlIGl0c2VsZiBoYXMgbm90IHdheSBvZiBnZXR0aW5nIHRoZSBkZXNpcmVkIHByb3BzXG4gICAgICAgICAgICBUIGV4dGVuZHMgSW50ZXJhY3Rpb25SZXNvbHZlZERhdGFDaGFubmVsPFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPlxuICAgICAgICAgICAgPyAvLyBZZXMsIGFwcGx5IHRoZSBkZXNpcmVkIHByb3BzXG4gICAgICAgICAgICAgIEludGVyYWN0aW9uUmVzb2x2ZWREYXRhQ2hhbm5lbDxUUHJvcHMsIFRCZWhhdmlvcj5cbiAgICAgICAgICAgIDogLy8gSXMgaXQgYW4gb2JqZWN0P1xuICAgICAgICAgICAgICBJc09iamVjdDxUPiBleHRlbmRzIHRydWVcbiAgICAgICAgICAgICAgPyAvLyBZZXMsIHdlIG5lZWQgdG8gZW5zdXJlIG5lc3RlZCBpbnNpZGUgdGhlcmUgYXJlbid0IHRyYW5zZm9ybWVkIG9iamVjdHNcbiAgICAgICAgICAgICAgICB7IFtLIGluIGtleW9mIFRdOiBUcmFuc2Zvcm1Qcm9wZXJ0eTxUW0tdLCBUUHJvcHMsIFRCZWhhdmlvcj4gfVxuICAgICAgICAgICAgICA6IC8vIE5vLCB0aGlzIGlzIGEgbm9ybWFsIHZhbHVlIHN1Y2ggYXMgc3RyaW5nIC8gYmlnaW50IC8gbnVtYmVyXG4gICAgICAgICAgICAgICAgVFxuXG4vKipcbiAqIEFwcGx5IGRlc2lyZWQgcHJvcGVydGllcyB0byBhIHRyYW5zZm9ybWVyIG9iamVjdC5cbiAqL1xuZXhwb3J0IHR5cGUgU2V0dXBEZXNpcmVkUHJvcHM8XG4gIFQgZXh0ZW5kcyBUcmFuc2Zvcm1lcnNPYmplY3RzW2tleW9mIFRyYW5zZm9ybWVyc09iamVjdHNdLFxuICBUUHJvcHMgZXh0ZW5kcyBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcyxcbiAgVEJlaGF2aW9yIGV4dGVuZHMgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvciA9IERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3IuUmVtb3ZlS2V5LFxuPiA9IHtcbiAgLy8gV2hlbiB0aGUgYmVoYXZpb3IgaXMgdG8gcmVtb3ZlIHRoZSBrZXkgd2UgdXNlIHRoZSBSZW1vdmVLZXlJZlVuZGVzaXJlZCB0eXBlIGhlbHBlciBlbHNlIHJldHVybiB0aGUgS2V5IGFzIGlzXG4gIFtLZXkgaW4ga2V5b2YgVCBhcyBUQmVoYXZpb3IgZXh0ZW5kcyBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yLlJlbW92ZUtleVxuICAgID8gUmVtb3ZlS2V5SWZVbmRlc2lyZWQ8S2V5LCBULCBUUHJvcHM+XG4gICAgOiBLZXldOiAvLyBXaGVuIHRoZSBiZWhhdmlvciBpcyB0byBjaGFuZ2UgdGhlIHR5cGUgd2UgdXNlIHRoZSBHZXRFcnJvcldoZW5VbmRlc2lyZWQgdHlwZSBoZWxwZXIgZWxzZSBhcHBseSB0aGUgZGVzaXJlZCBwcm9wcyB0byB0aGUga2V5IGFuZCByZXR1cm5cbiAgVEJlaGF2aW9yIGV4dGVuZHMgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvci5DaGFuZ2VUeXBlXG4gICAgPyBHZXRFcnJvcldoZW5VbmRlc2lyZWQ8S2V5LCBULCBUUHJvcHMsIFRCZWhhdmlvcj5cbiAgICA6IFRyYW5zZm9ybVByb3BlcnR5PFRbS2V5XSwgVFByb3BzLCBUQmVoYXZpb3I+XG59XG5cbi8qKlxuICogVGhlIGRlc2lyZWQgcHJvcGVydGllcyBmb3IgZWFjaCB0cmFuc2Zvcm1lciBvYmplY3QuXG4gKi9cbmV4cG9ydCB0eXBlIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzID0ge1xuICBbS2V5IGluIGtleW9mIFRyYW5zZm9ybWVyc09iamVjdHNdOiBEZXNpcmVkUHJvcGVydGllc01hcHBlcjxUcmFuc2Zvcm1lcnNPYmplY3RzW0tleV0+XG59XG5cbi8qKiBAcHJpdmF0ZSBUaGlzIGlzIHN1YmplY3QgdG8gYnJlYWtpbmcgY2hhbmdlcyB3aXRob3V0IG5vdGljZXMgKi9cbmV4cG9ydCB0eXBlIENvbXBsZXRlRGVzaXJlZFByb3BlcnRpZXM8VCBleHRlbmRzIFJlY3Vyc2l2ZVBhcnRpYWw8VHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXM+LCBUVERlZmF1bHQgZXh0ZW5kcyBib29sZWFuID0gZmFsc2U+ID0ge1xuICBbSyBpbiBrZXlvZiBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllc106IENvbXBsZXRlPFBhcnRpYWw8VHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXNbS10+ICYgVFtLXSwgVFREZWZhdWx0PlxufVxuIl0sIm5hbWVzIjpbImNyZWF0ZURlc2lyZWRQcm9wZXJ0aWVzT2JqZWN0IiwiZGVzaXJlZFByb3BlcnRpZXMiLCJkZWZhdWx0VmFsdWUiLCJhY3Rpdml0eUluc3RhbmNlIiwiYXBwbGljYXRpb25JZCIsImluc3RhbmNlSWQiLCJsYXVuY2hJZCIsImxvY2F0aW9uIiwidXNlcnMiLCJhY3Rpdml0eUxvY2F0aW9uIiwiY2hhbm5lbElkIiwiZ3VpbGRJZCIsImlkIiwia2luZCIsImF0dGFjaG1lbnQiLCJmaWxlbmFtZSIsInRpdGxlIiwiY29udGVudFR5cGUiLCJzaXplIiwidXJsIiwicHJveHlVcmwiLCJoZWlnaHQiLCJ3aWR0aCIsImVwaGVtZXJhbCIsImRlc2NyaXB0aW9uIiwiZHVyYXRpb25fc2VjcyIsIndhdmVmb3JtIiwiZmxhZ3MiLCJjaGFubmVsIiwidHlwZSIsInBvc2l0aW9uIiwibmFtZSIsInRvcGljIiwiYml0cmF0ZSIsInVzZXJMaW1pdCIsInJhdGVMaW1pdFBlclVzZXIiLCJydGNSZWdpb24iLCJ2aWRlb1F1YWxpdHlNb2RlIiwibGFzdFBpblRpbWVzdGFtcCIsInBlcm1pc3Npb25PdmVyd3JpdGVzIiwicGVybWlzc2lvbnMiLCJsYXN0TWVzc2FnZUlkIiwib3duZXJJZCIsInBhcmVudElkIiwibWVtYmVyQ291bnQiLCJtZXNzYWdlQ291bnQiLCJkZWZhdWx0QXV0b0FyY2hpdmVEdXJhdGlvbiIsImFwcGxpZWRUYWdzIiwiYXZhaWxhYmxlVGFncyIsImRlZmF1bHRGb3J1bUxheW91dCIsImRlZmF1bHRSZWFjdGlvbkVtb2ppIiwiZGVmYXVsdFNvcnRPcmRlciIsImRlZmF1bHRUaHJlYWRSYXRlTGltaXRQZXJVc2VyIiwiaWNvbiIsIm1lbWJlciIsInJlY2lwaWVudHMiLCJ0b3RhbE1lc3NhZ2VTZW50IiwidGhyZWFkTWV0YWRhdGEiLCJjb2xsZWN0aWJsZXMiLCJuYW1lcGxhdGUiLCJjb21wb25lbnQiLCJjdXN0b21JZCIsInJlcXVpcmVkIiwiZGlzYWJsZWQiLCJzdHlsZSIsImxhYmVsIiwidmFsdWUiLCJlbW9qaSIsImNoYW5uZWxUeXBlcyIsIm9wdGlvbnMiLCJwbGFjZWhvbGRlciIsIm1pblZhbHVlcyIsIm1heFZhbHVlcyIsIm1pbkxlbmd0aCIsIm1heExlbmd0aCIsImNvbXBvbmVudHMiLCJkZWZhdWx0VmFsdWVzIiwic2t1SWQiLCJhY2Nlc3NvcnkiLCJjb250ZW50Iiwic3BvaWxlciIsIml0ZW1zIiwiZGl2aWRlciIsInNwYWNpbmciLCJmaWxlIiwibWVkaWEiLCJhY2NlbnRDb2xvciIsImZvcnVtVGFnIiwiZW1vamlJZCIsImVtb2ppTmFtZSIsIm1vZGVyYXRlZCIsInJvbGVzIiwidXNlciIsImd1aWxkIiwiYWZrVGltZW91dCIsImFwcHJveGltYXRlTWVtYmVyQ291bnQiLCJhcHByb3hpbWF0ZVByZXNlbmNlQ291bnQiLCJkZWZhdWx0TWVzc2FnZU5vdGlmaWNhdGlvbnMiLCJleHBsaWNpdENvbnRlbnRGaWx0ZXIiLCJtYXhNZW1iZXJzIiwibWF4UHJlc2VuY2VzIiwibWF4VmlkZW9DaGFubmVsVXNlcnMiLCJtZmFMZXZlbCIsImNoYW5uZWxzIiwiZW1vamlzIiwiaWNvbkhhc2giLCJsYXJnZSIsIm1lbWJlcnMiLCJvd25lciIsInByZXNlbmNlcyIsInN0aWNrZXJzIiwidG9nZ2xlcyIsInVuYXZhaWxhYmxlIiwidm9pY2VTdGF0ZXMiLCJ3aWRnZXRFbmFibGVkIiwibnNmd0xldmVsIiwicHJlZmVycmVkTG9jYWxlIiwicHJlbWl1bVN1YnNjcmlwdGlvbkNvdW50IiwicHJlbWl1bVRpZXIiLCJzdGFnZUluc3RhbmNlcyIsInN5c3RlbUNoYW5uZWxGbGFncyIsInZhbml0eVVybENvZGUiLCJ2ZXJpZmljYXRpb25MZXZlbCIsIndlbGNvbWVTY3JlZW4iLCJkaXNjb3ZlcnlTcGxhc2giLCJqb2luZWRBdCIsInNoYXJkSWQiLCJiYW5uZXIiLCJzcGxhc2giLCJhZmtDaGFubmVsSWQiLCJ3aWRnZXRDaGFubmVsSWQiLCJzeXN0ZW1DaGFubmVsSWQiLCJydWxlc0NoYW5uZWxJZCIsInB1YmxpY1VwZGF0ZXNDaGFubmVsSWQiLCJwcmVtaXVtUHJvZ3Jlc3NCYXJFbmFibGVkIiwic2FmZXR5QWxlcnRzQ2hhbm5lbElkIiwibWF4U3RhZ2VWaWRlb0NoYW5uZWxVc2VycyIsImluY2lkZW50c0RhdGEiLCJkbVNwYW1EZXRlY3RlZEF0IiwiZG1zRGlzYWJsZWRVbnRpbCIsImludml0ZXNEaXNhYmxlZFVudGlsIiwicmFpZERldGVjdGVkQXQiLCJpbnRlcmFjdGlvbiIsInRva2VuIiwidmVyc2lvbiIsIm1lc3NhZ2UiLCJkYXRhIiwibG9jYWxlIiwiZ3VpbGRMb2NhbGUiLCJlbnRpdGxlbWVudHMiLCJhcHBQZXJtaXNzaW9ucyIsImF1dGhvcml6aW5nSW50ZWdyYXRpb25Pd25lcnMiLCJjb250ZXh0IiwiYXR0YWNobWVudFNpemVMaW1pdCIsImludGVyYWN0aW9uQ2FsbGJhY2siLCJhY3Rpdml0eUluc3RhbmNlSWQiLCJyZXNwb25zZU1lc3NhZ2VFcGhlbWVyYWwiLCJyZXNwb25zZU1lc3NhZ2VJZCIsInJlc3BvbnNlTWVzc2FnZUxvYWRpbmciLCJpbnRlcmFjdGlvbkNhbGxiYWNrUmVzcG9uc2UiLCJyZXNvdXJjZSIsImludGVyYWN0aW9uUmVzb3VyY2UiLCJpbnZpdGUiLCJjb2RlIiwiY3JlYXRlZEF0IiwiaW52aXRlciIsIm1heEFnZSIsIm1heFVzZXMiLCJ0YXJnZXRUeXBlIiwidGFyZ2V0VXNlciIsInRhcmdldEFwcGxpY2F0aW9uIiwidGVtcG9yYXJ5IiwidXNlcyIsImd1aWxkU2NoZWR1bGVkRXZlbnQiLCJzdGFnZUluc3RhbmNlIiwiZXhwaXJlc0F0IiwibmljayIsInByZW1pdW1TaW5jZSIsImF2YXRhciIsImNvbW11bmljYXRpb25EaXNhYmxlZFVudGlsIiwiYXZhdGFyRGVjb3JhdGlvbkRhdGEiLCJhY3Rpdml0eSIsImFwcGxpY2F0aW9uIiwiYXR0YWNobWVudHMiLCJhdXRob3IiLCJlZGl0ZWRUaW1lc3RhbXAiLCJlbWJlZHMiLCJpbnRlcmFjdGlvbk1ldGFkYXRhIiwibWVudGlvbmVkQ2hhbm5lbElkcyIsIm1lbnRpb25lZFJvbGVJZHMiLCJtZW50aW9ucyIsIm1lc3NhZ2VSZWZlcmVuY2UiLCJtZXNzYWdlU25hcHNob3RzIiwicmVmZXJlbmNlZE1lc3NhZ2UiLCJub25jZSIsInJlYWN0aW9ucyIsInN0aWNrZXJJdGVtcyIsInRocmVhZCIsIndlYmhvb2tJZCIsInBvbGwiLCJjYWxsIiwibWVzc2FnZVNuYXBzaG90IiwibWVzc2FnZUludGVyYWN0aW9uTWV0YWRhdGEiLCJvcmlnaW5hbFJlc3BvbnNlTWVzc2FnZUlkIiwiaW50ZXJhY3RlZE1lc3NhZ2VJZCIsInRyaWdnZXJpbmdJbnRlcmFjdGlvbk1ldGFkYXRhIiwidGFyZ2V0TWVzc2FnZUlkIiwibWVzc2FnZVBpbiIsInBpbm5lZEF0IiwibWVzc2FnZUludGVyYWN0aW9uIiwibWVzc2FnZUlkIiwibWVzc2FnZUNhbGwiLCJwYXJ0aWNpcGFudHMiLCJlbmRlZFRpbWVzdGFtcCIsImFzc2V0IiwicGFsZXR0ZSIsInJvbGUiLCJjb2xvciIsImNvbG9ycyIsInVuaWNvZGVFbW9qaSIsInRhZ3MiLCJyb2xlQ29sb3JzIiwicHJpbWFyeUNvbG9yIiwic2Vjb25kYXJ5Q29sb3IiLCJ0ZXJ0aWFyeUNvbG9yIiwic2NoZWR1bGVkRXZlbnQiLCJjcmVhdG9ySWQiLCJzY2hlZHVsZWRTdGFydFRpbWUiLCJzY2hlZHVsZWRFbmRUaW1lIiwiZW50aXR5SWQiLCJjcmVhdG9yIiwicHJpdmFjeUxldmVsIiwic3RhdHVzIiwiZW50aXR5VHlwZSIsInVzZXJDb3VudCIsImltYWdlIiwicmVjdXJyZW5jZVJ1bGUiLCJzY2hlZHVsZWRFdmVudFJlY3VycmVuY2VSdWxlIiwic3RhcnQiLCJlbmQiLCJmcmVxdWVuY3kiLCJpbnRlcnZhbCIsImJ5V2Vla2RheSIsImJ5TldlZWtkYXkiLCJieU1vbnRoIiwiYnlNb250aERheSIsImJ5WWVhckRheSIsImNvdW50IiwiZ3VpbGRTY2hlZHVsZWRFdmVudElkIiwiaW52aXRlU3RhZ2VJbnN0YW5jZSIsInBhcnRpY2lwYW50Q291bnQiLCJzcGVha2VyQ291bnQiLCJtZWRpYUdhbGxlcnlJdGVtIiwic3RpY2tlciIsInBhY2tJZCIsImZvcm1hdFR5cGUiLCJhdmFpbGFibGUiLCJzb3J0VmFsdWUiLCJ1bmZ1cmxlZE1lZGlhSXRlbSIsImF0dGFjaG1lbnRJZCIsInVzZXJuYW1lIiwiZ2xvYmFsTmFtZSIsInByZW1pdW1UeXBlIiwicHVibGljRmxhZ3MiLCJkaXNjcmltaW5hdG9yIiwiZW1haWwiLCJwcmltYXJ5R3VpbGQiLCJ1c2VyUHJpbWFyeUd1aWxkIiwiaWRlbnRpdHlHdWlsZElkIiwiaWRlbnRpdHlFbmFibGVkIiwidGFnIiwiYmFkZ2UiLCJ3ZWJob29rIiwic291cmNlR3VpbGQiLCJzb3VyY2VDaGFubmVsIiwiZ3VpbGRPbmJvYXJkaW5nIiwiZGVmYXVsdENoYW5uZWxJZHMiLCJlbmFibGVkIiwibW9kZSIsInByb21wdHMiLCJndWlsZE9uYm9hcmRpbmdQcm9tcHQiLCJpbk9uYm9hcmRpbmciLCJzaW5nbGVTZWxlY3QiLCJndWlsZE9uYm9hcmRpbmdQcm9tcHRPcHRpb24iLCJjaGFubmVsSWRzIiwicm9sZUlkcyIsImVudGl0bGVtZW50IiwidXNlcklkIiwiZGVsZXRlZCIsInN0YXJ0c0F0IiwiZW5kc0F0IiwiY29uc3VtZWQiLCJza3UiLCJzbHVnIiwidm9pY2VTdGF0ZSIsInJlcXVlc3RUb1NwZWFrVGltZXN0YW1wIiwic2Vzc2lvbklkIiwicXVlc3Rpb24iLCJhbnN3ZXJzIiwiZXhwaXJ5IiwibGF5b3V0VHlwZSIsImFsbG93TXVsdGlzZWxlY3QiLCJyZXN1bHRzIiwicG9sbEFuc3dlciIsImFuc3dlcklkIiwicG9sbE1lZGlhIiwicG9sbFJlc3VsdCIsImlzRmluYWxpemVkIiwiYW5zd2VyQ291bnRzIiwicG9sbEFuc3dlckNvdW50IiwibWVWb3RlZCIsInRleHQiLCJzdWJzY3JpcHRpb24iLCJjYW5jZWxlZEF0IiwiY291bnRyeSIsImN1cnJlbnRQZXJpb2RFbmQiLCJjdXJyZW50UGVyaW9kU3RhcnQiLCJyZW5ld2FsU2t1SWRzIiwiZW50aXRsZW1lbnRJZHMiLCJza3VJZHMiLCJzb3VuZGJvYXJkU291bmQiLCJzb3VuZElkIiwidm9sdW1lIiwibG9iYnkiLCJtZXRhZGF0YSIsImxpbmtlZENoYW5uZWwiLCJsb2JieU1lbWJlciIsIkRlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3IiXSwibWFwcGluZ3MiOiJBQXNPQSxPQUFPLFNBQVNBLDhCQUNkQyxpQkFBb0IsRUFDcEJDLGVBQXlCLEtBQWlCO0lBRTFDLE9BQU87UUFDTEMsa0JBQWtCO1lBQ2hCQyxlQUFlRjtZQUNmRyxZQUFZSDtZQUNaSSxVQUFVSjtZQUNWSyxVQUFVTDtZQUNWTSxPQUFPTjtZQUNQLEdBQUdELGtCQUFrQkUsZ0JBQWdCO1FBQ3ZDO1FBQ0FNLGtCQUFrQjtZQUNoQkMsV0FBV1I7WUFDWFMsU0FBU1Q7WUFDVFUsSUFBSVY7WUFDSlcsTUFBTVg7WUFDTixHQUFHRCxrQkFBa0JRLGdCQUFnQjtRQUN2QztRQUNBSyxZQUFZO1lBQ1ZGLElBQUlWO1lBQ0phLFVBQVViO1lBQ1ZjLE9BQU9kO1lBQ1BlLGFBQWFmO1lBQ2JnQixNQUFNaEI7WUFDTmlCLEtBQUtqQjtZQUNMa0IsVUFBVWxCO1lBQ1ZtQixRQUFRbkI7WUFDUm9CLE9BQU9wQjtZQUNQcUIsV0FBV3JCO1lBQ1hzQixhQUFhdEI7WUFDYnVCLGVBQWV2QjtZQUNmd0IsVUFBVXhCO1lBQ1Z5QixPQUFPekI7WUFDUCxHQUFHRCxrQkFBa0JhLFVBQVU7UUFDakM7UUFDQWMsU0FBUztZQUNQQyxNQUFNM0I7WUFDTjRCLFVBQVU1QjtZQUNWNkIsTUFBTTdCO1lBQ044QixPQUFPOUI7WUFDUCtCLFNBQVMvQjtZQUNUZ0MsV0FBV2hDO1lBQ1hpQyxrQkFBa0JqQztZQUNsQmtDLFdBQVdsQztZQUNYbUMsa0JBQWtCbkM7WUFDbEJTLFNBQVNUO1lBQ1RvQyxrQkFBa0JwQztZQUNsQnFDLHNCQUFzQnJDO1lBQ3RCVSxJQUFJVjtZQUNK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
|
|
918
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kZXNpcmVkUHJvcGVydGllcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFJlY3Vyc2l2ZVBhcnRpYWwgfSBmcm9tICdAZGlzY29yZGVuby90eXBlcyc7XG5pbXBvcnQgdHlwZSB7IENvbGxlY3Rpb24gfSBmcm9tICdAZGlzY29yZGVuby91dGlscyc7XG5pbXBvcnQgdHlwZSB7IEJvdCB9IGZyb20gJy4vYm90LmpzJztcbmltcG9ydCB0eXBlIHsgSW50ZXJhY3Rpb25SZXNvbHZlZERhdGFDaGFubmVsLCBJbnRlcmFjdGlvblJlc29sdmVkRGF0YU1lbWJlciB9IGZyb20gJy4vY29tbWFuZE9wdGlvbnNQYXJzZXIuanMnO1xuaW1wb3J0IHR5cGUge1xuICBBY3Rpdml0eUluc3RhbmNlLFxuICBBY3Rpdml0eUxvY2F0aW9uLFxuICBBdHRhY2htZW50LFxuICBBdmF0YXJEZWNvcmF0aW9uRGF0YSxcbiAgQ2hhbm5lbCxcbiAgQ29sbGVjdGlibGVzLFxuICBDb21wb25lbnQsXG4gIERlZmF1bHRSZWFjdGlvbkVtb2ppLFxuICBFbW9qaSxcbiAgRW50aXRsZW1lbnQsXG4gIEZvcnVtVGFnLFxuICBHdWlsZCxcbiAgR3VpbGRPbmJvYXJkaW5nLFxuICBHdWlsZE9uYm9hcmRpbmdQcm9tcHQsXG4gIEd1aWxkT25ib2FyZGluZ1Byb21wdE9wdGlvbixcbiAgSW5jaWRlbnRzRGF0YSxcbiAgSW50ZXJhY3Rpb24sXG4gIEludGVyYWN0aW9uQ2FsbGJhY2ssXG4gIEludGVyYWN0aW9uQ2FsbGJhY2tSZXNwb25zZSxcbiAgSW50ZXJhY3Rpb25SZXNvdXJjZSxcbiAgSW52aXRlLFxuICBJbnZpdGVTdGFnZUluc3RhbmNlLFxuICBMb2JieSxcbiAgTG9iYnlJbnZpdGUsXG4gIExvYmJ5TWVtYmVyLFxuICBMb2JieU1lc3NhZ2UsXG4gIE1lZGlhR2FsbGVyeUl0ZW0sXG4gIE1lbWJlcixcbiAgTWVzc2FnZSxcbiAgTWVzc2FnZUNhbGwsXG4gIE1lc3NhZ2VJbnRlcmFjdGlvbixcbiAgTWVzc2FnZUludGVyYWN0aW9uTWV0YWRhdGEsXG4gIE1lc3NhZ2VQaW4sXG4gIE1lc3NhZ2VSZWZlcmVuY2UsXG4gIE1lc3NhZ2VTbmFwc2hvdCxcbiAgTmFtZXBsYXRlLFxuICBQb2xsLFxuICBQb2xsQW5zd2VyLFxuICBQb2xsQW5zd2VyQ291bnQsXG4gIFBvbGxNZWRpYSxcbiAgUG9sbFJlc3VsdCxcbiAgUm9sZSxcbiAgUm9sZUNvbG9ycyxcbiAgU2NoZWR1bGVkRXZlbnQsXG4gIFNjaGVkdWxlZEV2ZW50UmVjdXJyZW5jZVJ1bGUsXG4gIFNoYXJlZENsaWVudFRoZW1lLFxuICBTa3UsXG4gIFNvdW5kYm9hcmRTb3VuZCxcbiAgU3RhZ2VJbnN0YW5jZSxcbiAgU3RpY2tlcixcbiAgU3Vic2NyaXB0aW9uLFxuICBVbmZ1cmxlZE1lZGlhSXRlbSxcbiAgVXNlcixcbiAgVXNlclByaW1hcnlHdWlsZCxcbiAgVm9pY2VTdGF0ZSxcbiAgV2ViaG9vayxcbn0gZnJvbSAnLi90cmFuc2Zvcm1lcnMvdHlwZXMuanMnO1xuXG4vKipcbiAqIEFsbCB0aGUgb2JqZWN0cyB0aGF0IHN1cHBvcnQgZGVzaXJlZCBwcm9wZXJ0aWVzXG4gKlxuICogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgYXQgYW55IHRpbWVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUcmFuc2Zvcm1lcnNPYmplY3RzIHtcbiAgYWN0aXZpdHlJbnN0YW5jZTogQWN0aXZpdHlJbnN0YW5jZTtcbiAgYWN0aXZpdHlMb2NhdGlvbjogQWN0aXZpdHlMb2NhdGlvbjtcbiAgYXR0YWNobWVudDogQXR0YWNobWVudDtcbiAgYXZhdGFyRGVjb3JhdGlvbkRhdGE6IEF2YXRhckRlY29yYXRpb25EYXRhO1xuICBjaGFubmVsOiBDaGFubmVsO1xuICBjb2xsZWN0aWJsZXM6IENvbGxlY3RpYmxlcztcbiAgY29tcG9uZW50OiBDb21wb25lbnQ7XG4gIGRlZmF1bHRSZWFjdGlvbkVtb2ppOiBEZWZhdWx0UmVhY3Rpb25FbW9qaTtcbiAgZW1vamk6IEVtb2ppO1xuICBlbnRpdGxlbWVudDogRW50aXRsZW1lbnQ7XG4gIGZvcnVtVGFnOiBGb3J1bVRhZztcbiAgZ3VpbGQ6IEd1aWxkO1xuICBndWlsZE9uYm9hcmRpbmc6IEd1aWxkT25ib2FyZGluZztcbiAgZ3VpbGRPbmJvYXJkaW5nUHJvbXB0OiBHdWlsZE9uYm9hcmRpbmdQcm9tcHQ7XG4gIGd1aWxkT25ib2FyZGluZ1Byb21wdE9wdGlvbjogR3VpbGRPbmJvYXJkaW5nUHJvbXB0T3B0aW9uO1xuICBpbmNpZGVudHNEYXRhOiBJbmNpZGVudHNEYXRhO1xuICBpbnRlcmFjdGlvbjogSW50ZXJhY3Rpb247XG4gIGludGVyYWN0aW9uQ2FsbGJhY2s6IEludGVyYWN0aW9uQ2FsbGJhY2s7XG4gIGludGVyYWN0aW9uQ2FsbGJhY2tSZXNwb25zZTogSW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlO1xuICBpbnRlcmFjdGlvblJlc291cmNlOiBJbnRlcmFjdGlvblJlc291cmNlO1xuICBpbnZpdGU6IEludml0ZTtcbiAgaW52aXRlU3RhZ2VJbnN0YW5jZTogSW52aXRlU3RhZ2VJbnN0YW5jZTtcbiAgbG9iYnk6IExvYmJ5O1xuICBsb2JieU1lbWJlcjogTG9iYnlNZW1iZXI7XG4gIGxvYmJ5TWVzc2FnZTogTG9iYnlNZXNzYWdlO1xuICBsb2JieUludml0ZTogTG9iYnlJbnZpdGU7XG4gIG1lZGlhR2FsbGVyeUl0ZW06IE1lZGlhR2FsbGVyeUl0ZW07XG4gIG1lbWJlcjogTWVtYmVyO1xuICBtZXNzYWdlOiBNZXNzYWdlO1xuICBtZXNzYWdlQ2FsbDogTWVzc2FnZUNhbGw7XG4gIG1lc3NhZ2VJbnRlcmFjdGlvbjogTWVzc2FnZUludGVyYWN0aW9uO1xuICBtZXNzYWdlSW50ZXJhY3Rpb25NZXRhZGF0YTogTWVzc2FnZUludGVyYWN0aW9uTWV0YWRhdGE7XG4gIG1lc3NhZ2VQaW46IE1lc3NhZ2VQaW47XG4gIG1lc3NhZ2VSZWZlcmVuY2U6IE1lc3NhZ2VSZWZlcmVuY2U7XG4gIG1lc3NhZ2VTbmFwc2hvdDogTWVzc2FnZVNuYXBzaG90O1xuICBuYW1lcGxhdGU6IE5hbWVwbGF0ZTtcbiAgcG9sbDogUG9sbDtcbiAgcG9sbEFuc3dlcjogUG9sbEFuc3dlcjtcbiAgcG9sbEFuc3dlckNvdW50OiBQb2xsQW5zd2VyQ291bnQ7XG4gIHBvbGxNZWRpYTogUG9sbE1lZGlhO1xuICBwb2xsUmVzdWx0OiBQb2xsUmVzdWx0O1xuICByb2xlOiBSb2xlO1xuICByb2xlQ29sb3JzOiBSb2xlQ29sb3JzO1xuICBzY2hlZHVsZWRFdmVudDogU2NoZWR1bGVkRXZlbnQ7XG4gIHNjaGVkdWxlZEV2ZW50UmVjdXJyZW5jZVJ1bGU6IFNjaGVkdWxlZEV2ZW50UmVjdXJyZW5jZVJ1bGU7XG4gIHNoYXJlZENsaWVudFRoZW1lOiBTaGFyZWRDbGllbnRUaGVtZTtcbiAgc2t1OiBTa3U7XG4gIHNvdW5kYm9hcmRTb3VuZDogU291bmRib2FyZFNvdW5kO1xuICBzdGFnZUluc3RhbmNlOiBTdGFnZUluc3RhbmNlO1xuICBzdGlja2VyOiBTdGlja2VyO1xuICBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgdW5mdXJsZWRNZWRpYUl0ZW06IFVuZnVybGVkTWVkaWFJdGVtO1xuICB1c2VyOiBVc2VyO1xuICB1c2VyUHJpbWFyeUd1aWxkOiBVc2VyUHJpbWFyeUd1aWxkO1xuICB2b2ljZVN0YXRlOiBWb2ljZVN0YXRlO1xuICB3ZWJob29rOiBXZWJob29rO1xufVxuXG4vKipcbiAqIE1ldGFkYXRhIGZvciB0eXBlc2NyaXB0IHRvIGNyZWF0ZSB0aGUgY29ycmVjdCB0eXBlcyBmb3IgZGVzaXJlZCBwcm9wZXJ0aWVzXG4gKlxuICogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzXG4gKi9cbmV4cG9ydCBjb25zdCB0cmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllc01ldGFkYXRhID0ge1xuICBjaGFubmVsOiB7XG4gICAgZGVwZW5kZW5jaWVzOiB7XG4gICAgICBhcmNoaXZlZDogWyd0b2dnbGVzJ10sXG4gICAgICBpbnZpdGFibGU6IFsndG9nZ2xlcyddLFxuICAgICAgbG9ja2VkOiBbJ3RvZ2dsZXMnXSxcbiAgICAgIG5zZnc6IFsndG9nZ2xlcyddLFxuICAgICAgbmV3bHlDcmVhdGVkOiBbJ3RvZ2dsZXMnXSxcbiAgICAgIG1hbmFnZWQ6IFsndG9nZ2xlcyddLFxuICAgIH0sXG4gICAgYWx3YXlzUHJlc2VudHM6IFsndG9nZ2xlcycsICdpbnRlcm5hbE92ZXJ3cml0ZXMnLCAnaW50ZXJuYWxUaHJlYWRNZXRhZGF0YSddLFxuICB9LFxuXG4gIGd1aWxkOiB7XG4gICAgZGVwZW5kZW5jaWVzOiB7XG4gICAgICB0aHJlYWRzOiBbJ2NoYW5uZWxzJ10sXG4gICAgICBmZWF0dXJlczogWyd0b2dnbGVzJ10sXG4gICAgfSxcbiAgICBhbHdheXNQcmVzZW50czogW10sXG4gIH0sXG5cbiAgaW50ZXJhY3Rpb246IHtcbiAgICBkZXBlbmRlbmNpZXM6IHtcbiAgICAgIHJlc3BvbmQ6IFsndHlwZScsICd0b2tlbicsICdpZCddLFxuICAgICAgc2VuZEZvbGxvd3VwTWVzc2FnZTogWyd0b2tlbiddLFxuICAgICAgZWRpdDogWyd0eXBlJywgJ3Rva2VuJywgJ2lkJ10sXG4gICAgICBkZWZlckVkaXQ6IFsndHlwZScsICd0b2tlbicsICdpZCddLFxuICAgICAgZGVmZXI6IFsndHlwZScsICd0b2tlbicsICdpZCddLFxuICAgICAgZGVsZXRlOiBbJ3R5cGUnLCAndG9rZW4nXSxcbiAgICB9LFxuICAgIGFsd2F5c1ByZXNlbnRzOiBbJ2JvdCcsICdhY2tub3dsZWRnZWQnXSxcbiAgfSxcblxuICBtZW1iZXI6IHtcbiAgICBkZXBlbmRlbmNpZXM6IHtcbiAgICAgIGRlYWY6IFsndG9nZ2xlcyddLFxuICAgICAgbXV0ZTogWyd0b2dnbGVzJ10sXG4gICAgICBwZW5kaW5nOiBbJ3RvZ2dsZXMnXSxcbiAgICAgIGZsYWdzOiBbJ3RvZ2dsZXMnXSxcbiAgICAgIGRpZFJlam9pbjogWyd0b2dnbGVzJ10sXG4gICAgICBzdGFydGVkT25ib2FyZGluZzogWyd0b2dnbGVzJ10sXG4gICAgICBieXBhc3Nlc1ZlcmlmaWNhdGlvbjogWyd0b2dnbGVzJ10sXG4gICAgICBjb21wbGV0ZWRPbmJvYXJkaW5nOiBbJ3RvZ2dsZXMnXSxcbiAgICB9LFxuICAgIGFsd2F5c1ByZXNlbnRzOiBbXSxcbiAgfSxcblxuICBtZXNzYWdlOiB7XG4gICAgZGVwZW5kZW5jaWVzOiB7XG4gICAgICBjcm9zc3Bvc3RlZDogWydmbGFncyddLFxuICAgICAgZXBoZW1lcmFsOiBbJ2ZsYWdzJ10sXG4gICAgICBmYWlsZWRUb01lbnRpb25Tb21lUm9sZXNJblRocmVhZDogWydmbGFncyddLFxuICAgICAgaGFzVGhyZWFkOiBbJ2ZsYWdzJ10sXG4gICAgICBpc0Nyb3NzcG9zdDogWydmbGFncyddLFxuICAgICAgbG9hZGluZzogWydmbGFncyddLFxuICAgICAgbWVudGlvbmVkVXNlcklkczogWydtZW50aW9ucyddLFxuICAgICAgbWVudGlvbkV2ZXJ5b25lOiBbJ2JpdGZpZWxkJ10sXG4gICAgICBwaW5uZWQ6IFsnYml0ZmllbGQnXSxcbiAgICAgIHNvdXJjZU1lc3NhZ2VEZWxldGVkOiBbJ2ZsYWdzJ10sXG4gICAgICBzdXBwcmVzc0VtYmVkczogWydmbGFncyddLFxuICAgICAgc3VwcHJlc3NOb3RpZmljYXRpb25zOiBbJ2ZsYWdzJ10sXG4gICAgICB0aW1lc3RhbXA6IFsnaWQnXSxcbiAgICAgIHR0czogWydiaXRmaWVsZCddLFxuICAgICAgdXJnZW50OiBbJ2ZsYWdzJ10sXG4gICAgfSxcbiAgICBhbHdheXNQcmVzZW50czogWydiaXRmaWVsZCcsICdmbGFncyddLFxuICB9LFxuXG4gIHJvbGU6IHtcbiAgICBkZXBlbmRlbmNpZXM6IHtcbiAgICAgIGhvaXN0OiBbJ3RvZ2dsZXMnXSxcbiAgICAgIG1hbmFnZWQ6IFsndG9nZ2xlcyddLFxuICAgICAgbWVudGlvbmFibGU6IFsndG9nZ2xlcyddLFxuICAgICAgcHJlbWl1bVN1YnNjcmliZXI6IFsndG9nZ2xlcyddLFxuICAgICAgYXZhaWxhYmxlRm9yUHVyY2hhc2U6IFsndG9nZ2xlcyddLFxuICAgICAgZ3VpbGRDb25uZWN0aW9uczogWyd0b2dnbGVzJ10sXG4gICAgfSxcbiAgICBhbHdheXNQcmVzZW50czogWydpbnRlcm5hbFRhZ3MnXSxcbiAgfSxcblxuICB1c2VyOiB7XG4gICAgZGVwZW5kZW5jaWVzOiB7XG4gICAgICB0YWc6IFsndXNlcm5hbWUnLCAnZGlzY3JpbWluYXRvciddLFxuICAgICAgYm90OiBbJ3RvZ2dsZXMnXSxcbiAgICAgIHN5c3RlbTogWyd0b2dnbGVzJ10sXG4gICAgICBtZmFFbmFibGVkOiBbJ3RvZ2dsZXMnXSxcbiAgICAgIHZlcmlmaWVkOiBbJ3RvZ2dsZXMnXSxcbiAgICAgIGF2YXRhclVybDogWydhdmF0YXInLCAnaWQnXSxcbiAgICAgIGRpc3BsYXlOYW1lOiBbJ3VzZXJuYW1lJywgJ2dsb2JhbE5hbWUnXSxcbiAgICAgIGRlZmF1bHRBdmF0YXJVcmw6IFsnaWQnLCAnZGlzY3JpbWluYXRvciddLFxuICAgICAgZGlzcGxheUF2YXRhclVybDogWydhdmF0YXInLCAnaWQnLCAnZGlzY3JpbWluYXRvciddLFxuICAgICAgY3JlYXRlZFRpbWVzdGFtcDogWydpZCddLFxuICAgIH0sXG4gICAgYWx3YXlzUHJlc2VudHM6IFtdLFxuICB9LFxuXG4gIGVtb2ppOiB7XG4gICAgZGVwZW5kZW5jaWVzOiB7XG4gICAgICBhbmltYXRlZDogWyd0b2dnbGVzJ10sXG4gICAgICBhdmFpbGFibGU6IFsndG9nZ2xlcyddLFxuICAgICAgbWFuYWdlZDogWyd0b2dnbGVzJ10sXG4gICAgICByZXF1aXJlQ29sb25zOiBbJ3RvZ2dsZXMnXSxcbiAgICB9LFxuICAgIGFsd2F5c1ByZXNlbnRzOiBbJ3RvZ2dsZXMnXSxcbiAgfSxcbn0gYXMgY29uc3Qgc2F0aXNmaWVzIERlc2lyZWRQcm9wZXJ0aWVzTWV0YWRhdGE7XG5cbi8qKlxuICogTWV0YWRhdGEgZm9yIHR5cGVzY3JpcHQgdG8gY3JlYXRlIHRoZSBjb3JyZWN0IHR5cGVzIGZvciBkZXNpcmVkIHByb3BlcnRpZXNcbiAqXG4gKiBAcHJpdmF0ZSBUaGlzIGlzIHN1YmplY3QgdG8gYnJlYWtpbmcgY2hhbmdlcyB3aXRob3V0IG5vdGljZXNcbiAqL1xudHlwZSBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllc01ldGFkYXRhID0gQ29tcGxldGVCeUtleXM8XG4gIHR5cGVvZiB0cmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllc01ldGFkYXRhLFxuICBrZXlvZiBEZXNpcmVkUHJvcGVydGllc01ldGFkYXRhLFxuICB7IGRlcGVuZGVuY2llczoge307IGFsd2F5c1ByZXNlbnRzOiBbXSB9XG4+O1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRGVzaXJlZFByb3BlcnRpZXNPYmplY3Q8VCBleHRlbmRzIFJlY3Vyc2l2ZVBhcnRpYWw8VHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXM+LCBURGVmYXVsdCBleHRlbmRzIGJvb2xlYW4gPSBmYWxzZT4oXG4gIGRlc2lyZWRQcm9wZXJ0aWVzOiBULFxuICBkZWZhdWx0VmFsdWU6IFREZWZhdWx0ID0gZmFsc2UgYXMgVERlZmF1bHQsXG4pOiBDb21wbGV0ZURlc2lyZWRQcm9wZXJ0aWVzPFQsIFREZWZhdWx0PiB7XG4gIHJldHVybiB7XG4gICAgYWN0aXZpdHlJbnN0YW5jZToge1xuICAgICAgYXBwbGljYXRpb25JZDogZGVmYXVsdFZhbHVlLFxuICAgICAgaW5zdGFuY2VJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgbGF1bmNoSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGxvY2F0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1c2VyczogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuYWN0aXZpdHlJbnN0YW5jZSxcbiAgICB9LFxuICAgIGFjdGl2aXR5TG9jYXRpb246IHtcbiAgICAgIGNoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZ3VpbGRJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGtpbmQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmFjdGl2aXR5TG9jYXRpb24sXG4gICAgfSxcbiAgICBhdHRhY2htZW50OiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZmlsZW5hbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRpdGxlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjb250ZW50VHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgc2l6ZTogZGVmYXVsdFZhbHVlLFxuICAgICAgdXJsOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwcm94eVVybDogZGVmYXVsdFZhbHVlLFxuICAgICAgaGVpZ2h0OiBkZWZhdWx0VmFsdWUsXG4gICAgICB3aWR0aDogZGVmYXVsdFZhbHVlLFxuICAgICAgZXBoZW1lcmFsOiBkZWZhdWx0VmFsdWUsXG4gICAgICBkZXNjcmlwdGlvbjogZGVmYXVsdFZhbHVlLFxuICAgICAgZHVyYXRpb25fc2VjczogZGVmYXVsdFZhbHVlLFxuICAgICAgd2F2ZWZvcm06IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGZsYWdzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhcHBsaWNhdGlvbjogZGVmYXVsdFZhbHVlLFxuICAgICAgY2xpcENyZWF0ZWRBdDogZGVmYXVsdFZhbHVlLFxuICAgICAgY2xpcFBhcnRpY2lwYW50czogZGVmYXVsdFZhbHVlLFxuICAgICAgcGxhY2Vob2xkZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHBsYWNlaG9sZGVyVmVyc2lvbjogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuYXR0YWNobWVudCxcbiAgICB9LFxuICAgIGNoYW5uZWw6IHtcbiAgICAgIHR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHBvc2l0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBuYW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0b3BpYzogZGVmYXVsdFZhbHVlLFxuICAgICAgYml0cmF0ZTogZGVmYXVsdFZhbHVlLFxuICAgICAgdXNlckxpbWl0OiBkZWZhdWx0VmFsdWUsXG4gICAgICByYXRlTGltaXRQZXJVc2VyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBydGNSZWdpb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHZpZGVvUXVhbGl0eU1vZGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGxhc3RQaW5UaW1lc3RhbXA6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHBlcm1pc3Npb25PdmVyd3JpdGVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgcGVybWlzc2lvbnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFwcFBlcm1pc3Npb25zOiBkZWZhdWx0VmFsdWUsXG4gICAgICBsYXN0TWVzc2FnZUlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBvd25lcklkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhcHBsaWNhdGlvbklkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwYXJlbnRJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgbWVtYmVyQ291bnQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lc3NhZ2VDb3VudDogZGVmYXVsdFZhbHVlLFxuICAgICAgZGVmYXVsdEF1dG9BcmNoaXZlRHVyYXRpb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGZsYWdzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhcHBsaWVkVGFnczogZGVmYXVsdFZhbHVlLFxuICAgICAgYXZhaWxhYmxlVGFnczogZGVmYXVsdFZhbHVlLFxuICAgICAgZGVmYXVsdEZvcnVtTGF5b3V0OiBkZWZhdWx0VmFsdWUsXG4gICAgICBkZWZhdWx0UmVhY3Rpb25FbW9qaTogZGVmYXVsdFZhbHVlLFxuICAgICAgZGVmYXVsdFNvcnRPcmRlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgZGVmYXVsdFRocmVhZFJhdGVMaW1pdFBlclVzZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGljb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lbWJlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgcmVjaXBpZW50czogZGVmYXVsdFZhbHVlLFxuICAgICAgdG90YWxNZXNzYWdlU2VudDogZGVmYXVsdFZhbHVlLFxuICAgICAgdGhyZWFkTWV0YWRhdGE6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmNoYW5uZWwsXG4gICAgfSxcbiAgICBjb2xsZWN0aWJsZXM6IHtcbiAgICAgIG5hbWVwbGF0ZTogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuY29sbGVjdGlibGVzLFxuICAgIH0sXG4gICAgY29tcG9uZW50OiB7XG4gICAgICB0eXBlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjdXN0b21JZDogZGVmYXVsdFZhbHVlLFxuICAgICAgcmVxdWlyZWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRpc2FibGVkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzdHlsZTogZGVmYXVsdFZhbHVlLFxuICAgICAgbGFiZWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHZhbHVlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBkZWZhdWx0OiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbW9qaTogZGVmYXVsdFZhbHVlLFxuICAgICAgdXJsOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjaGFubmVsVHlwZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG9wdGlvbnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHBsYWNlaG9sZGVyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtaW5WYWx1ZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1heFZhbHVlczogZGVmYXVsdFZhbHVlLFxuICAgICAgbWluTGVuZ3RoOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtYXhMZW5ndGg6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNvbXBvbmVudHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRlZmF1bHRWYWx1ZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNrdUlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgYWNjZXNzb3J5OiBkZWZhdWx0VmFsdWUsXG4gICAgICBjb250ZW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICBkZXNjcmlwdGlvbjogZGVmYXVsdFZhbHVlLFxuICAgICAgc3BvaWxlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgaXRlbXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRpdmlkZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNwYWNpbmc6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGZpbGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lZGlhOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhY2NlbnRDb2xvcjogZGVmYXVsdFZhbHVlLFxuICAgICAgbmFtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgc2l6ZTogZGVmYXVsdFZhbHVlLFxuICAgICAgY29tcG9uZW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICB2YWx1ZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJlc29sdmVkOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5jb21wb25lbnQsXG4gICAgfSxcbiAgICBmb3J1bVRhZzoge1xuICAgICAgZW1vamlJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZW1vamlOYW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgbW9kZXJhdGVkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBuYW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5mb3J1bVRhZyxcbiAgICB9LFxuICAgIGVtb2ppOiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgbmFtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgcm9sZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVzZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmVtb2ppLFxuICAgIH0sXG4gICAgZGVmYXVsdFJlYWN0aW9uRW1vamk6IHtcbiAgICAgIGVtb2ppSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGVtb2ppTmFtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuZGVmYXVsdFJlYWN0aW9uRW1vamksXG4gICAgfSxcbiAgICBndWlsZDoge1xuICAgICAgYWZrVGltZW91dDogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwcm94aW1hdGVNZW1iZXJDb3VudDogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwcm94aW1hdGVQcmVzZW5jZUNvdW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICBkZWZhdWx0TWVzc2FnZU5vdGlmaWNhdGlvbnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRlc2NyaXB0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBleHBsaWNpdENvbnRlbnRGaWx0ZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1heE1lbWJlcnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1heFByZXNlbmNlczogZGVmYXVsdFZhbHVlLFxuICAgICAgbWF4VmlkZW9DaGFubmVsVXNlcnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1mYUxldmVsOiBkZWZhdWx0VmFsdWUsXG4gICAgICBuYW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjaGFubmVsczogZGVmYXVsdFZhbHVlLFxuICAgICAgZW1vamlzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpY29uSGFzaDogZGVmYXVsdFZhbHVlLFxuICAgICAgbGFyZ2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lbWJlcnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG93bmVyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwcmVzZW5jZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJvbGVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzdGlja2VyczogZGVmYXVsdFZhbHVlLFxuICAgICAgdG9nZ2xlczogZGVmYXVsdFZhbHVlLFxuICAgICAgdW5hdmFpbGFibGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHZvaWNlU3RhdGVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICB3aWRnZXRFbmFibGVkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBuc2Z3TGV2ZWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHByZWZlcnJlZExvY2FsZTogZGVmYXVsdFZhbHVlLFxuICAgICAgcHJlbWl1bVN1YnNjcmlwdGlvbkNvdW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICBwcmVtaXVtVGllcjogZGVmYXVsdFZhbHVlLFxuICAgICAgc3RhZ2VJbnN0YW5jZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHN5c3RlbUNoYW5uZWxGbGFnczogZGVmYXVsdFZhbHVlLFxuICAgICAgdmFuaXR5VXJsQ29kZTogZGVmYXVsdFZhbHVlLFxuICAgICAgdmVyaWZpY2F0aW9uTGV2ZWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHdlbGNvbWVTY3JlZW46IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRpc2NvdmVyeVNwbGFzaDogZGVmYXVsdFZhbHVlLFxuICAgICAgam9pbmVkQXQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lbWJlckNvdW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICBzaGFyZElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpY29uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBiYW5uZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNwbGFzaDogZGVmYXVsdFZhbHVlLFxuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG93bmVySWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHBlcm1pc3Npb25zOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhZmtDaGFubmVsSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHdpZGdldENoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwbGljYXRpb25JZDogZGVmYXVsdFZhbHVlLFxuICAgICAgc3lzdGVtQ2hhbm5lbElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBydWxlc0NoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgcHVibGljVXBkYXRlc0NoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgcHJlbWl1bVByb2dyZXNzQmFyRW5hYmxlZDogZGVmYXVsdFZhbHVlLFxuICAgICAgc2FmZXR5QWxlcnRzQ2hhbm5lbElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtYXhTdGFnZVZpZGVvQ2hhbm5lbFVzZXJzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpbmNpZGVudHNEYXRhOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5ndWlsZCxcbiAgICB9LFxuICAgIGluY2lkZW50c0RhdGE6IHtcbiAgICAgIGRtU3BhbURldGVjdGVkQXQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRtc0Rpc2FibGVkVW50aWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGludml0ZXNEaXNhYmxlZFVudGlsOiBkZWZhdWx0VmFsdWUsXG4gICAgICByYWlkRGV0ZWN0ZWRBdDogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuaW5jaWRlbnRzRGF0YSxcbiAgICB9LFxuICAgIGludGVyYWN0aW9uOiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwbGljYXRpb25JZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZ3VpbGQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNoYW5uZWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgbWVtYmVyOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1c2VyOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0b2tlbjogZGVmYXVsdFZhbHVlLFxuICAgICAgdmVyc2lvbjogZGVmYXVsdFZhbHVlLFxuICAgICAgbWVzc2FnZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZGF0YTogZGVmYXVsdFZhbHVlLFxuICAgICAgbG9jYWxlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBndWlsZExvY2FsZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZW50aXRsZW1lbnRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhcHBQZXJtaXNzaW9uczogZGVmYXVsdFZhbHVlLFxuICAgICAgYXV0aG9yaXppbmdJbnRlZ3JhdGlvbk93bmVyczogZGVmYXVsdFZhbHVlLFxuICAgICAgY29udGV4dDogZGVmYXVsdFZhbHVlLFxuICAgICAgYXR0YWNobWVudFNpemVMaW1pdDogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuaW50ZXJhY3Rpb24sXG4gICAgfSxcbiAgICBpbnRlcmFjdGlvbkNhbGxiYWNrOiB7XG4gICAgICB0eXBlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgYWN0aXZpdHlJbnN0YW5jZUlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICByZXNwb25zZU1lc3NhZ2VFcGhlbWVyYWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJlc3BvbnNlTWVzc2FnZUlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICByZXNwb25zZU1lc3NhZ2VMb2FkaW5nOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5pbnRlcmFjdGlvbkNhbGxiYWNrLFxuICAgIH0sXG4gICAgaW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlOiB7XG4gICAgICBpbnRlcmFjdGlvbjogZGVmYXVsdFZhbHVlLFxuICAgICAgcmVzb3VyY2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmludGVyYWN0aW9uQ2FsbGJhY2tSZXNwb25zZSxcbiAgICB9LFxuICAgIGludGVyYWN0aW9uUmVzb3VyY2U6IHtcbiAgICAgIHR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFjdGl2aXR5SW5zdGFuY2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lc3NhZ2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmludGVyYWN0aW9uUmVzb3VyY2UsXG4gICAgfSxcbiAgICBpbnZpdGU6IHtcbiAgICAgIHR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgY29kZTogZGVmYXVsdFZhbHVlLFxuICAgICAgY3JlYXRlZEF0OiBkZWZhdWx0VmFsdWUsXG4gICAgICBndWlsZElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpbnZpdGVyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtYXhBZ2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1heFVzZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRhcmdldFR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRhcmdldFVzZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRhcmdldEFwcGxpY2F0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0ZW1wb3Jhcnk6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVzZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFwcHJveGltYXRlTWVtYmVyQ291bnQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFwcHJveGltYXRlUHJlc2VuY2VDb3VudDogZGVmYXVsdFZhbHVlLFxuICAgICAgZ3VpbGRTY2hlZHVsZWRFdmVudDogZGVmYXVsdFZhbHVlLFxuICAgICAgZXhwaXJlc0F0OiBkZWZhdWx0VmFsdWUsXG4gICAgICBmbGFnczogZGVmYXVsdFZhbHVlLFxuICAgICAgcm9sZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmludml0ZSxcbiAgICB9LFxuICAgIG1lbWJlcjoge1xuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVzZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG5pY2s6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJvbGVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBqb2luZWRBdDogZGVmYXVsdFZhbHVlLFxuICAgICAgcHJlbWl1bVNpbmNlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhdmF0YXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGJhbm5lcjogZGVmYXVsdFZhbHVlLFxuICAgICAgcGVybWlzc2lvbnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNvbW11bmljYXRpb25EaXNhYmxlZFVudGlsOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0b2dnbGVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhdmF0YXJEZWNvcmF0aW9uRGF0YTogZGVmYXVsdFZhbHVlLFxuICAgICAgY29sbGVjdGlibGVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5tZW1iZXIsXG4gICAgfSxcbiAgICBtZXNzYWdlOiB7XG4gICAgICBhY3Rpdml0eTogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwbGljYXRpb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFwcGxpY2F0aW9uSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGF0dGFjaG1lbnRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhdXRob3I6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgY29tcG9uZW50czogZGVmYXVsdFZhbHVlLFxuICAgICAgY29udGVudDogZGVmYXVsdFZhbHVlLFxuICAgICAgZWRpdGVkVGltZXN0YW1wOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbWJlZHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpbnRlcmFjdGlvbk1ldGFkYXRhOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpbnRlcmFjdGlvbjogZGVmYXVsdFZhbHVlLFxuICAgICAgbWVtYmVyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZW50aW9uZWRDaGFubmVsSWRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZW50aW9uZWRSb2xlSWRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZW50aW9uczogZGVmYXVsdFZhbHVlLFxuICAgICAgY2hhbm5lbFR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lc3NhZ2VSZWZlcmVuY2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lc3NhZ2VTbmFwc2hvdHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHJlZmVyZW5jZWRNZXNzYWdlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBub25jZTogZGVmYXVsdFZhbHVlLFxuICAgICAgcmVhY3Rpb25zOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzdGlja2VySXRlbXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRocmVhZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgd2ViaG9va0lkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwb2xsOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjYWxsOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzaGFyZWRDbGllbnRUaGVtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgcmVzb2x2ZWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLm1lc3NhZ2UsXG4gICAgfSxcbiAgICBtZXNzYWdlU25hcHNob3Q6IHtcbiAgICAgIG1lc3NhZ2U6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLm1lc3NhZ2VTbmFwc2hvdCxcbiAgICB9LFxuICAgIG1lc3NhZ2VJbnRlcmFjdGlvbk1ldGFkYXRhOiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgdXNlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgYXV0aG9yaXppbmdJbnRlZ3JhdGlvbk93bmVyczogZGVmYXVsdFZhbHVlLFxuICAgICAgb3JpZ2luYWxSZXNwb25zZU1lc3NhZ2VJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgaW50ZXJhY3RlZE1lc3NhZ2VJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdHJpZ2dlcmluZ0ludGVyYWN0aW9uTWV0YWRhdGE6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRhcmdldE1lc3NhZ2VJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdGFyZ2V0VXNlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMubWVzc2FnZUludGVyYWN0aW9uTWV0YWRhdGEsXG4gICAgfSxcbiAgICBtZXNzYWdlUGluOiB7XG4gICAgICBtZXNzYWdlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwaW5uZWRBdDogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMubWVzc2FnZVBpbixcbiAgICB9LFxuICAgIG1lc3NhZ2VJbnRlcmFjdGlvbjoge1xuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lbWJlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgbmFtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgdXNlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMubWVzc2FnZUludGVyYWN0aW9uLFxuICAgIH0sXG4gICAgbWVzc2FnZVJlZmVyZW5jZToge1xuICAgICAgbWVzc2FnZUlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjaGFubmVsSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLm1lc3NhZ2VSZWZlcmVuY2UsXG4gICAgfSxcbiAgICBtZXNzYWdlQ2FsbDoge1xuICAgICAgcGFydGljaXBhbnRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbmRlZFRpbWVzdGFtcDogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMubWVzc2FnZUNhbGwsXG4gICAgfSxcbiAgICBuYW1lcGxhdGU6IHtcbiAgICAgIHNrdUlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhc3NldDogZGVmYXVsdFZhbHVlLFxuICAgICAgbGFiZWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHBhbGV0dGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLm5hbWVwbGF0ZSxcbiAgICB9LFxuICAgIHJvbGU6IHtcbiAgICAgIG5hbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHBvc2l0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjb2xvcjogZGVmYXVsdFZhbHVlLFxuICAgICAgY29sb3JzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgcGVybWlzc2lvbnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGljb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVuaWNvZGVFbW9qaTogZGVmYXVsdFZhbHVlLFxuICAgICAgZmxhZ3M6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRhZ3M6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRvZ2dsZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnJvbGUsXG4gICAgfSxcbiAgICByb2xlQ29sb3JzOiB7XG4gICAgICBwcmltYXJ5Q29sb3I6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNlY29uZGFyeUNvbG9yOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0ZXJ0aWFyeUNvbG9yOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5yb2xlQ29sb3JzLFxuICAgIH0sXG4gICAgc2NoZWR1bGVkRXZlbnQ6IHtcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBndWlsZElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjaGFubmVsSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNyZWF0b3JJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgc2NoZWR1bGVkU3RhcnRUaW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzY2hlZHVsZWRFbmRUaW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbnRpdHlJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgY3JlYXRvcjogZGVmYXVsdFZhbHVlLFxuICAgICAgbmFtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZGVzY3JpcHRpb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHByaXZhY3lMZXZlbDogZGVmYXVsdFZhbHVlLFxuICAgICAgc3RhdHVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbnRpdHlUeXBlOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1c2VyQ291bnQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGxvY2F0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpbWFnZTogZGVmYXVsdFZhbHVlLFxuICAgICAgcmVjdXJyZW5jZVJ1bGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnNjaGVkdWxlZEV2ZW50LFxuICAgIH0sXG4gICAgc2NoZWR1bGVkRXZlbnRSZWN1cnJlbmNlUnVsZToge1xuICAgICAgc3RhcnQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGVuZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZnJlcXVlbmN5OiBkZWZhdWx0VmFsdWUsXG4gICAgICBpbnRlcnZhbDogZGVmYXVsdFZhbHVlLFxuICAgICAgYnlXZWVrZGF5OiBkZWZhdWx0VmFsdWUsXG4gICAgICBieU5XZWVrZGF5OiBkZWZhdWx0VmFsdWUsXG4gICAgICBieU1vbnRoOiBkZWZhdWx0VmFsdWUsXG4gICAgICBieU1vbnRoRGF5OiBkZWZhdWx0VmFsdWUsXG4gICAgICBieVllYXJEYXk6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNvdW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5zY2hlZHVsZWRFdmVudFJlY3VycmVuY2VSdWxlLFxuICAgIH0sXG4gICAgc2hhcmVkQ2xpZW50VGhlbWU6IHtcbiAgICAgIGNvbG9yczogZGVmYXVsdFZhbHVlLFxuICAgICAgYmFzZU1peDogZGVmYXVsdFZhbHVlLFxuICAgICAgZ3JhZGllbnRBbmdsZTogZGVmYXVsdFZhbHVlLFxuICAgICAgYmFzZVRoZW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5zaGFyZWRDbGllbnRUaGVtZSxcbiAgICB9LFxuICAgIHN0YWdlSW5zdGFuY2U6IHtcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBndWlsZElkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjaGFubmVsSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRvcGljOiBkZWZhdWx0VmFsdWUsXG4gICAgICBndWlsZFNjaGVkdWxlZEV2ZW50SWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnN0YWdlSW5zdGFuY2UsXG4gICAgfSxcbiAgICBpbnZpdGVTdGFnZUluc3RhbmNlOiB7XG4gICAgICBtZW1iZXJzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwYXJ0aWNpcGFudENvdW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICBzcGVha2VyQ291bnQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRvcGljOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5pbnZpdGVTdGFnZUluc3RhbmNlLFxuICAgIH0sXG4gICAgbWVkaWFHYWxsZXJ5SXRlbToge1xuICAgICAgbWVkaWE6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGRlc2NyaXB0aW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICBzcG9pbGVyOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5tZWRpYUdhbGxlcnlJdGVtLFxuICAgIH0sXG4gICAgc3RpY2tlcjoge1xuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHBhY2tJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgbmFtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZGVzY3JpcHRpb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRhZ3M6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGZvcm1hdFR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGF2YWlsYWJsZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZ3VpbGRJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdXNlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgc29ydFZhbHVlOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5zdGlja2VyLFxuICAgIH0sXG4gICAgdW5mdXJsZWRNZWRpYUl0ZW06IHtcbiAgICAgIHVybDogZGVmYXVsdFZhbHVlLFxuICAgICAgcHJveHlVcmw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGhlaWdodDogZGVmYXVsdFZhbHVlLFxuICAgICAgd2lkdGg6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNvbnRlbnRUeXBlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhdHRhY2htZW50SWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGZsYWdzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwbGFjZWhvbGRlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgcGxhY2Vob2xkZXJWZXJzaW9uOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy51bmZ1cmxlZE1lZGlhSXRlbSxcbiAgICB9LFxuICAgIHVzZXI6IHtcbiAgICAgIHVzZXJuYW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICBnbG9iYWxOYW1lOiBkZWZhdWx0VmFsdWUsXG4gICAgICBsb2NhbGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGZsYWdzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwcmVtaXVtVHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgcHVibGljRmxhZ3M6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFjY2VudENvbG9yOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZGlzY3JpbWluYXRvcjogZGVmYXVsdFZhbHVlLFxuICAgICAgYXZhdGFyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbWFpbDogZGVmYXVsdFZhbHVlLFxuICAgICAgYmFubmVyOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhdmF0YXJEZWNvcmF0aW9uRGF0YTogZGVmYXVsdFZhbHVlLFxuICAgICAgdG9nZ2xlczogZGVmYXVsdFZhbHVlLFxuICAgICAgY29sbGVjdGlibGVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwcmltYXJ5R3VpbGQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnVzZXIsXG4gICAgfSxcbiAgICB1c2VyUHJpbWFyeUd1aWxkOiB7XG4gICAgICBpZGVudGl0eUd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGlkZW50aXR5RW5hYmxlZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdGFnOiBkZWZhdWx0VmFsdWUsXG4gICAgICBiYWRnZTogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMudXNlclByaW1hcnlHdWlsZCxcbiAgICB9LFxuICAgIGF2YXRhckRlY29yYXRpb25EYXRhOiB7XG4gICAgICBhc3NldDogZGVmYXVsdFZhbHVlLFxuICAgICAgc2t1SWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmF2YXRhckRlY29yYXRpb25EYXRhLFxuICAgIH0sXG4gICAgd2ViaG9vazoge1xuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGNoYW5uZWxJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdXNlcjogZGVmYXVsdFZhbHVlLFxuICAgICAgbmFtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgYXZhdGFyOiBkZWZhdWx0VmFsdWUsXG4gICAgICB0b2tlbjogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwbGljYXRpb25JZDogZGVmYXVsdFZhbHVlLFxuICAgICAgc291cmNlR3VpbGQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNvdXJjZUNoYW5uZWw6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVybDogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMud2ViaG9vayxcbiAgICB9LFxuICAgIGd1aWxkT25ib2FyZGluZzoge1xuICAgICAgZGVmYXVsdENoYW5uZWxJZHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGVuYWJsZWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1vZGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHByb21wdHM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmd1aWxkT25ib2FyZGluZyxcbiAgICB9LFxuICAgIGd1aWxkT25ib2FyZGluZ1Byb21wdDoge1xuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGluT25ib2FyZGluZzogZGVmYXVsdFZhbHVlLFxuICAgICAgb3B0aW9uczogZGVmYXVsdFZhbHVlLFxuICAgICAgcmVxdWlyZWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNpbmdsZVNlbGVjdDogZGVmYXVsdFZhbHVlLFxuICAgICAgdGl0bGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmd1aWxkT25ib2FyZGluZ1Byb21wdCxcbiAgICB9LFxuICAgIGd1aWxkT25ib2FyZGluZ1Byb21wdE9wdGlvbjoge1xuICAgICAgY2hhbm5lbElkczogZGVmYXVsdFZhbHVlLFxuICAgICAgZGVzY3JpcHRpb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGVtb2ppOiBkZWZhdWx0VmFsdWUsXG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgcm9sZUlkczogZGVmYXVsdFZhbHVlLFxuICAgICAgdGl0bGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmd1aWxkT25ib2FyZGluZ1Byb21wdE9wdGlvbixcbiAgICB9LFxuICAgIGVudGl0bGVtZW50OiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgc2t1SWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVzZXJJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgZ3VpbGRJZDogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwbGljYXRpb25JZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgZGVsZXRlZDogZGVmYXVsdFZhbHVlLFxuICAgICAgc3RhcnRzQXQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGVuZHNBdDogZGVmYXVsdFZhbHVlLFxuICAgICAgY29uc3VtZWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmVudGl0bGVtZW50LFxuICAgIH0sXG4gICAgc2t1OiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgYXBwbGljYXRpb25JZDogZGVmYXVsdFZhbHVlLFxuICAgICAgbmFtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgc2x1ZzogZGVmYXVsdFZhbHVlLFxuICAgICAgZmxhZ3M6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnNrdSxcbiAgICB9LFxuICAgIHZvaWNlU3RhdGU6IHtcbiAgICAgIHJlcXVlc3RUb1NwZWFrVGltZXN0YW1wOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjaGFubmVsSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHRvZ2dsZXM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNlc3Npb25JZDogZGVmYXVsdFZhbHVlLFxuICAgICAgdXNlcklkOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy52b2ljZVN0YXRlLFxuICAgIH0sXG4gICAgcG9sbDoge1xuICAgICAgcXVlc3Rpb246IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGFuc3dlcnM6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGV4cGlyeTogZGVmYXVsdFZhbHVlLFxuICAgICAgbGF5b3V0VHlwZTogZGVmYXVsdFZhbHVlLFxuICAgICAgYWxsb3dNdWx0aXNlbGVjdDogZGVmYXVsdFZhbHVlLFxuICAgICAgcmVzdWx0czogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMucG9sbCxcbiAgICB9LFxuICAgIHBvbGxBbnN3ZXI6IHtcbiAgICAgIGFuc3dlcklkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBwb2xsTWVkaWE6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnBvbGxBbnN3ZXIsXG4gICAgfSxcbiAgICBwb2xsUmVzdWx0OiB7XG4gICAgICBpc0ZpbmFsaXplZDogZGVmYXVsdFZhbHVlLFxuICAgICAgYW5zd2VyQ291bnRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5wb2xsUmVzdWx0LFxuICAgIH0sXG4gICAgcG9sbEFuc3dlckNvdW50OiB7XG4gICAgICBpZDogZGVmYXVsdFZhbHVlLFxuICAgICAgY291bnQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1lVm90ZWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnBvbGxBbnN3ZXJDb3VudCxcbiAgICB9LFxuICAgIHBvbGxNZWRpYToge1xuICAgICAgdGV4dDogZGVmYXVsdFZhbHVlLFxuICAgICAgZW1vamk6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnBvbGxNZWRpYSxcbiAgICB9LFxuICAgIHN1YnNjcmlwdGlvbjoge1xuICAgICAgY2FuY2VsZWRBdDogZGVmYXVsdFZhbHVlLFxuICAgICAgY291bnRyeTogZGVmYXVsdFZhbHVlLFxuICAgICAgY3VycmVudFBlcmlvZEVuZDogZGVmYXVsdFZhbHVlLFxuICAgICAgY3VycmVudFBlcmlvZFN0YXJ0OiBkZWZhdWx0VmFsdWUsXG4gICAgICByZW5ld2FsU2t1SWRzOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbnRpdGxlbWVudElkczogZGVmYXVsdFZhbHVlLFxuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNrdUlkczogZGVmYXVsdFZhbHVlLFxuICAgICAgc3RhdHVzOiBkZWZhdWx0VmFsdWUsXG4gICAgICB1c2VySWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLnN1YnNjcmlwdGlvbixcbiAgICB9LFxuICAgIHNvdW5kYm9hcmRTb3VuZDoge1xuICAgICAgYXZhaWxhYmxlOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbW9qaUlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBlbW9qaU5hbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGd1aWxkSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG5hbWU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHNvdW5kSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHVzZXI6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHZvbHVtZTogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMuc291bmRib2FyZFNvdW5kLFxuICAgIH0sXG4gICAgbG9iYnk6IHtcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBhcHBsaWNhdGlvbklkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtZXRhZGF0YTogZGVmYXVsdFZhbHVlLFxuICAgICAgbWVtYmVyczogZGVmYXVsdFZhbHVlLFxuICAgICAgbGlua2VkQ2hhbm5lbDogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMubG9iYnksXG4gICAgfSxcbiAgICBsb2JieU1lbWJlcjoge1xuICAgICAgaWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1ldGFkYXRhOiBkZWZhdWx0VmFsdWUsXG4gICAgICBmbGFnczogZGVmYXVsdFZhbHVlLFxuICAgICAgLi4uZGVzaXJlZFByb3BlcnRpZXMubG9iYnlNZW1iZXIsXG4gICAgfSxcbiAgICBsb2JieU1lc3NhZ2U6IHtcbiAgICAgIGlkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjb250ZW50OiBkZWZhdWx0VmFsdWUsXG4gICAgICBhcHBsaWNhdGlvbklkOiBkZWZhdWx0VmFsdWUsXG4gICAgICBmbGFnczogZGVmYXVsdFZhbHVlLFxuICAgICAgYXV0aG9yOiBkZWZhdWx0VmFsdWUsXG4gICAgICBjaGFubmVsSWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIGxvYmJ5SWQ6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIG1ldGFkYXRhOiBkZWZhdWx0VmFsdWUsXG4gICAgICBtb2RlcmF0aW9uTWV0YWRhdGE6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIHR5cGU6IGRlZmF1bHRWYWx1ZSxcbiAgICAgIC4uLmRlc2lyZWRQcm9wZXJ0aWVzLmxvYmJ5TWVzc2FnZSxcbiAgICB9LFxuICAgIGxvYmJ5SW52aXRlOiB7XG4gICAgICBjb2RlOiBkZWZhdWx0VmFsdWUsXG4gICAgICAuLi5kZXNpcmVkUHJvcGVydGllcy5sb2JieUludml0ZSxcbiAgICB9LFxuICB9IHNhdGlzZmllcyBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcyBhcyBDb21wbGV0ZURlc2lyZWRQcm9wZXJ0aWVzPFQsIFREZWZhdWx0Pjtcbn1cblxuLyoqIEBwcml2YXRlIFRoaXMgaXMgc3ViamVjdCB0byBicmVha2luZyBjaGFuZ2VzIHdpdGhvdXQgbm90aWNlcyAqL1xuZXhwb3J0IHR5cGUgRXF1YWxzPFQxLCBUMj4gPSBSZXF1aXJlZDxUMT4gZXh0ZW5kcyBSZXF1aXJlZDxUMj4gPyAoUmVxdWlyZWQ8VDI+IGV4dGVuZHMgUmVxdWlyZWQ8VDE+ID8gdHJ1ZSA6IGZhbHNlKSA6IGZhbHNlO1xuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgdHlwZSBLZXlCeVZhbHVlPFRPYmosIFRWYWx1ZT4gPSB7XG4gIFtLZXkgaW4ga2V5b2YgVE9ial06IEVxdWFsczxUT2JqW0tleV0sIFRWYWx1ZT4gZXh0ZW5kcyB0cnVlID8gS2V5IDogbmV2ZXI7XG59W2tleW9mIFRPYmpdO1xuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgdHlwZSBDb21wbGV0ZTxUT2JqLCBURGVmYXVsdD4gPSB7XG4gIFtLIGluIGtleW9mIFRPYmpdLT86IHVuZGVmaW5lZCBleHRlbmRzIFRPYmpbS10gPyBURGVmYXVsdCA6IEV4Y2x1ZGU8VE9ialtLXSwgdW5kZWZpbmVkPjtcbn07XG5cbi8qKiBAcHJpdmF0ZSBUaGlzIGlzIHN1YmplY3QgdG8gYnJlYWtpbmcgY2hhbmdlcyB3aXRob3V0IG5vdGljZXMgKi9cbmV4cG9ydCB0eXBlIENvbXBsZXRlQnlLZXlzPFRPYmosIEtleXMgZXh0ZW5kcyBzdHJpbmcsIFREZWZhdWx0PiA9IHtcbiAgW0sgaW4gS2V5c10tPzogSyBleHRlbmRzIGtleW9mIFRPYmogPyAodW5kZWZpbmVkIGV4dGVuZHMgVE9ialtLXSA/IFREZWZhdWx0IDogRXhjbHVkZTxUT2JqW0tdLCB1bmRlZmluZWQ+KSA6IFREZWZhdWx0O1xufTtcblxuLyoqIEBwcml2YXRlIFRoaXMgaXMgc3ViamVjdCB0byBicmVha2luZyBjaGFuZ2VzIHdpdGhvdXQgbm90aWNlcyAqL1xuZXhwb3J0IHR5cGUgSm9pblR1cGxlPFQgZXh0ZW5kcyBzdHJpbmdbXSwgVERlbGltaXRlciBleHRlbmRzIHN0cmluZz4gPSBUIGV4dGVuZHMgcmVhZG9ubHkgW2luZmVyIEYgZXh0ZW5kcyBzdHJpbmcsIC4uLmluZmVyIFIgZXh0ZW5kcyBzdHJpbmdbXV1cbiAgPyBSWydsZW5ndGgnXSBleHRlbmRzIDBcbiAgICA/IEZcbiAgICA6IGAke0Z9JHtURGVsaW1pdGVyfSR7Sm9pblR1cGxlPFIsIFREZWxpbWl0ZXI+fWBcbiAgOiAnJztcblxuLyoqIEBwcml2YXRlIFRoaXMgaXMgc3ViamVjdCB0byBicmVha2luZyBjaGFuZ2VzIHdpdGhvdXQgbm90aWNlcyAqL1xuZXhwb3J0IHR5cGUgRGVzaXJlZFByb3BlcnRpZXNNZXRhZGF0YSA9IHtcbiAgW0sgaW4ga2V5b2YgVHJhbnNmb3JtZXJzT2JqZWN0c10/OiB7XG4gICAgZGVwZW5kZW5jaWVzOiB7XG4gICAgICBbS2V5IGluIGtleW9mIFRyYW5zZm9ybWVyc09iamVjdHNbS11dPzogKGtleW9mIFRyYW5zZm9ybWVyc09iamVjdHNbS10pW107XG4gICAgfTtcbiAgICBhbHdheXNQcmVzZW50czogKGtleW9mIFRyYW5zZm9ybWVyc09iamVjdHNbS10pW107XG4gIH07XG59O1xuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgdHlwZSBEZXNpcmFibGVQcm9wZXJ0aWVzPFQgZXh0ZW5kcyBUcmFuc2Zvcm1lcnNPYmplY3RzW2tleW9mIFRyYW5zZm9ybWVyc09iamVjdHNdPiA9IEV4Y2x1ZGU8XG4gIGtleW9mIFQsXG4gIC8vIEV4Y2x1ZGUgdGhlIHByb3BzIHRoYXQgZGVwZW5kIG9uIHNvbWV0aGluZyBlbHNlIGZyb20gdGhlIGRlc2lyYWJsZSBwcm9wZXJ0aWVzXG4gIHwga2V5b2YgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXNNZXRhZGF0YVtLZXlCeVZhbHVlPFRyYW5zZm9ybWVyc09iamVjdHMsIFQ+XVsnZGVwZW5kZW5jaWVzJ11cbiAgLy8gRXhjbHVkZSB0aGUgcHJvcHMgdGhhdCBhcmUgYWx3YXlzIHByZXNlbnRcbiAgfCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllc01ldGFkYXRhW0tleUJ5VmFsdWU8VHJhbnNmb3JtZXJzT2JqZWN0cywgVD5dWydhbHdheXNQcmVzZW50cyddW251bWJlcl1cbj47XG5cbi8qKiBAcHJpdmF0ZSBUaGlzIGlzIHN1YmplY3QgdG8gYnJlYWtpbmcgY2hhbmdlcyB3aXRob3V0IG5vdGljZXMgKi9cbmV4cG9ydCB0eXBlIERlc2lyZWRQcm9wZXJ0aWVzTWFwcGVyPFQgZXh0ZW5kcyBUcmFuc2Zvcm1lcnNPYmplY3RzW2tleW9mIFRyYW5zZm9ybWVyc09iamVjdHNdPiA9IHtcbiAgW0tleSBpbiBEZXNpcmFibGVQcm9wZXJ0aWVzPFQ+XTogYm9vbGVhbjtcbn07XG5cbmRlY2xhcmUgY29uc3QgVHlwZUVycm9yU3ltYm9sOiB1bmlxdWUgc3ltYm9sO1xuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgaW50ZXJmYWNlIERlc2lyZWRQcm9wZXJ0aWVzRXJyb3I8VCBleHRlbmRzIHN0cmluZz4ge1xuICBbVHlwZUVycm9yU3ltYm9sXTogVDtcbn1cblxuLyoqIEBwcml2YXRlIFRoaXMgaXMgc3ViamVjdCB0byBicmVha2luZyBjaGFuZ2VzIHdpdGhvdXQgbm90aWNlcyAqL1xuZXhwb3J0IHR5cGUgQXJlRGVwZW5kZW5jaWVzU2F0aXNmaWVkPFQsIFREZXBlbmRlbmNpZXMgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCBzdHJpbmdbXT4gfCB1bmRlZmluZWQsIFRQcm9wcz4gPSB7XG4gIFtLIGluIGtleW9mIFRdOiBJc0tleURlc2lyZWQ8VFtLXSwgVERlcGVuZGVuY2llcywgVFByb3BzPiBleHRlbmRzIHRydWUgPyB0cnVlIDogZmFsc2U7XG59O1xuXG4vKiogQHByaXZhdGUgVGhpcyBpcyBzdWJqZWN0IHRvIGJyZWFraW5nIGNoYW5nZXMgd2l0aG91dCBub3RpY2VzICovXG5leHBvcnQgdHlwZSBJc0tleURlc2lyZWQ8VEtleSwgVERlcGVuZGVuY2llcyBleHRlbmRzIFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPiB8IHVuZGVmaW5lZCwgVFByb3BzPiA9IFRQcm9wcyBleHRlbmRzIG5ldmVyIC8vIElmIHRoZSBwcm9wcyBhcmUgbmV2ZXIsIGFsbCBwcm9wcyBhcmUgYWxsb3dlZFxuICA/IHRydWVcbiAgOiBUS2V5IGV4dGVuZHMga2V5b2YgVFByb3BzIC8vIFRoZSBrZXkgaGFzIGEgZGVzaXJlZCBwcm9wcz9cbiAgICA/IC8vIFllcywgaXMgaXQgdHJ1ZT9cbiAgICAgIFRQcm9wc1tUS2V5XSBleHRlbmRzIHRydWVcbiAgICAgID8gLy8gWWVzLCB0aGlzIGlzIGEga2V5IHRvIGluY2x1ZGVcbiAgICAgICAgdHJ1ZVxuICAgICAgOiAvLyBObywgdGhpcyBpcyBhIGtleSB0byBleGNsdWRlXG4gICAgICAgIERlc2lyZWRQcm9wZXJ0aWVzRXJyb3I8YFRoaXMgcHJvcGVydHkgaXMgbm90IHNldCBhcyBkZXNpcmVkIGluIGRlc2lyZWRQcm9wZXJ0aWVzIG9wdGlvbiBpbiBjcmVhdGVCb3QoKSwgc28geW91IGNhbid0IHVzZSBpdC4gTW9yZSBpbmZvIGhlcmU6IGh0dHBzOi8vZGlzY29yZGVuby5qcy5vcmcvZGVzaXJlZC1wcm9wc2A+XG4gICAgOiAvLyBObywgaXQgaXMgYSBwcm9wcyB3aXRoIGRlcGVuZGVuY2llcz9cbiAgICAgIFRLZXkgZXh0ZW5kcyBrZXlvZiBURGVwZW5kZW5jaWVzXG4gICAgICA/IC8vIFllcywgaGFzIGFsbCBvZiBpdHMgZGVwZW5kZW5jaWVzIHNhdGlzZmllZD9cbiAgICAgICAgQXJlRGVwZW5kZW5jaWVzU2F0aXNmaWVkPFREZXBlbmRlbmNpZXNbVEtleV0sIFREZXBlbmRlbmNpZXMsIFRQcm9wcz4gZXh0ZW5kcyB0cnVlW11cbiAgICAgICAgPyAvLyBZZXMsIHRoaXMgaXMgYSBrZXkgdG8gaW5jbHVkZVxuICAgICAgICAgIHRydWVcbiAgICAgICAgOiAvLyBObywgdGhpcyBpcyBhIGtleSB0byBub3QgaW5jbHVkZVxuICAgICAgICAgIERlc2lyZWRQcm9wZXJ0aWVzRXJyb3I8YFRoaXMgcHJvcGVydHkgZGVwZW5kcyBvbiB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6ICR7Sm9pblR1cGxlPE5vbk51bGxhYmxlPFREZXBlbmRlbmNpZXM+W1RLZXldLCAnLCAnPn0uIE5vdCBhbGwgb2YgdGhlc2UgcHJvcHMgYXJlIHNldCBhcyBkZXNpcmVkIGluIGRlc2lyZWRQcm9wZXJ0aWVzIG9wdGlvbiBpbiBjcmVhdGVCb3QoKSwgc28geW91IGNhbid0IHVzZSBpdC4gTW9yZSBpbmZvIGhlcmU6IGh0dHBzOi8vZGlzY29yZGVuby5qcy5vcmcvZGVzaXJlZC1wcm9wc2A+XG4gICAgICA6IC8vIE5vLCB3ZSBpbmNsdWRlIGl0IGJ1dCBpdCBkb2VzIG5vdCBoYXZlIG5laXRoZXIgcHJvcHMgbm9yIGRlcGVuZGVuY2llc1xuICAgICAgICB0cnVlO1xuXG4vKiogVGhlIGJlaGF2aW9yIGl0IHNob3VsZCBiZSB1c2VkIHdoZW4gcmVzb2x2aW5nIGFuIHVuZGVzaXJlZCBwcm9wZXJ0eSAqL1xuZXhwb3J0IGVudW0gRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvciB7XG4gIC8qKiBXaGVuIHRoaXMgYmVoYXZpb3IgaXMgdXNlZCB0aGUga2V5IHdpbGwgYmUgbWlzc2luZyBjb21wbGV0ZWx5ICovXG4gIFJlbW92ZUtleSxcbiAgLyoqIFdoZW4gdGhpcyBiZWhhdmlvciBpcyB1c2VkIHRoZSBrZXkgd2lsbCBiZSBhIHN0cmluZyBleHBsYWluaW5nIHdoeSB0aGUgcHJvcGVydHkgaXMgZGlzYWJsZWQgKi9cbiAgQ2hhbmdlVHlwZSxcbn1cblxuLyoqIEBwcml2YXRlIFRoaXMgaXMgc3ViamVjdCB0byBicmVha2luZyBjaGFuZ2VzIHdpdGhvdXQgbm90aWNlcyAqL1xuZXhwb3J0IHR5cGUgUmVtb3ZlS2V5SWZVbmRlc2lyZWQ8S2V5LCBULCBUUHJvcHMgZXh0ZW5kcyBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcz4gPVxuICBJc0tleURlc2lyZWQ8XG4gICAgS2V5LFxuICAgIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzTWV0YWRhdGFbS2V5QnlWYWx1ZTxUcmFuc2Zvcm1lcnNPYmplY3RzLCBUPl1bJ2RlcGVuZGVuY2llcyddLFxuICAgIFRQcm9wc1tLZXlCeVZhbHVlPFRyYW5zZm9ybWVyc09iamVjdHMsIFQ+XVxuICA+IGV4dGVuZHMgdHJ1ZVxuICAgID8gS2V5XG4gICAgOiBuZXZlcjtcblxuLyoqIEBwcml2YXRlIFRoaXMgaXMgc3ViamVjdCB0byBicmVha2luZyBjaGFuZ2VzIHdpdGhvdXQgbm90aWNlcyAqL1xuZXhwb3J0IHR5cGUgR2V0RXJyb3JXaGVuVW5kZXNpcmVkPFxuICBLZXkgZXh0ZW5kcyBrZXlvZiBULFxuICBULFxuICBUUHJvcHMgZXh0ZW5kcyBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcyxcbiAgVEJlaGF2aW9yIGV4dGVuZHMgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcixcbiAgLy8gVGhpcyBnZW5lcmljIHZhbHVlIGlzIHVzZWQgYXMgYW4gYWxpYXNcbiAgVElzRGVzaXJlZCA9IElzS2V5RGVzaXJlZDxcbiAgICBLZXksXG4gICAgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXNNZXRhZGF0YVtLZXlCeVZhbHVlPFRyYW5zZm9ybWVyc09iamVjdHMsIFQ+XVsnZGVwZW5kZW5jaWVzJ10sXG4gICAgVFByb3BzW0tleUJ5VmFsdWU8VHJhbnNmb3JtZXJzT2JqZWN0cywgVD5dXG4gID4sXG4+ID0gVElzRGVzaXJlZCBleHRlbmRzIHRydWUgPyBUcmFuc2Zvcm1Qcm9wZXJ0eTxUW0tleV0sIFRQcm9wcywgVEJlaGF2aW9yPiA6IFRJc0Rlc2lyZWQ7XG5cbi8qKiBAcHJpdmF0ZSBUaGlzIGlzIHN1YmplY3QgdG8gYnJlYWtpbmcgY2hhbmdlcyB3aXRob3V0IG5vdGljZXMgKi9cbmV4cG9ydCB0eXBlIElzT2JqZWN0PFQ+ID0gVCBleHRlbmRzIG9iamVjdCA/IChUIGV4dGVuZHMgRnVuY3Rpb24gPyBmYWxzZSA6IHRydWUpIDogZmFsc2U7XG5cbi8vIElmIHRoZSBvYmplY3QgaXMgYSB0cmFuc2Zvcm1lZCBvYmplY3QsIGEgY29sbGVjdGlvbiBvZiB0cmFuc2Zvcm1lZCBvYmplY3Qgb3IgYW4gYXJyYXkgb2YgdHJhbnNmb3JtZWQgb2JqZWN0cyB3ZSBuZWVkIHRvIGFwcGx5IHRoZSBkZXNpcmVkIHByb3BzIHRvIHRoZW0gYXMgd2VsbFxuLy8gTk9URTogY2hhbmdpbmcgdGhlIG9yZGVyIG9mIHRoZXNlIHRlcm5hcmllcyBjYW4gY2F1c2UgYnVncywgZm9yIHRoaXMgcmVhc29uIHdlIGNoZWNrIGluIHRoaXMgb3JkZXI6XG4vLyAgICAgIC0gSXMgaXQgYW4gYXJyYXk/XG4vLyAgICAgIC0gSXMgaXQgYSBjb2xsZWN0aW9uP1xuLy8gICAgICAtIElzIGl0IGEgYm90P1xuLy8gICAgICAtIElzIGl0IGEgdHJhbnNmb3JtZWQgb2JqZWN0P1xuLy8gICAgICAtIElzIGl0IGFuIGludGVyYWN0aW9uIHJlc29sdmVkIGRhdGEgbWVtYmVyP1xuLy8gICAgICAtIElzIGl0IGFuIGludGVyYWN0aW9uIHJlc29sdmVkIGRhdGEgY2hhbm5lbD9cbi8vICAgICAgLSBJcyBpdCBhbiBvYmplY3Q/XG4vLyAgICAgIC0gSXQncyBub3QgYW4gb2JqZWN0XG5cbi8qKlxuICogVHJhbnNmb3JtIGEgZ2VuZXJpYyBvYmplY3QgcHJvcGVydGllcyBiYXNlZCBvbiB0aGUgZGVzaXJlZCBwcm9wZXJ0aWVzIGFuZCBiZWhhdmlvciBmb3Igb3RoZXIgdHJhbnNmb3JtZXIgb2JqZWN0cyBpbiB0aGUgb2JqZWN0LlxuICovXG5leHBvcnQgdHlwZSBUcmFuc2Zvcm1Qcm9wZXJ0eTxULCBUUHJvcHMgZXh0ZW5kcyBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgVEJlaGF2aW9yIGV4dGVuZHMgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcj4gPVxuICBUIGV4dGVuZHMgQXJyYXk8aW5mZXIgVT4gLy8gaXMgaXQgYW4gYXJyYXk/XG4gICAgPyAvLyBZZXMsIGFwcGx5IHRoZSBkZXNpcmVkIHByb3BzXG4gICAgICBUcmFuc2Zvcm1Qcm9wZXJ0eTxVLCBUUHJvcHMsIFRCZWhhdmlvcj5bXVxuICAgIDogLy8gTm8sIGlzIGl0IGEgY29sbGVjdGlvbj9cbiAgICAgIFQgZXh0ZW5kcyBDb2xsZWN0aW9uPGluZmVyIFUsIGluZmVyIFVPYmo+XG4gICAgICA/IC8vIFllcywgY2hlY2sgZm9yIG5lc3RlZCBwcm9wcmlldGllc1xuICAgICAgICBDb2xsZWN0aW9uPFUsIFRyYW5zZm9ybVByb3BlcnR5PFVPYmosIFRQcm9wcywgVEJlaGF2aW9yPj5cbiAgICAgIDogLy8gTm8sIGlzIGl0IGEgQm90P1xuICAgICAgICBFcXVhbHM8VCwgQm90PiBleHRlbmRzIHRydWVcbiAgICAgICAgPyAvLyBZZXMsIHJldHVybiBhIGJvdCB3aXRoIHRoZSBjb3JyZWN0IHNldCBvZiBwcm9wcyAmIGJlaGF2aW9yXG4gICAgICAgICAgQm90PFRQcm9wcywgVEJlaGF2aW9yPlxuICAgICAgICA6IC8vIE5vLCBpcyBpdCBhIHRyYW5zZm9ybWVkIG9iamVjdD9cbiAgICAgICAgICBUIGV4dGVuZHMgVHJhbnNmb3JtZXJzT2JqZWN0c1trZXlvZiBUcmFuc2Zvcm1lcnNPYmplY3RzXVxuICAgICAgICAgID8gLy8gWWVzLCBhcHBseSB0aGUgZGVzaXJlZCBwcm9wc1xuICAgICAgICAgICAgU2V0dXBEZXNpcmVkUHJvcHM8VCwgVFByb3BzLCBUQmVoYXZpb3I+XG4gICAgICAgICAgOiAvLyBObywgaXMgaXQgYW4gaW50ZXJhY3Rpb24gcmVzb2x2ZWQgZGF0YSBtZW1iZXI/IHwgV2UgbmVlZCB0byBjaGVjayB0aGlzIGhlcmUgYmVjYXVzZSB0aGUgdHlwZSBpdHNlbGYgaGFzIG5vdCB3YXkgb2YgZ2V0dGluZyB0aGUgZGVzaXJlZCBwcm9wc1xuICAgICAgICAgICAgRXF1YWxzPFQsIEludGVyYWN0aW9uUmVzb2x2ZWREYXRhTWVtYmVyPFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPj4gZXh0ZW5kcyB0cnVlXG4gICAgICAgICAgICA/IC8vIFllcywgYXBwbHkgdGhlIGRlc2lyZWQgcHJvcHNcbiAgICAgICAgICAgICAgSW50ZXJhY3Rpb25SZXNvbHZlZERhdGFNZW1iZXI8VFByb3BzLCBUQmVoYXZpb3I+XG4gICAgICAgICAgICA6IC8vIE5vLCBpcyBpdCBhbiBpbnRlcmFjdGlvbiByZXNvbHZlZCBkYXRhIGNoYW5uZWw/IHwgV2UgbmVlZCB0byBjaGVjayB0aGlzIGhlcmUgYmVjYXVzZSB0aGUgdHlwZSBpdHNlbGYgaGFzIG5vdCB3YXkgb2YgZ2V0dGluZyB0aGUgZGVzaXJlZCBwcm9wc1xuICAgICAgICAgICAgICBFcXVhbHM8VCwgSW50ZXJhY3Rpb25SZXNvbHZlZERhdGFDaGFubmVsPFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPj4gZXh0ZW5kcyB0cnVlXG4gICAgICAgICAgICAgID8gLy8gWWVzLCBhcHBseSB0aGUgZGVzaXJlZCBwcm9wc1xuICAgICAgICAgICAgICAgIEludGVyYWN0aW9uUmVzb2x2ZWREYXRhQ2hhbm5lbDxUUHJvcHMsIFRCZWhhdmlvcj5cbiAgICAgICAgICAgICAgOiAvLyBJcyBpdCBhIGZ1bmN0aW9uP1xuICAgICAgICAgICAgICAgIFQgZXh0ZW5kcyAoLi4uYXJnczogaW5mZXIgUCkgPT4gUHJvbWlzZTxpbmZlciBSPlxuICAgICAgICAgICAgICAgID8gLy8gWWVzLCB3ZSBuZWVkIHRvIGVuc3VyZSB3ZSB0cmFuc2Zvcm0gdGhlIHJldHVybiB0eXBlIGFzIHdlbGxcbiAgICAgICAgICAgICAgICAgICguLi5hcmdzOiBQKSA9PiBQcm9taXNlPFRyYW5zZm9ybVByb3BlcnR5PFIsIFRQcm9wcywgVEJlaGF2aW9yPj5cbiAgICAgICAgICAgICAgICA6IC8vIElzIGl0IGFuIG9iamVjdD9cbiAgICAgICAgICAgICAgICAgIElzT2JqZWN0PFQ+IGV4dGVuZHMgdHJ1ZVxuICAgICAgICAgICAgICAgICAgPyAvLyBZZXMsIHdlIG5lZWQgdG8gZW5zdXJlIHdlIHRyYW5zZm9ybSB0aGUgbmVzdGVkIHByb3BlcnRpZXMgYXMgd2VsbFxuICAgICAgICAgICAgICAgICAgICB7IFtLIGluIGtleW9mIFRdOiBUcmFuc2Zvcm1Qcm9wZXJ0eTxUW0tdLCBUUHJvcHMsIFRCZWhhdmlvcj4gfVxuICAgICAgICAgICAgICAgICAgOiAvLyBObywgdGhpcyBpcyBhIG5vcm1hbCB2YWx1ZSBzdWNoIGFzIHN0cmluZyAvIGJpZ2ludCAvIG51bWJlclxuICAgICAgICAgICAgICAgICAgICBUO1xuXG4vKipcbiAqIEFwcGx5IGRlc2lyZWQgcHJvcGVydGllcyB0byBhbiBvYmplY3QuXG4gKlxuICogQHJlbWFya3NcbiAqIElmIHRoZSBvYmplY3QgaXMgbm90IGEgdHJhbnNmb3JtZWQgb2JqZWN0IHRoYXQgc3VwcG9ydHMgZGVzaXJlZCBwcm9wZXJ0aWVzIHRoaXMgZnVuY3Rpb24gYmVoYXZlcyB0aGUgc2FtZSBhcyBUcmFuc2Zvcm1Qcm9wZXJ0eSBvbiB0aGUgZW50aXJlIG9iamVjdFxuICovXG5leHBvcnQgdHlwZSBTZXR1cERlc2lyZWRQcm9wczxcbiAgVCxcbiAgVFByb3BzIGV4dGVuZHMgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsXG4gIFRCZWhhdmlvciBleHRlbmRzIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3IgPSBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yLlJlbW92ZUtleSxcbj4gPSB7XG4gIC8vIFdoZW4gdGhlIGJlaGF2aW9yIGlzIHRvIHJlbW92ZSB0aGUga2V5IHdlIHVzZSB0aGUgUmVtb3ZlS2V5SWZVbmRlc2lyZWQgdHlwZSBoZWxwZXIgZWxzZSByZXR1cm4gdGhlIEtleSBhcyBpc1xuICBbS2V5IGluIGtleW9mIFQgYXMgVEJlaGF2aW9yIGV4dGVuZHMgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvci5SZW1vdmVLZXlcbiAgICA/IFJlbW92ZUtleUlmVW5kZXNpcmVkPEtleSwgVCwgVFByb3BzPlxuICAgIDogS2V5XTogLy8gV2hlbiB0aGUgYmVoYXZpb3IgaXMgdG8gY2hhbmdlIHRoZSB0eXBlIHdlIHVzZSB0aGUgR2V0RXJyb3JXaGVuVW5kZXNpcmVkIHR5cGUgaGVscGVyIGVsc2UgYXBwbHkgdGhlIGRlc2lyZWQgcHJvcHMgdG8gdGhlIGtleSBhbmQgcmV0dXJuXG4gIFRCZWhhdmlvciBleHRlbmRzIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3IuQ2hhbmdlVHlwZVxuICAgID8gR2V0RXJyb3JXaGVuVW5kZXNpcmVkPEtleSwgVCwgVFByb3BzLCBUQmVoYXZpb3I+XG4gICAgOiBUcmFuc2Zvcm1Qcm9wZXJ0eTxUW0tleV0sIFRQcm9wcywgVEJlaGF2aW9yPjtcbn07XG5cbi8qKlxuICogVGhlIGRlc2lyZWQgcHJvcGVydGllcyBmb3IgZWFjaCB0cmFuc2Zvcm1lciBvYmplY3QuXG4gKi9cbmV4cG9ydCB0eXBlIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzID0ge1xuICBbS2V5IGluIGtleW9mIFRyYW5zZm9ybWVyc09iamVjdHNdOiBEZXNpcmVkUHJvcGVydGllc01hcHBlcjxUcmFuc2Zvcm1lcnNPYmplY3RzW0tleV0+O1xufTtcblxuLyoqIEBwcml2YXRlIFRoaXMgaXMgc3ViamVjdCB0byBicmVha2luZyBjaGFuZ2VzIHdpdGhvdXQgbm90aWNlcyAqL1xuZXhwb3J0IHR5cGUgQ29tcGxldGVEZXNpcmVkUHJvcGVydGllczxUIGV4dGVuZHMgUmVjdXJzaXZlUGFydGlhbDxUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcz4sIFRURGVmYXVsdCBleHRlbmRzIGJvb2xlYW4gPSBmYWxzZT4gPSB7XG4gIFtLIGluIGtleW9mIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzXTogQ29tcGxldGU8UGFydGlhbDxUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllc1tLXT4gJiBUW0tdLCBUVERlZmF1bHQ+O1xufTtcbiJdLCJuYW1lcyI6WyJ0cmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllc01ldGFkYXRhIiwiY2hhbm5lbCIsImRlcGVuZGVuY2llcyIsImFyY2hpdmVkIiwiaW52aXRhYmxlIiwibG9ja2VkIiwibnNmdyIsIm5ld2x5Q3JlYXRlZCIsIm1hbmFnZWQiLCJhbHdheXNQcmVzZW50cyIsImd1aWxkIiwidGhyZWFkcyIsImZlYXR1cmVzIiwiaW50ZXJhY3Rpb24iLCJyZXNwb25kIiwic2VuZEZvbGxvd3VwTWVzc2FnZSIsImVkaXQiLCJkZWZlckVkaXQiLCJkZWZlciIsImRlbGV0ZSIsIm1lbWJlciIsImRlYWYiLCJtdXRlIiwicGVuZGluZyIsImZsYWdzIiwiZGlkUmVqb2luIiwic3RhcnRlZE9uYm9hcmRpbmciLCJieXBhc3Nlc1ZlcmlmaWNhdGlvbiIsImNvbXBsZXRlZE9uYm9hcmRpbmciLCJtZXNzYWdlIiwiY3Jvc3Nwb3N0ZWQiLCJlcGhlbWVyYWwiLCJmYWlsZWRUb01lbnRpb25Tb21lUm9sZXNJblRocmVhZCIsImhhc1RocmVhZCIsImlzQ3Jvc3Nwb3N0IiwibG9hZGluZyIsIm1lbnRpb25lZFVzZXJJZHMiLCJtZW50aW9uRXZlcnlvbmUiLCJwaW5uZWQiLCJzb3VyY2VNZXNzYWdlRGVsZXRlZCIsInN1cHByZXNzRW1iZWRzIiwic3VwcHJlc3NOb3RpZmljYXRpb25zIiwidGltZXN0YW1wIiwidHRzIiwidXJnZW50Iiwicm9sZSIsImhvaXN0IiwibWVudGlvbmFibGUiLCJwcmVtaXVtU3Vic2NyaWJlciIsImF2YWlsYWJsZUZvclB1cmNoYXNlIiwiZ3VpbGRDb25uZWN0aW9ucyIsInVzZXIiLCJ0YWciLCJib3QiLCJzeXN0ZW0iLCJtZmFFbmFibGVkIiwidmVyaWZpZWQiLCJhdmF0YXJVcmwiLCJkaXNwbGF5TmFtZSIsImRlZmF1bHRBdmF0YXJVcmwiLCJkaXNwbGF5QXZhdGFyVXJsIiwiY3JlYXRlZFRpbWVzdGFtcCIsImVtb2ppIiwiYW5pbWF0ZWQiLCJhdmFpbGFibGUiLCJyZXF1aXJlQ29sb25zIiwiY3JlYXRlRGVzaXJlZFByb3BlcnRpZXNPYmplY3QiLCJkZXNpcmVkUHJvcGVydGllcyIsImRlZmF1bHRWYWx1ZSIsImFjdGl2aXR5SW5zdGFuY2UiLCJhcHBsaWNhdGlvbklkIiwiaW5zdGFuY2VJZCIsImxhdW5jaElkIiwibG9jYXRpb24iLCJ1c2VycyIsImFjdGl2aXR5TG9jYXRpb24iLCJjaGFubmVsSWQiLCJndWlsZElkIiwiaWQiLCJraW5kIiwiYXR0YWNobWVudCIsImZpbGVuYW1lIiwidGl0bGUiLCJjb250ZW50VHlwZSIsInNpemUiLCJ1cmwiLCJwcm94eVVybCIsImhlaWdodCIsIndpZHRoIiwiZGVzY3JpcHRpb24iLCJkdXJhdGlvbl9zZWNzIiwid2F2ZWZvcm0iLCJhcHBsaWNhdGlvbiIsImNsaXBDcmVhdGVkQXQiLCJjbGlwUGFydGljaXBhbnRzIiwicGxhY2Vob2xkZXIiLCJwbGFjZWhvbGRlclZlcnNpb24iLCJ0eXBlIiwicG9zaXRpb24iLCJuYW1lIiwidG9waWMiLCJiaXRyYXRlIiwidXNlckxpbWl0IiwicmF0ZUxpbWl0UGVyVXNlciIsInJ0Y1JlZ2lvbiIsInZpZGVvUXVhbGl0eU1vZGUiLCJsYXN0UGluVGltZXN0YW1wIiwicGVybWlzc2lvbk92ZXJ3cml0ZXMiLCJwZXJtaXNzaW9ucyIsImFwcFBlcm1pc3Npb25zIiwibGFzdE1lc3NhZ2VJZCIsIm93bmVySWQiLCJwYXJlbnRJZCIsIm1lbWJlckNvdW50IiwibWVzc2FnZUNvdW50IiwiZGVmYXVsdEF1dG9BcmNoaXZlRHVyYXRpb24iLCJhcHBsaWVkVGFncyIsImF2YWlsYWJsZVRhZ3MiLCJkZWZhdWx0Rm9ydW1MYXlvdXQiLCJkZWZhdWx0UmVhY3Rpb25FbW9qaSIsImRlZmF1bHRTb3J0T3JkZXIiLCJkZWZhdWx0VGhyZWFkUmF0ZUxpbWl0UGVyVXNlciIsImljb24iLCJyZWNpcGllbnRzIiwidG90YWxNZXNzYWdlU2VudCIsInRocmVhZE1ldGFkYXRhIiwiY29sbGVjdGlibGVzIiwibmFtZXBsYXRlIiwiY29tcG9uZW50IiwiY3VzdG9tSWQiLCJyZXF1aXJlZCIsImRpc2FibGVkIiwic3R5bGUiLCJsYWJlbCIsInZhbHVlIiwiZGVmYXVsdCIsImNoYW5uZWxUeXBlcyIsIm9wdGlvbnMiLCJtaW5WYWx1ZXMiLCJtYXhWYWx1ZXMiLCJtaW5MZW5ndGgiLCJtYXhMZW5ndGgiLCJjb21wb25lbnRzIiwiZGVmYXVsdFZhbHVlcyIsInNrdUlkIiwiYWNjZXNzb3J5IiwiY29udGVudCIsInNwb2lsZXIiLCJpdGVtcyIsImRpdmlkZXIiLCJzcGFjaW5nIiwiZmlsZSIsIm1lZGlhIiwiYWNjZW50Q29sb3IiLCJ2YWx1ZXMiLCJyZXNvbHZlZCIsImZvcnVtVGFnIiwiZW1vamlJZCIsImVtb2ppTmFtZSIsIm1vZGVyYXRlZCIsInJvbGVzIiwiYWZrVGltZW91dCIsImFwcHJveGltYXRlTWVtYmVyQ291bnQiLCJhcHByb3hpbWF0ZVByZXNlbmNlQ291bnQiLCJkZWZhdWx0TWVzc2FnZU5vdGlmaWNhdGlvbnMiLCJleHBsaWNpdENvbnRlbnRGaWx0ZXIiLCJtYXhNZW1iZXJzIiwibWF4UHJlc2VuY2VzIiwibWF4VmlkZW9DaGFubmVsVXNlcnMiLCJtZmFMZXZlbCIsImNoYW5uZWxzIiwiZW1vamlzIiwiaWNvbkhhc2giLCJsYXJnZSIsIm1lbWJlcnMiLCJvd25lciIsInByZXNlbmNlcyIsInN0aWNrZXJzIiwidG9nZ2xlcyIsInVuYXZhaWxhYmxlIiwidm9pY2VTdGF0ZXMiLCJ3aWRnZXRFbmFibGVkIiwibnNmd0xldmVsIiwicHJlZmVycmVkTG9jYWxlIiwicHJlbWl1bVN1YnNjcmlwdGlvbkNvdW50IiwicHJlbWl1bVRpZXIiLCJzdGFnZUluc3RhbmNlcyIsInN5c3RlbUNoYW5uZWxGbGFncyIsInZhbml0eVVybENvZGUiLCJ2ZXJpZmljYXRpb25MZXZlbCIsIndlbGNvbWVTY3JlZW4iLCJkaXNjb3ZlcnlTcGxhc2giLCJqb2luZWRBdCIsInNoYXJkSWQiLCJiYW5uZXIiLCJzcGxhc2giLCJhZmtDaGFubmVsSWQiLCJ3aWRnZXRDaGFubmVsSWQiLCJzeXN0ZW1DaGFubmVsSWQiLCJydWxlc0NoYW5uZWxJZCIsInB1YmxpY1VwZGF0ZXNDaGFubmVsSWQiLCJwcmVtaXVtUHJvZ3Jlc3NCYXJFbmFibGVkIiwic2FmZXR5QWxlcnRzQ2hhbm5lbElkIiwibWF4U3RhZ2VWaWRlb0NoYW5uZWxVc2VycyIsImluY2lkZW50c0RhdGEiLCJkbVNwYW1EZXRlY3RlZEF0IiwiZG1zRGlzYWJsZWRVbnRpbCIsImludml0ZXNEaXNhYmxlZFVudGlsIiwicmFpZERldGVjdGVkQXQiLCJ0b2tlbiIsInZlcnNpb24iLCJkYXRhIiwibG9jYWxlIiwiZ3VpbGRMb2NhbGUiLCJlbnRpdGxlbWVudHMiLCJhdXRob3JpemluZ0ludGVncmF0aW9uT3duZXJzIiwiY29udGV4dCIsImF0dGFjaG1lbnRTaXplTGltaXQiLCJpbnRlcmFjdGlvbkNhbGxiYWNrIiwiYWN0aXZpdHlJbnN0YW5jZUlkIiwicmVzcG9uc2VNZXNzYWdlRXBoZW1lcmFsIiwicmVzcG9uc2VNZXNzYWdlSWQiLCJyZXNwb25zZU1lc3NhZ2VMb2FkaW5nIiwiaW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlIiwicmVzb3VyY2UiLCJpbnRlcmFjdGlvblJlc291cmNlIiwiaW52aXRlIiwiY29kZSIsImNyZWF0ZWRBdCIsImludml0ZXIiLCJtYXhBZ2UiLCJtYXhVc2VzIiwidGFyZ2V0VHlwZSIsInRhcmdldFVzZXIiLCJ0YXJnZXRBcHBsaWNhdGlvbiIsInRlbXBvcmFyeSIsInVzZXMiLCJndWlsZFNjaGVkdWxlZEV2ZW50IiwiZXhwaXJlc0F0IiwibmljayIsInByZW1pdW1TaW5jZSIsImF2YXRhciIsImNvbW11bmljYXRpb25EaXNhYmxlZFVudGlsIiwiYXZhdGFyRGVjb3JhdGlvbkRhdGEiLCJhY3Rpdml0eSIsImF0dGFjaG1lbnRzIiwiYXV0aG9yIiwiZWRpdGVkVGltZXN0YW1wIiwiZW1iZWRzIiwiaW50ZXJhY3Rpb25NZXRhZGF0YSIsIm1lbnRpb25lZENoYW5uZWxJZHMiLCJtZW50aW9uZWRSb2xlSWRzIiwibWVudGlvbnMiLCJjaGFubmVsVHlwZSIsIm1lc3NhZ2VSZWZlcmVuY2UiLCJtZXNzYWdlU25hcHNob3RzIiwicmVmZXJlbmNlZE1lc3NhZ2UiLCJub25jZSIsInJlYWN0aW9ucyIsInN0aWNrZXJJdGVtcyIsInRocmVhZCIsIndlYmhvb2tJZCIsInBvbGwiLCJjYWxsIiwic2hhcmVkQ2xpZW50VGhlbWUiLCJtZXNzYWdlU25hcHNob3QiLCJtZXNzYWdlSW50ZXJhY3Rpb25NZXRhZGF0YSIsIm9yaWdpbmFsUmVzcG9uc2VNZXNzYWdlSWQiLCJpbnRlcmFjdGVkTWVzc2FnZUlkIiwidHJpZ2dlcmluZ0ludGVyYWN0aW9uTWV0YWRhdGEiLCJ0YXJnZXRNZXNzYWdlSWQiLCJtZXNzYWdlUGluIiwicGlubmVkQXQiLCJtZXNzYWdlSW50ZXJhY3Rpb24iLCJtZXNzYWdlSWQiLCJtZXNzYWdlQ2FsbCIsInBhcnRpY2lwYW50cyIsImVuZGVkVGltZXN0YW1wIiwiYXNzZXQiLCJwYWxldHRlIiwiY29sb3IiLCJjb2xvcnMiLCJ1bmljb2RlRW1vamkiLCJ0YWdzIiwicm9sZUNvbG9ycyIsInByaW1hcnlDb2xvciIsInNlY29uZGFyeUNvbG9yIiwidGVydGlhcnlDb2xvciIsInNjaGVkdWxlZEV2ZW50IiwiY3JlYXRvcklkIiwic2NoZWR1bGVkU3RhcnRUaW1lIiwic2NoZWR1bGVkRW5kVGltZSIsImVudGl0eUlkIiwiY3JlYXRvciIsInByaXZhY3lMZXZlbCIsInN0YXR1cyIsImVudGl0eVR5cGUiLCJ1c2VyQ291bnQiLCJpbWFnZSIsInJlY3VycmVuY2VSdWxlIiwic2NoZWR1bGVkRXZlbnRSZWN1cnJlbmNlUnVsZSIsInN0YXJ0IiwiZW5kIiwiZnJlcXVlbmN5IiwiaW50ZXJ2YWwiLCJieVdlZWtkYXkiLCJieU5XZWVrZGF5IiwiYnlNb250aCIsImJ5TW9udGhEYXkiLCJieVllYXJEYXkiLCJjb3VudCIsImJhc2VNaXgiLCJncmFkaWVudEFuZ2xlIiwiYmFzZVRoZW1lIiwic3RhZ2VJbnN0YW5jZSIsImd1aWxkU2NoZWR1bGVkRXZlbnRJZCIsImludml0ZVN0YWdlSW5zdGFuY2UiLCJwYXJ0aWNpcGFudENvdW50Iiwic3BlYWtlckNvdW50IiwibWVkaWFHYWxsZXJ5SXRlbSIsInN0aWNrZXIiLCJwYWNrSWQiLCJmb3JtYXRUeXBlIiwic29ydFZhbHVlIiwidW5mdXJsZWRNZWRpYUl0ZW0iLCJhdHRhY2htZW50SWQiLCJ1c2VybmFtZSIsImdsb2JhbE5hbWUiLCJwcmVtaXVtVHlwZSIsInB1YmxpY0ZsYWdzIiwiZGlzY3JpbWluYXRvciIsImVtYWlsIiwicHJpbWFyeUd1aWxkIiwidXNlclByaW1hcnlHdWlsZCIsImlkZW50aXR5R3VpbGRJZCIsImlkZW50aXR5RW5hYmxlZCIsImJhZGdlIiwid2ViaG9vayIsInNvdXJjZUd1aWxkIiwic291cmNlQ2hhbm5lbCIsImd1aWxkT25ib2FyZGluZyIsImRlZmF1bHRDaGFubmVsSWRzIiwiZW5hYmxlZCIsIm1vZGUiLCJwcm9tcHRzIiwiZ3VpbGRPbmJvYXJkaW5nUHJvbXB0IiwiaW5PbmJvYXJkaW5nIiwic2luZ2xlU2VsZWN0IiwiZ3VpbGRPbmJvYXJkaW5nUHJvbXB0T3B0aW9uIiwiY2hhbm5lbElkcyIsInJvbGVJZHMiLCJlbnRpdGxlbWVudCIsInVzZXJJZCIsImRlbGV0ZWQiLCJzdGFydHNBdCIsImVuZHNBdCIsImNvbnN1bWVkIiwic2t1Iiwic2x1ZyIsInZvaWNlU3RhdGUiLCJyZXF1ZXN0VG9TcGVha1RpbWVzdGFtcCIsInNlc3Npb25JZCIsInF1ZXN0aW9uIiwiYW5zd2VycyIsImV4cGlyeSIsImxheW91dFR5cGUiLCJhbGxvd011bHRpc2VsZWN0IiwicmVzdWx0cyIsInBvbGxBbnN3ZXIiLCJhbnN3ZXJJZCIsInBvbGxNZWRpYSIsInBvbGxSZXN1bHQiLCJpc0ZpbmFsaXplZCIsImFuc3dlckNvdW50cyIsInBvbGxBbnN3ZXJDb3VudCIsIm1lVm90ZWQiLCJ0ZXh0Iiwic3Vic2NyaXB0aW9uIiwiY2FuY2VsZWRBdCIsImNvdW50cnkiLCJjdXJyZW50UGVyaW9kRW5kIiwiY3VycmVudFBlcmlvZFN0YXJ0IiwicmVuZXdhbFNrdUlkcyIsImVudGl0bGVtZW50SWRzIiwic2t1SWRzIiwic291bmRib2FyZFNvdW5kIiwic291bmRJZCIsInZvbHVtZSIsImxvYmJ5IiwibWV0YWRhdGEiLCJsaW5rZWRDaGFubmVsIiwibG9iYnlNZW1iZXIiLCJsb2JieU1lc3NhZ2UiLCJsb2JieUlkIiwibW9kZXJhdGlvbk1ldGFkYXRhIiwibG9iYnlJbnZpdGUiLCJEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yIl0sIm1hcHBpbmdzIjoiQUErSEE7Ozs7Q0FJQyxHQUNELE9BQU8sTUFBTUEsd0NBQXdDO0lBQ25EQyxTQUFTO1FBQ1BDLGNBQWM7WUFDWkMsVUFBVTtnQkFBQzthQUFVO1lBQ3JCQyxXQUFXO2dCQUFDO2FBQVU7WUFDdEJDLFFBQVE7Z0JBQUM7YUFBVTtZQUNuQkMsTUFBTTtnQkFBQzthQUFVO1lBQ2pCQyxjQUFjO2dCQUFDO2FBQVU7WUFDekJDLFNBQVM7Z0JBQUM7YUFBVTtRQUN0QjtRQUNBQyxnQkFBZ0I7WUFBQztZQUFXO1lBQXNCO1NBQXlCO0lBQzdFO0lBRUFDLE9BQU87UUFDTFIsY0FBYztZQUNaUyxTQUFTO2dCQUFDO2FBQVc7WUFDckJDLFVBQVU7Z0JBQUM7YUFBVTtRQUN2QjtRQUNBSCxnQkFBZ0IsRUFBRTtJQUNwQjtJQUVBSSxhQUFhO1FBQ1hYLGNBQWM7WUFDWlksU0FBUztnQkFBQztnQkFBUTtnQkFBUzthQUFLO1lBQ2hDQyxxQkFBcUI7Z0JBQUM7YUFBUTtZQUM5QkMsTUFBTTtnQkFBQztnQkFBUTtnQkFBUzthQUFLO1lBQzdCQyxXQUFXO2dCQUFDO2dCQUFRO2dCQUFTO2FBQUs7WUFDbENDLE9BQU87Z0JBQUM7Z0JBQVE7Z0JBQVM7YUFBSztZQUM5QkMsUUFBUTtnQkFB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
|