@growsober/sdk 1.0.15 → 1.0.16

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.
@@ -62,28 +62,45 @@ export declare function useMarkMessagesAsRead(eventId: string): import("@tanstac
62
62
  */
63
63
  export declare function useSendEventChatMessage(eventId: string): import("@tanstack/react-query").UseMutationResult<{
64
64
  id: string;
65
- conversationId: string;
66
- role: "USER" | "ASSISTANT" | "SYSTEM";
65
+ chatId: string;
66
+ userId: string;
67
67
  content: string;
68
- model?: Record<string, never>;
69
- promptTokens?: Record<string, never>;
70
- completionTokens?: Record<string, never>;
68
+ messageType: "TEXT" | "IMAGE" | "SYSTEM" | "ANNOUNCEMENT";
69
+ imageUrl?: string;
70
+ replyToId?: string;
71
+ isEdited: boolean;
72
+ isDeleted: boolean;
71
73
  createdAt: string;
74
+ updatedAt?: string;
75
+ userName?: string;
76
+ userImage?: string;
77
+ replyToContent?: string;
78
+ replyToUserName?: string;
72
79
  }, Error, {
73
80
  content: string;
81
+ messageType: "TEXT" | "IMAGE" | "SYSTEM" | "ANNOUNCEMENT";
82
+ imageUrl?: string;
83
+ replyToId?: string;
74
84
  }, unknown>;
75
85
  /**
76
86
  * Update a message
77
87
  */
78
88
  export declare function useUpdateEventChatMessage(eventId: string): import("@tanstack/react-query").UseMutationResult<{
79
89
  id: string;
80
- conversationId: string;
81
- role: "USER" | "ASSISTANT" | "SYSTEM";
90
+ chatId: string;
91
+ userId: string;
82
92
  content: string;
83
- model?: Record<string, never>;
84
- promptTokens?: Record<string, never>;
85
- completionTokens?: Record<string, never>;
93
+ messageType: "TEXT" | "IMAGE" | "SYSTEM" | "ANNOUNCEMENT";
94
+ imageUrl?: string;
95
+ replyToId?: string;
96
+ isEdited: boolean;
97
+ isDeleted: boolean;
86
98
  createdAt: string;
99
+ updatedAt?: string;
100
+ userName?: string;
101
+ userImage?: string;
102
+ replyToContent?: string;
103
+ replyToUserName?: string;
87
104
  }, Error, {
88
105
  messageId: string;
89
106
  } & {
@@ -38,7 +38,7 @@ export declare function useEventChatMembers(eventId: string | undefined): import
38
38
  * Get chat messages with infinite scroll pagination
39
39
  */
40
40
  export declare function useEventChatMessages(eventId: string | undefined, limit?: number): import("@tanstack/react-query").UseInfiniteQueryResult<import("@tanstack/react-query").InfiniteData<{
41
- messages: import("@growsober/types/dist/generated").components["schemas"]["MessageResponseDto"][];
41
+ messages: import("@growsober/types/dist/generated").components["schemas"]["EventChatMessageResponseDto"][];
42
42
  total: number;
43
43
  hasMore: boolean;
44
44
  nextCursor?: string;
@@ -181,10 +181,10 @@ export type WinResponse = components['schemas']['WinResponseDto'];
181
181
  export type CreateWinRequest = components['schemas']['CreateWinDto'];
182
182
  export type WinCountResponse = components['schemas']['WinCountDto'];
183
183
  export type ConversationResponse = components['schemas']['ConversationResponseDto'];
184
- export type ConversationWithMessagesResponse = components['schemas']['ConversationWithMessagesDto'];
184
+ export type ConversationWithMessagesResponse = components['schemas']['JackConversationWithMessagesDto'];
185
185
  export type CreateConversationRequest = components['schemas']['CreateConversationDto'];
186
- export type JackMessageResponse = components['schemas']['MessageResponseDto'];
187
- export type SendJackMessageRequest = components['schemas']['SendMessageDto'];
186
+ export type JackMessageResponse = components['schemas']['JackMessageResponseDto'];
187
+ export type SendJackMessageRequest = components['schemas']['SendJackMessageDto'];
188
188
  export type MoodLogResponse = components['schemas']['MoodLogResponseDto'];
189
189
  export type LogMoodRequest = components['schemas']['LogMoodDto'];
190
190
  export type MoodStatsResponse = components['schemas']['MoodStatsDto'];
@@ -219,10 +219,10 @@ export type UpdateBuddyRequest = components['schemas']['UpdateBuddyDto'];
219
219
  export type LogBuddyActivityRequest = components['schemas']['LogBuddyActivityDto'];
220
220
  export type EventChatResponse = components['schemas']['EventChatResponseDto'];
221
221
  export type ChatMemberResponse = components['schemas']['ChatMemberResponseDto'];
222
- export type ChatMessageResponse = components['schemas']['MessageResponseDto'];
223
- export type PaginatedMessagesResponse = components['schemas']['PaginatedMessagesDto'];
224
- export type SendChatMessageRequest = components['schemas']['SendMessageDto'];
225
- export type UpdateChatMessageRequest = components['schemas']['UpdateMessageDto'];
222
+ export type ChatMessageResponse = components['schemas']['EventChatMessageResponseDto'];
223
+ export type PaginatedMessagesResponse = components['schemas']['PaginatedEventChatMessagesDto'];
224
+ export type SendChatMessageRequest = components['schemas']['SendEventChatMessageDto'];
225
+ export type UpdateChatMessageRequest = components['schemas']['UpdateEventChatMessageDto'];
226
226
  export type UpdateChatSettingsRequest = components['schemas']['UpdateChatSettingsDto'];
227
227
  export type UpdateMemberSettingsRequest = components['schemas']['UpdateMemberSettingsDto'];
228
228
  export type AdminLoginRequest = components['schemas']['AdminLoginDto'];
package/dist/api/types.js CHANGED
@@ -11,4 +11,4 @@
11
11
  * 3. Rebuild SDK: npm run build
12
12
  */
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXBpL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7Ozs7OztHQVVHIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHcm93U29iZXIgU0RLIFR5cGVzXG4gKlxuICogQWxsIHR5cGVzIGFyZSBkZXJpdmVkIGZyb20gdGhlIEBncm93c29iZXIvdHlwZXMgcGFja2FnZSB3aGljaCBpcyBhdXRvLWdlbmVyYXRlZFxuICogZnJvbSB0aGUgQVBJIE9wZW5BUEkgc3BlY2lmaWNhdGlvbi4gVGhpcyBlbnN1cmVzIHNpbmdsZSBzb3VyY2Ugb2YgdHJ1dGggZnJvbSBQcmlzbWEuXG4gKlxuICogVG8gcmVnZW5lcmF0ZSB0eXBlczpcbiAqIDEuIFN0YXJ0IHRoZSBBUEk6IGNkIC4uL2dyb3dzb2Jlci1hcGkgJiYgbnBtIHJ1biBzdGFydDpkZXZcbiAqIDIuIEdlbmVyYXRlIHR5cGVzOiBjZCAuLi9ncm93c29iZXItdHlwZXMgJiYgbnBtIHJ1biBnZW5lcmF0ZSAmJiBucG0gcnVuIGJ1aWxkXG4gKiAzLiBSZWJ1aWxkIFNESzogbnBtIHJ1biBidWlsZFxuICovXG5cbmltcG9ydCB0eXBlIHsgcGF0aHMsIGNvbXBvbmVudHMgfSBmcm9tICdAZ3Jvd3NvYmVyL3R5cGVzJztcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gVFlQRSBFWFRSQUNUSU9OIEhFTFBFUlNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBFeHRyYWN0IHJlcXVlc3QgYm9keSB0eXBlIGZvciBhIGdpdmVuIGVuZHBvaW50IGFuZCBtZXRob2RcbiAqL1xuZXhwb3J0IHR5cGUgUmVxdWVzdEJvZHk8XG4gIFBhdGggZXh0ZW5kcyBrZXlvZiBwYXRocyxcbiAgTWV0aG9kIGV4dGVuZHMga2V5b2YgcGF0aHNbUGF0aF1cbj4gPSBwYXRoc1tQYXRoXVtNZXRob2RdIGV4dGVuZHMgeyByZXF1ZXN0Qm9keTogeyBjb250ZW50OiB7ICdhcHBsaWNhdGlvbi9qc29uJzogaW5mZXIgVCB9IH0gfVxuICA/IFRcbiAgOiBuZXZlcjtcblxuLyoqXG4gKiBFeHRyYWN0IHJlc3BvbnNlIHR5cGUgZm9yIGEgZ2l2ZW4gZW5kcG9pbnQsIG1ldGhvZCwgYW5kIHN0YXR1cyBjb2RlXG4gKi9cbmV4cG9ydCB0eXBlIFJlc3BvbnNlQm9keTxcbiAgUGF0aCBleHRlbmRzIGtleW9mIHBhdGhzLFxuICBNZXRob2QgZXh0ZW5kcyBrZXlvZiBwYXRoc1tQYXRoXSxcbiAgU3RhdHVzIGV4dGVuZHMgbnVtYmVyID0gMjAwXG4+ID0gcGF0aHNbUGF0aF1bTWV0aG9kXSBleHRlbmRzIHsgcmVzcG9uc2VzOiB7IFtLIGluIFN0YXR1c106IHsgY29udGVudDogeyAnYXBwbGljYXRpb24vanNvbic6IGluZmVyIFQgfSB9IH0gfVxuICA/IFRcbiAgOiBuZXZlcjtcblxuLyoqXG4gKiBFeHRyYWN0IHF1ZXJ5IHBhcmFtZXRlcnMgdHlwZSBmb3IgYSBnaXZlbiBlbmRwb2ludCBhbmQgbWV0aG9kXG4gKi9cbmV4cG9ydCB0eXBlIFF1ZXJ5UGFyYW1zPFxuICBQYXRoIGV4dGVuZHMga2V5b2YgcGF0aHMsXG4gIE1ldGhvZCBleHRlbmRzIGtleW9mIHBhdGhzW1BhdGhdXG4+ID0gcGF0aHNbUGF0aF1bTWV0aG9kXSBleHRlbmRzIHsgcGFyYW1ldGVyczogeyBxdWVyeT86IGluZmVyIFEgfSB9XG4gID8gUVxuICA6IFJlY29yZDxzdHJpbmcsIG5ldmVyPjtcblxuLyoqXG4gKiBFeHRyYWN0IHBhdGggcGFyYW1ldGVycyB0eXBlIGZvciBhIGdpdmVuIGVuZHBvaW50IGFuZCBtZXRob2RcbiAqL1xuZXhwb3J0IHR5cGUgUGF0aFBhcmFtczxcbiAgUGF0aCBleHRlbmRzIGtleW9mIHBhdGhzLFxuICBNZXRob2QgZXh0ZW5kcyBrZXlvZiBwYXRoc1tQYXRoXVxuPiA9IHBhdGhzW1BhdGhdW01ldGhvZF0gZXh0ZW5kcyB7IHBhcmFtZXRlcnM6IHsgcGF0aDogaW5mZXIgUCB9IH1cbiAgPyBQXG4gIDogUmVjb3JkPHN0cmluZywgbmV2ZXI+O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBFTlVNIFRZUEVTIChleHRyYWN0ZWQgZnJvbSBnZW5lcmF0ZWQgc2NoZW1hcyAtIHNpbmdsZSBzb3VyY2Ugb2YgdHJ1dGgpXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEJ1c2luZXNzL1ZlbnVlIHR5cGUgKHVzZWQgZm9yIGJvdGggQnVzaW5lc3MgYW5kIFZlbnVlIG1vZGVscylcbmV4cG9ydCB0eXBlIEJ1c2luZXNzVHlwZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQnVzaW5lc3NSZXNwb25zZUR0byddWyd0eXBlJ107XG5cbi8vIE93bmVyc2hpcCByb2xlc1xuZXhwb3J0IHR5cGUgVmVudWVPd25lclJvbGUgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ1ZlbnVlT3duZXJSZXNwb25zZUR0byddWydyb2xlJ107XG5leHBvcnQgdHlwZSBCcmFuZE93bmVyUm9sZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQnJhbmRPd25lclJlc3BvbnNlRHRvJ11bJ3JvbGUnXTtcblxuLy8gRXZlbnQgdHlwZXNcbmV4cG9ydCB0eXBlIEdhdGhlcmluZ1R5cGUgPSBOb25OdWxsYWJsZTxjb21wb25lbnRzWydzY2hlbWFzJ11bJ0V2ZW50UmVzcG9uc2VEdG8nXVsnZ2F0aGVyaW5nVHlwZSddPjtcbmV4cG9ydCB0eXBlIEV2ZW50VmlzaWJpbGl0eSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnRXZlbnRSZXNwb25zZUR0byddWyd2aXNpYmlsaXR5J107XG5leHBvcnQgdHlwZSBFdmVudFN0YXR1cyA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnRXZlbnRSZXNwb25zZUR0byddWydzdGF0dXMnXTtcblxuLy8gQ2hhdCByb2xlc1xuZXhwb3J0IHR5cGUgQ2hhdE1lbWJlclJvbGUgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0NoYXRNZW1iZXJSZXNwb25zZUR0byddWydyb2xlJ107XG5cbi8vIENvbnRlbnQgc3RhdHVzXG5leHBvcnQgdHlwZSBDb250ZW50U3RhdHVzID0gY29tcG9uZW50c1snc2NoZW1hcyddWydMaWJyYXJ5Q29udGVudFJlc3BvbnNlRHRvJ11bJ2NvbnRlbnRTdGF0dXMnXTtcblxuLy8gQmFkZ2UgdHlwZXNcbmV4cG9ydCB0eXBlIEJhZGdlVHlwZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQmFkZ2VSZXNwb25zZUR0byddWyd0eXBlJ107XG5cbi8vIE5vdGlmaWNhdGlvbiB0eXBlc1xuZXhwb3J0IHR5cGUgTm90aWZpY2F0aW9uVHlwZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnTm90aWZpY2F0aW9uUmVzcG9uc2VEdG8nXVsndHlwZSddO1xuXG4vLyBTdHJlYWsgdHlwZXNcbmV4cG9ydCB0eXBlIFN0cmVha1R5cGUgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ1N0cmVha1Jlc3BvbnNlRHRvJ11bJ3R5cGUnXTtcblxuLy8gQ3JhdmluZyB0cmlnZ2Vyc1xuZXhwb3J0IHR5cGUgQ3JhdmluZ1RyaWdnZXIgPSBOb25OdWxsYWJsZTxjb21wb25lbnRzWydzY2hlbWFzJ11bJ0NyYXZpbmdMb2dSZXNwb25zZUR0byddWyd0cmlnZ2VyVHlwZSddPjtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQVVUSCBUWVBFU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSBSZWdpc3RlclJlcXVlc3QgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ1JlZ2lzdGVyRHRvJ107XG5leHBvcnQgdHlwZSBBdXRoUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0F1dGhSZXNwb25zZUR0byddO1xuZXhwb3J0IHR5cGUgTG9naW5SZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydMb2dpbkR0byddO1xuZXhwb3J0IHR5cGUgUmVmcmVzaFRva2VuUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnUmVmcmVzaFRva2VuRHRvJ107XG5leHBvcnQgdHlwZSBUb2tlblJlc3BvbnNlID0gY29tcG9uZW50c1snc2NoZW1hcyddWydUb2tlblJlc3BvbnNlRHRvJ107XG5leHBvcnQgdHlwZSBGaXJlYmFzZUF1dGhSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydGaXJlYmFzZUF1dGhEdG8nXTtcbmV4cG9ydCB0eXBlIFNlbmRPdHBSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydTZW5kT3RwRHRvJ107XG5leHBvcnQgdHlwZSBPdHBTZW50UmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ090cFNlbnRSZXNwb25zZUR0byddO1xuZXhwb3J0IHR5cGUgVmVyaWZ5T3RwUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnVmVyaWZ5T3RwRHRvJ107XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFVTRVIgVFlQRVNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0IHR5cGUgVXNlclJlc3BvbnNlID0gY29tcG9uZW50c1snc2NoZW1hcyddWydVc2VyUmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIFVzZXJQdWJsaWNSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnVXNlclB1YmxpY1Jlc3BvbnNlRHRvJ107XG5leHBvcnQgdHlwZSBDcmVhdGVVc2VyUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQ3JlYXRlVXNlckR0byddO1xuZXhwb3J0IHR5cGUgVXBkYXRlVXNlclJlcXVlc3QgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ1VwZGF0ZVVzZXJEdG8nXTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gSFVCIFRZUEVTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIEh1YlJlc3BvbnNlID0gY29tcG9uZW50c1snc2NoZW1hcyddWydIdWJSZXNwb25zZUR0byddO1xuZXhwb3J0IHR5cGUgQ3JlYXRlSHViUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQ3JlYXRlSHViRHRvJ107XG5leHBvcnQgdHlwZSBVcGRhdGVIdWJSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydVcGRhdGVIdWJEdG8nXTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gRVZFTlQgVFlQRVNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0IHR5cGUgRXZlbnRSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnRXZlbnRSZXNwb25zZUR0byddO1xuZXhwb3J0IHR5cGUgQ3JlYXRlRXZlbnRSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydDcmVhdGVFdmVudER0byddO1xuZXhwb3J0IHR5cGUgVXBkYXRlRXZlbnRSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydVcGRhdGVFdmVudER0byddO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBCT09LSU5HIFRZUEVTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIEJvb2tpbmdSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQm9va2luZ1Jlc3BvbnNlRHRvJ107XG5leHBvcnQgdHlwZSBDcmVhdGVCb29raW5nUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQ3JlYXRlQm9va2luZ0R0byddO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBMSUJSQVJZIFRZUEVTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIExpYnJhcnlDb250ZW50UmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0xpYnJhcnlDb250ZW50UmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIExpYnJhcnlDb250ZW50RGV0YWlsUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0xpYnJhcnlDb250ZW50RGV0YWlsUmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIExpYnJhcnlQcm9ncmVzc1Jlc3BvbnNlID0gY29tcG9uZW50c1snc2NoZW1hcyddWydMaWJyYXJ5UHJvZ3Jlc3NSZXNwb25zZUR0byddO1xuZXhwb3J0IHR5cGUgQ29udGVudFR5cGUgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0xpYnJhcnlDb250ZW50UmVzcG9uc2VEdG8nXVsndHlwZSddO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBCVVNJTkVTUyAmIE9GRkVSIFRZUEVTIChMZWdhY3kpXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIEJ1c2luZXNzUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0J1c2luZXNzUmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIE9mZmVyUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ09mZmVyUmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIFJlZGVlbU9mZmVyUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnUmVkZWVtT2ZmZXJEdG8nXTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gVkVOVUUgVFlQRVMgKGZyb20gZ2VuZXJhdGVkIE9wZW5BUEkgdHlwZXMpXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIFZlbnVlUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ1ZlbnVlUmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIFZlbnVlT3duZXJSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnVmVudWVPd25lclJlc3BvbnNlRHRvJ107XG5cbi8vIFJlcXVlc3QgdHlwZXMgZm9yIHZlbnVlIG9wZXJhdGlvbnNcbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlVmVudWVSZXF1ZXN0IHtcbiAgbmFtZTogc3RyaW5nO1xuICBzbHVnOiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICB0eXBlOiBCdXNpbmVzc1R5cGU7XG4gIGhhc0FmRHJpbmtzPzogYm9vbGVhbjtcbiAgaXNBZlZlbnVlPzogYm9vbGVhbjtcbiAgYWZIaWdobGlnaHRzPzogc3RyaW5nW107XG4gIGFkZHJlc3M/OiBzdHJpbmc7XG4gIGNpdHlJZD86IHN0cmluZztcbiAgbG9jYXRpb25MYXQ/OiBudW1iZXI7XG4gIGxvY2F0aW9uTG9uZz86IG51bWJlcjtcbiAgcGhvbmU/OiBzdHJpbmc7XG4gIGVtYWlsPzogc3RyaW5nO1xuICB3ZWJzaXRlPzogc3RyaW5nO1xuICBpbnN0YWdyYW0/OiBzdHJpbmc7XG4gIHByb2ZpbGVJbWFnZT86IHN0cmluZztcbiAgYmFubmVySW1hZ2U/OiBzdHJpbmc7XG4gIHBob3Rvcz86IHN0cmluZ1tdO1xuICBvcGVuaW5nSG91cnM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZVZlbnVlUmVxdWVzdCBleHRlbmRzIFBhcnRpYWw8Q3JlYXRlVmVudWVSZXF1ZXN0PiB7fVxuXG5leHBvcnQgaW50ZXJmYWNlIEFkZFZlbnVlT3duZXJSZXF1ZXN0IHtcbiAgdXNlcklkOiBzdHJpbmc7XG4gIHJvbGU6IFZlbnVlT3duZXJSb2xlO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBDUkVBVE9SIFRZUEVTIChmcm9tIGdlbmVyYXRlZCBPcGVuQVBJIHR5cGVzKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSBDcmVhdG9yUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0NyZWF0b3JSZXNwb25zZUR0byddO1xuZXhwb3J0IHR5cGUgQ3JlYXRvckF2YWlsYWJpbGl0eVJlc3BvbnNlID0gY29tcG9uZW50c1snc2NoZW1hcyddWydDcmVhdG9yQXZhaWxhYmlsaXR5UmVzcG9uc2VEdG8nXTtcblxuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVDcmVhdG9yUmVxdWVzdCB7XG4gIHNsdWc6IHN0cmluZztcbiAgZGlzcGxheU5hbWU6IHN0cmluZztcbiAgYmlvPzogc3RyaW5nO1xuICBhdmF0YXJVcmw/OiBzdHJpbmc7XG4gIGNpdHlJZHM/OiBzdHJpbmdbXTtcbiAgY2FuRmFjaWxpdGF0ZT86IGJvb2xlYW47XG4gIGNhbkNyZWF0ZUNvbnRlbnQ/OiBib29sZWFuO1xuICBpc0luZmx1ZW5jZXI/OiBib29sZWFuO1xuICBzcGVjaWFsdGllcz86IHN0cmluZ1tdO1xuICBjZXJ0aWZpY2F0aW9ucz86IHN0cmluZ1tdO1xuICBzZXNzaW9uUmF0ZT86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVcGRhdGVDcmVhdG9yUmVxdWVzdCBleHRlbmRzIFBhcnRpYWw8Q3JlYXRlQ3JlYXRvclJlcXVlc3Q+IHt9XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlQXZhaWxhYmlsaXR5UmVxdWVzdCB7XG4gIGRheU9mV2Vlaz86IG51bWJlcjtcbiAgc3RhcnRUaW1lOiBzdHJpbmc7XG4gIGVuZFRpbWU6IHN0cmluZztcbiAgdGltZXpvbmU6IHN0cmluZztcbiAgaXNSZWN1cnJpbmc/OiBib29sZWFuO1xuICBzcGVjaWZpY0RhdGU/OiBzdHJpbmc7XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEJSQU5EIFRZUEVTIChmcm9tIGdlbmVyYXRlZCBPcGVuQVBJIHR5cGVzKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSBCcmFuZFJlc3BvbnNlID0gY29tcG9uZW50c1snc2NoZW1hcyddWydCcmFuZFJlc3BvbnNlRHRvJ107XG5leHBvcnQgdHlwZSBCcmFuZE93bmVyUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0JyYW5kT3duZXJSZXNwb25zZUR0byddO1xuZXhwb3J0IHR5cGUgQnJhbmRDcmVhdG9yUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0JyYW5kQ3JlYXRvclJlc3BvbnNlRHRvJ107XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlQnJhbmRSZXF1ZXN0IHtcbiAgc2x1Zzogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICBsb2dvVXJsPzogc3RyaW5nO1xuICBiYW5uZXJVcmw/OiBzdHJpbmc7XG4gIHByaW1hcnlDb2xvcj86IHN0cmluZztcbiAgd2Vic2l0ZT86IHN0cmluZztcbiAgZW1haWw/OiBzdHJpbmc7XG4gIGluc3RhZ3JhbT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVcGRhdGVCcmFuZFJlcXVlc3QgZXh0ZW5kcyBQYXJ0aWFsPENyZWF0ZUJyYW5kUmVxdWVzdD4ge31cblxuZXhwb3J0IGludGVyZmFjZSBBZGRCcmFuZE93bmVyUmVxdWVzdCB7XG4gIHVzZXJJZDogc3RyaW5nO1xuICByb2xlOiBCcmFuZE93bmVyUm9sZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBZGRCcmFuZENyZWF0b3JSZXF1ZXN0IHtcbiAgY3JlYXRvcklkOiBzdHJpbmc7XG4gIGNvbW1pc3Npb25SYXRlPzogbnVtYmVyO1xuICBpc0FjdGl2ZT86IGJvb2xlYW47XG4gIHN0YXJ0RGF0ZT86IHN0cmluZztcbiAgZW5kRGF0ZT86IHN0cmluZztcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gU1VCU0NSSVBUSU9OIFRZUEVTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIFN1YnNjcmlwdGlvblJlc3BvbnNlID0gY29tcG9uZW50c1snc2NoZW1hcyddWydTdWJzY3JpcHRpb25SZXNwb25zZUR0byddO1xuZXhwb3J0IHR5cGUgQ3JlYXRlQ2hlY2tvdXRSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydDcmVhdGVDaGVja291dER0byddO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBOT1RJRklDQVRJT04gVFlQRVNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0IHR5cGUgTm90aWZpY2F0aW9uUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ05vdGlmaWNhdGlvblJlc3BvbnNlRHRvJ107XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIERFVklDRSBUT0tFTiBUWVBFU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSBSZWdpc3RlckRldmljZVRva2VuUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnUmVnaXN0ZXJEZXZpY2VEdG8nXTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gU1VQUE9SVCBUWVBFU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBDaGVjay1pbnNcbmV4cG9ydCB0eXBlIENoZWNrSW5SZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQ2hlY2tJblJlc3BvbnNlRHRvJ107XG5leHBvcnQgdHlwZSBDcmVhdGVDaGVja0luUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQ3JlYXRlQ2hlY2tJbkR0byddO1xuZXhwb3J0IHR5cGUgVXBkYXRlQ2hlY2tJblJlcXVlc3QgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ1VwZGF0ZUNoZWNrSW5EdG8nXTtcbmV4cG9ydCB0eXBlIENoZWNrSW5TdHJlYWtSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQ2hlY2tJblN0cmVha0R0byddO1xuXG4vLyBXaW5zXG5leHBvcnQgdHlwZSBXaW5SZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnV2luUmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIENyZWF0ZVdpblJlcXVlc3QgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0NyZWF0ZVdpbkR0byddO1xuZXhwb3J0IHR5cGUgV2luQ291bnRSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnV2luQ291bnREdG8nXTtcblxuLy8gSmFjayBBSSBDb252ZXJzYXRpb25zXG5leHBvcnQgdHlwZSBDb252ZXJzYXRpb25SZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQ29udmVyc2F0aW9uUmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIENvbnZlcnNhdGlvbldpdGhNZXNzYWdlc1Jlc3BvbnNlID0gY29tcG9uZW50c1snc2NoZW1hcyddWydDb252ZXJzYXRpb25XaXRoTWVzc2FnZXNEdG8nXTtcbmV4cG9ydCB0eXBlIENyZWF0ZUNvbnZlcnNhdGlvblJlcXVlc3QgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0NyZWF0ZUNvbnZlcnNhdGlvbkR0byddO1xuZXhwb3J0IHR5cGUgSmFja01lc3NhZ2VSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnTWVzc2FnZVJlc3BvbnNlRHRvJ107XG5leHBvcnQgdHlwZSBTZW5kSmFja01lc3NhZ2VSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydTZW5kTWVzc2FnZUR0byddO1xuXG4vLyBNb29kIExvZ3NcbmV4cG9ydCB0eXBlIE1vb2RMb2dSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnTW9vZExvZ1Jlc3BvbnNlRHRvJ107XG5leHBvcnQgdHlwZSBMb2dNb29kUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnTG9nTW9vZER0byddO1xuZXhwb3J0IHR5cGUgTW9vZFN0YXRzUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ01vb2RTdGF0c0R0byddO1xuXG4vLyBIYWJpdHNcbmV4cG9ydCB0eXBlIEhhYml0UmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0hhYml0UmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIENyZWF0ZUhhYml0UmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQ3JlYXRlSGFiaXREdG8nXTtcbmV4cG9ydCB0eXBlIFVwZGF0ZUhhYml0UmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnVXBkYXRlSGFiaXREdG8nXTtcbmV4cG9ydCB0eXBlIENvbXBsZXRlSGFiaXRSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydDb21wbGV0ZUhhYml0RHRvJ107XG5leHBvcnQgdHlwZSBIYWJpdENvbXBsZXRpb25SZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnSGFiaXRDb21wbGV0aW9uUmVzcG9uc2VEdG8nXTtcblxuLy8gUmVmbGVjdGlvbnNcbmV4cG9ydCB0eXBlIFJlZmxlY3Rpb25SZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnUmVmbGVjdGlvblJlc3BvbnNlRHRvJ107XG5leHBvcnQgdHlwZSBDcmVhdGVSZWZsZWN0aW9uUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQ3JlYXRlUmVmbGVjdGlvbkR0byddO1xuZXhwb3J0IHR5cGUgVXBkYXRlUmVmbGVjdGlvblJlcXVlc3QgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ1VwZGF0ZVJlZmxlY3Rpb25EdG8nXTtcblxuLy8gQ3JhdmluZ3NcbmV4cG9ydCB0eXBlIENyYXZpbmdMb2dSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQ3JhdmluZ0xvZ1Jlc3BvbnNlRHRvJ107XG5leHBvcnQgdHlwZSBMb2dDcmF2aW5nUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnTG9nQ3JhdmluZ0R0byddO1xuZXhwb3J0IHR5cGUgQ3JhdmluZ1N0YXRzUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0NyYXZpbmdTdGF0c0R0byddO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNQVAgVFlQRVNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0IHR5cGUgTWFwTWVtYmVyUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ01hcE1lbWJlckR0byddO1xuZXhwb3J0IHR5cGUgTWFwSHViUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ01hcEh1YkR0byddO1xuZXhwb3J0IHR5cGUgTWFwRXZlbnRSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnTWFwRXZlbnREdG8nXTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQU1CQVNTQURPUiBUWVBFU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSBBbWJhc3NhZG9yUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0FtYmFzc2Fkb3JSZXNwb25zZUR0byddO1xuZXhwb3J0IHR5cGUgQXBwbHlBbWJhc3NhZG9yUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQXBwbHlBbWJhc3NhZG9yRHRvJ107XG5leHBvcnQgdHlwZSBVcGRhdGVBbWJhc3NhZG9yUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnVXBkYXRlQW1iYXNzYWRvckR0byddO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBHUk9XOTAgVFlQRVNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0IHR5cGUgR3JvdzkwRW5yb2xsbWVudFJlc3BvbnNlID0gY29tcG9uZW50c1snc2NoZW1hcyddWydHcm93OTBFbnJvbGxtZW50UmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIEdyb3c5MFByb2dyZXNzUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0dyb3c5MFByb2dyZXNzUmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIEdyb3c5MFRvZGF5UmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0dyb3c5MFRvZGF5UmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIEdyb3c5MFN0YXRzUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0dyb3c5MFN0YXRzUmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIEVucm9sbEdyb3c5MFJlcXVlc3QgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0Vucm9sbEdyb3c5MER0byddO1xuZXhwb3J0IHR5cGUgVXBkYXRlR3JvdzkwUHJvZ3Jlc3NSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydVcGRhdGVQcm9ncmVzc0R0byddO1xuZXhwb3J0IHR5cGUgVXBkYXRlR3JvdzkwU2V0dGluZ3NSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydVcGRhdGVTZXR0aW5nc0R0byddO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNQVRDSElORyBUWVBFU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSBDcmVhdGVNYXRjaFJlcXVlc3QgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0NyZWF0ZU1hdGNoRHRvJ107XG5leHBvcnQgdHlwZSBVcGRhdGVNYXRjaFJlcXVlc3QgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ1VwZGF0ZU1hdGNoRHRvJ107XG5leHBvcnQgdHlwZSBDcmVhdGVCdWRkeVJlcXVlc3QgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0NyZWF0ZUJ1ZGR5UmVxdWVzdER0byddO1xuZXhwb3J0IHR5cGUgVXBkYXRlQnVkZHlSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydVcGRhdGVCdWRkeUR0byddO1xuZXhwb3J0IHR5cGUgTG9nQnVkZHlBY3Rpdml0eVJlcXVlc3QgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0xvZ0J1ZGR5QWN0aXZpdHlEdG8nXTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gRVZFTlQgQ0hBVCBUWVBFU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSBFdmVudENoYXRSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnRXZlbnRDaGF0UmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIENoYXRNZW1iZXJSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQ2hhdE1lbWJlclJlc3BvbnNlRHRvJ107XG5leHBvcnQgdHlwZSBDaGF0TWVzc2FnZVJlc3BvbnNlID0gY29tcG9uZW50c1snc2NoZW1hcyddWydNZXNzYWdlUmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIFBhZ2luYXRlZE1lc3NhZ2VzUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ1BhZ2luYXRlZE1lc3NhZ2VzRHRvJ107XG5leHBvcnQgdHlwZSBTZW5kQ2hhdE1lc3NhZ2VSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydTZW5kTWVzc2FnZUR0byddO1xuZXhwb3J0IHR5cGUgVXBkYXRlQ2hhdE1lc3NhZ2VSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydVcGRhdGVNZXNzYWdlRHRvJ107XG5leHBvcnQgdHlwZSBVcGRhdGVDaGF0U2V0dGluZ3NSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydVcGRhdGVDaGF0U2V0dGluZ3NEdG8nXTtcbmV4cG9ydCB0eXBlIFVwZGF0ZU1lbWJlclNldHRpbmdzUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnVXBkYXRlTWVtYmVyU2V0dGluZ3NEdG8nXTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQURNSU4gVFlQRVNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0IHR5cGUgQWRtaW5Mb2dpblJlcXVlc3QgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0FkbWluTG9naW5EdG8nXTtcbmV4cG9ydCB0eXBlIEFkbWluVG9rZW5zUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0FkbWluVG9rZW5zRHRvJ107XG5leHBvcnQgdHlwZSBBZG1pblVwZGF0ZVVzZXJSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydBZG1pblVwZGF0ZVVzZXJEdG8nXTtcbmV4cG9ydCB0eXBlIEFkbWluQ3JlYXRlSHViUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQWRtaW5DcmVhdGVIdWJEdG8nXTtcbmV4cG9ydCB0eXBlIEFkbWluVXBkYXRlRXZlbnRSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydBZG1pblVwZGF0ZUV2ZW50RHRvJ107XG5leHBvcnQgdHlwZSBBZG1pbkNyZWF0ZUNvbnRlbnRSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydBZG1pbkNyZWF0ZUNvbnRlbnREdG8nXTtcbmV4cG9ydCB0eXBlIEFkbWluQ3JlYXRlQnVzaW5lc3NSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydBZG1pbkNyZWF0ZUJ1c2luZXNzRHRvJ107XG5leHBvcnQgdHlwZSBBZG1pbk92ZXJ2aWV3U3RhdHNSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQWRtaW5PdmVydmlld1N0YXRzRHRvJ107XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEJBREdFIFRZUEVTIChmcm9tIGdlbmVyYXRlZCBPcGVuQVBJIHR5cGVzKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSBCYWRnZVJlc3BvbnNlID0gY29tcG9uZW50c1snc2NoZW1hcyddWydCYWRnZVJlc3BvbnNlRHRvJ107XG5leHBvcnQgdHlwZSBVc2VyQmFkZ2VSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnVXNlckJhZGdlUmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIEJhZGdlUHJvZ3Jlc3NSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQmFkZ2VQcm9ncmVzc0R0byddO1xuXG4vLyBBbGlhcyBmb3IgU0RLIGNvbnNpc3RlbmN5XG5leHBvcnQgaW50ZXJmYWNlIEJhZGdlV2l0aFByb2dyZXNzIHtcbiAgYmFkZ2U6IEJhZGdlUmVzcG9uc2U7XG4gIGN1cnJlbnRQcm9ncmVzczogbnVtYmVyO1xuICByZXF1aXJlZFByb2dyZXNzOiBudW1iZXI7XG4gIHBlcmNlbnRDb21wbGV0ZTogbnVtYmVyO1xuICBpc0Vhcm5lZDogYm9vbGVhbjtcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gVU5JRklFRCBSRVdBUkQgVFlQRVNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gUmVkZWVtVHlwZSBlbnVtIC0gZXh0cmFjdGVkIGZyb20gUHJpc21hIHZpYSBBUElcbmV4cG9ydCB0eXBlIFJlZGVlbVR5cGUgPSAnSU5fUEVSU09OJyB8ICdPTkxJTkUnIHwgJ0JPVEgnO1xuXG4vLyBSZXdhcmQgcmVzcG9uc2Ugd2l0aCByZWxhdGlvbnNcbmV4cG9ydCBpbnRlcmZhY2UgUmV3YXJkUmVzcG9uc2Uge1xuICBpZDogc3RyaW5nO1xuICB2ZW51ZUlkOiBzdHJpbmcgfCBudWxsO1xuICBicmFuZElkOiBzdHJpbmcgfCBudWxsO1xuICBiYWRnZUlkOiBzdHJpbmc7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uOiBzdHJpbmcgfCBudWxsO1xuICBjb2RlOiBzdHJpbmcgfCBudWxsO1xuICByZWRlZW1UeXBlOiBSZWRlZW1UeXBlO1xuICBtYXhSZWRlbXB0aW9uczogbnVtYmVyIHwgbnVsbDtcbiAgcmVkZW1wdGlvbnNVc2VkOiBudW1iZXI7XG4gIHBlclVzZXJMaW1pdDogbnVtYmVyO1xuICB2YWxpZEZyb206IHN0cmluZyB8IG51bGw7XG4gIHZhbGlkVW50aWw6IHN0cmluZyB8IG51bGw7XG4gIGlzQWN0aXZlOiBib29sZWFuO1xuICBjcmVhdGVkQXQ6IHN0cmluZztcbiAgYmFkZ2U6IHtcbiAgICBpZDogc3RyaW5nO1xuICAgIG5hbWU6IHN0cmluZztcbiAgICBzbHVnOiBzdHJpbmc7XG4gICAgaWNvbjogc3RyaW5nIHwgbnVsbDtcbiAgfTtcbiAgdmVudWU/OiB7XG4gICAgaWQ6IHN0cmluZztcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgc2x1Zzogc3RyaW5nO1xuICAgIHByb2ZpbGVJbWFnZTogc3RyaW5nIHwgbnVsbDtcbiAgICBhZGRyZXNzOiBzdHJpbmcgfCBudWxsO1xuICB9IHwgbnVsbDtcbiAgYnJhbmQ/OiB7XG4gICAgaWQ6IHN0cmluZztcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgc2x1Zzogc3RyaW5nO1xuICAgIGxvZ29Vcmw6IHN0cmluZyB8IG51bGw7XG4gIH0gfCBudWxsO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJld2FyZFJlZGVtcHRpb25SZXNwb25zZSB7XG4gIGlkOiBzdHJpbmc7XG4gIHVzZXJJZDogc3RyaW5nO1xuICByZXdhcmRJZDogc3RyaW5nO1xuICByZWRlZW1lZEF0OiBzdHJpbmc7XG4gIHZlcmlmaWVkQXQ6IHN0cmluZyB8IG51bGw7XG4gIHZlcmlmaWVkQnk6IHN0cmluZyB8IG51bGw7XG4gIGNvZGVVc2VkOiBzdHJpbmcgfCBudWxsO1xuICByZXdhcmQ6IFJld2FyZFJlc3BvbnNlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZVJld2FyZFJlcXVlc3Qge1xuICBiYWRnZUlkOiBzdHJpbmc7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICBjb2RlPzogc3RyaW5nO1xuICByZWRlZW1UeXBlPzogUmVkZWVtVHlwZTtcbiAgbWF4UmVkZW1wdGlvbnM/OiBudW1iZXI7XG4gIHBlclVzZXJMaW1pdD86IG51bWJlcjtcbiAgdmFsaWRGcm9tPzogc3RyaW5nO1xuICB2YWxpZFVudGlsPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZVJld2FyZFJlcXVlc3Qge1xuICB0aXRsZT86IHN0cmluZztcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIGNvZGU/OiBzdHJpbmc7XG4gIHJlZGVlbVR5cGU/OiBSZWRlZW1UeXBlO1xuICBtYXhSZWRlbXB0aW9ucz86IG51bWJlcjtcbiAgcGVyVXNlckxpbWl0PzogbnVtYmVyO1xuICB2YWxpZEZyb20/OiBzdHJpbmc7XG4gIHZhbGlkVW50aWw/OiBzdHJpbmc7XG4gIGlzQWN0aXZlPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVc2VyV2FsbGV0UmVzcG9uc2Uge1xuICBiYWRnZXM6IEFycmF5PHtcbiAgICBpZDogc3RyaW5nO1xuICAgIGJhZGdlSWQ6IHN0cmluZztcbiAgICB1c2VySWQ6IHN0cmluZztcbiAgICBhd2FyZGVkQXQ6IHN0cmluZztcbiAgICBiYWRnZTogQmFkZ2VSZXNwb25zZTtcbiAgICBhdmFpbGFibGVSZXdhcmRzOiBSZXdhcmRSZXNwb25zZVtdO1xuICAgIHJlZGVlbWVkUmV3YXJkczogQXJyYXk8UmV3YXJkUmVkZW1wdGlvblJlc3BvbnNlICYgeyBxclRva2VuOiBzdHJpbmcgfT47XG4gIH0+O1xuICBzdGF0czoge1xuICAgIHRvdGFsQmFkZ2VzOiBudW1iZXI7XG4gICAgdG90YWxBdmFpbGFibGVSZXdhcmRzOiBudW1iZXI7XG4gICAgdG90YWxSZWRlZW1lZFJld2FyZHM6IG51bWJlcjtcbiAgfTtcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTEVHQUNZIFRZUEVTIChkZXByZWNhdGVkIC0gdXNlIHVuaWZpZWQgdHlwZXMpXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKiBAZGVwcmVjYXRlZCBVc2UgUmV3YXJkUmVzcG9uc2UgaW5zdGVhZCAqL1xuZXhwb3J0IGludGVyZmFjZSBQYXJ0bmVyUmV3YXJkUmVzcG9uc2Uge1xuICBpZDogc3RyaW5nO1xuICBidXNpbmVzc0lkOiBzdHJpbmc7XG4gIGJhZGdlSWQ6IHN0cmluZztcbiAgdGl0bGU6IHN0cmluZztcbiAgZGVzY3JpcHRpb246IHN0cmluZyB8IG51bGw7XG4gIGNvZGU6IHN0cmluZyB8IG51bGw7XG4gIG1heFJlZGVtcHRpb25zOiBudW1iZXIgfCBudWxsO1xuICByZWRlbXB0aW9uc1VzZWQ6IG51bWJlcjtcbiAgcGVyVXNlckxpbWl0OiBudW1iZXI7XG4gIHZhbGlkRnJvbTogc3RyaW5nO1xuICB2YWxpZFVudGlsOiBzdHJpbmcgfCBudWxsO1xuICBpc0FjdGl2ZTogYm9vbGVhbjtcbiAgY3JlYXRlZEF0OiBzdHJpbmc7XG4gIGJhZGdlOiB7XG4gICAgaWQ6IHN0cmluZztcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgc2x1Zzogc3RyaW5nO1xuICAgIGljb246IHN0cmluZyB8IG51bGw7XG4gIH07XG4gIGJ1c2luZXNzOiB7XG4gICAgaWQ6IHN0cmluZztcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgcHJvZmlsZUltYWdlOiBzdHJpbmcgfCBudWxsO1xuICB9O1xufVxuXG4vKiogQGRlcHJlY2F0ZWQgVXNlIFJld2FyZFJlZGVtcHRpb25SZXNwb25zZSBpbnN0ZWFkICovXG5leHBvcnQgaW50ZXJmYWNlIFBhcnRuZXJSZXdhcmRSZWRlbXB0aW9uUmVzcG9uc2Uge1xuICBpZDogc3RyaW5nO1xuICB1c2VySWQ6IHN0cmluZztcbiAgcGFydG5lclJld2FyZElkOiBzdHJpbmc7XG4gIHJlZGVlbWVkQXQ6IHN0cmluZztcbiAgdmVyaWZpZWRBdDogc3RyaW5nIHwgbnVsbDtcbiAgcGFydG5lclJld2FyZDogUGFydG5lclJld2FyZFJlc3BvbnNlO1xufVxuXG4vKiogQGRlcHJlY2F0ZWQgVXNlIENyZWF0ZVJld2FyZFJlcXVlc3QgaW5zdGVhZCAqL1xuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVQYXJ0bmVyUmV3YXJkUmVxdWVzdCB7XG4gIGJhZGdlSWQ6IHN0cmluZztcbiAgdGl0bGU6IHN0cmluZztcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIGNvZGU/OiBzdHJpbmc7XG4gIG1heFJlZGVtcHRpb25zPzogbnVtYmVyO1xuICBwZXJVc2VyTGltaXQ/OiBudW1iZXI7XG4gIHZhbGlkVW50aWw/OiBzdHJpbmc7XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFJFLUVYUE9SVFNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gUmUtZXhwb3J0IHBhdGhzIGFuZCBjb21wb25lbnRzIGZvciBhZHZhbmNlZCB1c2FnZVxuZXhwb3J0IHR5cGUgeyBwYXRocywgY29tcG9uZW50cyB9O1xuIl19
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXBpL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7Ozs7OztHQVVHIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHcm93U29iZXIgU0RLIFR5cGVzXG4gKlxuICogQWxsIHR5cGVzIGFyZSBkZXJpdmVkIGZyb20gdGhlIEBncm93c29iZXIvdHlwZXMgcGFja2FnZSB3aGljaCBpcyBhdXRvLWdlbmVyYXRlZFxuICogZnJvbSB0aGUgQVBJIE9wZW5BUEkgc3BlY2lmaWNhdGlvbi4gVGhpcyBlbnN1cmVzIHNpbmdsZSBzb3VyY2Ugb2YgdHJ1dGggZnJvbSBQcmlzbWEuXG4gKlxuICogVG8gcmVnZW5lcmF0ZSB0eXBlczpcbiAqIDEuIFN0YXJ0IHRoZSBBUEk6IGNkIC4uL2dyb3dzb2Jlci1hcGkgJiYgbnBtIHJ1biBzdGFydDpkZXZcbiAqIDIuIEdlbmVyYXRlIHR5cGVzOiBjZCAuLi9ncm93c29iZXItdHlwZXMgJiYgbnBtIHJ1biBnZW5lcmF0ZSAmJiBucG0gcnVuIGJ1aWxkXG4gKiAzLiBSZWJ1aWxkIFNESzogbnBtIHJ1biBidWlsZFxuICovXG5cbmltcG9ydCB0eXBlIHsgcGF0aHMsIGNvbXBvbmVudHMgfSBmcm9tICdAZ3Jvd3NvYmVyL3R5cGVzJztcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gVFlQRSBFWFRSQUNUSU9OIEhFTFBFUlNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBFeHRyYWN0IHJlcXVlc3QgYm9keSB0eXBlIGZvciBhIGdpdmVuIGVuZHBvaW50IGFuZCBtZXRob2RcbiAqL1xuZXhwb3J0IHR5cGUgUmVxdWVzdEJvZHk8XG4gIFBhdGggZXh0ZW5kcyBrZXlvZiBwYXRocyxcbiAgTWV0aG9kIGV4dGVuZHMga2V5b2YgcGF0aHNbUGF0aF1cbj4gPSBwYXRoc1tQYXRoXVtNZXRob2RdIGV4dGVuZHMgeyByZXF1ZXN0Qm9keTogeyBjb250ZW50OiB7ICdhcHBsaWNhdGlvbi9qc29uJzogaW5mZXIgVCB9IH0gfVxuICA/IFRcbiAgOiBuZXZlcjtcblxuLyoqXG4gKiBFeHRyYWN0IHJlc3BvbnNlIHR5cGUgZm9yIGEgZ2l2ZW4gZW5kcG9pbnQsIG1ldGhvZCwgYW5kIHN0YXR1cyBjb2RlXG4gKi9cbmV4cG9ydCB0eXBlIFJlc3BvbnNlQm9keTxcbiAgUGF0aCBleHRlbmRzIGtleW9mIHBhdGhzLFxuICBNZXRob2QgZXh0ZW5kcyBrZXlvZiBwYXRoc1tQYXRoXSxcbiAgU3RhdHVzIGV4dGVuZHMgbnVtYmVyID0gMjAwXG4+ID0gcGF0aHNbUGF0aF1bTWV0aG9kXSBleHRlbmRzIHsgcmVzcG9uc2VzOiB7IFtLIGluIFN0YXR1c106IHsgY29udGVudDogeyAnYXBwbGljYXRpb24vanNvbic6IGluZmVyIFQgfSB9IH0gfVxuICA/IFRcbiAgOiBuZXZlcjtcblxuLyoqXG4gKiBFeHRyYWN0IHF1ZXJ5IHBhcmFtZXRlcnMgdHlwZSBmb3IgYSBnaXZlbiBlbmRwb2ludCBhbmQgbWV0aG9kXG4gKi9cbmV4cG9ydCB0eXBlIFF1ZXJ5UGFyYW1zPFxuICBQYXRoIGV4dGVuZHMga2V5b2YgcGF0aHMsXG4gIE1ldGhvZCBleHRlbmRzIGtleW9mIHBhdGhzW1BhdGhdXG4+ID0gcGF0aHNbUGF0aF1bTWV0aG9kXSBleHRlbmRzIHsgcGFyYW1ldGVyczogeyBxdWVyeT86IGluZmVyIFEgfSB9XG4gID8gUVxuICA6IFJlY29yZDxzdHJpbmcsIG5ldmVyPjtcblxuLyoqXG4gKiBFeHRyYWN0IHBhdGggcGFyYW1ldGVycyB0eXBlIGZvciBhIGdpdmVuIGVuZHBvaW50IGFuZCBtZXRob2RcbiAqL1xuZXhwb3J0IHR5cGUgUGF0aFBhcmFtczxcbiAgUGF0aCBleHRlbmRzIGtleW9mIHBhdGhzLFxuICBNZXRob2QgZXh0ZW5kcyBrZXlvZiBwYXRoc1tQYXRoXVxuPiA9IHBhdGhzW1BhdGhdW01ldGhvZF0gZXh0ZW5kcyB7IHBhcmFtZXRlcnM6IHsgcGF0aDogaW5mZXIgUCB9IH1cbiAgPyBQXG4gIDogUmVjb3JkPHN0cmluZywgbmV2ZXI+O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBFTlVNIFRZUEVTIChleHRyYWN0ZWQgZnJvbSBnZW5lcmF0ZWQgc2NoZW1hcyAtIHNpbmdsZSBzb3VyY2Ugb2YgdHJ1dGgpXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEJ1c2luZXNzL1ZlbnVlIHR5cGUgKHVzZWQgZm9yIGJvdGggQnVzaW5lc3MgYW5kIFZlbnVlIG1vZGVscylcbmV4cG9ydCB0eXBlIEJ1c2luZXNzVHlwZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQnVzaW5lc3NSZXNwb25zZUR0byddWyd0eXBlJ107XG5cbi8vIE93bmVyc2hpcCByb2xlc1xuZXhwb3J0IHR5cGUgVmVudWVPd25lclJvbGUgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ1ZlbnVlT3duZXJSZXNwb25zZUR0byddWydyb2xlJ107XG5leHBvcnQgdHlwZSBCcmFuZE93bmVyUm9sZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQnJhbmRPd25lclJlc3BvbnNlRHRvJ11bJ3JvbGUnXTtcblxuLy8gRXZlbnQgdHlwZXNcbmV4cG9ydCB0eXBlIEdhdGhlcmluZ1R5cGUgPSBOb25OdWxsYWJsZTxjb21wb25lbnRzWydzY2hlbWFzJ11bJ0V2ZW50UmVzcG9uc2VEdG8nXVsnZ2F0aGVyaW5nVHlwZSddPjtcbmV4cG9ydCB0eXBlIEV2ZW50VmlzaWJpbGl0eSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnRXZlbnRSZXNwb25zZUR0byddWyd2aXNpYmlsaXR5J107XG5leHBvcnQgdHlwZSBFdmVudFN0YXR1cyA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnRXZlbnRSZXNwb25zZUR0byddWydzdGF0dXMnXTtcblxuLy8gQ2hhdCByb2xlc1xuZXhwb3J0IHR5cGUgQ2hhdE1lbWJlclJvbGUgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0NoYXRNZW1iZXJSZXNwb25zZUR0byddWydyb2xlJ107XG5cbi8vIENvbnRlbnQgc3RhdHVzXG5leHBvcnQgdHlwZSBDb250ZW50U3RhdHVzID0gY29tcG9uZW50c1snc2NoZW1hcyddWydMaWJyYXJ5Q29udGVudFJlc3BvbnNlRHRvJ11bJ2NvbnRlbnRTdGF0dXMnXTtcblxuLy8gQmFkZ2UgdHlwZXNcbmV4cG9ydCB0eXBlIEJhZGdlVHlwZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQmFkZ2VSZXNwb25zZUR0byddWyd0eXBlJ107XG5cbi8vIE5vdGlmaWNhdGlvbiB0eXBlc1xuZXhwb3J0IHR5cGUgTm90aWZpY2F0aW9uVHlwZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnTm90aWZpY2F0aW9uUmVzcG9uc2VEdG8nXVsndHlwZSddO1xuXG4vLyBTdHJlYWsgdHlwZXNcbmV4cG9ydCB0eXBlIFN0cmVha1R5cGUgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ1N0cmVha1Jlc3BvbnNlRHRvJ11bJ3R5cGUnXTtcblxuLy8gQ3JhdmluZyB0cmlnZ2Vyc1xuZXhwb3J0IHR5cGUgQ3JhdmluZ1RyaWdnZXIgPSBOb25OdWxsYWJsZTxjb21wb25lbnRzWydzY2hlbWFzJ11bJ0NyYXZpbmdMb2dSZXNwb25zZUR0byddWyd0cmlnZ2VyVHlwZSddPjtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQVVUSCBUWVBFU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSBSZWdpc3RlclJlcXVlc3QgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ1JlZ2lzdGVyRHRvJ107XG5leHBvcnQgdHlwZSBBdXRoUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0F1dGhSZXNwb25zZUR0byddO1xuZXhwb3J0IHR5cGUgTG9naW5SZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydMb2dpbkR0byddO1xuZXhwb3J0IHR5cGUgUmVmcmVzaFRva2VuUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnUmVmcmVzaFRva2VuRHRvJ107XG5leHBvcnQgdHlwZSBUb2tlblJlc3BvbnNlID0gY29tcG9uZW50c1snc2NoZW1hcyddWydUb2tlblJlc3BvbnNlRHRvJ107XG5leHBvcnQgdHlwZSBGaXJlYmFzZUF1dGhSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydGaXJlYmFzZUF1dGhEdG8nXTtcbmV4cG9ydCB0eXBlIFNlbmRPdHBSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydTZW5kT3RwRHRvJ107XG5leHBvcnQgdHlwZSBPdHBTZW50UmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ090cFNlbnRSZXNwb25zZUR0byddO1xuZXhwb3J0IHR5cGUgVmVyaWZ5T3RwUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnVmVyaWZ5T3RwRHRvJ107XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFVTRVIgVFlQRVNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0IHR5cGUgVXNlclJlc3BvbnNlID0gY29tcG9uZW50c1snc2NoZW1hcyddWydVc2VyUmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIFVzZXJQdWJsaWNSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnVXNlclB1YmxpY1Jlc3BvbnNlRHRvJ107XG5leHBvcnQgdHlwZSBDcmVhdGVVc2VyUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQ3JlYXRlVXNlckR0byddO1xuZXhwb3J0IHR5cGUgVXBkYXRlVXNlclJlcXVlc3QgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ1VwZGF0ZVVzZXJEdG8nXTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gSFVCIFRZUEVTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIEh1YlJlc3BvbnNlID0gY29tcG9uZW50c1snc2NoZW1hcyddWydIdWJSZXNwb25zZUR0byddO1xuZXhwb3J0IHR5cGUgQ3JlYXRlSHViUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQ3JlYXRlSHViRHRvJ107XG5leHBvcnQgdHlwZSBVcGRhdGVIdWJSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydVcGRhdGVIdWJEdG8nXTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gRVZFTlQgVFlQRVNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0IHR5cGUgRXZlbnRSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnRXZlbnRSZXNwb25zZUR0byddO1xuZXhwb3J0IHR5cGUgQ3JlYXRlRXZlbnRSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydDcmVhdGVFdmVudER0byddO1xuZXhwb3J0IHR5cGUgVXBkYXRlRXZlbnRSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydVcGRhdGVFdmVudER0byddO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBCT09LSU5HIFRZUEVTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIEJvb2tpbmdSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQm9va2luZ1Jlc3BvbnNlRHRvJ107XG5leHBvcnQgdHlwZSBDcmVhdGVCb29raW5nUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQ3JlYXRlQm9va2luZ0R0byddO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBMSUJSQVJZIFRZUEVTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIExpYnJhcnlDb250ZW50UmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0xpYnJhcnlDb250ZW50UmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIExpYnJhcnlDb250ZW50RGV0YWlsUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0xpYnJhcnlDb250ZW50RGV0YWlsUmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIExpYnJhcnlQcm9ncmVzc1Jlc3BvbnNlID0gY29tcG9uZW50c1snc2NoZW1hcyddWydMaWJyYXJ5UHJvZ3Jlc3NSZXNwb25zZUR0byddO1xuZXhwb3J0IHR5cGUgQ29udGVudFR5cGUgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0xpYnJhcnlDb250ZW50UmVzcG9uc2VEdG8nXVsndHlwZSddO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBCVVNJTkVTUyAmIE9GRkVSIFRZUEVTIChMZWdhY3kpXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIEJ1c2luZXNzUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0J1c2luZXNzUmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIE9mZmVyUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ09mZmVyUmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIFJlZGVlbU9mZmVyUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnUmVkZWVtT2ZmZXJEdG8nXTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gVkVOVUUgVFlQRVMgKGZyb20gZ2VuZXJhdGVkIE9wZW5BUEkgdHlwZXMpXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIFZlbnVlUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ1ZlbnVlUmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIFZlbnVlT3duZXJSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnVmVudWVPd25lclJlc3BvbnNlRHRvJ107XG5cbi8vIFJlcXVlc3QgdHlwZXMgZm9yIHZlbnVlIG9wZXJhdGlvbnNcbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlVmVudWVSZXF1ZXN0IHtcbiAgbmFtZTogc3RyaW5nO1xuICBzbHVnOiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICB0eXBlOiBCdXNpbmVzc1R5cGU7XG4gIGhhc0FmRHJpbmtzPzogYm9vbGVhbjtcbiAgaXNBZlZlbnVlPzogYm9vbGVhbjtcbiAgYWZIaWdobGlnaHRzPzogc3RyaW5nW107XG4gIGFkZHJlc3M/OiBzdHJpbmc7XG4gIGNpdHlJZD86IHN0cmluZztcbiAgbG9jYXRpb25MYXQ/OiBudW1iZXI7XG4gIGxvY2F0aW9uTG9uZz86IG51bWJlcjtcbiAgcGhvbmU/OiBzdHJpbmc7XG4gIGVtYWlsPzogc3RyaW5nO1xuICB3ZWJzaXRlPzogc3RyaW5nO1xuICBpbnN0YWdyYW0/OiBzdHJpbmc7XG4gIHByb2ZpbGVJbWFnZT86IHN0cmluZztcbiAgYmFubmVySW1hZ2U/OiBzdHJpbmc7XG4gIHBob3Rvcz86IHN0cmluZ1tdO1xuICBvcGVuaW5nSG91cnM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZVZlbnVlUmVxdWVzdCBleHRlbmRzIFBhcnRpYWw8Q3JlYXRlVmVudWVSZXF1ZXN0PiB7fVxuXG5leHBvcnQgaW50ZXJmYWNlIEFkZFZlbnVlT3duZXJSZXF1ZXN0IHtcbiAgdXNlcklkOiBzdHJpbmc7XG4gIHJvbGU6IFZlbnVlT3duZXJSb2xlO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBDUkVBVE9SIFRZUEVTIChmcm9tIGdlbmVyYXRlZCBPcGVuQVBJIHR5cGVzKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSBDcmVhdG9yUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0NyZWF0b3JSZXNwb25zZUR0byddO1xuZXhwb3J0IHR5cGUgQ3JlYXRvckF2YWlsYWJpbGl0eVJlc3BvbnNlID0gY29tcG9uZW50c1snc2NoZW1hcyddWydDcmVhdG9yQXZhaWxhYmlsaXR5UmVzcG9uc2VEdG8nXTtcblxuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVDcmVhdG9yUmVxdWVzdCB7XG4gIHNsdWc6IHN0cmluZztcbiAgZGlzcGxheU5hbWU6IHN0cmluZztcbiAgYmlvPzogc3RyaW5nO1xuICBhdmF0YXJVcmw/OiBzdHJpbmc7XG4gIGNpdHlJZHM/OiBzdHJpbmdbXTtcbiAgY2FuRmFjaWxpdGF0ZT86IGJvb2xlYW47XG4gIGNhbkNyZWF0ZUNvbnRlbnQ/OiBib29sZWFuO1xuICBpc0luZmx1ZW5jZXI/OiBib29sZWFuO1xuICBzcGVjaWFsdGllcz86IHN0cmluZ1tdO1xuICBjZXJ0aWZpY2F0aW9ucz86IHN0cmluZ1tdO1xuICBzZXNzaW9uUmF0ZT86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVcGRhdGVDcmVhdG9yUmVxdWVzdCBleHRlbmRzIFBhcnRpYWw8Q3JlYXRlQ3JlYXRvclJlcXVlc3Q+IHt9XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlQXZhaWxhYmlsaXR5UmVxdWVzdCB7XG4gIGRheU9mV2Vlaz86IG51bWJlcjtcbiAgc3RhcnRUaW1lOiBzdHJpbmc7XG4gIGVuZFRpbWU6IHN0cmluZztcbiAgdGltZXpvbmU6IHN0cmluZztcbiAgaXNSZWN1cnJpbmc/OiBib29sZWFuO1xuICBzcGVjaWZpY0RhdGU/OiBzdHJpbmc7XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEJSQU5EIFRZUEVTIChmcm9tIGdlbmVyYXRlZCBPcGVuQVBJIHR5cGVzKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSBCcmFuZFJlc3BvbnNlID0gY29tcG9uZW50c1snc2NoZW1hcyddWydCcmFuZFJlc3BvbnNlRHRvJ107XG5leHBvcnQgdHlwZSBCcmFuZE93bmVyUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0JyYW5kT3duZXJSZXNwb25zZUR0byddO1xuZXhwb3J0IHR5cGUgQnJhbmRDcmVhdG9yUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0JyYW5kQ3JlYXRvclJlc3BvbnNlRHRvJ107XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlQnJhbmRSZXF1ZXN0IHtcbiAgc2x1Zzogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICBsb2dvVXJsPzogc3RyaW5nO1xuICBiYW5uZXJVcmw/OiBzdHJpbmc7XG4gIHByaW1hcnlDb2xvcj86IHN0cmluZztcbiAgd2Vic2l0ZT86IHN0cmluZztcbiAgZW1haWw/OiBzdHJpbmc7XG4gIGluc3RhZ3JhbT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVcGRhdGVCcmFuZFJlcXVlc3QgZXh0ZW5kcyBQYXJ0aWFsPENyZWF0ZUJyYW5kUmVxdWVzdD4ge31cblxuZXhwb3J0IGludGVyZmFjZSBBZGRCcmFuZE93bmVyUmVxdWVzdCB7XG4gIHVzZXJJZDogc3RyaW5nO1xuICByb2xlOiBCcmFuZE93bmVyUm9sZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBZGRCcmFuZENyZWF0b3JSZXF1ZXN0IHtcbiAgY3JlYXRvcklkOiBzdHJpbmc7XG4gIGNvbW1pc3Npb25SYXRlPzogbnVtYmVyO1xuICBpc0FjdGl2ZT86IGJvb2xlYW47XG4gIHN0YXJ0RGF0ZT86IHN0cmluZztcbiAgZW5kRGF0ZT86IHN0cmluZztcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gU1VCU0NSSVBUSU9OIFRZUEVTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIFN1YnNjcmlwdGlvblJlc3BvbnNlID0gY29tcG9uZW50c1snc2NoZW1hcyddWydTdWJzY3JpcHRpb25SZXNwb25zZUR0byddO1xuZXhwb3J0IHR5cGUgQ3JlYXRlQ2hlY2tvdXRSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydDcmVhdGVDaGVja291dER0byddO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBOT1RJRklDQVRJT04gVFlQRVNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0IHR5cGUgTm90aWZpY2F0aW9uUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ05vdGlmaWNhdGlvblJlc3BvbnNlRHRvJ107XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIERFVklDRSBUT0tFTiBUWVBFU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSBSZWdpc3RlckRldmljZVRva2VuUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnUmVnaXN0ZXJEZXZpY2VEdG8nXTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gU1VQUE9SVCBUWVBFU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBDaGVjay1pbnNcbmV4cG9ydCB0eXBlIENoZWNrSW5SZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQ2hlY2tJblJlc3BvbnNlRHRvJ107XG5leHBvcnQgdHlwZSBDcmVhdGVDaGVja0luUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQ3JlYXRlQ2hlY2tJbkR0byddO1xuZXhwb3J0IHR5cGUgVXBkYXRlQ2hlY2tJblJlcXVlc3QgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ1VwZGF0ZUNoZWNrSW5EdG8nXTtcbmV4cG9ydCB0eXBlIENoZWNrSW5TdHJlYWtSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQ2hlY2tJblN0cmVha0R0byddO1xuXG4vLyBXaW5zXG5leHBvcnQgdHlwZSBXaW5SZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnV2luUmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIENyZWF0ZVdpblJlcXVlc3QgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0NyZWF0ZVdpbkR0byddO1xuZXhwb3J0IHR5cGUgV2luQ291bnRSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnV2luQ291bnREdG8nXTtcblxuLy8gSmFjayBBSSBDb252ZXJzYXRpb25zXG5leHBvcnQgdHlwZSBDb252ZXJzYXRpb25SZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQ29udmVyc2F0aW9uUmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIENvbnZlcnNhdGlvbldpdGhNZXNzYWdlc1Jlc3BvbnNlID0gY29tcG9uZW50c1snc2NoZW1hcyddWydKYWNrQ29udmVyc2F0aW9uV2l0aE1lc3NhZ2VzRHRvJ107XG5leHBvcnQgdHlwZSBDcmVhdGVDb252ZXJzYXRpb25SZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydDcmVhdGVDb252ZXJzYXRpb25EdG8nXTtcbmV4cG9ydCB0eXBlIEphY2tNZXNzYWdlUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0phY2tNZXNzYWdlUmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIFNlbmRKYWNrTWVzc2FnZVJlcXVlc3QgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ1NlbmRKYWNrTWVzc2FnZUR0byddO1xuXG4vLyBNb29kIExvZ3NcbmV4cG9ydCB0eXBlIE1vb2RMb2dSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnTW9vZExvZ1Jlc3BvbnNlRHRvJ107XG5leHBvcnQgdHlwZSBMb2dNb29kUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnTG9nTW9vZER0byddO1xuZXhwb3J0IHR5cGUgTW9vZFN0YXRzUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ01vb2RTdGF0c0R0byddO1xuXG4vLyBIYWJpdHNcbmV4cG9ydCB0eXBlIEhhYml0UmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0hhYml0UmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIENyZWF0ZUhhYml0UmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQ3JlYXRlSGFiaXREdG8nXTtcbmV4cG9ydCB0eXBlIFVwZGF0ZUhhYml0UmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnVXBkYXRlSGFiaXREdG8nXTtcbmV4cG9ydCB0eXBlIENvbXBsZXRlSGFiaXRSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydDb21wbGV0ZUhhYml0RHRvJ107XG5leHBvcnQgdHlwZSBIYWJpdENvbXBsZXRpb25SZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnSGFiaXRDb21wbGV0aW9uUmVzcG9uc2VEdG8nXTtcblxuLy8gUmVmbGVjdGlvbnNcbmV4cG9ydCB0eXBlIFJlZmxlY3Rpb25SZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnUmVmbGVjdGlvblJlc3BvbnNlRHRvJ107XG5leHBvcnQgdHlwZSBDcmVhdGVSZWZsZWN0aW9uUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQ3JlYXRlUmVmbGVjdGlvbkR0byddO1xuZXhwb3J0IHR5cGUgVXBkYXRlUmVmbGVjdGlvblJlcXVlc3QgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ1VwZGF0ZVJlZmxlY3Rpb25EdG8nXTtcblxuLy8gQ3JhdmluZ3NcbmV4cG9ydCB0eXBlIENyYXZpbmdMb2dSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQ3JhdmluZ0xvZ1Jlc3BvbnNlRHRvJ107XG5leHBvcnQgdHlwZSBMb2dDcmF2aW5nUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnTG9nQ3JhdmluZ0R0byddO1xuZXhwb3J0IHR5cGUgQ3JhdmluZ1N0YXRzUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0NyYXZpbmdTdGF0c0R0byddO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNQVAgVFlQRVNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0IHR5cGUgTWFwTWVtYmVyUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ01hcE1lbWJlckR0byddO1xuZXhwb3J0IHR5cGUgTWFwSHViUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ01hcEh1YkR0byddO1xuZXhwb3J0IHR5cGUgTWFwRXZlbnRSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnTWFwRXZlbnREdG8nXTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQU1CQVNTQURPUiBUWVBFU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSBBbWJhc3NhZG9yUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0FtYmFzc2Fkb3JSZXNwb25zZUR0byddO1xuZXhwb3J0IHR5cGUgQXBwbHlBbWJhc3NhZG9yUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQXBwbHlBbWJhc3NhZG9yRHRvJ107XG5leHBvcnQgdHlwZSBVcGRhdGVBbWJhc3NhZG9yUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnVXBkYXRlQW1iYXNzYWRvckR0byddO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBHUk9XOTAgVFlQRVNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0IHR5cGUgR3JvdzkwRW5yb2xsbWVudFJlc3BvbnNlID0gY29tcG9uZW50c1snc2NoZW1hcyddWydHcm93OTBFbnJvbGxtZW50UmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIEdyb3c5MFByb2dyZXNzUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0dyb3c5MFByb2dyZXNzUmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIEdyb3c5MFRvZGF5UmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0dyb3c5MFRvZGF5UmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIEdyb3c5MFN0YXRzUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0dyb3c5MFN0YXRzUmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIEVucm9sbEdyb3c5MFJlcXVlc3QgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0Vucm9sbEdyb3c5MER0byddO1xuZXhwb3J0IHR5cGUgVXBkYXRlR3JvdzkwUHJvZ3Jlc3NSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydVcGRhdGVQcm9ncmVzc0R0byddO1xuZXhwb3J0IHR5cGUgVXBkYXRlR3JvdzkwU2V0dGluZ3NSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydVcGRhdGVTZXR0aW5nc0R0byddO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNQVRDSElORyBUWVBFU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSBDcmVhdGVNYXRjaFJlcXVlc3QgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0NyZWF0ZU1hdGNoRHRvJ107XG5leHBvcnQgdHlwZSBVcGRhdGVNYXRjaFJlcXVlc3QgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ1VwZGF0ZU1hdGNoRHRvJ107XG5leHBvcnQgdHlwZSBDcmVhdGVCdWRkeVJlcXVlc3QgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0NyZWF0ZUJ1ZGR5UmVxdWVzdER0byddO1xuZXhwb3J0IHR5cGUgVXBkYXRlQnVkZHlSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydVcGRhdGVCdWRkeUR0byddO1xuZXhwb3J0IHR5cGUgTG9nQnVkZHlBY3Rpdml0eVJlcXVlc3QgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0xvZ0J1ZGR5QWN0aXZpdHlEdG8nXTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gRVZFTlQgQ0hBVCBUWVBFU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSBFdmVudENoYXRSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnRXZlbnRDaGF0UmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIENoYXRNZW1iZXJSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQ2hhdE1lbWJlclJlc3BvbnNlRHRvJ107XG5leHBvcnQgdHlwZSBDaGF0TWVzc2FnZVJlc3BvbnNlID0gY29tcG9uZW50c1snc2NoZW1hcyddWydFdmVudENoYXRNZXNzYWdlUmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIFBhZ2luYXRlZE1lc3NhZ2VzUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ1BhZ2luYXRlZEV2ZW50Q2hhdE1lc3NhZ2VzRHRvJ107XG5leHBvcnQgdHlwZSBTZW5kQ2hhdE1lc3NhZ2VSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydTZW5kRXZlbnRDaGF0TWVzc2FnZUR0byddO1xuZXhwb3J0IHR5cGUgVXBkYXRlQ2hhdE1lc3NhZ2VSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydVcGRhdGVFdmVudENoYXRNZXNzYWdlRHRvJ107XG5leHBvcnQgdHlwZSBVcGRhdGVDaGF0U2V0dGluZ3NSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydVcGRhdGVDaGF0U2V0dGluZ3NEdG8nXTtcbmV4cG9ydCB0eXBlIFVwZGF0ZU1lbWJlclNldHRpbmdzUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnVXBkYXRlTWVtYmVyU2V0dGluZ3NEdG8nXTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQURNSU4gVFlQRVNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0IHR5cGUgQWRtaW5Mb2dpblJlcXVlc3QgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0FkbWluTG9naW5EdG8nXTtcbmV4cG9ydCB0eXBlIEFkbWluVG9rZW5zUmVzcG9uc2UgPSBjb21wb25lbnRzWydzY2hlbWFzJ11bJ0FkbWluVG9rZW5zRHRvJ107XG5leHBvcnQgdHlwZSBBZG1pblVwZGF0ZVVzZXJSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydBZG1pblVwZGF0ZVVzZXJEdG8nXTtcbmV4cG9ydCB0eXBlIEFkbWluQ3JlYXRlSHViUmVxdWVzdCA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQWRtaW5DcmVhdGVIdWJEdG8nXTtcbmV4cG9ydCB0eXBlIEFkbWluVXBkYXRlRXZlbnRSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydBZG1pblVwZGF0ZUV2ZW50RHRvJ107XG5leHBvcnQgdHlwZSBBZG1pbkNyZWF0ZUNvbnRlbnRSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydBZG1pbkNyZWF0ZUNvbnRlbnREdG8nXTtcbmV4cG9ydCB0eXBlIEFkbWluQ3JlYXRlQnVzaW5lc3NSZXF1ZXN0ID0gY29tcG9uZW50c1snc2NoZW1hcyddWydBZG1pbkNyZWF0ZUJ1c2luZXNzRHRvJ107XG5leHBvcnQgdHlwZSBBZG1pbk92ZXJ2aWV3U3RhdHNSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQWRtaW5PdmVydmlld1N0YXRzRHRvJ107XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEJBREdFIFRZUEVTIChmcm9tIGdlbmVyYXRlZCBPcGVuQVBJIHR5cGVzKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSBCYWRnZVJlc3BvbnNlID0gY29tcG9uZW50c1snc2NoZW1hcyddWydCYWRnZVJlc3BvbnNlRHRvJ107XG5leHBvcnQgdHlwZSBVc2VyQmFkZ2VSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnVXNlckJhZGdlUmVzcG9uc2VEdG8nXTtcbmV4cG9ydCB0eXBlIEJhZGdlUHJvZ3Jlc3NSZXNwb25zZSA9IGNvbXBvbmVudHNbJ3NjaGVtYXMnXVsnQmFkZ2VQcm9ncmVzc0R0byddO1xuXG4vLyBBbGlhcyBmb3IgU0RLIGNvbnNpc3RlbmN5XG5leHBvcnQgaW50ZXJmYWNlIEJhZGdlV2l0aFByb2dyZXNzIHtcbiAgYmFkZ2U6IEJhZGdlUmVzcG9uc2U7XG4gIGN1cnJlbnRQcm9ncmVzczogbnVtYmVyO1xuICByZXF1aXJlZFByb2dyZXNzOiBudW1iZXI7XG4gIHBlcmNlbnRDb21wbGV0ZTogbnVtYmVyO1xuICBpc0Vhcm5lZDogYm9vbGVhbjtcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gVU5JRklFRCBSRVdBUkQgVFlQRVNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gUmVkZWVtVHlwZSBlbnVtIC0gZXh0cmFjdGVkIGZyb20gUHJpc21hIHZpYSBBUElcbmV4cG9ydCB0eXBlIFJlZGVlbVR5cGUgPSAnSU5fUEVSU09OJyB8ICdPTkxJTkUnIHwgJ0JPVEgnO1xuXG4vLyBSZXdhcmQgcmVzcG9uc2Ugd2l0aCByZWxhdGlvbnNcbmV4cG9ydCBpbnRlcmZhY2UgUmV3YXJkUmVzcG9uc2Uge1xuICBpZDogc3RyaW5nO1xuICB2ZW51ZUlkOiBzdHJpbmcgfCBudWxsO1xuICBicmFuZElkOiBzdHJpbmcgfCBudWxsO1xuICBiYWRnZUlkOiBzdHJpbmc7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uOiBzdHJpbmcgfCBudWxsO1xuICBjb2RlOiBzdHJpbmcgfCBudWxsO1xuICByZWRlZW1UeXBlOiBSZWRlZW1UeXBlO1xuICBtYXhSZWRlbXB0aW9uczogbnVtYmVyIHwgbnVsbDtcbiAgcmVkZW1wdGlvbnNVc2VkOiBudW1iZXI7XG4gIHBlclVzZXJMaW1pdDogbnVtYmVyO1xuICB2YWxpZEZyb206IHN0cmluZyB8IG51bGw7XG4gIHZhbGlkVW50aWw6IHN0cmluZyB8IG51bGw7XG4gIGlzQWN0aXZlOiBib29sZWFuO1xuICBjcmVhdGVkQXQ6IHN0cmluZztcbiAgYmFkZ2U6IHtcbiAgICBpZDogc3RyaW5nO1xuICAgIG5hbWU6IHN0cmluZztcbiAgICBzbHVnOiBzdHJpbmc7XG4gICAgaWNvbjogc3RyaW5nIHwgbnVsbDtcbiAgfTtcbiAgdmVudWU/OiB7XG4gICAgaWQ6IHN0cmluZztcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgc2x1Zzogc3RyaW5nO1xuICAgIHByb2ZpbGVJbWFnZTogc3RyaW5nIHwgbnVsbDtcbiAgICBhZGRyZXNzOiBzdHJpbmcgfCBudWxsO1xuICB9IHwgbnVsbDtcbiAgYnJhbmQ/OiB7XG4gICAgaWQ6IHN0cmluZztcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgc2x1Zzogc3RyaW5nO1xuICAgIGxvZ29Vcmw6IHN0cmluZyB8IG51bGw7XG4gIH0gfCBudWxsO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJld2FyZFJlZGVtcHRpb25SZXNwb25zZSB7XG4gIGlkOiBzdHJpbmc7XG4gIHVzZXJJZDogc3RyaW5nO1xuICByZXdhcmRJZDogc3RyaW5nO1xuICByZWRlZW1lZEF0OiBzdHJpbmc7XG4gIHZlcmlmaWVkQXQ6IHN0cmluZyB8IG51bGw7XG4gIHZlcmlmaWVkQnk6IHN0cmluZyB8IG51bGw7XG4gIGNvZGVVc2VkOiBzdHJpbmcgfCBudWxsO1xuICByZXdhcmQ6IFJld2FyZFJlc3BvbnNlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZVJld2FyZFJlcXVlc3Qge1xuICBiYWRnZUlkOiBzdHJpbmc7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICBjb2RlPzogc3RyaW5nO1xuICByZWRlZW1UeXBlPzogUmVkZWVtVHlwZTtcbiAgbWF4UmVkZW1wdGlvbnM/OiBudW1iZXI7XG4gIHBlclVzZXJMaW1pdD86IG51bWJlcjtcbiAgdmFsaWRGcm9tPzogc3RyaW5nO1xuICB2YWxpZFVudGlsPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZVJld2FyZFJlcXVlc3Qge1xuICB0aXRsZT86IHN0cmluZztcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIGNvZGU/OiBzdHJpbmc7XG4gIHJlZGVlbVR5cGU/OiBSZWRlZW1UeXBlO1xuICBtYXhSZWRlbXB0aW9ucz86IG51bWJlcjtcbiAgcGVyVXNlckxpbWl0PzogbnVtYmVyO1xuICB2YWxpZEZyb20/OiBzdHJpbmc7XG4gIHZhbGlkVW50aWw/OiBzdHJpbmc7XG4gIGlzQWN0aXZlPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVc2VyV2FsbGV0UmVzcG9uc2Uge1xuICBiYWRnZXM6IEFycmF5PHtcbiAgICBpZDogc3RyaW5nO1xuICAgIGJhZGdlSWQ6IHN0cmluZztcbiAgICB1c2VySWQ6IHN0cmluZztcbiAgICBhd2FyZGVkQXQ6IHN0cmluZztcbiAgICBiYWRnZTogQmFkZ2VSZXNwb25zZTtcbiAgICBhdmFpbGFibGVSZXdhcmRzOiBSZXdhcmRSZXNwb25zZVtdO1xuICAgIHJlZGVlbWVkUmV3YXJkczogQXJyYXk8UmV3YXJkUmVkZW1wdGlvblJlc3BvbnNlICYgeyBxclRva2VuOiBzdHJpbmcgfT47XG4gIH0+O1xuICBzdGF0czoge1xuICAgIHRvdGFsQmFkZ2VzOiBudW1iZXI7XG4gICAgdG90YWxBdmFpbGFibGVSZXdhcmRzOiBudW1iZXI7XG4gICAgdG90YWxSZWRlZW1lZFJld2FyZHM6IG51bWJlcjtcbiAgfTtcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTEVHQUNZIFRZUEVTIChkZXByZWNhdGVkIC0gdXNlIHVuaWZpZWQgdHlwZXMpXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKiBAZGVwcmVjYXRlZCBVc2UgUmV3YXJkUmVzcG9uc2UgaW5zdGVhZCAqL1xuZXhwb3J0IGludGVyZmFjZSBQYXJ0bmVyUmV3YXJkUmVzcG9uc2Uge1xuICBpZDogc3RyaW5nO1xuICBidXNpbmVzc0lkOiBzdHJpbmc7XG4gIGJhZGdlSWQ6IHN0cmluZztcbiAgdGl0bGU6IHN0cmluZztcbiAgZGVzY3JpcHRpb246IHN0cmluZyB8IG51bGw7XG4gIGNvZGU6IHN0cmluZyB8IG51bGw7XG4gIG1heFJlZGVtcHRpb25zOiBudW1iZXIgfCBudWxsO1xuICByZWRlbXB0aW9uc1VzZWQ6IG51bWJlcjtcbiAgcGVyVXNlckxpbWl0OiBudW1iZXI7XG4gIHZhbGlkRnJvbTogc3RyaW5nO1xuICB2YWxpZFVudGlsOiBzdHJpbmcgfCBudWxsO1xuICBpc0FjdGl2ZTogYm9vbGVhbjtcbiAgY3JlYXRlZEF0OiBzdHJpbmc7XG4gIGJhZGdlOiB7XG4gICAgaWQ6IHN0cmluZztcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgc2x1Zzogc3RyaW5nO1xuICAgIGljb246IHN0cmluZyB8IG51bGw7XG4gIH07XG4gIGJ1c2luZXNzOiB7XG4gICAgaWQ6IHN0cmluZztcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgcHJvZmlsZUltYWdlOiBzdHJpbmcgfCBudWxsO1xuICB9O1xufVxuXG4vKiogQGRlcHJlY2F0ZWQgVXNlIFJld2FyZFJlZGVtcHRpb25SZXNwb25zZSBpbnN0ZWFkICovXG5leHBvcnQgaW50ZXJmYWNlIFBhcnRuZXJSZXdhcmRSZWRlbXB0aW9uUmVzcG9uc2Uge1xuICBpZDogc3RyaW5nO1xuICB1c2VySWQ6IHN0cmluZztcbiAgcGFydG5lclJld2FyZElkOiBzdHJpbmc7XG4gIHJlZGVlbWVkQXQ6IHN0cmluZztcbiAgdmVyaWZpZWRBdDogc3RyaW5nIHwgbnVsbDtcbiAgcGFydG5lclJld2FyZDogUGFydG5lclJld2FyZFJlc3BvbnNlO1xufVxuXG4vKiogQGRlcHJlY2F0ZWQgVXNlIENyZWF0ZVJld2FyZFJlcXVlc3QgaW5zdGVhZCAqL1xuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVQYXJ0bmVyUmV3YXJkUmVxdWVzdCB7XG4gIGJhZGdlSWQ6IHN0cmluZztcbiAgdGl0bGU6IHN0cmluZztcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIGNvZGU/OiBzdHJpbmc7XG4gIG1heFJlZGVtcHRpb25zPzogbnVtYmVyO1xuICBwZXJVc2VyTGltaXQ/OiBudW1iZXI7XG4gIHZhbGlkVW50aWw/OiBzdHJpbmc7XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFJFLUVYUE9SVFNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gUmUtZXhwb3J0IHBhdGhzIGFuZCBjb21wb25lbnRzIGZvciBhZHZhbmNlZCB1c2FnZVxuZXhwb3J0IHR5cGUgeyBwYXRocywgY29tcG9uZW50cyB9O1xuIl19
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@growsober/sdk",
3
- "version": "1.0.15",
3
+ "version": "1.0.16",
4
4
  "description": "Shared TypeScript SDK for GrowSober API - TanStack Query hooks, API client, and utilities",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",
@@ -50,7 +50,7 @@
50
50
  "zod": "^3.0.0"
51
51
  },
52
52
  "dependencies": {
53
- "@growsober/types": "^1.0.4"
53
+ "@growsober/types": "^1.0.6"
54
54
  },
55
55
  "devDependencies": {
56
56
  "@tanstack/react-query": "^5.90.16",
package/src/api/types.ts CHANGED
@@ -294,10 +294,10 @@ export type WinCountResponse = components['schemas']['WinCountDto'];
294
294
 
295
295
  // Jack AI Conversations
296
296
  export type ConversationResponse = components['schemas']['ConversationResponseDto'];
297
- export type ConversationWithMessagesResponse = components['schemas']['ConversationWithMessagesDto'];
297
+ export type ConversationWithMessagesResponse = components['schemas']['JackConversationWithMessagesDto'];
298
298
  export type CreateConversationRequest = components['schemas']['CreateConversationDto'];
299
- export type JackMessageResponse = components['schemas']['MessageResponseDto'];
300
- export type SendJackMessageRequest = components['schemas']['SendMessageDto'];
299
+ export type JackMessageResponse = components['schemas']['JackMessageResponseDto'];
300
+ export type SendJackMessageRequest = components['schemas']['SendJackMessageDto'];
301
301
 
302
302
  // Mood Logs
303
303
  export type MoodLogResponse = components['schemas']['MoodLogResponseDto'];
@@ -365,10 +365,10 @@ export type LogBuddyActivityRequest = components['schemas']['LogBuddyActivityDto
365
365
 
366
366
  export type EventChatResponse = components['schemas']['EventChatResponseDto'];
367
367
  export type ChatMemberResponse = components['schemas']['ChatMemberResponseDto'];
368
- export type ChatMessageResponse = components['schemas']['MessageResponseDto'];
369
- export type PaginatedMessagesResponse = components['schemas']['PaginatedMessagesDto'];
370
- export type SendChatMessageRequest = components['schemas']['SendMessageDto'];
371
- export type UpdateChatMessageRequest = components['schemas']['UpdateMessageDto'];
368
+ export type ChatMessageResponse = components['schemas']['EventChatMessageResponseDto'];
369
+ export type PaginatedMessagesResponse = components['schemas']['PaginatedEventChatMessagesDto'];
370
+ export type SendChatMessageRequest = components['schemas']['SendEventChatMessageDto'];
371
+ export type UpdateChatMessageRequest = components['schemas']['UpdateEventChatMessageDto'];
372
372
  export type UpdateChatSettingsRequest = components['schemas']['UpdateChatSettingsDto'];
373
373
  export type UpdateMemberSettingsRequest = components['schemas']['UpdateMemberSettingsDto'];
374
374