@christianriedl/media 1.0.178 → 1.0.180

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/iMedia.d.ts CHANGED
@@ -229,9 +229,6 @@ export interface ITranscodeParams {
229
229
  export interface IPhotoSelection {
230
230
  rating: number;
231
231
  criteria: string;
232
- root: string;
233
- selected: IMediaFolder;
234
- selectedAlbum?: IMediaFolder;
235
232
  }
236
233
  export interface IMediaService {
237
234
  mediaUrl: string;
@@ -4,6 +4,7 @@ export declare class LocationHelper {
4
4
  static addAllLocationParents(mediaService: IMediaService): void;
5
5
  static addLocationParents(mediaService: IMediaService, list: IMediaListEntry, rating: string, ratingMap: number): void;
6
6
  static addLocationParent(mediaService: IMediaService, parentFolder: IMediaFolder, index: number, name: string, children: number[], rating: string, ratingMap: number): void;
7
+ static expandLocationFolders(mediaService: IMediaService, parentId: string, id: string): void;
7
8
  static expandLocationFolder(mediaService: IMediaService, parentFolder: IMediaFolder, expandFolder: IMediaFolder): void;
8
9
  static populateParentFolder(mediaService: IMediaService, folder: IMediaFolder, maxAlbums?: number): boolean;
9
10
  static collectAlbums(albums: Dictionary<IMediaFolder[]>, years: Set<number>, folder: IMediaFolder): void;
@@ -51,6 +51,27 @@ export class LocationHelper {
51
51
  folder.mustExpand = true;
52
52
  parentFolder.folders.push(folder);
53
53
  }
54
+ static expandLocationFolders(mediaService, parentId, id) {
55
+ const ratings = ['.all.', '.*.', '.**.'];
56
+ let rating;
57
+ for (let i = 0; i < ratings.length; i++) {
58
+ if (parentId.includes(ratings[i])) {
59
+ rating = ratings[i];
60
+ break;
61
+ }
62
+ }
63
+ if (rating) {
64
+ for (let i = 0; i < ratings.length; i++) {
65
+ const parentId1 = parentId.replace(rating, ratings[i]);
66
+ const id1 = id.replace(rating, ratings[i]);
67
+ const parentFolder = mediaService.getFolder(parentId1);
68
+ const folder = mediaService.getFolder(id1);
69
+ if (parentFolder && folder) {
70
+ LocationHelper.expandLocationFolder(mediaService, parentFolder, folder);
71
+ }
72
+ }
73
+ }
74
+ }
54
75
  static expandLocationFolder(mediaService, parentFolder, expandFolder) {
55
76
  const altColor = expandFolder.altColor;
56
77
  const pictureLocations = mediaService.pictureLocation;
@@ -1 +1 @@
1
- {"version":3,"file":"locationHelper.js","sourceRoot":"","sources":["../src/locationHelper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"locationHelper.js","sourceRoot":"","sources":["../src/locationHelper.ts"],"names":[],"mappings":"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"}
@@ -29,12 +29,7 @@ export class MediaService {
29
29
  countFiles;
30
30
  countList;
31
31
  countReferences;
32
- photoSelection = {
33
- rating: 1,
34
- criteria: 'ye',
35
- root: 'Jahr',
36
- selected: { name: 'Root', itemType: EItemType.Root }
37
- };
32
+ photoSelection = { rating: 1, criteria: 'ye' };
38
33
  constructor(rest, user, statistics, pictureParentLimit, log) {
39
34
  this.log = log;
40
35
  this.user = user;
@@ -87,6 +82,22 @@ export class MediaService {
87
82
  return true;
88
83
  }
89
84
  async initialize(mediaType) {
85
+ const rc = await this.getLists(mediaType ? mediaType : EMediaType.Picture);
86
+ let folder;
87
+ const stars = this.photoSelection.rating ? (this.photoSelection.rating == 1 ? '*' : '**') : 'all';
88
+ if (rc) {
89
+ switch (mediaType) {
90
+ case EMediaType.Audio:
91
+ folder = await this.initializeAudios();
92
+ break;
93
+ case EMediaType.Picture:
94
+ folder = await this.getPhotosByCriteria(stars, this.photoSelection.criteria);
95
+ break;
96
+ case EMediaType.Video:
97
+ folder = await this.initializeVideos();
98
+ break;
99
+ }
100
+ }
90
101
  return true;
91
102
  }
92
103
  getFolder(id) {
@@ -526,6 +537,8 @@ export class MediaService {
526
537
  return this.rest.toData(res);
527
538
  }
528
539
  async getLists(mediaType) {
540
+ if (this.listsInitialized & (1 << mediaType))
541
+ return true;
529
542
  const res = await this.rest.getData('apimedia/medialist', { mediaType: mediaType });
530
543
  const list = res.result;
531
544
  this.initializeLists(mediaType, list.lists, list.privateCreatorIdx);
@@ -1 +1 @@
1
- {"version":3,"file":"mediaService.js","sourceRoot":"","sources":["../src/mediaService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mediaService.js","sourceRoot":"","sources":["../src/mediaService.ts"],"names":[],"mappings":"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"}
@@ -21,12 +21,7 @@ export class MediaServiceBin {
21
21
  folders = {};
22
22
  medialists = {};
23
23
  pictureLocation = { name: "", values: [] };
24
- photoSelection = {
25
- rating: 1,
26
- criteria: 'ye',
27
- root: 'Jahr',
28
- selected: { name: 'Root', itemType: EItemType.Root }
29
- };
24
+ photoSelection = { rating: 1, criteria: 'ye' };
30
25
  listsInitialized = 0;
31
26
  foldersInitialized = 0;
32
27
  filesInitialized = 0;
@@ -450,9 +445,11 @@ export class MediaServiceBin {
450
445
  this.prepareAudios(folder);
451
446
  break;
452
447
  case EItemType.VideoRoot:
448
+ folder.info = `${folder.name} (${folder.childCount})`;
449
+ break;
453
450
  case EItemType.VideoGenreType:
454
451
  folder.info = `${folder.name} (${folder.childCount})`;
455
- //folder.Folders = []; why ?
452
+ this.prepareVideos(folder);
456
453
  break;
457
454
  case EItemType.VideoBroadcastFolder:
458
455
  case EItemType.VideoRecordedFolder:
@@ -471,6 +468,8 @@ export class MediaServiceBin {
471
468
  if (folder.files) {
472
469
  for (let i = 0; i < folder.files.length; i++) {
473
470
  const video = folder.files[i];
471
+ if (video.title)
472
+ continue; // Already prepared
474
473
  video.title = video.name;
475
474
  if (folder.itemType == EItemType.VideoRecordedFolder) {
476
475
  video.info = MediaHelper.durationString(video.duration);
@@ -504,6 +503,12 @@ export class MediaServiceBin {
504
503
  }
505
504
  }
506
505
  }
506
+ if (folder.folders) {
507
+ for (let i = 0; i < folder.folders.length; i++) {
508
+ const subFolder = folder.folders[i];
509
+ subFolder.title = subFolder.info = subFolder.name;
510
+ }
511
+ }
507
512
  folder.prepared = true;
508
513
  }
509
514
  prepareAudios(folder) {
@@ -1 +1 @@
1
- {"version":3,"file":"mediaServiceBin.js","sourceRoot":"","sources":["../src/mediaServiceBin.ts"],"names":[],"mappings":"AACA,OAAO,EAAW,MAAM,EACL,SAAS,EAAE,SAAS,EACtC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACwC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAmB,YAAY,EAAE,aAAa,EACzH,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,CAAC,MAAM,iBAAiB,GAAwC,MAAM,CAAC,eAAe,CAAC,CAAC;AAC9F,MAAM,OAAO,eAAe;IACxB,IAAI,CAAQ;IACZ,QAAQ,CAAS;IACjB,GAAG,CAAU;IACb,IAAI,GAAW,EAAE,CAAC;IAClB,QAAQ,GAAiB;QACvB,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ;QACvD,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;QACzG,IAAI,EAAE,CAAC,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE;KACzF,CAAC;IAEF,SAAS,CAAgB;IACzB,SAAS,CAAgB;IACzB,WAAW,CAAgB;IAC3B,UAAU,CAAgB;IAC1B,KAAK,GAA6B,EAAE,CAAA;IACpC,OAAO,GAA6B,EAAE,CAAA;IACtC,UAAU,GAAgC,EAAE,CAAC;IAC7C,eAAe,GAAoB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAC5D,cAAc,GAAoB;QAC9B,MAAM,EAAE,CAAC;QACT,QAAQ,EAAE,IAAI;QACd,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAC,IAAI,EAAkB;KACvE,CAAA;IACD,gBAAgB,GAAG,CAAC,CAAC;IACrB,kBAAkB,GAAG,CAAC,CAAC;IACvB,gBAAgB,GAAG,CAAC,CAAC;IACrB,YAAY,GAAG,EAAE,CAAC;IAClB,YAAY,GAAG,EAAE,CAAC;IAClB,UAAU,GAAW,CAAC,GAAG,CAAC;IAC1B,kBAAkB,GAAG,CAAC,CAAC;IACvB,UAAU,CAAc;IACxB,SAAS,CAAU;IACnB,YAAY,CAAmB;IAC/B,UAAU,CAAmB;IAC7B,SAAS,CAAmB;IAC5B,eAAe,CAAmB;IAElC,YAAY,IAAW,EAAE,IAAY,EAAE,UAAuB,EAAE,SAAkB,EAAE,kBAA0B,EAAE,GAAY;QACxH,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QACxE,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QACpE,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAClE,IAAI,CAAC,eAAe,GAAG,UAAU,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;QAC9E,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC;QAChC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,SAAsB;QACnC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACzB,IAAI,CAAE,MAAM,IAAI,CAAC,WAAW,EAAE;gBAC1B,OAAO,KAAK,CAAC;QACrB,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC3B,IAAI,MAAM,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC;gBAC/B,OAAO,KAAK,CAAC;QACrB,CAAC;QACD,IAAI,OAAO,SAAS,IAAI,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,EAAE,CAAC;YAC/E,IAAI,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC;gBACtC,OAAO,KAAK,CAAC;QACrB,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEO,KAAK,CAAC,WAAW;QACvB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,wBAAwB,EAAE,0BAA0B,CAAC,CAAC;QACxF,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACV,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,qBAAqB,GAAG,CAAC,UAAU,MAAM,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;YAC5E,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,MAAM,WAAW,GAAG,MAAO,GAAG,CAAC,MAAe,CAAC,WAAW,EAAE,CAAC;QAC7D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACtC,IAAI,IAAI,EAAE,CAAC;YACP,MAAM,OAAO,GAAa,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;YACrF,MAAM,gBAAgB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;YAC9C,SAAU,CAAC;gBACP,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;gBAClC,IAAI,CAAC,IAAI;oBACL,MAAM;gBACV,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;gBAC1C,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;gBAClC,MAAM,MAAM,GAAa,EAAE,CAAC;gBAC5B,MAAM,QAAQ,GAAe,EAAE,CAAC;gBAChC,IAAI,SAA0B,CAAC;gBAC/B,IAAI,WAAW,EAAE,CAAC;oBACd,MAAM,OAAO,GAAa,EAAE,CAAC;oBAC7B,SAAS,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;oBACjF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;wBAC7B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;wBAClC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;oBACtC,CAAC;oBACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;wBACtC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACtB,CAAC;oBACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;wBACtC,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;wBAC7B,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;4BACjB,MAAM,UAAU,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;4BACvC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;wBACvB,CAAC;oBACL,CAAC;gBACL,CAAC;qBACI,CAAC;oBACF,SAAS,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;oBAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;wBAC7B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;oBACtC,CAAC;gBACL,CAAC;gBACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC;gBAClC,IAAI,IAAI,IAAI,iBAAiB,IAAI,IAAI,CAAC,IAAI,IAAI,eAAe,IAAI,IAAI,CAAC,IAAI,IAAI,eAAe,EAAE,CAAC;oBAC5F,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;gBAC/D,CAAC;gBACD,IAAI,IAAI,IAAI,kBAAkB,EAAE,CAAC;oBAC7B,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;gBACrC,CAAC;gBACD,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;gBACzD,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC5B,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,IAAI,CAAC,gBAAgB,QAAQ,CAAC,CAAC;QACpE,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IACO,KAAK,CAAC,aAAa;QACvB,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAClC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,0BAA0B,EAAE,0BAA0B,CAAC,CAAC;QAC1F,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACV,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,uBAAuB,GAAG,CAAC,UAAU,MAAM,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;YAC9E,OAAO,CAAC,CAAC,CAAC;QACd,CAAC;QACD,MAAM,WAAW,GAAG,MAAO,GAAG,CAAC,MAAe,CAAC,WAAW,EAAE,CAAC;QAC7D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACtC,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAChC,IAAI,IAAI,EAAE,CAAC;YACP,MAAM,OAAO,GAAa,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;YACrF,MAAM,gBAAgB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;YAC9C,IAAI,QAAmB,CAAC;YACxB,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,IAAI,SAAS,CAAC,GAAG,EAAE,CAAC;gBACvD,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;oBAClC,OAAO,CAAC,CAAC;gBACb,MAAM,IAAI,GAAG,EAAkB,CAAA;gBAC/B,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;gBAC9C,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,SAAS;oBAC5D,IAAI,CAAC,OAAO,CAAC,IAAoB,CAAC,CAAC;qBAClC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAoB,CAAC;oBAC7C,OAAO,CAAC,CAAC;gBACb,KAAK,EAAE,CAAC;YACZ,CAAC;YACD,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;YAC9B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,qBAAqB,KAAK,eAAe,KAAK,GAAG,KAAK,IAAI,GAAG,GAAG,KAAK,KAAK,CAAC,CAAC;QAC9F,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;QACpD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAgB,iBAAiB;QACnE,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,OAAO,KAAK,CAAC;IACjB,CAAC;IACO,KAAK,CAAC,WAAW,CAAC,SAAqB;QAC3C,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAChC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,wBAAwB,EAAE,0BAA0B,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;QACpH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACV,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,eAAe,UAAU,CAAC,SAAS,CAAC,UAAU,GAAG,CAAC,UAAU,MAAM,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;YACrG,OAAO,CAAC,CAAC,CAAC;QACd,CAAC;QACD,MAAM,WAAW,GAAG,MAAO,GAAG,CAAC,MAAe,CAAC,WAAW,EAAE,CAAC;QAC7D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACtC,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAChC,IAAI,IAAI,EAAE,CAAC;YACP,MAAM,OAAO,GAAa,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;YACrF,MAAM,KAAK,GAA2B,EAAE,CAAC;YACzC,IAAI,QAAmB,CAAC;YACxB,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,IAAI,SAAS,CAAC,GAAG,EAAE,CAAC;gBACvD,IAAI,QAAQ,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;oBAClC,mBAAmB;oBACnB,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;oBACtC,IAAI,MAAc,CAAC;oBACnB,OAAO,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;wBACnC,IAAI,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;4BAClD,QAAQ,EAAE,CAAC;wBACf,CAAC;oBACL,CAAC;gBACL,CAAC;qBACI,CAAC;oBACJ,aAAa;oBACX,MAAM,IAAI,GAAG,EAAgB,CAAC;oBAC9B,IAAI,CAAC,aAAa,CAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;oBAC7C,IAAI,QAAQ,GAAG,WAAW,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;wBAC/C,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;4BAC1B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;4BAC1B,KAAK,EAAE,CAAC;wBACZ,CAAC;oBACL,CAAC;gBACL,CAAC;YACL,CAAC;YACD,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAClD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAO,aAAa;YACzD,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC;YAC1C,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;YAC9B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,KAAK,IAAI,UAAU,CAAC,SAAS,CAAC,aAAa,KAAK,GAAG,KAAK,IAAI,GAAG,GAAG,KAAK,KAAK,CAAC,CAAC;YAC/G,IAAI,SAAS,IAAI,UAAU,CAAC,OAAO,IAAI,IAAI,CAAC,kBAAkB,GAAG,CAAC,EAAE,CAAC;gBACjE,cAAc,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAC/C,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,YAAY,CAAC,IAAY,EAAE,GAAW;QAClC,IAAI,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,IAAI,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM;YAChC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC5B,OAAO,GAAG,IAAI,IAAI,GAAG,EAAE,CAAC;IAC5B,CAAC;IACD,OAAO,CAAC,SAAqB;QACzB,IAAI,MAAoB,CAAC;QACzB,QAAQ,SAAS,EAAE,CAAC;YAChB,KAAK,UAAU,CAAC,KAAK;gBAAO,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC;gBAAC,MAAM;YAC3D,KAAK,UAAU,CAAC,KAAK;gBAAO,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC;gBAAC,MAAM;YAC3D,KAAK,UAAU,CAAC,OAAO;gBAAK,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC;gBAAC,MAAM;gBAAA,CAAC;YAC9D,KAAK,UAAU,CAAC,MAAM;gBAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;gBAAC,MAAM;QAChE,CAAC;QACD,IAAI,MAAM;YACN,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAS,aAAa;QACjE,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,SAAS,CAAC,EAAU;QAChB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAChC,IAAI,MAAM,EAAE,CAAC;YACT,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACzB,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IACD,OAAO,CAAC,MAAoB;QACxB,IAAI,CAAC,MAAM,CAAC,QAAQ;YAChB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC/B,IAAI,MAAM,CAAC,OAAO,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;YACtD,6EAA6E;YAC7E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC7C,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,CAAC;YACD,MAAM,CAAC,iBAAiB,GAAG,IAAI,CAAC;QACpC,CAAC;IACL,CAAC;IACD,SAAS,CAAC,MAAoB;QAC1B,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,IAAI,OAAO,CAAe,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChF,CAAC;IACD,SAAS,CAAC,MAAoB;QAC1B,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,IAAI,OAAO,CAAe,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChF,CAAC;IACD,SAAS,CAAC,MAAoB;QAC1B,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,IAAI,OAAO,CAAe,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChF,CAAC;IACD,mBAAmB,CAAC,KAAa,EAAE,QAAgB;QAC/C,IAAI,MAAoB,CAAC;QACzB,IAAI,QAAQ,IAAI,IAAI,EAAI,KAAK;YACzB,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,IAAI,QAAQ,GAAG,CAAC,CAAC;;YAEpD,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC,CAAC;QACvD,OAAO,IAAI,OAAO,CAAe,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChF,CAAC;IACD,cAAc;QACV,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IACD,YAAY;QACR,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IACD,eAAe;QACX,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IACD,cAAc,CAAC,SAAiB;QAC5B,MAAM,WAAW,GAAG,GAAG,IAAI,CAAC,QAAQ,uBAAuB,SAAS,EAAE,CAAC;QACvE,OAAO,SAAS,CAAC,WAAW,CAAC,CAAC;IAClC,CAAC;IACD,WAAW,CAAC,SAAiB,EAAE,GAAW,EAAE,MAAc;QACtD,MAAM,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,oBAAoB,MAAM,GAAG,SAAS,GAAG,GAAG,EAAE,CAAC;QAC9E,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;IACD,mBAAmB,CAAC,MAAoB,EAAE,OAAqB,EAAE,KAAoB;QACjF,OAAO,WAAW,CAAC,mBAAmB,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;IACzF,CAAC;IACD,WAAW,CAAC,IAAgB;QACxB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC9C,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,QAAQ,kBAAkB,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC1E,OAAO,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IACD,WAAW,CAAC,GAAW;QACnB,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,QAAQ,kBAAkB,GAAG,EAAE,CAAC;QACzD,OAAO,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IACD,mBAAmB,CAAC,SAAiB,EAAE,KAAc,EAAE,KAAc;QACjE,IAAI,WAAW,GAAG,GAAG,IAAI,CAAC,QAAQ,+BAA+B,SAAS,EAAE,CAAC;QAC7E,IAAI,KAAK,IAAI,KAAK;YACd,WAAW,IAAI,UAAU,KAAK,WAAW,KAAK,EAAE,CAAC;QACrD,OAAO,SAAS,CAAC,WAAW,CAAC,CAAC;IAClC,CAAC;IACD,oBAAoB,CAAC,MAAoB,EAAE,IAAa,EAAE,OAAgB,EAAE,QAAmB;QAC3F,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC5C,IAAI,WAAW,GAAG,GAAG,IAAI,CAAC,QAAQ,yBAAyB,IAAI,OAAO,MAAM,CAAC,MAAM,EAAE,CAAC;QACtF,IAAI,IAAI;YACJ,WAAW,IAAI,SAAS,IAAI,EAAE,CAAC;QACnC,IAAI,OAAO;YACP,WAAW,IAAI,YAAY,OAAO,EAAE,CAAC;QACzC,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;YAC/B,WAAW,IAAI,aAAa,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACrD,OAAO,SAAS,CAAC,WAAW,CAAC,CAAC;IAClC,CAAC;IACD,UAAU,CAAC,IAAY;QACnB,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,+BAA+B,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IACpF,CAAC;IACD,KAAK,CAAC,IAAI;QACN,IAAI,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAuB,gBAAgB,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;YACjG,OAAO,GAAG,CAAC,EAAE,IAAK,GAAG,CAAC,MAA+B,CAAC,MAAM,KAAK,MAAM,CAAC;QAC5E,CAAC;QACD,OAAO,CAAC,EAAE,CAAC;YACP,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IACD,QAAQ,CAAC,GAAW;QAChB,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QACjD,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IACD,KAAK,CAAC,WAAW,CAAC,QAAgB,EAAE,OAAe;QAC/C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAkB,oBAAoB,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;QACtH,OAAO,IAAI,CAAC,MAAyB,CAAC;IAC1C,CAAC;IACD,KAAK,CAAC,aAAa,CAAC,WAAmB,EAAE,aAAqB;QAC1D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAa,sBAAsB,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC;QAC3H,OAAO,IAAI,CAAC,MAAoB,CAAC;IACrC,CAAC;IACD,eAAe,CAAC,WAAmB,EAAE,KAAa;QAC9C,MAAM,GAAG,GAAG,0CAA0C,kBAAkB,CAAC,WAAW,CAAC,UAAU,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3H,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IACD,KAAK,CAAC,MAAM,CAAC,IAAc;QACvB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;QAC/D,OAAO,GAAG,CAAC,EAAE,CAAC;IAClB,CAAC;IACD,KAAK,CAAC,aAAa,CAAC,IAAU,EAAE,SAAiB,EAAE,QAA+B;QAC9E,MAAM,IAAI,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC;QACnC,IAAI,CAAC,QAAQ;YACT,QAAQ,GAAG,CAAC,GAAW,EAAE,EAAE,GAAG,CAAC,CAAC,CAAK,gBAAgB;QACzD,IAAI,GAAG,GAAG,qCAAqC,SAAS,SAAS,IAAI,CAAC,IAAI,aAAa,IAAI,EAAE,CAAC;QAC9F,IAAI,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAc,GAAG,CAAC,CAAC;QACvD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACV,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACzB,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,IAAI,MAAM,GAAG,GAAG,CAAC,MAA8B,CAAC;QAChD,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI,EAAE,CAAC;YACxB,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACxB,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,QAAQ,CAAC,cAAc,CAAC,CAAC;QACzB,MAAM,SAAS,GAAG,OAAO,CAAC;QAC1B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,IAAI,SAAS,EAAE,CAAC;YACxD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YACnD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YACpC,MAAM,KAAK,GAAG,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC;YAC/B,IAAI,GAAG,GAAG,kCAAkC,KAAK,aAAa,IAAI,UAAU,KAAK,EAAE,CAAC;YACpF,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAS,GAAG,EAAE,IAAI,CAAC,CAAC;YAClD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACV,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBACzB,OAAO,KAAK,CAAC;YACjB,CAAC;YACD,IAAI,MAAM,GAAG,GAAG,CAAC,MAA8B,CAAC;YAChD,IAAI,KAAK,EAAE,CAAC;gBACR,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACxB,OAAO,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC;YACjC,CAAC;YACD,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACxB,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC9B,OAAO,KAAK,CAAC;QACrB,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,KAAK,CAAC,cAAc,CAAC,IAAY;QAC7B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAW,gCAAgC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAChG,IAAI,GAAG,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;YAChB,OAAO,GAAG,CAAC,MAAkB,CAAC;QAClC,CAAC;QACD,OAAO,EAAE,CAAC;IACd,CAAC;IACD,KAAK,CAAC,QAAQ,CAAC,IAAY;QACvB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAW,0BAA0B,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1F,IAAI,GAAG,IAAI,GAAG,CAAC,EAAE;YACb,OAAO,GAAG,CAAC,MAAkB,CAAC;QAClC,OAAO,EAAE,CAAC;IACd,CAAC;IACD,KAAK,CAAC,eAAe,CAAC,EAAU,EAAE,IAAY,EAAE,MAAc,EAAE,YAAoB,GAAG,EAAE,QAAmB;QACxG,MAAM,IAAI,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;QAC9F,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAW,uBAAuB,EAAE,IAAI,CAAC,CAAC;QAChF,OAAO,GAAG,CAAC;IACf,CAAC;IACO,aAAa,CAAC,MAAoB;QACtC,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC;QACtB,IAAI,MAAM,CAAC,OAAO,IAAI,IAAI;YACtB,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;QAC/C,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI;YACpB,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;QAC7C,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;QAC3B,MAAM,CAAC,QAAQ,GAAG,EAAE,CAAC;QACrB,QAAQ,MAAM,CAAC,QAAQ,EAAE,CAAC;YACtB,KAAK,SAAS,CAAC,WAAW,CAAC;YAC3B,KAAK,SAAS,CAAC,aAAa,CAAC;YAC7B,KAAK,SAAS,CAAC,aAAa,CAAC;YAC7B,KAAK,SAAS,CAAC,gBAAgB,CAAC;YAChC,KAAK,SAAS,CAAC,eAAe,CAAC;YAC/B,KAAK,SAAS,CAAC,WAAW;gBACtB,MAAM,CAAC,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,UAAU,GAAG,CAAA;gBACrD,MAAM;YACV,KAAK,SAAS,CAAC,YAAY;gBACvB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;gBAC3B,MAAM;YACV,KAAK,SAAS,CAAC,SAAS,CAAC;YACzB,KAAK,SAAS,CAAC,UAAU,CAAC;YAC1B,KAAK,SAAS,CAAC,WAAW;gBACtB,MAAM,CAAC,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,UAAU,GAAG,CAAA;gBACrD,MAAM;YACV,KAAK,SAAS,CAAC,UAAU,CAAC;YAC1B,KAAK,SAAS,CAAC,oBAAoB;gBAC/B,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;gBAC3B,MAAM;YACV,KAAK,SAAS,CAAC,SAAS,CAAC;YACzB,KAAK,SAAS,CAAC,cAAc;gBACzB,MAAM,CAAC,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,UAAU,GAAG,CAAA;gBACrD,iCAAiC;gBACjC,MAAM;YACV,KAAK,SAAS,CAAC,oBAAoB,CAAC;YACpC,KAAK,SAAS,CAAC,mBAAmB,CAAC;YACnC,KAAK,SAAS,CAAC,aAAa;gBACxB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;gBAC3B,MAAM;YACV,KAAK,SAAS,CAAC,UAAU;gBACrB,MAAM,CAAC,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,UAAU,GAAG,CAAA;gBACrD,MAAM;QACd,CAAC;QACD,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC3B,CAAC;IACO,aAAa,CAAC,MAAoB;QACtC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;QAC3B,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC;QACzD,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAe,CAAC;gBAC5C,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;gBACzB,IAAI,MAAM,CAAC,QAAQ,IAAI,SAAS,CAAC,mBAAmB,EAAE,CAAC;oBACnD,KAAK,CAAC,IAAI,GAAG,WAAW,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;oBACxD,KAAK,CAAC,YAAY,GAAG,EAAE,CAAC;oBACxB,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,WAAW,CAAC;gBACvC,CAAC;qBACI,IAAI,MAAM,CAAC,QAAQ,IAAI,SAAS,CAAC,oBAAoB,EAAE,CAAC;oBACzD,KAAK,CAAC,IAAI,GAAG,WAAW,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;oBACxD,IAAI,MAAM,CAAC,GAAG,IAAI,KAAK,CAAC,GAAG;wBACvB,KAAK,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;oBACvC,IAAI,MAAM,CAAC,YAAY,IAAI,KAAK,CAAC,YAAY;wBACzC,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;oBAClE,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,WAAW,CAAC;gBACvC,CAAC;qBACI,CAAC;oBACF,KAAK,CAAC,IAAI,GAAG,WAAW,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;oBACxD,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;oBAC7D,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC;oBACpB,IAAI,KAAK,CAAC,IAAI;wBACV,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAC3C,IAAI,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,EAAE,CAAC;wBAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,iBAAiB,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;wBACvE,IAAI,OAAO;4BACP,KAAK,CAAC,QAAQ,IAAI,KAAK,GAAG,OAAO,CAAC;oBAC1C,CAAC;oBACD,IAAI,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,EAAE,CAAC;wBAC5C,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;wBAClE,IAAI,GAAG;4BACH,KAAK,CAAC,QAAQ,IAAI,KAAK,GAAG,GAAG,CAAC;oBACtC,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QACD,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC3B,CAAC;IACO,aAAa,CAAC,MAAoB;QACtC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;QAC3B,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC;QACzD,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC/D,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAe,CAAC;gBAC5C,KAAK,CAAC,KAAK,GAAG,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;gBAC/C,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,oBAAoB,EAAE,CAAC;oBACrD,KAAK,CAAC,IAAI,GAAG,WAAW,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;oBACxD,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,WAAW,CAAC;oBACnC,IAAI,MAAM,CAAC,GAAG;wBACV,KAAK,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;gBAC3C,CAAC;qBACI,CAAC;oBACF,KAAK,CAAC,QAAQ,GAAG,WAAW,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;oBAC5D,KAAK,CAAC,YAAY,GAAG,EAAE,CAAC;gBAC5B,CAAC;YACL,CAAC;QACL,CAAC;QACD,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC3B,CAAC;IACO,aAAa,CAAC,MAAoB;QACtC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;QAC3B,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC;QACzD,IAAI,MAAM,CAAC,UAAU;YACjB,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;;YAE1B,MAAM,CAAC,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,UAAU,GAAG,CAAC;QAC1D,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAiB,CAAC;gBAC9C,KAAK,CAAC,KAAK,GAAG,WAAW,CAAC,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;gBAC3F,qCAAqC;YACzC,CAAC;QACL,CAAC;QACD,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC3B,CAAC;IAEO,aAAa,CAAC,CAAW,EAAE,IAAgB,EAAE,QAAmB;QACpE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC5B,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC9B,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAC7B,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAC5B,MAAM,aAAa,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QACrC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAC1B,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;IACvC,CAAC;IACO,eAAe,CAAC,CAAW,EAAE,MAAoB,EAAE,QAAmB;QAC1E,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;QACxC,MAAM,YAAY,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QACpC,MAAM,gBAAgB,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QACxC,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAClC,MAAM,UAAU,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;QACnC,MAAM,iBAAiB,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QACxC,MAAM,cAAc,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;IACzC,CAAC;IACO,aAAa,CAAE,CAAW,EAAE,IAAgB,EAAE,QAAmB;QACrE,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACtC,QAAQ,QAAQ,EAAE,CAAC;YACf,KAAK,SAAS,CAAC,cAAc,CAAC;YAC9B,KAAK,SAAS,CAAC,UAAU;gBACrB,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,IAAkB,CAAC,CAAC;gBAC/C,MAAM;YACV,KAAK,SAAS,CAAC,WAAW;gBACtB,IAAI,CAAC,oBAAoB,CAAC,CAAC,EAAE,IAAoB,CAAC,CAAC;gBACnD,MAAM;YACV,KAAK,SAAS,CAAC,cAAc,CAAC;YAC9B,KAAK,SAAS,CAAC,SAAS;gBACpB,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,IAAkB,CAAC,CAAC;gBAC/C,MAAM;QACd,CAAC;IACL,CAAC;IACO,kBAAkB,CAAC,CAAW,EAAE,IAAgB;QACpD,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAClC,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAChC,MAAM,WAAW,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC9B,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;IACjC,CAAC;IACO,kBAAkB,CAAC,CAAW,EAAE,IAAgB;QACpD,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAClC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC/B,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC9B,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QACnC,IAAI,KAAK,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC1B,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACZ,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;YACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE;gBAC1B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;QAC3C,CAAC;IACL,CAAC;IACO,oBAAoB,CAAC,CAAW,EAAE,IAAkB;QACxD,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAC3B,MAAM,SAAS,GAAG,CAAC,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC;QACxC,MAAM,EAAE,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC;QAC3D,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAClC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QACjC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,mBAAmB,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC1C,IAAI,CAAC,WAAW,GAAG,mBAAmB,GAAG,YAAY,CAAC,IAAI,CAAC;QAC3D,IAAI,CAAC,KAAK,GAAG,mBAAmB,GAAG,aAAa,CAAC,IAAI,CAAC;QACtD,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QACjC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC9B,IAAI,KAAK,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC1B,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACZ,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;YACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE;gBAC1B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;QAC5C,CAAC;IACL,CAAC;IAEO,OAAO,CAAC,IAAkB;QAC9B,IAAI,IAAI,CAAC,MAAM,IAAI,GAAG;YAClB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;aACpB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACrB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;YAC/B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YACpC,QAAQ,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACpB,KAAK,SAAS,CAAC,SAAS;oBAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;oBAAC,MAAM;gBACzD,KAAK,SAAS,CAAC,SAAS;oBAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;oBAAC,MAAM;gBACzD,KAAK,SAAS,CAAC,WAAW;oBAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;oBAAC,MAAM;gBAC3D,KAAK,SAAS,CAAC,UAAU;oBAAG,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;oBAAC,MAAM;YAC9D,CAAC;QACL,CAAC;IACL,CAAC;IACO,SAAS,CAAC,MAAoB,EAAE,MAAoB;QACxD,MAAM,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;QACpC,IAAI,CAAC,MAAM,CAAC,OAAO;YACf,MAAM,CAAC,OAAO,GAAG,EAAE,CAAC;QACxB,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI;YACrB,MAAM,CAAC,MAAM,GAAG,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;QAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC9C,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;YACrC,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC;YACvE,IAAI,GAAG,IAAI,CAAC;gBACR,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;;gBAE7B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpC,CAAC;aACI,CAAC;YACF,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;YACrC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IACO,YAAY,CAAC,MAAoB;QACrC,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YACtB,IAAI,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YACrD,IAAI,CAAC,YAAY;gBACb,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YACnD,IAAI,YAAY;gBACZ,OAAO,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IACO,iBAAiB,CAAC,QAAgB,EAAE,MAAc,EAAE,KAA6B;QAErF,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;QAC3B,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,sBAAsB,QAAQ,IAAI,MAAM,cAAc,CAAC,CAAC;YACzE,OAAO,KAAK,CAAC;QAEjB,CAAC;QACD,IAAI,QAAQ,EAAE,CAAC;YACX,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC5C,IAAI,YAAY,EAAE,CAAC;gBACf,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC;oBACpB,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBACnD,IAAI,UAAU;wBACV,YAAY,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC;gBAC1C,CAAC;gBACD,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;YAC5C,CAAC;QACL,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,sBAAsB,IAAI,CAAC,IAAI,oBAAoB,CAAC,CAAC;QACtE,OAAO,KAAK,CAAC;IACjB,CAAC;IACO,YAAY,CAAC,IAAgB;QACjC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACrD,IAAI,YAAY;gBACZ,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QAChD,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,IAAI,CAAC,IAAI,oBAAoB,CAAC,CAAC;QAC5D,OAAO,KAAK,CAAC;IACjB,CAAC;IACO,OAAO,CAAC,MAAoB,EAAE,IAAgB;QAClD,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;YACzC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;QACtC,CAAC;QACD,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI;YACpB,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC;QACtB,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI;YACnB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,GAAG,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;QAChE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAExB,OAAO,IAAI,CAAC;IAChB,CAAC;IACO,aAAa,CAAC,MAAoB;QACtC,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;gBACvC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU;oBAC7C,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;;oBAE1B,CAAC,EAAE,CAAC;YACZ,CAAC;YACD,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;QAC5C,CAAC;IACL,CAAC;CACJ"}
1
+ {"version":3,"file":"mediaServiceBin.js","sourceRoot":"","sources":["../src/mediaServiceBin.ts"],"names":[],"mappings":"AACA,OAAO,EAAW,MAAM,EACL,SAAS,EAAE,SAAS,EACtC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACwC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAmB,YAAY,EAAE,aAAa,EACzH,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,CAAC,MAAM,iBAAiB,GAAwC,MAAM,CAAC,eAAe,CAAC,CAAC;AAC9F,MAAM,OAAO,eAAe;IACxB,IAAI,CAAQ;IACZ,QAAQ,CAAS;IACjB,GAAG,CAAU;IACb,IAAI,GAAW,EAAE,CAAC;IAClB,QAAQ,GAAiB;QACvB,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ;QACvD,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;QACzG,IAAI,EAAE,CAAC,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE;KACzF,CAAC;IAEF,SAAS,CAAgB;IACzB,SAAS,CAAgB;IACzB,WAAW,CAAgB;IAC3B,UAAU,CAAgB;IAC1B,KAAK,GAA6B,EAAE,CAAA;IACpC,OAAO,GAA6B,EAAE,CAAA;IACtC,UAAU,GAAgC,EAAE,CAAC;IAC7C,eAAe,GAAoB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAC5D,cAAc,GAAoB,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAA;IAC/D,gBAAgB,GAAG,CAAC,CAAC;IACrB,kBAAkB,GAAG,CAAC,CAAC;IACvB,gBAAgB,GAAG,CAAC,CAAC;IACrB,YAAY,GAAG,EAAE,CAAC;IAClB,YAAY,GAAG,EAAE,CAAC;IAClB,UAAU,GAAW,CAAC,GAAG,CAAC;IAC1B,kBAAkB,GAAG,CAAC,CAAC;IACvB,UAAU,CAAc;IACxB,SAAS,CAAU;IACnB,YAAY,CAAmB;IAC/B,UAAU,CAAmB;IAC7B,SAAS,CAAmB;IAC5B,eAAe,CAAmB;IAElC,YAAY,IAAW,EAAE,IAAY,EAAE,UAAuB,EAAE,SAAkB,EAAE,kBAA0B,EAAE,GAAY;QACxH,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QACxE,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QACpE,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAClE,IAAI,CAAC,eAAe,GAAG,UAAU,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;QAC9E,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC;QAChC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,SAAsB;QACnC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACzB,IAAI,CAAE,MAAM,IAAI,CAAC,WAAW,EAAE;gBAC1B,OAAO,KAAK,CAAC;QACrB,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC3B,IAAI,MAAM,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC;gBAC/B,OAAO,KAAK,CAAC;QACrB,CAAC;QACD,IAAI,OAAO,SAAS,IAAI,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,EAAE,CAAC;YAC/E,IAAI,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC;gBACtC,OAAO,KAAK,CAAC;QACrB,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEO,KAAK,CAAC,WAAW;QACvB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,wBAAwB,EAAE,0BAA0B,CAAC,CAAC;QACxF,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACV,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,qBAAqB,GAAG,CAAC,UAAU,MAAM,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;YAC5E,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,MAAM,WAAW,GAAG,MAAO,GAAG,CAAC,MAAe,CAAC,WAAW,EAAE,CAAC;QAC7D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACtC,IAAI,IAAI,EAAE,CAAC;YACP,MAAM,OAAO,GAAa,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;YACrF,MAAM,gBAAgB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;YAC9C,SAAU,CAAC;gBACP,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;gBAClC,IAAI,CAAC,IAAI;oBACL,MAAM;gBACV,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;gBAC1C,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;gBAClC,MAAM,MAAM,GAAa,EAAE,CAAC;gBAC5B,MAAM,QAAQ,GAAe,EAAE,CAAC;gBAChC,IAAI,SAA0B,CAAC;gBAC/B,IAAI,WAAW,EAAE,CAAC;oBACd,MAAM,OAAO,GAAa,EAAE,CAAC;oBAC7B,SAAS,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;oBACjF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;wBAC7B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;wBAClC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;oBACtC,CAAC;oBACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;wBACtC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACtB,CAAC;oBACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;wBACtC,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;wBAC7B,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;4BACjB,MAAM,UAAU,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;4BACvC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;wBACvB,CAAC;oBACL,CAAC;gBACL,CAAC;qBACI,CAAC;oBACF,SAAS,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;oBAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;wBAC7B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;oBACtC,CAAC;gBACL,CAAC;gBACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC;gBAClC,IAAI,IAAI,IAAI,iBAAiB,IAAI,IAAI,CAAC,IAAI,IAAI,eAAe,IAAI,IAAI,CAAC,IAAI,IAAI,eAAe,EAAE,CAAC;oBAC5F,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;gBAC/D,CAAC;gBACD,IAAI,IAAI,IAAI,kBAAkB,EAAE,CAAC;oBAC7B,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;gBACrC,CAAC;gBACD,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;gBACzD,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC5B,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,IAAI,CAAC,gBAAgB,QAAQ,CAAC,CAAC;QACpE,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IACO,KAAK,CAAC,aAAa;QACvB,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAClC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,0BAA0B,EAAE,0BAA0B,CAAC,CAAC;QAC1F,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACV,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,uBAAuB,GAAG,CAAC,UAAU,MAAM,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;YAC9E,OAAO,CAAC,CAAC,CAAC;QACd,CAAC;QACD,MAAM,WAAW,GAAG,MAAO,GAAG,CAAC,MAAe,CAAC,WAAW,EAAE,CAAC;QAC7D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACtC,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAChC,IAAI,IAAI,EAAE,CAAC;YACP,MAAM,OAAO,GAAa,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;YACrF,MAAM,gBAAgB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;YAC9C,IAAI,QAAmB,CAAC;YACxB,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,IAAI,SAAS,CAAC,GAAG,EAAE,CAAC;gBACvD,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;oBAClC,OAAO,CAAC,CAAC;gBACb,MAAM,IAAI,GAAG,EAAkB,CAAA;gBAC/B,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;gBAC9C,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,SAAS;oBAC5D,IAAI,CAAC,OAAO,CAAC,IAAoB,CAAC,CAAC;qBAClC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAoB,CAAC;oBAC7C,OAAO,CAAC,CAAC;gBACb,KAAK,EAAE,CAAC;YACZ,CAAC;YACD,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;YAC9B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,qBAAqB,KAAK,eAAe,KAAK,GAAG,KAAK,IAAI,GAAG,GAAG,KAAK,KAAK,CAAC,CAAC;QAC9F,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;QACpD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAgB,iBAAiB;QACnE,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,OAAO,KAAK,CAAC;IACjB,CAAC;IACO,KAAK,CAAC,WAAW,CAAC,SAAqB;QAC3C,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAChC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,wBAAwB,EAAE,0BAA0B,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;QACpH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACV,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,eAAe,UAAU,CAAC,SAAS,CAAC,UAAU,GAAG,CAAC,UAAU,MAAM,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;YACrG,OAAO,CAAC,CAAC,CAAC;QACd,CAAC;QACD,MAAM,WAAW,GAAG,MAAO,GAAG,CAAC,MAAe,CAAC,WAAW,EAAE,CAAC;QAC7D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACtC,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAChC,IAAI,IAAI,EAAE,CAAC;YACP,MAAM,OAAO,GAAa,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;YACrF,MAAM,KAAK,GAA2B,EAAE,CAAC;YACzC,IAAI,QAAmB,CAAC;YACxB,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,IAAI,SAAS,CAAC,GAAG,EAAE,CAAC;gBACvD,IAAI,QAAQ,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;oBAClC,mBAAmB;oBACnB,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;oBACtC,IAAI,MAAc,CAAC;oBACnB,OAAO,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;wBACnC,IAAI,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;4BAClD,QAAQ,EAAE,CAAC;wBACf,CAAC;oBACL,CAAC;gBACL,CAAC;qBACI,CAAC;oBACJ,aAAa;oBACX,MAAM,IAAI,GAAG,EAAgB,CAAC;oBAC9B,IAAI,CAAC,aAAa,CAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;oBAC7C,IAAI,QAAQ,GAAG,WAAW,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;wBAC/C,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;4BAC1B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;4BAC1B,KAAK,EAAE,CAAC;wBACZ,CAAC;oBACL,CAAC;gBACL,CAAC;YACL,CAAC;YACD,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAClD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAO,aAAa;YACzD,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC;YAC1C,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;YAC9B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,KAAK,IAAI,UAAU,CAAC,SAAS,CAAC,aAAa,KAAK,GAAG,KAAK,IAAI,GAAG,GAAG,KAAK,KAAK,CAAC,CAAC;YAC/G,IAAI,SAAS,IAAI,UAAU,CAAC,OAAO,IAAI,IAAI,CAAC,kBAAkB,GAAG,CAAC,EAAE,CAAC;gBACjE,cAAc,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAC/C,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,YAAY,CAAC,IAAY,EAAE,GAAW;QAClC,IAAI,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,IAAI,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM;YAChC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC5B,OAAO,GAAG,IAAI,IAAI,GAAG,EAAE,CAAC;IAC5B,CAAC;IACD,OAAO,CAAC,SAAqB;QACzB,IAAI,MAAoB,CAAC;QACzB,QAAQ,SAAS,EAAE,CAAC;YAChB,KAAK,UAAU,CAAC,KAAK;gBAAO,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC;gBAAC,MAAM;YAC3D,KAAK,UAAU,CAAC,KAAK;gBAAO,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC;gBAAC,MAAM;YAC3D,KAAK,UAAU,CAAC,OAAO;gBAAK,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC;gBAAC,MAAM;gBAAA,CAAC;YAC9D,KAAK,UAAU,CAAC,MAAM;gBAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;gBAAC,MAAM;QAChE,CAAC;QACD,IAAI,MAAM;YACN,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAS,aAAa;QACjE,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,SAAS,CAAC,EAAU;QAChB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAChC,IAAI,MAAM,EAAE,CAAC;YACT,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACzB,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IACD,OAAO,CAAC,MAAoB;QACxB,IAAI,CAAC,MAAM,CAAC,QAAQ;YAChB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC/B,IAAI,MAAM,CAAC,OAAO,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;YACtD,6EAA6E;YAC7E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC7C,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,CAAC;YACD,MAAM,CAAC,iBAAiB,GAAG,IAAI,CAAC;QACpC,CAAC;IACL,CAAC;IACD,SAAS,CAAC,MAAoB;QAC1B,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,IAAI,OAAO,CAAe,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChF,CAAC;IACD,SAAS,CAAC,MAAoB;QAC1B,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,IAAI,OAAO,CAAe,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChF,CAAC;IACD,SAAS,CAAC,MAAoB;QAC1B,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,IAAI,OAAO,CAAe,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChF,CAAC;IACD,mBAAmB,CAAC,KAAa,EAAE,QAAgB;QAC/C,IAAI,MAAoB,CAAC;QACzB,IAAI,QAAQ,IAAI,IAAI,EAAI,KAAK;YACzB,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,IAAI,QAAQ,GAAG,CAAC,CAAC;;YAEpD,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC,CAAC;QACvD,OAAO,IAAI,OAAO,CAAe,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChF,CAAC;IACD,cAAc;QACV,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IACD,YAAY;QACR,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IACD,eAAe;QACX,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IACD,cAAc,CAAC,SAAiB;QAC5B,MAAM,WAAW,GAAG,GAAG,IAAI,CAAC,QAAQ,uBAAuB,SAAS,EAAE,CAAC;QACvE,OAAO,SAAS,CAAC,WAAW,CAAC,CAAC;IAClC,CAAC;IACD,WAAW,CAAC,SAAiB,EAAE,GAAW,EAAE,MAAc;QACtD,MAAM,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,oBAAoB,MAAM,GAAG,SAAS,GAAG,GAAG,EAAE,CAAC;QAC9E,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;IACD,mBAAmB,CAAC,MAAoB,EAAE,OAAqB,EAAE,KAAoB;QACjF,OAAO,WAAW,CAAC,mBAAmB,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;IACzF,CAAC;IACD,WAAW,CAAC,IAAgB;QACxB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC9C,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,QAAQ,kBAAkB,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC1E,OAAO,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IACD,WAAW,CAAC,GAAW;QACnB,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,QAAQ,kBAAkB,GAAG,EAAE,CAAC;QACzD,OAAO,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IACD,mBAAmB,CAAC,SAAiB,EAAE,KAAc,EAAE,KAAc;QACjE,IAAI,WAAW,GAAG,GAAG,IAAI,CAAC,QAAQ,+BAA+B,SAAS,EAAE,CAAC;QAC7E,IAAI,KAAK,IAAI,KAAK;YACd,WAAW,IAAI,UAAU,KAAK,WAAW,KAAK,EAAE,CAAC;QACrD,OAAO,SAAS,CAAC,WAAW,CAAC,CAAC;IAClC,CAAC;IACD,oBAAoB,CAAC,MAAoB,EAAE,IAAa,EAAE,OAAgB,EAAE,QAAmB;QAC3F,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC5C,IAAI,WAAW,GAAG,GAAG,IAAI,CAAC,QAAQ,yBAAyB,IAAI,OAAO,MAAM,CAAC,MAAM,EAAE,CAAC;QACtF,IAAI,IAAI;YACJ,WAAW,IAAI,SAAS,IAAI,EAAE,CAAC;QACnC,IAAI,OAAO;YACP,WAAW,IAAI,YAAY,OAAO,EAAE,CAAC;QACzC,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;YAC/B,WAAW,IAAI,aAAa,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACrD,OAAO,SAAS,CAAC,WAAW,CAAC,CAAC;IAClC,CAAC;IACD,UAAU,CAAC,IAAY;QACnB,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,+BAA+B,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IACpF,CAAC;IACD,KAAK,CAAC,IAAI;QACN,IAAI,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAuB,gBAAgB,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;YACjG,OAAO,GAAG,CAAC,EAAE,IAAK,GAAG,CAAC,MAA+B,CAAC,MAAM,KAAK,MAAM,CAAC;QAC5E,CAAC;QACD,OAAO,CAAC,EAAE,CAAC;YACP,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IACD,QAAQ,CAAC,GAAW;QAChB,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QACjD,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IACD,KAAK,CAAC,WAAW,CAAC,QAAgB,EAAE,OAAe;QAC/C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAkB,oBAAoB,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;QACtH,OAAO,IAAI,CAAC,MAAyB,CAAC;IAC1C,CAAC;IACD,KAAK,CAAC,aAAa,CAAC,WAAmB,EAAE,aAAqB;QAC1D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAa,sBAAsB,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC;QAC3H,OAAO,IAAI,CAAC,MAAoB,CAAC;IACrC,CAAC;IACD,eAAe,CAAC,WAAmB,EAAE,KAAa;QAC9C,MAAM,GAAG,GAAG,0CAA0C,kBAAkB,CAAC,WAAW,CAAC,UAAU,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3H,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IACD,KAAK,CAAC,MAAM,CAAC,IAAc;QACvB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;QAC/D,OAAO,GAAG,CAAC,EAAE,CAAC;IAClB,CAAC;IACD,KAAK,CAAC,aAAa,CAAC,IAAU,EAAE,SAAiB,EAAE,QAA+B;QAC9E,MAAM,IAAI,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC;QACnC,IAAI,CAAC,QAAQ;YACT,QAAQ,GAAG,CAAC,GAAW,EAAE,EAAE,GAAG,CAAC,CAAC,CAAK,gBAAgB;QACzD,IAAI,GAAG,GAAG,qCAAqC,SAAS,SAAS,IAAI,CAAC,IAAI,aAAa,IAAI,EAAE,CAAC;QAC9F,IAAI,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAc,GAAG,CAAC,CAAC;QACvD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACV,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACzB,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,IAAI,MAAM,GAAG,GAAG,CAAC,MAA8B,CAAC;QAChD,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI,EAAE,CAAC;YACxB,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACxB,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,QAAQ,CAAC,cAAc,CAAC,CAAC;QACzB,MAAM,SAAS,GAAG,OAAO,CAAC;QAC1B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,IAAI,SAAS,EAAE,CAAC;YACxD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YACnD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YACpC,MAAM,KAAK,GAAG,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC;YAC/B,IAAI,GAAG,GAAG,kCAAkC,KAAK,aAAa,IAAI,UAAU,KAAK,EAAE,CAAC;YACpF,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAS,GAAG,EAAE,IAAI,CAAC,CAAC;YAClD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACV,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBACzB,OAAO,KAAK,CAAC;YACjB,CAAC;YACD,IAAI,MAAM,GAAG,GAAG,CAAC,MAA8B,CAAC;YAChD,IAAI,KAAK,EAAE,CAAC;gBACR,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACxB,OAAO,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC;YACjC,CAAC;YACD,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACxB,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC9B,OAAO,KAAK,CAAC;QACrB,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,KAAK,CAAC,cAAc,CAAC,IAAY;QAC7B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAW,gCAAgC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAChG,IAAI,GAAG,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;YAChB,OAAO,GAAG,CAAC,MAAkB,CAAC;QAClC,CAAC;QACD,OAAO,EAAE,CAAC;IACd,CAAC;IACD,KAAK,CAAC,QAAQ,CAAC,IAAY;QACvB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAW,0BAA0B,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1F,IAAI,GAAG,IAAI,GAAG,CAAC,EAAE;YACb,OAAO,GAAG,CAAC,MAAkB,CAAC;QAClC,OAAO,EAAE,CAAC;IACd,CAAC;IACD,KAAK,CAAC,eAAe,CAAC,EAAU,EAAE,IAAY,EAAE,MAAc,EAAE,YAAoB,GAAG,EAAE,QAAmB;QACxG,MAAM,IAAI,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;QAC9F,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAW,uBAAuB,EAAE,IAAI,CAAC,CAAC;QAChF,OAAO,GAAG,CAAC;IACf,CAAC;IACO,aAAa,CAAC,MAAoB;QACtC,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC;QACtB,IAAI,MAAM,CAAC,OAAO,IAAI,IAAI;YACtB,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;QAC/C,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI;YACpB,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;QAC7C,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;QAC3B,MAAM,CAAC,QAAQ,GAAG,EAAE,CAAC;QACrB,QAAQ,MAAM,CAAC,QAAQ,EAAE,CAAC;YACtB,KAAK,SAAS,CAAC,WAAW,CAAC;YAC3B,KAAK,SAAS,CAAC,aAAa,CAAC;YAC7B,KAAK,SAAS,CAAC,aAAa,CAAC;YAC7B,KAAK,SAAS,CAAC,gBAAgB,CAAC;YAChC,KAAK,SAAS,CAAC,eAAe,CAAC;YAC/B,KAAK,SAAS,CAAC,WAAW;gBACtB,MAAM,CAAC,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,UAAU,GAAG,CAAA;gBACrD,MAAM;YACV,KAAK,SAAS,CAAC,YAAY;gBACvB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;gBAC3B,MAAM;YACV,KAAK,SAAS,CAAC,SAAS,CAAC;YACzB,KAAK,SAAS,CAAC,UAAU,CAAC;YAC1B,KAAK,SAAS,CAAC,WAAW;gBACtB,MAAM,CAAC,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,UAAU,GAAG,CAAA;gBACrD,MAAM;YACV,KAAK,SAAS,CAAC,UAAU,CAAC;YAC1B,KAAK,SAAS,CAAC,oBAAoB;gBAC/B,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;gBAC3B,MAAM;YACV,KAAK,SAAS,CAAC,SAAS;gBACpB,MAAM,CAAC,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,UAAU,GAAG,CAAA;gBACrD,MAAM;YACV,KAAK,SAAS,CAAC,cAAc;gBACzB,MAAM,CAAC,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,UAAU,GAAG,CAAA;gBACrD,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;gBAC3B,MAAM;YACV,KAAK,SAAS,CAAC,oBAAoB,CAAC;YACpC,KAAK,SAAS,CAAC,mBAAmB,CAAC;YACnC,KAAK,SAAS,CAAC,aAAa;gBACxB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;gBAC3B,MAAM;YACV,KAAK,SAAS,CAAC,UAAU;gBACrB,MAAM,CAAC,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,UAAU,GAAG,CAAA;gBACrD,MAAM;QACd,CAAC;QACD,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC3B,CAAC;IACO,aAAa,CAAC,MAAoB;QACtC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;QAC3B,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC;QACzD,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAe,CAAC;gBAC5C,IAAI,KAAK,CAAC,KAAK;oBACX,SAAS,CAAe,mBAAmB;gBAC/C,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;gBACzB,IAAI,MAAM,CAAC,QAAQ,IAAI,SAAS,CAAC,mBAAmB,EAAE,CAAC;oBACnD,KAAK,CAAC,IAAI,GAAG,WAAW,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;oBACxD,KAAK,CAAC,YAAY,GAAG,EAAE,CAAC;oBACxB,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,WAAW,CAAC;gBACvC,CAAC;qBACI,IAAI,MAAM,CAAC,QAAQ,IAAI,SAAS,CAAC,oBAAoB,EAAE,CAAC;oBACzD,KAAK,CAAC,IAAI,GAAG,WAAW,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;oBACxD,IAAI,MAAM,CAAC,GAAG,IAAI,KAAK,CAAC,GAAG;wBACvB,KAAK,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;oBACvC,IAAI,MAAM,CAAC,YAAY,IAAI,KAAK,CAAC,YAAY;wBACzC,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;oBAClE,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,WAAW,CAAC;gBACvC,CAAC;qBACI,CAAC;oBACF,KAAK,CAAC,IAAI,GAAG,WAAW,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;oBACxD,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;oBAC7D,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC;oBACpB,IAAI,KAAK,CAAC,IAAI;wBACV,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAC3C,IAAI,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,EAAE,CAAC;wBAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,iBAAiB,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;wBACvE,IAAI,OAAO;4BACP,KAAK,CAAC,QAAQ,IAAI,KAAK,GAAG,OAAO,CAAC;oBAC1C,CAAC;oBACD,IAAI,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,EAAE,CAAC;wBAC5C,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;wBAClE,IAAI,GAAG;4BACH,KAAK,CAAC,QAAQ,IAAI,KAAK,GAAG,GAAG,CAAC;oBACtC,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QACD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC7C,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBACpC,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC;YACtD,CAAC;QACL,CAAC;QACD,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC3B,CAAC;IACO,aAAa,CAAC,MAAoB;QACtC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;QAC3B,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC;QACzD,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC/D,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAe,CAAC;gBAC5C,KAAK,CAAC,KAAK,GAAG,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;gBAC/C,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,oBAAoB,EAAE,CAAC;oBACrD,KAAK,CAAC,IAAI,GAAG,WAAW,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;oBACxD,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,WAAW,CAAC;oBACnC,IAAI,MAAM,CAAC,GAAG;wBACV,KAAK,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;gBAC3C,CAAC;qBACI,CAAC;oBACF,KAAK,CAAC,QAAQ,GAAG,WAAW,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;oBAC5D,KAAK,CAAC,YAAY,GAAG,EAAE,CAAC;gBAC5B,CAAC;YACL,CAAC;QACL,CAAC;QACD,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC3B,CAAC;IACO,aAAa,CAAC,MAAoB;QACtC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;QAC3B,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC;QACzD,IAAI,MAAM,CAAC,UAAU;YACjB,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;;YAE1B,MAAM,CAAC,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,UAAU,GAAG,CAAC;QAC1D,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAiB,CAAC;gBAC9C,KAAK,CAAC,KAAK,GAAG,WAAW,CAAC,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;gBAC3F,qCAAqC;YACzC,CAAC;QACL,CAAC;QACD,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC3B,CAAC;IAEO,aAAa,CAAC,CAAW,EAAE,IAAgB,EAAE,QAAmB;QACpE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC5B,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC9B,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAC7B,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAC5B,MAAM,aAAa,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QACrC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAC1B,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;IACvC,CAAC;IACO,eAAe,CAAC,CAAW,EAAE,MAAoB,EAAE,QAAmB;QAC1E,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;QACxC,MAAM,YAAY,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QACpC,MAAM,gBAAgB,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QACxC,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAClC,MAAM,UAAU,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;QACnC,MAAM,iBAAiB,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QACxC,MAAM,cAAc,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;IACzC,CAAC;IACO,aAAa,CAAE,CAAW,EAAE,IAAgB,EAAE,QAAmB;QACrE,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACtC,QAAQ,QAAQ,EAAE,CAAC;YACf,KAAK,SAAS,CAAC,cAAc,CAAC;YAC9B,KAAK,SAAS,CAAC,UAAU;gBACrB,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,IAAkB,CAAC,CAAC;gBAC/C,MAAM;YACV,KAAK,SAAS,CAAC,WAAW;gBACtB,IAAI,CAAC,oBAAoB,CAAC,CAAC,EAAE,IAAoB,CAAC,CAAC;gBACnD,MAAM;YACV,KAAK,SAAS,CAAC,cAAc,CAAC;YAC9B,KAAK,SAAS,CAAC,SAAS;gBACpB,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,IAAkB,CAAC,CAAC;gBAC/C,MAAM;QACd,CAAC;IACL,CAAC;IACO,kBAAkB,CAAC,CAAW,EAAE,IAAgB;QACpD,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAClC,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAChC,MAAM,WAAW,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC9B,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;IACjC,CAAC;IACO,kBAAkB,CAAC,CAAW,EAAE,IAAgB;QACpD,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAClC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC/B,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC9B,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QACnC,IAAI,KAAK,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC1B,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACZ,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;YACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE;gBAC1B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;QAC3C,CAAC;IACL,CAAC;IACO,oBAAoB,CAAC,CAAW,EAAE,IAAkB;QACxD,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAC3B,MAAM,SAAS,GAAG,CAAC,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC;QACxC,MAAM,EAAE,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC;QAC3D,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAClC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QACjC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,mBAAmB,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC1C,IAAI,CAAC,WAAW,GAAG,mBAAmB,GAAG,YAAY,CAAC,IAAI,CAAC;QAC3D,IAAI,CAAC,KAAK,GAAG,mBAAmB,GAAG,aAAa,CAAC,IAAI,CAAC;QACtD,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QACjC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC9B,IAAI,KAAK,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC;QAC1B,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACZ,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;YACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE;gBAC1B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;QAC5C,CAAC;IACL,CAAC;IAEO,OAAO,CAAC,IAAkB;QAC9B,IAAI,IAAI,CAAC,MAAM,IAAI,GAAG;YAClB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;aACpB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACrB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;YAC/B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YACpC,QAAQ,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACpB,KAAK,SAAS,CAAC,SAAS;oBAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;oBAAC,MAAM;gBACzD,KAAK,SAAS,CAAC,SAAS;oBAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;oBAAC,MAAM;gBACzD,KAAK,SAAS,CAAC,WAAW;oBAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;oBAAC,MAAM;gBAC3D,KAAK,SAAS,CAAC,UAAU;oBAAG,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;oBAAC,MAAM;YAC9D,CAAC;QACL,CAAC;IACL,CAAC;IACO,SAAS,CAAC,MAAoB,EAAE,MAAoB;QACxD,MAAM,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;QACpC,IAAI,CAAC,MAAM,CAAC,OAAO;YACf,MAAM,CAAC,OAAO,GAAG,EAAE,CAAC;QACxB,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI;YACrB,MAAM,CAAC,MAAM,GAAG,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;QAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC9C,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;YACrC,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC;YACvE,IAAI,GAAG,IAAI,CAAC;gBACR,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;;gBAE7B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpC,CAAC;aACI,CAAC;YACF,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;YACrC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IACO,YAAY,CAAC,MAAoB;QACrC,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YACtB,IAAI,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YACrD,IAAI,CAAC,YAAY;gBACb,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YACnD,IAAI,YAAY;gBACZ,OAAO,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IACO,iBAAiB,CAAC,QAAgB,EAAE,MAAc,EAAE,KAA6B;QAErF,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;QAC3B,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,sBAAsB,QAAQ,IAAI,MAAM,cAAc,CAAC,CAAC;YACzE,OAAO,KAAK,CAAC;QAEjB,CAAC;QACD,IAAI,QAAQ,EAAE,CAAC;YACX,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC5C,IAAI,YAAY,EAAE,CAAC;gBACf,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC;oBACpB,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBACnD,IAAI,UAAU;wBACV,YAAY,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC;gBAC1C,CAAC;gBACD,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;YAC5C,CAAC;QACL,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,sBAAsB,IAAI,CAAC,IAAI,oBAAoB,CAAC,CAAC;QACtE,OAAO,KAAK,CAAC;IACjB,CAAC;IACO,YAAY,CAAC,IAAgB;QACjC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACrD,IAAI,YAAY;gBACZ,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QAChD,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,IAAI,CAAC,IAAI,oBAAoB,CAAC,CAAC;QAC5D,OAAO,KAAK,CAAC;IACjB,CAAC;IACO,OAAO,CAAC,MAAoB,EAAE,IAAgB;QAClD,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;YACzC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;QACtC,CAAC;QACD,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI;YACpB,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC;QACtB,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI;YACnB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,GAAG,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;QAChE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAExB,OAAO,IAAI,CAAC;IAChB,CAAC;IACO,aAAa,CAAC,MAAoB;QACtC,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;gBACvC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU;oBAC7C,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;;oBAE1B,CAAC,EAAE,CAAC;YACZ,CAAC;YACD,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;QAC5C,CAAC;IACL,CAAC;CACJ"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@christianriedl/media",
3
- "version": "1.0.178",
3
+ "version": "1.0.180",
4
4
  "description": "RIC media interfaces",
5
5
 
6
6
  "main": "dist/index.js",
@@ -1,7 +1,7 @@
1
1
  <script setup lang="ts">
2
2
  import { inject, ref, reactive, computed, onMounted, onUnmounted, nextTick, watch, StyleValue } from 'vue';
3
3
  import type { ComponentPublicInstance } from 'vue';
4
- import { useRouter } from 'vue-router';
4
+ import { useRouter, useRoute } from 'vue-router';
5
5
  import { IAppState, Helper, EDevice, EScope, appStateSymbol, IAppConfig, appConfigSymbol } from '@christianriedl/utils';
6
6
  import { Authorize, authorizeSymbol } from '@christianriedl/rest';
7
7
  import { EItemType, EMediaType, IMediaFolder, IMediaItem, IAudioFile, MediaService, IMediaService, EPlayState, PlayerService,
@@ -20,6 +20,7 @@
20
20
  const avatarSize = isMobile ? 64 : 128;
21
21
 
22
22
  const router = useRouter();
23
+ const route = useRoute();
23
24
  const supportsLocalMedia = ref(authorize.checkScope(EScope.Media));
24
25
  const playerNames = reactive<string[]>(['Local']);
25
26
  const currentPlayer = ref('Local');
@@ -57,40 +58,10 @@
57
58
  let cmdTimer = 0;
58
59
  let syncRemote = false;
59
60
 
60
- window.addEventListener('popstate', onPopState);
61
- function onPopState (event: any) {
62
- if (event.state && event.state.noBackExitsApp && backVisible.value) {
63
- event.preventDefault();
64
- listBack();
65
- }
66
- }
67
- onUnmounted(() => {
68
- window.removeEventListener('popstate', onPopState);
69
- while (window.history.state && window.history.state.noBackExitsApp)
70
- window.history.back();
71
- });
72
61
  onMounted(async () => {
73
62
  mediaService.log.trace('Music created');
74
- let root: IMediaFolder;
75
- if (mediaAppConfig.useMediaBin) {
76
- const rc = await mediaService.initialize(EMediaType.Audio);
77
- if (selected.value.itemType == EItemType.AudioAlbum)
78
- root = mediaService.getFolder(selected.value.dlnaParentId);
79
- else
80
- root = mediaService.audioRoot!;
81
-
82
- }
83
- else {
84
- const rc = await (mediaService as MediaService).getLists(EMediaType.Audio);
85
- if (selected.value.itemType == EItemType.AudioAlbum)
86
- root = mediaService.getFolder(selected.value.dlnaParentId);
87
- else
88
- root = await (mediaService as MediaService).initializeAudios();
89
- }
90
- mediaService.log.trace('Music start with ' + root.dlnaid);
91
- selected.value = root;
92
- items.splice(0, items.length, ...root.folders);
93
- computeListHeight();
63
+ const rc = await mediaService.initialize(EMediaType.Audio);
64
+ start();
94
65
  if (supportsLocalMedia.value) {
95
66
  const players = await playerService.getPlayers(EMediaType.Audio, true);
96
67
  if (players && players.length > 0)
@@ -99,7 +70,26 @@
99
70
  supportsLocalMedia.value = false;
100
71
  }
101
72
  })
73
+ async function start() {
74
+ let root = mediaService.audioRoot!;
75
+ if (route.query && route.query.id) {
76
+ const id = decodeURIComponent(route.query.id.toString());
77
+ root = mediaService.getFolder(id);
78
+ }
79
+ selected.value = await mediaService.getAudios(root); // Prepares the objects
80
+ mediaService.log.trace('Music start with ' + root.dlnaid);
81
+ if (root.files) {
82
+ items.splice(0, items.length, ...root.files);
83
+ }
84
+ else if (root.folders) {
85
+ items.splice(0, items.length, ...root.folders);
86
+ }
87
+ computeListHeight();
88
+ }
102
89
  watch(appState.bodyHeight, () => computeListHeight());
90
+ watch(() => route.query, () => start());
91
+
92
+
103
93
  function computeListHeight() {
104
94
  nextTick(() => {
105
95
  let height = appState.bodyHeight.value;
@@ -118,30 +108,13 @@
118
108
  }
119
109
  else {
120
110
  const folder = mediaService.getFolder(item.dlnaid);
121
- if (folder.folders && item.itemType != EItemType.AudioAlbum) {
122
- items.splice(0, items.length, ...folder.folders);
123
- selected.value = item;
124
- window.history.pushState({ noBackExitsApp: true }, '')
125
- computeListHeight();
126
- }
127
- else {
128
- mediaService.getAudios(folder)
129
- .then((audios) => {
130
- window.history.pushState({ noBackExitsApp: true }, '')
131
- selected.value = audios;
132
- items.splice(0, items.length, ...audios.files);
133
- computeListHeight();
134
- });
135
- }
111
+ router.push ({path: 'music', query: { id: folder.dlnaid }});
136
112
  }
137
113
  }
138
114
  function listBack() {
139
115
  syncRemote = false;
140
116
  playingTrack.value = null;
141
- const parent = mediaService.getFolder(selected.value.dlnaParentId);
142
- selected.value = parent;
143
- items.splice(0, items.length, ...parent.folders);
144
- computeListHeight();
117
+ router.back();
145
118
  }
146
119
  function onTimeUpdate() {
147
120
  setPosition(audio.value!.currentTime);
@@ -1,7 +1,7 @@
1
1
  <script setup lang="ts">
2
2
  import { inject, ref, reactive, computed, onMounted, onUnmounted, nextTick, watch, StyleValue } from 'vue';
3
3
  import type { ComponentPublicInstance } from 'vue';
4
- import { useRouter } from 'vue-router';
4
+ import { useRouter, useRoute } from 'vue-router';
5
5
  import { IAppState, IAppConfig, EDevice, EBrowser, appStateSymbol, appConfigSymbol, Helper } from '@christianriedl/utils';
6
6
  import { IRestResult, IValueResult } from '@christianriedl/rest';
7
7
  import { EItemType, EMediaType, IMediaFolder, IMediaItem, IPhotoSelection, MediaService, IMediaService, getMediaSymbol,
@@ -18,50 +18,27 @@
18
18
  //const heightStyle = computed<StyleValue>(() => { return { height: appState.bodyHeight.value + 'px', overflowY: 'auto' } });
19
19
  const isMobile = appState.isMobile && (appState.device != EDevice.iPad);
20
20
  const router = useRouter();
21
+ const route = useRoute();
21
22
 
22
23
  const listHeight = ref(0);
23
24
  const listhead = ref<ComponentPublicInstance|null>(null);
24
25
 
25
26
  const items = ref<IMediaFolder[]>([]);
26
27
  const selected = reactive<IPhotoSelection>(mediaService.photoSelection);
28
+ const selectedFolder = ref<IMediaFolder>({ name: 'Root', itemType: EItemType.Root } as IMediaFolder);
27
29
  const uploadVisible = ref(false);
28
30
 
29
31
  const roots: string[] = ['Jahr', 'Orte', 'Ereignisse', 'Personen'];
32
+ const root = ref('Jahr');
30
33
  const criterias: string[] = ['ye', 'lo', 'ev', 'pe'];
31
34
  const backVisible = ref(false);
32
35
  const itemIndex = ref(0);
33
36
  const showDownload = ref(false);
34
37
  const showAlbums = ref(false);
35
38
  const downloadFolder = ref<IMediaFolder | null>(null);
36
- const selectedYear = ref<number | undefined>(undefined);
37
- const selectedName = ref<string | undefined>(undefined);
38
- const numGridCols = computed(() => computeColumnWidth(selected.selected, appState.pageWidth.value));
39
+ const numGridCols = computed(() => computeColumnWidth(selectedFolder.value, appState.pageWidth.value));
39
40
  const numRootSelColumns = computed(() => { return 12 - (backVisible.value ? 2 : 0) - 2 - (isMobile ? 0 : 2) });
40
41
 
41
- watch(appState.bodyHeight, () => computeListHeight());
42
-
43
- window.addEventListener('popstate', onPopState);
44
-
45
- function computeListHeight() {
46
- nextTick(() => {
47
- let height = appState.bodyHeight.value;
48
- if (listhead.value) {
49
- height = height - (listhead.value.$el as HTMLElement).clientHeight;
50
- }
51
- listHeight.value = height;
52
- })
53
- }
54
- function onPopState(event: any) {
55
- if (event.state && event.state.noBackExitsApp && backVisible.value) {
56
- event.preventDefault();
57
- goBack();
58
- }
59
- }
60
- onUnmounted(() => {
61
- window.removeEventListener('popstate', onPopState);
62
- while (window.history.state && window.history.state.noBackExitsApp)
63
- window.history.back();
64
- });
65
42
  onMounted(async () => {
66
43
  mediaService.log.trace('Photos created');
67
44
  let root: IMediaFolder;
@@ -71,17 +48,33 @@
71
48
  else {
72
49
  const rc = await (mediaService as MediaService).getLists(EMediaType.Picture);
73
50
  }
74
- if (!selected.selected.dlnaid) {
75
- root = await mediaService.getPhotosByCriteria(stars(), selected.criteria);
76
- }
51
+ start();
52
+ })
53
+ async function start() {
54
+ let root: IMediaFolder;
55
+ if (route.query && route.query.id) {
56
+ const id = decodeURIComponent(route.query.id.toString());
57
+ root = mediaService.getFolder(id);
58
+ }
77
59
  else {
78
- root = mediaService.getFolder(selected.selected.dlnaid);
60
+ root = await mediaService.getPhotosByCriteria(stars(), selected.criteria);
79
61
  }
80
62
  setSelected(root);
81
- if (selected.selectedAlbum)
82
- selectedYear.value = selected.selectedAlbum.year;
83
- mediaService.log.trace(`Photos start with ${selected.selected.dlnaid}`);
84
- })
63
+ mediaService.log.trace(`Photos start with ${selectedFolder.value.dlnaid} `);
64
+ }
65
+
66
+ watch(appState.bodyHeight, () => computeListHeight());
67
+ watch(() => route.query, () => start());
68
+
69
+ function computeListHeight() {
70
+ nextTick(() => {
71
+ let height = appState.bodyHeight.value;
72
+ if (listhead.value) {
73
+ height = height - (listhead.value.$el as HTMLElement).clientHeight;
74
+ }
75
+ listHeight.value = height;
76
+ })
77
+ }
85
78
  function stars() {
86
79
  return selected.rating ? (selected.rating == 1 ? '*' : '**') : 'all';
87
80
  }
@@ -110,41 +103,31 @@
110
103
  showPictures(folder);
111
104
  else {
112
105
  if (folder.mustExpand) {
113
- LocationHelper.expandLocationFolder(mediaService, selected.selected, folder);
114
- items.value = selected.selected.folders;
106
+ LocationHelper.expandLocationFolders(mediaService, selectedFolder.value.dlnaid, folder.dlnaid);
107
+ items.value = selectedFolder.value.folders;
115
108
  return;
116
109
  }
117
- window.history.pushState({ noBackExitsApp: true }, '');
118
- setSelected(folder);
110
+ router.push ({path: 'photos', query: { id: folder.dlnaid }});
119
111
  }
120
112
  }
121
113
  function setSelected(folder: IMediaFolder) {
122
114
  mediaService.prepare(folder); // To prepare children
123
- selected.selected = folder;
124
- if (folder.year && folder.year > 0)
125
- selectedYear.value = folder.year;
126
- selectedName.value = folder.name;
115
+ selectedFolder.value = folder;
127
116
  if (folder.creatorIdx >= 0 && !folder.populated) {
128
117
  LocationHelper.populateParentFolder(mediaService, folder, mediaAppConfig.pictureParentLimit);
129
118
  }
130
- backVisible.value = selected.selected.itemType != EItemType.PictureGenreType;
119
+ backVisible.value = folder.itemType != EItemType.PictureGenreType;
131
120
  computeColumnWidth(folder, appState.pageWidth.value); // computes showAlbums
132
121
  computeListHeight();
133
122
  items.value = folder.folders;
134
123
  }
135
124
  function showPictures(folder: IMediaFolder) {
136
- selected.selectedAlbum = folder;
137
125
  router.push({ path: 'photoalbum', query: { id: folder.dlnaid } });
138
126
  }
139
127
  function goBack() {
140
- const parent = mediaService.getFolder(selected.selected.dlnaParentId);
141
- const index = parent.folders.indexOf(selected.selected);
142
- setSelected(parent);
143
- if (index)
144
- itemIndex.value = index;
128
+ router.back();
145
129
  }
146
130
  function onLightbox(folder: IMediaFolder) {
147
- selected.selectedAlbum = folder;
148
131
  router.push({ path: 'photothumbnails', query: { id: folder.dlnaid } });
149
132
 
150
133
  }
@@ -177,28 +160,26 @@
177
160
  window.alert(`Not Pasted : ${err} !`);
178
161
  }
179
162
  }
180
- function onRootChange(root: string) {
181
- const idx = roots.indexOf(selected.root);
163
+ function onRootChange(r: string) {
164
+ const idx = roots.indexOf(root.value);
182
165
  selected.criteria = criterias[idx];
183
- selectedName.value = undefined;
184
- initialize().then((v) => { });;
166
+ initialize();
185
167
  }
186
168
  function onRating(value: number | string) {
187
169
  selected.rating = Number(value);
188
- initialize().then((v) => { });;
170
+ initialize(selectedFolder.value.name);
189
171
  }
190
- async function initialize(): Promise<boolean> {
172
+ async function initialize(selectedName?: string) {
191
173
  let root = await mediaService.getPhotosByCriteria(stars(), selected.criteria);
192
- if (selected.criteria != 'ye' && selectedName.value) {
174
+ if (selected.criteria != 'ye' && selectedName) {
193
175
  for (let i = 0; i < root.folders.length; i++) {
194
- if (root.folders[i].name == selectedName.value) {
176
+ if (root.folders[i].name == selectedName) {
195
177
  root = root.folders[i];
196
178
  break;
197
179
  }
198
180
  }
199
181
  }
200
- setSelected(root);
201
- return true;
182
+ router.replace ({path: 'photos', query: { id: root.dlnaid }});
202
183
  }
203
184
  function computeColumnWidth(folder: IMediaFolder, width: number) {
204
185
  let nameLength = 9;
@@ -231,13 +212,13 @@
231
212
  </script>
232
213
  <template>
233
214
  <v-card ref="listhead" class="bg-media_head" density="compact">
234
- <v-card-title>{{selected.selected.name}}</v-card-title>
215
+ <v-card-title>{{selectedFolder.name}}</v-card-title>
235
216
  <v-card-actions>
236
217
  <v-btn v-if="backVisible" @click="goBack">
237
218
  <v-icon icon="$back" />
238
219
  </v-btn>
239
220
  <v-rating clearable length="2" v-model="selected.rating" @update:modelValue="onRating" />
240
- <v-select v-model="selected.root" :items="roots" density="compact" persistent-hint
221
+ <v-select v-model="root" :items="roots" density="compact" persistent-hint
241
222
  @update:modelValue="onRootChange" hide-details single-line>
242
223
  </v-select>
243
224
  <v-btn v-if="!isMobile" @click="uploadVisible = !uploadVisible">
@@ -1,7 +1,7 @@
1
1
  <script setup lang="ts">
2
2
  import { inject, ref, reactive, computed, onMounted, onUnmounted, nextTick, watch, StyleValue } from 'vue';
3
3
  import type { ComponentPublicInstance } from 'vue';
4
- import { useRouter } from 'vue-router';
4
+ import { useRouter, useRoute } from 'vue-router';
5
5
  import { IAppState, IAppConfig, EDevice, EBrowser, appStateSymbol, appConfigSymbol, Helper } from '@christianriedl/utils';
6
6
  import { IRestResult, IValueResult } from '@christianriedl/rest';
7
7
  import { EItemType, EMediaType, IMediaFolder, IMediaItem, IPhotoSelection, MediaService, IMediaService, getMediaSymbol, getMediaBinSymbol, IMediaAppConfig } from '@christianriedl/media';
@@ -17,15 +17,18 @@
17
17
  const heightStyle = computed<StyleValue>(() => { return { height: appState.bodyHeight.value + 'px', overflowY: 'auto' } });
18
18
  const isMobile = appState.isMobile && (appState.device != EDevice.iPad);
19
19
  const router = useRouter();
20
+ const route = useRoute();
20
21
  const open = ref<string[]>([]);
21
22
 
22
23
  const items = ref<IMediaFolder[]>([]);
24
+ const selectedFolder = ref<IMediaFolder>({ name: 'Root', itemType: EItemType.Root } as IMediaFolder);
23
25
  const selected = reactive<IPhotoSelection>(mediaService.photoSelection);
24
26
  const listHeight = ref(0);
25
27
  const listhead = ref<ComponentPublicInstance|null>(null);
26
28
  const uploadVisible = ref(false);
27
29
 
28
30
  const roots: string[] = ['Jahr', 'Orte', 'Ereignisse', 'Personen'];
31
+ const root = ref('Jahr');
29
32
  const criterias: string[] = ['ye', 'lo', 'ev', 'pe'];
30
33
  const grouped = ref(false);
31
34
  const backVisible = ref(false);
@@ -33,39 +36,25 @@
33
36
  const itemIndex = ref(0);
34
37
  const downloadFolder = ref<IMediaFolder | null>(null);
35
38
  const selectedYear = ref<number | undefined>(undefined);
36
- const selectedName = ref<string | undefined>(undefined);
37
39
  const scrollElement = ref<ComponentPublicInstance | null>(null);
38
40
 
39
- window.addEventListener('popstate', onPopState);
40
- function onPopState(event: any) {
41
- if (event.state && event.state.noBackExitsApp && backVisible.value) {
42
- event.preventDefault();
43
- listBack();
44
- }
45
- }
46
- onUnmounted(() => {
47
- window.removeEventListener('popstate', onPopState);
48
- while (window.history.state && window.history.state.noBackExitsApp)
49
- window.history.back();
50
- });
51
41
  onMounted(async () => {
52
42
  mediaService.log.trace('Photos created');
43
+ const rc = await mediaService.initialize(EMediaType.Picture);
44
+ start();
45
+ })
46
+ async function start() {
53
47
  let root: IMediaFolder;
54
- if (mediaAppConfig.useMediaBin) {
55
- const rc = await mediaService.initialize(EMediaType.Picture);
56
- }
48
+ if (route.query && route.query.id) {
49
+ const id = decodeURIComponent(route.query.id.toString());
50
+ root = mediaService.getFolder(id);
51
+ }
57
52
  else {
58
- const rc = await (mediaService as MediaService).getLists(EMediaType.Picture);
59
- }
60
- if (!selected.selected.dlnaid) {
61
53
  root = await mediaService.getPhotosByCriteria(stars(), selected.criteria);
62
54
  }
63
- else {
64
- root = mediaService.getFolder(selected.selected.dlnaid);
65
- }
66
55
  const folders = setSelected(root);
67
- if (selected.selectedAlbum)
68
- selectedYear.value = selected.selectedAlbum.year;
56
+ if (route.query && route.query.year)
57
+ selectedYear.value = Number(route.query.year);
69
58
  const grouped = selected.criteria == 'ye' || root.itemType == EItemType.PictureCategory;
70
59
  setGrouped(folders, grouped, selectedYear.value);
71
60
  const scrollTop = appState.scrollPosition.value;
@@ -76,9 +65,11 @@
76
65
  el?.scrollTo(0, scrollTop);
77
66
  });
78
67
  }
79
- mediaService.log.trace(`Photos start with ${selected.selected.dlnaid} scrollTop: ${scrollTop}`);
80
- })
68
+ mediaService.log.trace(`Photos start with ${selectedFolder.value.dlnaid} scrollTop: ${scrollTop}`);
69
+ }
81
70
  watch(appState.bodyHeight, () => computeListHeight());
71
+ watch(() => route.query, () => start());
72
+
82
73
  function computeListHeight() {
83
74
  nextTick(() => {
84
75
  let height = appState.bodyHeight.value;
@@ -107,7 +98,7 @@
107
98
  }
108
99
  function showPictures(folder: IMediaFolder) {
109
100
  if (folder.itemType == EItemType.PictureAlbum) {
110
- selected.selectedAlbum = folder;
101
+ router.options.history.replace (`${route.fullPath}&year=${folder.year}`);
111
102
  router.push({ path: 'photoalbum', query: { id: folder.dlnaid } });
112
103
  }
113
104
  else {
@@ -115,15 +106,10 @@
115
106
  }
116
107
  }
117
108
  function listBack() {
118
- const parent = mediaService.getFolder(selected.selected.dlnaParentId);
119
- const index = parent.folders.indexOf(selected.selected);
120
- const folders = setSelected(parent);
121
- if (index)
122
- itemIndex.value = index;
123
- setGrouped(folders, false);
109
+ router.back();
124
110
  }
125
111
  function onLightbox(folder: IMediaFolder) {
126
- selected.selectedAlbum = folder;
112
+ router.options.history.replace (`${route.fullPath}&year=${folder.year}`);
127
113
  router.push({ path: 'photothumbnails', query: { id: folder.dlnaid } });
128
114
 
129
115
  }
@@ -156,22 +142,21 @@
156
142
  downloadFolder.value = null;
157
143
  showDownload.value = false;
158
144
  }
159
- function onRootChange(root: string) {
160
- const idx = roots.indexOf(selected.root);
145
+ function onRootChange(r: string) {
146
+ const idx = roots.indexOf(root.value);
161
147
  selected.criteria = criterias[idx];
162
- selectedName.value = undefined;
163
- initialize().then((v) => { });;
148
+ initialize();
164
149
  }
165
150
  function onRating(value: number | string) {
166
151
  selected.rating = Number(value);
167
- initialize().then((v) => { });;
152
+ initialize(selectedFolder.value.name);
168
153
  }
169
- async function initialize(): Promise<boolean> {
154
+ async function initialize(selectedName?: string) {
170
155
  let root = await mediaService.getPhotosByCriteria(stars(), selected.criteria);
171
156
  let grouped = selected.criteria == 'ye';
172
- if (selected.criteria != 'ye' && selectedName.value) {
157
+ if (selected.criteria != 'ye' && selectedName) {
173
158
  for (let i = 0; i < root.folders.length; i++) {
174
- if (root.folders[i].name == selectedName.value) {
159
+ if (root.folders[i].name == selectedName) {
175
160
  root = root.folders[i];
176
161
  grouped = true;
177
162
  break;
@@ -184,11 +169,10 @@
184
169
  }
185
170
  function setSelected(folder: IMediaFolder) : IMediaFolder[] {
186
171
  mediaService.prepare(folder); // To prepare children
187
- selected.selected = folder;
172
+ selectedFolder.value = folder;
188
173
  if (folder.year && folder.year > 0)
189
174
  selectedYear.value = folder.year;
190
- selectedName.value = folder.name;
191
- backVisible.value = selected.selected.itemType != EItemType.PictureGenreType;
175
+ backVisible.value = folder.itemType != EItemType.PictureGenreType;
192
176
 
193
177
  // calculate list height
194
178
  computeListHeight();
@@ -217,13 +201,13 @@
217
201
  </script>
218
202
  <template>
219
203
  <v-card ref="listhead" class="bg-media_head">
220
- <v-card-title>{{selected.selected.name}}</v-card-title>
204
+ <v-card-title>{{selectedFolder.name}}</v-card-title>
221
205
  <v-card-actions>
222
206
  <v-btn v-if="backVisible" @click="listBack">
223
207
  <v-icon icon="$back" />
224
208
  </v-btn>
225
209
  <v-rating clearable length="2" v-model="selected.rating" @update:modelValue="onRating" />
226
- <v-select v-model="selected.root"
210
+ <v-select v-model="root"
227
211
  :items="roots"
228
212
  persistent-hint
229
213
  @update:modelValue="onRootChange"
@@ -1,7 +1,7 @@
1
1
  <script setup lang="ts">
2
2
  import { inject, ref, reactive, computed, onMounted, onUnmounted, nextTick, watch, StyleValue } from 'vue';
3
3
  import type { ComponentPublicInstance } from 'vue';
4
- import { useRouter } from 'vue-router';
4
+ import { useRouter, useRoute } from 'vue-router';
5
5
  import { IAppState, EDevice, EScope, appStateSymbol, appConfigSymbol, IValueText } from '@christianriedl/utils';
6
6
  import { Authorize, authorizeSymbol } from '@christianriedl/rest';
7
7
  import { EItemType, EMediaType, IMediaFolder, IMediaItem, IVideoFile, MediaService, IMediaService, MediaHelper,
@@ -26,6 +26,7 @@
26
26
  const isMobile = appState.isMobile && (appState.device != EDevice.iPad);
27
27
  const avatarSize = isMobile ? 64 : 128;
28
28
  const router = useRouter();
29
+ const route = useRoute();
29
30
 
30
31
  const items: IMediaItem[] = reactive([]);
31
32
  const itemIndex = ref(0);
@@ -47,43 +48,30 @@
47
48
  const playVisible = computed(() => selected.value.itemType == EItemType.VideoItem);
48
49
  const dialogWidth = computed(() => isMobile ? appState.pageWidth.value : 600);
49
50
 
50
- getPlayer();
51
-
52
- window.addEventListener('popstate', onPopState);
53
- function onPopState(event: any) {
54
- if (event.state && event.state.noBackExitsApp && backVisible.value) {
55
- event.preventDefault();
56
- listBack();
57
- }
58
- }
59
- onUnmounted(() => {
60
- window.removeEventListener('popstate', onPopState);
61
- while (window.history.state && window.history.state.noBackExitsApp)
62
- window.history.back();
63
- });
64
51
  onMounted(async () => {
65
52
  mediaService.log.trace('Videos created');
66
- let root;
67
- if (mediaAppConfig.useMediaBin) {
68
- const rc = await mediaService.initialize(EMediaType.Video);
69
- if (selected.value.itemType == EItemType.VideoCategory)
70
- root = mediaService.getFolder(selected.value.dlnaParentId);
71
- else
72
- root = mediaService.videoRoot!;
53
+ const rc = await mediaService.initialize(EMediaType.Video);
54
+ start();
55
+ })
56
+ watch(appState.bodyHeight, () => computeListHeight());
57
+ watch(() => route.query, () => start());
58
+
59
+ async function start() {
60
+ let root = mediaService.videoRoot!;
61
+ if (route.query && route.query.id) {
62
+ const id = decodeURIComponent(route.query.id.toString());
63
+ root = mediaService.getFolder(id);
64
+ }
65
+ selected.value = await mediaService.getVideos(root); // Prepares the objects
66
+ mediaService.log.trace('Videos start with ' + root.dlnaid);
67
+ if (root.files) {
68
+ items.splice(0, items.length, ...root.files);
73
69
  }
74
- else {
75
- const rc = await (mediaService as MediaService).getLists(EMediaType.Video);
76
- if (selected.value.itemType == EItemType.VideoCategory)
77
- root = mediaService.getFolder(selected.value.dlnaParentId);
78
- else
79
- root = await (mediaService as MediaService).initializeVideos();
70
+ else if (root.folders) {
71
+ items.splice(0, items.length, ...root.folders);
80
72
  }
81
- mediaService.log.trace('Videos start with ' + root.dlnaid);
82
- selected.value = root;
83
- items.splice(0, items.length, ...root.folders);
84
73
  computeListHeight();
85
- })
86
- watch(appState.bodyHeight, () => computeListHeight());
74
+ }
87
75
  function computeListHeight() {
88
76
  nextTick(() => {
89
77
  let height = appState.bodyHeight.value;
@@ -136,14 +124,8 @@
136
124
  return;
137
125
  }
138
126
  const folder = item as IMediaFolder;
139
- if (item.itemType == EItemType.VideoCategory) {
140
- mediaService.getVideos(folder)
141
- .then((videos) => {
142
- selected.value = videos;
143
- items.splice(0, items.length, ...videos.files);
144
- window.history.pushState({ noBackExitsApp: true }, '')
145
- computeListHeight();
146
- });
127
+ if (item.itemType == EItemType.VideoCategory || item.itemType == EItemType.VideoGenreType) {
128
+ router.push ({path: 'videos', query: { id: folder.dlnaid }});
147
129
  }
148
130
  }
149
131
  function onQualityChange() {
@@ -158,10 +140,7 @@
158
140
  }
159
141
  }
160
142
  function listBack() {
161
- const parent = mediaService.getFolder(selected.value.dlnaParentId);
162
- selected.value = parent;
163
- items.splice(0, items.length, ...parent.folders);
164
- computeListHeight();
143
+ router.back();
165
144
  }
166
145
  async function onInfo(item: IMediaItem) {
167
146
  showItem.value = item as IVideoFile;