@dcl/asset-packs 2.12.0 → 2.12.1
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/bin/index.js +478 -595
- package/dist/admin-toolkit-ui/Active.d.ts +1 -2
- package/dist/admin-toolkit-ui/Active.js +7 -7
- package/dist/admin-toolkit-ui/Button.js +3 -4
- package/dist/admin-toolkit-ui/Card.d.ts +1 -2
- package/dist/admin-toolkit-ui/Card.js +8 -8
- package/dist/admin-toolkit-ui/Error.d.ts +1 -2
- package/dist/admin-toolkit-ui/Error.js +7 -7
- package/dist/admin-toolkit-ui/Header.d.ts +1 -2
- package/dist/admin-toolkit-ui/Header.js +6 -6
- package/dist/admin-toolkit-ui/Loading.d.ts +1 -2
- package/dist/admin-toolkit-ui/Loading.js +6 -6
- package/dist/admin-toolkit-ui/ModerationControl/AddUserInput.d.ts +1 -2
- package/dist/admin-toolkit-ui/ModerationControl/AddUserInput.js +8 -8
- package/dist/admin-toolkit-ui/ModerationControl/BanUserDescription.d.ts +1 -5
- package/dist/admin-toolkit-ui/ModerationControl/BanUserDescription.js +4 -4
- package/dist/admin-toolkit-ui/ModerationControl/RemoveAdminConfirmation.d.ts +1 -2
- package/dist/admin-toolkit-ui/ModerationControl/RemoveAdminConfirmation.js +20 -20
- package/dist/admin-toolkit-ui/ModerationControl/UsersList.d.ts +1 -2
- package/dist/admin-toolkit-ui/ModerationControl/UsersList.js +15 -15
- package/dist/admin-toolkit-ui/ModerationControl/index.js +8 -10
- package/dist/admin-toolkit-ui/ModerationControl/styles/AddUserInputStyles.d.ts +2 -2
- package/dist/admin-toolkit-ui/ModerationControl/styles/AddUserInputStyles.js +20 -20
- package/dist/admin-toolkit-ui/ModerationControl/styles/ModerationControlStyles.d.ts +1 -1
- package/dist/admin-toolkit-ui/ModerationControl/styles/ModerationControlStyles.js +9 -9
- package/dist/admin-toolkit-ui/ModerationControl/styles/UsersListStyles.d.ts +1 -1
- package/dist/admin-toolkit-ui/ModerationControl/styles/UsersListStyles.js +45 -45
- package/dist/admin-toolkit-ui/RewardsControl.js +15 -17
- package/dist/admin-toolkit-ui/SmartItemsControl.js +19 -24
- package/dist/admin-toolkit-ui/TextAnnouncements.js +16 -18
- package/dist/admin-toolkit-ui/TextAnnouncementsControl.js +20 -22
- package/dist/admin-toolkit-ui/VideoControl/DclCast/DclCastInfo.d.ts +1 -2
- package/dist/admin-toolkit-ui/VideoControl/DclCast/DclCastInfo.js +14 -14
- package/dist/admin-toolkit-ui/VideoControl/DclCast/index.js +10 -12
- package/dist/admin-toolkit-ui/VideoControl/DclCast/styles.d.ts +1 -1
- package/dist/admin-toolkit-ui/VideoControl/DclCast/styles.js +38 -38
- package/dist/admin-toolkit-ui/VideoControl/LiveStream/DeleteStreamKey.d.ts +1 -2
- package/dist/admin-toolkit-ui/VideoControl/LiveStream/DeleteStreamKey.js +16 -16
- package/dist/admin-toolkit-ui/VideoControl/LiveStream/GenerateStreamKey.d.ts +1 -2
- package/dist/admin-toolkit-ui/VideoControl/LiveStream/GenerateStreamKey.js +10 -10
- package/dist/admin-toolkit-ui/VideoControl/LiveStream/ShowStreamKey.d.ts +1 -2
- package/dist/admin-toolkit-ui/VideoControl/LiveStream/ShowStreamKey.js +48 -48
- package/dist/admin-toolkit-ui/VideoControl/LiveStream/index.d.ts +1 -2
- package/dist/admin-toolkit-ui/VideoControl/LiveStream/index.js +9 -9
- package/dist/admin-toolkit-ui/VideoControl/VideoUrl.d.ts +1 -2
- package/dist/admin-toolkit-ui/VideoControl/VideoUrl.js +38 -38
- package/dist/admin-toolkit-ui/VideoControl/VolumeControl.js +28 -30
- package/dist/admin-toolkit-ui/VideoControl/index.js +29 -31
- package/dist/admin-toolkit-ui/index.d.ts +0 -1
- package/dist/admin-toolkit-ui/index.js +29 -31
- package/dist/bin/index.js +478 -595
- package/dist/ui.d.ts +0 -1
- package/dist/ui.js +24 -34
- package/package.json +1 -1
|
@@ -10,7 +10,7 @@ import { LIVEKIT_STREAM_SRC } from '../../definitions';
|
|
|
10
10
|
import { CONTENT_URL } from '../constants';
|
|
11
11
|
const VIDEO_PLAYER_HELP_URL = 'https://docs.decentraland.org/creator/scene-editor/interactivity/video-screen';
|
|
12
12
|
export const HELP_ICON = `${CONTENT_URL}/admin_toolkit/assets/icons/help.png`;
|
|
13
|
-
export function VideoControlURL({ engine,
|
|
13
|
+
export function VideoControlURL({ engine, video, entity, }) {
|
|
14
14
|
const [videoURL, setVideoURL] = ReactEcs.useState('');
|
|
15
15
|
ReactEcs.useEffect(() => {
|
|
16
16
|
const url = video?.src === LIVEKIT_STREAM_SRC ? '' : video?.src;
|
|
@@ -20,73 +20,73 @@ export function VideoControlURL({ engine, scaleFactor, video, entity, }) {
|
|
|
20
20
|
const isActive = video && isVideoUrl(video.src);
|
|
21
21
|
return (ReactEcs.createElement(UiEntity, { uiTransform: { flexDirection: 'column', width: '100%' } },
|
|
22
22
|
ReactEcs.createElement(UiEntity, { uiTransform: { width: '100%', justifyContent: 'space-between' } },
|
|
23
|
-
ReactEcs.createElement(Header, { iconSrc: ICONS.VIDEO_SOURCE, title: "Video URL"
|
|
23
|
+
ReactEcs.createElement(Header, { iconSrc: ICONS.VIDEO_SOURCE, title: "Video URL" }),
|
|
24
24
|
ReactEcs.createElement(UiEntity, { onMouseDown: () => openExternalUrl({ url: VIDEO_PLAYER_HELP_URL }), uiTransform: {
|
|
25
|
-
width: 25
|
|
26
|
-
height: 25
|
|
25
|
+
width: 25,
|
|
26
|
+
height: 25,
|
|
27
27
|
alignItems: 'center',
|
|
28
28
|
}, uiBackground: {
|
|
29
29
|
textureMode: 'stretch',
|
|
30
30
|
color: Color4.White(),
|
|
31
31
|
texture: { src: HELP_ICON },
|
|
32
32
|
} })),
|
|
33
|
-
ReactEcs.createElement(Label, { value: "Play videos from Vimeo by pasting a video URL below.", color: Color4.fromHexString('#A09BA8'), fontSize: 16
|
|
34
|
-
ReactEcs.createElement(Label, { value: "<b>Video URL<b>", color: Color4.White(), fontSize: 16
|
|
35
|
-
margin: { top: 16
|
|
33
|
+
ReactEcs.createElement(Label, { value: "Play videos from Vimeo by pasting a video URL below.", color: Color4.fromHexString('#A09BA8'), fontSize: 16 }),
|
|
34
|
+
ReactEcs.createElement(Label, { value: "<b>Video URL<b>", color: Color4.White(), fontSize: 16, uiTransform: {
|
|
35
|
+
margin: { top: 16, bottom: 8 },
|
|
36
36
|
} }),
|
|
37
|
-
ReactEcs.createElement(Input, { onChange: setVideoURL, value: videoURL, fontSize: 16
|
|
37
|
+
ReactEcs.createElement(Input, { onChange: setVideoURL, value: videoURL, fontSize: 16, textAlign: "middle-left", placeholder: "Paste your video URL", placeholderColor: Color4.create(160 / 255, 155 / 255, 168 / 255, 1), color: isActive ? Color4.Black() : Color4.fromHexString('#A09BA8'), uiBackground: { color: Color4.fromHexString('#FCFCFC') }, uiTransform: {
|
|
38
38
|
borderRadius: 12,
|
|
39
39
|
borderColor: Color4.White(),
|
|
40
40
|
width: '100%',
|
|
41
|
-
height: 80
|
|
41
|
+
height: 80,
|
|
42
42
|
} }),
|
|
43
43
|
ReactEcs.createElement(UiEntity, { uiTransform: {
|
|
44
44
|
width: '100%',
|
|
45
|
-
height: 40
|
|
45
|
+
height: 40,
|
|
46
46
|
flexDirection: 'row',
|
|
47
47
|
justifyContent: 'flex-end',
|
|
48
|
-
margin: { top: 10
|
|
48
|
+
margin: { top: 10 },
|
|
49
49
|
} },
|
|
50
|
-
video?.src && isVideoUrl(video.src) && (ReactEcs.createElement(Button, { id: "video_control_share_screen_clear", value: "<b>Deactivate</b>", variant: "text", fontSize: 16
|
|
51
|
-
margin: { right: 8
|
|
52
|
-
padding: { left: 8
|
|
50
|
+
video?.src && isVideoUrl(video.src) && (ReactEcs.createElement(Button, { id: "video_control_share_screen_clear", value: "<b>Deactivate</b>", variant: "text", fontSize: 16, color: Color4.White(), uiTransform: {
|
|
51
|
+
margin: { right: 8 },
|
|
52
|
+
padding: { left: 8, right: 8 },
|
|
53
53
|
}, onMouseDown: () => {
|
|
54
54
|
controls.setSource('');
|
|
55
55
|
} })),
|
|
56
56
|
(!videoURL || videoURL !== video?.src) && (ReactEcs.createElement(Button, { disabled: !isVideoUrl(videoURL), id: "video_control_share_screen_share", value: video?.src && videoURL !== video.src && video.src !== LIVEKIT_STREAM_SRC
|
|
57
57
|
? '<b>Update</b>'
|
|
58
58
|
: '<b>Activate</b>', labelTransform: {
|
|
59
|
-
margin: { left: 6
|
|
60
|
-
}, fontSize: 16
|
|
59
|
+
margin: { left: 6, right: 6 },
|
|
60
|
+
}, fontSize: 16, uiBackground: {
|
|
61
61
|
color: isVideoUrl(videoURL) ? COLORS.SUCCESS : Color4.fromHexString('#274431'),
|
|
62
62
|
}, color: Color4.Black(), onMouseDown: () => {
|
|
63
63
|
controls.setSource(videoURL);
|
|
64
64
|
} }))),
|
|
65
|
-
ReactEcs.createElement(Label, { value: "<b>Video Playback</b>", fontSize: 16
|
|
65
|
+
ReactEcs.createElement(Label, { value: "<b>Video Playback</b>", fontSize: 16, color: Color4.White(), uiTransform: { margin: { bottom: 10 } } }),
|
|
66
66
|
ReactEcs.createElement(UiEntity, { uiTransform: {
|
|
67
67
|
flexDirection: 'row',
|
|
68
68
|
width: '100%',
|
|
69
|
-
margin: { bottom: 10
|
|
69
|
+
margin: { bottom: 10 },
|
|
70
70
|
} },
|
|
71
|
-
ReactEcs.createElement(Button, { disabled: !isActive, id: "video_control_play", value: "<b>Play</b>", fontSize: 18
|
|
72
|
-
margin: { top: 0, right: 16
|
|
73
|
-
height: 42
|
|
74
|
-
minWidth: 69
|
|
71
|
+
ReactEcs.createElement(Button, { disabled: !isActive, id: "video_control_play", value: "<b>Play</b>", fontSize: 18, labelTransform: { margin: { right: 10 } }, uiTransform: {
|
|
72
|
+
margin: { top: 0, right: 16, bottom: 0, left: 0 },
|
|
73
|
+
height: 42,
|
|
74
|
+
minWidth: 69,
|
|
75
75
|
alignItems: 'center',
|
|
76
76
|
justifyContent: 'center',
|
|
77
77
|
padding: 0,
|
|
78
78
|
}, icon: ICONS.PLAY_BUTTON, iconTransform: {
|
|
79
|
-
width: 35
|
|
80
|
-
height: 35
|
|
79
|
+
width: 35,
|
|
80
|
+
height: 35,
|
|
81
81
|
}, onMouseDown: () => {
|
|
82
82
|
controls.play();
|
|
83
83
|
} }),
|
|
84
|
-
ReactEcs.createElement(Button, { disabled: !isActive, id: "video_control_pause", value: "<b>Pause</b>", fontSize: 18
|
|
85
|
-
margin: { left: 6
|
|
84
|
+
ReactEcs.createElement(Button, { disabled: !isActive, id: "video_control_pause", value: "<b>Pause</b>", fontSize: 18, labelTransform: {
|
|
85
|
+
margin: { left: 6, right: 6 },
|
|
86
86
|
}, uiTransform: {
|
|
87
|
-
margin: { top: 0, right: 16
|
|
88
|
-
height: 42
|
|
89
|
-
minWidth: 78
|
|
87
|
+
margin: { top: 0, right: 16, bottom: 0, left: 0 },
|
|
88
|
+
height: 42,
|
|
89
|
+
minWidth: 78,
|
|
90
90
|
alignItems: 'center',
|
|
91
91
|
justifyContent: 'center',
|
|
92
92
|
padding: 0,
|
|
@@ -94,11 +94,11 @@ export function VideoControlURL({ engine, scaleFactor, video, entity, }) {
|
|
|
94
94
|
controls.pause();
|
|
95
95
|
} }),
|
|
96
96
|
ReactEcs.createElement(Button, { disabled: !isActive, id: "video_control_restart", value: "<b>Restart</b>", labelTransform: {
|
|
97
|
-
margin: { left: 6
|
|
98
|
-
}, fontSize: 18
|
|
99
|
-
margin: { top: 0, right: 16
|
|
100
|
-
height: 42
|
|
101
|
-
minWidth: 88
|
|
97
|
+
margin: { left: 6, right: 6 },
|
|
98
|
+
}, fontSize: 18, uiTransform: {
|
|
99
|
+
margin: { top: 0, right: 16, bottom: 0, left: 0 },
|
|
100
|
+
height: 42,
|
|
101
|
+
minWidth: 88,
|
|
102
102
|
alignItems: 'center',
|
|
103
103
|
justifyContent: 'center',
|
|
104
104
|
padding: 0,
|
|
@@ -106,16 +106,16 @@ export function VideoControlURL({ engine, scaleFactor, video, entity, }) {
|
|
|
106
106
|
controls.restart();
|
|
107
107
|
} }),
|
|
108
108
|
ReactEcs.createElement(Button, { disabled: !isActive, id: "video_control_loop", onlyIcon: true, variant: video?.loop ? 'primary' : 'secondary', uiTransform: {
|
|
109
|
-
height: 42
|
|
110
|
-
width: 49
|
|
109
|
+
height: 42,
|
|
110
|
+
width: 49,
|
|
111
111
|
alignItems: 'center',
|
|
112
112
|
justifyContent: 'center',
|
|
113
113
|
padding: 0,
|
|
114
|
-
}, icon: ICONS.LOOP, iconTransform: { width: 25
|
|
114
|
+
}, icon: ICONS.LOOP, iconTransform: { width: 25, height: 25 }, iconBackground: {
|
|
115
115
|
color: !video?.loop ? Color4.White() : Color4.Black(),
|
|
116
116
|
}, color: Color4.White(), onMouseDown: () => {
|
|
117
117
|
controls.setLoop(!video?.loop);
|
|
118
118
|
} })),
|
|
119
119
|
ReactEcs.createElement(VideoControlVolume, { engine: engine, entity: entity, video: video, label: "<b>Video Volume</b>" })));
|
|
120
120
|
}
|
|
121
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVmlkZW9VcmwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYWRtaW4tdG9vbGtpdC11aS9WaWRlb0NvbnRyb2wvVmlkZW9VcmwudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkMsT0FBTyxRQUFRLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sR0FBRyxDQUFDO0FBQ2xDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxVQUFVLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDaEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDckQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNuQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ25DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRTNDLE1BQU0scUJBQXFCLEdBQ3pCLCtFQUErRSxDQUFDO0FBQ2xGLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxHQUFHLFdBQVcsc0NBQXNDLENBQUM7QUFFOUUsTUFBTSxVQUFVLGVBQWUsQ0FBQyxFQUM5QixNQUFNLEVBQ04sV0FBVyxFQUNYLEtBQUssRUFDTCxNQUFNLEdBTVA7SUFDQyxNQUFNLENBQUMsUUFBUSxFQUFFLFdBQVcsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDdEQsUUFBUSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7UUFDdEIsTUFBTSxHQUFHLEdBQUcsS0FBSyxFQUFFLEdBQUcsS0FBSyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDO1FBQ2hFLFdBQVcsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLENBQUM7SUFDekIsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUNiLE1BQU0sUUFBUSxHQUFHLHlCQUF5QixDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMzRCxNQUFNLFFBQVEsR0FBRyxLQUFLLElBQUksVUFBVSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNoRCxPQUFPLENBQ0wsdUJBQUMsUUFBUSxJQUFDLFdBQVcsRUFBRSxFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRTtRQUMvRCx1QkFBQyxRQUFRLElBQUMsV0FBVyxFQUFFLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsZUFBZSxFQUFFO1lBQ3ZFLHVCQUFDLE1BQU0sSUFDTCxPQUFPLEVBQUUsS0FBSyxDQUFDLFlBQVksRUFDM0IsS0FBSyxFQUFDLFdBQVcsRUFDakIsV0FBVyxFQUFFLFdBQVcsR0FDeEI7WUFDRix1QkFBQyxRQUFRLElBQ1AsV0FBVyxFQUFFLEdBQUcsRUFBRSxDQUFDLGVBQWUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxxQkFBcUIsRUFBRSxDQUFDLEVBQ2xFLFdBQVcsRUFBRTtvQkFDWCxLQUFLLEVBQUUsRUFBRSxHQUFHLFdBQVc7b0JBQ3ZCLE1BQU0sRUFBRSxFQUFFLEdBQUcsV0FBVztvQkFDeEIsVUFBVSxFQUFFLFFBQVE7aUJBQ3JCLEVBQ0QsWUFBWSxFQUFFO29CQUNaLFdBQVcsRUFBRSxTQUFTO29CQUN0QixLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUssRUFBRTtvQkFDckIsT0FBTyxFQUFFLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRTtpQkFDNUIsR0FDRCxDQUNPO1FBQ1gsdUJBQUMsS0FBSyxJQUNKLEtBQUssRUFBQyxzREFBc0QsRUFDNUQsS0FBSyxFQUFFLE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLEVBQ3RDLFFBQVEsRUFBRSxFQUFFLEdBQUcsV0FBVyxHQUMxQjtRQUNGLHVCQUFDLEtBQUssSUFDSixLQUFLLEVBQUMsaUJBQWlCLEVBQ3ZCLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSyxFQUFFLEVBQ3JCLFFBQVEsRUFBRSxFQUFFLEdBQUcsV0FBVyxFQUMxQixXQUFXLEVBQUU7Z0JBQ1gsTUFBTSxFQUFFLEVBQUUsR0FBRyxFQUFFLEVBQUUsR0FBRyxXQUFXLEVBQUUsTUFBTSxFQUFFLENBQUMsR0FBRyxXQUFXLEVBQUU7YUFDM0QsR0FDRDtRQUVGLHVCQUFDLEtBQUssSUFDSixRQUFRLEVBQUUsV0FBVyxFQUNyQixLQUFLLEVBQUUsUUFBUSxFQUNmLFFBQVEsRUFBRSxFQUFFLEdBQUcsV0FBVyxFQUMxQixTQUFTLEVBQUMsYUFBYSxFQUN2QixXQUFXLEVBQUMsc0JBQXNCLEVBQ2xDLGdCQUFnQixFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxHQUFHLEdBQUcsRUFBRSxHQUFHLEdBQUcsR0FBRyxFQUFFLEdBQUcsR0FBRyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEVBQ25FLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsRUFDbEUsWUFBWSxFQUFFLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLEVBQUUsRUFDeEQsV0FBVyxFQUFFO2dCQUNYLFlBQVksRUFBRSxFQUFFO2dCQUNoQixXQUFXLEVBQUUsTUFBTSxDQUFDLEtBQUssRUFBRTtnQkFDM0IsS0FBSyxFQUFFLE1BQU07Z0JBQ2IsTUFBTSxFQUFFLEVBQUUsR0FBRyxXQUFXO2FBQ3pCLEdBQ0Q7UUFFRix1QkFBQyxRQUFRLElBQ1AsV0FBVyxFQUFFO2dCQUNYLEtBQUssRUFBRSxNQUFNO2dCQUNiLE1BQU0sRUFBRSxFQUFFLEdBQUcsV0FBVztnQkFDeEIsYUFBYSxFQUFFLEtBQUs7Z0JBQ3BCLGNBQWMsRUFBRSxVQUFVO2dCQUMxQixNQUFNLEVBQUUsRUFBRSxHQUFHLEVBQUUsRUFBRSxHQUFHLFdBQVcsRUFBRTthQUNsQztZQUVBLEtBQUssRUFBRSxHQUFHLElBQUksVUFBVSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUN0Qyx1QkFBQyxNQUFNLElBQ0wsRUFBRSxFQUFDLGtDQUFrQyxFQUNyQyxLQUFLLEVBQUMsbUJBQW1CLEVBQ3pCLE9BQU8sRUFBQyxNQUFNLEVBQ2QsUUFBUSxFQUFFLEVBQUUsR0FBRyxXQUFXLEVBQzFCLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSyxFQUFFLEVBQ3JCLFdBQVcsRUFBRTtvQkFDWCxNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxHQUFHLFdBQVcsRUFBRTtvQkFDbEMsT0FBTyxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsR0FBRyxXQUFXLEVBQUUsS0FBSyxFQUFFLENBQUMsR0FBRyxXQUFXLEVBQUU7aUJBQzNELEVBQ0QsV0FBVyxFQUFFLEdBQUcsRUFBRTtvQkFDaEIsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDekIsQ0FBQyxHQUNELENBQ0g7WUFDQSxDQUFDLENBQUMsUUFBUSxJQUFJLFFBQVEsS0FBSyxLQUFLLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FDekMsdUJBQUMsTUFBTSxJQUNMLFFBQVEsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsRUFDL0IsRUFBRSxFQUFDLGtDQUFrQyxFQUNyQyxLQUFLLEVBQ0gsS0FBSyxFQUFFLEdBQUcsSUFBSSxRQUFRLEtBQUssS0FBSyxDQUFDLEdBQUcsSUFBSSxLQUFLLENBQUMsR0FBRyxLQUFLLGtCQUFrQjtvQkFDdEUsQ0FBQyxDQUFDLGVBQWU7b0JBQ2pCLENBQUMsQ0FBQyxpQkFBaUIsRUFFdkIsY0FBYyxFQUFFO29CQUNkLE1BQU0sRUFBRSxFQUFFLElBQUksRUFBRSxDQUFDLEdBQUcsV0FBVyxFQUFFLEtBQUssRUFBRSxDQUFDLEdBQUcsV0FBVyxFQUFFO2lCQUMxRCxFQUNELFFBQVEsRUFBRSxFQUFFLEdBQUcsV0FBVyxFQUMxQixZQUFZLEVBQUU7b0JBQ1osS0FBSyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUM7aUJBQy9FLEVBQ0QsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFDckIsV0FBVyxFQUFFLEdBQUcsRUFBRTtvQkFDaEIsUUFBUSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDL0IsQ0FBQyxHQUNELENBQ0gsQ0FDUTtRQUVYLHVCQUFDLEtBQUssSUFDSixLQUFLLEVBQUMsdUJBQXVCLEVBQzdCLFFBQVEsRUFBRSxFQUFFLEdBQUcsV0FBVyxFQUMxQixLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUssRUFBRSxFQUNyQixXQUFXLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxHQUFHLFdBQVcsRUFBRSxFQUFFLEdBQ3JEO1FBRUYsdUJBQUMsUUFBUSxJQUNQLFdBQVcsRUFBRTtnQkFDWCxhQUFhLEVBQUUsS0FBSztnQkFDcEIsS0FBSyxFQUFFLE1BQU07Z0JBQ2IsTUFBTSxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsR0FBRyxXQUFXLEVBQUU7YUFDckM7WUFFRCx1QkFBQyxNQUFNLElBQ0wsUUFBUSxFQUFFLENBQUMsUUFBUSxFQUNuQixFQUFFLEVBQUMsb0JBQW9CLEVBQ3ZCLEtBQUssRUFBQyxhQUFhLEVBQ25CLFFBQVEsRUFBRSxFQUFFLEdBQUcsV0FBVyxFQUMxQixjQUFjLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxHQUFHLFdBQVcsRUFBRSxFQUFFLEVBQ3ZELFdBQVcsRUFBRTtvQkFDWCxNQUFNLEVBQUUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEdBQUcsV0FBVyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRTtvQkFDL0QsTUFBTSxFQUFFLEVBQUUsR0FBRyxXQUFXO29CQUN4QixRQUFRLEVBQUUsRUFBRSxHQUFHLFdBQVc7b0JBQzFCLFVBQVUsRUFBRSxRQUFRO29CQUNwQixjQUFjLEVBQUUsUUFBUTtvQkFDeEIsT0FBTyxFQUFFLENBQUM7aUJBQ1gsRUFDRCxJQUFJLEVBQUUsS0FBSyxDQUFDLFdBQVcsRUFDdkIsYUFBYSxFQUFFO29CQUNiLEtBQUssRUFBRSxFQUFFLEdBQUcsV0FBVztvQkFDdkIsTUFBTSxFQUFFLEVBQUUsR0FBRyxXQUFXO2lCQUN6QixFQUNELFdBQVcsRUFBRSxHQUFHLEVBQUU7b0JBQ2hCLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDbEIsQ0FBQyxHQUNEO1lBQ0YsdUJBQUMsTUFBTSxJQUNMLFFBQVEsRUFBRSxDQUFDLFFBQVEsRUFDbkIsRUFBRSxFQUFDLHFCQUFxQixFQUN4QixLQUFLLEVBQUMsY0FBYyxFQUNwQixRQUFRLEVBQUUsRUFBRSxHQUFHLFdBQVcsRUFDMUIsY0FBYyxFQUFFO29CQUNkLE1BQU0sRUFBRSxFQUFFLElBQUksRUFBRSxDQUFDLEdBQUcsV0FBVyxFQUFFLEtBQUssRUFBRSxDQUFDLEdBQUcsV0FBVyxFQUFFO2lCQUMxRCxFQUNELFdBQVcsRUFBRTtvQkFDWCxNQUFNLEVBQUUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEdBQUcsV0FBVyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRTtvQkFDL0QsTUFBTSxFQUFFLEVBQUUsR0FBRyxXQUFXO29CQUN4QixRQUFRLEVBQUUsRUFBRSxHQUFHLFdBQVc7b0JBQzFCLFVBQVUsRUFBRSxRQUFRO29CQUNwQixjQUFjLEVBQUUsUUFBUTtvQkFDeEIsT0FBTyxFQUFFLENBQUM7aUJBQ1gsRUFDRCxXQUFXLEVBQUUsR0FBRyxFQUFFO29CQUNoQixRQUFRLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ25CLENBQUMsR0FDRDtZQUNGLHVCQUFDLE1BQU0sSUFDTCxRQUFRLEVBQUUsQ0FBQyxRQUFRLEVBQ25CLEVBQUUsRUFBQyx1QkFBdUIsRUFDMUIsS0FBSyxFQUFDLGdCQUFnQixFQUN0QixjQUFjLEVBQUU7b0JBQ2QsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsR0FBRyxXQUFXLEVBQUUsS0FBSyxFQUFFLENBQUMsR0FBRyxXQUFXLEVBQUU7aUJBQzFELEVBQ0QsUUFBUSxFQUFFLEVBQUUsR0FBRyxXQUFXLEVBQzFCLFdBQVcsRUFBRTtvQkFDWCxNQUFNLEVBQUUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEdBQUcsV0FBVyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRTtvQkFDL0QsTUFBTSxFQUFFLEVBQUUsR0FBRyxXQUFXO29CQUN4QixRQUFRLEVBQUUsRUFBRSxHQUFHLFdBQVc7b0JBQzFCLFVBQVUsRUFBRSxRQUFRO29CQUNwQixjQUFjLEVBQUUsUUFBUTtvQkFDeEIsT0FBTyxFQUFFLENBQUM7aUJBQ1gsRUFDRCxXQUFXLEVBQUUsR0FBRyxFQUFFO29CQUNoQixRQUFRLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ3JCLENBQUMsR0FDRDtZQUNGLHVCQUFDLE1BQU0sSUFDTCxRQUFRLEVBQUUsQ0FBQyxRQUFRLEVBQ25CLEVBQUUsRUFBQyxvQkFBb0IsRUFDdkIsUUFBUSxRQUNSLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFDOUMsV0FBVyxFQUFFO29CQUNYLE1BQU0sRUFBRSxFQUFFLEdBQUcsV0FBVztvQkFDeEIsS0FBSyxFQUFFLEVBQUUsR0FBRyxXQUFXO29CQUN2QixVQUFVLEVBQUUsUUFBUTtvQkFDcEIsY0FBYyxFQUFFLFFBQVE7b0JBQ3hCLE9BQU8sRUFBRSxDQUFDO2lCQUNYLEVBQ0QsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJLEVBQ2hCLGFBQWEsRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLEdBQUcsV0FBVyxFQUFFLE1BQU0sRUFBRSxFQUFFLEdBQUcsV0FBVyxFQUFFLEVBQ3BFLGNBQWMsRUFBRTtvQkFDZCxLQUFLLEVBQUUsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUU7aUJBQ3RELEVBQ0QsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFDckIsV0FBVyxFQUFFLEdBQUcsRUFBRTtvQkFDaEIsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztnQkFDakMsQ0FBQyxHQUNELENBQ087UUFDWCx1QkFBQyxrQkFBa0IsSUFDakIsTUFBTSxFQUFFLE1BQU0sRUFDZCxNQUFNLEVBQUUsTUFBTSxFQUNkLEtBQUssRUFBRSxLQUFLLEVBQ1osS0FBSyxFQUFDLHFCQUFxQixHQUMzQixDQUNPLENBQ1osQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2xvcjQgfSBmcm9tICdAZGNsL3Nkay9tYXRoJztcbmltcG9ydCB7IERlZXBSZWFkb25seU9iamVjdCwgSUVuZ2luZSwgUEJWaWRlb1BsYXllciwgRW50aXR5IH0gZnJvbSAnQGRjbC9lY3MnO1xuaW1wb3J0IFJlYWN0RWNzLCB7IFVpRW50aXR5LCBJbnB1dCwgTGFiZWwgfSBmcm9tICdAZGNsL3JlYWN0LWVjcyc7XG5pbXBvcnQgeyBDT0xPUlMsIElDT05TIH0gZnJvbSAnLic7XG5pbXBvcnQgeyBjcmVhdGVWaWRlb1BsYXllckNvbnRyb2xzLCBpc1ZpZGVvVXJsIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBWaWRlb0NvbnRyb2xWb2x1bWUgfSBmcm9tICcuL1ZvbHVtZUNvbnRyb2wnO1xuaW1wb3J0IHsgQnV0dG9uIH0gZnJvbSAnLi4vQnV0dG9uJztcbmltcG9ydCB7IEhlYWRlciB9IGZyb20gJy4uL0hlYWRlcic7XG5pbXBvcnQgeyBvcGVuRXh0ZXJuYWxVcmwgfSBmcm9tICd+c3lzdGVtL1Jlc3RyaWN0ZWRBY3Rpb25zJztcbmltcG9ydCB7IExJVkVLSVRfU1RSRUFNX1NSQyB9IGZyb20gJy4uLy4uL2RlZmluaXRpb25zJztcbmltcG9ydCB7IENPTlRFTlRfVVJMIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcblxuY29uc3QgVklERU9fUExBWUVSX0hFTFBfVVJMID1cbiAgJ2h0dHBzOi8vZG9jcy5kZWNlbnRyYWxhbmQub3JnL2NyZWF0b3Ivc2NlbmUtZWRpdG9yL2ludGVyYWN0aXZpdHkvdmlkZW8tc2NyZWVuJztcbmV4cG9ydCBjb25zdCBIRUxQX0lDT04gPSBgJHtDT05URU5UX1VSTH0vYWRtaW5fdG9vbGtpdC9hc3NldHMvaWNvbnMvaGVscC5wbmdgO1xuXG5leHBvcnQgZnVuY3Rpb24gVmlkZW9Db250cm9sVVJMKHtcbiAgZW5naW5lLFxuICBzY2FsZUZhY3RvcixcbiAgdmlkZW8sXG4gIGVudGl0eSxcbn06IHtcbiAgZW5naW5lOiBJRW5naW5lO1xuICBzY2FsZUZhY3RvcjogbnVtYmVyO1xuICBlbnRpdHk6IEVudGl0eTtcbiAgdmlkZW86IERlZXBSZWFkb25seU9iamVjdDxQQlZpZGVvUGxheWVyPiB8IHVuZGVmaW5lZDtcbn0pIHtcbiAgY29uc3QgW3ZpZGVvVVJMLCBzZXRWaWRlb1VSTF0gPSBSZWFjdEVjcy51c2VTdGF0ZSgnJyk7XG4gIFJlYWN0RWNzLnVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgdXJsID0gdmlkZW8/LnNyYyA9PT0gTElWRUtJVF9TVFJFQU1fU1JDID8gJycgOiB2aWRlbz8uc3JjO1xuICAgIHNldFZpZGVvVVJMKHVybCA/PyAnJyk7XG4gIH0sIFtlbnRpdHldKTtcbiAgY29uc3QgY29udHJvbHMgPSBjcmVhdGVWaWRlb1BsYXllckNvbnRyb2xzKGVudGl0eSwgZW5naW5lKTtcbiAgY29uc3QgaXNBY3RpdmUgPSB2aWRlbyAmJiBpc1ZpZGVvVXJsKHZpZGVvLnNyYyk7XG4gIHJldHVybiAoXG4gICAgPFVpRW50aXR5IHVpVHJhbnNmb3JtPXt7IGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLCB3aWR0aDogJzEwMCUnIH19PlxuICAgICAgPFVpRW50aXR5IHVpVHJhbnNmb3JtPXt7IHdpZHRoOiAnMTAwJScsIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicgfX0+XG4gICAgICAgIDxIZWFkZXJcbiAgICAgICAgICBpY29uU3JjPXtJQ09OUy5WSURFT19TT1VSQ0V9XG4gICAgICAgICAgdGl0bGU9XCJWaWRlbyBVUkxcIlxuICAgICAgICAgIHNjYWxlRmFjdG9yPXtzY2FsZUZhY3Rvcn1cbiAgICAgICAgLz5cbiAgICAgICAgPFVpRW50aXR5XG4gICAgICAgICAgb25Nb3VzZURvd249eygpID0+IG9wZW5FeHRlcm5hbFVybCh7IHVybDogVklERU9fUExBWUVSX0hFTFBfVVJMIH0pfVxuICAgICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgICB3aWR0aDogMjUgKiBzY2FsZUZhY3RvcixcbiAgICAgICAgICAgIGhlaWdodDogMjUgKiBzY2FsZUZhY3RvcixcbiAgICAgICAgICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgICAgICAgIH19XG4gICAgICAgICAgdWlCYWNrZ3JvdW5kPXt7XG4gICAgICAgICAgICB0ZXh0dXJlTW9kZTogJ3N0cmV0Y2gnLFxuICAgICAgICAgICAgY29sb3I6IENvbG9yNC5XaGl0ZSgpLFxuICAgICAgICAgICAgdGV4dHVyZTogeyBzcmM6IEhFTFBfSUNPTiB9LFxuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICA8L1VpRW50aXR5PlxuICAgICAgPExhYmVsXG4gICAgICAgIHZhbHVlPVwiUGxheSB2aWRlb3MgZnJvbSBWaW1lbyBieSBwYXN0aW5nIGEgdmlkZW8gVVJMIGJlbG93LlwiXG4gICAgICAgIGNvbG9yPXtDb2xvcjQuZnJvbUhleFN0cmluZygnI0EwOUJBOCcpfVxuICAgICAgICBmb250U2l6ZT17MTYgKiBzY2FsZUZhY3Rvcn1cbiAgICAgIC8+XG4gICAgICA8TGFiZWxcbiAgICAgICAgdmFsdWU9XCI8Yj5WaWRlbyBVUkw8Yj5cIlxuICAgICAgICBjb2xvcj17Q29sb3I0LldoaXRlKCl9XG4gICAgICAgIGZvbnRTaXplPXsxNiAqIHNjYWxlRmFjdG9yfVxuICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgIG1hcmdpbjogeyB0b3A6IDE2ICogc2NhbGVGYWN0b3IsIGJvdHRvbTogOCAqIHNjYWxlRmFjdG9yIH0sXG4gICAgICAgIH19XG4gICAgICAvPlxuXG4gICAgICA8SW5wdXRcbiAgICAgICAgb25DaGFuZ2U9e3NldFZpZGVvVVJMfVxuICAgICAgICB2YWx1ZT17dmlkZW9VUkx9XG4gICAgICAgIGZvbnRTaXplPXsxNiAqIHNjYWxlRmFjdG9yfVxuICAgICAgICB0ZXh0QWxpZ249XCJtaWRkbGUtbGVmdFwiXG4gICAgICAgIHBsYWNlaG9sZGVyPVwiUGFzdGUgeW91ciB2aWRlbyBVUkxcIlxuICAgICAgICBwbGFjZWhvbGRlckNvbG9yPXtDb2xvcjQuY3JlYXRlKDE2MCAvIDI1NSwgMTU1IC8gMjU1LCAxNjggLyAyNTUsIDEpfVxuICAgICAgICBjb2xvcj17aXNBY3RpdmUgPyBDb2xvcjQuQmxhY2soKSA6IENvbG9yNC5mcm9tSGV4U3RyaW5nKCcjQTA5QkE4Jyl9XG4gICAgICAgIHVpQmFja2dyb3VuZD17eyBjb2xvcjogQ29sb3I0LmZyb21IZXhTdHJpbmcoJyNGQ0ZDRkMnKSB9fVxuICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgIGJvcmRlclJhZGl1czogMTIsXG4gICAgICAgICAgYm9yZGVyQ29sb3I6IENvbG9yNC5XaGl0ZSgpLFxuICAgICAgICAgIHdpZHRoOiAnMTAwJScsXG4gICAgICAgICAgaGVpZ2h0OiA4MCAqIHNjYWxlRmFjdG9yLFxuICAgICAgICB9fVxuICAgICAgLz5cblxuICAgICAgPFVpRW50aXR5XG4gICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgd2lkdGg6ICcxMDAlJyxcbiAgICAgICAgICBoZWlnaHQ6IDQwICogc2NhbGVGYWN0b3IsXG4gICAgICAgICAgZmxleERpcmVjdGlvbjogJ3JvdycsXG4gICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdmbGV4LWVuZCcsXG4gICAgICAgICAgbWFyZ2luOiB7IHRvcDogMTAgKiBzY2FsZUZhY3RvciB9LFxuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICB7dmlkZW8/LnNyYyAmJiBpc1ZpZGVvVXJsKHZpZGVvLnNyYykgJiYgKFxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIGlkPVwidmlkZW9fY29udHJvbF9zaGFyZV9zY3JlZW5fY2xlYXJcIlxuICAgICAgICAgICAgdmFsdWU9XCI8Yj5EZWFjdGl2YXRlPC9iPlwiXG4gICAgICAgICAgICB2YXJpYW50PVwidGV4dFwiXG4gICAgICAgICAgICBmb250U2l6ZT17MTYgKiBzY2FsZUZhY3Rvcn1cbiAgICAgICAgICAgIGNvbG9yPXtDb2xvcjQuV2hpdGUoKX1cbiAgICAgICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgICAgIG1hcmdpbjogeyByaWdodDogOCAqIHNjYWxlRmFjdG9yIH0sXG4gICAgICAgICAgICAgIHBhZGRpbmc6IHsgbGVmdDogOCAqIHNjYWxlRmFjdG9yLCByaWdodDogOCAqIHNjYWxlRmFjdG9yIH0sXG4gICAgICAgICAgICB9fVxuICAgICAgICAgICAgb25Nb3VzZURvd249eygpID0+IHtcbiAgICAgICAgICAgICAgY29udHJvbHMuc2V0U291cmNlKCcnKTtcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgICAgeyghdmlkZW9VUkwgfHwgdmlkZW9VUkwgIT09IHZpZGVvPy5zcmMpICYmIChcbiAgICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgICBkaXNhYmxlZD17IWlzVmlkZW9VcmwodmlkZW9VUkwpfVxuICAgICAgICAgICAgaWQ9XCJ2aWRlb19jb250cm9sX3NoYXJlX3NjcmVlbl9zaGFyZVwiXG4gICAgICAgICAgICB2YWx1ZT17XG4gICAgICAgICAgICAgIHZpZGVvPy5zcmMgJiYgdmlkZW9VUkwgIT09IHZpZGVvLnNyYyAmJiB2aWRlby5zcmMgIT09IExJVkVLSVRfU1RSRUFNX1NSQ1xuICAgICAgICAgICAgICAgID8gJzxiPlVwZGF0ZTwvYj4nXG4gICAgICAgICAgICAgICAgOiAnPGI+QWN0aXZhdGU8L2I+J1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGFiZWxUcmFuc2Zvcm09e3tcbiAgICAgICAgICAgICAgbWFyZ2luOiB7IGxlZnQ6IDYgKiBzY2FsZUZhY3RvciwgcmlnaHQ6IDYgKiBzY2FsZUZhY3RvciB9LFxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIGZvbnRTaXplPXsxNiAqIHNjYWxlRmFjdG9yfVxuICAgICAgICAgICAgdWlCYWNrZ3JvdW5kPXt7XG4gICAgICAgICAgICAgIGNvbG9yOiBpc1ZpZGVvVXJsKHZpZGVvVVJMKSA/IENPTE9SUy5TVUNDRVNTIDogQ29sb3I0LmZyb21IZXhTdHJpbmcoJyMyNzQ0MzEnKSxcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgICBjb2xvcj17Q29sb3I0LkJsYWNrKCl9XG4gICAgICAgICAgICBvbk1vdXNlRG93bj17KCkgPT4ge1xuICAgICAgICAgICAgICBjb250cm9scy5zZXRTb3VyY2UodmlkZW9VUkwpO1xuICAgICAgICAgICAgfX1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgPC9VaUVudGl0eT5cblxuICAgICAgPExhYmVsXG4gICAgICAgIHZhbHVlPVwiPGI+VmlkZW8gUGxheWJhY2s8L2I+XCJcbiAgICAgICAgZm9udFNpemU9ezE2ICogc2NhbGVGYWN0b3J9XG4gICAgICAgIGNvbG9yPXtDb2xvcjQuV2hpdGUoKX1cbiAgICAgICAgdWlUcmFuc2Zvcm09e3sgbWFyZ2luOiB7IGJvdHRvbTogMTAgKiBzY2FsZUZhY3RvciB9IH19XG4gICAgICAvPlxuXG4gICAgICA8VWlFbnRpdHlcbiAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICBmbGV4RGlyZWN0aW9uOiAncm93JyxcbiAgICAgICAgICB3aWR0aDogJzEwMCUnLFxuICAgICAgICAgIG1hcmdpbjogeyBib3R0b206IDEwICogc2NhbGVGYWN0b3IgfSxcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPEJ1dHRvblxuICAgICAgICAgIGRpc2FibGVkPXshaXNBY3RpdmV9XG4gICAgICAgICAgaWQ9XCJ2aWRlb19jb250cm9sX3BsYXlcIlxuICAgICAgICAgIHZhbHVlPVwiPGI+UGxheTwvYj5cIlxuICAgICAgICAgIGZvbnRTaXplPXsxOCAqIHNjYWxlRmFjdG9yfVxuICAgICAgICAgIGxhYmVsVHJhbnNmb3JtPXt7IG1hcmdpbjogeyByaWdodDogMTAgKiBzY2FsZUZhY3RvciB9IH19XG4gICAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICAgIG1hcmdpbjogeyB0b3A6IDAsIHJpZ2h0OiAxNiAqIHNjYWxlRmFjdG9yLCBib3R0b206IDAsIGxlZnQ6IDAgfSxcbiAgICAgICAgICAgIGhlaWdodDogNDIgKiBzY2FsZUZhY3RvcixcbiAgICAgICAgICAgIG1pbldpZHRoOiA2OSAqIHNjYWxlRmFjdG9yLFxuICAgICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgICAgICBqdXN0aWZ5Q29udGVudDogJ2NlbnRlcicsXG4gICAgICAgICAgICBwYWRkaW5nOiAwLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWNvbj17SUNPTlMuUExBWV9CVVRUT059XG4gICAgICAgICAgaWNvblRyYW5zZm9ybT17e1xuICAgICAgICAgICAgd2lkdGg6IDM1ICogc2NhbGVGYWN0b3IsXG4gICAgICAgICAgICBoZWlnaHQ6IDM1ICogc2NhbGVGYWN0b3IsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBvbk1vdXNlRG93bj17KCkgPT4ge1xuICAgICAgICAgICAgY29udHJvbHMucGxheSgpO1xuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICAgIDxCdXR0b25cbiAgICAgICAgICBkaXNhYmxlZD17IWlzQWN0aXZlfVxuICAgICAgICAgIGlkPVwidmlkZW9fY29udHJvbF9wYXVzZVwiXG4gICAgICAgICAgdmFsdWU9XCI8Yj5QYXVzZTwvYj5cIlxuICAgICAgICAgIGZvbnRTaXplPXsxOCAqIHNjYWxlRmFjdG9yfVxuICAgICAgICAgIGxhYmVsVHJhbnNmb3JtPXt7XG4gICAgICAgICAgICBtYXJnaW46IHsgbGVmdDogNiAqIHNjYWxlRmFjdG9yLCByaWdodDogNiAqIHNjYWxlRmFjdG9yIH0sXG4gICAgICAgICAgfX1cbiAgICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgICAgbWFyZ2luOiB7IHRvcDogMCwgcmlnaHQ6IDE2ICogc2NhbGVGYWN0b3IsIGJvdHRvbTogMCwgbGVmdDogMCB9LFxuICAgICAgICAgICAgaGVpZ2h0OiA0MiAqIHNjYWxlRmFjdG9yLFxuICAgICAgICAgICAgbWluV2lkdGg6IDc4ICogc2NhbGVGYWN0b3IsXG4gICAgICAgICAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgICAgICAgICAgIGp1c3RpZnlDb250ZW50OiAnY2VudGVyJyxcbiAgICAgICAgICAgIHBhZGRpbmc6IDAsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBvbk1vdXNlRG93bj17KCkgPT4ge1xuICAgICAgICAgICAgY29udHJvbHMucGF1c2UoKTtcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgZGlzYWJsZWQ9eyFpc0FjdGl2ZX1cbiAgICAgICAgICBpZD1cInZpZGVvX2NvbnRyb2xfcmVzdGFydFwiXG4gICAgICAgICAgdmFsdWU9XCI8Yj5SZXN0YXJ0PC9iPlwiXG4gICAgICAgICAgbGFiZWxUcmFuc2Zvcm09e3tcbiAgICAgICAgICAgIG1hcmdpbjogeyBsZWZ0OiA2ICogc2NhbGVGYWN0b3IsIHJpZ2h0OiA2ICogc2NhbGVGYWN0b3IgfSxcbiAgICAgICAgICB9fVxuICAgICAgICAgIGZvbnRTaXplPXsxOCAqIHNjYWxlRmFjdG9yfVxuICAgICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgICBtYXJnaW46IHsgdG9wOiAwLCByaWdodDogMTYgKiBzY2FsZUZhY3RvciwgYm90dG9tOiAwLCBsZWZ0OiAwIH0sXG4gICAgICAgICAgICBoZWlnaHQ6IDQyICogc2NhbGVGYWN0b3IsXG4gICAgICAgICAgICBtaW5XaWR0aDogODggKiBzY2FsZUZhY3RvcixcbiAgICAgICAgICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxuICAgICAgICAgICAgcGFkZGluZzogMCxcbiAgICAgICAgICB9fVxuICAgICAgICAgIG9uTW91c2VEb3duPXsoKSA9PiB7XG4gICAgICAgICAgICBjb250cm9scy5yZXN0YXJ0KCk7XG4gICAgICAgICAgfX1cbiAgICAgICAgLz5cbiAgICAgICAgPEJ1dHRvblxuICAgICAgICAgIGRpc2FibGVkPXshaXNBY3RpdmV9XG4gICAgICAgICAgaWQ9XCJ2aWRlb19jb250cm9sX2xvb3BcIlxuICAgICAgICAgIG9ubHlJY29uXG4gICAgICAgICAgdmFyaWFudD17dmlkZW8/Lmxvb3AgPyAncHJpbWFyeScgOiAnc2Vjb25kYXJ5J31cbiAgICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgICAgaGVpZ2h0OiA0MiAqIHNjYWxlRmFjdG9yLFxuICAgICAgICAgICAgd2lkdGg6IDQ5ICogc2NhbGVGYWN0b3IsXG4gICAgICAgICAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgICAgICAgICAgIGp1c3RpZnlDb250ZW50OiAnY2VudGVyJyxcbiAgICAgICAgICAgIHBhZGRpbmc6IDAsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpY29uPXtJQ09OUy5MT09QfVxuICAgICAgICAgIGljb25UcmFuc2Zvcm09e3sgd2lkdGg6IDI1ICogc2NhbGVGYWN0b3IsIGhlaWdodDogMjUgKiBzY2FsZUZhY3RvciB9fVxuICAgICAgICAgIGljb25CYWNrZ3JvdW5kPXt7XG4gICAgICAgICAgICBjb2xvcjogIXZpZGVvPy5sb29wID8gQ29sb3I0LldoaXRlKCkgOiBDb2xvcjQuQmxhY2soKSxcbiAgICAgICAgICB9fVxuICAgICAgICAgIGNvbG9yPXtDb2xvcjQuV2hpdGUoKX1cbiAgICAgICAgICBvbk1vdXNlRG93bj17KCkgPT4ge1xuICAgICAgICAgICAgY29udHJvbHMuc2V0TG9vcCghdmlkZW8/Lmxvb3ApO1xuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICA8L1VpRW50aXR5PlxuICAgICAgPFZpZGVvQ29udHJvbFZvbHVtZVxuICAgICAgICBlbmdpbmU9e2VuZ2luZX1cbiAgICAgICAgZW50aXR5PXtlbnRpdHl9XG4gICAgICAgIHZpZGVvPXt2aWRlb31cbiAgICAgICAgbGFiZWw9XCI8Yj5WaWRlbyBWb2x1bWU8L2I+XCJcbiAgICAgIC8+XG4gICAgPC9VaUVudGl0eT5cbiAgKTtcbn1cbiJdfQ==
|
|
121
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVmlkZW9VcmwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYWRtaW4tdG9vbGtpdC11aS9WaWRlb0NvbnRyb2wvVmlkZW9VcmwudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkMsT0FBTyxRQUFRLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sR0FBRyxDQUFDO0FBQ2xDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxVQUFVLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDaEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDckQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNuQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ25DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRTNDLE1BQU0scUJBQXFCLEdBQ3pCLCtFQUErRSxDQUFDO0FBQ2xGLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxHQUFHLFdBQVcsc0NBQXNDLENBQUM7QUFFOUUsTUFBTSxVQUFVLGVBQWUsQ0FBQyxFQUM5QixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sR0FLUDtJQUNDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsV0FBVyxDQUFDLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN0RCxRQUFRLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtRQUN0QixNQUFNLEdBQUcsR0FBRyxL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S0FBSyxFQUFFLEtBQUssRUFDWixLQUFLLEVBQUMscUJBQXFCLEdBQzNCLENBQ08sQ0FDWixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbG9yNCB9IGZyb20gJ0BkY2wvc2RrL21hdGgnO1xuaW1wb3J0IHsgRGVlcFJlYWRvbmx5T2JqZWN0LCBJRW5naW5lLCBQQlZpZGVvUGxheWVyLCBFbnRpdHkgfSBmcm9tICdAZGNsL2Vjcyc7XG5pbXBvcnQgUmVhY3RFY3MsIHsgVWlFbnRpdHksIElucHV0LCBMYWJlbCB9IGZyb20gJ0BkY2wvcmVhY3QtZWNzJztcbmltcG9ydCB7IENPTE9SUywgSUNPTlMgfSBmcm9tICcuJztcbmltcG9ydCB7IGNyZWF0ZVZpZGVvUGxheWVyQ29udHJvbHMsIGlzVmlkZW9VcmwgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IFZpZGVvQ29udHJvbFZvbHVtZSB9IGZyb20gJy4vVm9sdW1lQ29udHJvbCc7XG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tICcuLi9CdXR0b24nO1xuaW1wb3J0IHsgSGVhZGVyIH0gZnJvbSAnLi4vSGVhZGVyJztcbmltcG9ydCB7IG9wZW5FeHRlcm5hbFVybCB9IGZyb20gJ35zeXN0ZW0vUmVzdHJpY3RlZEFjdGlvbnMnO1xuaW1wb3J0IHsgTElWRUtJVF9TVFJFQU1fU1JDIH0gZnJvbSAnLi4vLi4vZGVmaW5pdGlvbnMnO1xuaW1wb3J0IHsgQ09OVEVOVF9VUkwgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuXG5jb25zdCBWSURFT19QTEFZRVJfSEVMUF9VUkwgPVxuICAnaHR0cHM6Ly9kb2NzLmRlY2VudHJhbGFuZC5vcmcvY3JlYXRvci9zY2VuZS1lZGl0b3IvaW50ZXJhY3Rpdml0eS92aWRlby1zY3JlZW4nO1xuZXhwb3J0IGNvbnN0IEhFTFBfSUNPTiA9IGAke0NPTlRFTlRfVVJMfS9hZG1pbl90b29sa2l0L2Fzc2V0cy9pY29ucy9oZWxwLnBuZ2A7XG5cbmV4cG9ydCBmdW5jdGlvbiBWaWRlb0NvbnRyb2xVUkwoe1xuICBlbmdpbmUsXG4gIHZpZGVvLFxuICBlbnRpdHksXG59OiB7XG4gIGVuZ2luZTogSUVuZ2luZTtcbiAgZW50aXR5OiBFbnRpdHk7XG4gIHZpZGVvOiBEZWVwUmVhZG9ubHlPYmplY3Q8UEJWaWRlb1BsYXllcj4gfCB1bmRlZmluZWQ7XG59KSB7XG4gIGNvbnN0IFt2aWRlb1VSTCwgc2V0VmlkZW9VUkxdID0gUmVhY3RFY3MudXNlU3RhdGUoJycpO1xuICBSZWFjdEVjcy51c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IHVybCA9IHZpZGVvPy5zcmMgPT09IExJVkVLSVRfU1RSRUFNX1NSQyA/ICcnIDogdmlkZW8/LnNyYztcbiAgICBzZXRWaWRlb1VSTCh1cmwgPz8gJycpO1xuICB9LCBbZW50aXR5XSk7XG4gIGNvbnN0IGNvbnRyb2xzID0gY3JlYXRlVmlkZW9QbGF5ZXJDb250cm9scyhlbnRpdHksIGVuZ2luZSk7XG4gIGNvbnN0IGlzQWN0aXZlID0gdmlkZW8gJiYgaXNWaWRlb1VybCh2aWRlby5zcmMpO1xuICByZXR1cm4gKFxuICAgIDxVaUVudGl0eSB1aVRyYW5zZm9ybT17eyBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJywgd2lkdGg6ICcxMDAlJyB9fT5cbiAgICAgIDxVaUVudGl0eSB1aVRyYW5zZm9ybT17eyB3aWR0aDogJzEwMCUnLCBqdXN0aWZ5Q29udGVudDogJ3NwYWNlLWJldHdlZW4nIH19PlxuICAgICAgICA8SGVhZGVyXG4gICAgICAgICAgaWNvblNyYz17SUNPTlMuVklERU9fU09VUkNFfVxuICAgICAgICAgIHRpdGxlPVwiVmlkZW8gVVJMXCJcbiAgICAgICAgLz5cbiAgICAgICAgPFVpRW50aXR5XG4gICAgICAgICAgb25Nb3VzZURvd249eygpID0+IG9wZW5FeHRlcm5hbFVybCh7IHVybDogVklERU9fUExBWUVSX0hFTFBfVVJMIH0pfVxuICAgICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgICB3aWR0aDogMjUsXG4gICAgICAgICAgICBoZWlnaHQ6IDI1LFxuICAgICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgICAgfX1cbiAgICAgICAgICB1aUJhY2tncm91bmQ9e3tcbiAgICAgICAgICAgIHRleHR1cmVNb2RlOiAnc3RyZXRjaCcsXG4gICAgICAgICAgICBjb2xvcjogQ29sb3I0LldoaXRlKCksXG4gICAgICAgICAgICB0ZXh0dXJlOiB7IHNyYzogSEVMUF9JQ09OIH0sXG4gICAgICAgICAgfX1cbiAgICAgICAgLz5cbiAgICAgIDwvVWlFbnRpdHk+XG4gICAgICA8TGFiZWxcbiAgICAgICAgdmFsdWU9XCJQbGF5IHZpZGVvcyBmcm9tIFZpbWVvIGJ5IHBhc3RpbmcgYSB2aWRlbyBVUkwgYmVsb3cuXCJcbiAgICAgICAgY29sb3I9e0NvbG9yNC5mcm9tSGV4U3RyaW5nKCcjQTA5QkE4Jyl9XG4gICAgICAgIGZvbnRTaXplPXsxNn1cbiAgICAgIC8+XG4gICAgICA8TGFiZWxcbiAgICAgICAgdmFsdWU9XCI8Yj5WaWRlbyBVUkw8Yj5cIlxuICAgICAgICBjb2xvcj17Q29sb3I0LldoaXRlKCl9XG4gICAgICAgIGZvbnRTaXplPXsxNn1cbiAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICBtYXJnaW46IHsgdG9wOiAxNiwgYm90dG9tOiA4IH0sXG4gICAgICAgIH19XG4gICAgICAvPlxuXG4gICAgICA8SW5wdXRcbiAgICAgICAgb25DaGFuZ2U9e3NldFZpZGVvVVJMfVxuICAgICAgICB2YWx1ZT17dmlkZW9VUkx9XG4gICAgICAgIGZvbnRTaXplPXsxNn1cbiAgICAgICAgdGV4dEFsaWduPVwibWlkZGxlLWxlZnRcIlxuICAgICAgICBwbGFjZWhvbGRlcj1cIlBhc3RlIHlvdXIgdmlkZW8gVVJMXCJcbiAgICAgICAgcGxhY2Vob2xkZXJDb2xvcj17Q29sb3I0LmNyZWF0ZSgxNjAgLyAyNTUsIDE1NSAvIDI1NSwgMTY4IC8gMjU1LCAxKX1cbiAgICAgICAgY29sb3I9e2lzQWN0aXZlID8gQ29sb3I0LkJsYWNrKCkgOiBDb2xvcjQuZnJvbUhleFN0cmluZygnI0EwOUJBOCcpfVxuICAgICAgICB1aUJhY2tncm91bmQ9e3sgY29sb3I6IENvbG9yNC5mcm9tSGV4U3RyaW5nKCcjRkNGQ0ZDJykgfX1cbiAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICBib3JkZXJSYWRpdXM6IDEyLFxuICAgICAgICAgIGJvcmRlckNvbG9yOiBDb2xvcjQuV2hpdGUoKSxcbiAgICAgICAgICB3aWR0aDogJzEwMCUnLFxuICAgICAgICAgIGhlaWdodDogODAsXG4gICAgICAgIH19XG4gICAgICAvPlxuXG4gICAgICA8VWlFbnRpdHlcbiAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICB3aWR0aDogJzEwMCUnLFxuICAgICAgICAgIGhlaWdodDogNDAsXG4gICAgICAgICAgZmxleERpcmVjdGlvbjogJ3JvdycsXG4gICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdmbGV4LWVuZCcsXG4gICAgICAgICAgbWFyZ2luOiB7IHRvcDogMTAgfSxcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAge3ZpZGVvPy5zcmMgJiYgaXNWaWRlb1VybCh2aWRlby5zcmMpICYmIChcbiAgICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgICBpZD1cInZpZGVvX2NvbnRyb2xfc2hhcmVfc2NyZWVuX2NsZWFyXCJcbiAgICAgICAgICAgIHZhbHVlPVwiPGI+RGVhY3RpdmF0ZTwvYj5cIlxuICAgICAgICAgICAgdmFyaWFudD1cInRleHRcIlxuICAgICAgICAgICAgZm9udFNpemU9ezE2fVxuICAgICAgICAgICAgY29sb3I9e0NvbG9yNC5XaGl0ZSgpfVxuICAgICAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICAgICAgbWFyZ2luOiB7IHJpZ2h0OiA4IH0sXG4gICAgICAgICAgICAgIHBhZGRpbmc6IHsgbGVmdDogOCwgcmlnaHQ6IDggfSxcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgICBvbk1vdXNlRG93bj17KCkgPT4ge1xuICAgICAgICAgICAgICBjb250cm9scy5zZXRTb3VyY2UoJycpO1xuICAgICAgICAgICAgfX1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7KCF2aWRlb1VSTCB8fCB2aWRlb1VSTCAhPT0gdmlkZW8/LnNyYykgJiYgKFxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIGRpc2FibGVkPXshaXNWaWRlb1VybCh2aWRlb1VSTCl9XG4gICAgICAgICAgICBpZD1cInZpZGVvX2NvbnRyb2xfc2hhcmVfc2NyZWVuX3NoYXJlXCJcbiAgICAgICAgICAgIHZhbHVlPXtcbiAgICAgICAgICAgICAgdmlkZW8/LnNyYyAmJiB2aWRlb1VSTCAhPT0gdmlkZW8uc3JjICYmIHZpZGVvLnNyYyAhPT0gTElWRUtJVF9TVFJFQU1fU1JDXG4gICAgICAgICAgICAgICAgPyAnPGI+VXBkYXRlPC9iPidcbiAgICAgICAgICAgICAgICA6ICc8Yj5BY3RpdmF0ZTwvYj4nXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsYWJlbFRyYW5zZm9ybT17e1xuICAgICAgICAgICAgICBtYXJnaW46IHsgbGVmdDogNiwgcmlnaHQ6IDYgfSxcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgICBmb250U2l6ZT17MTZ9XG4gICAgICAgICAgICB1aUJhY2tncm91bmQ9e3tcbiAgICAgICAgICAgICAgY29sb3I6IGlzVmlkZW9VcmwodmlkZW9VUkwpID8gQ09MT1JTLlNVQ0NFU1MgOiBDb2xvcjQuZnJvbUhleFN0cmluZygnIzI3NDQzMScpLFxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIGNvbG9yPXtDb2xvcjQuQmxhY2soKX1cbiAgICAgICAgICAgIG9uTW91c2VEb3duPXsoKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnRyb2xzLnNldFNvdXJjZSh2aWRlb1VSTCk7XG4gICAgICAgICAgICB9fVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1VpRW50aXR5PlxuXG4gICAgICA8TGFiZWxcbiAgICAgICAgdmFsdWU9XCI8Yj5WaWRlbyBQbGF5YmFjazwvYj5cIlxuICAgICAgICBmb250U2l6ZT17MTZ9XG4gICAgICAgIGNvbG9yPXtDb2xvcjQuV2hpdGUoKX1cbiAgICAgICAgdWlUcmFuc2Zvcm09e3sgbWFyZ2luOiB7IGJvdHRvbTogMTAgfSB9fVxuICAgICAgLz5cblxuICAgICAgPFVpRW50aXR5XG4gICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgZmxleERpcmVjdGlvbjogJ3JvdycsXG4gICAgICAgICAgd2lkdGg6ICcxMDAlJyxcbiAgICAgICAgICBtYXJnaW46IHsgYm90dG9tOiAxMCB9LFxuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgZGlzYWJsZWQ9eyFpc0FjdGl2ZX1cbiAgICAgICAgICBpZD1cInZpZGVvX2NvbnRyb2xfcGxheVwiXG4gICAgICAgICAgdmFsdWU9XCI8Yj5QbGF5PC9iPlwiXG4gICAgICAgICAgZm9udFNpemU9ezE4fVxuICAgICAgICAgIGxhYmVsVHJhbnNmb3JtPXt7IG1hcmdpbjogeyByaWdodDogMTAgfSB9fVxuICAgICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgICBtYXJnaW46IHsgdG9wOiAwLCByaWdodDogMTYsIGJvdHRvbTogMCwgbGVmdDogMCB9LFxuICAgICAgICAgICAgaGVpZ2h0OiA0MixcbiAgICAgICAgICAgIG1pbldpZHRoOiA2OSxcbiAgICAgICAgICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxuICAgICAgICAgICAgcGFkZGluZzogMCxcbiAgICAgICAgICB9fVxuICAgICAgICAgIGljb249e0lDT05TLlBMQVlfQlVUVE9OfVxuICAgICAgICAgIGljb25UcmFuc2Zvcm09e3tcbiAgICAgICAgICAgIHdpZHRoOiAzNSxcbiAgICAgICAgICAgIGhlaWdodDogMzUsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBvbk1vdXNlRG93bj17KCkgPT4ge1xuICAgICAgICAgICAgY29udHJvbHMucGxheSgpO1xuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICAgIDxCdXR0b25cbiAgICAgICAgICBkaXNhYmxlZD17IWlzQWN0aXZlfVxuICAgICAgICAgIGlkPVwidmlkZW9fY29udHJvbF9wYXVzZVwiXG4gICAgICAgICAgdmFsdWU9XCI8Yj5QYXVzZTwvYj5cIlxuICAgICAgICAgIGZvbnRTaXplPXsxOH1cbiAgICAgICAgICBsYWJlbFRyYW5zZm9ybT17e1xuICAgICAgICAgICAgbWFyZ2luOiB7IGxlZnQ6IDYsIHJpZ2h0OiA2IH0sXG4gICAgICAgICAgfX1cbiAgICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgICAgbWFyZ2luOiB7IHRvcDogMCwgcmlnaHQ6IDE2LCBib3R0b206IDAsIGxlZnQ6IDAgfSxcbiAgICAgICAgICAgIGhlaWdodDogNDIsXG4gICAgICAgICAgICBtaW5XaWR0aDogNzgsXG4gICAgICAgICAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgICAgICAgICAgIGp1c3RpZnlDb250ZW50OiAnY2VudGVyJyxcbiAgICAgICAgICAgIHBhZGRpbmc6IDAsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBvbk1vdXNlRG93bj17KCkgPT4ge1xuICAgICAgICAgICAgY29udHJvbHMucGF1c2UoKTtcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgZGlzYWJsZWQ9eyFpc0FjdGl2ZX1cbiAgICAgICAgICBpZD1cInZpZGVvX2NvbnRyb2xfcmVzdGFydFwiXG4gICAgICAgICAgdmFsdWU9XCI8Yj5SZXN0YXJ0PC9iPlwiXG4gICAgICAgICAgbGFiZWxUcmFuc2Zvcm09e3tcbiAgICAgICAgICAgIG1hcmdpbjogeyBsZWZ0OiA2LCByaWdodDogNiB9LFxuICAgICAgICAgIH19XG4gICAgICAgICAgZm9udFNpemU9ezE4fVxuICAgICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgICBtYXJnaW46IHsgdG9wOiAwLCByaWdodDogMTYsIGJvdHRvbTogMCwgbGVmdDogMCB9LFxuICAgICAgICAgICAgaGVpZ2h0OiA0MixcbiAgICAgICAgICAgIG1pbldpZHRoOiA4OCxcbiAgICAgICAgICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxuICAgICAgICAgICAgcGFkZGluZzogMCxcbiAgICAgICAgICB9fVxuICAgICAgICAgIG9uTW91c2VEb3duPXsoKSA9PiB7XG4gICAgICAgICAgICBjb250cm9scy5yZXN0YXJ0KCk7XG4gICAgICAgICAgfX1cbiAgICAgICAgLz5cbiAgICAgICAgPEJ1dHRvblxuICAgICAgICAgIGRpc2FibGVkPXshaXNBY3RpdmV9XG4gICAgICAgICAgaWQ9XCJ2aWRlb19jb250cm9sX2xvb3BcIlxuICAgICAgICAgIG9ubHlJY29uXG4gICAgICAgICAgdmFyaWFudD17dmlkZW8/Lmxvb3AgPyAncHJpbWFyeScgOiAnc2Vjb25kYXJ5J31cbiAgICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgICAgaGVpZ2h0OiA0MixcbiAgICAgICAgICAgIHdpZHRoOiA0OSxcbiAgICAgICAgICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxuICAgICAgICAgICAgcGFkZGluZzogMCxcbiAgICAgICAgICB9fVxuICAgICAgICAgIGljb249e0lDT05TLkxPT1B9XG4gICAgICAgICAgaWNvblRyYW5zZm9ybT17eyB3aWR0aDogMjUsIGhlaWdodDogMjUgfX1cbiAgICAgICAgICBpY29uQmFja2dyb3VuZD17e1xuICAgICAgICAgICAgY29sb3I6ICF2aWRlbz8ubG9vcCA/IENvbG9yNC5XaGl0ZSgpIDogQ29sb3I0LkJsYWNrKCksXG4gICAgICAgICAgfX1cbiAgICAgICAgICBjb2xvcj17Q29sb3I0LldoaXRlKCl9XG4gICAgICAgICAgb25Nb3VzZURvd249eygpID0+IHtcbiAgICAgICAgICAgIGNvbnRyb2xzLnNldExvb3AoIXZpZGVvPy5sb29wKTtcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgPC9VaUVudGl0eT5cbiAgICAgIDxWaWRlb0NvbnRyb2xWb2x1bWVcbiAgICAgICAgZW5naW5lPXtlbmdpbmV9XG4gICAgICAgIGVudGl0eT17ZW50aXR5fVxuICAgICAgICB2aWRlbz17dmlkZW99XG4gICAgICAgIGxhYmVsPVwiPGI+VmlkZW8gVm9sdW1lPC9iPlwiXG4gICAgICAvPlxuICAgIDwvVWlFbnRpdHk+XG4gICk7XG59XG4iXX0=
|
|
@@ -1,21 +1,19 @@
|
|
|
1
1
|
import ReactEcs, { Label, UiEntity } from '@dcl/react-ecs';
|
|
2
2
|
import { Color4 } from '@dcl/ecs-math';
|
|
3
|
-
import { getScaleUIFactor } from '../../ui';
|
|
4
3
|
import { Button } from '../Button';
|
|
5
4
|
import { createVideoPlayerControls, getAdminToolkitVideoControl } from './utils';
|
|
6
5
|
import { COLORS, DEFAULT_VOLUME, ICONS, VOLUME_STEP } from '.';
|
|
7
6
|
export function VideoControlVolume({ engine, label, entity, video, }) {
|
|
8
|
-
const scaleFactor = getScaleUIFactor(engine);
|
|
9
7
|
const controls = createVideoPlayerControls(entity, engine);
|
|
10
8
|
const videoControl = getAdminToolkitVideoControl(engine);
|
|
11
9
|
const isSoundDisabled = videoControl?.disableVideoPlayersSound;
|
|
12
10
|
const volumePercentage = `${Math.round((video?.volume ?? DEFAULT_VOLUME) * 100)}%`;
|
|
13
11
|
if (isSoundDisabled) {
|
|
14
|
-
return (ReactEcs.createElement(UiEntity, { uiTransform: { margin: { top: 4
|
|
12
|
+
return (ReactEcs.createElement(UiEntity, { uiTransform: { margin: { top: 4 } } },
|
|
15
13
|
ReactEcs.createElement(UiEntity, { uiTransform: {
|
|
16
|
-
width: 24
|
|
17
|
-
height: 24
|
|
18
|
-
margin: { right: 8
|
|
14
|
+
width: 24,
|
|
15
|
+
height: 24,
|
|
16
|
+
margin: { right: 8 },
|
|
19
17
|
}, uiBackground: {
|
|
20
18
|
textureMode: 'stretch',
|
|
21
19
|
texture: {
|
|
@@ -23,11 +21,11 @@ export function VideoControlVolume({ engine, label, entity, video, }) {
|
|
|
23
21
|
},
|
|
24
22
|
color: Color4.fromHexString('#A09BA8'),
|
|
25
23
|
} }),
|
|
26
|
-
ReactEcs.createElement(Label, { value: "Sound is disabled for all screens", color: Color4.fromHexString('#A09BA8'), fontSize: 14
|
|
24
|
+
ReactEcs.createElement(Label, { value: "Sound is disabled for all screens", color: Color4.fromHexString('#A09BA8'), fontSize: 14 }),
|
|
27
25
|
ReactEcs.createElement(UiEntity, { uiTransform: {
|
|
28
|
-
width: 25
|
|
29
|
-
height: 25
|
|
30
|
-
margin: { left: 8
|
|
26
|
+
width: 25,
|
|
27
|
+
height: 25,
|
|
28
|
+
margin: { left: 8 },
|
|
31
29
|
}, uiBackground: {
|
|
32
30
|
textureMode: 'stretch',
|
|
33
31
|
texture: {
|
|
@@ -38,48 +36,48 @@ export function VideoControlVolume({ engine, label, entity, video, }) {
|
|
|
38
36
|
}
|
|
39
37
|
return (ReactEcs.createElement(UiEntity, { uiTransform: {
|
|
40
38
|
flexDirection: 'column',
|
|
41
|
-
margin: { top: 16
|
|
39
|
+
margin: { top: 16 },
|
|
42
40
|
} },
|
|
43
|
-
ReactEcs.createElement(Label, { value: label, fontSize: 16
|
|
44
|
-
margin: { top: 0, right: 0, bottom: 10
|
|
41
|
+
ReactEcs.createElement(Label, { value: label, fontSize: 16, color: COLORS.WHITE, uiTransform: {
|
|
42
|
+
margin: { top: 0, right: 0, bottom: 10, left: 0 },
|
|
45
43
|
} }),
|
|
46
44
|
ReactEcs.createElement(UiEntity, { uiTransform: {
|
|
47
45
|
flexDirection: 'row',
|
|
48
46
|
} },
|
|
49
|
-
ReactEcs.createElement(Button, { id: "video_control_volume_minus", value: "Minus", fontSize: 14
|
|
50
|
-
margin: { top: 0, right: 16
|
|
51
|
-
width: 49
|
|
47
|
+
ReactEcs.createElement(Button, { id: "video_control_volume_minus", value: "Minus", fontSize: 14, uiTransform: {
|
|
48
|
+
margin: { top: 0, right: 16, bottom: 0, left: 0 },
|
|
49
|
+
width: 49,
|
|
52
50
|
alignItems: 'center',
|
|
53
51
|
justifyContent: 'center',
|
|
54
52
|
padding: 0,
|
|
55
53
|
}, icon: ICONS.VOLUME_MINUS_BUTTON, onlyIcon: true, iconTransform: {
|
|
56
|
-
width: 25
|
|
57
|
-
height: 25
|
|
54
|
+
width: 25,
|
|
55
|
+
height: 25,
|
|
58
56
|
}, onMouseDown: () => controls.setVolume(-VOLUME_STEP), disabled: isSoundDisabled || !video?.volume }),
|
|
59
|
-
ReactEcs.createElement(Label, { value: volumePercentage, fontSize: 18
|
|
60
|
-
margin: { top: 0, right: 16
|
|
57
|
+
ReactEcs.createElement(Label, { value: volumePercentage, fontSize: 18, color: COLORS.GRAY, uiTransform: {
|
|
58
|
+
margin: { top: 0, right: 16, bottom: 0, left: 0 },
|
|
61
59
|
alignItems: 'center',
|
|
62
60
|
justifyContent: 'center',
|
|
63
61
|
padding: 0,
|
|
64
|
-
width: 60
|
|
62
|
+
width: 60,
|
|
65
63
|
} }),
|
|
66
|
-
ReactEcs.createElement(Button, { id: "video_control_volume_plus", value: "Plus", fontSize: 14
|
|
67
|
-
width: 25
|
|
68
|
-
height: 25
|
|
64
|
+
ReactEcs.createElement(Button, { id: "video_control_volume_plus", value: "Plus", fontSize: 14, icon: ICONS.VOLUME_PLUS_BUTTON, onlyIcon: true, iconTransform: {
|
|
65
|
+
width: 25,
|
|
66
|
+
height: 25,
|
|
69
67
|
}, uiTransform: {
|
|
70
|
-
margin: { top: 0, right: 16
|
|
71
|
-
width: 49
|
|
68
|
+
margin: { top: 0, right: 16, bottom: 0, left: 0 },
|
|
69
|
+
width: 49,
|
|
72
70
|
alignItems: 'center',
|
|
73
71
|
justifyContent: 'center',
|
|
74
72
|
padding: 0,
|
|
75
73
|
}, onMouseDown: () => controls.setVolume(VOLUME_STEP), disabled: isSoundDisabled || video?.volume === 1 }),
|
|
76
|
-
ReactEcs.createElement(Button, { id: "video_control_volume_mute", variant: !video?.volume ? 'primary' : 'secondary', fontSize: 18
|
|
74
|
+
ReactEcs.createElement(Button, { id: "video_control_volume_mute", variant: !video?.volume ? 'primary' : 'secondary', fontSize: 18, iconTransform: { width: 24, height: 24 }, onlyIcon: true, icon: ICONS.MUTE, iconBackground: {
|
|
77
75
|
color: video?.volume ? Color4.White() : Color4.Black(),
|
|
78
76
|
}, uiTransform: {
|
|
79
77
|
borderColor: Color4.fromHexString('#FCFCFC'),
|
|
80
78
|
borderWidth: 2,
|
|
81
|
-
width: 49
|
|
82
|
-
height: 42
|
|
79
|
+
width: 49,
|
|
80
|
+
height: 42,
|
|
83
81
|
alignItems: 'center',
|
|
84
82
|
justifyContent: 'center',
|
|
85
83
|
padding: 0,
|
|
@@ -87,4 +85,4 @@ export function VideoControlVolume({ engine, label, entity, video, }) {
|
|
|
87
85
|
controls.setVolume(!video?.volume ? 100 : 0);
|
|
88
86
|
}, disabled: isSoundDisabled }))));
|
|
89
87
|
}
|
|
90
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVm9sdW1lQ29udHJvbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hZG1pbi10b29sa2l0LXVpL1ZpZGVvQ29udHJvbC9Wb2x1bWVDb250cm9sLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLFFBQVEsRUFBRSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUM1QyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ25DLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSwyQkFBMkIsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUNqRixPQUFPLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sR0FBRyxDQUFDO0FBRS9ELE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxFQUNqQyxNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixLQUFLLEdBTU47SUFDQyxNQUFNLFdBQVcsR0FBRyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM3QyxNQUFNLFFBQVEsR0FBRyx5QkFBeUIsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDM0QsTUFBTSxZQUFZLEdBQUcsMkJBQTJCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDekQsTUFBTSxlQUFlLEdBQUcsWUFBWSxFQUFFLHdCQUF3QixDQUFDO0lBQy9ELE1BQU0sZ0JBQWdCLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxFQUFFLE1BQU0sSUFBSSxjQUFjLENBQUMsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDO0lBRW5GLElBQUksZUFBZSxFQUFFLENBQUM7UUFDcEIsT0FBTyxDQUNMLHVCQUFDLFFBQVEsSUFBQyxXQUFXLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxHQUFHLFdBQVcsRUFBRSxFQUFFO1lBQ3pELHVCQUFDLFFBQVEsSUFDUCxXQUFXLEVBQUU7b0JBQ1gsS0FBSyxFQUFFLEVBQUUsR0FBRyxXQUFXO29CQUN2QixNQUFNLEVBQUUsRUFBRSxHQUFHLFdBQVc7b0JBQ3hCLE1BQU0sRUFBRSxFQUFFLEtBQUssRUFBRSxDQUFDLEdBQUcsV0FBVyxFQUFFO2lCQUNuQyxFQUNELFlBQVksRUFBRTtvQkFDWixXQUFXLEVBQUUsU0FBUztvQkFDdEIsT0FBTyxFQUFFO3dCQUNQLEdBQUcsRUFBRSxLQUFLLENBQUMsSUFBSTtxQkFDaEI7b0JBQ0QsS0FBSyxFQUFFLE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDO2lCQUN2QyxHQUNEO1lBQ0YsdUJBQUMsS0FBSyxJQUNKLEtBQUssRUFBQyxtQ0FBbUMsRUFDekMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLEVBQ3RDLFFBQVEsRUFBRSxFQUFFLEdBQUcsV0FBVyxHQUMxQjtZQUNGLHVCQUFDLFFBQVEsSUFDUCxXQUFXLEVBQUU7b0JBQ1gsS0FBSyxFQUFFLEVBQUUsR0FBRyxXQUFXO29CQUN2QixNQUFNLEVBQUUsRUFBRSxHQUFHLFdBQVc7b0JBQ3hCLE1BQU0sRUFBRSxFQUFFLElBQUksRUFBRSxDQUFDLEdBQUcsV0FBVyxFQUFFO2lCQUNsQyxFQUNELFlBQVksRUFBRTtvQkFDWixXQUFXLEVBQUUsU0FBUztvQkFDdEIsT0FBTyxFQUFFO3dCQUNQLEdBQUcsRUFBRSxLQUFLLENBQUMsSUFBSTtxQkFDaEI7b0JBQ0QsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLLEVBQUU7aUJBQ3RCLEdBQ0QsQ0FDTyxDQUNaLENBQUM7SUFDSixDQUFDO0lBRUQsT0FBTyxDQUNMLHVCQUFDLFFBQVEsSUFDUCxXQUFXLEVBQUU7WUFDWCxhQUFhLEVBQUUsUUFBUTtZQUN2QixNQUFNLEVBQUUsRUFBRSxHQUFHLEVBQUUsRUFBRSxHQUFHLFdBQVcsRUFBRTtTQUNsQztRQUVELHVCQUFDLEtBQUssSUFDSixLQUFLLEVBQUUsS0FBSyxFQUNaLFFBQVEsRUFBRSxFQUFFLEdBQUcsV0FBVyxFQUMxQixLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUssRUFDbkIsV0FBVyxFQUFFO2dCQUNYLE1BQU0sRUFBRSxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsRUFBRSxHQUFHLFdBQVcsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFO2FBQ2hFLEdBQ0Q7UUFFRix1QkFBQyxRQUFRLElBQ1AsV0FBVyxFQUFFO2dCQUNYLGFBQWEsRUFBRSxLQUFLO2FBQ3JCO1lBRUQsdUJBQUMsTUFBTSxJQUNMLEVBQUUsRUFBQyw0QkFBNEIsRUFDL0IsS0FBSyxFQUFDLE9BQU8sRUFDYixRQUFRLEVBQUUsRUFBRSxHQUFHLFdBQVcsRUFDMUIsV0FBVyxFQUFFO29CQUNYLE1BQU0sRUFBRSxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsR0FBRyxXQUFXLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFO29CQUMvRCxLQUFLLEVBQUUsRUFBRSxHQUFHLFdBQVc7b0JBQ3ZCLFVBQVUsRUFBRSxRQUFRO29CQUNwQixjQUFjLEVBQUUsUUFBUTtvQkFDeEIsT0FBTyxFQUFFLENBQUM7aUJBQ1gsRUFDRCxJQUFJLEVBQUUsS0FBSyxDQUFDLG1CQUFtQixFQUMvQixRQUFRLEVBQUUsSUFBSSxFQUNkLGFBQWEsRUFBRTtvQkFDYixLQUFLLEVBQUUsRUFBRSxHQUFHLFdBQVc7b0JBQ3ZCLE1BQU0sRUFBRSxFQUFFLEdBQUcsV0FBVztpQkFDekIsRUFDRCxXQUFXLEVBQUUsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxFQUNuRCxRQUFRLEVBQUUsZUFBZSxJQUFJLENBQUMsS0FBSyxFQUFFLE1BQU0sR0FDM0M7WUFDRix1QkFBQyxLQUFLLElBQ0osS0FBSyxFQUFFLGdCQUFnQixFQUN2QixRQUFRLEVBQUUsRUFBRSxHQUFHLFdBQVcsRUFDMUIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxJQUFJLEVBQ2xCLFdBQVcsRUFBRTtvQkFDWCxNQUFNLEVBQUUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEdBQUcsV0FBVyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRTtvQkFDL0QsVUFBVSxFQUFFLFFBQVE7b0JBQ3BCLGNBQWMsRUFBRSxRQUFRO29CQUN4QixPQUFPLEVBQUUsQ0FBQztvQkFDVixLQUFLLEVBQUUsRUFBRSxHQUFHLFdBQVc7aUJBQ3hCLEdBQ0Q7WUFDRix1QkFBQyxNQUFNLElBQ0wsRUFBRSxFQUFDLDJCQUEyQixFQUM5QixLQUFLLEVBQUMsTUFBTSxFQUNaLFFBQVEsRUFBRSxFQUFFLEdBQUcsV0FBVyxFQUMxQixJQUFJLEVBQUUsS0FBSyxDQUFDLGtCQUFrQixFQUM5QixRQUFRLEVBQUUsSUFBSSxFQUNkLGFBQWEsRUFBRTtvQkFDYixLQUFLLEVBQUUsRUFBRSxHQUFHLFdBQVc7b0JBQ3ZCLE1BQU0sRUFBRSxFQUFFLEdBQUcsV0FBVztpQkFDekIsRUFDRCxXQUFXLEVBQUU7b0JBQ1gsTUFBTSxFQUFFLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxHQUFHLFdBQVcsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUU7b0JBQy9ELEtBQUssRUFBRSxFQUFFLEdBQUcsV0FBVztvQkFDdkIsVUFBVSxFQUFFLFFBQVE7b0JBQ3BCLGNBQWMsRUFBRSxRQUFRO29CQUN4QixPQUFPLEVBQUUsQ0FBQztpQkFDWCxFQUNELFdBQVcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxFQUNsRCxRQUFRLEVBQUUsZUFBZSxJQUFJLEtBQUssRUFBRSxNQUFNLEtBQUssQ0FBQyxHQUNoRDtZQUNGLHVCQUFDLE1BQU0sSUFDTCxFQUFFLEVBQUMsMkJBQTJCLEVBQzlCLE9BQU8sRUFBRSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUNqRCxRQUFRLEVBQUUsRUFBRSxHQUFHLFdBQVcsRUFDMUIsYUFBYSxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsR0FBRyxXQUFXLEVBQUUsTUFBTSxFQUFFLEVBQUUsR0FBRyxXQUFXLEVBQUUsRUFDcEUsUUFBUSxRQUNSLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSSxFQUNoQixjQUFjLEVBQUU7b0JBQ2QsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRTtpQkFDdkQsRUFDRCxXQUFXLEVBQUU7b0JBQ1gsV0FBVyxFQUFFLE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDO29CQUM1QyxXQUFXLEVBQUUsQ0FBQztvQkFDZCxLQUFLLEVBQUUsRUFBRSxHQUFHLFdBQVc7b0JBQ3ZCLE1BQU0sRUFBRSxFQUFFLEdBQUcsV0FBVztvQkFDeEIsVUFBVSxFQUFFLFFBQVE7b0JBQ3BCLGNBQWMsRUFBRSxRQUFRO29CQUN4QixPQUFPLEVBQUUsQ0FBQztpQkFDWCxFQUNELFdBQVcsRUFBRSxHQUFHLEVBQUU7b0JBQ2hCLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUMvQyxDQUFDLEVBQ0QsUUFBUSxFQUFFLGVBQWUsR0FDekIsQ0FDTyxDQUNGLENBQ1osQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZWVwUmVhZG9ubHlPYmplY3QsIEVudGl0eSwgSUVuZ2luZSwgUEJWaWRlb1BsYXllciB9IGZyb20gJ0BkY2wvZWNzJztcbmltcG9ydCBSZWFjdEVjcywgeyBMYWJlbCwgVWlFbnRpdHkgfSBmcm9tICdAZGNsL3JlYWN0LWVjcyc7XG5pbXBvcnQgeyBDb2xvcjQgfSBmcm9tICdAZGNsL2Vjcy1tYXRoJztcbmltcG9ydCB7IGdldFNjYWxlVUlGYWN0b3IgfSBmcm9tICcuLi8uLi91aSc7XG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tICcuLi9CdXR0b24nO1xuaW1wb3J0IHsgY3JlYXRlVmlkZW9QbGF5ZXJDb250cm9scywgZ2V0QWRtaW5Ub29sa2l0VmlkZW9Db250cm9sIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBDT0xPUlMsIERFRkFVTFRfVk9MVU1FLCBJQ09OUywgVk9MVU1FX1NURVAgfSBmcm9tICcuJztcblxuZXhwb3J0IGZ1bmN0aW9uIFZpZGVvQ29udHJvbFZvbHVtZSh7XG4gIGVuZ2luZSxcbiAgbGFiZWwsXG4gIGVudGl0eSxcbiAgdmlkZW8sXG59OiB7XG4gIGVuZ2luZTogSUVuZ2luZTtcbiAgbGFiZWw6IHN0cmluZztcbiAgZW50aXR5OiBFbnRpdHk7XG4gIHZpZGVvOiBEZWVwUmVhZG9ubHlPYmplY3Q8UEJWaWRlb1BsYXllcj4gfCB1bmRlZmluZWQ7XG59KSB7XG4gIGNvbnN0IHNjYWxlRmFjdG9yID0gZ2V0U2NhbGVVSUZhY3RvcihlbmdpbmUpO1xuICBjb25zdCBjb250cm9scyA9IGNyZWF0ZVZpZGVvUGxheWVyQ29udHJvbHMoZW50aXR5LCBlbmdpbmUpO1xuICBjb25zdCB2aWRlb0NvbnRyb2wgPSBnZXRBZG1pblRvb2xraXRWaWRlb0NvbnRyb2woZW5naW5lKTtcbiAgY29uc3QgaXNTb3VuZERpc2FibGVkID0gdmlkZW9Db250cm9sPy5kaXNhYmxlVmlkZW9QbGF5ZXJzU291bmQ7XG4gIGNvbnN0IHZvbHVtZVBlcmNlbnRhZ2UgPSBgJHtNYXRoLnJvdW5kKCh2aWRlbz8udm9sdW1lID8/IERFRkFVTFRfVk9MVU1FKSAqIDEwMCl9JWA7XG5cbiAgaWYgKGlzU291bmREaXNhYmxlZCkge1xuICAgIHJldHVybiAoXG4gICAgICA8VWlFbnRpdHkgdWlUcmFuc2Zvcm09e3sgbWFyZ2luOiB7IHRvcDogNCAqIHNjYWxlRmFjdG9yIH0gfX0+XG4gICAgICAgIDxVaUVudGl0eVxuICAgICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgICB3aWR0aDogMjQgKiBzY2FsZUZhY3RvcixcbiAgICAgICAgICAgIGhlaWdodDogMjQgKiBzY2FsZUZhY3RvcixcbiAgICAgICAgICAgIG1hcmdpbjogeyByaWdodDogOCAqIHNjYWxlRmFjdG9yIH0sXG4gICAgICAgICAgfX1cbiAgICAgICAgICB1aUJhY2tncm91bmQ9e3tcbiAgICAgICAgICAgIHRleHR1cmVNb2RlOiAnc3RyZXRjaCcsXG4gICAgICAgICAgICB0ZXh0dXJlOiB7XG4gICAgICAgICAgICAgIHNyYzogSUNPTlMuTVVURSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBjb2xvcjogQ29sb3I0LmZyb21IZXhTdHJpbmcoJyNBMDlCQTgnKSxcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgICA8TGFiZWxcbiAgICAgICAgICB2YWx1ZT1cIlNvdW5kIGlzIGRpc2FibGVkIGZvciBhbGwgc2NyZWVuc1wiXG4gICAgICAgICAgY29sb3I9e0NvbG9yNC5mcm9tSGV4U3RyaW5nKCcjQTA5QkE4Jyl9XG4gICAgICAgICAgZm9udFNpemU9ezE0ICogc2NhbGVGYWN0b3J9XG4gICAgICAgIC8+XG4gICAgICAgIDxVaUVudGl0eVxuICAgICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgICB3aWR0aDogMjUgKiBzY2FsZUZhY3RvcixcbiAgICAgICAgICAgIGhlaWdodDogMjUgKiBzY2FsZUZhY3RvcixcbiAgICAgICAgICAgIG1hcmdpbjogeyBsZWZ0OiA4ICogc2NhbGVGYWN0b3IgfSxcbiAgICAgICAgICB9fVxuICAgICAgICAgIHVpQmFja2dyb3VuZD17e1xuICAgICAgICAgICAgdGV4dHVyZU1vZGU6ICdzdHJldGNoJyxcbiAgICAgICAgICAgIHRleHR1cmU6IHtcbiAgICAgICAgICAgICAgc3JjOiBJQ09OUy5JTkZPLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGNvbG9yOiBDb2xvcjQuV2hpdGUoKSxcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgPC9VaUVudGl0eT5cbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8VWlFbnRpdHlcbiAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxuICAgICAgICBtYXJnaW46IHsgdG9wOiAxNiAqIHNjYWxlRmFjdG9yIH0sXG4gICAgICB9fVxuICAgID5cbiAgICAgIDxMYWJlbFxuICAgICAgICB2YWx1ZT17bGFiZWx9XG4gICAgICAgIGZvbnRTaXplPXsxNiAqIHNjYWxlRmFjdG9yfVxuICAgICAgICBjb2xvcj17Q09MT1JTLldISVRFfVxuICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgIG1hcmdpbjogeyB0b3A6IDAsIHJpZ2h0OiAwLCBib3R0b206IDEwICogc2NhbGVGYWN0b3IsIGxlZnQ6IDAgfSxcbiAgICAgICAgfX1cbiAgICAgIC8+XG5cbiAgICAgIDxVaUVudGl0eVxuICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgIGZsZXhEaXJlY3Rpb246ICdyb3cnLFxuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgaWQ9XCJ2aWRlb19jb250cm9sX3ZvbHVtZV9taW51c1wiXG4gICAgICAgICAgdmFsdWU9XCJNaW51c1wiXG4gICAgICAgICAgZm9udFNpemU9ezE0ICogc2NhbGVGYWN0b3J9XG4gICAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICAgIG1hcmdpbjogeyB0b3A6IDAsIHJpZ2h0OiAxNiAqIHNjYWxlRmFjdG9yLCBib3R0b206IDAsIGxlZnQ6IDAgfSxcbiAgICAgICAgICAgIHdpZHRoOiA0OSAqIHNjYWxlRmFjdG9yLFxuICAgICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgICAgICBqdXN0aWZ5Q29udGVudDogJ2NlbnRlcicsXG4gICAgICAgICAgICBwYWRkaW5nOiAwLFxuICAgICAgICAgIH19XG4gICAgICAgICAgaWNvbj17SUNPTlMuVk9MVU1FX01JTlVTX0JVVFRPTn1cbiAgICAgICAgICBvbmx5SWNvbj17dHJ1ZX1cbiAgICAgICAgICBpY29uVHJhbnNmb3JtPXt7XG4gICAgICAgICAgICB3aWR0aDogMjUgKiBzY2FsZUZhY3RvcixcbiAgICAgICAgICAgIGhlaWdodDogMjUgKiBzY2FsZUZhY3RvcixcbiAgICAgICAgICB9fVxuICAgICAgICAgIG9uTW91c2VEb3duPXsoKSA9PiBjb250cm9scy5zZXRWb2x1bWUoLVZPTFVNRV9TVEVQKX1cbiAgICAgICAgICBkaXNhYmxlZD17aXNTb3VuZERpc2FibGVkIHx8ICF2aWRlbz8udm9sdW1lfVxuICAgICAgICAvPlxuICAgICAgICA8TGFiZWxcbiAgICAgICAgICB2YWx1ZT17dm9sdW1lUGVyY2VudGFnZX1cbiAgICAgICAgICBmb250U2l6ZT17MTggKiBzY2FsZUZhY3Rvcn1cbiAgICAgICAgICBjb2xvcj17Q09MT1JTLkdSQVl9XG4gICAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICAgIG1hcmdpbjogeyB0b3A6IDAsIHJpZ2h0OiAxNiAqIHNjYWxlRmFjdG9yLCBib3R0b206IDAsIGxlZnQ6IDAgfSxcbiAgICAgICAgICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxuICAgICAgICAgICAgcGFkZGluZzogMCxcbiAgICAgICAgICAgIHdpZHRoOiA2MCAqIHNjYWxlRmFjdG9yLFxuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICAgIDxCdXR0b25cbiAgICAgICAgICBpZD1cInZpZGVvX2NvbnRyb2xfdm9sdW1lX3BsdXNcIlxuICAgICAgICAgIHZhbHVlPVwiUGx1c1wiXG4gICAgICAgICAgZm9udFNpemU9ezE0ICogc2NhbGVGYWN0b3J9XG4gICAgICAgICAgaWNvbj17SUNPTlMuVk9MVU1FX1BMVVNfQlVUVE9OfVxuICAgICAgICAgIG9ubHlJY29uPXt0cnVlfVxuICAgICAgICAgIGljb25UcmFuc2Zvcm09e3tcbiAgICAgICAgICAgIHdpZHRoOiAyNSAqIHNjYWxlRmFjdG9yLFxuICAgICAgICAgICAgaGVpZ2h0OiAyNSAqIHNjYWxlRmFjdG9yLFxuICAgICAgICAgIH19XG4gICAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICAgIG1hcmdpbjogeyB0b3A6IDAsIHJpZ2h0OiAxNiAqIHNjYWxlRmFjdG9yLCBib3R0b206IDAsIGxlZnQ6IDAgfSxcbiAgICAgICAgICAgIHdpZHRoOiA0OSAqIHNjYWxlRmFjdG9yLFxuICAgICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgICAgICBqdXN0aWZ5Q29udGVudDogJ2NlbnRlcicsXG4gICAgICAgICAgICBwYWRkaW5nOiAwLFxuICAgICAgICAgIH19XG4gICAgICAgICAgb25Nb3VzZURvd249eygpID0+IGNvbnRyb2xzLnNldFZvbHVtZShWT0xVTUVfU1RFUCl9XG4gICAgICAgICAgZGlzYWJsZWQ9e2lzU291bmREaXNhYmxlZCB8fCB2aWRlbz8udm9sdW1lID09PSAxfVxuICAgICAgICAvPlxuICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgaWQ9XCJ2aWRlb19jb250cm9sX3ZvbHVtZV9tdXRlXCJcbiAgICAgICAgICB2YXJpYW50PXshdmlkZW8/LnZvbHVtZSA/ICdwcmltYXJ5JyA6ICdzZWNvbmRhcnknfVxuICAgICAgICAgIGZvbnRTaXplPXsxOCAqIHNjYWxlRmFjdG9yfVxuICAgICAgICAgIGljb25UcmFuc2Zvcm09e3sgd2lkdGg6IDI0ICogc2NhbGVGYWN0b3IsIGhlaWdodDogMjQgKiBzY2FsZUZhY3RvciB9fVxuICAgICAgICAgIG9ubHlJY29uXG4gICAgICAgICAgaWNvbj17SUNPTlMuTVVURX1cbiAgICAgICAgICBpY29uQmFja2dyb3VuZD17e1xuICAgICAgICAgICAgY29sb3I6IHZpZGVvPy52b2x1bWUgPyBDb2xvcjQuV2hpdGUoKSA6IENvbG9yNC5CbGFjaygpLFxuICAgICAgICAgIH19XG4gICAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICAgIGJvcmRlckNvbG9yOiBDb2xvcjQuZnJvbUhleFN0cmluZygnI0ZDRkNGQycpLFxuICAgICAgICAgICAgYm9yZGVyV2lkdGg6IDIsXG4gICAgICAgICAgICB3aWR0aDogNDkgKiBzY2FsZUZhY3RvcixcbiAgICAgICAgICAgIGhlaWdodDogNDIgKiBzY2FsZUZhY3RvcixcbiAgICAgICAgICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxuICAgICAgICAgICAgcGFkZGluZzogMCxcbiAgICAgICAgICB9fVxuICAgICAgICAgIG9uTW91c2VEb3duPXsoKSA9PiB7XG4gICAgICAgICAgICBjb250cm9scy5zZXRWb2x1bWUoIXZpZGVvPy52b2x1bWUgPyAxMDAgOiAwKTtcbiAgICAgICAgICB9fVxuICAgICAgICAgIGRpc2FibGVkPXtpc1NvdW5kRGlzYWJsZWR9XG4gICAgICAgIC8+XG4gICAgICA8L1VpRW50aXR5PlxuICAgIDwvVWlFbnRpdHk+XG4gICk7XG59XG4iXX0=
|
|
88
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVm9sdW1lQ29udHJvbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hZG1pbi10b29sa2l0LXVpL1ZpZGVvQ29udHJvbC9Wb2x1bWVDb250cm9sLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLFFBQVEsRUFBRSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDbkMsT0FBTyxFQUFFLHlCQUF5QixFQUFFLDJCQUEyQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxHQUFHLENBQUM7QUFFL0QsTUFBTSxVQUFVLGtCQUFrQixDQUFDLEVBQ2pDLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUNOLEtBQUssR0FNTjtJQUNDLE1BQU0sUUFBUSxHQUFHLHlCQUF5QixDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMzRCxNQUFNLFlBQVksR0FBRywyQkFBMkIsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6RCxNQUFNLGVBQWUsR0FBRyxZQUFZLEVBQUUsd0JBQXdCLENBQUM7SUFDL0QsTUFBTSxnQkFBZ0IsR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLEVBQUUsTUFBTSxJQUFJLGNBQWMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUM7SUFFbkYsSUFBSSxlQUFlLEVBQUUsQ0FBQztRQUNwQixPQUFPLENBQ0wsdUJBQUMsUUFBUSxJQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUMzQyx1QkFBQyxRQUFRLElBQ1AsV0FBVyxFQUFFO29C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LEtBQUssRUFBRTtpQkFDdkQsRUFDRCxXQUFXLEVBQUU7b0JBQ1gsV0FBVyxFQUFFLE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDO29CQUM1QyxXQUFXLEVBQUUsQ0FBQztvQkFDZCxLQUFLLEVBQUUsRUFBRTtvQkFDVCxNQUFNLEVBQUUsRUFBRTtvQkFDVixVQUFVLEVBQUUsUUFBUTtvQkFDcEIsY0FBYyxFQUFFLFFBQVE7b0JBQ3hCLE9BQU8sRUFBRSxDQUFDO2lCQUNYLEVBQ0QsV0FBVyxFQUFFLEdBQUcsRUFBRTtvQkFDaEIsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQy9DLENBQUMsRUFDRCxRQUFRLEVBQUUsZUFBZSxHQUN6QixDQUNPLENBQ0YsQ0FDWixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERlZXBSZWFkb25seU9iamVjdCwgRW50aXR5LCBJRW5naW5lLCBQQlZpZGVvUGxheWVyIH0gZnJvbSAnQGRjbC9lY3MnO1xuaW1wb3J0IFJlYWN0RWNzLCB7IExhYmVsLCBVaUVudGl0eSB9IGZyb20gJ0BkY2wvcmVhY3QtZWNzJztcbmltcG9ydCB7IENvbG9yNCB9IGZyb20gJ0BkY2wvZWNzLW1hdGgnO1xuaW1wb3J0IHsgQnV0dG9uIH0gZnJvbSAnLi4vQnV0dG9uJztcbmltcG9ydCB7IGNyZWF0ZVZpZGVvUGxheWVyQ29udHJvbHMsIGdldEFkbWluVG9vbGtpdFZpZGVvQ29udHJvbCB9IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgQ09MT1JTLCBERUZBVUxUX1ZPTFVNRSwgSUNPTlMsIFZPTFVNRV9TVEVQIH0gZnJvbSAnLic7XG5cbmV4cG9ydCBmdW5jdGlvbiBWaWRlb0NvbnRyb2xWb2x1bWUoe1xuICBlbmdpbmUsXG4gIGxhYmVsLFxuICBlbnRpdHksXG4gIHZpZGVvLFxufToge1xuICBlbmdpbmU6IElFbmdpbmU7XG4gIGxhYmVsOiBzdHJpbmc7XG4gIGVudGl0eTogRW50aXR5O1xuICB2aWRlbzogRGVlcFJlYWRvbmx5T2JqZWN0PFBCVmlkZW9QbGF5ZXI+IHwgdW5kZWZpbmVkO1xufSkge1xuICBjb25zdCBjb250cm9scyA9IGNyZWF0ZVZpZGVvUGxheWVyQ29udHJvbHMoZW50aXR5LCBlbmdpbmUpO1xuICBjb25zdCB2aWRlb0NvbnRyb2wgPSBnZXRBZG1pblRvb2xraXRWaWRlb0NvbnRyb2woZW5naW5lKTtcbiAgY29uc3QgaXNTb3VuZERpc2FibGVkID0gdmlkZW9Db250cm9sPy5kaXNhYmxlVmlkZW9QbGF5ZXJzU291bmQ7XG4gIGNvbnN0IHZvbHVtZVBlcmNlbnRhZ2UgPSBgJHtNYXRoLnJvdW5kKCh2aWRlbz8udm9sdW1lID8/IERFRkFVTFRfVk9MVU1FKSAqIDEwMCl9JWA7XG5cbiAgaWYgKGlzU291bmREaXNhYmxlZCkge1xuICAgIHJldHVybiAoXG4gICAgICA8VWlFbnRpdHkgdWlUcmFuc2Zvcm09e3sgbWFyZ2luOiB7IHRvcDogNCB9IH19PlxuICAgICAgICA8VWlFbnRpdHlcbiAgICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgICAgd2lkdGg6IDI0LFxuICAgICAgICAgICAgaGVpZ2h0OiAyNCxcbiAgICAgICAgICAgIG1hcmdpbjogeyByaWdodDogOCB9LFxuICAgICAgICAgIH19XG4gICAgICAgICAgdWlCYWNrZ3JvdW5kPXt7XG4gICAgICAgICAgICB0ZXh0dXJlTW9kZTogJ3N0cmV0Y2gnLFxuICAgICAgICAgICAgdGV4dHVyZToge1xuICAgICAgICAgICAgICBzcmM6IElDT05TLk1VVEUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgY29sb3I6IENvbG9yNC5mcm9tSGV4U3RyaW5nKCcjQTA5QkE4JyksXG4gICAgICAgICAgfX1cbiAgICAgICAgLz5cbiAgICAgICAgPExhYmVsXG4gICAgICAgICAgdmFsdWU9XCJTb3VuZCBpcyBkaXNhYmxlZCBmb3IgYWxsIHNjcmVlbnNcIlxuICAgICAgICAgIGNvbG9yPXtDb2xvcjQuZnJvbUhleFN0cmluZygnI0EwOUJBOCcpfVxuICAgICAgICAgIGZvbnRTaXplPXsxNH1cbiAgICAgICAgLz5cbiAgICAgICAgPFVpRW50aXR5XG4gICAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICAgIHdpZHRoOiAyNSxcbiAgICAgICAgICAgIGhlaWdodDogMjUsXG4gICAgICAgICAgICBtYXJnaW46IHsgbGVmdDogOCB9LFxuICAgICAgICAgIH19XG4gICAgICAgICAgdWlCYWNrZ3JvdW5kPXt7XG4gICAgICAgICAgICB0ZXh0dXJlTW9kZTogJ3N0cmV0Y2gnLFxuICAgICAgICAgICAgdGV4dHVyZToge1xuICAgICAgICAgICAgICBzcmM6IElDT05TLklORk8sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgY29sb3I6IENvbG9yNC5XaGl0ZSgpLFxuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICA8L1VpRW50aXR5PlxuICAgICk7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxVaUVudGl0eVxuICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXG4gICAgICAgIG1hcmdpbjogeyB0b3A6IDE2IH0sXG4gICAgICB9fVxuICAgID5cbiAgICAgIDxMYWJlbFxuICAgICAgICB2YWx1ZT17bGFiZWx9XG4gICAgICAgIGZvbnRTaXplPXsxNn1cbiAgICAgICAgY29sb3I9e0NPTE9SUy5XSElURX1cbiAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICBtYXJnaW46IHsgdG9wOiAwLCByaWdodDogMCwgYm90dG9tOiAxMCwgbGVmdDogMCB9LFxuICAgICAgICB9fVxuICAgICAgLz5cblxuICAgICAgPFVpRW50aXR5XG4gICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgZmxleERpcmVjdGlvbjogJ3JvdycsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxCdXR0b25cbiAgICAgICAgICBpZD1cInZpZGVvX2NvbnRyb2xfdm9sdW1lX21pbnVzXCJcbiAgICAgICAgICB2YWx1ZT1cIk1pbnVzXCJcbiAgICAgICAgICBmb250U2l6ZT17MTR9XG4gICAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICAgIG1hcmdpbjogeyB0b3A6IDAsIHJpZ2h0OiAxNiwgYm90dG9tOiAwLCBsZWZ0OiAwIH0sXG4gICAgICAgICAgICB3aWR0aDogNDksXG4gICAgICAgICAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgICAgICAgICAgIGp1c3RpZnlDb250ZW50OiAnY2VudGVyJyxcbiAgICAgICAgICAgIHBhZGRpbmc6IDAsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBpY29uPXtJQ09OUy5WT0xVTUVfTUlOVVNfQlVUVE9OfVxuICAgICAgICAgIG9ubHlJY29uPXt0cnVlfVxuICAgICAgICAgIGljb25UcmFuc2Zvcm09e3tcbiAgICAgICAgICAgIHdpZHRoOiAyNSxcbiAgICAgICAgICAgIGhlaWdodDogMjUsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBvbk1vdXNlRG93bj17KCkgPT4gY29udHJvbHMuc2V0Vm9sdW1lKC1WT0xVTUVfU1RFUCl9XG4gICAgICAgICAgZGlzYWJsZWQ9e2lzU291bmREaXNhYmxlZCB8fCAhdmlkZW8/LnZvbHVtZX1cbiAgICAgICAgLz5cbiAgICAgICAgPExhYmVsXG4gICAgICAgICAgdmFsdWU9e3ZvbHVtZVBlcmNlbnRhZ2V9XG4gICAgICAgICAgZm9udFNpemU9ezE4fVxuICAgICAgICAgIGNvbG9yPXtDT0xPUlMuR1JBWX1cbiAgICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgICAgbWFyZ2luOiB7IHRvcDogMCwgcmlnaHQ6IDE2LCBib3R0b206IDAsIGxlZnQ6IDAgfSxcbiAgICAgICAgICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxuICAgICAgICAgICAgcGFkZGluZzogMCxcbiAgICAgICAgICAgIHdpZHRoOiA2MCxcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgaWQ9XCJ2aWRlb19jb250cm9sX3ZvbHVtZV9wbHVzXCJcbiAgICAgICAgICB2YWx1ZT1cIlBsdXNcIlxuICAgICAgICAgIGZvbnRTaXplPXsxNH1cbiAgICAgICAgICBpY29uPXtJQ09OUy5WT0xVTUVfUExVU19CVVRUT059XG4gICAgICAgICAgb25seUljb249e3RydWV9XG4gICAgICAgICAgaWNvblRyYW5zZm9ybT17e1xuICAgICAgICAgICAgd2lkdGg6IDI1LFxuICAgICAgICAgICAgaGVpZ2h0OiAyNSxcbiAgICAgICAgICB9fVxuICAgICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgICBtYXJnaW46IHsgdG9wOiAwLCByaWdodDogMTYsIGJvdHRvbTogMCwgbGVmdDogMCB9LFxuICAgICAgICAgICAgd2lkdGg6IDQ5LFxuICAgICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgICAgICBqdXN0aWZ5Q29udGVudDogJ2NlbnRlcicsXG4gICAgICAgICAgICBwYWRkaW5nOiAwLFxuICAgICAgICAgIH19XG4gICAgICAgICAgb25Nb3VzZURvd249eygpID0+IGNvbnRyb2xzLnNldFZvbHVtZShWT0xVTUVfU1RFUCl9XG4gICAgICAgICAgZGlzYWJsZWQ9e2lzU291bmREaXNhYmxlZCB8fCB2aWRlbz8udm9sdW1lID09PSAxfVxuICAgICAgICAvPlxuICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgaWQ9XCJ2aWRlb19jb250cm9sX3ZvbHVtZV9tdXRlXCJcbiAgICAgICAgICB2YXJpYW50PXshdmlkZW8/LnZvbHVtZSA/ICdwcmltYXJ5JyA6ICdzZWNvbmRhcnknfVxuICAgICAgICAgIGZvbnRTaXplPXsxOH1cbiAgICAgICAgICBpY29uVHJhbnNmb3JtPXt7IHdpZHRoOiAyNCwgaGVpZ2h0OiAyNCB9fVxuICAgICAgICAgIG9ubHlJY29uXG4gICAgICAgICAgaWNvbj17SUNPTlMuTVVURX1cbiAgICAgICAgICBpY29uQmFja2dyb3VuZD17e1xuICAgICAgICAgICAgY29sb3I6IHZpZGVvPy52b2x1bWUgPyBDb2xvcjQuV2hpdGUoKSA6IENvbG9yNC5CbGFjaygpLFxuICAgICAgICAgIH19XG4gICAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICAgIGJvcmRlckNvbG9yOiBDb2xvcjQuZnJvbUhleFN0cmluZygnI0ZDRkNGQycpLFxuICAgICAgICAgICAgYm9yZGVyV2lkdGg6IDIsXG4gICAgICAgICAgICB3aWR0aDogNDksXG4gICAgICAgICAgICBoZWlnaHQ6IDQyLFxuICAgICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgICAgICBqdXN0aWZ5Q29udGVudDogJ2NlbnRlcicsXG4gICAgICAgICAgICBwYWRkaW5nOiAwLFxuICAgICAgICAgIH19XG4gICAgICAgICAgb25Nb3VzZURvd249eygpID0+IHtcbiAgICAgICAgICAgIGNvbnRyb2xzLnNldFZvbHVtZSghdmlkZW8/LnZvbHVtZSA/IDEwMCA6IDApO1xuICAgICAgICAgIH19XG4gICAgICAgICAgZGlzYWJsZWQ9e2lzU291bmREaXNhYmxlZH1cbiAgICAgICAgLz5cbiAgICAgIDwvVWlFbnRpdHk+XG4gICAgPC9VaUVudGl0eT5cbiAgKTtcbn1cbiJdfQ==
|