@microsoft/applicationinsights-dependencies-js 3.0.0-beta.2303-11 → 3.0.0-nightly3.2304-28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/browser/es5/applicationinsights-dependencies-js.cjs.js +4892 -0
- package/browser/es5/applicationinsights-dependencies-js.cjs.js.map +1 -0
- package/browser/es5/applicationinsights-dependencies-js.cjs.min.js +6 -0
- package/browser/es5/applicationinsights-dependencies-js.cjs.min.js.map +1 -0
- package/browser/es5/applicationinsights-dependencies-js.gbl.js +4896 -0
- package/browser/es5/applicationinsights-dependencies-js.gbl.js.map +1 -0
- package/browser/es5/applicationinsights-dependencies-js.gbl.min.js +6 -0
- package/browser/es5/applicationinsights-dependencies-js.gbl.min.js.map +1 -0
- package/browser/es5/applicationinsights-dependencies-js.integrity.json +66 -0
- package/browser/{applicationinsights-dependencies-js.js → es5/applicationinsights-dependencies-js.js} +864 -839
- package/browser/es5/applicationinsights-dependencies-js.js.map +1 -0
- package/browser/es5/applicationinsights-dependencies-js.min.js +6 -0
- package/browser/es5/applicationinsights-dependencies-js.min.js.map +1 -0
- package/dist/{applicationinsights-dependencies-js.js → es5/applicationinsights-dependencies-js.js} +864 -839
- package/dist/es5/applicationinsights-dependencies-js.js.map +1 -0
- package/dist/es5/applicationinsights-dependencies-js.min.js +6 -0
- package/dist/es5/applicationinsights-dependencies-js.min.js.map +1 -0
- package/{dist-esm → dist-es5}/DependencyInitializer.js +1 -1
- package/{dist-esm → dist-es5}/DependencyListener.js +1 -1
- package/{dist-esm → dist-es5}/InternalConstants.js +1 -1
- package/{dist-esm → dist-es5}/__DynamicConstants.js +1 -1
- package/{dist-esm → dist-es5}/ajax.js +5 -5
- package/dist-es5/ajax.js.map +1 -0
- package/{dist-esm → dist-es5}/ajaxRecord.js +1 -1
- package/{dist-esm → dist-es5}/ajaxUtils.js +1 -1
- package/{dist-esm → dist-es5}/applicationinsights-dependencies-js.js +1 -1
- package/package.json +19 -18
- package/tsconfig.json +5 -4
- package/types/applicationinsights-dependencies-js.d.ts +284 -4
- package/{dist/applicationinsights-dependencies-js.d.ts → types/applicationinsights-dependencies-js.namespaced.d.ts} +1 -1
- package/browser/applicationinsights-dependencies-js.integrity.json +0 -26
- package/browser/applicationinsights-dependencies-js.js.map +0 -1
- package/browser/applicationinsights-dependencies-js.min.js +0 -6
- package/browser/applicationinsights-dependencies-js.min.js.map +0 -1
- package/dist/applicationinsights-dependencies-js.api.json +0 -2904
- package/dist/applicationinsights-dependencies-js.api.md +0 -197
- package/dist/applicationinsights-dependencies-js.js.map +0 -1
- package/dist/applicationinsights-dependencies-js.min.js +0 -6
- package/dist/applicationinsights-dependencies-js.min.js.map +0 -1
- package/dist/applicationinsights-dependencies-js.rollup.d.ts +0 -285
- package/dist-esm/ajax.js.map +0 -1
- package/src/DependencyInitializer.ts +0 -49
- package/src/DependencyListener.ts +0 -82
- package/src/InternalConstants.ts +0 -13
- package/src/__DynamicConstants.ts +0 -68
- package/src/ajax.ts +0 -1290
- package/src/ajaxRecord.ts +0 -436
- package/src/ajaxUtils.ts +0 -23
- package/src/applicationinsights-dependencies-js.ts +0 -9
- package/types/DependencyInitializer.d.ts +0 -45
- package/types/DependencyListener.d.ts +0 -69
- package/types/InternalConstants.d.ts +0 -2
- package/types/__DynamicConstants.d.ts +0 -56
- package/types/ajax.d.ts +0 -63
- package/types/ajaxRecord.d.ts +0 -80
- package/types/ajaxUtils.d.ts +0 -3
- package/types/tsdoc-metadata.json +0 -11
- /package/{dist-esm → dist-es5}/DependencyInitializer.js.map +0 -0
- /package/{dist-esm → dist-es5}/DependencyListener.js.map +0 -0
- /package/{dist-esm → dist-es5}/InternalConstants.js.map +0 -0
- /package/{dist-esm → dist-es5}/__DynamicConstants.js.map +0 -0
- /package/{dist-esm → dist-es5}/ajaxRecord.js.map +0 -0
- /package/{dist-esm → dist-es5}/ajaxUtils.js.map +0 -0
- /package/{dist-esm → dist-es5}/applicationinsights-dependencies-js.js.map +0 -0
|
@@ -1,4 +1,284 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
/*
|
|
2
|
+
* Microsoft Application Insights XHR dependencies plugin, 3.0.0-nightly3.2304-28
|
|
3
|
+
* Copyright (c) Microsoft and contributors. All rights reserved.
|
|
4
|
+
*
|
|
5
|
+
* Microsoft Application Insights Team
|
|
6
|
+
* https://github.com/microsoft/ApplicationInsights-JS#readme
|
|
7
|
+
*
|
|
8
|
+
* ---------------------------------------------------------------------------
|
|
9
|
+
* This is a single combined (rollup) declaration file for the package,
|
|
10
|
+
* if you require a namespace wrapped version it is also available.
|
|
11
|
+
* - Namespaced version: types/applicationinsights-dependencies-js.namespaced.d.ts
|
|
12
|
+
* ---------------------------------------------------------------------------
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
import { BaseTelemetryPlugin } from '@microsoft/applicationinsights-core-js';
|
|
16
|
+
import { IAppInsightsCore } from '@microsoft/applicationinsights-core-js';
|
|
17
|
+
import { IConfig } from '@microsoft/applicationinsights-common';
|
|
18
|
+
import { IConfiguration } from '@microsoft/applicationinsights-core-js';
|
|
19
|
+
import { IDependencyTelemetry } from '@microsoft/applicationinsights-common';
|
|
20
|
+
import { IDiagnosticLogger } from '@microsoft/applicationinsights-core-js';
|
|
21
|
+
import { IDistributedTraceContext } from '@microsoft/applicationinsights-core-js';
|
|
22
|
+
import { IPlugin } from '@microsoft/applicationinsights-core-js';
|
|
23
|
+
import { IProcessTelemetryContext } from '@microsoft/applicationinsights-core-js';
|
|
24
|
+
import { ITelemetryItem } from '@microsoft/applicationinsights-core-js';
|
|
25
|
+
import { ITelemetryPluginChain } from '@microsoft/applicationinsights-core-js';
|
|
26
|
+
|
|
27
|
+
export declare class AjaxPlugin extends BaseTelemetryPlugin implements IDependenciesPlugin, IInstrumentationRequirements, IDependencyListenerContainer {
|
|
28
|
+
static identifier: string;
|
|
29
|
+
identifier: string;
|
|
30
|
+
priority: number;
|
|
31
|
+
constructor();
|
|
32
|
+
initialize(config: IConfiguration & IConfig, core: IAppInsightsCore, extensions: IPlugin[], pluginChain?: ITelemetryPluginChain): void;
|
|
33
|
+
processTelemetry(item: ITelemetryItem, itemCtx?: IProcessTelemetryContext): void;
|
|
34
|
+
/**
|
|
35
|
+
* Logs dependency call
|
|
36
|
+
* @param dependencyData - dependency data object
|
|
37
|
+
*/
|
|
38
|
+
trackDependencyData(dependency: IDependencyTelemetry, properties?: {
|
|
39
|
+
[key: string]: any;
|
|
40
|
+
}): void;
|
|
41
|
+
includeCorrelationHeaders(ajaxData: ajaxRecord, input?: Request | string, init?: RequestInit, xhr?: XMLHttpRequestInstrumented): any;
|
|
42
|
+
/**
|
|
43
|
+
* Add an ajax listener which is called just prior to the request being sent and before the correlation headers are added, to allow you
|
|
44
|
+
* to access the headers and modify the values used to generate the distributed tracing correlation headers.
|
|
45
|
+
* @param dependencyListener - The Telemetry Initializer function
|
|
46
|
+
* @returns - A IDependencyListenerHandler to enable the initializer to be removed
|
|
47
|
+
*/
|
|
48
|
+
addDependencyListener(dependencyListener: DependencyListenerFunction): IDependencyListenerHandler;
|
|
49
|
+
/**
|
|
50
|
+
* Add an dependency telemetry initializer callback function to allow populating additional properties or drop the request.
|
|
51
|
+
* It is called after the dependency call has completed and any available performance details are available. A dependency
|
|
52
|
+
* initializer is similar to the TelemetryInitializer function but it allows you to block the reporting of the dependency
|
|
53
|
+
* request so that it doesn't count against the `maxAjaxCallsPerView`.
|
|
54
|
+
* @param dependencyInitializer - The Dependency Telemetry Initializer function
|
|
55
|
+
* @returns - A IDependencyInitializerHandler to enable the initializer to be removed
|
|
56
|
+
*/
|
|
57
|
+
addDependencyInitializer(dependencyInitializer: DependencyInitializerFunction): IDependencyInitializerHandler;
|
|
58
|
+
/**
|
|
59
|
+
* Protected function to allow sub classes the chance to add additional properties to the dependency event
|
|
60
|
+
* before it's sent. This function calls track, so sub-classes must call this function after they have
|
|
61
|
+
* populated their properties.
|
|
62
|
+
* @param dependencyData - dependency data object
|
|
63
|
+
*/
|
|
64
|
+
protected trackDependencyDataInternal(dependency: IDependencyTelemetry, properties?: {
|
|
65
|
+
[key: string]: any;
|
|
66
|
+
}, systemProperties?: {
|
|
67
|
+
[key: string]: any;
|
|
68
|
+
}): void;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
export declare class ajaxRecord {
|
|
72
|
+
completed: boolean;
|
|
73
|
+
requestHeadersSize: number;
|
|
74
|
+
requestHeaders: any;
|
|
75
|
+
responseReceivingDuration: number;
|
|
76
|
+
callbackDuration: number;
|
|
77
|
+
ajaxTotalDuration: number;
|
|
78
|
+
aborted: number;
|
|
79
|
+
pageUrl: string;
|
|
80
|
+
requestUrl: string;
|
|
81
|
+
requestSize: number;
|
|
82
|
+
method: string;
|
|
83
|
+
perfMark: PerformanceMark;
|
|
84
|
+
perfTiming: PerformanceResourceTiming;
|
|
85
|
+
perfAttempts?: number;
|
|
86
|
+
async?: boolean;
|
|
87
|
+
errorStatusText?: boolean;
|
|
88
|
+
status: string | number;
|
|
89
|
+
requestSentTime: number;
|
|
90
|
+
responseStartedTime: number;
|
|
91
|
+
responseFinishedTime: number;
|
|
92
|
+
callbackFinishedTime: number;
|
|
93
|
+
endTime: number;
|
|
94
|
+
xhrMonitoringState: XHRMonitoringState;
|
|
95
|
+
clientFailure: number;
|
|
96
|
+
/**
|
|
97
|
+
* The traceId to use for the dependency call
|
|
98
|
+
*/
|
|
99
|
+
traceID: string;
|
|
100
|
+
/**
|
|
101
|
+
* The spanId to use for the dependency call
|
|
102
|
+
*/
|
|
103
|
+
spanID: string;
|
|
104
|
+
/**
|
|
105
|
+
* The traceFlags to use for the dependency call
|
|
106
|
+
*/
|
|
107
|
+
traceFlags?: number;
|
|
108
|
+
/**
|
|
109
|
+
* The trace context to use for reporting the remote dependency call
|
|
110
|
+
*/
|
|
111
|
+
eventTraceCtx: ITraceCtx;
|
|
112
|
+
/**
|
|
113
|
+
* The listener assigned context values that will be passed to any dependency initializer
|
|
114
|
+
*/
|
|
115
|
+
context?: {
|
|
116
|
+
[key: string]: any;
|
|
117
|
+
};
|
|
118
|
+
constructor(traceId: string, spanId: string, logger: IDiagnosticLogger, traceCtx?: IDistributedTraceContext);
|
|
119
|
+
getAbsoluteUrl(): string;
|
|
120
|
+
getPathName(): string;
|
|
121
|
+
CreateTrackItem(ajaxType: string, enableRequestHeaderTracking: boolean, getResponse: () => IAjaxRecordResponse): IDependencyTelemetry;
|
|
122
|
+
getPartAProps(): {
|
|
123
|
+
[key: string]: any;
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
/**
|
|
128
|
+
* The initializer function that will be called, if it returns false the event will be dropped and not reported
|
|
129
|
+
* or counted against the `maxAjaxCallsPerView`.
|
|
130
|
+
*/
|
|
131
|
+
export declare type DependencyInitializerFunction = (item: IDependencyInitializerDetails) => boolean | void;
|
|
132
|
+
|
|
133
|
+
/**
|
|
134
|
+
* The function that will get called when the ajax request is about to occur.
|
|
135
|
+
*/
|
|
136
|
+
export declare type DependencyListenerFunction = (dependencyDetails: IDependencyListenerDetails) => void;
|
|
137
|
+
|
|
138
|
+
export declare const DfltAjaxCorrelationHeaderExDomains: string[];
|
|
139
|
+
|
|
140
|
+
declare const _DYN_HEADER_MAP = "headerMap";
|
|
141
|
+
|
|
142
|
+
declare const _DYN_INCLUDE_CORRELATION_2 = "includeCorrelationHeaders";
|
|
143
|
+
|
|
144
|
+
declare interface IAjaxRecordResponse {
|
|
145
|
+
statusText: string;
|
|
146
|
+
[_DYN_HEADER_MAP]: Object;
|
|
147
|
+
correlationContext: string;
|
|
148
|
+
type?: string;
|
|
149
|
+
responseText?: string;
|
|
150
|
+
response?: Object;
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
export declare interface IDependenciesPlugin extends IDependencyListenerContainer {
|
|
154
|
+
/**
|
|
155
|
+
* Logs dependency call
|
|
156
|
+
* @param dependencyData - dependency data object
|
|
157
|
+
*/
|
|
158
|
+
trackDependencyData(dependency: IDependencyTelemetry): void;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
export declare interface IDependencyHandler {
|
|
162
|
+
remove(): void;
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
export declare interface IDependencyInitializerDetails {
|
|
166
|
+
/**
|
|
167
|
+
* The DependencyTelemetry event that will be passed to the `trackDependencyDataInternal` function.
|
|
168
|
+
*/
|
|
169
|
+
item: IDependencyTelemetry;
|
|
170
|
+
/**
|
|
171
|
+
* Additional properties to be added to the event
|
|
172
|
+
*/
|
|
173
|
+
properties?: {
|
|
174
|
+
[key: string]: any;
|
|
175
|
+
};
|
|
176
|
+
/**
|
|
177
|
+
* Additional system properties to be added to the event.
|
|
178
|
+
*/
|
|
179
|
+
sysProperties?: {
|
|
180
|
+
[key: string]: any;
|
|
181
|
+
};
|
|
182
|
+
/**
|
|
183
|
+
* The context that the application can assigned via the dependency listener(s)
|
|
184
|
+
*/
|
|
185
|
+
context?: {
|
|
186
|
+
[key: string]: any;
|
|
187
|
+
};
|
|
188
|
+
/**
|
|
189
|
+
* [Optional] A flag that indicates whether the client request was manually aborted by the `abort()`
|
|
190
|
+
*/
|
|
191
|
+
aborted?: boolean;
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
export declare interface IDependencyInitializerHandler extends IDependencyHandler {
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
declare interface IDependencyListenerContainer {
|
|
198
|
+
/**
|
|
199
|
+
* Add an ajax listener which is called just prior to the request being sent and before the correlation headers are added, to allow you
|
|
200
|
+
* to access the headers and modify the values used to generate the distributed tracing correlation headers. (added in v2.8.4)
|
|
201
|
+
* @param dependencyListener - The Telemetry Initializer function
|
|
202
|
+
* @returns - A IDependencyListenerHandler to enable the initializer to be removed
|
|
203
|
+
*/
|
|
204
|
+
addDependencyListener(dependencyListener: DependencyListenerFunction): IDependencyListenerHandler;
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
export declare interface IDependencyListenerDetails {
|
|
208
|
+
/**
|
|
209
|
+
* The current core instance
|
|
210
|
+
*/
|
|
211
|
+
core: IAppInsightsCore;
|
|
212
|
+
/**
|
|
213
|
+
* Provided only if the dependency request is an XHR call
|
|
214
|
+
*/
|
|
215
|
+
xhr?: XMLHttpRequest;
|
|
216
|
+
/**
|
|
217
|
+
* Provided only if the dependency request is a fetch call, this is the input argument being used,
|
|
218
|
+
* re-assigning this value has not affect on the value used for the request, however, when this is a Request
|
|
219
|
+
* object changing the value of the Request will be used for the outbound request.
|
|
220
|
+
*/
|
|
221
|
+
input?: Request | string;
|
|
222
|
+
/**
|
|
223
|
+
* Provided only if the dependency request is a fetch call, this is the init argument being used,
|
|
224
|
+
* re-assigning this value does not change the value used for the request, however, changing properties
|
|
225
|
+
* of this object will be used.
|
|
226
|
+
*/
|
|
227
|
+
init?: RequestInit;
|
|
228
|
+
/**
|
|
229
|
+
* Returns the unique identifier for a trace. All requests / spans from the same trace share the same traceId.
|
|
230
|
+
* Must be read from incoming headers or generated according to the W3C TraceContext specification,
|
|
231
|
+
* in a hex representation of 16-byte array. A.k.a. trace-id, TraceID or Distributed TraceID
|
|
232
|
+
*/
|
|
233
|
+
traceId?: string;
|
|
234
|
+
/**
|
|
235
|
+
* Self-generated 8-bytes identifier of the incoming request. Must be a hex representation of 8-byte array.
|
|
236
|
+
* Also know as the parentId, used to link requests together
|
|
237
|
+
*/
|
|
238
|
+
spanId?: string;
|
|
239
|
+
/**
|
|
240
|
+
* An integer representation of the W3C TraceContext trace-flags.
|
|
241
|
+
* https://www.w3.org/TR/trace-context/#trace-flags
|
|
242
|
+
*/
|
|
243
|
+
traceFlags?: number;
|
|
244
|
+
/**
|
|
245
|
+
* [Optional] Context that the application can assign that will also be passed to any dependency initializer
|
|
246
|
+
*/
|
|
247
|
+
context?: {
|
|
248
|
+
[key: string]: any;
|
|
249
|
+
};
|
|
250
|
+
/**
|
|
251
|
+
* [Optional] A flag that indicates whether the client request was manually aborted by the `abort()`,
|
|
252
|
+
* as listeners are called just before the request is sent it is unlikely that an application would have
|
|
253
|
+
* called `abort` before `send` this is also available in the dependency initializer.
|
|
254
|
+
*/
|
|
255
|
+
aborted?: boolean;
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
export declare interface IDependencyListenerHandler extends IDependencyHandler {
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
export declare interface IInstrumentationRequirements extends IDependenciesPlugin {
|
|
262
|
+
[_DYN_INCLUDE_CORRELATION_2]: (ajaxData: ajaxRecord, input?: Request | string, init?: RequestInit, xhr?: XMLHttpRequestInstrumented) => any;
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
declare interface ITraceCtx {
|
|
266
|
+
traceId: string;
|
|
267
|
+
spanId: string;
|
|
268
|
+
traceFlags: number;
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
declare class XHRMonitoringState {
|
|
272
|
+
openDone: boolean;
|
|
273
|
+
setRequestHeaderDone: boolean;
|
|
274
|
+
sendDone: boolean;
|
|
275
|
+
abortDone: boolean;
|
|
276
|
+
stateChangeAttached: boolean;
|
|
277
|
+
constructor();
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
export declare interface XMLHttpRequestInstrumented extends XMLHttpRequest {
|
|
281
|
+
ajaxData: ajaxRecord;
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
export { }
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* Microsoft Application Insights XHR dependencies plugin, 3.0.0-
|
|
2
|
+
* Microsoft Application Insights XHR dependencies plugin, 3.0.0-nightly3.2304-28
|
|
3
3
|
* Copyright (c) Microsoft and contributors. All rights reserved.
|
|
4
4
|
*
|
|
5
5
|
* Microsoft Application Insights Team
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "applicationinsights-dependencies-js",
|
|
3
|
-
"version": "3.0.0-beta.2303-11",
|
|
4
|
-
"ext": {
|
|
5
|
-
"@js": {
|
|
6
|
-
"file": "applicationinsights-dependencies-js.js",
|
|
7
|
-
"type": "text/javascript; charset=utf-8",
|
|
8
|
-
"integrity": "sha256-W3QBhwkUUhxcQWkbL+zf8ihi1vTkgj+Bzt9exTVgpaY= sha384-nsNK2CUAh/l7qXUxeiJWadcFNBspZ6gGKnq6FkJ6zr3BHQ4j2GecqIePf9Gi8M0R sha512-wMnYyhjrOpO2Q1FMTwZOsDZAAFpzWY+oOMC6TZpc3mWmfaE2VO5N4FrYomChSiQreKh4zU1WFWHcH8yci24g1Q==",
|
|
9
|
-
"hashes": {
|
|
10
|
-
"sha256": "W3QBhwkUUhxcQWkbL+zf8ihi1vTkgj+Bzt9exTVgpaY=",
|
|
11
|
-
"sha384": "nsNK2CUAh/l7qXUxeiJWadcFNBspZ6gGKnq6FkJ6zr3BHQ4j2GecqIePf9Gi8M0R",
|
|
12
|
-
"sha512": "wMnYyhjrOpO2Q1FMTwZOsDZAAFpzWY+oOMC6TZpc3mWmfaE2VO5N4FrYomChSiQreKh4zU1WFWHcH8yci24g1Q=="
|
|
13
|
-
}
|
|
14
|
-
},
|
|
15
|
-
"@min.js": {
|
|
16
|
-
"file": "applicationinsights-dependencies-js.min.js",
|
|
17
|
-
"type": "text/javascript; charset=utf-8",
|
|
18
|
-
"integrity": "sha256-xlaO23KigcWixl+ITZ71CT9mupGjKVUwvnjQFWCLPI0= sha384-q5D9y67pSihfuTldp9zI83TSj4dDaqi26BWYc0/Un1s4L4R/D1gaoP2gzxxUc6ZY sha512-GdVSuGh/Zc/COR/80heYGRwRMT/SLX7bLwhL6J04KXbu0qWZ3CEFQOedUsSug7pDoBF1fSyzXeoGgAvk/mGTPA==",
|
|
19
|
-
"hashes": {
|
|
20
|
-
"sha256": "xlaO23KigcWixl+ITZ71CT9mupGjKVUwvnjQFWCLPI0=",
|
|
21
|
-
"sha384": "q5D9y67pSihfuTldp9zI83TSj4dDaqi26BWYc0/Un1s4L4R/D1gaoP2gzxxUc6ZY",
|
|
22
|
-
"sha512": "GdVSuGh/Zc/COR/80heYGRwRMT/SLX7bLwhL6J04KXbu0qWZ3CEFQOedUsSug7pDoBF1fSyzXeoGgAvk/mGTPA=="
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
}
|