@regulaforensics/facesdk-webclient 4.1.2 → 4.1.4

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.
Files changed (199) hide show
  1. package/dist/cjs-es5/api/group-api.js +100 -51
  2. package/dist/cjs-es5/api/matching-api.js +30 -16
  3. package/dist/cjs-es5/api/person-api.js +142 -72
  4. package/dist/cjs-es5/api/search-api.js +16 -9
  5. package/dist/cjs-es5/api.js +1 -1
  6. package/dist/cjs-es5/base.js +1 -1
  7. package/dist/cjs-es5/common.js +1 -1
  8. package/dist/cjs-es5/configuration.js +1 -1
  9. package/dist/cjs-es5/ext/group-api.js +15 -15
  10. package/dist/cjs-es5/ext/matching-api.js +5 -5
  11. package/dist/cjs-es5/ext/person-api.js +21 -21
  12. package/dist/cjs-es5/ext/search-api.js +3 -3
  13. package/dist/cjs-es5/models/crop.js +1 -1
  14. package/dist/cjs-es5/models/detect-request.js +1 -1
  15. package/dist/cjs-es5/models/detect-response-all-of.js +1 -1
  16. package/dist/cjs-es5/models/detect-response.js +1 -1
  17. package/dist/cjs-es5/models/detect-result.js +1 -1
  18. package/dist/cjs-es5/models/detection-face.js +1 -1
  19. package/dist/cjs-es5/models/detection-quality.js +1 -1
  20. package/dist/cjs-es5/models/detection.js +1 -1
  21. package/dist/cjs-es5/models/face-image-quality-align-type.js +29 -0
  22. package/dist/cjs-es5/models/face-image-quality-groups.js +1 -1
  23. package/dist/cjs-es5/models/face-image-quality-status.js +27 -0
  24. package/dist/cjs-es5/models/face-quality-config-name.js +3 -2
  25. package/dist/cjs-es5/models/face-quality-scenarios.js +1 -1
  26. package/dist/cjs-es5/models/face-sdkresult-code.js +1 -1
  27. package/dist/cjs-es5/models/face-sdkresult.js +1 -1
  28. package/dist/cjs-es5/models/group-all-of.js +1 -1
  29. package/dist/cjs-es5/models/group-page-all-of.js +1 -1
  30. package/dist/cjs-es5/models/group-page.js +1 -1
  31. package/dist/cjs-es5/models/group-to-create.js +1 -1
  32. package/dist/cjs-es5/models/group.js +1 -1
  33. package/dist/cjs-es5/models/image-fields-image.js +1 -1
  34. package/dist/cjs-es5/models/image-fields.js +1 -1
  35. package/dist/cjs-es5/models/image-page-all-of.js +1 -1
  36. package/dist/cjs-es5/models/image-page.js +1 -1
  37. package/dist/cjs-es5/models/image-source.js +1 -1
  38. package/dist/cjs-es5/models/image.js +1 -1
  39. package/dist/cjs-es5/models/index.js +3 -3
  40. package/dist/cjs-es5/models/match-image-detection.js +1 -1
  41. package/dist/cjs-es5/models/match-image-result.js +1 -1
  42. package/dist/cjs-es5/models/match-image.js +1 -1
  43. package/dist/cjs-es5/models/match-request.js +1 -1
  44. package/dist/cjs-es5/models/match-response-all-of.js +1 -1
  45. package/dist/cjs-es5/models/match-response.js +1 -1
  46. package/dist/cjs-es5/models/operation-log.js +1 -1
  47. package/dist/cjs-es5/models/output-image-params.js +1 -1
  48. package/dist/cjs-es5/models/page.js +1 -1
  49. package/dist/cjs-es5/models/person-all-of.js +1 -1
  50. package/dist/cjs-es5/models/person-fields.js +1 -1
  51. package/dist/cjs-es5/models/person.js +1 -1
  52. package/dist/cjs-es5/models/persons-page-all-of.js +1 -1
  53. package/dist/cjs-es5/models/persons-page.js +1 -1
  54. package/dist/cjs-es5/models/process-param.js +1 -1
  55. package/dist/cjs-es5/models/quality-config.js +1 -1
  56. package/dist/cjs-es5/models/quality-detail.js +1 -1
  57. package/dist/cjs-es5/models/quality-details-groups.js +1 -1
  58. package/dist/cjs-es5/models/quality-request.js +1 -1
  59. package/dist/cjs-es5/models/recognize-image-all-of.js +1 -1
  60. package/dist/cjs-es5/models/recognize-image.js +1 -1
  61. package/dist/cjs-es5/models/search-person-all-of.js +1 -1
  62. package/dist/cjs-es5/models/search-person.js +1 -1
  63. package/dist/cjs-es5/models/search-request-all-of.js +1 -1
  64. package/dist/cjs-es5/models/search-request.js +1 -1
  65. package/dist/cjs-es5/models/search-result.js +1 -1
  66. package/dist/cjs-es5/models/update-group.js +1 -1
  67. package/dist/esm-es5/api/group-api.js +100 -51
  68. package/dist/esm-es5/api/matching-api.js +30 -16
  69. package/dist/esm-es5/api/person-api.js +142 -72
  70. package/dist/esm-es5/api/search-api.js +16 -9
  71. package/dist/esm-es5/api.js +1 -1
  72. package/dist/esm-es5/base.js +1 -1
  73. package/dist/esm-es5/common.js +1 -1
  74. package/dist/esm-es5/configuration.js +1 -1
  75. package/dist/esm-es5/ext/group-api.js +15 -15
  76. package/dist/esm-es5/ext/matching-api.js +5 -5
  77. package/dist/esm-es5/ext/person-api.js +21 -21
  78. package/dist/esm-es5/ext/search-api.js +3 -3
  79. package/dist/esm-es5/models/crop.js +1 -1
  80. package/dist/esm-es5/models/detect-request.js +1 -1
  81. package/dist/esm-es5/models/detect-response-all-of.js +1 -1
  82. package/dist/esm-es5/models/detect-response.js +1 -1
  83. package/dist/esm-es5/models/detect-result.js +1 -1
  84. package/dist/esm-es5/models/detection-face.js +1 -1
  85. package/dist/esm-es5/models/detection-quality.js +1 -1
  86. package/dist/esm-es5/models/detection.js +1 -1
  87. package/dist/esm-es5/models/face-image-quality-align-type.js +26 -0
  88. package/dist/esm-es5/models/face-image-quality-groups.js +1 -1
  89. package/dist/esm-es5/models/face-image-quality-status.js +24 -0
  90. package/dist/esm-es5/models/face-quality-config-name.js +3 -2
  91. package/dist/esm-es5/models/face-quality-scenarios.js +1 -1
  92. package/dist/esm-es5/models/face-sdkresult-code.js +1 -1
  93. package/dist/esm-es5/models/face-sdkresult.js +1 -1
  94. package/dist/esm-es5/models/group-all-of.js +1 -1
  95. package/dist/esm-es5/models/group-page-all-of.js +1 -1
  96. package/dist/esm-es5/models/group-page.js +1 -1
  97. package/dist/esm-es5/models/group-to-create.js +1 -1
  98. package/dist/esm-es5/models/group.js +1 -1
  99. package/dist/esm-es5/models/image-fields-image.js +1 -1
  100. package/dist/esm-es5/models/image-fields.js +1 -1
  101. package/dist/esm-es5/models/image-page-all-of.js +1 -1
  102. package/dist/esm-es5/models/image-page.js +1 -1
  103. package/dist/esm-es5/models/image-source.js +1 -1
  104. package/dist/esm-es5/models/image.js +1 -1
  105. package/dist/esm-es5/models/index.js +3 -3
  106. package/dist/esm-es5/models/match-image-detection.js +1 -1
  107. package/dist/esm-es5/models/match-image-result.js +1 -1
  108. package/dist/esm-es5/models/match-image.js +1 -1
  109. package/dist/esm-es5/models/match-request.js +1 -1
  110. package/dist/esm-es5/models/match-response-all-of.js +1 -1
  111. package/dist/esm-es5/models/match-response.js +1 -1
  112. package/dist/esm-es5/models/operation-log.js +1 -1
  113. package/dist/esm-es5/models/output-image-params.js +1 -1
  114. package/dist/esm-es5/models/page.js +1 -1
  115. package/dist/esm-es5/models/person-all-of.js +1 -1
  116. package/dist/esm-es5/models/person-fields.js +1 -1
  117. package/dist/esm-es5/models/person.js +1 -1
  118. package/dist/esm-es5/models/persons-page-all-of.js +1 -1
  119. package/dist/esm-es5/models/persons-page.js +1 -1
  120. package/dist/esm-es5/models/process-param.js +1 -1
  121. package/dist/esm-es5/models/quality-config.js +1 -1
  122. package/dist/esm-es5/models/quality-detail.js +1 -1
  123. package/dist/esm-es5/models/quality-details-groups.js +1 -1
  124. package/dist/esm-es5/models/quality-request.js +1 -1
  125. package/dist/esm-es5/models/recognize-image-all-of.js +1 -1
  126. package/dist/esm-es5/models/recognize-image.js +1 -1
  127. package/dist/esm-es5/models/search-person-all-of.js +1 -1
  128. package/dist/esm-es5/models/search-person.js +1 -1
  129. package/dist/esm-es5/models/search-request-all-of.js +1 -1
  130. package/dist/esm-es5/models/search-request.js +1 -1
  131. package/dist/esm-es5/models/search-result.js +1 -1
  132. package/dist/esm-es5/models/update-group.js +1 -1
  133. package/package.json +1 -1
  134. package/src/api/group-api.ts +106 -50
  135. package/src/api/matching-api.ts +31 -15
  136. package/src/api/person-api.ts +151 -71
  137. package/src/api/search-api.ts +16 -8
  138. package/src/api.ts +1 -1
  139. package/src/base.ts +1 -1
  140. package/src/common.ts +1 -1
  141. package/src/configuration.ts +1 -1
  142. package/src/ext/group-api.ts +14 -14
  143. package/src/ext/matching-api.ts +4 -4
  144. package/src/ext/person-api.ts +20 -20
  145. package/src/ext/search-api.ts +2 -2
  146. package/src/models/crop.ts +4 -4
  147. package/src/models/detect-request.ts +1 -1
  148. package/src/models/detect-response-all-of.ts +1 -1
  149. package/src/models/detect-response.ts +1 -1
  150. package/src/models/detect-result.ts +1 -1
  151. package/src/models/detection-face.ts +1 -1
  152. package/src/models/detection-quality.ts +1 -1
  153. package/src/models/detection.ts +1 -1
  154. package/src/models/face-image-quality-align-type.ts +34 -0
  155. package/src/models/face-image-quality-groups.ts +1 -1
  156. package/src/models/face-image-quality-status.ts +32 -0
  157. package/src/models/face-quality-config-name.ts +2 -1
  158. package/src/models/face-quality-scenarios.ts +1 -1
  159. package/src/models/face-sdkresult-code.ts +1 -1
  160. package/src/models/face-sdkresult.ts +1 -1
  161. package/src/models/group-all-of.ts +1 -1
  162. package/src/models/group-page-all-of.ts +1 -1
  163. package/src/models/group-page.ts +1 -1
  164. package/src/models/group-to-create.ts +1 -1
  165. package/src/models/group.ts +1 -1
  166. package/src/models/image-fields-image.ts +1 -1
  167. package/src/models/image-fields.ts +1 -1
  168. package/src/models/image-page-all-of.ts +1 -1
  169. package/src/models/image-page.ts +1 -1
  170. package/src/models/image-source.ts +1 -1
  171. package/src/models/image.ts +1 -1
  172. package/src/models/index.ts +2 -2
  173. package/src/models/match-image-detection.ts +1 -1
  174. package/src/models/match-image-result.ts +1 -1
  175. package/src/models/match-image.ts +1 -1
  176. package/src/models/match-request.ts +1 -1
  177. package/src/models/match-response-all-of.ts +1 -1
  178. package/src/models/match-response.ts +1 -1
  179. package/src/models/operation-log.ts +1 -1
  180. package/src/models/output-image-params.ts +1 -1
  181. package/src/models/page.ts +1 -1
  182. package/src/models/person-all-of.ts +1 -1
  183. package/src/models/person-fields.ts +1 -1
  184. package/src/models/person.ts +1 -1
  185. package/src/models/persons-page-all-of.ts +1 -1
  186. package/src/models/persons-page.ts +1 -1
  187. package/src/models/process-param.ts +1 -1
  188. package/src/models/quality-config.ts +1 -1
  189. package/src/models/quality-detail.ts +4 -4
  190. package/src/models/quality-details-groups.ts +1 -1
  191. package/src/models/quality-request.ts +1 -1
  192. package/src/models/recognize-image-all-of.ts +1 -1
  193. package/src/models/recognize-image.ts +1 -1
  194. package/src/models/search-person-all-of.ts +1 -1
  195. package/src/models/search-person.ts +1 -1
  196. package/src/models/search-request-all-of.ts +1 -1
  197. package/src/models/search-request.ts +1 -1
  198. package/src/models/search-result.ts +1 -1
  199. package/src/models/update-group.ts +1 -1
@@ -5,7 +5,7 @@
5
5
  * Regula FaceSDK Web API
6
6
  * Regula FaceSDK Web API # Clients * [JavaScript](https://github.com/regulaforensics/FaceSDK-web-js-client) client for the browser and node.js based on axios * [Java](https://github.com/regulaforensics/FaceSDK-web-java-client) client compatible with jvm and android * [Python](https://github.com/regulaforensics/FaceSDK-web-python-client) 3.5+ client * [C#](https://github.com/regulaforensics/FaceSDK-web-csharp-client) client for .NET & .NET Core
7
7
  *
8
- * The version of the OpenAPI document: 4.1.0
8
+ * The version of the OpenAPI document: 4.1.3
9
9
  *
10
10
  *
11
11
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -91,10 +91,11 @@ exports.GroupApiAxiosParamCreator = function (configuration) {
91
91
  *
92
92
  * @summary Create group
93
93
  * @param {GroupToCreate} groupToCreate Request body for the group to create.
94
+ * @param {string} [xRequestID]
94
95
  * @param {*} [options] Override http request option.
95
96
  * @throws {RequiredError}
96
97
  */
97
- createGroup: function (groupToCreate, options) {
98
+ createGroup: function (groupToCreate, xRequestID, options) {
98
99
  if (options === void 0) { options = {}; }
99
100
  return __awaiter(_this, void 0, void 0, function () {
100
101
  var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
@@ -109,6 +110,9 @@ exports.GroupApiAxiosParamCreator = function (configuration) {
109
110
  localVarRequestOptions = __assign(__assign({ method: 'POST' }, baseOptions), options);
110
111
  localVarHeaderParameter = {};
111
112
  localVarQueryParameter = {};
113
+ if (xRequestID !== undefined && xRequestID !== null) {
114
+ localVarHeaderParameter['X-RequestID'] = String(xRequestID);
115
+ }
112
116
  localVarHeaderParameter['Content-Type'] = 'application/json';
113
117
  common_1.setSearchParams(localVarUrlObj, localVarQueryParameter);
114
118
  headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
@@ -125,10 +129,11 @@ exports.GroupApiAxiosParamCreator = function (configuration) {
125
129
  *
126
130
  * @summary Delete group
127
131
  * @param {number} groupId Group ID.
132
+ * @param {string} [xRequestID]
128
133
  * @param {*} [options] Override http request option.
129
134
  * @throws {RequiredError}
130
135
  */
131
- deleteGroup: function (groupId, options) {
136
+ deleteGroup: function (groupId, xRequestID, options) {
132
137
  if (options === void 0) { options = {}; }
133
138
  return __awaiter(_this, void 0, void 0, function () {
134
139
  var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
@@ -144,6 +149,9 @@ exports.GroupApiAxiosParamCreator = function (configuration) {
144
149
  localVarRequestOptions = __assign(__assign({ method: 'DELETE' }, baseOptions), options);
145
150
  localVarHeaderParameter = {};
146
151
  localVarQueryParameter = {};
152
+ if (xRequestID !== undefined && xRequestID !== null) {
153
+ localVarHeaderParameter['X-RequestID'] = String(xRequestID);
154
+ }
147
155
  common_1.setSearchParams(localVarUrlObj, localVarQueryParameter);
148
156
  headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
149
157
  localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
@@ -159,10 +167,11 @@ exports.GroupApiAxiosParamCreator = function (configuration) {
159
167
  * @summary Get groups
160
168
  * @param {number} page The page number to get a list of persons or groups.
161
169
  * @param {number} size The page size with a list of persons or groups, items.
170
+ * @param {string} [xRequestID]
162
171
  * @param {*} [options] Override http request option.
163
172
  * @throws {RequiredError}
164
173
  */
165
- getAllGroups: function (page, size, options) {
174
+ getAllGroups: function (page, size, xRequestID, options) {
166
175
  if (options === void 0) { options = {}; }
167
176
  return __awaiter(_this, void 0, void 0, function () {
168
177
  var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
@@ -185,6 +194,9 @@ exports.GroupApiAxiosParamCreator = function (configuration) {
185
194
  if (size !== undefined) {
186
195
  localVarQueryParameter['size'] = size;
187
196
  }
197
+ if (xRequestID !== undefined && xRequestID !== null) {
198
+ localVarHeaderParameter['X-RequestID'] = String(xRequestID);
199
+ }
188
200
  common_1.setSearchParams(localVarUrlObj, localVarQueryParameter);
189
201
  headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
190
202
  localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
@@ -201,10 +213,11 @@ exports.GroupApiAxiosParamCreator = function (configuration) {
201
213
  * @param {number} page The page number to get a list of persons or groups.
202
214
  * @param {number} size The page size with a list of persons or groups, items.
203
215
  * @param {number} groupId Group ID.
216
+ * @param {string} [xRequestID]
204
217
  * @param {*} [options] Override http request option.
205
218
  * @throws {RequiredError}
206
219
  */
207
- getAllPersonsByGroupId: function (page, size, groupId, options) {
220
+ getAllPersonsByGroupId: function (page, size, groupId, xRequestID, options) {
208
221
  if (options === void 0) { options = {}; }
209
222
  return __awaiter(_this, void 0, void 0, function () {
210
223
  var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
@@ -230,6 +243,9 @@ exports.GroupApiAxiosParamCreator = function (configuration) {
230
243
  if (size !== undefined) {
231
244
  localVarQueryParameter['size'] = size;
232
245
  }
246
+ if (xRequestID !== undefined && xRequestID !== null) {
247
+ localVarHeaderParameter['X-RequestID'] = String(xRequestID);
248
+ }
233
249
  common_1.setSearchParams(localVarUrlObj, localVarQueryParameter);
234
250
  headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
235
251
  localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
@@ -244,10 +260,11 @@ exports.GroupApiAxiosParamCreator = function (configuration) {
244
260
  *
245
261
  * @summary Get group
246
262
  * @param {number} groupId Group ID.
263
+ * @param {string} [xRequestID]
247
264
  * @param {*} [options] Override http request option.
248
265
  * @throws {RequiredError}
249
266
  */
250
- getGroup: function (groupId, options) {
267
+ getGroup: function (groupId, xRequestID, options) {
251
268
  if (options === void 0) { options = {}; }
252
269
  return __awaiter(_this, void 0, void 0, function () {
253
270
  var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
@@ -263,6 +280,9 @@ exports.GroupApiAxiosParamCreator = function (configuration) {
263
280
  localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), options);
264
281
  localVarHeaderParameter = {};
265
282
  localVarQueryParameter = {};
283
+ if (xRequestID !== undefined && xRequestID !== null) {
284
+ localVarHeaderParameter['X-RequestID'] = String(xRequestID);
285
+ }
266
286
  common_1.setSearchParams(localVarUrlObj, localVarQueryParameter);
267
287
  headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
268
288
  localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
@@ -278,10 +298,11 @@ exports.GroupApiAxiosParamCreator = function (configuration) {
278
298
  * @summary Update group
279
299
  * @param {number} groupId Group ID.
280
300
  * @param {GroupToCreate} groupToCreate Request body for the group to update.
301
+ * @param {string} [xRequestID]
281
302
  * @param {*} [options] Override http request option.
282
303
  * @throws {RequiredError}
283
304
  */
284
- updateGroup: function (groupId, groupToCreate, options) {
305
+ updateGroup: function (groupId, groupToCreate, xRequestID, options) {
285
306
  if (options === void 0) { options = {}; }
286
307
  return __awaiter(_this, void 0, void 0, function () {
287
308
  var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
@@ -299,6 +320,9 @@ exports.GroupApiAxiosParamCreator = function (configuration) {
299
320
  localVarRequestOptions = __assign(__assign({ method: 'PUT' }, baseOptions), options);
300
321
  localVarHeaderParameter = {};
301
322
  localVarQueryParameter = {};
323
+ if (xRequestID !== undefined && xRequestID !== null) {
324
+ localVarHeaderParameter['X-RequestID'] = String(xRequestID);
325
+ }
302
326
  localVarHeaderParameter['Content-Type'] = 'application/json';
303
327
  common_1.setSearchParams(localVarUrlObj, localVarQueryParameter);
304
328
  headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
@@ -316,10 +340,11 @@ exports.GroupApiAxiosParamCreator = function (configuration) {
316
340
  * @summary Add/remove persons to group
317
341
  * @param {number} groupId Group ID.
318
342
  * @param {UpdateGroup} updateGroup Request body for person IDs to add or remove.
343
+ * @param {string} [xRequestID]
319
344
  * @param {*} [options] Override http request option.
320
345
  * @throws {RequiredError}
321
346
  */
322
- updatePersonsInGroup: function (groupId, updateGroup, options) {
347
+ updatePersonsInGroup: function (groupId, updateGroup, xRequestID, options) {
323
348
  if (options === void 0) { options = {}; }
324
349
  return __awaiter(_this, void 0, void 0, function () {
325
350
  var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
@@ -337,6 +362,9 @@ exports.GroupApiAxiosParamCreator = function (configuration) {
337
362
  localVarRequestOptions = __assign(__assign({ method: 'PUT' }, baseOptions), options);
338
363
  localVarHeaderParameter = {};
339
364
  localVarQueryParameter = {};
365
+ if (xRequestID !== undefined && xRequestID !== null) {
366
+ localVarHeaderParameter['X-RequestID'] = String(xRequestID);
367
+ }
340
368
  localVarHeaderParameter['Content-Type'] = 'application/json';
341
369
  common_1.setSearchParams(localVarUrlObj, localVarQueryParameter);
342
370
  headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
@@ -362,15 +390,16 @@ exports.GroupApiFp = function (configuration) {
362
390
  *
363
391
  * @summary Create group
364
392
  * @param {GroupToCreate} groupToCreate Request body for the group to create.
393
+ * @param {string} [xRequestID]
365
394
  * @param {*} [options] Override http request option.
366
395
  * @throws {RequiredError}
367
396
  */
368
- createGroup: function (groupToCreate, options) {
397
+ createGroup: function (groupToCreate, xRequestID, options) {
369
398
  return __awaiter(this, void 0, void 0, function () {
370
399
  var localVarAxiosArgs;
371
400
  return __generator(this, function (_a) {
372
401
  switch (_a.label) {
373
- case 0: return [4 /*yield*/, localVarAxiosParamCreator.createGroup(groupToCreate, options)];
402
+ case 0: return [4 /*yield*/, localVarAxiosParamCreator.createGroup(groupToCreate, xRequestID, options)];
374
403
  case 1:
375
404
  localVarAxiosArgs = _a.sent();
376
405
  return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
@@ -382,15 +411,16 @@ exports.GroupApiFp = function (configuration) {
382
411
  *
383
412
  * @summary Delete group
384
413
  * @param {number} groupId Group ID.
414
+ * @param {string} [xRequestID]
385
415
  * @param {*} [options] Override http request option.
386
416
  * @throws {RequiredError}
387
417
  */
388
- deleteGroup: function (groupId, options) {
418
+ deleteGroup: function (groupId, xRequestID, options) {
389
419
  return __awaiter(this, void 0, void 0, function () {
390
420
  var localVarAxiosArgs;
391
421
  return __generator(this, function (_a) {
392
422
  switch (_a.label) {
393
- case 0: return [4 /*yield*/, localVarAxiosParamCreator.deleteGroup(groupId, options)];
423
+ case 0: return [4 /*yield*/, localVarAxiosParamCreator.deleteGroup(groupId, xRequestID, options)];
394
424
  case 1:
395
425
  localVarAxiosArgs = _a.sent();
396
426
  return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
@@ -403,15 +433,16 @@ exports.GroupApiFp = function (configuration) {
403
433
  * @summary Get groups
404
434
  * @param {number} page The page number to get a list of persons or groups.
405
435
  * @param {number} size The page size with a list of persons or groups, items.
436
+ * @param {string} [xRequestID]
406
437
  * @param {*} [options] Override http request option.
407
438
  * @throws {RequiredError}
408
439
  */
409
- getAllGroups: function (page, size, options) {
440
+ getAllGroups: function (page, size, xRequestID, options) {
410
441
  return __awaiter(this, void 0, void 0, function () {
411
442
  var localVarAxiosArgs;
412
443
  return __generator(this, function (_a) {
413
444
  switch (_a.label) {
414
- case 0: return [4 /*yield*/, localVarAxiosParamCreator.getAllGroups(page, size, options)];
445
+ case 0: return [4 /*yield*/, localVarAxiosParamCreator.getAllGroups(page, size, xRequestID, options)];
415
446
  case 1:
416
447
  localVarAxiosArgs = _a.sent();
417
448
  return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
@@ -425,15 +456,16 @@ exports.GroupApiFp = function (configuration) {
425
456
  * @param {number} page The page number to get a list of persons or groups.
426
457
  * @param {number} size The page size with a list of persons or groups, items.
427
458
  * @param {number} groupId Group ID.
459
+ * @param {string} [xRequestID]
428
460
  * @param {*} [options] Override http request option.
429
461
  * @throws {RequiredError}
430
462
  */
431
- getAllPersonsByGroupId: function (page, size, groupId, options) {
463
+ getAllPersonsByGroupId: function (page, size, groupId, xRequestID, options) {
432
464
  return __awaiter(this, void 0, void 0, function () {
433
465
  var localVarAxiosArgs;
434
466
  return __generator(this, function (_a) {
435
467
  switch (_a.label) {
436
- case 0: return [4 /*yield*/, localVarAxiosParamCreator.getAllPersonsByGroupId(page, size, groupId, options)];
468
+ case 0: return [4 /*yield*/, localVarAxiosParamCreator.getAllPersonsByGroupId(page, size, groupId, xRequestID, options)];
437
469
  case 1:
438
470
  localVarAxiosArgs = _a.sent();
439
471
  return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
@@ -445,15 +477,16 @@ exports.GroupApiFp = function (configuration) {
445
477
  *
446
478
  * @summary Get group
447
479
  * @param {number} groupId Group ID.
480
+ * @param {string} [xRequestID]
448
481
  * @param {*} [options] Override http request option.
449
482
  * @throws {RequiredError}
450
483
  */
451
- getGroup: function (groupId, options) {
484
+ getGroup: function (groupId, xRequestID, options) {
452
485
  return __awaiter(this, void 0, void 0, function () {
453
486
  var localVarAxiosArgs;
454
487
  return __generator(this, function (_a) {
455
488
  switch (_a.label) {
456
- case 0: return [4 /*yield*/, localVarAxiosParamCreator.getGroup(groupId, options)];
489
+ case 0: return [4 /*yield*/, localVarAxiosParamCreator.getGroup(groupId, xRequestID, options)];
457
490
  case 1:
458
491
  localVarAxiosArgs = _a.sent();
459
492
  return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
@@ -466,15 +499,16 @@ exports.GroupApiFp = function (configuration) {
466
499
  * @summary Update group
467
500
  * @param {number} groupId Group ID.
468
501
  * @param {GroupToCreate} groupToCreate Request body for the group to update.
502
+ * @param {string} [xRequestID]
469
503
  * @param {*} [options] Override http request option.
470
504
  * @throws {RequiredError}
471
505
  */
472
- updateGroup: function (groupId, groupToCreate, options) {
506
+ updateGroup: function (groupId, groupToCreate, xRequestID, options) {
473
507
  return __awaiter(this, void 0, void 0, function () {
474
508
  var localVarAxiosArgs;
475
509
  return __generator(this, function (_a) {
476
510
  switch (_a.label) {
477
- case 0: return [4 /*yield*/, localVarAxiosParamCreator.updateGroup(groupId, groupToCreate, options)];
511
+ case 0: return [4 /*yield*/, localVarAxiosParamCreator.updateGroup(groupId, groupToCreate, xRequestID, options)];
478
512
  case 1:
479
513
  localVarAxiosArgs = _a.sent();
480
514
  return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
@@ -487,15 +521,16 @@ exports.GroupApiFp = function (configuration) {
487
521
  * @summary Add/remove persons to group
488
522
  * @param {number} groupId Group ID.
489
523
  * @param {UpdateGroup} updateGroup Request body for person IDs to add or remove.
524
+ * @param {string} [xRequestID]
490
525
  * @param {*} [options] Override http request option.
491
526
  * @throws {RequiredError}
492
527
  */
493
- updatePersonsInGroup: function (groupId, updateGroup, options) {
528
+ updatePersonsInGroup: function (groupId, updateGroup, xRequestID, options) {
494
529
  return __awaiter(this, void 0, void 0, function () {
495
530
  var localVarAxiosArgs;
496
531
  return __generator(this, function (_a) {
497
532
  switch (_a.label) {
498
- case 0: return [4 /*yield*/, localVarAxiosParamCreator.updatePersonsInGroup(groupId, updateGroup, options)];
533
+ case 0: return [4 /*yield*/, localVarAxiosParamCreator.updatePersonsInGroup(groupId, updateGroup, xRequestID, options)];
499
534
  case 1:
500
535
  localVarAxiosArgs = _a.sent();
501
536
  return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
@@ -516,32 +551,35 @@ exports.GroupApiFactory = function (configuration, basePath, axios) {
516
551
  *
517
552
  * @summary Create group
518
553
  * @param {GroupToCreate} groupToCreate Request body for the group to create.
554
+ * @param {string} [xRequestID]
519
555
  * @param {*} [options] Override http request option.
520
556
  * @throws {RequiredError}
521
557
  */
522
- createGroup: function (groupToCreate, options) {
523
- return localVarFp.createGroup(groupToCreate, options).then(function (request) { return request(axios, basePath); });
558
+ createGroup: function (groupToCreate, xRequestID, options) {
559
+ return localVarFp.createGroup(groupToCreate, xRequestID, options).then(function (request) { return request(axios, basePath); });
524
560
  },
525
561
  /**
526
562
  *
527
563
  * @summary Delete group
528
564
  * @param {number} groupId Group ID.
565
+ * @param {string} [xRequestID]
529
566
  * @param {*} [options] Override http request option.
530
567
  * @throws {RequiredError}
531
568
  */
532
- deleteGroup: function (groupId, options) {
533
- return localVarFp.deleteGroup(groupId, options).then(function (request) { return request(axios, basePath); });
569
+ deleteGroup: function (groupId, xRequestID, options) {
570
+ return localVarFp.deleteGroup(groupId, xRequestID, options).then(function (request) { return request(axios, basePath); });
534
571
  },
535
572
  /**
536
573
  *
537
574
  * @summary Get groups
538
575
  * @param {number} page The page number to get a list of persons or groups.
539
576
  * @param {number} size The page size with a list of persons or groups, items.
577
+ * @param {string} [xRequestID]
540
578
  * @param {*} [options] Override http request option.
541
579
  * @throws {RequiredError}
542
580
  */
543
- getAllGroups: function (page, size, options) {
544
- return localVarFp.getAllGroups(page, size, options).then(function (request) { return request(axios, basePath); });
581
+ getAllGroups: function (page, size, xRequestID, options) {
582
+ return localVarFp.getAllGroups(page, size, xRequestID, options).then(function (request) { return request(axios, basePath); });
545
583
  },
546
584
  /**
547
585
  *
@@ -549,43 +587,47 @@ exports.GroupApiFactory = function (configuration, basePath, axios) {
549
587
  * @param {number} page The page number to get a list of persons or groups.
550
588
  * @param {number} size The page size with a list of persons or groups, items.
551
589
  * @param {number} groupId Group ID.
590
+ * @param {string} [xRequestID]
552
591
  * @param {*} [options] Override http request option.
553
592
  * @throws {RequiredError}
554
593
  */
555
- getAllPersonsByGroupId: function (page, size, groupId, options) {
556
- return localVarFp.getAllPersonsByGroupId(page, size, groupId, options).then(function (request) { return request(axios, basePath); });
594
+ getAllPersonsByGroupId: function (page, size, groupId, xRequestID, options) {
595
+ return localVarFp.getAllPersonsByGroupId(page, size, groupId, xRequestID, options).then(function (request) { return request(axios, basePath); });
557
596
  },
558
597
  /**
559
598
  *
560
599
  * @summary Get group
561
600
  * @param {number} groupId Group ID.
601
+ * @param {string} [xRequestID]
562
602
  * @param {*} [options] Override http request option.
563
603
  * @throws {RequiredError}
564
604
  */
565
- getGroup: function (groupId, options) {
566
- return localVarFp.getGroup(groupId, options).then(function (request) { return request(axios, basePath); });
605
+ getGroup: function (groupId, xRequestID, options) {
606
+ return localVarFp.getGroup(groupId, xRequestID, options).then(function (request) { return request(axios, basePath); });
567
607
  },
568
608
  /**
569
609
  *
570
610
  * @summary Update group
571
611
  * @param {number} groupId Group ID.
572
612
  * @param {GroupToCreate} groupToCreate Request body for the group to update.
613
+ * @param {string} [xRequestID]
573
614
  * @param {*} [options] Override http request option.
574
615
  * @throws {RequiredError}
575
616
  */
576
- updateGroup: function (groupId, groupToCreate, options) {
577
- return localVarFp.updateGroup(groupId, groupToCreate, options).then(function (request) { return request(axios, basePath); });
617
+ updateGroup: function (groupId, groupToCreate, xRequestID, options) {
618
+ return localVarFp.updateGroup(groupId, groupToCreate, xRequestID, options).then(function (request) { return request(axios, basePath); });
578
619
  },
579
620
  /**
580
621
  *
581
622
  * @summary Add/remove persons to group
582
623
  * @param {number} groupId Group ID.
583
624
  * @param {UpdateGroup} updateGroup Request body for person IDs to add or remove.
625
+ * @param {string} [xRequestID]
584
626
  * @param {*} [options] Override http request option.
585
627
  * @throws {RequiredError}
586
628
  */
587
- updatePersonsInGroup: function (groupId, updateGroup, options) {
588
- return localVarFp.updatePersonsInGroup(groupId, updateGroup, options).then(function (request) { return request(axios, basePath); });
629
+ updatePersonsInGroup: function (groupId, updateGroup, xRequestID, options) {
630
+ return localVarFp.updatePersonsInGroup(groupId, updateGroup, xRequestID, options).then(function (request) { return request(axios, basePath); });
589
631
  },
590
632
  };
591
633
  };
@@ -604,38 +646,41 @@ var GroupApi = /** @class */ (function (_super) {
604
646
  *
605
647
  * @summary Create group
606
648
  * @param {GroupToCreate} groupToCreate Request body for the group to create.
649
+ * @param {string} [xRequestID]
607
650
  * @param {*} [options] Override http request option.
608
651
  * @throws {RequiredError}
609
652
  * @memberof GroupApi
610
653
  */
611
- GroupApi.prototype.createGroup = function (groupToCreate, options) {
654
+ GroupApi.prototype.createGroup = function (groupToCreate, xRequestID, options) {
612
655
  var _this = this;
613
- return exports.GroupApiFp(this.configuration).createGroup(groupToCreate, options).then(function (request) { return request(_this.axios, _this.basePath); });
656
+ return exports.GroupApiFp(this.configuration).createGroup(groupToCreate, xRequestID, options).then(function (request) { return request(_this.axios, _this.basePath); });
614
657
  };
615
658
  /**
616
659
  *
617
660
  * @summary Delete group
618
661
  * @param {number} groupId Group ID.
662
+ * @param {string} [xRequestID]
619
663
  * @param {*} [options] Override http request option.
620
664
  * @throws {RequiredError}
621
665
  * @memberof GroupApi
622
666
  */
623
- GroupApi.prototype.deleteGroup = function (groupId, options) {
667
+ GroupApi.prototype.deleteGroup = function (groupId, xRequestID, options) {
624
668
  var _this = this;
625
- return exports.GroupApiFp(this.configuration).deleteGroup(groupId, options).then(function (request) { return request(_this.axios, _this.basePath); });
669
+ return exports.GroupApiFp(this.configuration).deleteGroup(groupId, xRequestID, options).then(function (request) { return request(_this.axios, _this.basePath); });
626
670
  };
627
671
  /**
628
672
  *
629
673
  * @summary Get groups
630
674
  * @param {number} page The page number to get a list of persons or groups.
631
675
  * @param {number} size The page size with a list of persons or groups, items.
676
+ * @param {string} [xRequestID]
632
677
  * @param {*} [options] Override http request option.
633
678
  * @throws {RequiredError}
634
679
  * @memberof GroupApi
635
680
  */
636
- GroupApi.prototype.getAllGroups = function (page, size, options) {
681
+ GroupApi.prototype.getAllGroups = function (page, size, xRequestID, options) {
637
682
  var _this = this;
638
- return exports.GroupApiFp(this.configuration).getAllGroups(page, size, options).then(function (request) { return request(_this.axios, _this.basePath); });
683
+ return exports.GroupApiFp(this.configuration).getAllGroups(page, size, xRequestID, options).then(function (request) { return request(_this.axios, _this.basePath); });
639
684
  };
640
685
  /**
641
686
  *
@@ -643,53 +688,57 @@ var GroupApi = /** @class */ (function (_super) {
643
688
  * @param {number} page The page number to get a list of persons or groups.
644
689
  * @param {number} size The page size with a list of persons or groups, items.
645
690
  * @param {number} groupId Group ID.
691
+ * @param {string} [xRequestID]
646
692
  * @param {*} [options] Override http request option.
647
693
  * @throws {RequiredError}
648
694
  * @memberof GroupApi
649
695
  */
650
- GroupApi.prototype.getAllPersonsByGroupId = function (page, size, groupId, options) {
696
+ GroupApi.prototype.getAllPersonsByGroupId = function (page, size, groupId, xRequestID, options) {
651
697
  var _this = this;
652
- return exports.GroupApiFp(this.configuration).getAllPersonsByGroupId(page, size, groupId, options).then(function (request) { return request(_this.axios, _this.basePath); });
698
+ return exports.GroupApiFp(this.configuration).getAllPersonsByGroupId(page, size, groupId, xRequestID, options).then(function (request) { return request(_this.axios, _this.basePath); });
653
699
  };
654
700
  /**
655
701
  *
656
702
  * @summary Get group
657
703
  * @param {number} groupId Group ID.
704
+ * @param {string} [xRequestID]
658
705
  * @param {*} [options] Override http request option.
659
706
  * @throws {RequiredError}
660
707
  * @memberof GroupApi
661
708
  */
662
- GroupApi.prototype.getGroup = function (groupId, options) {
709
+ GroupApi.prototype.getGroup = function (groupId, xRequestID, options) {
663
710
  var _this = this;
664
- return exports.GroupApiFp(this.configuration).getGroup(groupId, options).then(function (request) { return request(_this.axios, _this.basePath); });
711
+ return exports.GroupApiFp(this.configuration).getGroup(groupId, xRequestID, options).then(function (request) { return request(_this.axios, _this.basePath); });
665
712
  };
666
713
  /**
667
714
  *
668
715
  * @summary Update group
669
716
  * @param {number} groupId Group ID.
670
717
  * @param {GroupToCreate} groupToCreate Request body for the group to update.
718
+ * @param {string} [xRequestID]
671
719
  * @param {*} [options] Override http request option.
672
720
  * @throws {RequiredError}
673
721
  * @memberof GroupApi
674
722
  */
675
- GroupApi.prototype.updateGroup = function (groupId, groupToCreate, options) {
723
+ GroupApi.prototype.updateGroup = function (groupId, groupToCreate, xRequestID, options) {
676
724
  var _this = this;
677
- return exports.GroupApiFp(this.configuration).updateGroup(groupId, groupToCreate, options).then(function (request) { return request(_this.axios, _this.basePath); });
725
+ return exports.GroupApiFp(this.configuration).updateGroup(groupId, groupToCreate, xRequestID, options).then(function (request) { return request(_this.axios, _this.basePath); });
678
726
  };
679
727
  /**
680
728
  *
681
729
  * @summary Add/remove persons to group
682
730
  * @param {number} groupId Group ID.
683
731
  * @param {UpdateGroup} updateGroup Request body for person IDs to add or remove.
732
+ * @param {string} [xRequestID]
684
733
  * @param {*} [options] Override http request option.
685
734
  * @throws {RequiredError}
686
735
  * @memberof GroupApi
687
736
  */
688
- GroupApi.prototype.updatePersonsInGroup = function (groupId, updateGroup, options) {
737
+ GroupApi.prototype.updatePersonsInGroup = function (groupId, updateGroup, xRequestID, options) {
689
738
  var _this = this;
690
- return exports.GroupApiFp(this.configuration).updatePersonsInGroup(groupId, updateGroup, options).then(function (request) { return request(_this.axios, _this.basePath); });
739
+ return exports.GroupApiFp(this.configuration).updatePersonsInGroup(groupId, updateGroup, xRequestID, options).then(function (request) { return request(_this.axios, _this.basePath); });
691
740
  };
692
741
  return GroupApi;
693
742
  }(base_1.BaseAPI));
694
743
  exports.GroupApi = GroupApi;
695
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAtYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwaS9ncm91cC1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLG9CQUFvQjtBQUNwQixvQkFBb0I7QUFDcEI7Ozs7Ozs7Ozs7R0FVRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBR0gsK0JBQXFGO0FBRXJGLHlEQUF5RDtBQUN6RCxhQUFhO0FBQ2Isb0NBQTZOO0FBQzdOLGFBQWE7QUFDYixnQ0FBNkY7QUFhN0Y7OztHQUdHO0FBQ1UsUUFBQSx5QkFBeUIsR0FBRyxVQUFVLGFBQTZCO0lBQXZDLGlCQXVSeEM7SUF0UkcsT0FBTztRQUNIOzs7Ozs7V0FNRztRQUNILFdBQVcsRUFBRSxVQUFPLGFBQTRCLEVBQUUsT0FBZ0M7WUFBaEMsd0JBQUEsRUFBQSxZQUFnQzs7OztvQkFDOUUscUVBQXFFO29CQUNyRSwwQkFBaUIsQ0FBQyxhQUFhLEVBQUUsZUFBZSxFQUFFLGFBQWEsQ0FBQyxDQUFBO29CQUMxRCxZQUFZLEdBQUcsYUFBYSxDQUFDO29CQUU3QixjQUFjLEdBQUcsSUFBSSxHQUFHLENBQUMsWUFBWSxFQUFFLHVCQUFjLENBQUMsQ0FBQztvQkFFN0QsSUFBSSxhQUFhLEVBQUU7d0JBQ2YsV0FBVyxHQUFHLGFBQWEsQ0FBQyxXQUFXLENBQUM7cUJBQzNDO29CQUVLLHNCQUFzQix1QkFBSyxNQUFNLEVBQUUsTUFBTSxJQUFLLFdBQVcsR0FBSyxPQUFPLENBQUMsQ0FBQztvQkFDdkUsdUJBQXVCLEdBQUcsRUFBUyxDQUFDO29CQUNwQyxzQkFBc0IsR0FBRyxFQUFTLENBQUM7b0JBSXpDLHVCQUF1QixDQUFDLGNBQWMsQ0FBQyxHQUFHLGtCQUFrQixDQUFDO29CQUU3RCx3QkFBZSxDQUFDLGNBQWMsRUFBRSxzQkFBc0IsQ0FBQyxDQUFDO29CQUNwRCxzQkFBc0IsR0FBRyxXQUFX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
744
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAtYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwaS9ncm91cC1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLG9CQUFvQjtBQUNwQixvQkFBb0I7QUFDcEI7Ozs7Ozs7Ozs7R0FVRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBR0gsK0JBQXFGO0FBRXJGLHlEQUF5RDtBQUN6RCxhQUFhO0FBQ2Isb0NBQTZOO0FBQzdOLGFBQWE7QUFDYixnQ0FBNkY7QUFhN0Y7OztHQUdHO0FBQ1UsUUFBQSx5QkFBeUIsR0FBRyxVQUFVLGFBQTZCO0lBQXZDLGlCQTBUeEM7SUF6VEcsT0FBTztRQUNIOzs7Ozs7O1dBT0c7UUFDSCxXQUFXLEVBQUUsVUFBTyxhQUE0QixFQUFFLFVBQW1CLEVBQUUsT0FBZ0M7WUFBaEMsd0JBQUEsRUFBQSxZQUFnQzs7OztvQkFDbkcscUVBQXFFO29CQUNyRSwwQkFBaUIsQ0FBQyxhQUFhLEVBQUUsZUFBZSxFQUFFLGFBQWEsQ0FBQyxDQUFBO29CQUMxRCxZQUFZLEdBQUcsYUFBYSxDQUFDO29CQUU3QixjQUFjLEdBQUcsSUFBSSxHQUFHLENBQUMsWUFBWSxFQUFFLHVCQUFjLENBQUMsQ0FBQztvQkFFN0QsSUFBSSxhQUFhLEVBQUU7d0JBQ2YsV0FBVyxHQUFHLGFBQWEsQ0FBQyxXQUFXLENBQUM7cUJBQzNDO29CQUVLLHNCQUFzQix1QkFBSyxNQUFNLEVBQUUsTUFBTSxJQUFLLFdBQVcsR0FBSyxPQUFPLENBQUMsQ0FBQztvQkFDdkUsdUJBQXVCLEdBQUcsRUFBUyxDQUFDO29CQUNwQyxzQkFBc0IsR0FBRyxFQUFTLENBQUM7b0JBRXpDLElBQUksVUFBVSxLQUFLLFNBQVMsSUFBSSxVQUFVLEtBQUssSUFBSSxFQUFFO3dCQUNqRCx1QkFBdUIsQ0FBQyxhQUFhLENBQUMsR0FBRyxNQUFNLENBQUMsVUFBVSxD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