mediasfu-angular 1.0.1 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +871 -769
- package/dist/README.md +870 -769
- package/dist/fesm2022/mediasfu-angular.mjs +13241 -3372
- package/dist/fesm2022/mediasfu-angular.mjs.map +1 -1
- package/dist/lib/@types/types.d.ts +22 -1
- package/dist/lib/components/background-components/background-modal/background-modal.component.d.ts +36 -0
- package/dist/lib/components/breakout-components/breakout-rooms-modal.component.d.ts +51 -0
- package/dist/lib/components/breakout-components/edit-room-modal/edit-room-modal.component.d.ts +48 -0
- package/dist/lib/components/co-host-components/co-host-modal/co-host-modal.component.d.ts +62 -0
- package/dist/lib/components/display-components/alert-component/alert.component.component.d.ts +24 -18
- package/dist/lib/components/display-components/audio-card/audio-card.component.d.ts +59 -0
- package/dist/lib/components/display-components/audio-grid/audio-grid.component.d.ts +20 -0
- package/dist/lib/components/display-components/card-video-display/card-video-display.component.d.ts +35 -0
- package/dist/lib/components/display-components/control-buttons-alt-component/control-buttons-alt-component.component.d.ts +38 -0
- package/dist/lib/components/display-components/control-buttons-component-touch/control-buttons-component-touch.component.d.ts +24 -40
- package/dist/lib/components/display-components/control-widgets/menu-participants-widget.component.d.ts +21 -0
- package/dist/lib/components/display-components/control-widgets/menu-record-widget.component.d.ts +22 -0
- package/dist/lib/components/display-components/control-widgets/menu-widget.component.d.ts +23 -0
- package/dist/lib/components/display-components/control-widgets/message-widget.component.d.ts +23 -0
- package/dist/lib/components/display-components/control-widgets/record-timer-widget.component.d.ts +15 -0
- package/dist/lib/components/display-components/control-widgets/screenshare-widget.component.d.ts +27 -0
- package/dist/lib/components/display-components/flexible-grid/flexible-grid.component.d.ts +27 -18
- package/dist/lib/components/display-components/flexible-video/flexible-video.component.d.ts +30 -45
- package/dist/lib/components/display-components/loading-modal/loading-modal.component.d.ts +19 -17
- package/dist/lib/components/display-components/main-aspect-component/main-aspect-component.component.d.ts +32 -24
- package/dist/lib/components/display-components/main-container-component/main-container-component.component.d.ts +28 -16
- package/dist/lib/components/display-components/main-grid-component/main-grid-component.component.d.ts +28 -14
- package/dist/lib/components/display-components/main-screen-component/main-screen-component.component.d.ts +43 -22
- package/dist/lib/components/display-components/meeting-progress-timer/meeting-progress-timer.component.d.ts +25 -30
- package/dist/lib/components/display-components/mini-audio/mini-audio.component.d.ts +55 -62
- package/dist/lib/components/display-components/mini-card/mini-card.component.d.ts +19 -23
- package/dist/lib/components/display-components/mini-card-audio/mini-card-audio.component.d.ts +39 -39
- package/dist/lib/components/display-components/other-grid-component/other-grid-component.component.d.ts +28 -13
- package/dist/lib/components/display-components/pagination/pagination.component.d.ts +29 -23
- package/dist/lib/components/display-components/sub-aspect-component/sub-aspect-component.component.d.ts +18 -24
- package/dist/lib/components/display-components/video-card/video-card.component.d.ts +62 -0
- package/dist/lib/components/display-settings-components/display-settings-modal.component.d.ts +28 -17
- package/dist/lib/components/event-settings-components/event-settings-modal/event-settings-modal.component.d.ts +47 -38
- package/dist/lib/components/exit-components/confirm-exit-modal/confirm-exit-modal.component.d.ts +35 -22
- package/dist/lib/components/media-settings-components/media-settings-modal/media-settings-modal.component.d.ts +35 -24
- package/dist/lib/components/mediasfu-components/mediasfu-broadcast.component.d.ts +258 -117
- package/dist/lib/components/mediasfu-components/mediasfu-chat.component.d.ts +254 -117
- package/dist/lib/components/mediasfu-components/mediasfu-conference.component.d.ts +312 -162
- package/dist/lib/components/mediasfu-components/mediasfu-generic.component.d.ts +312 -162
- package/dist/lib/components/mediasfu-components/mediasfu-webinar.component.d.ts +310 -162
- package/dist/lib/components/menu-components/custom-buttons/custom-buttons.component.d.ts +49 -51
- package/dist/lib/components/menu-components/meeting-id-component/meeting-id-component.component.d.ts +6 -1
- package/dist/lib/components/menu-components/meeting-passcode-component/meeting-passcode-component.component.d.ts +5 -0
- package/dist/lib/components/menu-components/menu-modal/menu-modal.component.d.ts +27 -29
- package/dist/lib/components/menu-components/share-buttons-component/share-buttons-component.component.d.ts +20 -15
- package/dist/lib/components/message-components/message-panel/message-panel.component.d.ts +24 -0
- package/dist/lib/components/message-components/messages-modal/messages-modal.component.d.ts +34 -0
- package/dist/lib/components/misc-components/confirm-here-modal/confirm-here-modal.component.d.ts +20 -35
- package/dist/lib/components/misc-components/pre-join-page/pre-join-page.component.d.ts +79 -66
- package/dist/lib/components/misc-components/share-event-modal/share-event-modal.component.d.ts +19 -1
- package/dist/lib/components/misc-components/welcome-page/welcome-page.component.d.ts +15 -0
- package/dist/lib/components/participants-components/participant-list/participant-list.component.d.ts +19 -0
- package/dist/lib/components/participants-components/participant-list-item/participant-list-item.component.d.ts +19 -0
- package/dist/lib/components/participants-components/participant-list-others/participant-list-others.component.d.ts +17 -0
- package/dist/lib/components/participants-components/participant-list-others-item/participant-list-others-item.component.d.ts +17 -0
- package/dist/lib/components/participants-components/participants-modal/participants-modal.component.d.ts +24 -0
- package/dist/lib/components/polls-components/poll-modal/poll-modal.component.d.ts +27 -0
- package/dist/lib/components/recording-components/advanced-panel-component/advanced-panel-components.component.d.ts +15 -0
- package/dist/lib/components/recording-components/recording-modal/recording-modal.component.d.ts +12 -0
- package/dist/lib/components/recording-components/standard-panel-component/standard-panel-component.component.d.ts +5 -0
- package/dist/lib/components/requests-components/render-request-component/render-request-component.component.d.ts +22 -0
- package/dist/lib/components/requests-components/requests-modal/requests-modal.component.d.ts +17 -0
- package/dist/lib/components/screenboard-components/screenboard/screenboard.component.d.ts +10 -0
- package/dist/lib/components/screenboard-components/screenboard-modal/screenboard-modal.component.d.ts +11 -0
- package/dist/lib/components/waiting-components/waiting-room-modal.component.d.ts +59 -0
- package/dist/lib/components/whiteboard-components/configure-whiteboard-modal/configure-whiteboard-modal.component.d.ts +21 -0
- package/dist/lib/components/whiteboard-components/whiteboard/whiteboard.component.d.ts +49 -0
- package/dist/lib/consumers/add-videos-grid.service.d.ts +49 -0
- package/dist/lib/consumers/auto-adjust.service.d.ts +26 -0
- package/dist/lib/consumers/calculate-rows-and-columns.service.d.ts +18 -0
- package/dist/lib/consumers/change-vids.service.d.ts +131 -66
- package/dist/lib/consumers/check-grid.service.d.ts +32 -18
- package/dist/lib/consumers/check-permission.service.d.ts +25 -0
- package/dist/lib/consumers/check-screen-share.service.d.ts +35 -0
- package/dist/lib/consumers/close-and-resize.service.d.ts +102 -0
- package/dist/lib/consumers/compare-active-names.service.d.ts +31 -0
- package/dist/lib/consumers/compare-screen-states.service.d.ts +35 -0
- package/dist/lib/consumers/connect-ips.service.d.ts +42 -0
- package/dist/lib/consumers/connect-local-ips.service.d.ts +81 -0
- package/dist/lib/consumers/connect-recv-transport.service.d.ts +33 -0
- package/dist/lib/consumers/connect-send-transport-audio.service.d.ts +81 -11
- package/dist/lib/consumers/connect-send-transport-screen.service.d.ts +96 -15
- package/dist/lib/consumers/connect-send-transport-video.service.d.ts +101 -11
- package/dist/lib/consumers/connect-send-transport.service.d.ts +59 -1
- package/dist/lib/consumers/consumer-resume.service.d.ts +36 -0
- package/dist/lib/consumers/control-media.service.d.ts +45 -0
- package/dist/lib/consumers/create-send-transport.service.d.ts +149 -13
- package/dist/lib/consumers/disconnect-send-transport-audio.service.d.ts +100 -13
- package/dist/lib/consumers/disconnect-send-transport-screen.service.d.ts +75 -2
- package/dist/lib/consumers/disconnect-send-transport-video.service.d.ts +99 -17
- package/dist/lib/consumers/disp-streams.service.d.ts +92 -0
- package/dist/lib/consumers/generate-page-content.service.d.ts +47 -0
- package/dist/lib/consumers/get-estimate.service.d.ts +50 -0
- package/dist/lib/consumers/get-piped-producers-alt.service.d.ts +38 -1
- package/dist/lib/consumers/get-producers-piped.service.d.ts +33 -0
- package/dist/lib/consumers/get-videos.service.d.ts +33 -0
- package/dist/lib/consumers/mix-streams.service.d.ts +22 -0
- package/dist/lib/consumers/on-screen-changes.service.d.ts +40 -0
- package/dist/lib/consumers/prepopulate-user-media.service.d.ts +99 -0
- package/dist/lib/consumers/process-consumer-transports-audio.service.d.ts +29 -0
- package/dist/lib/consumers/process-consumer-transports.service.d.ts +37 -0
- package/dist/lib/consumers/re-port.service.d.ts +48 -0
- package/dist/lib/consumers/re-update-inter.service.d.ts +82 -0
- package/dist/lib/consumers/readjust.service.d.ts +50 -0
- package/dist/lib/consumers/receive-all-piped-transports.service.d.ts +36 -1
- package/dist/lib/consumers/receive-room-messages.service.d.ts +27 -0
- package/dist/lib/consumers/reorder-streams.service.d.ts +58 -0
- package/dist/lib/consumers/request-screen-share.service.d.ts +34 -0
- package/dist/lib/consumers/resume-pause-audio-streams.service.d.ts +51 -0
- package/dist/lib/consumers/resume-pause-streams.service.d.ts +33 -0
- package/dist/lib/consumers/resume-send-transport-audio.service.d.ts +76 -7
- package/dist/lib/consumers/signal-new-consumer-transport.service.d.ts +37 -37
- package/dist/lib/consumers/socket-receive-methods/join-consume-room.service.d.ts +33 -0
- package/dist/lib/consumers/socket-receive-methods/new-pipe-producer.service.d.ts +39 -0
- package/dist/lib/consumers/socket-receive-methods/producer-closed.service.d.ts +27 -0
- package/dist/lib/consumers/start-share-screen.service.d.ts +40 -0
- package/dist/lib/consumers/stop-share-screen.service.d.ts +55 -0
- package/dist/lib/consumers/stream-success-audio-switch.service.d.ts +148 -11
- package/dist/lib/consumers/stream-success-audio.service.d.ts +61 -0
- package/dist/lib/consumers/stream-success-screen.service.d.ts +50 -0
- package/dist/lib/consumers/stream-success-video.service.d.ts +58 -0
- package/dist/lib/consumers/switch-user-audio.service.d.ts +33 -0
- package/dist/lib/consumers/switch-user-video-alt.service.d.ts +32 -0
- package/dist/lib/consumers/switch-user-video.service.d.ts +47 -0
- package/dist/lib/consumers/trigger.service.d.ts +41 -0
- package/dist/lib/consumers/update-mini-cards-grid.service.d.ts +54 -0
- package/dist/lib/consumers/update-participant-audio-decibels.service.d.ts +45 -0
- package/dist/lib/methods/background-methods/launch-background.service.d.ts +25 -0
- package/dist/lib/methods/breakout-room-methods/breakout-room-updated.service.d.ts +71 -0
- package/dist/lib/methods/breakout-room-methods/launch-breakout-rooms.service.d.ts +24 -0
- package/dist/lib/methods/co-host-methods/launch-co-host.service.d.ts +24 -0
- package/dist/lib/methods/co-host-methods/modify-co-host-settings.service.d.ts +44 -0
- package/dist/lib/methods/display-settings-methods/launch-display-settings.service.d.ts +22 -0
- package/dist/lib/methods/display-settings-methods/modify-display-settings.service.d.ts +75 -0
- package/dist/lib/methods/exit-methods/confirm-exit.service.d.ts +29 -1
- package/dist/lib/methods/exit-methods/launch-confirm-exit.service.d.ts +20 -0
- package/dist/lib/methods/media-settings-methods/launch-media-settings.service.d.ts +35 -0
- package/dist/lib/methods/menu-methods/launch-menu-modal.service.d.ts +22 -0
- package/dist/lib/methods/message-methods/launch-messages.service.d.ts +22 -0
- package/dist/lib/methods/message-methods/send-message.service.d.ts +49 -0
- package/dist/lib/methods/participants-methods/launch-participants.service.d.ts +24 -0
- package/dist/lib/methods/participants-methods/message-participants.service.d.ts +46 -0
- package/dist/lib/methods/participants-methods/mute-participants.service.d.ts +39 -0
- package/dist/lib/methods/participants-methods/remove-participants.service.d.ts +45 -0
- package/dist/lib/methods/polls-methods/handle-create-poll.service.d.ts +38 -0
- package/dist/lib/methods/polls-methods/handle-end-poll.service.d.ts +32 -0
- package/dist/lib/methods/polls-methods/handle-vote-poll.service.d.ts +34 -0
- package/dist/lib/methods/polls-methods/launch-poll.service.d.ts +20 -0
- package/dist/lib/methods/polls-methods/poll-updated.service.d.ts +31 -0
- package/dist/lib/methods/recording-methods/check-pause-state.service.d.ts +24 -0
- package/dist/lib/methods/recording-methods/check-resume-state.service.d.ts +22 -0
- package/dist/lib/methods/recording-methods/confirm-recording.service.d.ts +63 -0
- package/dist/lib/methods/recording-methods/launch-recording.service.d.ts +43 -0
- package/dist/lib/methods/recording-methods/record-pause-timer.service.d.ts +27 -0
- package/dist/lib/methods/recording-methods/record-resume-timer.service.d.ts +44 -0
- package/dist/lib/methods/recording-methods/record-start-timer.service.d.ts +45 -0
- package/dist/lib/methods/recording-methods/record-update-timer.service.d.ts +32 -0
- package/dist/lib/methods/recording-methods/start-recording.service.d.ts +53 -0
- package/dist/lib/methods/recording-methods/stop-recording.service.d.ts +42 -1
- package/dist/lib/methods/recording-methods/update-recording.service.d.ts +51 -0
- package/dist/lib/methods/requests-methods/launch-requests.service.d.ts +25 -0
- package/dist/lib/methods/requests-methods/respond-to-requests.service.d.ts +39 -0
- package/dist/lib/methods/settings-methods/launch-settings.service.d.ts +25 -0
- package/dist/lib/methods/settings-methods/modify-settings.service.d.ts +42 -0
- package/dist/lib/methods/stream-methods/click-audio.service.d.ts +100 -0
- package/dist/lib/methods/stream-methods/click-chat.service.d.ts +31 -0
- package/dist/lib/methods/stream-methods/click-screen-share.service.d.ts +68 -0
- package/dist/lib/methods/stream-methods/click-video.service.d.ts +88 -0
- package/dist/lib/methods/stream-methods/switch-audio.service.d.ts +47 -0
- package/dist/lib/methods/stream-methods/switch-video-alt.service.d.ts +50 -0
- package/dist/lib/methods/stream-methods/switch-video.service.d.ts +56 -0
- package/dist/lib/methods/utils/check-limits-and-make-request.service.d.ts +23 -0
- package/dist/lib/methods/utils/create-response-join-room.util.d.ts +33 -0
- package/dist/lib/methods/utils/create-room-on-media-sfu.service.d.ts +25 -0
- package/dist/lib/methods/utils/format-number.service.d.ts +26 -14
- package/dist/lib/methods/utils/generate-random-messages.service.d.ts +33 -0
- package/dist/lib/methods/utils/generate-random-participants.service.d.ts +27 -0
- package/dist/lib/methods/utils/generate-random-polls.service.d.ts +26 -0
- package/dist/lib/methods/utils/generate-random-request-list.service.d.ts +36 -0
- package/dist/lib/methods/utils/generate-random-waiting-room-list.service.d.ts +21 -0
- package/dist/lib/methods/utils/get-modal-position.util.d.ts +13 -3
- package/dist/lib/methods/utils/get-overlay-position.util.d.ts +13 -3
- package/dist/lib/methods/utils/initial-values.util.d.ts +6 -0
- package/dist/lib/methods/utils/join-room-on-media-sfu.service.d.ts +52 -0
- package/dist/lib/methods/utils/meeting-timer/start-meeting-progress-timer.service.d.ts +37 -0
- package/dist/lib/methods/utils/mini-audio-player/mini-audio-player.component.d.ts +55 -0
- package/dist/lib/methods/utils/producer/a-params.service.d.ts +37 -0
- package/dist/lib/methods/utils/producer/h-params.service.d.ts +50 -0
- package/dist/lib/methods/utils/producer/screen-params.service.d.ts +37 -0
- package/dist/lib/methods/utils/producer/v-params.service.d.ts +50 -0
- package/dist/lib/methods/utils/producer/video-capture-constraints.service.d.ts +46 -0
- package/dist/lib/methods/utils/sleep.util.d.ts +9 -3
- package/dist/lib/methods/utils/sound-player.service.d.ts +21 -0
- package/dist/lib/methods/utils/validate-alphanumeric.service.d.ts +16 -0
- package/dist/lib/methods/waiting-methods/launch-waiting.service.d.ts +18 -0
- package/dist/lib/methods/waiting-methods/respond-to-waiting.service.d.ts +29 -0
- package/dist/lib/methods/whiteboard-methods/capture-canvas-stream.service.d.ts +46 -0
- package/dist/lib/methods/whiteboard-methods/launch-configure-whiteboard.service.d.ts +20 -0
- package/dist/lib/producer-client/producer-client-emits/create-device-client.service.d.ts +23 -0
- package/dist/lib/producer-client/producer-client-emits/join-room-client.service.d.ts +31 -0
- package/dist/lib/producer-client/producer-client-emits/update-room-parameters-client.service.d.ts +44 -0
- package/dist/lib/producers/producer-emits/join-con-room.service.d.ts +38 -0
- package/dist/lib/producers/producer-emits/join-local-room.service.d.ts +125 -0
- package/dist/lib/producers/producer-emits/join-room.service.d.ts +38 -0
- package/dist/lib/producers/socket-receive-methods/all-members-rest.service.d.ts +80 -2
- package/dist/lib/producers/socket-receive-methods/all-members.service.d.ts +78 -2
- package/dist/lib/producers/socket-receive-methods/all-waiting-room-members.service.d.ts +27 -0
- package/dist/lib/producers/socket-receive-methods/ban-participant.service.d.ts +36 -0
- package/dist/lib/producers/socket-receive-methods/control-media-host.service.d.ts +37 -0
- package/dist/lib/producers/socket-receive-methods/disconnect-user-self.service.d.ts +29 -1
- package/dist/lib/producers/socket-receive-methods/disconnect.service.d.ts +26 -0
- package/dist/lib/producers/socket-receive-methods/get-domains.service.d.ts +24 -9
- package/dist/lib/producers/socket-receive-methods/host-request-response.service.d.ts +31 -48
- package/dist/lib/producers/socket-receive-methods/meeting-ended.service.d.ts +29 -0
- package/dist/lib/producers/socket-receive-methods/meeting-still-there.service.d.ts +23 -0
- package/dist/lib/producers/socket-receive-methods/meeting-time-remaining.service.d.ts +27 -0
- package/dist/lib/producers/socket-receive-methods/participant-requested.service.d.ts +31 -0
- package/dist/lib/producers/socket-receive-methods/person-joined.service.d.ts +25 -0
- package/dist/lib/producers/socket-receive-methods/producer-media-closed.service.d.ts +61 -0
- package/dist/lib/producers/socket-receive-methods/producer-media-paused.service.d.ts +62 -0
- package/dist/lib/producers/socket-receive-methods/producer-media-resumed.service.d.ts +45 -0
- package/dist/lib/producers/socket-receive-methods/re-initiate-recording.service.d.ts +29 -0
- package/dist/lib/producers/socket-receive-methods/receive-message.service.d.ts +38 -0
- package/dist/lib/producers/socket-receive-methods/recording-notice.service.d.ts +38 -0
- package/dist/lib/producers/socket-receive-methods/room-record-params.service.d.ts +62 -0
- package/dist/lib/producers/socket-receive-methods/screen-producer-id.service.d.ts +41 -0
- package/dist/lib/producers/socket-receive-methods/start-records.service.d.ts +25 -0
- package/dist/lib/producers/socket-receive-methods/stopped-recording.service.d.ts +25 -0
- package/dist/lib/producers/socket-receive-methods/time-left-recording.service.d.ts +21 -0
- package/dist/lib/producers/socket-receive-methods/update-consuming-domains.service.d.ts +42 -0
- package/dist/lib/producers/socket-receive-methods/update-media-settings.service.d.ts +30 -0
- package/dist/lib/producers/socket-receive-methods/updated-co-host.service.d.ts +40 -0
- package/dist/lib/producers/socket-receive-methods/user-waiting.service.d.ts +14 -40
- package/dist/lib/sockets/socket-manager.service.d.ts +130 -0
- package/dist/public-api.d.ts +11 -1
- package/package.json +17 -20
- package/dist/esm2022/lib/@types/types.mjs +0 -2
- package/dist/esm2022/lib/components/background-components/background-modal/background-modal.component.mjs +0 -763
- package/dist/esm2022/lib/components/breakout-components/breakout-rooms-modal.component.mjs +0 -316
- package/dist/esm2022/lib/components/breakout-components/edit-room-modal/edit-room-modal.component.mjs +0 -95
- package/dist/esm2022/lib/components/breakout-components/room-list/room-list.component.mjs +0 -40
- package/dist/esm2022/lib/components/co-host-components/co-host-modal/co-host-modal.component.mjs +0 -246
- package/dist/esm2022/lib/components/display-components/alert-component/alert.component.component.mjs +0 -73
- package/dist/esm2022/lib/components/display-components/audio-card/audio-card.component.mjs +0 -297
- package/dist/esm2022/lib/components/display-components/audio-grid/audio-grid.component.mjs +0 -60
- package/dist/esm2022/lib/components/display-components/card-video-display/card-video-display.component.mjs +0 -94
- package/dist/esm2022/lib/components/display-components/control-buttons-alt-component/control-buttons-alt-component.component.mjs +0 -100
- package/dist/esm2022/lib/components/display-components/control-buttons-component/control-buttons-component.component.mjs +0 -231
- package/dist/esm2022/lib/components/display-components/control-buttons-component-touch/control-buttons-component-touch.component.mjs +0 -298
- package/dist/esm2022/lib/components/display-components/control-widgets/menu-participants-widget.component.mjs +0 -61
- package/dist/esm2022/lib/components/display-components/control-widgets/menu-record-widget.component.mjs +0 -43
- package/dist/esm2022/lib/components/display-components/control-widgets/menu-widget.component.mjs +0 -114
- package/dist/esm2022/lib/components/display-components/control-widgets/message-widget.component.mjs +0 -114
- package/dist/esm2022/lib/components/display-components/control-widgets/record-timer-widget.component.mjs +0 -36
- package/dist/esm2022/lib/components/display-components/control-widgets/screenshare-widget.component.mjs +0 -74
- package/dist/esm2022/lib/components/display-components/flexible-grid/flexible-grid.component.mjs +0 -142
- package/dist/esm2022/lib/components/display-components/flexible-video/flexible-video.component.mjs +0 -265
- package/dist/esm2022/lib/components/display-components/loading-modal/loading-modal.component.mjs +0 -100
- package/dist/esm2022/lib/components/display-components/main-aspect-component/main-aspect-component.component.mjs +0 -132
- package/dist/esm2022/lib/components/display-components/main-container-component/main-container-component.component.mjs +0 -119
- package/dist/esm2022/lib/components/display-components/main-grid-component/main-grid-component.component.mjs +0 -106
- package/dist/esm2022/lib/components/display-components/main-screen-component/main-screen-component.component.mjs +0 -180
- package/dist/esm2022/lib/components/display-components/meeting-progress-timer/meeting-progress-timer.component.mjs +0 -120
- package/dist/esm2022/lib/components/display-components/mini-audio/mini-audio.component.mjs +0 -326
- package/dist/esm2022/lib/components/display-components/mini-card/mini-card.component.mjs +0 -165
- package/dist/esm2022/lib/components/display-components/mini-card-audio/mini-card-audio.component.mjs +0 -230
- package/dist/esm2022/lib/components/display-components/other-grid-component/other-grid-component.component.mjs +0 -111
- package/dist/esm2022/lib/components/display-components/pagination/pagination.component.mjs +0 -328
- package/dist/esm2022/lib/components/display-components/sub-aspect-component/sub-aspect-component.component.mjs +0 -118
- package/dist/esm2022/lib/components/display-components/video-card/video-card.component.mjs +0 -330
- package/dist/esm2022/lib/components/display-settings-components/display-settings-modal.component.mjs +0 -95
- package/dist/esm2022/lib/components/event-settings-components/event-settings-modal/event-settings-modal.component.mjs +0 -190
- package/dist/esm2022/lib/components/exit-components/confirm-exit-modal/confirm-exit-modal.component.mjs +0 -119
- package/dist/esm2022/lib/components/media-settings-components/media-settings-modal/media-settings-modal.component.mjs +0 -209
- package/dist/esm2022/lib/components/mediasfu-components/mediasfu-broadcast.component.mjs +0 -4189
- package/dist/esm2022/lib/components/mediasfu-components/mediasfu-chat.component.mjs +0 -3705
- package/dist/esm2022/lib/components/mediasfu-components/mediasfu-conference.component.mjs +0 -5024
- package/dist/esm2022/lib/components/mediasfu-components/mediasfu-generic.component.mjs +0 -5333
- package/dist/esm2022/lib/components/mediasfu-components/mediasfu-webinar.component.mjs +0 -5023
- package/dist/esm2022/lib/components/menu-components/custom-buttons/custom-buttons.component.mjs +0 -85
- package/dist/esm2022/lib/components/menu-components/meeting-id-component/meeting-id-component.component.mjs +0 -22
- package/dist/esm2022/lib/components/menu-components/meeting-passcode-component/meeting-passcode-component.component.mjs +0 -22
- package/dist/esm2022/lib/components/menu-components/menu-modal/menu-modal.component.mjs +0 -132
- package/dist/esm2022/lib/components/menu-components/share-buttons-component/share-buttons-component.component.mjs +0 -104
- package/dist/esm2022/lib/components/message-components/message-panel/message-panel.component.mjs +0 -204
- package/dist/esm2022/lib/components/message-components/messages-modal/messages-modal.component.mjs +0 -243
- package/dist/esm2022/lib/components/misc-components/confirm-here-modal/confirm-here-modal.component.mjs +0 -147
- package/dist/esm2022/lib/components/misc-components/pre-join-page/pre-join-page.component.mjs +0 -335
- package/dist/esm2022/lib/components/misc-components/share-event-modal/share-event-modal.component.mjs +0 -113
- package/dist/esm2022/lib/components/misc-components/welcome-page/welcome-page.component.mjs +0 -226
- package/dist/esm2022/lib/components/participants-components/participant-list/participant-list.component.mjs +0 -63
- package/dist/esm2022/lib/components/participants-components/participant-list-item/participant-list-item.component.mjs +0 -120
- package/dist/esm2022/lib/components/participants-components/participant-list-others/participant-list-others.component.mjs +0 -23
- package/dist/esm2022/lib/components/participants-components/participant-list-others-item/participant-list-others-item.component.mjs +0 -43
- package/dist/esm2022/lib/components/participants-components/participants-modal/participants-modal.component.mjs +0 -100
- package/dist/esm2022/lib/components/polls-components/poll-modal/poll-modal.component.mjs +0 -174
- package/dist/esm2022/lib/components/recording-components/advanced-panel-component/advanced-panel-components.component.mjs +0 -77
- package/dist/esm2022/lib/components/recording-components/recording-modal/recording-modal.component.mjs +0 -121
- package/dist/esm2022/lib/components/recording-components/standard-panel-component/standard-panel-component.component.mjs +0 -85
- package/dist/esm2022/lib/components/requests-components/render-request-component/render-request-component.component.mjs +0 -59
- package/dist/esm2022/lib/components/requests-components/requests-modal/requests-modal.component.mjs +0 -130
- package/dist/esm2022/lib/components/screenboard-components/screenboard/screenboard.component.mjs +0 -617
- package/dist/esm2022/lib/components/screenboard-components/screenboard-modal/screenboard-modal.component.mjs +0 -380
- package/dist/esm2022/lib/components/waiting-components/waiting-room-modal.component.mjs +0 -142
- package/dist/esm2022/lib/components/whiteboard-components/configure-whiteboard-modal/configure-whiteboard-modal.component.mjs +0 -265
- package/dist/esm2022/lib/components/whiteboard-components/whiteboard/whiteboard.component.mjs +0 -1784
- package/dist/esm2022/lib/consumers/add-videos-grid.service.mjs +0 -296
- package/dist/esm2022/lib/consumers/auto-adjust.service.mjs +0 -83
- package/dist/esm2022/lib/consumers/calculate-rows-and-columns.service.mjs +0 -42
- package/dist/esm2022/lib/consumers/change-vids.service.mjs +0 -486
- package/dist/esm2022/lib/consumers/check-grid.service.mjs +0 -79
- package/dist/esm2022/lib/consumers/check-permission.service.mjs +0 -80
- package/dist/esm2022/lib/consumers/check-screen-share.service.mjs +0 -71
- package/dist/esm2022/lib/consumers/close-and-resize.service.mjs +0 -229
- package/dist/esm2022/lib/consumers/compare-active-names.service.mjs +0 -75
- package/dist/esm2022/lib/consumers/compare-screen-states.service.mjs +0 -63
- package/dist/esm2022/lib/consumers/connect-ips.service.mjs +0 -112
- package/dist/esm2022/lib/consumers/connect-recv-transport.service.mjs +0 -113
- package/dist/esm2022/lib/consumers/connect-send-transport-audio.service.mjs +0 -46
- package/dist/esm2022/lib/consumers/connect-send-transport-screen.service.mjs +0 -62
- package/dist/esm2022/lib/consumers/connect-send-transport-video.service.mjs +0 -55
- package/dist/esm2022/lib/consumers/connect-send-transport.service.mjs +0 -86
- package/dist/esm2022/lib/consumers/consumer-resume.service.mjs +0 -332
- package/dist/esm2022/lib/consumers/control-media.service.mjs +0 -68
- package/dist/esm2022/lib/consumers/create-send-transport.service.mjs +0 -126
- package/dist/esm2022/lib/consumers/disconnect-send-transport-audio.service.mjs +0 -58
- package/dist/esm2022/lib/consumers/disconnect-send-transport-screen.service.mjs +0 -45
- package/dist/esm2022/lib/consumers/disconnect-send-transport-video.service.mjs +0 -56
- package/dist/esm2022/lib/consumers/disp-streams.service.mjs +0 -421
- package/dist/esm2022/lib/consumers/generate-page-content.service.mjs +0 -59
- package/dist/esm2022/lib/consumers/get-estimate.service.mjs +0 -70
- package/dist/esm2022/lib/consumers/get-piped-producers-alt.service.mjs +0 -49
- package/dist/esm2022/lib/consumers/get-producers-piped.service.mjs +0 -46
- package/dist/esm2022/lib/consumers/get-videos.service.mjs +0 -58
- package/dist/esm2022/lib/consumers/mix-streams.service.mjs +0 -73
- package/dist/esm2022/lib/consumers/on-screen-changes.service.mjs +0 -63
- package/dist/esm2022/lib/consumers/prepopulate-user-media.service.mjs +0 -442
- package/dist/esm2022/lib/consumers/process-consumer-transports-audio.service.mjs +0 -72
- package/dist/esm2022/lib/consumers/process-consumer-transports.service.mjs +0 -91
- package/dist/esm2022/lib/consumers/re-port.service.mjs +0 -66
- package/dist/esm2022/lib/consumers/re-update-inter.service.mjs +0 -157
- package/dist/esm2022/lib/consumers/readjust.service.mjs +0 -123
- package/dist/esm2022/lib/consumers/receive-all-piped-transports.service.mjs +0 -56
- package/dist/esm2022/lib/consumers/receive-room-messages.service.mjs +0 -42
- package/dist/esm2022/lib/consumers/reorder-streams.service.mjs +0 -181
- package/dist/esm2022/lib/consumers/request-screen-share.service.mjs +0 -67
- package/dist/esm2022/lib/consumers/resume-pause-audio-streams.service.mjs +0 -99
- package/dist/esm2022/lib/consumers/resume-pause-streams.service.mjs +0 -70
- package/dist/esm2022/lib/consumers/resume-send-transport-audio.service.mjs +0 -55
- package/dist/esm2022/lib/consumers/signal-new-consumer-transport.service.mjs +0 -136
- package/dist/esm2022/lib/consumers/socket-receive-methods/join-consume-room.service.mjs +0 -63
- package/dist/esm2022/lib/consumers/socket-receive-methods/new-pipe-producer.service.mjs +0 -61
- package/dist/esm2022/lib/consumers/socket-receive-methods/producer-closed.service.mjs +0 -51
- package/dist/esm2022/lib/consumers/start-share-screen.service.mjs +0 -80
- package/dist/esm2022/lib/consumers/stop-share-screen.service.mjs +0 -120
- package/dist/esm2022/lib/consumers/stream-success-audio-switch.service.mjs +0 -132
- package/dist/esm2022/lib/consumers/stream-success-audio.service.mjs +0 -149
- package/dist/esm2022/lib/consumers/stream-success-screen.service.mjs +0 -143
- package/dist/esm2022/lib/consumers/stream-success-video.service.mjs +0 -202
- package/dist/esm2022/lib/consumers/switch-user-audio.service.mjs +0 -87
- package/dist/esm2022/lib/consumers/switch-user-video-alt.service.mjs +0 -228
- package/dist/esm2022/lib/consumers/switch-user-video.service.mjs +0 -125
- package/dist/esm2022/lib/consumers/trigger.service.mjs +0 -172
- package/dist/esm2022/lib/consumers/update-mini-cards-grid.service.mjs +0 -81
- package/dist/esm2022/lib/consumers/update-participant-audio-decibels.service.mjs +0 -39
- package/dist/esm2022/lib/methods/background-methods/launch-background.service.mjs +0 -23
- package/dist/esm2022/lib/methods/breakout-room-methods/breakout-room-updated.service.mjs +0 -112
- package/dist/esm2022/lib/methods/breakout-room-methods/launch-breakout-rooms.service.mjs +0 -22
- package/dist/esm2022/lib/methods/co-host-methods/launch-co-host.service.mjs +0 -22
- package/dist/esm2022/lib/methods/co-host-methods/modify-co-host-settings.service.mjs +0 -60
- package/dist/esm2022/lib/methods/display-settings-methods/launch-display-settings.service.mjs +0 -24
- package/dist/esm2022/lib/methods/display-settings-methods/modify-display-settings.service.mjs +0 -119
- package/dist/esm2022/lib/methods/exit-methods/confirm-exit.service.mjs +0 -28
- package/dist/esm2022/lib/methods/exit-methods/launch-confirm-exit.service.mjs +0 -22
- package/dist/esm2022/lib/methods/media-settings-methods/launch-media-settings.service.mjs +0 -50
- package/dist/esm2022/lib/methods/menu-methods/launch-menu-modal.service.mjs +0 -22
- package/dist/esm2022/lib/methods/message-methods/launch-messages.service.mjs +0 -23
- package/dist/esm2022/lib/methods/message-methods/send-message.service.mjs +0 -94
- package/dist/esm2022/lib/methods/participants-methods/launch-participants.service.mjs +0 -23
- package/dist/esm2022/lib/methods/participants-methods/message-participants.service.mjs +0 -52
- package/dist/esm2022/lib/methods/participants-methods/mute-participants.service.mjs +0 -57
- package/dist/esm2022/lib/methods/participants-methods/remove-participants.service.mjs +0 -62
- package/dist/esm2022/lib/methods/polls-methods/handle-create-poll.service.mjs +0 -37
- package/dist/esm2022/lib/methods/polls-methods/handle-end-poll.service.mjs +0 -40
- package/dist/esm2022/lib/methods/polls-methods/handle-vote-poll.service.mjs +0 -49
- package/dist/esm2022/lib/methods/polls-methods/launch-poll.service.mjs +0 -23
- package/dist/esm2022/lib/methods/polls-methods/poll-updated.service.mjs +0 -64
- package/dist/esm2022/lib/methods/recording-methods/check-pause-state.service.mjs +0 -45
- package/dist/esm2022/lib/methods/recording-methods/check-resume-state.service.mjs +0 -34
- package/dist/esm2022/lib/methods/recording-methods/confirm-recording.service.mjs +0 -215
- package/dist/esm2022/lib/methods/recording-methods/launch-recording.service.mjs +0 -82
- package/dist/esm2022/lib/methods/recording-methods/record-pause-timer.service.mjs +0 -40
- package/dist/esm2022/lib/methods/recording-methods/record-resume-timer.service.mjs +0 -86
- package/dist/esm2022/lib/methods/recording-methods/record-start-timer.service.mjs +0 -89
- package/dist/esm2022/lib/methods/recording-methods/record-update-timer.service.mjs +0 -48
- package/dist/esm2022/lib/methods/recording-methods/start-recording.service.mjs +0 -147
- package/dist/esm2022/lib/methods/recording-methods/stop-recording.service.mjs +0 -74
- package/dist/esm2022/lib/methods/recording-methods/update-recording.service.mjs +0 -224
- package/dist/esm2022/lib/methods/requests-methods/launch-requests.service.mjs +0 -26
- package/dist/esm2022/lib/methods/requests-methods/respond-to-requests.service.mjs +0 -45
- package/dist/esm2022/lib/methods/settings-methods/launch-settings.service.mjs +0 -26
- package/dist/esm2022/lib/methods/settings-methods/modify-settings.service.mjs +0 -67
- package/dist/esm2022/lib/methods/stream-methods/click-audio.service.mjs +0 -178
- package/dist/esm2022/lib/methods/stream-methods/click-chat.service.mjs +0 -44
- package/dist/esm2022/lib/methods/stream-methods/click-screen-share.service.mjs +0 -110
- package/dist/esm2022/lib/methods/stream-methods/click-video.service.mjs +0 -183
- package/dist/esm2022/lib/methods/stream-methods/switch-audio.service.mjs +0 -33
- package/dist/esm2022/lib/methods/stream-methods/switch-video-alt.service.mjs +0 -66
- package/dist/esm2022/lib/methods/stream-methods/switch-video.service.mjs +0 -76
- package/dist/esm2022/lib/methods/utils/format-number.service.mjs +0 -45
- package/dist/esm2022/lib/methods/utils/generate-random-messages.service.mjs +0 -87
- package/dist/esm2022/lib/methods/utils/generate-random-participants.service.mjs +0 -99
- package/dist/esm2022/lib/methods/utils/generate-random-polls.service.mjs +0 -52
- package/dist/esm2022/lib/methods/utils/generate-random-request-list.service.mjs +0 -54
- package/dist/esm2022/lib/methods/utils/generate-random-waiting-room-list.service.mjs +0 -38
- package/dist/esm2022/lib/methods/utils/get-modal-position.util.mjs +0 -22
- package/dist/esm2022/lib/methods/utils/get-overlay-position.util.mjs +0 -21
- package/dist/esm2022/lib/methods/utils/initial-values.util.mjs +0 -379
- package/dist/esm2022/lib/methods/utils/meeting-timer/start-meeting-progress-timer.service.mjs +0 -59
- package/dist/esm2022/lib/methods/utils/mini-audio-player/mini-audio-player.component.mjs +0 -260
- package/dist/esm2022/lib/methods/utils/producer/a-params.service.mjs +0 -21
- package/dist/esm2022/lib/methods/utils/producer/h-params.service.mjs +0 -37
- package/dist/esm2022/lib/methods/utils/producer/screen-params.service.mjs +0 -24
- package/dist/esm2022/lib/methods/utils/producer/v-params.service.mjs +0 -37
- package/dist/esm2022/lib/methods/utils/producer/video-capture-constraints.service.mjs +0 -38
- package/dist/esm2022/lib/methods/utils/sleep.util.mjs +0 -11
- package/dist/esm2022/lib/methods/utils/sound-player.service.mjs +0 -42
- package/dist/esm2022/lib/methods/utils/validate-alphanumeric.service.mjs +0 -33
- package/dist/esm2022/lib/methods/waiting-methods/launch-waiting.service.mjs +0 -23
- package/dist/esm2022/lib/methods/waiting-methods/respond-to-waiting.service.mjs +0 -40
- package/dist/esm2022/lib/methods/whiteboard-methods/capture-canvas-stream.service.mjs +0 -69
- package/dist/esm2022/lib/methods/whiteboard-methods/launch-configure-whiteboard.service.mjs +0 -24
- package/dist/esm2022/lib/producer-client/producer-client-emits/create-device-client.service.mjs +0 -51
- package/dist/esm2022/lib/producer-client/producer-client-emits/join-room-client.service.mjs +0 -65
- package/dist/esm2022/lib/producer-client/producer-client-emits/update-room-parameters-client.service.mjs +0 -232
- package/dist/esm2022/lib/producers/producer-emits/join-con-room.service.mjs +0 -114
- package/dist/esm2022/lib/producers/producer-emits/join-room.service.mjs +0 -114
- package/dist/esm2022/lib/producers/socket-receive-methods/all-members-rest.service.mjs +0 -155
- package/dist/esm2022/lib/producers/socket-receive-methods/all-members.service.mjs +0 -147
- package/dist/esm2022/lib/producers/socket-receive-methods/all-waiting-room-members.service.mjs +0 -30
- package/dist/esm2022/lib/producers/socket-receive-methods/ban-participant.service.mjs +0 -40
- package/dist/esm2022/lib/producers/socket-receive-methods/control-media-host.service.mjs +0 -146
- package/dist/esm2022/lib/producers/socket-receive-methods/disconnect-user-self.service.mjs +0 -26
- package/dist/esm2022/lib/producers/socket-receive-methods/disconnect.service.mjs +0 -38
- package/dist/esm2022/lib/producers/socket-receive-methods/get-domains.service.mjs +0 -63
- package/dist/esm2022/lib/producers/socket-receive-methods/host-request-response.service.mjs +0 -167
- package/dist/esm2022/lib/producers/socket-receive-methods/meeting-ended.service.mjs +0 -44
- package/dist/esm2022/lib/producers/socket-receive-methods/meeting-still-there.service.mjs +0 -24
- package/dist/esm2022/lib/producers/socket-receive-methods/meeting-time-remaining.service.mjs +0 -36
- package/dist/esm2022/lib/producers/socket-receive-methods/participant-requested.service.mjs +0 -32
- package/dist/esm2022/lib/producers/socket-receive-methods/person-joined.service.mjs +0 -29
- package/dist/esm2022/lib/producers/socket-receive-methods/producer-media-closed.service.mjs +0 -68
- package/dist/esm2022/lib/producers/socket-receive-methods/producer-media-paused.service.mjs +0 -90
- package/dist/esm2022/lib/producers/socket-receive-methods/producer-media-resumed.service.mjs +0 -54
- package/dist/esm2022/lib/producers/socket-receive-methods/re-initiate-recording.service.mjs +0 -38
- package/dist/esm2022/lib/producers/socket-receive-methods/receive-message.service.mjs +0 -96
- package/dist/esm2022/lib/producers/socket-receive-methods/recording-notice.service.mjs +0 -195
- package/dist/esm2022/lib/producers/socket-receive-methods/room-record-params.service.mjs +0 -59
- package/dist/esm2022/lib/producers/socket-receive-methods/screen-producer-id.service.mjs +0 -45
- package/dist/esm2022/lib/producers/socket-receive-methods/start-records.service.mjs +0 -35
- package/dist/esm2022/lib/producers/socket-receive-methods/stopped-recording.service.mjs +0 -37
- package/dist/esm2022/lib/producers/socket-receive-methods/time-left-recording.service.mjs +0 -36
- package/dist/esm2022/lib/producers/socket-receive-methods/update-consuming-domains.service.mjs +0 -63
- package/dist/esm2022/lib/producers/socket-receive-methods/update-media-settings.service.mjs +0 -36
- package/dist/esm2022/lib/producers/socket-receive-methods/updated-co-host.service.mjs +0 -56
- package/dist/esm2022/lib/producers/socket-receive-methods/user-waiting.service.mjs +0 -78
- package/dist/esm2022/lib/sockets/socket-manager.service.mjs +0 -73
- package/dist/esm2022/mediasfu-angular.mjs +0 -5
- package/dist/esm2022/public-api.mjs +0 -187
|
@@ -8,6 +8,36 @@ export interface UpdateMediaSettingsOptions {
|
|
|
8
8
|
updateChatSetting: (value: string) => void;
|
|
9
9
|
}
|
|
10
10
|
export type UpdateMediaSettingsType = (options: UpdateMediaSettingsOptions) => void;
|
|
11
|
+
/**
|
|
12
|
+
* Service for updating media settings including audio, video, screenshare, and chat.
|
|
13
|
+
*
|
|
14
|
+
* @class
|
|
15
|
+
* @name UpdateMediaSettings
|
|
16
|
+
* @description Provides a method to update multiple media settings at once using specified update functions.
|
|
17
|
+
*
|
|
18
|
+
* @method
|
|
19
|
+
* updateMediaSettings
|
|
20
|
+
*
|
|
21
|
+
* @param {UpdateMediaSettingsOptions} options - Options for updating media settings:
|
|
22
|
+
* - `settings` {Settings}: The settings values to apply.
|
|
23
|
+
* - `updateAudioSetting` {Function}: Function to update the audio setting.
|
|
24
|
+
* - `updateVideoSetting` {Function}: Function to update the video setting.
|
|
25
|
+
* - `updateScreenshareSetting` {Function}: Function to update the screenshare setting.
|
|
26
|
+
* - `updateChatSetting` {Function}: Function to update the chat setting.
|
|
27
|
+
*
|
|
28
|
+
* @returns {void} Updates settings directly through the provided functions.
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* const settings = ['mute', 'HD', 'enabled', 'disabled'];
|
|
32
|
+
* const options = {
|
|
33
|
+
* settings,
|
|
34
|
+
* updateAudioSetting: (value) => console.log(`Audio setting updated to: ${value}`),
|
|
35
|
+
* updateVideoSetting: (value) => console.log(`Video setting updated to: ${value}`),
|
|
36
|
+
* updateScreenshareSetting: (value) => console.log(`Screenshare setting updated to: ${value}`),
|
|
37
|
+
* updateChatSetting: (value) => console.log(`Chat setting updated to: ${value}`)
|
|
38
|
+
* };
|
|
39
|
+
* updateMediaSettingsService.updateMediaSettings(options);
|
|
40
|
+
*/
|
|
11
41
|
export declare class UpdateMediaSettings {
|
|
12
42
|
/**
|
|
13
43
|
* Updates the media settings by invoking the provided update functions for each setting.
|
|
@@ -13,6 +13,46 @@ export interface UpdatedCoHostOptions {
|
|
|
13
13
|
updateYouAreCoHost: (youAreCoHost: boolean) => void;
|
|
14
14
|
}
|
|
15
15
|
export type UpdatedCoHostType = (options: UpdatedCoHostOptions) => Promise<void>;
|
|
16
|
+
/**
|
|
17
|
+
* Service for updating co-host information, responsibilities, and the user's co-host status.
|
|
18
|
+
*
|
|
19
|
+
* @class
|
|
20
|
+
* @name UpdatedCoHost
|
|
21
|
+
* @description Manages co-host updates for different event types, assigning responsibilities and notifying the user if their co-host status changes.
|
|
22
|
+
*
|
|
23
|
+
* @method
|
|
24
|
+
* updatedCoHost
|
|
25
|
+
* @async
|
|
26
|
+
*
|
|
27
|
+
* @param {UpdatedCoHostOptions} options - The options for co-host updates:
|
|
28
|
+
* - `coHost` {string}: The name of the co-host.
|
|
29
|
+
* - `coHostResponsibility` {CoHostResponsibility[]}: List of responsibilities assigned to the co-host.
|
|
30
|
+
* - `showAlert` {ShowAlert}: Optional function to display an alert message.
|
|
31
|
+
* - `eventType` {EventType}: Type of the event, determining if co-host can be updated.
|
|
32
|
+
* - `islevel` {string}: Current level of the event.
|
|
33
|
+
* - `member` {string}: The current user's identifier.
|
|
34
|
+
* - `youAreCoHost` {boolean}: Current user's co-host status.
|
|
35
|
+
* - `updateCoHost` {Function}: Function to set the new co-host.
|
|
36
|
+
* - `updateCoHostResponsibility` {Function}: Function to assign responsibilities to the co-host.
|
|
37
|
+
* - `updateYouAreCoHost` {Function}: Function to update the user's co-host status.
|
|
38
|
+
*
|
|
39
|
+
* @returns {Promise<void>} Resolves after co-host information is updated.
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* const options = {
|
|
43
|
+
* coHost: 'Alice',
|
|
44
|
+
* coHostResponsibility: ['moderate', 'manageParticipants'],
|
|
45
|
+
* showAlert: ({ message, type, duration }) => console.log(message),
|
|
46
|
+
* eventType: 'conference',
|
|
47
|
+
* islevel: '1',
|
|
48
|
+
* member: 'Alice',
|
|
49
|
+
* youAreCoHost: false,
|
|
50
|
+
* updateCoHost: (newCoHost) => console.log(`Updated co-host: ${newCoHost}`),
|
|
51
|
+
* updateCoHostResponsibility: (responsibilities) => console.log(responsibilities),
|
|
52
|
+
* updateYouAreCoHost: (status) => console.log(`You are co-host: ${status}`)
|
|
53
|
+
* };
|
|
54
|
+
* await updatedCoHostService.updatedCoHost(options);
|
|
55
|
+
*/
|
|
16
56
|
export declare class UpdatedCoHost {
|
|
17
57
|
/**
|
|
18
58
|
* Updates the co-host information, responsibility, and user's co-host status based on the provided options.
|
|
@@ -8,56 +8,30 @@ export interface UserWaitingOptions {
|
|
|
8
8
|
}
|
|
9
9
|
export type UserWaitingType = (options: UserWaitingOptions) => Promise<void>;
|
|
10
10
|
/**
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
* @description
|
|
14
|
-
* This service provides methods to handle the logic when a user joins the waiting room.
|
|
15
|
-
* It displays an alert/notification and updates the total number of requests waiting.
|
|
16
|
-
*/
|
|
17
|
-
/**
|
|
18
|
-
* Options for the userWaiting method.
|
|
19
|
-
*
|
|
20
|
-
* @interface UserWaitingOptions
|
|
21
|
-
* @property {string} name - The name of the user joining the waiting room.
|
|
22
|
-
* @property {(options: { message: string; type: string; duration: number }) => void} [showAlert] - Optional function to display an alert/notification.
|
|
23
|
-
* @property {number} totalReqWait - The current total number of requests waiting.
|
|
24
|
-
* @property {(total: number) => void} updateTotalReqWait - Function to update the total number of requests waiting.
|
|
25
|
-
*/
|
|
26
|
-
/**
|
|
27
|
-
* Service to handle user waiting functionality.
|
|
11
|
+
* Service for handling user waiting room actions, including notifications and updating request counts.
|
|
28
12
|
*
|
|
29
13
|
* @class
|
|
30
14
|
* @name UserWaiting
|
|
31
|
-
* @description
|
|
32
|
-
* This service provides methods to handle the logic when a user joins the waiting room.
|
|
33
|
-
* It displays an alert/notification and updates the total number of requests waiting.
|
|
34
|
-
*
|
|
35
|
-
* @example
|
|
36
|
-
* const userWaitingService = new UserWaiting();
|
|
37
|
-
* userWaitingService.userWaiting({
|
|
38
|
-
* name: 'John Doe',
|
|
39
|
-
* showAlert: (options) => console.log(options.message),
|
|
40
|
-
* totalReqWait: 5,
|
|
41
|
-
* updateTotalReqWait: (total) => console.log(`Total requests: ${total}`),
|
|
42
|
-
* });
|
|
43
|
-
*/
|
|
44
|
-
/**
|
|
45
|
-
* Handles the logic when a user joins the waiting room.
|
|
15
|
+
* @description Manages the logic when a user joins the waiting room by displaying alerts and incrementing the total request count.
|
|
46
16
|
*
|
|
47
17
|
* @method
|
|
48
|
-
*
|
|
49
|
-
* @memberof UserWaiting
|
|
18
|
+
* userWaiting
|
|
50
19
|
* @async
|
|
51
20
|
*
|
|
52
|
-
* @param {UserWaitingOptions} options - The options for
|
|
53
|
-
*
|
|
21
|
+
* @param {UserWaitingOptions} options - The options for handling user waiting actions:
|
|
22
|
+
* - `name` {string}: Name of the user joining the waiting room.
|
|
23
|
+
* - `showAlert` {ShowAlert}: Optional function for showing an alert with a customizable message, type, and duration.
|
|
24
|
+
* - `totalReqWait` {number}: Current count of waiting requests.
|
|
25
|
+
* - `updateTotalReqWait` {Function}: Updates the total waiting request count.
|
|
26
|
+
*
|
|
27
|
+
* @returns {Promise<void>} Resolves after alert is shown and request count is updated.
|
|
54
28
|
*
|
|
55
29
|
* @example
|
|
56
30
|
* const options = {
|
|
57
|
-
* name: '
|
|
58
|
-
* showAlert: (
|
|
59
|
-
* totalReqWait:
|
|
60
|
-
* updateTotalReqWait: (
|
|
31
|
+
* name: 'Alice',
|
|
32
|
+
* showAlert: ({ message, type, duration }) => console.log(message),
|
|
33
|
+
* totalReqWait: 3,
|
|
34
|
+
* updateTotalReqWait: (newTotal) => console.log(`Updated count: ${newTotal}`)
|
|
61
35
|
* };
|
|
62
36
|
* await userWaitingService.userWaiting(options);
|
|
63
37
|
*/
|
|
@@ -1,10 +1,27 @@
|
|
|
1
1
|
import { Socket } from 'socket.io-client';
|
|
2
|
+
import { MeetingRoomParams, RecordingParams } from "../@types/types";
|
|
2
3
|
import * as i0 from "@angular/core";
|
|
3
4
|
/**
|
|
4
5
|
* Validates the provided API key or token.
|
|
5
6
|
* @param {string} value - The API key or token to validate.
|
|
6
7
|
* @returns {Promise<Boolean>} - True if the API key or token is valid, false otherwise.
|
|
7
8
|
*/
|
|
9
|
+
export interface ResponseLocalConnection {
|
|
10
|
+
socket?: Socket;
|
|
11
|
+
data?: ResponseLocalConnectionData;
|
|
12
|
+
}
|
|
13
|
+
export interface ResponseLocalConnectionData {
|
|
14
|
+
socketId: string;
|
|
15
|
+
mode: string;
|
|
16
|
+
apiUserName?: string;
|
|
17
|
+
apiKey?: string;
|
|
18
|
+
allowRecord: boolean;
|
|
19
|
+
meetingRoomParams_: MeetingRoomParams;
|
|
20
|
+
recordingParams_: RecordingParams;
|
|
21
|
+
}
|
|
22
|
+
export interface ConnectLocalSocketOptions {
|
|
23
|
+
link: string;
|
|
24
|
+
}
|
|
8
25
|
export interface ConnectSocketOptions {
|
|
9
26
|
apiUserName: string;
|
|
10
27
|
apiKey?: string;
|
|
@@ -16,10 +33,123 @@ export interface DisconnectSocketOptions {
|
|
|
16
33
|
}
|
|
17
34
|
export type ConnectSocketType = (options: ConnectSocketOptions) => Promise<Socket>;
|
|
18
35
|
export type DisconnectSocketType = (options: DisconnectSocketOptions) => Promise<boolean>;
|
|
36
|
+
export type ConnectLocalSocketType = (options: ConnectLocalSocketOptions) => Promise<ResponseLocalConnection>;
|
|
37
|
+
/**
|
|
38
|
+
* Manages connections to a media socket, allowing users to connect or disconnect based on API credentials.
|
|
39
|
+
*
|
|
40
|
+
* @class
|
|
41
|
+
* @name SocketManager
|
|
42
|
+
* @description Provides methods to connect and disconnect from a media socket using a provided API key or token.
|
|
43
|
+
*
|
|
44
|
+
* @method
|
|
45
|
+
* validateApiKeyToken - Validates the API key or token for correct format.
|
|
46
|
+
* connectSocket - Establishes a connection to the media socket using either the API key or token.
|
|
47
|
+
* disconnectSocket - Disconnects an active socket connection.
|
|
48
|
+
*
|
|
49
|
+
* @example
|
|
50
|
+
* ```typescript
|
|
51
|
+
* const socketManager = new SocketManager();
|
|
52
|
+
*
|
|
53
|
+
* // Example of connecting to the socket
|
|
54
|
+
* const socketConnection = await socketManager.connectSocket({
|
|
55
|
+
* apiUserName: 'user123',
|
|
56
|
+
* apiKey: 'validApiKeyOf64Characters',
|
|
57
|
+
* link: 'https://socketserver.example.com'
|
|
58
|
+
* });
|
|
59
|
+
*
|
|
60
|
+
* // Example of disconnecting the socket
|
|
61
|
+
* const isDisconnected = await socketManager.disconnectSocket({
|
|
62
|
+
* socket: socketConnection
|
|
63
|
+
* });
|
|
64
|
+
* ```
|
|
65
|
+
*
|
|
66
|
+
* @typedef {Object} ConnectSocketOptions
|
|
67
|
+
* @property {string} apiUserName - Username for the API.
|
|
68
|
+
* @property {string} [apiKey] - The API key for authentication.
|
|
69
|
+
* @property {string} [apiToken] - The API token for authentication.
|
|
70
|
+
* @property {string} link - The socket server link.
|
|
71
|
+
*
|
|
72
|
+
* @typedef {Object} DisconnectSocketOptions
|
|
73
|
+
* @property {Socket} socket - The socket instance to disconnect.
|
|
74
|
+
*
|
|
75
|
+
* @returns {Promise<Socket | boolean>} The active socket instance on connection, or a boolean indicating disconnection success.
|
|
76
|
+
*/
|
|
19
77
|
export declare class SocketManager {
|
|
20
78
|
private socket;
|
|
21
79
|
validateApiKeyToken(value: string): Promise<boolean>;
|
|
80
|
+
/**
|
|
81
|
+
* Connects to a media socket using the provided connection options.
|
|
82
|
+
*
|
|
83
|
+
* @param {ConnectSocketOptions} options - The connection options.
|
|
84
|
+
* @param {string} options.apiUserName - The API username.
|
|
85
|
+
* @param {string} [options.apiKey] - The API key for authentication.
|
|
86
|
+
* @param {string} [options.apiToken] - The API token for authentication.
|
|
87
|
+
* @param {string} options.link - The socket link.
|
|
88
|
+
*
|
|
89
|
+
* @returns {Promise<Socket>} A promise that resolves to the connected socket.
|
|
90
|
+
*
|
|
91
|
+
* @example
|
|
92
|
+
* ```typescript
|
|
93
|
+
* const options = {
|
|
94
|
+
* apiUserName: 'user123',
|
|
95
|
+
* apiKey: 'validApiKeyOf64Characters',
|
|
96
|
+
* link: 'https://socketserver.example.com'
|
|
97
|
+
* };
|
|
98
|
+
*
|
|
99
|
+
* try {
|
|
100
|
+
* const socket = await connectSocket(options);
|
|
101
|
+
* console.log('Connected to socket:', socket);
|
|
102
|
+
* } catch (error) {
|
|
103
|
+
* console.error('Failed to connect to socket:', error);
|
|
104
|
+
* }
|
|
105
|
+
* ```
|
|
106
|
+
*/
|
|
22
107
|
connectSocket: ({ apiUserName, apiKey, apiToken, link, }: ConnectSocketOptions) => Promise<Socket>;
|
|
108
|
+
/**
|
|
109
|
+
* Connects to a local media socket using the provided connection options.
|
|
110
|
+
*
|
|
111
|
+
* @param {ConnectLocalSocketOptions} options - The connection options.
|
|
112
|
+
* @param {string} options.link - The socket link.
|
|
113
|
+
*
|
|
114
|
+
* @returns {Promise<ResponseLocalConnection>} A promise that resolves to the connected socket and data.
|
|
115
|
+
*
|
|
116
|
+
* @example
|
|
117
|
+
* ```typescript
|
|
118
|
+
* const options = {
|
|
119
|
+
* link: "http://localhost:3000",
|
|
120
|
+
* };
|
|
121
|
+
*
|
|
122
|
+
* try {
|
|
123
|
+
* const { socket, data } = await connectLocalSocket(options);
|
|
124
|
+
* console.log("Connected to socket:", socket, data);
|
|
125
|
+
* } catch (error) {
|
|
126
|
+
* console.error("Failed to connect to socket:", error);
|
|
127
|
+
* }
|
|
128
|
+
* ```
|
|
129
|
+
*/
|
|
130
|
+
connectLocalSocket: ({ link }: ConnectLocalSocketOptions) => Promise<ResponseLocalConnection>;
|
|
131
|
+
/**
|
|
132
|
+
* Disconnects an active socket connection.
|
|
133
|
+
*
|
|
134
|
+
* @param {DisconnectSocketOptions} options - The options for disconnecting the socket.
|
|
135
|
+
* @param {Socket} options.socket - The socket instance to disconnect.
|
|
136
|
+
*
|
|
137
|
+
* @returns {Promise<boolean>} A promise that resolves to true if the socket was disconnected successfully, or false otherwise.
|
|
138
|
+
*
|
|
139
|
+
* @example
|
|
140
|
+
* ```typescript
|
|
141
|
+
* const options = {
|
|
142
|
+
* socket: mySocketInstance,
|
|
143
|
+
* };
|
|
144
|
+
*
|
|
145
|
+
* try {
|
|
146
|
+
* const isDisconnected = await disconnectSocket(options);
|
|
147
|
+
* console.log("Socket disconnected:", isDisconnected);
|
|
148
|
+
* } catch (error) {
|
|
149
|
+
* console.error("Failed to disconnect socket:", error);
|
|
150
|
+
* }
|
|
151
|
+
* ```
|
|
152
|
+
*/
|
|
23
153
|
disconnectSocket: ({ socket }: DisconnectSocketOptions) => Promise<boolean>;
|
|
24
154
|
static ɵfac: i0.ɵɵFactoryDeclaration<SocketManager, never>;
|
|
25
155
|
static ɵprov: i0.ɵɵInjectableDeclaration<SocketManager>;
|
package/dist/public-api.d.ts
CHANGED
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
import { initialValuesState } from './lib/methods/utils/initial-values.util';
|
|
2
|
+
export * from './lib/methods/utils/join-room-on-media-sfu.service';
|
|
3
|
+
export * from './lib/methods/utils/create-room-on-media-sfu.service';
|
|
4
|
+
export * from './lib/methods/utils/check-limits-and-make-request.service';
|
|
5
|
+
export * from './lib/methods/utils/create-response-join-room.util';
|
|
2
6
|
import { LoadingModal } from './lib/components/display-components/loading-modal/loading-modal.component';
|
|
3
7
|
import { MainAspectComponent } from './lib/components/display-components/main-aspect-component/main-aspect-component.component';
|
|
4
8
|
import { ControlButtonsComponent } from './lib/components/display-components/control-buttons-component/control-buttons-component.component';
|
|
@@ -55,6 +59,7 @@ import { LaunchBreakoutRooms } from './lib/methods/breakout-room-methods/launch-
|
|
|
55
59
|
import { LaunchConfigureWhiteboard } from './lib/methods/whiteboard-methods/launch-configure-whiteboard.service';
|
|
56
60
|
import { SocketManager } from './lib/sockets/socket-manager.service';
|
|
57
61
|
import { JoinRoomClient } from './lib/producer-client/producer-client-emits/join-room-client.service';
|
|
62
|
+
import { JoinLocalRoom } from './lib/producers/producer-emits/join-local-room.service';
|
|
58
63
|
import { UpdateRoomParametersClient } from './lib/producer-client/producer-client-emits/update-room-parameters-client.service';
|
|
59
64
|
import { CreateDeviceClient } from './lib/producer-client/producer-client-emits/create-device-client.service';
|
|
60
65
|
import { ClickVideo } from './lib/methods/stream-methods/click-video.service';
|
|
@@ -115,6 +120,7 @@ import { SwitchUserAudio } from './lib/consumers/switch-user-audio.service';
|
|
|
115
120
|
import { ReceiveRoomMessages } from './lib/consumers/receive-room-messages.service';
|
|
116
121
|
import { FormatNumber } from './lib/methods/utils/format-number.service';
|
|
117
122
|
import { ConnectIps } from './lib/consumers/connect-ips.service';
|
|
123
|
+
import { ConnectLocalIps } from './lib/consumers/connect-local-ips.service';
|
|
118
124
|
import { PollUpdated } from './lib/methods/polls-methods/poll-updated.service';
|
|
119
125
|
import { HandleCreatePoll } from './lib/methods/polls-methods/handle-create-poll.service';
|
|
120
126
|
import { HandleVotePoll } from './lib/methods/polls-methods/handle-vote-poll.service';
|
|
@@ -174,4 +180,8 @@ import { CardVideoDisplay } from './lib/components/display-components/card-video
|
|
|
174
180
|
import { MiniCardAudio } from './lib/components/display-components/mini-card-audio/mini-card-audio.component';
|
|
175
181
|
import { MiniAudioPlayer } from './lib/methods/utils/mini-audio-player/mini-audio-player.component';
|
|
176
182
|
import { SoundPlayer } from './lib/methods/utils/sound-player.service';
|
|
177
|
-
|
|
183
|
+
import { CreateRoomOnMediaSFU } from './lib/methods/utils/create-room-on-media-sfu.service';
|
|
184
|
+
import { JoinRoomOnMediaSFU } from './lib/methods/utils/join-room-on-media-sfu.service';
|
|
185
|
+
import { CheckLimitsAndMakeRequest } from './lib/methods/utils/check-limits-and-make-request.service';
|
|
186
|
+
import { createResponseJoinRoom } from './lib/methods/utils/create-response-join-room.util';
|
|
187
|
+
export { initialValuesState, LoadingModal, MainAspectComponent, ControlButtonsComponent, ControlButtonsAltComponent, ControlButtonsComponentTouch, OtherGridComponent, MainScreenComponent, MainGridComponent, SubAspectComponent, MainContainerComponent, AlertComponent, MenuModal, RecordingModal, RequestsModal, WaitingRoomModal, DisplaySettingsModal, EventSettingsModal, CoHostModal, ParticipantsModal, MessagesModal, MediaSettingsModal, ConfirmExitModal, ConfirmHereModal, ShareEventModal, WelcomePage, PreJoinPage, Pagination, FlexibleGrid, FlexibleVideo, AudioGrid, LaunchMenuModal, LaunchRecording, StartRecording, ConfirmRecording, LaunchWaiting, launchCoHost, LaunchMediaSettings, LaunchDisplaySettings, LaunchSettings, LaunchRequests, LaunchParticipants, LaunchMessages, LaunchConfirmExit, JoinRoomClient, JoinLocalRoom, UpdateRoomParametersClient, CreateDeviceClient, ClickVideo, ClickAudio, ClickScreenShare, StreamSuccessVideo, StreamSuccessAudio, StreamSuccessScreen, StreamSuccessAudioSwitch, CheckPermission, ProducerClosed, NewPipeProducer, UpdateMiniCardsGrid, MixStreams, DispStreams, StopShareScreen, CheckScreenShare, StartShareScreen, RequestScreenShare, ReorderStreams, PrepopulateUserMedia, GetVideos, RePort, Trigger, ConsumerResume, ConnectSendTransportAudio, ConnectSendTransportVideo, ConnectSendTransportScreen, ProcessConsumerTransports, ResumePauseStreams, Readjust, CheckGrid, GetEstimate, CalculateRowsAndColumns, AddVideosGrid, OnScreenChanges, sleep, ChangeVids, CompareActiveNames, CompareScreenStates, CreateSendTransport, ResumeSendTransportAudio, ReceiveAllPipedTransports, DisconnectSendTransportVideo, DisconnectSendTransportAudio, DisconnectSendTransportScreen, ConnectSendTransport, GetPipedProducersAlt, SignalNewConsumerTransport, ConnectRecvTransport, ReUpdateInter, UpdateParticipantAudioDecibels, CloseAndResize, AutoAdjust, SwitchUserVideoAlt, SwitchUserVideo, SwitchUserAudio, ReceiveRoomMessages, FormatNumber, ConnectIps, ConnectLocalIps, StartMeetingProgressTimer, UpdateRecording, StopRecording, UserWaiting, PersonJoined, AllWaitingRoomMembers, RoomRecordParams, BanParticipant, UpdatedCoHost, ParticipantRequested, ScreenProducerId, UpdateMediaSettings, ProducerMediaPaused, ProducerMediaResumed, ProducerMediaClosed, ControlMediaHost, MeetingEnded, DisconnectUserSelf, ReceiveMessage, MeetingTimeRemaining, MeetingStillThere, StartRecords, ReInitiateRecording, GetDomains, UpdateConsumingDomains, RecordingNotice, TimeLeftRecording, StoppedRecording, HostRequestResponse, AllMembers, AllMembersRest, Disconnect, MediasfuGeneric, MediasfuBroadcast, MediasfuWebinar, MediasfuConference, MediasfuChat, GenerateRandomParticipants, GenerateRandomMessages, GenerateRandomRequestList, GenerateRandomWaitingRoomList, GenerateRandomPolls, MeetingProgressTimer, MiniAudio, MiniCard, AudioCard, VideoCard, CardVideoDisplay, MiniCardAudio, MiniAudioPlayer, SoundPlayer, CaptureCanvasStream, ResumePauseAudioStreams, ProcessConsumerTransportsAudio, PollUpdated, HandleCreatePoll, HandleVotePoll, HandleEndPoll, BreakoutRoomUpdated, LaunchPoll, LaunchBackground, LaunchBreakoutRooms, LaunchConfigureWhiteboard, PollModal, BackgroundModal, BreakoutRoomsModal, ConfigureWhiteboardModal, Whiteboard, Screenboard, ScreenboardModal, SocketManager, CreateRoomOnMediaSFU, JoinRoomOnMediaSFU, CheckLimitsAndMakeRequest, createResponseJoinRoom, };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mediasfu-angular",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.0",
|
|
4
4
|
"author": "MediaSFU",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"description": "MediaSFU Prebuilt Angular SDK",
|
|
@@ -14,33 +14,32 @@
|
|
|
14
14
|
"email": "info@mediasfu.com"
|
|
15
15
|
},
|
|
16
16
|
"peerDependencies": {
|
|
17
|
-
"@angular/animations": "^
|
|
18
|
-
"@angular/common": "^
|
|
19
|
-
"@angular/compiler": "^
|
|
20
|
-
"@angular/core": "^
|
|
21
|
-
"@angular/forms": "^
|
|
22
|
-
"@angular/platform-browser": "^
|
|
23
|
-
"@angular/platform-browser-dynamic": "^
|
|
24
|
-
"@angular/router": "^
|
|
25
|
-
"@fortawesome/angular-fontawesome": "^0.
|
|
26
|
-
"@fortawesome/fontawesome-svg-core": "^6.
|
|
27
|
-
"@fortawesome/free-brands-svg-icons": "^6.
|
|
28
|
-
"@fortawesome/free-solid-svg-icons": "^6.
|
|
17
|
+
"@angular/animations": "^19.0.1",
|
|
18
|
+
"@angular/common": "^19.0.1",
|
|
19
|
+
"@angular/compiler": "^19.0.1",
|
|
20
|
+
"@angular/core": "^19.0.1",
|
|
21
|
+
"@angular/forms": "^19.0.1",
|
|
22
|
+
"@angular/platform-browser": "^19.0.1",
|
|
23
|
+
"@angular/platform-browser-dynamic": "^19.0.1",
|
|
24
|
+
"@angular/router": "^19.0.1",
|
|
25
|
+
"@fortawesome/angular-fontawesome": "^1.0.0",
|
|
26
|
+
"@fortawesome/fontawesome-svg-core": "^6.7.1",
|
|
27
|
+
"@fortawesome/free-brands-svg-icons": "^6.7.1",
|
|
28
|
+
"@fortawesome/free-solid-svg-icons": "^6.7.1",
|
|
29
29
|
"@mediapipe/selfie_segmentation": "^0.1.1675465747",
|
|
30
|
-
"@zxing/ngx-scanner": "^
|
|
30
|
+
"@zxing/ngx-scanner": "^19.0.0",
|
|
31
31
|
"bootstrap": "^5.3.3",
|
|
32
|
-
"ngx-cookie-service": "^
|
|
32
|
+
"ngx-cookie-service": "^19.0.0",
|
|
33
33
|
"rxjs": "~7.8.0",
|
|
34
|
-
"zone.js": "~0.
|
|
34
|
+
"zone.js": "~0.15.0",
|
|
35
35
|
"mediasoup-client": "3.7.17",
|
|
36
|
-
"tslib": "^2.3.0",
|
|
37
36
|
"socket.io-client": "^4.3.2"
|
|
38
37
|
},
|
|
39
38
|
"dependencies": {
|
|
39
|
+
"tslib": "^2.3.0"
|
|
40
40
|
},
|
|
41
41
|
"module": "dist/fesm2022/mediasfu-angular.mjs",
|
|
42
42
|
"es2022": "dist/fesm2022/mediasfu-angular.mjs",
|
|
43
|
-
"esm2022": "dist/esm2022/mediasfu-angular.mjs",
|
|
44
43
|
"fesm2022": "dist/fesm2022/mediasfu-angular.mjs",
|
|
45
44
|
"typings": "dist/index.d.ts",
|
|
46
45
|
"sideEffects": false,
|
|
@@ -54,8 +53,6 @@
|
|
|
54
53
|
},
|
|
55
54
|
".": {
|
|
56
55
|
"types": "./dist/index.d.ts",
|
|
57
|
-
"esm2022": "./dist/esm2022/mediasfu-angular.mjs",
|
|
58
|
-
"es2022": "./dist/fesm2022/mediasfu-angular.mjs",
|
|
59
56
|
"node": "./dist/fesm2022/mediasfu-angular.mjs",
|
|
60
57
|
"default": "./dist/fesm2022/mediasfu-angular.mjs"
|
|
61
58
|
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tZWRpYXNmdS1hbmd1bGFyL3NyYy9saWIvQHR5cGVzL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB0eXBlcy50c1xuaW1wb3J0IHsgU29ja2V0IH0gZnJvbSAnc29ja2V0LmlvLWNsaWVudCc7XG5pbXBvcnQge1xuICBDb25zdW1lcixcbiAgRHRsc1BhcmFtZXRlcnMsXG4gIEljZUNhbmRpZGF0ZSxcbiAgSWNlUGFyYW1ldGVycyxcbiAgUnRwQ2FwYWJpbGl0aWVzLFxufSBmcm9tICdtZWRpYXNvdXAtY2xpZW50L2xpYi90eXBlcyc7XG5pbXBvcnQgeyBJY29uRGVmaW5pdGlvbiB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucyc7XG5pbXBvcnQgeyBDdXN0b21Db21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2Rpc3BsYXktY29tcG9uZW50cy9jb250cm9sLWJ1dHRvbnMtY29tcG9uZW50L2NvbnRyb2wtYnV0dG9ucy1jb21wb25lbnQuY29tcG9uZW50JztcbmltcG9ydCB7IEN1c3RvbUJ1dHRvbiB9IGZyb20gJy4uL2NvbXBvbmVudHMvbWVudS1jb21wb25lbnRzL2N1c3RvbS1idXR0b25zL2N1c3RvbS1idXR0b25zLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21wb25lbnRUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5cbi8vIC8vY29uc3VtZXJzL3NvY2tldC1yZWNlaXZlLW1ldGhvZHNcbmV4cG9ydCB0eXBlIHtcbiAgSm9pbkNvbnN1bWVSb29tT3B0aW9ucyxcbiAgSm9pbkNvbnN1bWVSb29tVHlwZSxcbiAgSm9pbkNvbnN1bWVSb29tUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vY29uc3VtZXJzL3NvY2tldC1yZWNlaXZlLW1ldGhvZHMvam9pbi1jb25zdW1lLXJvb20uc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIFByb2R1Y2VyQ2xvc2VkT3B0aW9ucyxcbiAgUHJvZHVjZXJDbG9zZWRUeXBlLFxuICBQcm9kdWNlckNsb3NlZFBhcmFtZXRlcnMsXG59IGZyb20gJy4uL2NvbnN1bWVycy9zb2NrZXQtcmVjZWl2ZS1tZXRob2RzL3Byb2R1Y2VyLWNsb3NlZC5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgTmV3UGlwZVByb2R1Y2VyT3B0aW9ucyxcbiAgTmV3UGlwZVByb2R1Y2VyVHlwZSxcbiAgTmV3UGlwZVByb2R1Y2VyUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vY29uc3VtZXJzL3NvY2tldC1yZWNlaXZlLW1ldGhvZHMvbmV3LXBpcGUtcHJvZHVjZXIuc2VydmljZSc7XG5cbi8vIC8vY29uc3VtZXJzXG5leHBvcnQgdHlwZSB7XG4gIEFkZFZpZGVvc0dyaWRPcHRpb25zLFxuICBBZGRWaWRlb3NHcmlkVHlwZSxcbiAgQWRkVmlkZW9zR3JpZFBhcmFtZXRlcnMsXG59IGZyb20gJy4uL2NvbnN1bWVycy9hZGQtdmlkZW9zLWdyaWQuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7IEF1dG9BZGp1c3RPcHRpb25zLCBBdXRvQWRqdXN0VHlwZSB9IGZyb20gJy4uL2NvbnN1bWVycy9hdXRvLWFkanVzdC5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgQ2FsY3VsYXRlUm93c0FuZENvbHVtbnNPcHRpb25zLFxuICBDYWxjdWxhdGVSb3dzQW5kQ29sdW1uc1R5cGUsXG59IGZyb20gJy4uL2NvbnN1bWVycy9jYWxjdWxhdGUtcm93cy1hbmQtY29sdW1ucy5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgQ2hhbmdlVmlkc09wdGlvbnMsXG4gIENoYW5nZVZpZHNUeXBlLFxuICBDaGFuZ2VWaWRzUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vY29uc3VtZXJzL2NoYW5nZS12aWRzLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUgeyBDaGVja0dyaWRPcHRpb25zLCBDaGVja0dyaWRUeXBlIH0gZnJvbSAnLi4vY29uc3VtZXJzL2NoZWNrLWdyaWQuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIENoZWNrUGVybWlzc2lvbk9wdGlvbnMsXG4gIENoZWNrUGVybWlzc2lvblR5cGUsXG59IGZyb20gJy4uL2NvbnN1bWVycy9jaGVjay1wZXJtaXNzaW9uLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBDaGVja1NjcmVlblNoYXJlT3B0aW9ucyxcbiAgQ2hlY2tTY3JlZW5TaGFyZVR5cGUsXG4gIENoZWNrU2NyZWVuU2hhcmVQYXJhbWV0ZXJzLFxufSBmcm9tICcuLi9jb25zdW1lcnMvY2hlY2stc2NyZWVuLXNoYXJlLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBDbG9zZUFuZFJlc2l6ZU9wdGlvbnMsXG4gIENsb3NlQW5kUmVzaXplVHlwZSxcbiAgQ2xvc2VBbmRSZXNpemVQYXJhbWV0ZXJzLFxufSBmcm9tICcuLi9jb25zdW1lcnMvY2xvc2UtYW5kLXJlc2l6ZS5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgQ29tcGFyZUFjdGl2ZU5hbWVzT3B0aW9ucyxcbiAgQ29tcGFyZUFjdGl2ZU5hbWVzVHlwZSxcbiAgQ29tcGFyZUFjdGl2ZU5hbWVzUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vY29uc3VtZXJzL2NvbXBhcmUtYWN0aXZlLW5hbWVzLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBDb21wYXJlU2NyZWVuU3RhdGVzT3B0aW9ucyxcbiAgQ29tcGFyZVNjcmVlblN0YXRlc1R5cGUsXG4gIENvbXBhcmVTY3JlZW5TdGF0ZXNQYXJhbWV0ZXJzLFxufSBmcm9tICcuLi9jb25zdW1lcnMvY29tcGFyZS1zY3JlZW4tc3RhdGVzLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBDb25uZWN0SXBzT3B0aW9ucyxcbiAgQ29ubmVjdElwc1R5cGUsXG4gIENvbm5lY3RJcHNQYXJhbWV0ZXJzLFxufSBmcm9tICcuLi9jb25zdW1lcnMvY29ubmVjdC1pcHMuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIENvbm5lY3RSZWN2VHJhbnNwb3J0T3B0aW9ucyxcbiAgQ29ubmVjdFJlY3ZUcmFuc3BvcnRUeXBlLFxuICBDb25uZWN0UmVjdlRyYW5zcG9ydFBhcmFtZXRlcnMsXG59IGZyb20gJy4uL2NvbnN1bWVycy9jb25uZWN0LXJlY3YtdHJhbnNwb3J0LnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBDb25uZWN0U2VuZFRyYW5zcG9ydE9wdGlvbnMsXG4gIENvbm5lY3RTZW5kVHJhbnNwb3J0VHlwZSxcbiAgQ29ubmVjdFNlbmRUcmFuc3BvcnRQYXJhbWV0ZXJzLFxufSBmcm9tICcuLi9jb25zdW1lcnMvY29ubmVjdC1zZW5kLXRyYW5zcG9ydC5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgQ29ubmVjdFNlbmRUcmFuc3BvcnRBdWRpb09wdGlvbnMsXG4gIENvbm5lY3RTZW5kVHJhbnNwb3J0QXVkaW9UeXBlLFxuICBDb25uZWN0U2VuZFRyYW5zcG9ydEF1ZGlvUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vY29uc3VtZXJzL2Nvbm5lY3Qtc2VuZC10cmFuc3BvcnQtYXVkaW8uc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIENvbm5lY3RTZW5kVHJhbnNwb3J0U2NyZWVuT3B0aW9ucyxcbiAgQ29ubmVjdFNlbmRUcmFuc3BvcnRTY3JlZW5UeXBlLFxuICBDb25uZWN0U2VuZFRyYW5zcG9ydFNjcmVlblBhcmFtZXRlcnMsXG59IGZyb20gJy4uL2NvbnN1bWVycy9jb25uZWN0LXNlbmQtdHJhbnNwb3J0LXNjcmVlbi5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgQ29ubmVjdFNlbmRUcmFuc3BvcnRWaWRlb09wdGlvbnMsXG4gIENvbm5lY3RTZW5kVHJhbnNwb3J0VmlkZW9UeXBlLFxuICBDb25uZWN0U2VuZFRyYW5zcG9ydFZpZGVvUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vY29uc3VtZXJzL2Nvbm5lY3Qtc2VuZC10cmFuc3BvcnQtdmlkZW8uc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIENvbnN1bWVyUmVzdW1lT3B0aW9ucyxcbiAgQ29uc3VtZXJSZXN1bWVUeXBlLFxuICBDb25zdW1lclJlc3VtZVBhcmFtZXRlcnMsXG59IGZyb20gJy4uL2NvbnN1bWVycy9jb25zdW1lci1yZXN1bWUuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7IENvbnRyb2xNZWRpYU9wdGlvbnMsIENvbnRyb2xNZWRpYVR5cGUgfSBmcm9tICcuLi9jb25zdW1lcnMvY29udHJvbC1tZWRpYS5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgQ3JlYXRlU2VuZFRyYW5zcG9ydE9wdGlvbnMsXG4gIENyZWF0ZVNlbmRUcmFuc3BvcnRUeXBlLFxuICBDcmVhdGVTZW5kVHJhbnNwb3J0UGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vY29uc3VtZXJzL2NyZWF0ZS1zZW5kLXRyYW5zcG9ydC5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgRGlzY29ubmVjdFNlbmRUcmFuc3BvcnRBdWRpb09wdGlvbnMsXG4gIERpc2Nvbm5lY3RTZW5kVHJhbnNwb3J0QXVkaW9UeXBlLFxuICBEaXNjb25uZWN0U2VuZFRyYW5zcG9ydEF1ZGlvUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vY29uc3VtZXJzL2Rpc2Nvbm5lY3Qtc2VuZC10cmFuc3BvcnQtYXVkaW8uc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIERpc2Nvbm5lY3RTZW5kVHJhbnNwb3J0VmlkZW9PcHRpb25zLFxuICBEaXNjb25uZWN0U2VuZFRyYW5zcG9ydFZpZGVvVHlwZSxcbiAgRGlzY29ubmVjdFNlbmRUcmFuc3BvcnRWaWRlb1BhcmFtZXRlcnMsXG59IGZyb20gJy4uL2NvbnN1bWVycy9kaXNjb25uZWN0LXNlbmQtdHJhbnNwb3J0LXZpZGVvLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBEaXNjb25uZWN0U2VuZFRyYW5zcG9ydFNjcmVlbk9wdGlvbnMsXG4gIERpc2Nvbm5lY3RTZW5kVHJhbnNwb3J0U2NyZWVuVHlwZSxcbiAgRGlzY29ubmVjdFNlbmRUcmFuc3BvcnRTY3JlZW5QYXJhbWV0ZXJzLFxufSBmcm9tICcuLi9jb25zdW1lcnMvZGlzY29ubmVjdC1zZW5kLXRyYW5zcG9ydC1zY3JlZW4uc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIERpc3BTdHJlYW1zT3B0aW9ucyxcbiAgRGlzcFN0cmVhbXNUeXBlLFxuICBEaXNwU3RyZWFtc1BhcmFtZXRlcnMsXG59IGZyb20gJy4uL2NvbnN1bWVycy9kaXNwLXN0cmVhbXMuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIEdlbmVyYXRlUGFnZUNvbnRlbnRPcHRpb25zLFxuICBHZW5lcmF0ZVBhZ2VDb250ZW50VHlwZSxcbn0gZnJvbSAnLi4vY29uc3VtZXJzL2dlbmVyYXRlLXBhZ2UtY29udGVudC5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgR2V0RXN0aW1hdGVPcHRpb25zLFxuICBHZXRFc3RpbWF0ZVR5cGUsXG4gIEdldEVzdGltYXRlUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vY29uc3VtZXJzL2dldC1lc3RpbWF0ZS5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgR2V0UGlwZWRQcm9kdWNlcnNBbHRPcHRpb25zLFxuICBHZXRQaXBlZFByb2R1Y2Vyc0FsdFR5cGUsXG4gIEdldFBpcGVkUHJvZHVjZXJzQWx0UGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vY29uc3VtZXJzL2dldC1waXBlZC1wcm9kdWNlcnMtYWx0LnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBHZXRQcm9kdWNlcnNQaXBlZE9wdGlvbnMsXG4gIEdldFByb2R1Y2Vyc1BpcGVkVHlwZSxcbiAgR2V0UHJvZHVjZXJzUGlwZWRQYXJhbWV0ZXJzLFxufSBmcm9tICcuLi9jb25zdW1lcnMvZ2V0LXByb2R1Y2Vycy1waXBlZC5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHsgR2V0VmlkZW9zT3B0aW9ucywgR2V0VmlkZW9zVHlwZSB9IGZyb20gJy4uL2NvbnN1bWVycy9nZXQtdmlkZW9zLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUgeyBNaXhTdHJlYW1zT3B0aW9ucywgTWl4U3RyZWFtc1R5cGUgfSBmcm9tICcuLi9jb25zdW1lcnMvbWl4LXN0cmVhbXMuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIE9uU2NyZWVuQ2hhbmdlc09wdGlvbnMsXG4gIE9uU2NyZWVuQ2hhbmdlc1R5cGUsXG4gIE9uU2NyZWVuQ2hhbmdlc1BhcmFtZXRlcnMsXG59IGZyb20gJy4uL2NvbnN1bWVycy9vbi1zY3JlZW4tY2hhbmdlcy5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgUHJlcG9wdWxhdGVVc2VyTWVkaWFPcHRpb25zLFxuICBQcmVwb3B1bGF0ZVVzZXJNZWRpYVR5cGUsXG4gIFByZXBvcHVsYXRlVXNlck1lZGlhUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vY29uc3VtZXJzL3ByZXBvcHVsYXRlLXVzZXItbWVkaWEuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIFByb2Nlc3NDb25zdW1lclRyYW5zcG9ydHNPcHRpb25zLFxuICBQcm9jZXNzQ29uc3VtZXJUcmFuc3BvcnRzVHlwZSxcbiAgUHJvY2Vzc0NvbnN1bWVyVHJhbnNwb3J0c1BhcmFtZXRlcnMsXG59IGZyb20gJy4uL2NvbnN1bWVycy9wcm9jZXNzLWNvbnN1bWVyLXRyYW5zcG9ydHMuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIFByb2Nlc3NDb25zdW1lclRyYW5zcG9ydHNBdWRpb09wdGlvbnMsXG4gIFByb2Nlc3NDb25zdW1lclRyYW5zcG9ydHNBdWRpb1R5cGUsXG4gIFByb2Nlc3NDb25zdW1lclRyYW5zcG9ydHNBdWRpb1BhcmFtZXRlcnMsXG59IGZyb20gJy4uL2NvbnN1bWVycy9wcm9jZXNzLWNvbnN1bWVyLXRyYW5zcG9ydHMtYXVkaW8uc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIFJlYWRqdXN0T3B0aW9ucyxcbiAgUmVhZGp1c3RUeXBlLFxuICBSZWFkanVzdFBhcmFtZXRlcnMsXG59IGZyb20gJy4uL2NvbnN1bWVycy9yZWFkanVzdC5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgUmVjZWl2ZUFsbFBpcGVkVHJhbnNwb3J0c09wdGlvbnMsXG4gIFJlY2VpdmVBbGxQaXBlZFRyYW5zcG9ydHNUeXBlLFxuICBSZWNlaXZlQWxsUGlwZWRUcmFuc3BvcnRzUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vY29uc3VtZXJzL3JlY2VpdmUtYWxsLXBpcGVkLXRyYW5zcG9ydHMuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIFJlb3JkZXJTdHJlYW1zT3B0aW9ucyxcbiAgUmVvcmRlclN0cmVhbXNUeXBlLFxuICBSZW9yZGVyU3RyZWFtc1BhcmFtZXRlcnMsXG59IGZyb20gJy4uL2NvbnN1bWVycy9yZW9yZGVyLXN0cmVhbXMuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7IFJlUG9ydE9wdGlvbnMsIFJlUG9ydFR5cGUsIFJlUG9ydFBhcmFtZXRlcnMgfSBmcm9tICcuLi9jb25zdW1lcnMvcmUtcG9ydC5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgUmVxdWVzdFNjcmVlblNoYXJlT3B0aW9ucyxcbiAgUmVxdWVzdFNjcmVlblNoYXJlVHlwZSxcbiAgUmVxdWVzdFNjcmVlblNoYXJlUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vY29uc3VtZXJzL3JlcXVlc3Qtc2NyZWVuLXNoYXJlLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBSZXN1bWVQYXVzZUF1ZGlvU3RyZWFtc09wdGlvbnMsXG4gIFJlc3VtZVBhdXNlQXVkaW9TdHJlYW1zVHlwZSxcbiAgUmVzdW1lUGF1c2VBdWRpb1N0cmVhbXNQYXJhbWV0ZXJzLFxufSBmcm9tICcuLi9jb25zdW1lcnMvcmVzdW1lLXBhdXNlLWF1ZGlvLXN0cmVhbXMuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIFJlc3VtZVBhdXNlU3RyZWFtc09wdGlvbnMsXG4gIFJlc3VtZVBhdXNlU3RyZWFtc1R5cGUsXG4gIFJlc3VtZVBhdXNlU3RyZWFtc1BhcmFtZXRlcnMsXG59IGZyb20gJy4uL2NvbnN1bWVycy9yZXN1bWUtcGF1c2Utc3RyZWFtcy5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgUmVzdW1lU2VuZFRyYW5zcG9ydEF1ZGlvT3B0aW9ucyxcbiAgUmVzdW1lU2VuZFRyYW5zcG9ydEF1ZGlvVHlwZSxcbiAgUmVzdW1lU2VuZFRyYW5zcG9ydEF1ZGlvUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vY29uc3VtZXJzL3Jlc3VtZS1zZW5kLXRyYW5zcG9ydC1hdWRpby5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgUmVVcGRhdGVJbnRlck9wdGlvbnMsXG4gIFJlVXBkYXRlSW50ZXJUeXBlLFxuICBSZVVwZGF0ZUludGVyUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vY29uc3VtZXJzL3JlLXVwZGF0ZS1pbnRlci5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgU2lnbmFsTmV3Q29uc3VtZXJUcmFuc3BvcnRPcHRpb25zLFxuICBTaWduYWxOZXdDb25zdW1lclRyYW5zcG9ydFR5cGUsXG4gIFNpZ25hbE5ld0NvbnN1bWVyVHJhbnNwb3J0UGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vY29uc3VtZXJzL3NpZ25hbC1uZXctY29uc3VtZXItdHJhbnNwb3J0LnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBTdGFydFNoYXJlU2NyZWVuT3B0aW9ucyxcbiAgU3RhcnRTaGFyZVNjcmVlblR5cGUsXG4gIFN0YXJ0U2hhcmVTY3JlZW5QYXJhbWV0ZXJzLFxufSBmcm9tICcuLi9jb25zdW1lcnMvc3RhcnQtc2hhcmUtc2NyZWVuLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBTdG9wU2hhcmVTY3JlZW5PcHRpb25zLFxuICBTdG9wU2hhcmVTY3JlZW5UeXBlLFxuICBTdG9wU2hhcmVTY3JlZW5QYXJhbWV0ZXJzLFxufSBmcm9tICcuLi9jb25zdW1lcnMvc3RvcC1zaGFyZS1zY3JlZW4uc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIFN0cmVhbVN1Y2Nlc3NBdWRpb09wdGlvbnMsXG4gIFN0cmVhbVN1Y2Nlc3NBdWRpb1R5cGUsXG4gIFN0cmVhbVN1Y2Nlc3NBdWRpb1BhcmFtZXRlcnMsXG59IGZyb20gJy4uL2NvbnN1bWVycy9zdHJlYW0tc3VjY2Vzcy1hdWRpby5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgU3RyZWFtU3VjY2Vzc0F1ZGlvU3dpdGNoT3B0aW9ucyxcbiAgU3RyZWFtU3VjY2Vzc0F1ZGlvU3dpdGNoVHlwZSxcbiAgU3RyZWFtU3VjY2Vzc0F1ZGlvU3dpdGNoUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vY29uc3VtZXJzL3N0cmVhbS1zdWNjZXNzLWF1ZGlvLXN3aXRjaC5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgU3RyZWFtU3VjY2Vzc1NjcmVlbk9wdGlvbnMsXG4gIFN0cmVhbVN1Y2Nlc3NTY3JlZW5UeXBlLFxuICBTdHJlYW1TdWNjZXNzU2NyZWVuUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vY29uc3VtZXJzL3N0cmVhbS1zdWNjZXNzLXNjcmVlbi5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgU3RyZWFtU3VjY2Vzc1ZpZGVvT3B0aW9ucyxcbiAgU3RyZWFtU3VjY2Vzc1ZpZGVvVHlwZSxcbiAgU3RyZWFtU3VjY2Vzc1ZpZGVvUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vY29uc3VtZXJzL3N0cmVhbS1zdWNjZXNzLXZpZGVvLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBTd2l0Y2hVc2VyQXVkaW9PcHRpb25zLFxuICBTd2l0Y2hVc2VyQXVkaW9UeXBlLFxuICBTd2l0Y2hVc2VyQXVkaW9QYXJhbWV0ZXJzLFxufSBmcm9tICcuLi9jb25zdW1lcnMvc3dpdGNoLXVzZXItYXVkaW8uc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIFN3aXRjaFVzZXJWaWRlb09wdGlvbnMsXG4gIFN3aXRjaFVzZXJWaWRlb1R5cGUsXG4gIFN3aXRjaFVzZXJWaWRlb1BhcmFtZXRlcnMsXG59IGZyb20gJy4uL2NvbnN1bWVycy9zd2l0Y2gtdXNlci12aWRlby5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgU3dpdGNoVXNlclZpZGVvQWx0T3B0aW9ucyxcbiAgU3dpdGNoVXNlclZpZGVvQWx0VHlwZSxcbiAgU3dpdGNoVXNlclZpZGVvQWx0UGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vY29uc3VtZXJzL3N3aXRjaC11c2VyLXZpZGVvLWFsdC5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHsgVHJpZ2dlck9wdGlvbnMsIFRyaWdnZXJUeXBlLCBUcmlnZ2VyUGFyYW1ldGVycyB9IGZyb20gJy4uL2NvbnN1bWVycy90cmlnZ2VyLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBVcGRhdGVNaW5pQ2FyZHNHcmlkT3B0aW9ucyxcbiAgVXBkYXRlTWluaUNhcmRzR3JpZFR5cGUsXG4gIFVwZGF0ZU1pbmlDYXJkc0dyaWRQYXJhbWV0ZXJzLFxufSBmcm9tICcuLi9jb25zdW1lcnMvdXBkYXRlLW1pbmktY2FyZHMtZ3JpZC5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgVXBkYXRlUGFydGljaXBhbnRBdWRpb0RlY2liZWxzT3B0aW9ucyxcbiAgVXBkYXRlUGFydGljaXBhbnRBdWRpb0RlY2liZWxzVHlwZSxcbn0gZnJvbSAnLi4vY29uc3VtZXJzL3VwZGF0ZS1wYXJ0aWNpcGFudC1hdWRpby1kZWNpYmVscy5zZXJ2aWNlJztcblxuZXhwb3J0IHR5cGUgeyBBUGFyYW1zVHlwZSB9IGZyb20gJy4uL21ldGhvZHMvdXRpbHMvcHJvZHVjZXIvYS1wYXJhbXMuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7IEhQYXJhbXNUeXBlIH0gZnJvbSAnLi4vbWV0aG9kcy91dGlscy9wcm9kdWNlci9oLXBhcmFtcy5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHsgU2NyZWVuUGFyYW1zVHlwZSB9IGZyb20gJy4uL21ldGhvZHMvdXRpbHMvcHJvZHVjZXIvc2NyZWVuLXBhcmFtcy5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHsgVlBhcmFtc1R5cGUgfSBmcm9tICcuLi9tZXRob2RzL3V0aWxzL3Byb2R1Y2VyL3YtcGFyYW1zLnNlcnZpY2UnO1xuXG5leHBvcnQgdHlwZSB7XG4gIExhdW5jaEJhY2tncm91bmRPcHRpb25zLFxuICBMYXVuY2hCYWNrZ3JvdW5kVHlwZSxcbn0gZnJvbSAnLi4vbWV0aG9kcy9iYWNrZ3JvdW5kLW1ldGhvZHMvbGF1bmNoLWJhY2tncm91bmQuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIExhdW5jaEJyZWFrb3V0Um9vbXNPcHRpb25zLFxuICBMYXVuY2hCcmVha291dFJvb21zVHlwZSxcbn0gZnJvbSAnLi4vbWV0aG9kcy9icmVha291dC1yb29tLW1ldGhvZHMvbGF1bmNoLWJyZWFrb3V0LXJvb21zLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBCcmVha291dFJvb21VcGRhdGVkT3B0aW9ucyxcbiAgQnJlYWtvdXRSb29tVXBkYXRlZFR5cGUsXG4gIEJyZWFrb3V0Um9vbVVwZGF0ZWRQYXJhbWV0ZXJzLFxufSBmcm9tICcuLi9tZXRob2RzL2JyZWFrb3V0LXJvb20tbWV0aG9kcy9icmVha291dC1yb29tLXVwZGF0ZWQuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIExhdW5jaENvSG9zdE9wdGlvbnMsXG4gIExhdW5jaENvSG9zdFR5cGUsXG59IGZyb20gJy4uL21ldGhvZHMvY28taG9zdC1tZXRob2RzL2xhdW5jaC1jby1ob3N0LnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBNb2RpZnlDb0hvc3RTZXR0aW5nc09wdGlvbnMsXG4gIE1vZGlmeUNvSG9zdFNldHRpbmdzVHlwZSxcbn0gZnJvbSAnLi4vbWV0aG9kcy9jby1ob3N0LW1ldGhvZHMvbW9kaWZ5LWNvLWhvc3Qtc2V0dGluZ3Muc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIExhdW5jaERpc3BsYXlTZXR0aW5nc09wdGlvbnMsXG4gIExhdW5jaERpc3BsYXlTZXR0aW5nc1R5cGUsXG59IGZyb20gJy4uL21ldGhvZHMvZGlzcGxheS1zZXR0aW5ncy1tZXRob2RzL2xhdW5jaC1kaXNwbGF5LXNldHRpbmdzLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBNb2RpZnlEaXNwbGF5U2V0dGluZ3NPcHRpb25zLFxuICBNb2RpZnlEaXNwbGF5U2V0dGluZ3NUeXBlLFxuICBNb2RpZnlEaXNwbGF5U2V0dGluZ3NQYXJhbWV0ZXJzLFxufSBmcm9tICcuLi9tZXRob2RzL2Rpc3BsYXktc2V0dGluZ3MtbWV0aG9kcy9tb2RpZnktZGlzcGxheS1zZXR0aW5ncy5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgTGF1bmNoQ29uZmlybUV4aXRPcHRpb25zLFxuICBMYXVuY2hDb25maXJtRXhpdFR5cGUsXG59IGZyb20gJy4uL21ldGhvZHMvZXhpdC1tZXRob2RzL2xhdW5jaC1jb25maXJtLWV4aXQuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIENvbmZpcm1FeGl0T3B0aW9ucyxcbiAgQ29uZmlybUV4aXRUeXBlLFxufSBmcm9tICcuLi9tZXRob2RzL2V4aXQtbWV0aG9kcy9jb25maXJtLWV4aXQuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIExhdW5jaE1lZGlhU2V0dGluZ3NPcHRpb25zLFxuICBMYXVuY2hNZWRpYVNldHRpbmdzVHlwZSxcbn0gZnJvbSAnLi4vbWV0aG9kcy9tZWRpYS1zZXR0aW5ncy1tZXRob2RzL2xhdW5jaC1tZWRpYS1zZXR0aW5ncy5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgTGF1bmNoTWVudU1vZGFsT3B0aW9ucyxcbiAgTGF1bmNoTWVudU1vZGFsVHlwZSxcbn0gZnJvbSAnLi4vbWV0aG9kcy9tZW51LW1ldGhvZHMvbGF1bmNoLW1lbnUtbW9kYWwuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIExhdW5jaE1lc3NhZ2VzT3B0aW9ucyxcbiAgTGF1bmNoTWVzc2FnZXNUeXBlLFxufSBmcm9tICcuLi9tZXRob2RzL21lc3NhZ2UtbWV0aG9kcy9sYXVuY2gtbWVzc2FnZXMuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIFNlbmRNZXNzYWdlT3B0aW9ucyxcbiAgU2VuZE1lc3NhZ2VUeXBlLFxufSBmcm9tICcuLi9tZXRob2RzL21lc3NhZ2UtbWV0aG9kcy9zZW5kLW1lc3NhZ2Uuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIExhdW5jaFBhcnRpY2lwYW50c09wdGlvbnMsXG4gIExhdW5jaFBhcnRpY2lwYW50c1R5cGUsXG59IGZyb20gJy4uL21ldGhvZHMvcGFydGljaXBhbnRzLW1ldGhvZHMvbGF1bmNoLXBhcnRpY2lwYW50cy5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgTWVzc2FnZVBhcnRpY2lwYW50c09wdGlvbnMsXG4gIE1lc3NhZ2VQYXJ0aWNpcGFudHNUeXBlLFxufSBmcm9tICcuLi9tZXRob2RzL3BhcnRpY2lwYW50cy1tZXRob2RzL21lc3NhZ2UtcGFydGljaXBhbnRzLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBNdXRlUGFydGljaXBhbnRzT3B0aW9ucyxcbiAgTXV0ZVBhcnRpY2lwYW50c1R5cGUsXG59IGZyb20gJy4uL21ldGhvZHMvcGFydGljaXBhbnRzLW1ldGhvZHMvbXV0ZS1wYXJ0aWNpcGFudHMuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIFJlbW92ZVBhcnRpY2lwYW50c09wdGlvbnMsXG4gIFJlbW92ZVBhcnRpY2lwYW50c1R5cGUsXG59IGZyb20gJy4uL21ldGhvZHMvcGFydGljaXBhbnRzLW1ldGhvZHMvcmVtb3ZlLXBhcnRpY2lwYW50cy5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgSGFuZGxlQ3JlYXRlUG9sbE9wdGlvbnMsXG4gIEhhbmRsZUNyZWF0ZVBvbGxUeXBlLFxufSBmcm9tICcuLi9tZXRob2RzL3BvbGxzLW1ldGhvZHMvaGFuZGxlLWNyZWF0ZS1wb2xsLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBIYW5kbGVFbmRQb2xsT3B0aW9ucyxcbiAgSGFuZGxlRW5kUG9sbFR5cGUsXG59IGZyb20gJy4uL21ldGhvZHMvcG9sbHMtbWV0aG9kcy9oYW5kbGUtZW5kLXBvbGwuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIEhhbmRsZVZvdGVQb2xsT3B0aW9ucyxcbiAgSGFuZGxlVm90ZVBvbGxUeXBlLFxufSBmcm9tICcuLi9tZXRob2RzL3BvbGxzLW1ldGhvZHMvaGFuZGxlLXZvdGUtcG9sbC5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgTGF1bmNoUG9sbE9wdGlvbnMsXG4gIExhdW5jaFBvbGxUeXBlLFxufSBmcm9tICcuLi9tZXRob2RzL3BvbGxzLW1ldGhvZHMvbGF1bmNoLXBvbGwuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIFBvbGxVcGRhdGVkT3B0aW9ucyxcbiAgUG9sbFVwZGF0ZWRUeXBlLFxufSBmcm9tICcuLi9tZXRob2RzL3BvbGxzLW1ldGhvZHMvcG9sbC11cGRhdGVkLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBDaGVja1BhdXNlU3RhdGVPcHRpb25zLFxuICBDaGVja1BhdXNlU3RhdGVUeXBlLFxufSBmcm9tICcuLi9tZXRob2RzL3JlY29yZGluZy1tZXRob2RzL2NoZWNrLXBhdXNlLXN0YXRlLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBDaGVja1Jlc3VtZVN0YXRlT3B0aW9ucyxcbiAgQ2hlY2tSZXN1bWVTdGF0ZVR5cGUsXG59IGZyb20gJy4uL21ldGhvZHMvcmVjb3JkaW5nLW1ldGhvZHMvY2hlY2stcmVzdW1lLXN0YXRlLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBDb25maXJtUmVjb3JkaW5nT3B0aW9ucyxcbiAgQ29uZmlybVJlY29yZGluZ1R5cGUsXG4gIENvbmZpcm1SZWNvcmRpbmdQYXJhbWV0ZXJzLFxufSBmcm9tICcuLi9tZXRob2RzL3JlY29yZGluZy1tZXRob2RzL2NvbmZpcm0tcmVjb3JkaW5nLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBMYXVuY2hSZWNvcmRpbmdPcHRpb25zLFxuICBMYXVuY2hSZWNvcmRpbmdUeXBlLFxufSBmcm9tICcuLi9tZXRob2RzL3JlY29yZGluZy1tZXRob2RzL2xhdW5jaC1yZWNvcmRpbmcuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIFJlY29yZFBhdXNlVGltZXJPcHRpb25zLFxuICBSZWNvcmRQYXVzZVRpbWVyVHlwZSxcbn0gZnJvbSAnLi4vbWV0aG9kcy9yZWNvcmRpbmctbWV0aG9kcy9yZWNvcmQtcGF1c2UtdGltZXIuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIFJlY29yZFJlc3VtZVRpbWVyT3B0aW9ucyxcbiAgUmVjb3JkUmVzdW1lVGltZXJUeXBlLFxufSBmcm9tICcuLi9tZXRob2RzL3JlY29yZGluZy1tZXRob2RzL3JlY29yZC1yZXN1bWUtdGltZXIuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIFJlY29yZFN0YXJ0VGltZXJPcHRpb25zLFxuICBSZWNvcmRTdGFydFRpbWVyVHlwZSxcbn0gZnJvbSAnLi4vbWV0aG9kcy9yZWNvcmRpbmctbWV0aG9kcy9yZWNvcmQtc3RhcnQtdGltZXIuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIFJlY29yZFVwZGF0ZVRpbWVyT3B0aW9ucyxcbiAgUmVjb3JkVXBkYXRlVGltZXJUeXBlLFxufSBmcm9tICcuLi9tZXRob2RzL3JlY29yZGluZy1tZXRob2RzL3JlY29yZC11cGRhdGUtdGltZXIuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIFN0YXJ0UmVjb3JkaW5nT3B0aW9ucyxcbiAgU3RhcnRSZWNvcmRpbmdUeXBlLFxuICBTdGFydFJlY29yZGluZ1BhcmFtZXRlcnMsXG59IGZyb20gJy4uL21ldGhvZHMvcmVjb3JkaW5nLW1ldGhvZHMvc3RhcnQtcmVjb3JkaW5nLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBTdG9wUmVjb3JkaW5nT3B0aW9ucyxcbiAgU3RvcFJlY29yZGluZ1R5cGUsXG4gIFN0b3BSZWNvcmRpbmdQYXJhbWV0ZXJzLFxufSBmcm9tICcuLi9tZXRob2RzL3JlY29yZGluZy1tZXRob2RzL3N0b3AtcmVjb3JkaW5nLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBVcGRhdGVSZWNvcmRpbmdPcHRpb25zLFxuICBVcGRhdGVSZWNvcmRpbmdUeXBlLFxuICBVcGRhdGVSZWNvcmRpbmdQYXJhbWV0ZXJzLFxufSBmcm9tICcuLi9tZXRob2RzL3JlY29yZGluZy1tZXRob2RzL3VwZGF0ZS1yZWNvcmRpbmcuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIExhdW5jaFJlcXVlc3RzT3B0aW9ucyxcbiAgTGF1bmNoUmVxdWVzdHNUeXBlLFxufSBmcm9tICcuLi9tZXRob2RzL3JlcXVlc3RzLW1ldGhvZHMvbGF1bmNoLXJlcXVlc3RzLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBSZXNwb25kVG9SZXF1ZXN0c09wdGlvbnMsXG4gIFJlc3BvbmRUb1JlcXVlc3RzVHlwZSxcbn0gZnJvbSAnLi4vbWV0aG9kcy9yZXF1ZXN0cy1tZXRob2RzL3Jlc3BvbmQtdG8tcmVxdWVzdHMuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIExhdW5jaFNldHRpbmdzT3B0aW9ucyxcbiAgTGF1bmNoU2V0dGluZ3NUeXBlLFxufSBmcm9tICcuLi9tZXRob2RzL3NldHRpbmdzLW1ldGhvZHMvbGF1bmNoLXNldHRpbmdzLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBNb2RpZnlTZXR0aW5nc09wdGlvbnMsXG4gIE1vZGlmeVNldHRpbmdzVHlwZSxcbn0gZnJvbSAnLi4vbWV0aG9kcy9zZXR0aW5ncy1tZXRob2RzL21vZGlmeS1zZXR0aW5ncy5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgQ2xpY2tBdWRpb09wdGlvbnMsXG4gIENsaWNrQXVkaW9UeXBlLFxuICBDbGlja0F1ZGlvUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vbWV0aG9kcy9zdHJlYW0tbWV0aG9kcy9jbGljay1hdWRpby5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHsgQ2xpY2tDaGF0T3B0aW9ucywgQ2xpY2tDaGF0VHlwZSB9IGZyb20gJy4uL21ldGhvZHMvc3RyZWFtLW1ldGhvZHMvY2xpY2stY2hhdC5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgQ2xpY2tTY3JlZW5TaGFyZU9wdGlvbnMsXG4gIENsaWNrU2NyZWVuU2hhcmVUeXBlLFxuICBDbGlja1NjcmVlblNoYXJlUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vbWV0aG9kcy9zdHJlYW0tbWV0aG9kcy9jbGljay1zY3JlZW4tc2hhcmUuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIENsaWNrVmlkZW9PcHRpb25zLFxuICBDbGlja1ZpZGVvVHlwZSxcbiAgQ2xpY2tWaWRlb1BhcmFtZXRlcnMsXG59IGZyb20gJy4uL21ldGhvZHMvc3RyZWFtLW1ldGhvZHMvY2xpY2stdmlkZW8uc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIFN3aXRjaEF1ZGlvT3B0aW9ucyxcbiAgU3dpdGNoQXVkaW9UeXBlLFxuICBTd2l0Y2hBdWRpb1BhcmFtZXRlcnMsXG59IGZyb20gJy4uL21ldGhvZHMvc3RyZWFtLW1ldGhvZHMvc3dpdGNoLWF1ZGlvLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBTd2l0Y2hWaWRlb09wdGlvbnMsXG4gIFN3aXRjaFZpZGVvVHlwZSxcbiAgU3dpdGNoVmlkZW9QYXJhbWV0ZXJzLFxufSBmcm9tICcuLi9tZXRob2RzL3N0cmVhbS1tZXRob2RzL3N3aXRjaC12aWRlby5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgU3dpdGNoVmlkZW9BbHRPcHRpb25zLFxuICBTd2l0Y2hWaWRlb0FsdFR5cGUsXG59IGZyb20gJy4uL21ldGhvZHMvc3RyZWFtLW1ldGhvZHMvc3dpdGNoLXZpZGVvLWFsdC5zZXJ2aWNlJztcblxuZXhwb3J0IHR5cGUge1xuICBTdGFydE1lZXRpbmdQcm9ncmVzc1RpbWVyT3B0aW9ucyxcbiAgU3RhcnRNZWV0aW5nUHJvZ3Jlc3NUaW1lclR5cGUsXG4gIFN0YXJ0TWVldGluZ1Byb2dyZXNzVGltZXJQYXJhbWV0ZXJzLFxufSBmcm9tICcuLi9tZXRob2RzL3V0aWxzL21lZXRpbmctdGltZXIvc3RhcnQtbWVldGluZy1wcm9ncmVzcy10aW1lci5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgTWluaUF1ZGlvUGxheWVyT3B0aW9ucyxcbiAgTWluaUF1ZGlvUGxheWVyVHlwZSxcbiAgTWluaUF1ZGlvUGxheWVyUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vbWV0aG9kcy91dGlscy9taW5pLWF1ZGlvLXBsYXllci9taW5pLWF1ZGlvLXBsYXllci5jb21wb25lbnQnO1xuZXhwb3J0IHR5cGUgeyBGb3JtYXROdW1iZXJPcHRpb25zLCBGb3JtYXROdW1iZXJUeXBlIH0gZnJvbSAnLi4vbWV0aG9kcy91dGlscy9mb3JtYXQtbnVtYmVyLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBHZW5lcmF0ZVJhbmRvbU1lc3NhZ2VzT3B0aW9ucyxcbiAgR2VuZXJhdGVSYW5kb21NZXNzYWdlc1R5cGUsXG59IGZyb20gJy4uL21ldGhvZHMvdXRpbHMvZ2VuZXJhdGUtcmFuZG9tLW1lc3NhZ2VzLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBHZW5lcmF0ZVJhbmRvbVBhcnRpY2lwYW50c09wdGlvbnMsXG4gIEdlbmVyYXRlUmFuZG9tUGFydGljaXBhbnRzVHlwZSxcbn0gZnJvbSAnLi4vbWV0aG9kcy91dGlscy9nZW5lcmF0ZS1yYW5kb20tcGFydGljaXBhbnRzLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBHZW5lcmF0ZVJhbmRvbVBvbGxzT3B0aW9ucyxcbiAgR2VuZXJhdGVSYW5kb21Qb2xsc1R5cGUsXG59IGZyb20gJy4uL21ldGhvZHMvdXRpbHMvZ2VuZXJhdGUtcmFuZG9tLXBvbGxzLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBHZW5lcmF0ZVJhbmRvbVJlcXVlc3RMaXN0T3B0aW9ucyxcbiAgR2VuZXJhdGVSYW5kb21SZXF1ZXN0TGlzdFR5cGUsXG59IGZyb20gJy4uL21ldGhvZHMvdXRpbHMvZ2VuZXJhdGUtcmFuZG9tLXJlcXVlc3QtbGlzdC5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHsgR2VuZXJhdGVSYW5kb21XYWl0aW5nUm9vbUxpc3RUeXBlIH0gZnJvbSAnLi4vbWV0aG9kcy91dGlscy9nZW5lcmF0ZS1yYW5kb20td2FpdGluZy1yb29tLWxpc3Quc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIEdldE1vZGFsUG9zaXRpb25PcHRpb25zLFxuICBHZXRNb2RhbFBvc2l0aW9uVHlwZSxcbn0gZnJvbSAnLi4vbWV0aG9kcy91dGlscy9nZXQtbW9kYWwtcG9zaXRpb24udXRpbCc7XG5leHBvcnQgdHlwZSB7XG4gIEdldE92ZXJsYXlQb3NpdGlvbk9wdGlvbnMsXG4gIEdldE92ZXJsYXlQb3NpdGlvblR5cGUsXG59IGZyb20gJy4uL21ldGhvZHMvdXRpbHMvZ2V0LW92ZXJsYXktcG9zaXRpb24udXRpbCc7XG5leHBvcnQgdHlwZSB7IFNsZWVwT3B0aW9ucywgU2xlZXBUeXBlIH0gZnJvbSAnLi4vbWV0aG9kcy91dGlscy9zbGVlcC51dGlsJztcbmV4cG9ydCB0eXBlIHtcbiAgVmFsaWRhdGVBbHBoYW51bWVyaWNPcHRpb25zLFxuICBWYWxpZGF0ZUFscGhhbnVtZXJpY1R5cGUsXG59IGZyb20gJy4uL21ldGhvZHMvdXRpbHMvdmFsaWRhdGUtYWxwaGFudW1lcmljLnNlcnZpY2UnO1xuXG5leHBvcnQgdHlwZSB7XG4gIExhdW5jaFdhaXRpbmdPcHRpb25zLFxuICBMYXVuY2hXYWl0aW5nVHlwZSxcbn0gZnJvbSAnLi4vbWV0aG9kcy93YWl0aW5nLW1ldGhvZHMvbGF1bmNoLXdhaXRpbmcuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIFJlc3BvbmRUb1dhaXRpbmdPcHRpb25zLFxuICBSZXNwb25kVG9XYWl0aW5nVHlwZSxcbn0gZnJvbSAnLi4vbWV0aG9kcy93YWl0aW5nLW1ldGhvZHMvcmVzcG9uZC10by13YWl0aW5nLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBMYXVuY2hDb25maWd1cmVXaGl0ZWJvYXJkT3B0aW9ucyxcbiAgTGF1bmNoQ29uZmlndXJlV2hpdGVib2FyZFR5cGUsXG59IGZyb20gJy4uL21ldGhvZHMvd2hpdGVib2FyZC1tZXRob2RzL2xhdW5jaC1jb25maWd1cmUtd2hpdGVib2FyZC5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgQ2FwdHVyZUNhbnZhc1N0cmVhbU9wdGlvbnMsXG4gIENhcHR1cmVDYW52YXNTdHJlYW1UeXBlLFxuICBDYXB0dXJlQ2FudmFzU3RyZWFtUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vbWV0aG9kcy93aGl0ZWJvYXJkLW1ldGhvZHMvY2FwdHVyZS1jYW52YXMtc3RyZWFtLnNlcnZpY2UnO1xuXG5leHBvcnQgdHlwZSB7XG4gIENyZWF0ZURldmljZUNsaWVudE9wdGlvbnMsXG4gIENyZWF0ZURldmljZUNsaWVudFR5cGUsXG59IGZyb20gJy4uL3Byb2R1Y2VyLWNsaWVudC9wcm9kdWNlci1jbGllbnQtZW1pdHMvY3JlYXRlLWRldmljZS1jbGllbnQuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIEpvaW5Sb29tQ2xpZW50T3B0aW9ucyxcbiAgSm9pblJvb21DbGllbnRUeXBlLFxufSBmcm9tICcuLi9wcm9kdWNlci1jbGllbnQvcHJvZHVjZXItY2xpZW50LWVtaXRzL2pvaW4tcm9vbS1jbGllbnQuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIFVwZGF0ZVJvb21QYXJhbWV0ZXJzQ2xpZW50T3B0aW9ucyxcbiAgVXBkYXRlUm9vbVBhcmFtZXRlcnNDbGllbnRUeXBlLFxuICBVcGRhdGVSb29tUGFyYW1ldGVyc0NsaWVudFBhcmFtZXRlcnMsXG59IGZyb20gJy4uL3Byb2R1Y2VyLWNsaWVudC9wcm9kdWNlci1jbGllbnQtZW1pdHMvdXBkYXRlLXJvb20tcGFyYW1ldGVycy1jbGllbnQuc2VydmljZSc7XG5cbmV4cG9ydCB0eXBlIHtcbiAgSm9pbkNvblJvb21PcHRpb25zLFxuICBKb2luQ29uUm9vbVR5cGUsXG59IGZyb20gJy4uL3Byb2R1Y2Vycy9wcm9kdWNlci1lbWl0cy9qb2luLWNvbi1yb29tLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUgeyBKb2luUm9vbU9wdGlvbnMsIEpvaW5Sb29tVHlwZSB9IGZyb20gJy4uL3Byb2R1Y2Vycy9wcm9kdWNlci1lbWl0cy9qb2luLXJvb20uc2VydmljZSc7XG5cbmV4cG9ydCB0eXBlIHtcbiAgQWxsTWVtYmVyc09wdGlvbnMsXG4gIEFsbE1lbWJlcnNUeXBlLFxuICBBbGxNZW1iZXJzUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vcHJvZHVjZXJzL3NvY2tldC1yZWNlaXZlLW1ldGhvZHMvYWxsLW1lbWJlcnMuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIEFsbE1lbWJlcnNSZXN0T3B0aW9ucyxcbiAgQWxsTWVtYmVyc1Jlc3RUeXBlLFxuICBBbGxNZW1iZXJzUmVzdFBhcmFtZXRlcnMsXG59IGZyb20gJy4uL3Byb2R1Y2Vycy9zb2NrZXQtcmVjZWl2ZS1tZXRob2RzL2FsbC1tZW1iZXJzLXJlc3Quc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIEFsbFdhaXRpbmdSb29tTWVtYmVyc09wdGlvbnMsXG4gIEFsbFdhaXRpbmdSb29tTWVtYmVyc1R5cGUsXG59IGZyb20gJy4uL3Byb2R1Y2Vycy9zb2NrZXQtcmVjZWl2ZS1tZXRob2RzL2FsbC13YWl0aW5nLXJvb20tbWVtYmVycy5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgQmFuUGFydGljaXBhbnRPcHRpb25zLFxuICBCYW5QYXJ0aWNpcGFudFR5cGUsXG4gIEJhblBhcnRpY2lwYW50UGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vcHJvZHVjZXJzL3NvY2tldC1yZWNlaXZlLW1ldGhvZHMvYmFuLXBhcnRpY2lwYW50LnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBDb250cm9sTWVkaWFIb3N0T3B0aW9ucyxcbiAgQ29udHJvbE1lZGlhSG9zdFR5cGUsXG4gIENvbnRyb2xNZWRpYUhvc3RQYXJhbWV0ZXJzLFxufSBmcm9tICcuLi9wcm9kdWNlcnMvc29ja2V0LXJlY2VpdmUtbWV0aG9kcy9jb250cm9sLW1lZGlhLWhvc3Quc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIERpc2Nvbm5lY3RPcHRpb25zLFxuICBEaXNjb25uZWN0VHlwZSxcbn0gZnJvbSAnLi4vcHJvZHVjZXJzL3NvY2tldC1yZWNlaXZlLW1ldGhvZHMvZGlzY29ubmVjdC5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgRGlzY29ubmVjdFVzZXJTZWxmT3B0aW9ucyxcbiAgRGlzY29ubmVjdFVzZXJTZWxmVHlwZSxcbn0gZnJvbSAnLi4vcHJvZHVjZXJzL3NvY2tldC1yZWNlaXZlLW1ldGhvZHMvZGlzY29ubmVjdC11c2VyLXNlbGYuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIEdldERvbWFpbnNPcHRpb25zLFxuICBHZXREb21haW5zVHlwZSxcbiAgR2V0RG9tYWluc1BhcmFtZXRlcnMsXG59IGZyb20gJy4uL3Byb2R1Y2Vycy9zb2NrZXQtcmVjZWl2ZS1tZXRob2RzL2dldC1kb21haW5zLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBIb3N0UmVxdWVzdFJlc3BvbnNlT3B0aW9ucyxcbiAgSG9zdFJlcXVlc3RSZXNwb25zZVR5cGUsXG59IGZyb20gJy4uL3Byb2R1Y2Vycy9zb2NrZXQtcmVjZWl2ZS1tZXRob2RzL2hvc3QtcmVxdWVzdC1yZXNwb25zZS5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgTWVldGluZ0VuZGVkT3B0aW9ucyxcbiAgTWVldGluZ0VuZGVkVHlwZSxcbn0gZnJvbSAnLi4vcHJvZHVjZXJzL3NvY2tldC1yZWNlaXZlLW1ldGhvZHMvbWVldGluZy1lbmRlZC5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgTWVldGluZ1N0aWxsVGhlcmVPcHRpb25zLFxuICBNZWV0aW5nU3RpbGxUaGVyZVR5cGUsXG59IGZyb20gJy4uL3Byb2R1Y2Vycy9zb2NrZXQtcmVjZWl2ZS1tZXRob2RzL21lZXRpbmctc3RpbGwtdGhlcmUuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIE1lZXRpbmdUaW1lUmVtYWluaW5nT3B0aW9ucyxcbiAgTWVldGluZ1RpbWVSZW1haW5pbmdUeXBlLFxufSBmcm9tICcuLi9wcm9kdWNlcnMvc29ja2V0LXJlY2VpdmUtbWV0aG9kcy9tZWV0aW5nLXRpbWUtcmVtYWluaW5nLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBQYXJ0aWNpcGFudFJlcXVlc3RlZE9wdGlvbnMsXG4gIFBhcnRpY2lwYW50UmVxdWVzdGVkVHlwZSxcbn0gZnJvbSAnLi4vcHJvZHVjZXJzL3NvY2tldC1yZWNlaXZlLW1ldGhvZHMvcGFydGljaXBhbnQtcmVxdWVzdGVkLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBQZXJzb25Kb2luZWRPcHRpb25zLFxuICBQZXJzb25Kb2luZWRUeXBlLFxufSBmcm9tICcuLi9wcm9kdWNlcnMvc29ja2V0LXJlY2VpdmUtbWV0aG9kcy9wZXJzb24tam9pbmVkLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBQcm9kdWNlck1lZGlhQ2xvc2VkT3B0aW9ucyxcbiAgUHJvZHVjZXJNZWRpYUNsb3NlZFR5cGUsXG4gIFByb2R1Y2VyTWVkaWFDbG9zZWRQYXJhbWV0ZXJzLFxufSBmcm9tICcuLi9wcm9kdWNlcnMvc29ja2V0LXJlY2VpdmUtbWV0aG9kcy9wcm9kdWNlci1tZWRpYS1jbG9zZWQuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIFByb2R1Y2VyTWVkaWFQYXVzZWRPcHRpb25zLFxuICBQcm9kdWNlck1lZGlhUGF1c2VkVHlwZSxcbiAgUHJvZHVjZXJNZWRpYVBhdXNlZFBhcmFtZXRlcnMsXG59IGZyb20gJy4uL3Byb2R1Y2Vycy9zb2NrZXQtcmVjZWl2ZS1tZXRob2RzL3Byb2R1Y2VyLW1lZGlhLXBhdXNlZC5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgUHJvZHVjZXJNZWRpYVJlc3VtZWRPcHRpb25zLFxuICBQcm9kdWNlck1lZGlhUmVzdW1lZFR5cGUsXG4gIFByb2R1Y2VyTWVkaWFSZXN1bWVkUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vcHJvZHVjZXJzL3NvY2tldC1yZWNlaXZlLW1ldGhvZHMvcHJvZHVjZXItbWVkaWEtcmVzdW1lZC5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgUmVJbml0aWF0ZVJlY29yZGluZ09wdGlvbnMsXG4gIFJlSW5pdGlhdGVSZWNvcmRpbmdUeXBlLFxufSBmcm9tICcuLi9wcm9kdWNlcnMvc29ja2V0LXJlY2VpdmUtbWV0aG9kcy9yZS1pbml0aWF0ZS1yZWNvcmRpbmcuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIFJlY2VpdmVNZXNzYWdlT3B0aW9ucyxcbiAgUmVjZWl2ZU1lc3NhZ2VUeXBlLFxufSBmcm9tICcuLi9wcm9kdWNlcnMvc29ja2V0LXJlY2VpdmUtbWV0aG9kcy9yZWNlaXZlLW1lc3NhZ2Uuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIFJlY29yZGluZ05vdGljZU9wdGlvbnMsXG4gIFJlY29yZGluZ05vdGljZVR5cGUsXG4gIFJlY29yZGluZ05vdGljZVBhcmFtZXRlcnMsXG59IGZyb20gJy4uL3Byb2R1Y2Vycy9zb2NrZXQtcmVjZWl2ZS1tZXRob2RzL3JlY29yZGluZy1ub3RpY2Uuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIFJvb21SZWNvcmRQYXJhbXNPcHRpb25zLFxuICBSb29tUmVjb3JkUGFyYW1zVHlwZSxcbiAgUm9vbVJlY29yZFBhcmFtc1BhcmFtZXRlcnMsXG4gIFJlY29yZFBhcmFtcyxcbn0gZnJvbSAnLi4vcHJvZHVjZXJzL3NvY2tldC1yZWNlaXZlLW1ldGhvZHMvcm9vbS1yZWNvcmQtcGFyYW1zLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBTY3JlZW5Qcm9kdWNlcklkT3B0aW9ucyxcbiAgU2NyZWVuUHJvZHVjZXJJZFR5cGUsXG59IGZyb20gJy4uL3Byb2R1Y2Vycy9zb2NrZXQtcmVjZWl2ZS1tZXRob2RzL3NjcmVlbi1wcm9kdWNlci1pZC5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgU3RhcnRSZWNvcmRzT3B0aW9ucyxcbiAgU3RhcnRSZWNvcmRzVHlwZSxcbn0gZnJvbSAnLi4vcHJvZHVjZXJzL3NvY2tldC1yZWNlaXZlLW1ldGhvZHMvc3RhcnQtcmVjb3Jkcy5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgU3RvcHBlZFJlY29yZGluZ09wdGlvbnMsXG4gIFN0b3BwZWRSZWNvcmRpbmdUeXBlLFxufSBmcm9tICcuLi9wcm9kdWNlcnMvc29ja2V0LXJlY2VpdmUtbWV0aG9kcy9zdG9wcGVkLXJlY29yZGluZy5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgVGltZUxlZnRSZWNvcmRpbmdPcHRpb25zLFxuICBUaW1lTGVmdFJlY29yZGluZ1R5cGUsXG59IGZyb20gJy4uL3Byb2R1Y2Vycy9zb2NrZXQtcmVjZWl2ZS1tZXRob2RzL3RpbWUtbGVmdC1yZWNvcmRpbmcuc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIFVwZGF0ZUNvbnN1bWluZ0RvbWFpbnNPcHRpb25zLFxuICBVcGRhdGVDb25zdW1pbmdEb21haW5zVHlwZSxcbiAgVXBkYXRlQ29uc3VtaW5nRG9tYWluc1BhcmFtZXRlcnMsXG59IGZyb20gJy4uL3Byb2R1Y2Vycy9zb2NrZXQtcmVjZWl2ZS1tZXRob2RzL3VwZGF0ZS1jb25zdW1pbmctZG9tYWlucy5zZXJ2aWNlJztcbmV4cG9ydCB0eXBlIHtcbiAgVXBkYXRlTWVkaWFTZXR0aW5nc09wdGlvbnMsXG4gIFVwZGF0ZU1lZGlhU2V0dGluZ3NUeXBlLFxufSBmcm9tICcuLi9wcm9kdWNlcnMvc29ja2V0LXJlY2VpdmUtbWV0aG9kcy91cGRhdGUtbWVkaWEtc2V0dGluZ3Muc2VydmljZSc7XG5leHBvcnQgdHlwZSB7XG4gIFVwZGF0ZWRDb0hvc3RPcHRpb25zLFxuICBVcGRhdGVkQ29Ib3N0VHlwZSxcbn0gZnJvbSAnLi4vcHJvZHVjZXJzL3NvY2tldC1yZWNlaXZlLW1ldGhvZHMvdXBkYXRlZC1jby1ob3N0LnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBVc2VyV2FpdGluZ09wdGlvbnMsXG4gIFVzZXJXYWl0aW5nVHlwZSxcbn0gZnJvbSAnLi4vcHJvZHVjZXJzL3NvY2tldC1yZWNlaXZlLW1ldGhvZHMvdXNlci13YWl0aW5nLnNlcnZpY2UnO1xuZXhwb3J0IHR5cGUge1xuICBDb25uZWN0U29ja2V0T3B0aW9ucyxcbiAgQ29ubmVjdFNvY2tldFR5cGUsXG4gIERpc2Nvbm5lY3RTb2NrZXRUeXBlLFxuICBEaXNjb25uZWN0U29ja2V0T3B0aW9ucyxcbn0gZnJvbSAnLi4vc29ja2V0cy9zb2NrZXQtbWFuYWdlci5zZXJ2aWNlJztcblxuZXhwb3J0IHR5cGUge1xuICBCYWNrZ3JvdW5kTW9kYWxPcHRpb25zLFxuICBCYWNrZ3JvdW5kTW9kYWxUeXBlLFxuICBCYWNrZ3JvdW5kTW9kYWxQYXJhbWV0ZXJzLFxufSBmcm9tICcuLi9jb21wb25lbnRzL2JhY2tncm91bmQtY29tcG9uZW50cy9iYWNrZ3JvdW5kLW1vZGFsL2JhY2tncm91bmQtbW9kYWwuY29tcG9uZW50JztcbmV4cG9ydCB0eXBlIHtcbiAgQnJlYWtvdXRSb29tc01vZGFsT3B0aW9ucyxcbiAgQnJlYWtvdXRSb29tc01vZGFsVHlwZSxcbiAgQnJlYWtvdXRSb29tc01vZGFsUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vY29tcG9uZW50cy9icmVha291dC1jb21wb25lbnRzL2JyZWFrb3V0LXJvb21zLW1vZGFsLmNvbXBvbmVudCc7XG5leHBvcnQgdHlwZSB7XG4gIENvSG9zdE1vZGFsT3B0aW9ucyxcbiAgQ29Ib3N0TW9kYWxUeXBlLFxufSBmcm9tICcuLi9jb21wb25lbnRzL2NvLWhvc3QtY29tcG9uZW50cy9jby1ob3N0LW1vZGFsL2NvLWhvc3QtbW9kYWwuY29tcG9uZW50JztcbmV4cG9ydCB0eXBlIHtcbiAgQWxlcnRDb21wb25lbnRPcHRpb25zLFxuICBBbGVydENvbXBvbmVudFR5cGUsXG59IGZyb20gJy4uL2NvbXBvbmVudHMvZGlzcGxheS1jb21wb25lbnRzL2FsZXJ0LWNvbXBvbmVudC9hbGVydC5jb21wb25lbnQuY29tcG9uZW50JztcbmV4cG9ydCB0eXBlIHtcbiAgQXVkaW9DYXJkT3B0aW9ucyxcbiAgQXVkaW9DYXJkVHlwZSxcbiAgQXVkaW9DYXJkUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vY29tcG9uZW50cy9kaXNwbGF5LWNvbXBvbmVudHMvYXVkaW8tY2FyZC9hdWRpby1jYXJkLmNvbXBvbmVudCc7XG5leHBvcnQgdHlwZSB7XG4gIEF1ZGlvR3JpZE9wdGlvbnMsXG4gIEF1ZGlvR3JpZFR5cGUsXG59IGZyb20gJy4uL2NvbXBvbmVudHMvZGlzcGxheS1jb21wb25lbnRzL2F1ZGlvLWdyaWQvYXVkaW8tZ3JpZC5jb21wb25lbnQnO1xuZXhwb3J0IHR5cGUge1xuICBDYXJkVmlkZW9EaXNwbGF5T3B0aW9ucyxcbiAgQ2FyZFZpZGVvRGlzcGxheVR5cGUsXG59IGZyb20gJy4uL2NvbXBvbmVudHMvZGlzcGxheS1jb21wb25lbnRzL2NhcmQtdmlkZW8tZGlzcGxheS9jYXJkLXZpZGVvLWRpc3BsYXkuY29tcG9uZW50JztcbmV4cG9ydCB0eXBlIHtcbiAgQ29udHJvbEJ1dHRvbnNDb21wb25lbnRPcHRpb25zLFxuICBDb250cm9sQnV0dG9uc0NvbXBvbmVudFR5cGUsXG4gIEJ1dHRvbixcbn0gZnJvbSAnLi4vY29tcG9uZW50cy9kaXNwbGF5LWNvbXBvbmVudHMvY29udHJvbC1idXR0b25zLWNvbXBvbmVudC9jb250cm9sLWJ1dHRvbnMtY29tcG9uZW50LmNvbXBvbmVudCc7XG5leHBvcnQgdHlwZSB7XG4gIENvbnRyb2xCdXR0b25zQWx0Q29tcG9uZW50T3B0aW9ucyxcbiAgQ29udHJvbEJ1dHRvbnNBbHRDb21wb25lbnRUeXBlLFxuICBBbHRCdXR0b24sXG59IGZyb20gJy4uL2NvbXBvbmVudHMvZGlzcGxheS1jb21wb25lbnRzL2NvbnRyb2wtYnV0dG9ucy1hbHQtY29tcG9uZW50L2NvbnRyb2wtYnV0dG9ucy1hbHQtY29tcG9uZW50LmNvbXBvbmVudCc7XG5leHBvcnQgdHlwZSB7XG4gIENvbnRyb2xCdXR0b25zQ29tcG9uZW50VG91Y2hPcHRpb25zLFxuICBDb250cm9sQnV0dG9uc0NvbXBvbmVudFRvdWNoVHlwZSxcbiAgQnV0dG9uVG91Y2gsXG59IGZyb20gJy4uL2NvbXBvbmVudHMvZGlzcGxheS1jb21wb25lbnRzL2NvbnRyb2wtYnV0dG9ucy1jb21wb25lbnQtdG91Y2gvY29udHJvbC1idXR0b25zLWNvbXBvbmVudC10b3VjaC5jb21wb25lbnQnO1xuZXhwb3J0IHR5cGUge1xuICBGbGV4aWJsZUdyaWRPcHRpb25zLFxuICBGbGV4aWJsZUdyaWRUeXBlLFxufSBmcm9tICcuLi9jb21wb25lbnRzL2Rpc3BsYXktY29tcG9uZW50cy9mbGV4aWJsZS1ncmlkL2ZsZXhpYmxlLWdyaWQuY29tcG9uZW50JztcbmV4cG9ydCB0eXBlIHtcbiAgRmxleGlibGVWaWRlb09wdGlvbnMsXG4gIEZsZXhpYmxlVmlkZW9UeXBlLFxufSBmcm9tICcuLi9jb21wb25lbnRzL2Rpc3BsYXktY29tcG9uZW50cy9mbGV4aWJsZS12aWRlby9mbGV4aWJsZS12aWRlby5jb21wb25lbnQnO1xuZXhwb3J0IHR5cGUge1xuICBMb2FkaW5nTW9kYWxPcHRpb25zLFxuICBMb2FkaW5nTW9kYWxUeXBlLFxufSBmcm9tICcuLi9jb21wb25lbnRzL2Rpc3BsYXktY29tcG9uZW50cy9sb2FkaW5nLW1vZGFsL2xvYWRpbmctbW9kYWwuY29tcG9uZW50JztcbmV4cG9ydCB0eXBlIHtcbiAgTWFpbkFzcGVjdENvbXBvbmVudE9wdGlvbnMsXG4gIE1haW5Bc3BlY3RDb21wb25lbnRUeXBlLFxufSBmcm9tICcuLi9jb21wb25lbnRzL2Rpc3BsYXktY29tcG9uZW50cy9tYWluLWFzcGVjdC1jb21wb25lbnQvbWFpbi1hc3BlY3QtY29tcG9uZW50LmNvbXBvbmVudCc7XG5leHBvcnQgdHlwZSB7XG4gIE1haW5Db250YWluZXJDb21wb25lbnRPcHRpb25zLFxuICBNYWluQ29udGFpbmVyQ29tcG9uZW50VHlwZSxcbn0gZnJvbSAnLi4vY29tcG9uZW50cy9kaXNwbGF5LWNvbXBvbmVudHMvbWFpbi1jb250YWluZXItY29tcG9uZW50L21haW4tY29udGFpbmVyLWNvbXBvbmVudC5jb21wb25lbnQnO1xuZXhwb3J0IHR5cGUge1xuICBNYWluR3JpZENvbXBvbmVudE9wdGlvbnMsXG4gIE1haW5HcmlkQ29tcG9uZW50VHlwZSxcbn0gZnJvbSAnLi4vY29tcG9uZW50cy9kaXNwbGF5LWNvbXBvbmVudHMvbWFpbi1ncmlkLWNvbXBvbmVudC9tYWluLWdyaWQtY29tcG9uZW50LmNvbXBvbmVudCc7XG5leHBvcnQgdHlwZSB7XG4gIE1haW5TY3JlZW5Db21wb25lbnRPcHRpb25zLFxuICBNYWluU2NyZWVuQ29tcG9uZW50VHlwZSxcbn0gZnJvbSAnLi4vY29tcG9uZW50cy9kaXNwbGF5LWNvbXBvbmVudHMvbWFpbi1zY3JlZW4tY29tcG9uZW50L21haW4tc2NyZWVuLWNvbXBvbmVudC5jb21wb25lbnQnO1xuZXhwb3J0IHR5cGUge1xuICBNZWV0aW5nUHJvZ3Jlc3NUaW1lck9wdGlvbnMsXG4gIE1lZXRpbmdQcm9ncmVzc1RpbWVyVHlwZSxcbn0gZnJvbSAnLi4vY29tcG9uZW50cy9kaXNwbGF5LWNvbXBvbmVudHMvbWVldGluZy1wcm9ncmVzcy10aW1lci9tZWV0aW5nLXByb2dyZXNzLXRpbWVyLmNvbXBvbmVudCc7XG5leHBvcnQgdHlwZSB7XG4gIE1pbmlBdWRpb09wdGlvbnMsXG4gIE1pbmlBdWRpb1R5cGUsXG59IGZyb20gJy4uL2NvbXBvbmVudHMvZGlzcGxheS1jb21wb25lbnRzL21pbmktYXVkaW8vbWluaS1hdWRpby5jb21wb25lbnQnO1xuZXhwb3J0IHR5cGUge1xuICBNaW5pQ2FyZE9wdGlvbnMsXG4gIE1pbmlDYXJkVHlwZSxcbn0gZnJvbSAnLi4vY29tcG9uZW50cy9kaXNwbGF5LWNvbXBvbmVudHMvbWluaS1jYXJkL21pbmktY2FyZC5jb21wb25lbnQnO1xuZXhwb3J0IHR5cGUge1xuICBNaW5pQ2FyZEF1ZGlvT3B0aW9ucyxcbiAgTWluaUNhcmRBdWRpb1R5cGUsXG59IGZyb20gJy4uL2NvbXBvbmVudHMvZGlzcGxheS1jb21wb25lbnRzL21pbmktY2FyZC1hdWRpby9taW5pLWNhcmQtYXVkaW8uY29tcG9uZW50JztcbmV4cG9ydCB0eXBlIHtcbiAgT3RoZXJHcmlkQ29tcG9uZW50T3B0aW9ucyxcbiAgT3RoZXJHcmlkQ29tcG9uZW50VHlwZSxcbn0gZnJvbSAnLi4vY29tcG9uZW50cy9kaXNwbGF5LWNvbXBvbmVudHMvb3RoZXItZ3JpZC1jb21wb25lbnQvb3RoZXItZ3JpZC1jb21wb25lbnQuY29tcG9uZW50JztcbmV4cG9ydCB0eXBlIHtcbiAgUGFnaW5hdGlvbk9wdGlvbnMsXG4gIFBhZ2luYXRpb25UeXBlLFxufSBmcm9tICcuLi9jb21wb25lbnRzL2Rpc3BsYXktY29tcG9uZW50cy9wYWdpbmF0aW9uL3BhZ2luYXRpb24uY29tcG9uZW50JztcbmV4cG9ydCB0eXBlIHtcbiAgU3ViQXNwZWN0Q29tcG9uZW50T3B0aW9ucyxcbiAgU3ViQXNwZWN0Q29tcG9uZW50VHlwZSxcbn0gZnJvbSAnLi4vY29tcG9uZW50cy9kaXNwbGF5LWNvbXBvbmVudHMvc3ViLWFzcGVjdC1jb21wb25lbnQvc3ViLWFzcGVjdC1jb21wb25lbnQuY29tcG9uZW50JztcbmV4cG9ydCB0eXBlIHtcbiAgVmlkZW9DYXJkT3B0aW9ucyxcbiAgVmlkZW9DYXJkVHlwZSxcbiAgVmlkZW9DYXJkUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vY29tcG9uZW50cy9kaXNwbGF5LWNvbXBvbmVudHMvdmlkZW8tY2FyZC92aWRlby1jYXJkLmNvbXBvbmVudCc7XG5leHBvcnQgdHlwZSB7XG4gIERpc3BsYXlTZXR0aW5nc01vZGFsT3B0aW9ucyxcbiAgRGlzcGxheVNldHRpbmdzTW9kYWxUeXBlLFxuICBEaXNwbGF5U2V0dGluZ3NNb2RhbFBhcmFtZXRlcnMsXG59IGZyb20gJy4uL2NvbXBvbmVudHMvZGlzcGxheS1zZXR0aW5ncy1jb21wb25lbnRzL2Rpc3BsYXktc2V0dGluZ3MtbW9kYWwuY29tcG9uZW50JztcbmV4cG9ydCB0eXBlIHtcbiAgRXZlbnRTZXR0aW5nc01vZGFsT3B0aW9ucyxcbiAgRXZlbnRTZXR0aW5nc01vZGFsVHlwZSxcbn0gZnJvbSAnLi4vY29tcG9uZW50cy9ldmVudC1zZXR0aW5ncy1jb21wb25lbnRzL2V2ZW50LXNldHRpbmdzLW1vZGFsL2V2ZW50LXNldHRpbmdzLW1vZGFsLmNvbXBvbmVudCc7XG5leHBvcnQgdHlwZSB7XG4gIENvbmZpcm1FeGl0TW9kYWxPcHRpb25zLFxuICBDb25maXJtRXhpdE1vZGFsVHlwZSxcbn0gZnJvbSAnLi4vY29tcG9uZW50cy9leGl0LWNvbXBvbmVudHMvY29uZmlybS1leGl0LW1vZGFsL2NvbmZpcm0tZXhpdC1tb2RhbC5jb21wb25lbnQnO1xuZXhwb3J0IHR5cGUge1xuICBNZWRpYVNldHRpbmdzTW9kYWxPcHRpb25zLFxuICBNZWRpYVNldHRpbmdzTW9kYWxUeXBlLFxuICBNZWRpYVNldHRpbmdzTW9kYWxQYXJhbWV0ZXJzLFxufSBmcm9tICcuLi9jb21wb25lbnRzL21lZGlhLXNldHRpbmdzLWNvbXBvbmVudHMvbWVkaWEtc2V0dGluZ3MtbW9kYWwvbWVkaWEtc2V0dGluZ3MtbW9kYWwuY29tcG9uZW50JztcbmV4cG9ydCB0eXBlIHtcbiAgTWVudU1vZGFsT3B0aW9ucyxcbiAgTWVudU1vZGFsVHlwZSxcbn0gZnJvbSAnLi4vY29tcG9uZW50cy9tZW51LWNvbXBvbmVudHMvbWVudS1tb2RhbC9tZW51LW1vZGFsLmNvbXBvbmVudCc7XG5leHBvcnQgdHlwZSB7XG4gIE1lc3NhZ2VzTW9kYWxPcHRpb25zLFxuICBNZXNzYWdlc01vZGFsVHlwZSxcbn0gZnJvbSAnLi4vY29tcG9uZW50cy9tZXNzYWdlLWNvbXBvbmVudHMvbWVzc2FnZXMtbW9kYWwvbWVzc2FnZXMtbW9kYWwuY29tcG9uZW50JztcbmV4cG9ydCB0eXBlIHtcbiAgQ29uZmlybUhlcmVNb2RhbE9wdGlvbnMsXG4gIENvbmZpcm1IZXJlTW9kYWxUeXBlLFxufSBmcm9tICcuLi9jb21wb25lbnRzL21pc2MtY29tcG9uZW50cy9jb25maXJtLWhlcmUtbW9kYWwvY29uZmlybS1oZXJlLW1vZGFsLmNvbXBvbmVudCc7XG5leHBvcnQgdHlwZSB7XG4gIFByZUpvaW5QYWdlT3B0aW9ucyxcbiAgUHJlSm9pblBhZ2VUeXBlLFxuICBQcmVKb2luUGFnZVBhcmFtZXRlcnMsXG59IGZyb20gJy4uL2NvbXBvbmVudHMvbWlzYy1jb21wb25lbnRzL3ByZS1qb2luLXBhZ2UvcHJlLWpvaW4tcGFnZS5jb21wb25lbnQnO1xuZXhwb3J0IHR5cGUge1xuICBTaGFyZUV2ZW50TW9kYWxPcHRpb25zLFxuICBTaGFyZUV2ZW50TW9kYWxUeXBlLFxufSBmcm9tICcuLi9jb21wb25lbnRzL21pc2MtY29tcG9uZW50cy9zaGFyZS1ldmVudC1tb2RhbC9zaGFyZS1ldmVudC1tb2RhbC5jb21wb25lbnQnO1xuZXhwb3J0IHR5cGUge1xuICBXZWxjb21lUGFnZU9wdGlvbnMsXG4gIFdlbGNvbWVQYWdlVHlwZSxcbiAgV2VsY29tZVBhZ2VQYXJhbWV0ZXJzLFxufSBmcm9tICcuLi9jb21wb25lbnRzL21pc2MtY29tcG9uZW50cy93ZWxjb21lLXBhZ2Uvd2VsY29tZS1wYWdlLmNvbXBvbmVudCc7XG5leHBvcnQgdHlwZSB7XG4gIFBhcnRpY2lwYW50c01vZGFsT3B0aW9ucyxcbiAgUGFydGljaXBhbnRzTW9kYWxUeXBlLFxuICBQYXJ0aWNpcGFudHNNb2RhbFBhcmFtZXRlcnMsXG59IGZyb20gJy4uL2NvbXBvbmVudHMvcGFydGljaXBhbnRzLWNvbXBvbmVudHMvcGFydGljaXBhbnRzLW1vZGFsL3BhcnRpY2lwYW50cy1tb2RhbC5jb21wb25lbnQnO1xuZXhwb3J0IHR5cGUge1xuICBQb2xsTW9kYWxPcHRpb25zLFxuICBQb2xsTW9kYWxUeXBlLFxufSBmcm9tICcuLi9jb21wb25lbnRzL3BvbGxzLWNvbXBvbmVudHMvcG9sbC1tb2RhbC9wb2xsLW1vZGFsLmNvbXBvbmVudCc7XG5leHBvcnQgdHlwZSB7XG4gIFJlY29yZGluZ01vZGFsT3B0aW9ucyxcbiAgUmVjb3JkaW5nTW9kYWxUeXBlLFxuICBSZWNvcmRpbmdNb2RhbFBhcmFtZXRlcnMsXG59IGZyb20gJy4uL2NvbXBvbmVudHMvcmVjb3JkaW5nLWNvbXBvbmVudHMvcmVjb3JkaW5nLW1vZGFsL3JlY29yZGluZy1tb2RhbC5jb21wb25lbnQnO1xuZXhwb3J0IHR5cGUge1xuICBSZXF1ZXN0c01vZGFsT3B0aW9ucyxcbiAgUmVxdWVzdHNNb2RhbFR5cGUsXG59IGZyb20gJy4uL2NvbXBvbmVudHMvcmVxdWVzdHMtY29tcG9uZW50cy9yZXF1ZXN0cy1tb2RhbC9yZXF1ZXN0cy1tb2RhbC5jb21wb25lbnQnO1xuZXhwb3J0IHR5cGUge1xuICBTY3JlZW5ib2FyZE9wdGlvbnMsXG4gIFNjcmVlbmJvYXJkVHlwZSxcbiAgU2NyZWVuYm9hcmRQYXJhbWV0ZXJzLFxufSBmcm9tICcuLi9jb21wb25lbnRzL3NjcmVlbmJvYXJkLWNvbXBvbmVudHMvc2NyZWVuYm9hcmQvc2NyZWVuYm9hcmQuY29tcG9uZW50JztcbmV4cG9ydCB0eXBlIHtcbiAgU2NyZWVuYm9hcmRNb2RhbE9wdGlvbnMsXG4gIFNjcmVlbmJvYXJkTW9kYWxUeXBlLFxufSBmcm9tICcuLi9jb21wb25lbnRzL3NjcmVlbmJvYXJkLWNvbXBvbmVudHMvc2NyZWVuYm9hcmQtbW9kYWwvc2NyZWVuYm9hcmQtbW9kYWwuY29tcG9uZW50JztcbmV4cG9ydCB0eXBlIHtcbiAgV2FpdGluZ1Jvb21Nb2RhbE9wdGlvbnMsXG4gIFdhaXRpbmdSb29tTW9kYWxUeXBlLFxuICBXYWl0aW5nUm9vbU1vZGFsUGFyYW1ldGVycyxcbn0gZnJvbSAnLi4vY29tcG9uZW50cy93YWl0aW5nLWNvbXBvbmVudHMvd2FpdGluZy1yb29tLW1vZGFsLmNvbXBvbmVudCc7XG5leHBvcnQgdHlwZSB7XG4gIENvbmZpZ3VyZVdoaXRlYm9hcmRNb2RhbE9wdGlvbnMsXG4gIENvbmZpZ3VyZVdoaXRlYm9hcmRNb2RhbFR5cGUsXG59IGZyb20gJy4uL2NvbXBvbmVudHMvd2hpdGVib2FyZC1jb21wb25lbnRzL2NvbmZpZ3VyZS13aGl0ZWJvYXJkLW1vZGFsL2NvbmZpZ3VyZS13aGl0ZWJvYXJkLW1vZGFsLmNvbXBvbmVudCc7XG5leHBvcnQgdHlwZSB7XG4gIFdoaXRlYm9hcmRPcHRpb25zLFxuICBXaGl0ZWJvYXJkVHlwZSxcbiAgV2hpdGVib2FyZFBhcmFtZXRlcnMsXG4gIFNoYXBlLFxufSBmcm9tICcuLi9jb21wb25lbnRzL3doaXRlYm9hcmQtY29tcG9uZW50cy93aGl0ZWJvYXJkL3doaXRlYm9hcmQuY29tcG9uZW50JztcblxuZXhwb3J0IHR5cGUgeyBDdXN0b21CdXR0b24gfSBmcm9tICcuLi9jb21wb25lbnRzL21lbnUtY29tcG9uZW50cy9jdXN0b20tYnV0dG9ucy9jdXN0b20tYnV0dG9ucy5jb21wb25lbnQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFBhcnRpY2lwYW50IHtcbiAgaWQ/OiBzdHJpbmc7XG4gIGF1ZGlvSUQ6IHN0cmluZztcbiAgdmlkZW9JRDogc3RyaW5nO1xuICBTY3JlZW5JRD86IHN0cmluZztcbiAgU2NyZWVuT24/OiBib29sZWFuO1xuICBpc2xldmVsPzogc3RyaW5nO1xuICBpc0FkbWluPzogYm9vbGVhbjtcbiAgbmFtZTogc3RyaW5nO1xuICBtdXRlZD86IGJvb2xlYW47XG4gIGlzQmFubmVkPzogYm9vbGVhbjtcbiAgaXNTdXNwZW5kZWQ/OiBib29sZWFuO1xuICB1c2VCb2FyZD86IGJvb2xlYW47XG4gIGJyZWFrUm9vbT86IG51bWJlciB8IG51bGw7XG4gIFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdHJlYW0ge1xuICBwcm9kdWNlcklkOiBzdHJpbmc7XG4gIG11dGVkPzogYm9vbGVhbjtcbiAgc3RyZWFtPzogTWVkaWFTdHJlYW07XG4gIHNvY2tldF8/OiBTb2NrZXQ7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXF1ZXN0IHtcbiAgaWQ6IHN0cmluZztcbiAgaWNvbjogc3RyaW5nO1xuICBuYW1lPzogc3RyaW5nO1xuICB1c2VybmFtZT86IHN0cmluZztcbiAgW2tleTogc3RyaW5nXTogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlcXVlc3RSZXNwb25zZSB7XG4gIGlkOiBzdHJpbmc7XG4gIGljb24/OiBzdHJpbmc7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIHVzZXJuYW1lPzogc3RyaW5nO1xuICBhY3Rpb24/OiBzdHJpbmc7XG4gIHR5cGU/OiBzdHJpbmc7XG4gIFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUcmFuc3BvcnQge1xuICBwcm9kdWNlcklkOiBzdHJpbmc7XG4gIGNvbnN1bWVyOiBDb25zdW1lcjtcbiAgc29ja2V0XzogU29ja2V0O1xuICBzZXJ2ZXJDb25zdW1lclRyYW5zcG9ydElkOiBzdHJpbmc7XG4gIFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTY3JlZW5TdGF0ZSB7XG4gIG1haW5TY3JlZW5QZXJzb24/OiBzdHJpbmc7XG4gIG1haW5TY3JlZW5Qcm9kdWNlcklkPzogc3RyaW5nO1xuICBtYWluU2NyZWVuRmlsbGVkOiBib29sZWFuO1xuICBhZG1pbk9uTWFpblNjcmVlbjogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBHcmlkU2l6ZXMge1xuICBncmlkV2lkdGg/OiBudW1iZXI7XG4gIGdyaWRIZWlnaHQ/OiBudW1iZXI7XG4gIGFsdEdyaWRXaWR0aD86IG51bWJlcjtcbiAgYWx0R3JpZEhlaWdodD86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb21wb25lbnRTaXplcyB7XG4gIG1haW5XaWR0aDogbnVtYmVyO1xuICBtYWluSGVpZ2h0OiBudW1iZXI7XG4gIG90aGVyV2lkdGg6IG51bWJlcjtcbiAgb3RoZXJIZWlnaHQ6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBdWRpb0RlY2liZWxzIHtcbiAgbmFtZTogc3RyaW5nO1xuICBhdmVyYWdlTG91ZG5lc3M6IG51bWJlcjtcbn1cblxuZXhwb3J0IHR5cGUgU2hvd0FsZXJ0ID0gKG9wdGlvbnM6IHtcbiAgbWVzc2FnZTogc3RyaW5nO1xuICB0eXBlOiAnc3VjY2VzcycgfCAnZGFuZ2VyJztcbiAgZHVyYXRpb24/OiBudW1iZXI7XG59KSA9PiB2b2lkO1xuXG5leHBvcnQgaW50ZXJmYWNlIENvSG9zdFJlc3BvbnNpYmlsaXR5IHtcbiAgbmFtZTogc3RyaW5nO1xuICB2YWx1ZTogYm9vbGVhbjtcbiAgZGVkaWNhdGVkOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFZpZENvbnMge1xuICB3aWR0aDogbnVtYmVyIHwgeyBpZGVhbD86IG51bWJlcjsgbWF4PzogbnVtYmVyOyBtaW4/OiBudW1iZXIgfTtcbiAgaGVpZ2h0OiBudW1iZXIgfCB7IGlkZWFsPzogbnVtYmVyOyBtYXg/OiBudW1iZXI7IG1pbj86IG51bWJlciB9O1xufVxuXG5leHBvcnQgdHlwZSBTZXR0aW5ncyA9IFtzdHJpbmcsIHN0cmluZywgc3RyaW5nLCBzdHJpbmddO1xuXG5leHBvcnQgaW50ZXJmYWNlIE1lc3NhZ2Uge1xuICBzZW5kZXI6IHN0cmluZztcbiAgcmVjZWl2ZXJzOiBzdHJpbmdbXTtcbiAgbWVzc2FnZTogc3RyaW5nO1xuICB0aW1lc3RhbXA6IHN0cmluZztcbiAgZ3JvdXA6IGJvb2xlYW47XG59XG5cbmV4cG9ydCB0eXBlIE1haW5TcGVjcyA9IHtcbiAgbWVkaWFPcHRpb25zOiBzdHJpbmc7XG4gIGF1ZGlvT3B0aW9uczogc3RyaW5nO1xuICB2aWRlb09wdGlvbnM6IHN0cmluZztcbiAgdmlkZW9UeXBlOiBzdHJpbmc7XG4gIHZpZGVvT3B0aW1pemVkOiBib29sZWFuO1xuICByZWNvcmRpbmdEaXNwbGF5VHlwZTogJ3ZpZGVvJyB8ICdtZWRpYScgfCAnYWxsJztcbiAgYWRkSExTOiBib29sZWFuO1xufTtcblxuZXhwb3J0IHR5cGUgRGlzcFNwZWNzID0ge1xuICBuYW1lVGFnczogYm9vbGVhbjtcbiAgYmFja2dyb3VuZENvbG9yOiBzdHJpbmc7XG4gIG5hbWVUYWdzQ29sb3I6IHN0cmluZztcbiAgb3JpZW50YXRpb25WaWRlbzogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgVGV4dFNwZWNzID0ge1xuICBhZGRUZXh0OiBib29sZWFuO1xuICBjdXN0b21UZXh0Pzogc3RyaW5nO1xuICBjdXN0b21UZXh0UG9zaXRpb24/OiBzdHJpbmc7XG4gIGN1c3RvbVRleHRDb2xvcj86IHN0cmluZztcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgVXNlclJlY29yZGluZ1BhcmFtcyB7XG4gIG1haW5TcGVjczogTWFpblNwZWNzO1xuICBkaXNwU3BlY3M6IERpc3BTcGVjcztcbiAgdGV4dFNwZWNzPzogVGV4dFNwZWNzO1xufVxuXG5leHBvcnQgdHlwZSBBbHREb21haW5zID0ge1xuICBba2V5OiBzdHJpbmddOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBSZXF1ZXN0UGVybWlzc2lvbkF1ZGlvVHlwZSA9ICgpID0+IFByb21pc2U8c3RyaW5nPjtcbmV4cG9ydCB0eXBlIFJlcXVlc3RQZXJtaXNzaW9uQ2FtZXJhVHlwZSA9ICgpID0+IFByb21pc2U8c3RyaW5nPjtcblxuZXhwb3J0IHR5cGUgQ29udHJvbHNQb3NpdGlvbiA9ICd0b3BMZWZ0JyB8ICd0b3BSaWdodCcgfCAnYm90dG9tTGVmdCcgfCAnYm90dG9tUmlnaHQnO1xuZXhwb3J0IHR5cGUgSW5mb1Bvc2l0aW9uID0gJ3RvcExlZnQnIHwgJ3RvcFJpZ2h0JyB8ICdib3R0b21MZWZ0JyB8ICdib3R0b21SaWdodCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUG9sbCB7XG4gIGlkOiBzdHJpbmc7XG4gIHF1ZXN0aW9uOiBzdHJpbmc7XG4gIHR5cGU6IHN0cmluZztcbiAgb3B0aW9uczogc3RyaW5nW107XG4gIHZvdGVzOiBudW1iZXJbXTtcbiAgc3RhdHVzOiBzdHJpbmc7XG4gIHZvdGVycz86IFJlY29yZDxzdHJpbmcsIG51bWJlcj47XG4gIFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXYWl0aW5nUm9vbVBhcnRpY2lwYW50IHtcbiAgbmFtZTogc3RyaW5nO1xuICBpZDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1vZGFsUG9zaXRpb25TdHlsZSB7XG4gIGp1c3RpZnlDb250ZW50OiBzdHJpbmc7XG4gIGFsaWduSXRlbXM6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPdmVybGF5UG9zaXRpb25TdHlsZSB7XG4gIHRvcD86IG51bWJlcjtcbiAgbGVmdD86IG51bWJlcjtcbiAgcmlnaHQ/OiBudW1iZXI7XG4gIGJvdHRvbT86IG51bWJlcjtcbn1cblxuZXhwb3J0IHR5cGUgRXZlbnRUeXBlID0gJ2NvbmZlcmVuY2UnIHwgJ3dlYmluYXInIHwgJ2NoYXQnIHwgJ2Jyb2FkY2FzdCcgfCAnbm9uZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUG9sbFVwZGF0ZWREYXRhIHtcbiAgcG9sbHM/OiBQb2xsW107XG4gIHBvbGw6IFBvbGw7XG4gIHN0YXR1czogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJyZWFrb3V0UGFydGljaXBhbnQge1xuICBuYW1lOiBzdHJpbmc7XG4gIGJyZWFrUm9vbT86IG51bWJlciB8IG51bGw7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQnJlYWtvdXRSb29tVXBkYXRlZERhdGEge1xuICBmb3JIb3N0PzogYm9vbGVhbjtcbiAgbmV3Um9vbT86IG51bWJlcjtcbiAgbWVtYmVycz86IFBhcnRpY2lwYW50W107XG4gIGJyZWFrb3V0Um9vbXM/OiBCcmVha291dFBhcnRpY2lwYW50W11bXTtcbiAgc3RhdHVzPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbnN1bWVTb2NrZXQge1xuICBbaXA6IHN0cmluZ106IFNvY2tldDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXaGl0ZWJvYXJkVXNlciB7XG4gIG5hbWU6IHN0cmluZztcbiAgdXNlQm9hcmQ6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2hhcGVQYXlsb2FkIHtcbiAgdHlwZTogc3RyaW5nO1xuICB4MTogbnVtYmVyO1xuICB5MTogbnVtYmVyO1xuICB4MjogbnVtYmVyO1xuICB5MjogbnVtYmVyO1xuICBjb2xvcjogc3RyaW5nO1xuICB0aGlja25lc3M6IG51bWJlcjtcbiAgbGluZVR5cGU6IHN0cmluZztcbiAgW2tleTogc3RyaW5nXTogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNoYXBlcyB7XG4gIGFjdGlvbjogc3RyaW5nO1xuICBwYXlsb2FkOiBTaGFwZVBheWxvYWQ7XG59XG5leHBvcnQgaW50ZXJmYWNlIFdoaXRlYm9hcmREYXRhIHtcbiAgc2hhcGVzOiBTaGFwZXNbXTtcbiAgcmVkb1N0YWNrOiBTaGFwZXNbXTtcbiAgdW5kb1N0YWNrOiBTaGFwZXNbXTtcbiAgdXNlSW1hZ2VCYWNrZ3JvdW5kOiBib29sZWFuO1xufVxuXG5leHBvcnQgdHlwZSBTZWVkRGF0YSA9IHtcbiAgbWVtYmVyPzogc3RyaW5nO1xuICBob3N0Pzogc3RyaW5nO1xuICBldmVudFR5cGU/OiBFdmVudFR5cGU7XG4gIHBhcnRpY2lwYW50cz86IFBhcnRpY2lwYW50W107XG4gIG1lc3NhZ2VzPzogTWVzc2FnZVtdO1xuICBwb2xscz86IFBvbGxbXTtcbiAgYnJlYWtvdXRSb29tcz86IEJyZWFrb3V0UGFydGljaXBhbnRbXVtdO1xuICByZXF1ZXN0cz86IFJlcXVlc3RbXTtcbiAgd2FpdGluZ0xpc3Q/OiBXYWl0aW5nUm9vbVBhcnRpY2lwYW50W107XG4gIHdoaXRlYm9hcmRVc2Vycz86IFdoaXRlYm9hcmRVc2VyW107XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIE1lZXRpbmdSb29tUGFyYW1zIHtcbiAgaXRlbVBhZ2VMaW1pdDogbnVtYmVyOyAvLyBMaW1pdCBmb3IgaXRlbXMgcGVyIHBhZ2VcbiAgbWVkaWFUeXBlOiAnYXVkaW8nIHwgJ3ZpZGVvJzsgLy8gVHlwZSBvZiBtZWRpYSwgY291bGQgYmUgYXVkaW8gb3IgdmlkZW9cbiAgYWRkQ29Ib3N0OiBib29sZWFuOyAvLyBXaGV0aGVyIGNvLWhvc3RzIGNhbiBiZSBhZGRlZFxuICB0YXJnZXRPcmllbnRhdGlvbjogJ2xhbmRzY2FwZScgfCAnbmV1dHJhbCcgfCAncG9ydHJhaXQnOyAvLyBUYXJnZXQgb3JpZW50YXRpb24sIGxhbmRzY2FwZSwgbmV1dHJhbCwgb3IgcG9ydHJhaXRcbiAgdGFyZ2V0T3JpZW50YXRpb25Ib3N0OiAnbGFuZHNjYXBlJyB8ICduZXV0cmFsJyB8ICdwb3J0cmFpdCc7IC8vIEhvc3QncyB0YXJnZXQgb3JpZW50YXRpb24sIGxhbmRzY2FwZSwgbmV1dHJhbCwgb3IgcG9ydHJhaXRcbiAgdGFyZ2V0UmVzb2x1dGlvbjogJ3FoZCcgfCAnZmhkJyB8ICdoZCcgfCAnc2QnIHwgJ1FuSEQnOyAvLyBUYXJnZXQgcmVzb2x1dGlvbiBmb3IgcGFydGljaXBhbnRzXG4gIHRhcmdldFJlc29sdXRpb25Ib3N0OiAncWhkJyB8ICdmaGQnIHwgJ2hkJyB8ICdzZCcgfCAnUW5IRCc7IC8vIFRhcmdldCByZXNvbHV0aW9uIGZvciBob3N0ICB0eXBlOiAnY2hhdCcgfCAnY29uZmVyZW5jZScgfCAnd2ViaW5hcicgfCAnYnJvYWRjYXN0JzsgLy8gUm9vbSB0eXBlOiBjaGF0LCBjb25mZXJlbmNlLCB3ZWJpbmFyLCBvciBicm9hZGNhc3RcbiAgdHlwZTogRXZlbnRUeXBlOyAvLyBSb29tIHR5cGU6IGNoYXQsIGNvbmZlcmVuY2UsIHdlYmluYXIsIG9yIGJyb2FkY2FzdFxuICBhdWRpb1NldHRpbmc6ICdhbGxvdycgfCAnYXBwcm92YWwnIHwgJ2Rpc2FsbG93JzsgLy8gQXVkaW8gc2V0dGluZzogYWxsb3csIGFwcHJvdmFsLCBvciBkaXNhbGxvd1xuICB2aWRlb1NldHRpbmc6ICdhbGxvdycgfCAnYXBwcm92YWwnIHwgJ2Rpc2FsbG93JzsgLy8gVmlkZW8gc2V0dGluZzogYWxsb3csIGFwcHJvdmFsLCBvciBkaXNhbGxvd1xuICBzY3JlZW5zaGFyZVNldHRpbmc6ICdhbGxvdycgfCAnYXBwcm92YWwnIHwgJ2Rpc2FsbG93JzsgLy8gU2NyZWVuc2hhcmUgc2V0dGluZzogYWxsb3csIGFwcHJvdmFsLCBvciBkaXNhbGxvd1xuICBjaGF0U2V0dGluZzogJ2FsbG93JyB8ICdkaXNhbGxvdyc7IC8vIENoYXQgc2V0dGluZzogYWxsb3cgb3IgZGlzYWxsb3dcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZWNvcmRpbmdQYXJhbXMge1xuICByZWNvcmRpbmdBdWRpb1BhdXNlc0xpbWl0OiBudW1iZXI7IC8vIExpbWl0IG9uIGF1ZGlvIHJlY29yZGluZyBwYXVzZXNcbiAgcmVjb3JkaW5nQXVkaW9TdXBwb3J0OiBib29sZWFuOyAvLyBXaGV0aGVyIGF1ZGlvIHJlY29yZGluZyBpcyBzdXBwb3J0ZWRcbiAgcmVjb3JkaW5nQXVkaW9QZW9wbGVMaW1pdDogbnVtYmVyOyAvLyBNYXhpbXVtIG51bWJlciBvZiBwZW9wbGUgZm9yIGF1ZGlvIHJlY29yZGluZ1xuICByZWNvcmRpbmdBdWRpb1BhcnRpY2lwYW50c1RpbWVMaW1pdDogbnVtYmVyOyAvLyBUaW1lIGxpbWl0IGZvciBhdWRpbyBwYXJ0aWNpcGFudHMgaW4gcmVjb3JkaW5nXG5cbiAgcmVjb3JkaW5nVmlkZW9QYXVzZXNMaW1pdDogbnVtYmVyOyAvLyBMaW1pdCBvbiB2aWRlbyByZWNvcmRpbmcgcGF1c2VzXG4gIHJlY29yZGluZ1ZpZGVvU3VwcG9ydDogYm9vbGVhbjsgLy8gV2hldGhlciB2aWRlbyByZWNvcmRpbmcgaXMgc3VwcG9ydGVkXG4gIHJlY29yZGluZ1ZpZGVvUGVvcGxlTGltaXQ6IG51bWJlcjsgLy8gTWF4aW11bSBudW1iZXIgb2YgcGVvcGxlIGZvciB2aWRlbyByZWNvcmRpbmdcbiAgcmVjb3JkaW5nVmlkZW9QYXJ0aWNpcGFudHNUaW1lTGltaXQ6IG51bWJlcjsgLy8gVGltZSBsaW1pdCBmb3IgdmlkZW8gcGFydGljaXBhbnRzIGluIHJlY29yZGluZ1xuXG4gIHJlY29yZGluZ0FsbFBhcnRpY2lwYW50c1N1cHBvcnQ6IGJvb2xlYW47IC8vIFdoZXRoZXIgcmVjb3JkaW5nIGFsbCBwYXJ0aWNpcGFudHMgaXMgc3VwcG9ydGVkXG4gIHJlY29yZGluZ1ZpZGVvUGFydGljaXBhbnRzU3VwcG9ydDogYm9vbGVhbjsgLy8gV2hldGhlciB2aWRlbyByZWNvcmRpbmcgZm9yIHBhcnRpY2lwYW50cyBpcyBzdXBwb3J0ZWRcbiAgcmVjb3JkaW5nQWxsUGFydGljaXBhbnRzRnVsbFJvb21TdXBwb3J0OiBib29sZWFuOyAvLyBTdXBwb3J0IGZvciByZWNvcmRpbmcgdGhlIGVudGlyZSByb29tIGZvciBhbGwgcGFydGljaXBhbnRzXG4gIHJlY29yZGluZ1ZpZGVvUGFydGljaXBhbnRzRnVsbFJvb21TdXBwb3J0OiBib29sZWFuOyAvLyBTdXBwb3J0IGZvciByZWNvcmRpbmcgdGhlIGZ1bGwgcm9vbSBmb3IgdmlkZW8gcGFydGljaXBhbnRzXG5cbiAgcmVjb3JkaW5nUHJlZmVycmVkT3JpZW50YXRpb246ICdsYW5kc2NhcGUnIHwgJ3BvcnRyYWl0JzsgLy8gUHJlZmVycmVkIHJlY29yZGluZyBvcmllbnRhdGlvblxuICByZWNvcmRpbmdTdXBwb3J0Rm9yT3RoZXJPcmllbnRhdGlvbjogYm9vbGVhbjsgLy8gU3VwcG9ydCBmb3Igb3JpZW50YXRpb25zIG90aGVyIHRoYW4gdGhlIHByZWZlcnJlZCBvbmVcbiAgcmVjb3JkaW5nTXVsdGlGb3JtYXRzU3VwcG9ydDogYm9vbGVhbjsgLy8gU3VwcG9ydCBmb3IgbXVsdGlwbGUgcmVjb3JkaW5nIGZvcm1hdHNcbiAgcmVjb3JkaW5nSExTU3VwcG9ydDogYm9vbGVhbjsgLy8gV2hldGhlciBITFMgcmVjb3JkaW5nIGlzIHN1cHBvcnRlZFxuXG4gIHJlY29yZGluZ0F1ZGlvUGF1c2VzQ291bnQ/OiBudW1iZXI7IC8vIE51bWJlciBvZiBhdWRpbyByZWNvcmRpbmcgcGF1c2VzXG4gIHJlY29yZGluZ1ZpZGVvUGF1c2VzQ291bnQ/OiBudW1iZXI7IC8vIE51bWJlciBvZiB2aWRlbyByZWNvcmRpbmcgcGF1c2VzXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlUm9vbU9wdGlvbnMge1xuICBhY3Rpb246ICdjcmVhdGUnIHwgJ2pvaW4nOyAvLyBFaXRoZXIgJ2NyZWF0ZScgb3IgJ2pvaW4nIGJhc2VkIG9uIHRoZSByZXF1aXJlbWVudFxuICBtZWV0aW5nSUQ6IHN0cmluZzsgLy8gVGhlIG1lZXRpbmcgSUQsIGluaXRpYWxseSBhbiBlbXB0eSBzdHJpbmdcbiAgZHVyYXRpb246IG51bWJlcjsgLy8gRHVyYXRpb24gb2YgdGhlIG1lZXRpbmcgaW4gbWludXRlc1xuICBjYXBhY2l0eTogbnVtYmVyOyAvLyBNYXggbnVtYmVyIG9mIHBhcnRpY2lwYW50cyBhbGxvd2VkXG4gIHVzZXJOYW1lOiBzdHJpbmc7IC8vIFVzZXJuYW1lIG9mIHRoZSByb29tIGhvc3RcbiAgc2NoZWR1bGVkRGF0ZTogbnVtYmVyOyAvLyBVbml4IHRpbWVzdGFtcCAoaW4gbWlsbGlzZWNvbmRzKSBmb3IgdGhlIHNjaGVkdWxlZCBkYXRlXG4gIHNlY3VyZUNvZGU6IHN0cmluZzsgLy8gU2VjdXJlIGNvZGUgZm9yIHRoZSByb29tIGhvc3RcbiAgZXZlbnRUeXBlOiAnY29uZmVyZW5jZScgfCAnd2ViaW5hcicgfCAnY2hhdCcgfCAnYnJvYWRjYXN0JzsgLy8gVHlwZSBvZiBldmVudFxuICByZWNvcmRPbmx5OiBib29sZWFuOyAvLyBXaGV0aGVyIHRoZSByb29tIGlzIGZvciByZWNvcmRpbmcgb25seVxuICBldmVudFN0YXR1czogJ2FjdGl2ZScgfCAnaW5hY3RpdmUnOyAvLyBTdGF0dXMgb2YgdGhlIGV2ZW50XG4gIHN0YXJ0SW5kZXg6IG51bWJlcjsgLy8gU3RhcnQgaW5kZXggZm9yIHBhZ2luYXRpb24gb3IgZGF0YSBmZXRjaFxuICBwYWdlU2l6ZTogbnVtYmVyOyAvLyBOdW1iZXIgb2YgaXRlbXMgcGVyIHBhZ2VcbiAgc2FmZVJvb206IGJvb2xlYW47IC8vIFdoZXRoZXIgdGhlIHJvb20gaXMgYSBzYWZlIHJvb21cbiAgYXV0b1N0YXJ0U2FmZVJvb206IGJvb2xlYW47IC8vIEF1dG9tYXRpY2FsbHkgc3RhcnQgdGhlIHNhZmUgcm9vbSBmZWF0dXJlXG4gIHNhZmVSb29tQWN0aW9uOiAnd2FybicgfCAna2ljaycgfCAnYmFuJzsgLy8gQWN0aW9uIGZvciB0aGUgc2FmZSByb29tXG4gIGRhdGFCdWZmZXI6IGJvb2xlYW47IC8vIFdoZXRoZXIgdG8gcmV0dXJuIGRhdGEgYnVmZmVyXG4gIGJ1ZmZlclR5cGU6ICdpbWFnZXMnIHwgJ2F1ZGlvJyB8ICdhbGwnOyAvLyBUeXBlIG9mIGJ1ZmZlciBkYXRhXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVzcG9uc2VKb2luUm9vbSB7XG4gIHJ0cENhcGFiaWxpdGllcz86IFJ0cENhcGFiaWxpdGllcyB8IG51bGw7IC8vIE9iamVjdCBjb250YWluaW5nIHRoZSBSVFAgY2FwYWJpbGl0aWVzXG4gIHN1Y2Nlc3M6IGJvb2xlYW47IC8vIEluZGljYXRlcyB3aGV0aGVyIHRoZSBvcGVyYXRpb24gKGpvaW5pbmcgdGhlIHJvb20pIHdhcyBzdWNjZXNzZnVsLlxuICByb29tUmVjdklQczogc3RyaW5nW107IC8vIEFycmF5IG9mIHN0cmluZ3MgY29udGFpbmluZyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgZG9tYWlucyB0aGF0IG11c3QgYmUgY29ubmVjdGVkIHRvIGluIG9yZGVyIHRvIHJlY2VpdmUgbWVkaWEuXG4gIG1lZXRpbmdSb29tUGFyYW1zOiBNZWV0aW5nUm9vbVBhcmFtczsgLy8gT2JqZWN0IGNvbnRhaW5pbmcgcGFyYW1ldGVycyByZWxhdGVkIHRvIHRoZSBtZWV0aW5nIHJvb20uXG4gIHJlY29yZGluZ1BhcmFtczogUmVjb3JkaW5nUGFyYW1zOyAvLyBPYmplY3QgY29udGFpbmluZyBwYXJhbWV0ZXJzIHJlbGF0ZWQgdG8gcmVjb3JkaW5nLlxuICBzZWN1cmVDb2RlOiBzdHJpbmc7IC8vIFNlY3VyZSBjb2RlIChob3N0IHBhc3N3b3JkKSBhc3NvY2lhdGVkIHdpdGggdGhlIGhvc3Qgb2YgdGhlIHJvb20uXG4gIHJlY29yZE9ubHk6IGJvb2xlYW47IC8vIEluZGljYXRlcyB3aGV0aGVyIHRoZSByb29tIGlzIGZvciByZWNvcmRpbmcgb25seS5cbiAgaXNIb3N0OiBib29sZWFuOyAvLyBJbmRpY2F0ZXMgd2hldGhlciB0aGUgdXNlciBqb2luaW5nIHRoZSByb29tIGlzIHRoZSBob3N0LlxuICBzYWZlUm9vbTogYm9vbGVhbjsgLy8gSW5kaWNhdGVzIHdoZXRoZXIgdGhlIHJvb20gaXMgYSBzYWZlIHJvb20uXG4gIGF1dG9TdGFydFNhZmVSb29tOiBib29sZWFuOyAvLyBJbmRpY2F0ZXMgd2hldGhlciB0aGUgc2FmZSByb29tIHdpbGwgYXV0b21hdGljYWxseSBzdGFydC5cbiAgc2FmZVJvb21TdGFydGVkOiBib29sZWFuOyAvLyBJbmRpY2F0ZXMgd2hldGhlciB0aGUgc2FmZSByb29tIGhhcyBzdGFydGVkLlxuICBzYWZlUm9vbUVuZGVkOiBib29sZWFuOyAvLyBJbmRpY2F0ZXMgd2hldGhlciB0aGUgc2FmZSByb29tIGhhcyBlbmRlZC5cbiAgcmVhc29uPzogc3RyaW5nOyAvLyBSZWFzb24gZm9yIHRoZSBzdWNjZXNzIG9yIGZhaWx1cmUgb2YgdGhlIG9wZXJhdGlvbi5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBBbGxNZW1iZXJzRGF0YSB7XG4gIG1lbWJlcnM6IFBhcnRpY2lwYW50W107IC8vIEFycmF5IG9mIG9iamVjdHMgY29udGFpbmluZyBpbmZvcm1hdGlvbiBhYm91dCBhbGwgdGhlIG1lbWJlcnMgaW4gdGhlIHJvb20uXG4gIHJlcXVlc3RzOiBSZXF1ZXN0W107IC8vIEFycmF5IG9mIG9iamVjdHMgY29udGFpbmluZyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgcmVxdWVzdHMuXG4gIGNvSG9zdD86IHN0cmluZzsgLy8gVGhlIGNvLWhvc3QgaW5mb3JtYXRpb24uXG4gIGNvSG9zdFJlc3BvbnNpYmlsaXRpZXM6IENvSG9zdFJlc3BvbnNpYmlsaXR5W107IC8vIEFycmF5IG9mIG9iamVjdHMgY29udGFpbmluZyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgY28taG9zdCByZXNwb25zaWJpbGl0aWVzLlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFsbE1lbWJlcnNSZXN0RGF0YSB7XG4gIG1lbWJlcnM6IFBhcnRpY2lwYW50W107IC8vIEFycmF5IG9mIG9iamVjdHMgY29udGFpbmluZyBpbmZvcm1hdGlvbiBhYm91dCBhbGwgdGhlIG1lbWJlcnMgaW4gdGhlIHJvb20uXG4gIHNldHRpbmdzOiBTZXR0aW5nczsgLy8gQXJyYXkgb2Ygc3RyaW5ncyBjb250YWluaW5nIGluZm9ybWF0aW9uIGFib3V0IHRoZSBzZXR0aW5ncy5cbiAgY29Ib3N0Pzogc3RyaW5nOyAvLyBUaGUgY28taG9zdCBpbmZvcm1hdGlvbi5cbiAgY29Ib3N0UmVzcG9uc2liaWxpdGllczogQ29Ib3N0UmVzcG9uc2liaWxpdHlbXTsgLy8gQXJyYXkgb2Ygb2JqZWN0cyBjb250YWluaW5nIGluZm9ybWF0aW9uIGFib3V0IHRoZSBjby1ob3N0IHJlc3BvbnNpYmlsaXRpZXMuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVXNlcldhaXRpbmdEYXRhIHtcbiAgbmFtZTogc3RyaW5nOyAvLyBOYW1lIG9mIHRoZSB1c2VyIHdhaXRpbmcgdG8gam9pbiB0aGUgcm9vbS5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBBbGxXYWl0aW5nUm9vbU1lbWJlcnNEYXRhIHtcbiAgd2FpdGluZ1BhcnRpY2lwYW50cz86IFdhaXRpbmdSb29tUGFydGljaXBhbnRbXTsgLy8gQXJyYXkgb2Ygb2JqZWN0cyBjb250YWluaW5nIGluZm9ybWF0aW9uIGFib3V0IHRoZSBwYXJ0aWNpcGFudHMgd2FpdGluZyB0byBqb2luIHRoZSByb29tLlxuICB3YWl0aW5nUGFydGljaXBhbnRzcz86IFdhaXRpbmdSb29tUGFydGljaXBhbnRbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCYW5EYXRhIHtcbiAgbmFtZTogc3RyaW5nOyAvLyBOYW1lIG9mIHRoZSB1c2VyIHRvIGJhbi5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBVcGRhdGVkQ29Ib3N0RGF0YSB7XG4gIGNvSG9zdDogc3RyaW5nOyAvLyBUaGUgY28taG9zdCBpbmZvcm1hdGlvbi5cbiAgY29Ib3N0UmVzcG9uc2liaWxpdGllczogQ29Ib3N0UmVzcG9uc2liaWxpdHlbXTsgLy8gQXJyYXkgb2Ygb2JqZWN0cyBjb250YWluaW5nIGluZm9ybWF0aW9uIGFib3V0IHRoZSBjby1ob3N0IHJlc3BvbnNpYmlsaXRpZXMuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFydGljaXBhbnRSZXF1ZXN0ZWREYXRhIHtcbiAgdXNlclJlcXVlc3Q6IFJlcXVlc3Q7IC8vIE9iamVjdCBjb250YWluaW5nIGluZm9ybWF0aW9uIGFib3V0IHRoZSB1c2VyIHJlcXVlc3QuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2NyZWVuUHJvZHVjZXJJZERhdGEge1xuICBwcm9kdWNlcklkOiBzdHJpbmc7IC8vIFRoZSBwcm9kdWNlciBJRCBvZiB0aGUgc2NyZWVuLlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZU1lZGlhU2V0dGluZ3NEYXRhIHtcbiAgc2V0dGluZ3M6IFNldHRpbmdzOyAvLyBBcnJheSBvZiBzdHJpbmdzIGNvbnRhaW5pbmcgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNldHRpbmdzLlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb2R1Y2VyTWVkaWFQYXVzZWREYXRhIHtcbiAgcHJvZHVjZXJJZDogc3RyaW5nOyAvLyBUaGUgcHJvZHVjZXIgSUQgb2YgdGhlIG1lZGlhIHRoYXQgd2FzIHBhdXNlZC5cbiAga2luZDogJ2F1ZGlvJztcbiAgbmFtZTogc3RyaW5nOyAvLyBUaGUgbmFtZSBvZiB0aGUgbWVkaWEgdGhhdCB3YXMgcGF1c2VkLlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb2R1Y2VyTWVkaWFSZXN1bWVkRGF0YSB7XG4gIGtpbmQ6ICdhdWRpbyc7XG4gIG5hbWU6IHN0cmluZzsgLy8gVGhlIG5hbWUgb2YgdGhlIG1lZGlhIHRoYXQgd2FzIHJlc3VtZWQuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJvZHVjZXJNZWRpYUNsb3NlZERhdGEge1xuICBwcm9kdWNlcklkOiBzdHJpbmc7IC8vIFRoZSBwcm9kdWNlciBJRCBvZiB0aGUgbWVkaWEgdGhhdCB3YXMgc3RvcHBlZC5cbiAga2luZDogJ2F1ZGlvJyB8ICd2aWRlbycgfCAnc2NyZWVuc2hhcmUnO1xuICBuYW1lOiBzdHJpbmc7IC8vIFRoZSBuYW1lIG9mIHRoZSBtZWRpYSB0aGF0IHdhcyBzdG9wcGVkLlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbnRyb2xNZWRpYUhvc3REYXRhIHtcbiAgdHlwZTogJ2FsbCcgfCAnYXVkaW8nIHwgJ3ZpZGVvJyB8ICdzY3JlZW5zaGFyZSc7IC8vIFRoZSB0eXBlIG9mIG1lZGlhIHRvIGNvbnRyb2wuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVjZWl2ZU1lc3NhZ2VEYXRhIHtcbiAgbWVzc2FnZTogTWVzc2FnZTsgLy8gT2JqZWN0IGNvbnRhaW5pbmcgaW5mb3JtYXRpb24gYWJvdXQgdGhlIG1lc3NhZ2UuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWVldGluZ1RpbWVSZW1haW5pbmdEYXRhIHtcbiAgdGltZVJlbWFpbmluZzogbnVtYmVyOyAvLyBUaGUgdGltZSByZW1haW5pbmcgZm9yIHRoZSBtZWV0aW5nLlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1lZXRpbmdTdGlsbFRoZXJlRGF0YSB7XG4gIHRpbWVSZW1haW5pbmc6IG51bWJlcjsgLy8gVGhlIHRpbWUgcmVtYWluaW5nIGZvciB0aGUgbWVldGluZy5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBVcGRhdGVDb25zdW1pbmdEb21haW5zRGF0YSB7XG4gIGRvbWFpbnM6IHN0cmluZ1tdOyAvLyBBcnJheSBvZiBzdHJpbmdzIGNvbnRhaW5pbmcgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGRvbWFpbnMgdG8gY29uc3VtZSBtZWRpYSBmcm9tLlxuICBhbHRfZG9tYWluczogQWx0RG9tYWluczsgLy8gT2JqZWN0IGNvbnRhaW5pbmcgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGFsdGVybmF0aXZlIGRvbWFpbnMgdG8gY29uc3VtZSBtZWRpYSBmcm9tLlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlY29yZGluZ05vdGljZURhdGEge1xuICBzdGF0ZTogc3RyaW5nOyAvLyBUaGUgc3RhdGUgb2YgdGhlIHJlY29yZGluZy5cbiAgdXNlclJlY29yZGluZ1BhcmFtOiBVc2VyUmVjb3JkaW5nUGFyYW1zOyAvLyBPYmplY3QgY29udGFpbmluZyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgdXNlciByZWNvcmRpbmcgcGFyYW1ldGVycy5cbiAgcGF1c2VDb3VudDogbnVtYmVyOyAvLyBUaGUgbnVtYmVyIG9mIHRpbWVzIHRoZSByZWNvcmRpbmcgd2FzIHBhdXNlZC5cbiAgdGltZURvbmU6IG51bWJlcjsgLy8gVGhlIHRpbWUgdGhlIHJlY29yZGluZyB3YXMgcGF1c2VkLlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRpbWVMZWZ0UmVjb3JkaW5nRGF0YSB7XG4gIHRpbWVMZWZ0OiBudW1iZXI7IC8vIFRoZSB0aW1lIGxlZnQgZm9yIHJlY29yZGluZy5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdG9wcGVkUmVjb3JkaW5nRGF0YSB7XG4gIHN0YXRlOiBzdHJpbmc7IC8vIFRoZSBzdGF0ZSBvZiB0aGUgcmVjb3JkaW5nLlxuICByZWFzb24/OiBzdHJpbmc7IC8vIFRoZSByZWFzb24gZm9yIHN0b3BwaW5nIHRoZSByZWNvcmRpbmcuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSG9zdFJlcXVlc3RSZXNwb25zZURhdGEge1xuICByZXF1ZXN0UmVzcG9uc2U6IFJlcXVlc3RSZXNwb25zZTsgLy8gT2JqZWN0IGNvbnRhaW5pbmcgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHJlcXVlc3QgcmVzcG9uc2UuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2FmZVJvb21Ob3RpY2VEYXRhIHtcbiAgc3RhdGU6IHN0cmluZzsgLy8gVGhlIHN0YXRlIG9mIHRoZSBzYWZlIHJvb20uXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVW5TYWZlRGF0YSB7XG4gIHRpbWU6IG51bWJlcjsgLy8gVGhlIHRpbWUgdGhlIHJvb20gd2FzIHVuc2FmZS5cbiAgZXZpZGVuY2U6IEltYWdlRGF0YTsgLy8gVGhlIGV2aWRlbmNlIGZvciB0aGUgcm9vbSBiZWluZyB1bnNhZmUuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVW5zYWZlQWxlcnREYXRhIHtcbiAgbmFtZTogc3RyaW5nOyAvLyBUaGUgbmFtZSBvZiB0aGUgdXNlciB3aG8gdHJpZ2dlcmVkIHRoZSB1bnNhZmUgYWxlcnQuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YUJ1ZmZlck5vdGljZSB7XG4gIHN0YXRlOiBzdHJpbmc7IC8vIFRoZSBzdGF0ZSBvZiB0aGUgZGF0YSBidWZmZXIuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXVkaW9EYXRhIHtcbiAgYXVkaW9CdWZmZXI6IEF1ZGlvQnVmZmVyOyAvLyBUaGUgYXVkaW8gYnVmZmVyLlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEltYWdlRGF0YSB7XG4gIGpwZWdCdWZmZXI6IEltYWdlRGF0YTsgLy8gVGhlIEpQRUcgYnVmZmVyLlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFdoaXRlYm9hcmRVcGRhdGVkRGF0YSB7XG4gIHN0YXR1czogJ3N0YXJ0ZWQnIHwgJ2VuZGVkJzsgLy8gVGhlIHN0YXR1cyBvZiB0aGUgd2hpdGVib2FyZC5cbiAgd2hpdGVib2FyZFVzZXJzOiBXaGl0ZWJvYXJkVXNlcltdOyAvLyBBcnJheSBvZiBvYmplY3RzIGNvbnRhaW5pbmcgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHdoaXRlYm9hcmQgdXNlcnMuXG4gIG1lbWJlcnM6IFBhcnRpY2lwYW50W107IC8vIEFycmF5IG9mIG9iamVjdHMgY29udGFpbmluZyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgbWVtYmVycy5cbiAgd2hpdGVib2FyZERhdGE6IFdoaXRlYm9hcmREYXRhOyAvLyBPYmplY3QgY29udGFpbmluZyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgd2hpdGVib2FyZCBkYXRhLlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFdoaXRlYm9hcmRBY3Rpb25EYXRhIHtcbiAgYWN0aW9uOiBzdHJpbmc7IC8vIFRoZSBhY3Rpb24gdG8gYmUgcGVyZm9ybWVkIG9uIHRoZSB3aGl0ZWJvYXJkLlxuICBwYXlsb2FkOiBTaGFwZVBheWxvYWQ7IC8vIE9iamVjdCBjb250YWluaW5nIGluZm9ybWF0aW9uIGFib3V0IHRoZSBzaGFwZSBwYXlsb2FkLlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEN1c3RvbU1lZGlhQ29tcG9uZW50IHtcbiAgY29tcG9uZW50OiBDb21wb25lbnRUeXBlPGFueT47IC8vIFRoZSBjdXN0b20gbWVkaWEgY29tcG9uZW50LlxuICBpbnB1dHM6IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBHZW5lcmljQnV0dG9uIHtcbiAgbmFtZT86IHN0cmluZztcbiAgaWNvbj86IEljb25EZWZpbml0aW9uO1xuICBhbHRlcm5hdGVJY29uPzogSWNvbkRlZmluaXRpb247XG4gIG9uUHJlc3M/OiAoKSA9PiB2b2lkO1xuICBjb2xvcj86IHN0cmluZztcbiAgYmFja2dyb3VuZENvbG9yPzoge1xuICAgIGRlZmF1bHQ/OiBzdHJpbmc7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWFpbkJ1dHRvbkFsdCBleHRlbmRzIEdlbmVyaWNCdXR0b24ge1xuICBhY3RpdmU/OiBib29sZWFuIHwgKCgpID0+IGJvb2xlYW4pO1xuICBjdXN0b21Db21wb25lbnQ/OiBIVE1MRWxlbWVudCB8IEN1c3RvbUNvbXBvbmVudCB8ICgoKSA9PiBIVE1MRWxlbWVudCB8IEN1c3RvbUNvbXBvbmVudCk7XG4gIGljb25Db21wb25lbnQ/OiBIVE1MRWxlbWVudCB8IEN1c3RvbUNvbXBvbmVudCB8ICgoKSA9PiBIVE1MRWxlbWVudCB8IEN1c3RvbUNvbXBvbmVudCk7XG4gIGFsdGVybmF0ZUljb25Db21wb25lbnQ/OiBIVE1MRWxlbWVudCB8IEN1c3RvbUNvbXBvbmVudCB8ICgoKSA9PiBIVE1MRWxlbWVudCB8IEN1c3RvbUNvbXBvbmVudCk7XG4gIGRpc2FibGVkPzogYm9vbGVhbiB8ICgoKSA9PiBib29sZWFuKTtcbiAgc2hvdz86IGJvb2xlYW4gfCAoKCkgPT4gYm9vbGVhbik7XG4gIGFjdGl2ZUNvbG9yPzogc3RyaW5nIHwgKCgpID0+IHN0cmluZyk7XG4gIGluQWN0aXZlQ29sb3I/OiBzdHJpbmcgfCAoKCkgPT4gc3RyaW5nKTtcbn1cblxuZXhwb3J0IHR5cGUgTWFpbkN1c3RvbUJ1dHRvbiA9IFBpY2s8XG4gIEN1c3RvbUJ1dHRvbixcbiAgRXhjbHVkZTxrZXlvZiBDdXN0b21CdXR0b24sICdjdXN0b21Db21wb25lbnQnPlxuPiAmIHtcbiAgY3VzdG9tQ29tcG9uZW50PzogSFRNTEVsZW1lbnQgfCBDdXN0b21Db21wb25lbnQgfCAoKCkgPT4gSFRNTEVsZW1lbnQgfCBDdXN0b21Db21wb25lbnQpO1xufTtcblxuZXhwb3J0IHR5cGUgeyBDdXN0b21Db21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL21lbnUtY29tcG9uZW50cy9jdXN0b20tYnV0dG9ucy9jdXN0b20tYnV0dG9ucy5jb21wb25lbnQnO1xuXG5leHBvcnQgdHlwZSBDcmVhdGVXZWJSVENUcmFuc3BvcnRSZXNwb25zZSA9IHtcbiAgaWQ6IHN0cmluZztcbiAgZHRsc1BhcmFtZXRlcnM6IER0bHNQYXJhbWV0ZXJzO1xuICBpY2VDYW5kaWRhdGVzOiBJY2VDYW5kaWRhdGVbXTtcbiAgaWNlUGFyYW1ldGVyczogSWNlUGFyYW1ldGVycztcbiAgZXJyb3I/OiBzdHJpbmc7XG59O1xuIl19
|