@pikku/core 0.6.24 → 0.6.26

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/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  ## 0.6
2
2
 
3
+ ## 0.6.26
4
+
5
+ ### Patch Changes
6
+
7
+ - 412f136: updating local content service
8
+
9
+ ## 0.6.25
10
+
11
+ ### Patch Changes
12
+
13
+ - b774c7d: fix: coerce top level data from schema now includes date strings
14
+
3
15
  ## 0.6.24
4
16
 
5
17
  ### Patch Changes
@@ -7,7 +7,7 @@ export declare const getMatchingChannelConfig: (request: string) => {
7
7
  channelConfig: CoreAPIChannel<any, string, import("./channel.types.js").CoreChannelConnection<any, unknown, import("../index.js").CoreServices>, import("./channel.types.js").CoreChannelDisconnection<any, import("../index.js").CoreServices>, import("./channel.types.js").CoreChannelMessage<unknown, unknown, unknown, import("../index.js").CoreServices> | import("../index.js").CoreAPIFunction<unknown, unknown>, import("./channel.types.js").CoreChannelMessage<unknown, unknown, unknown, import("../index.js").CoreServices> | import("../index.js").CoreAPIFunction<unknown, unknown>, import("../index.js").CoreAPIPermission<any>>;
8
8
  schemaName: string | null | undefined;
9
9
  } | null;
10
- export declare const openChannel: ({ route, singletonServices, coerceToArray, request, }: Pick<CoreAPIChannel<unknown, string>, "route"> & RunChannelParams<unknown> & {
10
+ export declare const openChannel: ({ route, singletonServices, coerceDataFromSchema, request, }: Pick<CoreAPIChannel<unknown, string>, "route"> & RunChannelParams<unknown> & {
11
11
  userSession: UserSessionService<any>;
12
12
  } & RunChannelOptions) => Promise<{
13
13
  openingData: unknown;
@@ -1,6 +1,6 @@
1
1
  import { NotFoundError } from '../errors/errors.js';
2
2
  import { pikkuState } from '../pikku-state.js';
3
- import { coerceQueryStringToArray, validateSchema } from '../schema.js';
3
+ import { coerceTopLevelDataFromSchema, validateSchema } from '../schema.js';
4
4
  import { match } from 'path-to-regexp';
5
5
  export const addChannel = (channel) => {
6
6
  pikkuState('channel', 'channels').push(channel);
@@ -27,7 +27,7 @@ export const getMatchingChannelConfig = (request) => {
27
27
  }
28
28
  return null;
29
29
  };
30
- export const openChannel = async ({ route, singletonServices, coerceToArray = false, request, }) => {
30
+ export const openChannel = async ({ route, singletonServices, coerceDataFromSchema = true, request, }) => {
31
31
  const matchingChannel = getMatchingChannelConfig(route);
32
32
  if (!matchingChannel) {
33
33
  singletonServices.logger.info(`Channel not found: ${route}`);
@@ -40,8 +40,8 @@ export const openChannel = async ({ route, singletonServices, coerceToArray = fa
40
40
  let openingData;
41
41
  if (request) {
42
42
  openingData = await request.data();
43
- if (coerceToArray && schemaName) {
44
- coerceQueryStringToArray(schemaName, openingData);
43
+ if (coerceDataFromSchema && schemaName) {
44
+ coerceTopLevelDataFromSchema(schemaName, openingData);
45
45
  }
46
46
  await validateSchema(singletonServices.logger, singletonServices.schema, schemaName, openingData);
47
47
  }
@@ -5,7 +5,7 @@ import { CoreAPIFunction, CoreAPIPermission } from '../types/functions.types.js'
5
5
  export type RunChannelOptions = Partial<{
6
6
  skipUserSession: boolean;
7
7
  respondWith404: boolean;
8
- coerceToArray: boolean;
8
+ coerceDataFromSchema: boolean;
9
9
  logWarningsForStatusCodes: number[];
10
10
  bubbleErrors: boolean;
11
11
  }>;
@@ -1,3 +1,3 @@
1
1
  import { CoreAPIChannel, RunChannelOptions, RunChannelParams } from '../channel.types.js';
2
2
  import { PikkuLocalChannelHandler } from './local-channel-handler.js';
3
- export declare const runLocalChannel: ({ singletonServices, channelId, request, response, route, createSessionServices, skipUserSession, respondWith404, coerceToArray, logWarningsForStatusCodes, bubbleErrors, }: Partial<Pick<CoreAPIChannel<unknown, any>, "route">> & RunChannelOptions & RunChannelParams<unknown>) => Promise<PikkuLocalChannelHandler | void>;
3
+ export declare const runLocalChannel: ({ singletonServices, channelId, request, response, route, createSessionServices, skipUserSession, respondWith404, coerceDataFromSchema, logWarningsForStatusCodes, bubbleErrors, }: Partial<Pick<CoreAPIChannel<unknown, any>, "route">> & RunChannelOptions & RunChannelParams<unknown>) => Promise<PikkuLocalChannelHandler | void>;
@@ -6,7 +6,7 @@ import { PikkuLocalChannelHandler } from './local-channel-handler.js';
6
6
  import { handleError } from '../../handle-error.js';
7
7
  import { runMiddleware } from '../../middleware-runner.js';
8
8
  import { PikkuUserSessionService } from '../../services/user-session-service.js';
9
- export const runLocalChannel = async ({ singletonServices, channelId, request, response, route, createSessionServices, skipUserSession = false, respondWith404 = true, coerceToArray = false, logWarningsForStatusCodes = [], bubbleErrors = false, }) => {
9
+ export const runLocalChannel = async ({ singletonServices, channelId, request, response, route, createSessionServices, skipUserSession = false, respondWith404 = true, coerceDataFromSchema = true, logWarningsForStatusCodes = [], bubbleErrors = false, }) => {
10
10
  let sessionServices;
11
11
  let channelHandler;
12
12
  const userSession = new PikkuUserSessionService();
@@ -26,7 +26,7 @@ export const runLocalChannel = async ({ singletonServices, channelId, request, r
26
26
  route,
27
27
  singletonServices,
28
28
  skipUserSession,
29
- coerceToArray,
29
+ coerceDataFromSchema,
30
30
  userSession,
31
31
  });
32
32
  channelHandler = new PikkuLocalChannelHandler(channelId, channelConfig.name, openingData);
@@ -5,6 +5,6 @@ export interface RunServerlessChannelParams<ChannelData> extends RunChannelParam
5
5
  channelHandlerFactory: PikkuChannelHandlerFactory;
6
6
  channelObject?: unknown;
7
7
  }
8
- export declare const runChannelConnect: ({ singletonServices, channelId, channelObject, request, response, route, createSessionServices, channelStore, channelHandlerFactory, coerceToArray, logWarningsForStatusCodes, respondWith404, bubbleErrors, }: Pick<CoreAPIChannel<unknown, any>, "route"> & RunChannelOptions & RunServerlessChannelParams<unknown>) => Promise<void>;
8
+ export declare const runChannelConnect: ({ singletonServices, channelId, channelObject, request, response, route, createSessionServices, channelStore, channelHandlerFactory, coerceDataFromSchema, logWarningsForStatusCodes, respondWith404, bubbleErrors, }: Pick<CoreAPIChannel<unknown, any>, "route"> & RunChannelOptions & RunServerlessChannelParams<unknown>) => Promise<void>;
9
9
  export declare const runChannelDisconnect: ({ singletonServices, ...params }: RunServerlessChannelParams<unknown>) => Promise<void>;
10
10
  export declare const runChannelMessage: ({ singletonServices, ...params }: RunServerlessChannelParams<unknown>, data: unknown) => Promise<unknown>;
@@ -20,7 +20,7 @@ const getVariablesForChannel = ({ channelId, channelName, channelHandlerFactory,
20
20
  channel: channelHandler.getChannel(),
21
21
  };
22
22
  };
23
- export const runChannelConnect = async ({ singletonServices, channelId, channelObject, request, response, route, createSessionServices, channelStore, channelHandlerFactory, coerceToArray = false, logWarningsForStatusCodes = [], respondWith404 = true, bubbleErrors = false, }) => {
23
+ export const runChannelConnect = async ({ singletonServices, channelId, channelObject, request, response, route, createSessionServices, channelStore, channelHandlerFactory, coerceDataFromSchema = true, logWarningsForStatusCodes = [], respondWith404 = true, bubbleErrors = false, }) => {
24
24
  let sessionServices;
25
25
  let http;
26
26
  if (request instanceof Request) {
@@ -33,7 +33,7 @@ export const runChannelConnect = async ({ singletonServices, channelId, channelO
33
33
  request,
34
34
  route,
35
35
  singletonServices,
36
- coerceToArray,
36
+ coerceDataFromSchema,
37
37
  userSession,
38
38
  });
39
39
  const main = async () => {
@@ -87,4 +87,4 @@ export declare const pikkuFetch: <In, Out>(request: Request | PikkuHTTPRequest,
87
87
  * @param {RunRouteOptions & RunRouteParams} options - Options such as singleton services, session handling, and error configuration.
88
88
  * @returns {Promise<Out | void>} The output from the route handler or void if an error occurred.
89
89
  */
90
- export declare const fetchData: <In, Out>(request: Request | PikkuHTTPRequest, response: PikkuHTTPResponse, { singletonServices, createSessionServices, skipUserSession, respondWith404, logWarningsForStatusCodes, coerceToArray, bubbleErrors, }: RunRouteOptions & RunRouteParams) => Promise<Out | void>;
90
+ export declare const fetchData: <In, Out>(request: Request | PikkuHTTPRequest, response: PikkuHTTPResponse, { singletonServices, createSessionServices, skipUserSession, respondWith404, logWarningsForStatusCodes, coerceDataFromSchema, bubbleErrors, }: RunRouteOptions & RunRouteParams) => Promise<Out | void>;
@@ -2,7 +2,7 @@ import { verifyPermissions } from '../permissions.js';
2
2
  import { match } from 'path-to-regexp';
3
3
  import { ForbiddenError, MissingSessionError, NotFoundError, } from '../errors/errors.js';
4
4
  import { closeSessionServices } from '../utils.js';
5
- import { coerceQueryStringToArray, validateSchema } from '../schema.js';
5
+ import { coerceTopLevelDataFromSchema, validateSchema } from '../schema.js';
6
6
  import { PikkuUserSessionService, } from '../services/user-session-service.js';
7
7
  import { runMiddleware } from '../middleware-runner.js';
8
8
  import { handleError } from '../handle-error.js';
@@ -174,9 +174,9 @@ const executeRouteWithMiddleware = async (services, matchedRoute, http, options)
174
174
  const data = await http?.request?.data();
175
175
  // Validate request data against the defined schema, if any
176
176
  await validateSchema(singletonServices.logger, singletonServices.schema, schemaName, data);
177
- // Coerce query string parameters to arrays if specified by the schema
178
- if (options.coerceToArray && schemaName) {
179
- coerceQueryStringToArray(schemaName, data);
177
+ // Coerce (top level) query string parameters or date objects if specified by the schema
178
+ if (options.coerceDataFromSchema && schemaName) {
179
+ coerceTopLevelDataFromSchema(schemaName, data);
180
180
  }
181
181
  // Execute permission checks
182
182
  const permissioned = await verifyPermissions(route.permissions, allServices, data, session);
@@ -256,7 +256,7 @@ export const pikkuFetch = async (request, params) => {
256
256
  * @param {RunRouteOptions & RunRouteParams} options - Options such as singleton services, session handling, and error configuration.
257
257
  * @returns {Promise<Out | void>} The output from the route handler or void if an error occurred.
258
258
  */
259
- export const fetchData = async (request, response, { singletonServices, createSessionServices, skipUserSession = false, respondWith404 = true, logWarningsForStatusCodes = [], coerceToArray = false, bubbleErrors = false, }) => {
259
+ export const fetchData = async (request, response, { singletonServices, createSessionServices, skipUserSession = false, respondWith404 = true, logWarningsForStatusCodes = [], coerceDataFromSchema = true, bubbleErrors = false, }) => {
260
260
  const userSession = new PikkuUserSessionService();
261
261
  let sessionServices;
262
262
  let result;
@@ -283,7 +283,7 @@ export const fetchData = async (request, response, { singletonServices, createSe
283
283
  userSession,
284
284
  createSessionServices,
285
285
  skipUserSession,
286
- }, matchedRoute, http, { coerceToArray }));
286
+ }, matchedRoute, http, { coerceDataFromSchema }));
287
287
  return result;
288
288
  }
289
289
  catch (e) {
@@ -8,7 +8,7 @@ export type RunRouteOptions = Partial<{
8
8
  skipUserSession: boolean;
9
9
  respondWith404: boolean;
10
10
  logWarningsForStatusCodes: number[];
11
- coerceToArray: boolean;
11
+ coerceDataFromSchema: boolean;
12
12
  bubbleErrors: boolean;
13
13
  }>;
14
14
  export type RunRouteParams = {
package/dist/schema.d.ts CHANGED
@@ -12,5 +12,5 @@ export declare const addSchema: (name: string, value: any) => void;
12
12
  * @param logger - A logger for logging information.
13
13
  */
14
14
  export declare const compileAllSchemas: (logger: Logger, schemaService?: SchemaService) => void;
15
- export declare const coerceQueryStringToArray: (schemaName: string, data: any) => void;
15
+ export declare const coerceTopLevelDataFromSchema: (schemaName: string, data: any) => void;
16
16
  export declare const validateSchema: (logger: Logger, schemaService: SchemaService | undefined, schemaName: string | undefined | null, data: any) => Promise<void>;
package/dist/schema.js CHANGED
@@ -42,7 +42,7 @@ const validateAllSchemasLoaded = (logger, schemaService) => {
42
42
  logger.info('All schemas loaded');
43
43
  }
44
44
  };
45
- export const coerceQueryStringToArray = (schemaName, data) => {
45
+ export const coerceTopLevelDataFromSchema = (schemaName, data) => {
46
46
  const schema = pikkuState('misc', 'schemas').get(schemaName);
47
47
  for (const key in schema.properties) {
48
48
  const property = schema.properties[key];
@@ -56,6 +56,9 @@ export const coerceQueryStringToArray = (schemaName, data) => {
56
56
  if (type === 'array' && typeof data[key] === 'string') {
57
57
  data[key] = data[key].split(',');
58
58
  }
59
+ else if (type === 'string' && property.format === 'date-time') {
60
+ data[key] = new Date(data[key]);
61
+ }
59
62
  }
60
63
  };
61
64
  export const validateSchema = async (logger, schemaService, schemaName, data) => {
@@ -1,33 +1,24 @@
1
- import { ContentService } from './content-service.js';
2
- import { Logger } from './logger.js';
1
+ import { ContentService, Logger } from '@pikku/core/services';
3
2
  export interface LocalContentConfig {
4
- contentDirectory: string;
5
- assetsUrl: string;
6
- uploadUrl: string;
3
+ localFileUploadPath: string;
4
+ uploadUrlPrefix: string;
5
+ assetUrlPrefix: string;
6
+ sizeLimit?: string;
7
7
  }
8
- /**
9
- * Service for handling local content operations.
10
- */
11
- export declare abstract class LocalContent implements ContentService {
12
- constructor(_config: LocalContentConfig, _logger: Logger);
13
- abstract getUploadURL: (fileKey: string, contentType: string) => Promise<{
8
+ export declare class LocalContent implements ContentService {
9
+ private config;
10
+ private logger;
11
+ constructor(config: LocalContentConfig, logger: Logger);
12
+ init(): Promise<void>;
13
+ signURL(url: string): Promise<string>;
14
+ signContentKey(assetKey: string): Promise<string>;
15
+ getUploadURL(assetKey: string): Promise<{
14
16
  uploadUrl: string;
15
17
  assetKey: string;
16
18
  }>;
17
- /**
18
- * Initializes the local content service.
19
- */
20
- abstract init(): Promise<void>;
21
- /**
22
- * Signs a URL to provide secure access.
23
- * @param url - The URL to sign.
24
- * @returns A promise that resolves to the signed URL.
25
- */
26
- abstract signURL(url: string): Promise<string>;
27
- /**
28
- * Signs a content key to provide secure access to an asset.
29
- * @param assetKey - The key of the asset to sign.
30
- * @returns A promise that resolves to the signed content key URL.
31
- */
32
- abstract signContentKey(assetKey: string): Promise<string>;
19
+ writeFile(assetKey: string, buffer: Buffer): Promise<boolean>;
20
+ copyFile(assetKey: string, fromAbsolutePath: string): Promise<boolean>;
21
+ readFile(assetKey: string): Promise<Buffer>;
22
+ deleteFile(assetKey: string): Promise<boolean>;
23
+ private createDirectoryForFile;
33
24
  }
@@ -1,6 +1,74 @@
1
- /**
2
- * Service for handling local content operations.
3
- */
1
+ import { promises } from 'fs';
2
+ import { mkdir } from 'fs/promises';
4
3
  export class LocalContent {
5
- constructor(_config, _logger) { }
4
+ config;
5
+ logger;
6
+ constructor(config, logger) {
7
+ this.config = config;
8
+ this.logger = logger;
9
+ }
10
+ async init() { }
11
+ async signURL(url) {
12
+ return `${url}?signed=true`;
13
+ }
14
+ async signContentKey(assetKey) {
15
+ return `${this.config.assetUrlPrefix}/${assetKey}?signed=true`;
16
+ }
17
+ async getUploadURL(assetKey) {
18
+ this.logger.debug(`Going to upload with key: ${assetKey}`);
19
+ return {
20
+ uploadUrl: `${this.config.uploadUrlPrefix}/${assetKey}`,
21
+ assetKey,
22
+ };
23
+ }
24
+ async writeFile(assetKey, buffer) {
25
+ this.logger.debug(`Writing file: ${assetKey}`);
26
+ try {
27
+ const path = `${this.config.localFileUploadPath}/${assetKey}`;
28
+ await this.createDirectoryForFile(path);
29
+ await promises.writeFile(path, buffer);
30
+ }
31
+ catch (e) {
32
+ console.error(e);
33
+ this.logger.error(`Error inserting content ${assetKey}`, e);
34
+ }
35
+ return false;
36
+ }
37
+ async copyFile(assetKey, fromAbsolutePath) {
38
+ this.logger.debug(`Writing file: ${assetKey}`);
39
+ try {
40
+ const path = `${this.config.localFileUploadPath}/${assetKey}`;
41
+ await this.createDirectoryForFile(path);
42
+ await promises.copyFile(fromAbsolutePath, path);
43
+ }
44
+ catch (e) {
45
+ console.error(e);
46
+ this.logger.error(`Error inserting content ${assetKey}`, e);
47
+ }
48
+ return false;
49
+ }
50
+ async readFile(assetKey) {
51
+ this.logger.debug(`getting key: ${assetKey}`);
52
+ try {
53
+ return await promises.readFile(`${this.config.localFileUploadPath}/${assetKey}`);
54
+ }
55
+ catch (e) {
56
+ this.logger.error(`Error get content ${assetKey}`);
57
+ throw e;
58
+ }
59
+ }
60
+ async deleteFile(assetKey) {
61
+ this.logger.debug(`deleting key: ${assetKey}`);
62
+ try {
63
+ await promises.unlink(`${this.config.localFileUploadPath}/${assetKey}`);
64
+ }
65
+ catch (e) {
66
+ this.logger.error(`Error deleting content ${assetKey}`, e);
67
+ }
68
+ return false;
69
+ }
70
+ async createDirectoryForFile(path) {
71
+ const dir = path.split('/').slice(0, -1).join('/');
72
+ await mkdir(dir, { recursive: true });
73
+ }
6
74
  }
package/lcov.info CHANGED
@@ -274,8 +274,7 @@ BRDA:69,7,0,2
274
274
  BRDA:84,8,0,2
275
275
  BRDA:97,9,0,2
276
276
  BRDA:86,10,0,0
277
- BRDA:86,11,0,0
278
- BRF:12
277
+ BRF:11
279
278
  BRH:9
280
279
  DA:1,2
281
280
  DA:2,2
@@ -2213,20 +2212,19 @@ BRDA:245,14,0,0
2213
2212
  BRDA:245,15,0,0
2214
2213
  BRDA:251,16,0,0
2215
2214
  BRDA:283,17,0,0
2216
- BRDA:283,18,0,0
2217
- BRDA:295,19,0,0
2218
- BRDA:303,20,0,2
2219
- BRDA:303,21,0,0
2220
- BRDA:305,22,0,2
2221
- BRDA:342,23,0,4
2222
- BRDA:348,24,0,2
2223
- BRDA:390,25,0,4
2224
- BRDA:409,26,0,0
2225
- BRDA:420,27,0,1
2226
- BRDA:430,28,0,3
2227
- BRDA:440,29,0,2
2228
- BRDA:456,30,0,2
2229
- BRF:31
2215
+ BRDA:295,18,0,0
2216
+ BRDA:303,19,0,2
2217
+ BRDA:303,20,0,0
2218
+ BRDA:305,21,0,2
2219
+ BRDA:342,22,0,4
2220
+ BRDA:348,23,0,2
2221
+ BRDA:390,24,0,4
2222
+ BRDA:409,25,0,0
2223
+ BRDA:420,26,0,1
2224
+ BRDA:430,27,0,3
2225
+ BRDA:440,28,0,2
2226
+ BRDA:456,29,0,2
2227
+ BRF:30
2230
2228
  BRH:18
2231
2229
  DA:1,2
2232
2230
  DA:2,2
@@ -3004,10 +3002,8 @@ LF:237
3004
3002
  end_of_record
3005
3003
  SF:src/http/pikku-fetch-http-request.ts
3006
3004
  FN:15,<instance_members_initializer>
3007
- FN:1,<static_initializer>
3008
- FN:154,valuesAreEquivalent
3009
- FN:158,coerce
3010
3005
  FN:22,PikkuFetchHTTPRequest
3006
+ FN:1,<static_initializer>
3011
3007
  FN:26,method
3012
3008
  FN:30,path
3013
3009
  FN:38,json
@@ -3019,11 +3015,11 @@ FN:81,setParams
3019
3015
  FN:91,query
3020
3016
  FN:99,data
3021
3017
  FN:116,body
3018
+ FN:154,valuesAreEquivalent
3019
+ FN:158,coerce
3022
3020
  FNDA:17,<instance_members_initializer>
3023
- FNDA:3,<static_initializer>
3024
- FNDA:7,valuesAreEquivalent
3025
- FNDA:14,coerce
3026
3021
  FNDA:17,PikkuFetchHTTPRequest
3022
+ FNDA:3,<static_initializer>
3027
3023
  FNDA:12,method
3028
3024
  FNDA:1,path
3029
3025
  FNDA:8,json
@@ -3035,57 +3031,59 @@ FNDA:7,setParams
3035
3031
  FNDA:12,query
3036
3032
  FNDA:30,data
3037
3033
  FNDA:11,body
3034
+ FNDA:7,valuesAreEquivalent
3035
+ FNDA:14,coerce
3038
3036
  FNF:16
3039
3037
  FNH:15
3040
3038
  BRDA:1,0,0,3
3041
3039
  BRDA:15,1,0,17
3042
- BRDA:1,2,0,3
3043
- BRDA:154,3,0,7
3044
- BRDA:158,4,0,14
3045
- BRDA:159,5,0,12
3046
- BRDA:159,6,0,4
3047
- BRDA:160,7,0,10
3048
- BRDA:161,8,0,3
3049
- BRDA:162,9,0,7
3050
- BRDA:162,10,0,1
3051
- BRDA:163,11,0,6
3052
- BRDA:164,12,0,0
3053
- BRDA:164,13,0,6
3054
- BRDA:166,14,0,0
3055
- BRDA:22,15,0,17
3056
- BRDA:26,16,0,12
3057
- BRDA:30,17,0,1
3058
- BRDA:38,18,0,8
3059
- BRDA:55,19,0,15
3060
- BRDA:63,20,0,3
3061
- BRDA:65,21,0,0
3062
- BRDA:66,22,0,1
3063
- BRDA:73,23,0,12
3064
- BRDA:81,24,0,7
3065
- BRDA:91,25,0,12
3066
- BRDA:99,26,0,11
3067
- BRDA:101,27,0,10
3068
- BRDA:103,28,0,30
3069
- BRDA:104,29,0,23
3070
- BRDA:105,30,0,7
3071
- BRDA:105,31,0,2
3072
- BRDA:110,32,0,21
3073
- BRDA:112,33,0,28
3074
- BRDA:113,34,0,8
3075
- BRDA:116,35,0,11
3076
- BRDA:118,36,0,0
3077
- BRDA:123,37,0,0
3078
- BRDA:125,38,0,8
3079
- BRDA:127,39,0,7
3080
- BRDA:128,40,0,6
3081
- BRDA:131,41,0,1
3082
- BRDA:133,42,0,3
3083
- BRDA:133,43,0,1
3084
- BRDA:136,44,0,2
3085
- BRDA:136,45,0,1
3086
- BRDA:142,46,0,0
3087
- BRDA:147,47,0,1
3088
- BRDA:150,48,0,10
3040
+ BRDA:22,2,0,17
3041
+ BRDA:1,3,0,3
3042
+ BRDA:26,4,0,12
3043
+ BRDA:30,5,0,1
3044
+ BRDA:38,6,0,8
3045
+ BRDA:55,7,0,15
3046
+ BRDA:63,8,0,3
3047
+ BRDA:65,9,0,0
3048
+ BRDA:66,10,0,1
3049
+ BRDA:73,11,0,12
3050
+ BRDA:81,12,0,7
3051
+ BRDA:91,13,0,12
3052
+ BRDA:99,14,0,11
3053
+ BRDA:101,15,0,10
3054
+ BRDA:103,16,0,30
3055
+ BRDA:104,17,0,23
3056
+ BRDA:105,18,0,7
3057
+ BRDA:105,19,0,2
3058
+ BRDA:110,20,0,21
3059
+ BRDA:112,21,0,28
3060
+ BRDA:113,22,0,8
3061
+ BRDA:116,23,0,11
3062
+ BRDA:118,24,0,0
3063
+ BRDA:123,25,0,0
3064
+ BRDA:125,26,0,8
3065
+ BRDA:127,27,0,7
3066
+ BRDA:128,28,0,6
3067
+ BRDA:131,29,0,1
3068
+ BRDA:133,30,0,3
3069
+ BRDA:133,31,0,1
3070
+ BRDA:136,32,0,2
3071
+ BRDA:136,33,0,1
3072
+ BRDA:142,34,0,0
3073
+ BRDA:147,35,0,1
3074
+ BRDA:150,36,0,10
3075
+ BRDA:154,37,0,7
3076
+ BRDA:158,38,0,14
3077
+ BRDA:159,39,0,12
3078
+ BRDA:159,40,0,4
3079
+ BRDA:160,41,0,10
3080
+ BRDA:161,42,0,3
3081
+ BRDA:162,43,0,7
3082
+ BRDA:162,44,0,1
3083
+ BRDA:163,45,0,6
3084
+ BRDA:164,46,0,0
3085
+ BRDA:164,47,0,6
3086
+ BRDA:166,48,0,0
3089
3087
  BRF:49
3090
3088
  BRH:43
3091
3089
  DA:1,3
@@ -3925,7 +3923,7 @@ FN:12,anonymous_0
3925
3923
  FN:20,anonymous_1
3926
3924
  FN:34,anonymous_2
3927
3925
  FN:61,anonymous_3
3928
- FN:78,anonymous_4
3926
+ FN:80,anonymous_4
3929
3927
  FNDA:2,anonymous_0
3930
3928
  FNDA:0,anonymous_1
3931
3929
  FNDA:0,anonymous_2
@@ -3943,10 +3941,13 @@ BRDA:70,6,0,0
3943
3941
  BRDA:72,7,0,13
3944
3942
  BRDA:72,8,0,5
3945
3943
  BRDA:73,9,0,2
3946
- BRDA:78,10,0,5
3947
- BRDA:85,11,0,0
3948
- BRF:12
3949
- BRH:10
3944
+ BRDA:74,10,0,11
3945
+ BRDA:74,11,0,4
3946
+ BRDA:75,12,0,0
3947
+ BRDA:80,13,0,5
3948
+ BRDA:87,14,0,0
3949
+ BRF:15
3950
+ BRH:12
3950
3951
  DA:1,0
3951
3952
  DA:2,0
3952
3953
  DA:3,3
@@ -4020,20 +4021,20 @@ DA:70,14
4020
4021
  DA:71,0
4021
4022
  DA:72,14
4022
4023
  DA:73,14
4023
- DA:74,2
4024
- DA:75,2
4025
- DA:76,14
4026
- DA:77,3
4027
- DA:78,1
4028
- DA:79,5
4029
- DA:80,5
4024
+ DA:74,14
4025
+ DA:75,11
4026
+ DA:76,0
4027
+ DA:77,0
4028
+ DA:78,14
4029
+ DA:79,3
4030
+ DA:80,1
4030
4031
  DA:81,5
4031
4032
  DA:82,5
4032
4033
  DA:83,5
4033
4034
  DA:84,5
4034
4035
  DA:85,5
4035
- DA:86,0
4036
- DA:87,0
4036
+ DA:86,5
4037
+ DA:87,5
4037
4038
  DA:88,0
4038
4039
  DA:89,0
4039
4040
  DA:90,0
@@ -4044,8 +4045,10 @@ DA:94,0
4044
4045
  DA:95,0
4045
4046
  DA:96,0
4046
4047
  DA:97,0
4048
+ DA:98,0
4049
+ DA:99,0
4047
4050
  LH:45
4048
- LF:97
4051
+ LF:99
4049
4052
  end_of_record
4050
4053
  SF:src/services/user-session-service.ts
4051
4054
  FN:12,<instance_members_initializer>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pikku/core",
3
- "version": "0.6.24",
3
+ "version": "0.6.26",
4
4
  "author": "yasser.fadl@gmail.com",
5
5
  "license": "MIT",
6
6
  "module": "dist/index.js",
@@ -1,6 +1,6 @@
1
1
  import { NotFoundError } from '../errors/errors.js'
2
2
  import { pikkuState } from '../pikku-state.js'
3
- import { coerceQueryStringToArray, validateSchema } from '../schema.js'
3
+ import { coerceTopLevelDataFromSchema, validateSchema } from '../schema.js'
4
4
  import { UserSessionService } from '../services/user-session-service.js'
5
5
  import {
6
6
  CoreAPIChannel,
@@ -56,7 +56,7 @@ export const getMatchingChannelConfig = (request: string) => {
56
56
  export const openChannel = async ({
57
57
  route,
58
58
  singletonServices,
59
- coerceToArray = false,
59
+ coerceDataFromSchema = true,
60
60
  request,
61
61
  }: Pick<CoreAPIChannel<unknown, string>, 'route'> &
62
62
  RunChannelParams<unknown> & {
@@ -83,8 +83,8 @@ export const openChannel = async ({
83
83
  let openingData: any | undefined
84
84
  if (request) {
85
85
  openingData = await request.data()
86
- if (coerceToArray && schemaName) {
87
- coerceQueryStringToArray(schemaName, openingData)
86
+ if (coerceDataFromSchema && schemaName) {
87
+ coerceTopLevelDataFromSchema(schemaName, openingData)
88
88
  }
89
89
  await validateSchema(
90
90
  singletonServices.logger,
@@ -16,7 +16,7 @@ import { CoreAPIFunction, CoreAPIPermission } from '../types/functions.types.js'
16
16
  export type RunChannelOptions = Partial<{
17
17
  skipUserSession: boolean
18
18
  respondWith404: boolean
19
- coerceToArray: boolean
19
+ coerceDataFromSchema: boolean
20
20
  logWarningsForStatusCodes: number[]
21
21
  bubbleErrors: boolean
22
22
  }>
@@ -23,7 +23,7 @@ export const runLocalChannel = async ({
23
23
  createSessionServices,
24
24
  skipUserSession = false,
25
25
  respondWith404 = true,
26
- coerceToArray = false,
26
+ coerceDataFromSchema = true,
27
27
  logWarningsForStatusCodes = [],
28
28
  bubbleErrors = false,
29
29
  }: Partial<Pick<CoreAPIChannel<unknown, any>, 'route'>> &
@@ -51,7 +51,7 @@ export const runLocalChannel = async ({
51
51
  route,
52
52
  singletonServices,
53
53
  skipUserSession,
54
- coerceToArray,
54
+ coerceDataFromSchema,
55
55
  userSession,
56
56
  })
57
57
 
@@ -64,7 +64,7 @@ export const runChannelConnect = async ({
64
64
  createSessionServices,
65
65
  channelStore,
66
66
  channelHandlerFactory,
67
- coerceToArray = false,
67
+ coerceDataFromSchema = true,
68
68
  logWarningsForStatusCodes = [],
69
69
  respondWith404 = true,
70
70
  bubbleErrors = false,
@@ -86,7 +86,7 @@ export const runChannelConnect = async ({
86
86
  request,
87
87
  route,
88
88
  singletonServices,
89
- coerceToArray,
89
+ coerceDataFromSchema,
90
90
  userSession,
91
91
  })
92
92
 
@@ -19,7 +19,7 @@ import {
19
19
  NotFoundError,
20
20
  } from '../errors/errors.js'
21
21
  import { closeSessionServices } from '../utils.js'
22
- import { coerceQueryStringToArray, validateSchema } from '../schema.js'
22
+ import { coerceTopLevelDataFromSchema, validateSchema } from '../schema.js'
23
23
  import {
24
24
  PikkuUserSessionService,
25
25
  UserSessionService,
@@ -215,7 +215,7 @@ const executeRouteWithMiddleware = async (
215
215
  },
216
216
  http: PikkuHTTP | undefined,
217
217
  options: {
218
- coerceToArray: boolean
218
+ coerceDataFromSchema: boolean
219
219
  }
220
220
  ) => {
221
221
  const { matchedPath, params, route, middleware, schemaName } = matchedRoute
@@ -279,9 +279,9 @@ const executeRouteWithMiddleware = async (
279
279
  data
280
280
  )
281
281
 
282
- // Coerce query string parameters to arrays if specified by the schema
283
- if (options.coerceToArray && schemaName) {
284
- coerceQueryStringToArray(schemaName, data)
282
+ // Coerce (top level) query string parameters or date objects if specified by the schema
283
+ if (options.coerceDataFromSchema && schemaName) {
284
+ coerceTopLevelDataFromSchema(schemaName, data)
285
285
  }
286
286
 
287
287
  // Execute permission checks
@@ -396,7 +396,7 @@ export const fetchData = async <In, Out>(
396
396
  skipUserSession = false,
397
397
  respondWith404 = true,
398
398
  logWarningsForStatusCodes = [],
399
- coerceToArray = false,
399
+ coerceDataFromSchema = true,
400
400
  bubbleErrors = false,
401
401
  }: RunRouteOptions & RunRouteParams
402
402
  ): Promise<Out | void> => {
@@ -436,7 +436,7 @@ export const fetchData = async <In, Out>(
436
436
  },
437
437
  matchedRoute,
438
438
  http,
439
- { coerceToArray }
439
+ { coerceDataFromSchema }
440
440
  ))
441
441
 
442
442
  return result
@@ -30,7 +30,7 @@ export type RunRouteOptions = Partial<{
30
30
  skipUserSession: boolean
31
31
  respondWith404: boolean
32
32
  logWarningsForStatusCodes: number[]
33
- coerceToArray: boolean
33
+ coerceDataFromSchema: boolean
34
34
  bubbleErrors: boolean
35
35
  }>
36
36
 
@@ -1,6 +1,6 @@
1
1
  import { test, describe, before } from 'node:test'
2
2
  import * as assert from 'assert'
3
- import { addSchema, coerceQueryStringToArray } from './schema.js'
3
+ import { addSchema, coerceTopLevelDataFromSchema } from './schema.js'
4
4
 
5
5
  describe('Schema', () => {
6
6
  describe('coerceQueryStringToArray', () => {
@@ -24,32 +24,32 @@ describe('Schema', () => {
24
24
 
25
25
  test('should split a string into an array for properties of type array', () => {
26
26
  const data = { tags: 'a,b,c' }
27
- coerceQueryStringToArray('testSchema', data)
27
+ coerceTopLevelDataFromSchema('testSchema', data)
28
28
  assert.deepStrictEqual(data.tags, ['a', 'b', 'c'])
29
29
  })
30
30
 
31
31
  test('should not modify properties of type array if they are already arrays', () => {
32
32
  const data = { tags: ['a', 'b', 'c'] }
33
- coerceQueryStringToArray('testSchema', data)
33
+ coerceTopLevelDataFromSchema('testSchema', data)
34
34
  assert.deepStrictEqual(data.tags, ['a', 'b', 'c'])
35
35
  })
36
36
 
37
37
  test('should not modify properties that are not type array', () => {
38
38
  const data = { count: 5, name: 'example' }
39
- coerceQueryStringToArray('testSchema', data)
39
+ coerceTopLevelDataFromSchema('testSchema', data)
40
40
  assert.strictEqual(data.count, 5)
41
41
  assert.strictEqual(data.name, 'example')
42
42
  })
43
43
 
44
44
  test('should handle cases where the data object does not have a key present in the schema', () => {
45
45
  const data = { unknownKey: 'shouldRemain' }
46
- coerceQueryStringToArray('testSchema', data)
46
+ coerceTopLevelDataFromSchema('testSchema', data)
47
47
  assert.strictEqual(data.unknownKey, 'shouldRemain')
48
48
  })
49
49
 
50
50
  test('should handle cases where schema properties contain boolean values', () => {
51
51
  const data = { tags: 'a,b,c', isActive: 'true' }
52
- coerceQueryStringToArray('booleanSchema', data)
52
+ coerceTopLevelDataFromSchema('booleanSchema', data)
53
53
  assert.deepStrictEqual(data.tags, ['a', 'b', 'c'])
54
54
  assert.strictEqual(data.isActive, 'true') // No coercion should happen
55
55
  })
package/src/schema.ts CHANGED
@@ -58,7 +58,7 @@ const validateAllSchemasLoaded = (
58
58
  }
59
59
  }
60
60
 
61
- export const coerceQueryStringToArray = (schemaName: string, data: any) => {
61
+ export const coerceTopLevelDataFromSchema = (schemaName: string, data: any) => {
62
62
  const schema = pikkuState('misc', 'schemas').get(schemaName)
63
63
  for (const key in schema.properties) {
64
64
  const property = schema.properties[key]
@@ -71,6 +71,8 @@ export const coerceQueryStringToArray = (schemaName: string, data: any) => {
71
71
  }
72
72
  if (type === 'array' && typeof data[key] === 'string') {
73
73
  data[key] = data[key].split(',')
74
+ } else if (type === 'string' && property.format === 'date-time') {
75
+ data[key] = new Date(data[key])
74
76
  }
75
77
  }
76
78
  }
@@ -1,39 +1,91 @@
1
- import { ContentService } from './content-service.js'
2
- import { Logger } from './logger.js'
1
+ import { promises } from 'fs'
2
+ import { mkdir } from 'fs/promises'
3
+ import { ContentService, Logger } from '@pikku/core/services'
3
4
 
4
5
  export interface LocalContentConfig {
5
- contentDirectory: string
6
- assetsUrl: string
7
- uploadUrl: string
6
+ localFileUploadPath: string
7
+ uploadUrlPrefix: string
8
+ assetUrlPrefix: string
9
+ sizeLimit?: string
8
10
  }
9
11
 
10
- /**
11
- * Service for handling local content operations.
12
- */
13
- export abstract class LocalContent implements ContentService {
14
- constructor(_config: LocalContentConfig, _logger: Logger) {}
15
-
16
- public abstract getUploadURL: (
17
- fileKey: string,
18
- contentType: string
19
- ) => Promise<{ uploadUrl: string; assetKey: string }>
20
-
21
- /**
22
- * Initializes the local content service.
23
- */
24
- public abstract init(): Promise<void>
25
-
26
- /**
27
- * Signs a URL to provide secure access.
28
- * @param url - The URL to sign.
29
- * @returns A promise that resolves to the signed URL.
30
- */
31
- public abstract signURL(url: string): Promise<string>
32
-
33
- /**
34
- * Signs a content key to provide secure access to an asset.
35
- * @param assetKey - The key of the asset to sign.
36
- * @returns A promise that resolves to the signed content key URL.
37
- */
38
- public abstract signContentKey(assetKey: string): Promise<string>
12
+ export class LocalContent implements ContentService {
13
+ constructor(
14
+ private config: LocalContentConfig,
15
+ private logger: Logger
16
+ ) {}
17
+
18
+ public async init() {}
19
+
20
+ public async signURL(url: string): Promise<string> {
21
+ return `${url}?signed=true`
22
+ }
23
+
24
+ public async signContentKey(assetKey: string): Promise<string> {
25
+ return `${this.config.assetUrlPrefix}/${assetKey}?signed=true`
26
+ }
27
+
28
+ public async getUploadURL(assetKey: string) {
29
+ this.logger.debug(`Going to upload with key: ${assetKey}`)
30
+ return {
31
+ uploadUrl: `${this.config.uploadUrlPrefix}/${assetKey}`,
32
+ assetKey,
33
+ }
34
+ }
35
+
36
+ public async writeFile(assetKey: string, buffer: Buffer): Promise<boolean> {
37
+ this.logger.debug(`Writing file: ${assetKey}`)
38
+ try {
39
+ const path = `${this.config.localFileUploadPath}/${assetKey}`
40
+ await this.createDirectoryForFile(path)
41
+ await promises.writeFile(path, buffer)
42
+ } catch (e) {
43
+ console.error(e)
44
+ this.logger.error(`Error inserting content ${assetKey}`, e)
45
+ }
46
+ return false
47
+ }
48
+
49
+ public async copyFile(
50
+ assetKey: string,
51
+ fromAbsolutePath: string
52
+ ): Promise<boolean> {
53
+ this.logger.debug(`Writing file: ${assetKey}`)
54
+ try {
55
+ const path = `${this.config.localFileUploadPath}/${assetKey}`
56
+ await this.createDirectoryForFile(path)
57
+ await promises.copyFile(fromAbsolutePath, path)
58
+ } catch (e) {
59
+ console.error(e)
60
+ this.logger.error(`Error inserting content ${assetKey}`, e)
61
+ }
62
+ return false
63
+ }
64
+
65
+ public async readFile(assetKey: string): Promise<Buffer> {
66
+ this.logger.debug(`getting key: ${assetKey}`)
67
+ try {
68
+ return await promises.readFile(
69
+ `${this.config.localFileUploadPath}/${assetKey}`
70
+ )
71
+ } catch (e) {
72
+ this.logger.error(`Error get content ${assetKey}`)
73
+ throw e
74
+ }
75
+ }
76
+
77
+ public async deleteFile(assetKey: string): Promise<boolean> {
78
+ this.logger.debug(`deleting key: ${assetKey}`)
79
+ try {
80
+ await promises.unlink(`${this.config.localFileUploadPath}/${assetKey}`)
81
+ } catch (e: any) {
82
+ this.logger.error(`Error deleting content ${assetKey}`, e)
83
+ }
84
+ return false
85
+ }
86
+
87
+ private async createDirectoryForFile(path: string): Promise<void> {
88
+ const dir = path.split('/').slice(0, -1).join('/')
89
+ await mkdir(dir, { recursive: true })
90
+ }
39
91
  }
@@ -1 +1 @@
1
- {"fileNames":["../../node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/typescript/lib/lib.es2021.d.ts","../../node_modules/typescript/lib/lib.es2022.d.ts","../../node_modules/typescript/lib/lib.es2023.d.ts","../../node_modules/typescript/lib/lib.es2024.d.ts","../../node_modules/typescript/lib/lib.esnext.d.ts","../../node_modules/typescript/lib/lib.dom.d.ts","../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../node_modules/typescript/lib/lib.dom.asynciterable.d.ts","../../node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../../node_modules/typescript/lib/lib.scripthost.d.ts","../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../node_modules/typescript/lib/lib.es2023.array.d.ts","../../node_modules/typescript/lib/lib.es2023.collection.d.ts","../../node_modules/typescript/lib/lib.es2023.intl.d.ts","../../node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts","../../node_modules/typescript/lib/lib.es2024.collection.d.ts","../../node_modules/typescript/lib/lib.es2024.object.d.ts","../../node_modules/typescript/lib/lib.es2024.promise.d.ts","../../node_modules/typescript/lib/lib.es2024.regexp.d.ts","../../node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2024.string.d.ts","../../node_modules/typescript/lib/lib.esnext.array.d.ts","../../node_modules/typescript/lib/lib.esnext.collection.d.ts","../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../node_modules/typescript/lib/lib.esnext.iterator.d.ts","../../node_modules/typescript/lib/lib.decorators.d.ts","../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../node_modules/typescript/lib/lib.esnext.full.d.ts","../../node_modules/cookie/dist/index.d.ts","./src/services/logger.ts","./src/services/variables-service.ts","./src/channel/eventhub-service.ts","./src/services/schema-service.ts","./src/channel/channel-store.ts","./src/services/user-session-service.ts","./src/time-utils.ts","./src/services/jwt-service.ts","./src/services/secret-service.ts","./src/types/core.types.ts","./src/types/functions.types.ts","./src/http/http-routes.types.ts","./src/channel/channel.types.ts","./src/scheduler/scheduler.types.ts","./src/pikku-state.ts","./src/errors/error-handler.ts","./src/errors/errors.ts","./src/handle-error.ts","./src/pikku-request.ts","./src/pikku-response.ts","./src/services/content-service.ts","./src/services/logger-console.ts","./src/services/local-variables.ts","./src/services/local-secrets.ts","./src/services/index.ts","../../node_modules/picoquery/lib/shared.d.ts","../../node_modules/picoquery/lib/parse.d.ts","../../node_modules/picoquery/lib/stringify.d.ts","../../node_modules/picoquery/lib/main.d.ts","./src/http/pikku-fetch-http-request.ts","./src/http/pikku-fetch-http-response.ts","./src/http/incomingmessage-to-request-convertor.ts","./src/http/log-http-routes.ts","./src/permissions.ts","../../node_modules/path-to-regexp/dist/index.d.ts","./src/utils.ts","./src/schema.ts","./src/middleware-runner.ts","./src/http/http-route-runner.ts","./src/http/index.ts","./src/channel/channel-runner.ts","./src/channel/log-channels.ts","./src/channel/pikku-abstract-channel-handler.ts","./src/channel/eventhub-store.ts","./src/channel/index.ts","./src/scheduler/scheduler-runner.ts","./src/scheduler/log-schedulers.ts","./src/scheduler/index.ts","./src/errors/index.ts","./src/middleware/auth-apikey.ts","./src/middleware/auth-cookie.ts","./src/middleware/auth-bearer.ts","./src/middleware/index.ts","./src/index.ts","./src/channel/channel-handler.ts","./src/channel/local/local-channel-handler.ts","./src/channel/local/local-channel-runner.ts","./src/channel/local/local-eventhub-service.ts","./src/channel/local/index.ts","./src/channel/serverless/serverless-channel-runner.ts","./src/channel/serverless/index.ts","./src/middleware/timeout.ts","./src/services/local-content.ts","./node_modules/@types/node/compatibility/disposable.d.ts","./node_modules/@types/node/compatibility/indexable.d.ts","./node_modules/@types/node/compatibility/iterators.d.ts","./node_modules/@types/node/compatibility/index.d.ts","./node_modules/@types/node/globals.typedarray.d.ts","./node_modules/@types/node/buffer.buffer.d.ts","../../node_modules/buffer/index.d.ts","./node_modules/undici-types/header.d.ts","./node_modules/undici-types/readable.d.ts","./node_modules/undici-types/file.d.ts","./node_modules/undici-types/fetch.d.ts","./node_modules/undici-types/formdata.d.ts","./node_modules/undici-types/connector.d.ts","./node_modules/undici-types/client.d.ts","./node_modules/undici-types/errors.d.ts","./node_modules/undici-types/dispatcher.d.ts","./node_modules/undici-types/global-dispatcher.d.ts","./node_modules/undici-types/global-origin.d.ts","./node_modules/undici-types/pool-stats.d.ts","./node_modules/undici-types/pool.d.ts","./node_modules/undici-types/handlers.d.ts","./node_modules/undici-types/balanced-pool.d.ts","./node_modules/undici-types/agent.d.ts","./node_modules/undici-types/mock-interceptor.d.ts","./node_modules/undici-types/mock-agent.d.ts","./node_modules/undici-types/mock-client.d.ts","./node_modules/undici-types/mock-pool.d.ts","./node_modules/undici-types/mock-errors.d.ts","./node_modules/undici-types/proxy-agent.d.ts","./node_modules/undici-types/env-http-proxy-agent.d.ts","./node_modules/undici-types/retry-handler.d.ts","./node_modules/undici-types/retry-agent.d.ts","./node_modules/undici-types/api.d.ts","./node_modules/undici-types/interceptors.d.ts","./node_modules/undici-types/util.d.ts","./node_modules/undici-types/cookies.d.ts","./node_modules/undici-types/patch.d.ts","./node_modules/undici-types/websocket.d.ts","./node_modules/undici-types/eventsource.d.ts","./node_modules/undici-types/filereader.d.ts","./node_modules/undici-types/diagnostics-channel.d.ts","./node_modules/undici-types/content-type.d.ts","./node_modules/undici-types/cache.d.ts","./node_modules/undici-types/index.d.ts","./node_modules/@types/node/globals.d.ts","./node_modules/@types/node/assert.d.ts","./node_modules/@types/node/assert/strict.d.ts","./node_modules/@types/node/async_hooks.d.ts","./node_modules/@types/node/buffer.d.ts","./node_modules/@types/node/child_process.d.ts","./node_modules/@types/node/cluster.d.ts","./node_modules/@types/node/console.d.ts","./node_modules/@types/node/constants.d.ts","./node_modules/@types/node/crypto.d.ts","./node_modules/@types/node/dgram.d.ts","./node_modules/@types/node/diagnostics_channel.d.ts","./node_modules/@types/node/dns.d.ts","./node_modules/@types/node/dns/promises.d.ts","./node_modules/@types/node/domain.d.ts","./node_modules/@types/node/dom-events.d.ts","./node_modules/@types/node/events.d.ts","./node_modules/@types/node/fs.d.ts","./node_modules/@types/node/fs/promises.d.ts","./node_modules/@types/node/http.d.ts","./node_modules/@types/node/http2.d.ts","./node_modules/@types/node/https.d.ts","./node_modules/@types/node/inspector.d.ts","./node_modules/@types/node/module.d.ts","./node_modules/@types/node/net.d.ts","./node_modules/@types/node/os.d.ts","./node_modules/@types/node/path.d.ts","./node_modules/@types/node/perf_hooks.d.ts","./node_modules/@types/node/process.d.ts","./node_modules/@types/node/punycode.d.ts","./node_modules/@types/node/querystring.d.ts","./node_modules/@types/node/readline.d.ts","./node_modules/@types/node/readline/promises.d.ts","./node_modules/@types/node/repl.d.ts","./node_modules/@types/node/sea.d.ts","./node_modules/@types/node/sqlite.d.ts","./node_modules/@types/node/stream.d.ts","./node_modules/@types/node/stream/promises.d.ts","./node_modules/@types/node/stream/consumers.d.ts","./node_modules/@types/node/stream/web.d.ts","./node_modules/@types/node/string_decoder.d.ts","./node_modules/@types/node/test.d.ts","./node_modules/@types/node/timers.d.ts","./node_modules/@types/node/timers/promises.d.ts","./node_modules/@types/node/tls.d.ts","./node_modules/@types/node/trace_events.d.ts","./node_modules/@types/node/tty.d.ts","./node_modules/@types/node/url.d.ts","./node_modules/@types/node/util.d.ts","./node_modules/@types/node/v8.d.ts","./node_modules/@types/node/vm.d.ts","./node_modules/@types/node/wasi.d.ts","./node_modules/@types/node/worker_threads.d.ts","./node_modules/@types/node/zlib.d.ts","./node_modules/@types/node/index.d.ts"],"fileIdsList":[[152,195],[109,110,111,152,195],[109,152,195],[152,192,195],[152,194,195],[195],[152,195,200,230],[152,195,196,201,207,208,215,227,238],[152,195,196,197,207,215],[147,148,149,152,195],[152,195,198,239],[152,195,199,200,208,216],[152,195,200,227,235],[152,195,201,203,207,215],[152,194,195,202],[152,195,203,204],[152,195,207],[152,195,205,207],[152,194,195,207],[152,195,207,208,209,227,238],[152,195,207,208,209,222,227,230],[152,190,195,243],[152,190,195,203,207,210,215,227,238],[152,195,207,208,210,211,215,227,235,238],[152,195,210,212,227,235,238],[150,151,152,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244],[152,195,207,213],[152,195,214,238],[152,195,203,207,215,227],[152,195,216],[152,195,217],[152,194,195,218],[152,192,193,194,195,196,197,198,199,200,201,202,203,204,205,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244],[152,195,220],[152,195,221],[152,195,207,222,223],[152,195,222,224,239,241],[152,195,207,227,228,229,230],[152,195,227,229],[152,195,227,228],[152,195,230],[152,195,231],[152,192,195,227],[152,195,207,233,234],[152,195,233,234],[152,195,200,215,227,235],[152,195,236],[152,195,215,237],[152,195,210,221,238],[152,195,200,239],[152,195,227,240],[152,195,214,241],[152,195,242],[152,195,200,207,209,218,227,238,241,243],[152,195,227,244],[152,162,166,195,238],[152,162,195,227,238],[152,157,195],[152,159,162,195,235,238],[152,195,215,235],[152,195,245],[152,157,195,245],[152,159,162,195,215,238],[152,154,155,158,161,195,207,227,238],[152,162,169,195],[152,154,160,195],[152,162,183,184,195],[152,158,162,195,230,238,245],[152,183,195,245],[152,156,157,195,245],[152,162,195],[152,156,157,158,159,160,161,162,163,164,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,184,185,186,187,188,189,195],[152,162,177,195],[152,162,169,170,195],[152,160,162,170,171,195],[152,161,195],[152,154,157,162,195],[152,162,166,170,171,195],[152,166,195],[152,160,162,165,195,238],[152,154,159,162,169,195],[152,195,227],[152,157,162,183,195,243,245],[93,96,98,117,152,195],[89,96,98,100,118,120,152,195],[93,152,195],[93,94,95,99,152,195],[86,88,96,124,125,126,127,152,195],[139,140,141,152,195],[126,152,195],[89,93,95,96,101,119,121,122,124,138,139,152,195],[86,96,152,195],[98,108,152,195],[96,152,195],[143,152,195],[88,89,93,95,96,98,101,113,119,121,122,124,138,152,195],[98,152,195],[99,152,195],[99,100,152,195],[84,95,99,100,152,195],[89,93,95,98,100,101,113,114,117,118,119,120,121,152,195],[83,93,94,99,152,195],[95,113,114,115,116,122,152,195],[83,95,100,112,152,195],[83,95,152,195],[90,93,94,98,102,103,108,121,122,123,124,128,129,131,132,136,152,195],[89,93,152,195],[93,100,152,195],[83,90,93,152,195],[133,134,135,152,195],[93,94,152,195],[93,95,96,97,99,152,195],[97,129,130,152,195],[93,94,97,98,99,119,152,195],[84,87,98,100,152,195],[84,85,87,89,91,92,104,105,106,107,152,195],[90,152,195],[84,104,152,195],[85,92,106,152,195],[85,152,195],[84,152,195],[88,93,152,195],[84,85,86,87,89,91,92,95,152,195],[93,96,152,195]],"fileInfos":[{"version":"e41c290ef7dd7dab3493e6cbe5909e0148edf4a8dad0271be08edec368a0f7b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"27bdc30a0e32783366a5abeda841bc22757c1797de8681bbe81fbc735eeb1c10","impliedFormat":1},{"version":"8fd575e12870e9944c7e1d62e1f5a73fcf23dd8d3a321f2a2c74c20d022283fe","impliedFormat":1},{"version":"e12a46ce14b817d4c9e6b2b478956452330bf00c9801b79de46f7a1815b5bd40","impliedFormat":1},{"version":"4fd3f3422b2d2a3dfd5cdd0f387b3a8ec45f006c6ea896a4cb41264c2100bb2c","affectsGlobalScope":true,"impliedFormat":1},{"version":"69e65d976bf166ce4a9e6f6c18f94d2424bf116e90837ace179610dbccad9b42","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7a3c8b952931daebdfc7a2897c53c0a1c73624593fa070e46bd537e64dcd20a","affectsGlobalScope":true,"impliedFormat":1},{"version":"80e18897e5884b6723488d4f5652167e7bb5024f946743134ecc4aa4ee731f89","affectsGlobalScope":true,"impliedFormat":1},{"version":"cd034f499c6cdca722b60c04b5b1b78e058487a7085a8e0d6fb50809947ee573","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"62bb211266ee48b2d0edf0d8d1b191f0c24fc379a82bd4c1692a082c540bc6b1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"936e80ad36a2ee83fc3caf008e7c4c5afe45b3cf3d5c24408f039c1d47bdc1df","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"fef8cfad2e2dc5f5b3d97a6f4f2e92848eb1b88e897bb7318cef0e2820bceaab","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"f1e2a172204962276504466a6393426d2ca9c54894b1ad0a6c9dad867a65f876","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"b5ce7a470bc3628408429040c4e3a53a27755022a32fd05e2cb694e7015386c7","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"bab26767638ab3557de12c900f0b91f710c7dc40ee9793d5a27d32c04f0bf646","affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e3c06ea092138bf9fa5e874a1fdbc9d54805d074bee1de31b99a11e2fec239d","affectsGlobalScope":true,"impliedFormat":1},{"version":"87dc0f382502f5bbce5129bdc0aea21e19a3abbc19259e0b43ae038a9fc4e326","affectsGlobalScope":true,"impliedFormat":1},{"version":"b1cb28af0c891c8c96b2d6b7be76bd394fddcfdb4709a20ba05a7c1605eea0f9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true,"impliedFormat":1},{"version":"56e4ed5aab5f5920980066a9409bfaf53e6d21d3f8d020c17e4de584d29600ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ece9f17b3866cc077099c73f4983bddbcb1dc7ddb943227f1ec070f529dedd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a6282c8827e4b9a95f4bf4f5c205673ada31b982f50572d27103df8ceb8013c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1c9319a09485199c1f7b0498f2988d6d2249793ef67edda49d1e584746be9032","affectsGlobalScope":true,"impliedFormat":1},{"version":"e3a2a0cee0f03ffdde24d89660eba2685bfbdeae955a6c67e8c4c9fd28928eeb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"51ad4c928303041605b4d7ae32e0c1ee387d43a24cd6f1ebf4a2699e1076d4fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true,"impliedFormat":1},{"version":"61d6a2092f48af66dbfb220e31eea8b10bc02b6932d6e529005fd2d7b3281290","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"bde31fd423cd93b0eff97197a3f66df7c93e8c0c335cbeb113b7ff1ac35c23f4","impliedFormat":1},{"version":"5a7ebcf5fe8ac590dd03af1bbe426dfed639a3490fb1e5d6b934e45643b8ea1b","impliedFormat":1},{"version":"0c9b1eda8101fd8bf376fad28c6fabf20acfc30d6402a94ee46453a4ee1d5b04","signature":"d6d8e1704f13488e91b5ae6209958d3d76afc84d7e583670f1666371022ea603","impliedFormat":99},{"version":"f460dc79f7250fa2dd7f9d7f15ad9c18168289524b94eee4d63d1a0bd8f66fdb","signature":"07ae4cece96eb084ea1ea8f92dae8106a6ef555cd859211a406a9efb6ab62c0d","impliedFormat":99},{"version":"eae5739206d003069a28b7d894dc9bc2712d5a2459298dce210114de6a512630","signature":"69246ea7d84fde6b17161d65cd5246196a46284d64e12c846ee5eb38efc22f1e","impliedFormat":99},{"version":"7b8c33cc83ddb335bbff1339d2798355ef151f6346490fb7937c542766c966b6","signature":"bdd61b3cc3ff69aa7b588eefcfb7965ef108cf78e273ed2b06b1af9ff3e8895b","impliedFormat":99},{"version":"189ac1e713c72a4c4775b2e300d252c47389b2eec6f8a13b0934263e6ffa6d68","signature":"f0136cccbf1eca046090fe63f450d21946bf67b21352c4b5a436d5adfd4640d5","impliedFormat":99},{"version":"9f3114fcfc075b1d767198ad4d447cc72b7397d245914dd3830dc9232ce82de4","signature":"3ee6cb10da36d74ab7e056df51bb65f41e20df94cffcf813ba688c1411876c12","impliedFormat":99},{"version":"06b2b49bbdc07806329bfd74f324a073f0ea1349596c8efcb21378ef31c7b0c6","signature":"b5e406dcf54e8f52eb702a9e8ae640ed5482759a1d9acf74958ec18cadc480bf","impliedFormat":99},{"version":"c0607865181a590858fb3e828dc6e81cc5597eeeb6974e9f099283357d2c9583","signature":"62986f8902b52095026bdba058ff44392c0ec26c78d4768f7aab31e78d965f20","impliedFormat":99},{"version":"f34bba872994525b166d1168c033c6c4a9d275f030c517a4932a3d96466df721","signature":"d293df64831379effa58ef7c63edf7b96e59e2f85739d5ac91ac8f27cd772df0","impliedFormat":99},{"version":"397e7c1d98bd86ef0eca68fc48519214978e05f5893d84bb7132e83ec16a732d","signature":"9de547790bd68998cc092708edc991efe88c8db194ded298e4eabfe6b450cb9c","impliedFormat":99},{"version":"1633ea5ae726d45cfb6001b47d56da665741c1631e72f0560ce0ff2d1789c6e1","signature":"2a1cc5358d50e9152c92bfc484d25675f5984922b54f68a6c6ff4ae4d3563086","impliedFormat":99},{"version":"11563b88415f8aafd2e62ce1c19f6c3efee1774d604a3c353c6eae048e4aef52","signature":"089fcdb6d25b2959b683bca3de04792a338c010ea2b5aaebd733cc53270a181e","impliedFormat":99},{"version":"ed41b41832ce37d4ea960b371dab43ef13ba886a0f6373593360f866f2cb39cc","signature":"51579a31864cbf3dae1e6ba17a71fcfdd5ab81c2f60be362c488ac97ae4c9083","impliedFormat":99},{"version":"286e09cf3c4f29724ecac6008501593c60dba91d81b8e1f9fe22881a75cbbcb7","signature":"d38c56b8e2b832569b826ad8962e57889091d6478f120a7ff29132d64d7a1875","impliedFormat":99},{"version":"c8196ff02c752392fcb9a58a474e7cfa57d8c947e4a77ca0ee3be72d891c34c4","signature":"4d72606689dd705e0100c44b469c08792cebbc2d85106f8e54285447de56a249","impliedFormat":99},{"version":"63e858abbf63ff09c4d88d8a03bb09a28b16aff73ac85ec4e8831319f54b5f69","signature":"fc229cda030c2974a05e03c5c86eb2c32d26f58b6f49b1b610c431f9159d81e6","impliedFormat":99},{"version":"a862d1db2db80c379ed34d906072a4bee7194bd2674f28a59c9a782c334e0dc6","signature":"5861423c8f263f4d91a00297b6d74669596935b8f31f29a94847a056aac13a6f","impliedFormat":99},{"version":"d8650f40cb31973b401695017cfed0289f8ace9f3db1bd4bff0e6a0d22c2159f","signature":"c9fdf0f6f37a42b2269625e430e98baba9337e89d1b70a4e4ae1142ab39ed16d","impliedFormat":99},{"version":"95aab46e25cd2603c59dcba5903a7dac51524975a59775d46da09917b7fa7a86","signature":"fd757c959e0c11a7265b85e84f793fb96d140ab58300ff12e5302f708c12df8f","impliedFormat":99},{"version":"fbf264ed1294a2377313139a7ffbc1c7c0a1245641fe27c7111b7294123aceed","signature":"4642b2ac614eb714017f6e7f630342cb93c3631d606771b201d560bc8f6c2ee3","impliedFormat":99},{"version":"82a5d4d3ccf1448c9d912d0cecb757e94c5d4a54c98f9e771c3e5ef08bbb1163","signature":"b4594f029996adc443729bba8ff83f2d98a00a02e10422c1b653ee9a7f1f3fb3","impliedFormat":99},{"version":"4c450f5553dd582c8e148c7522dab4dc20a25dbbceb00c21307ca3141a937bd6","signature":"2435079d0ee60718fb4b36adbd00a33649ec2ef6b7d2119fd8525307af38827b","impliedFormat":99},{"version":"46e36680394e51afe9bb5ecf8313d1f77ae93604388f169ce93ee6614b1fc837","signature":"4bfbe6eec6d673e4ec5e99b0a30fbee091958e5f3198d67604de383bb11a8e6b","impliedFormat":99},{"version":"7afcf38a3914fcda859cecef32c3c8d43facafd28bb2d28fce95dcfddd2085db","signature":"80ec71c3f5586270693412ea3547a6200fc799b5b7fa35b156c9f1984c66ab2b","impliedFormat":99},{"version":"e4dd77a1279e1fd3dfc58557f468c872cb51ae0ee3d75b16893cf486b97b99f9","signature":"62d923377ae858d5ca1d7d78eb18d6d65632597d3398352c01dd4c436d3372a0","impliedFormat":99},{"version":"b79c47c1952deb44203c7ad5e85ecc60e3eab751edcfae2eb39bddffdb2addc6","impliedFormat":99},{"version":"0fdeb386d5e17483c2b152f6b0f369ff234f57a4e333c44cb18f63480237aa0e","impliedFormat":99},{"version":"b170d7755fa9def5551bf76252d06e7f63d7ad46457f735688233499bd215f0e","impliedFormat":99},{"version":"a798b0af0f2c819bfba03f97cb2027676c06e5d259bb9eb948061d0c98ad887c","impliedFormat":99},{"version":"f694438b5a385e12c04aa767c094506d87b74b772700c85a74e847f01b552edb","signature":"a6f23c9db5bb94c55c4520e93c32fe2ee8964d986244b1f4e9db2bd8375b3270","impliedFormat":99},{"version":"722a0f06fcc3963e532d8051d7c1f869855eb7f64093e94d88333f513b66cb67","signature":"af588397446849841e3123bb5ce1f3e9179206c476fd3a834118a5bf56ac88dd","impliedFormat":99},{"version":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":99},{"version":"7c34c6a5f0d2764736a15cad253671882fec460a261e050cc203ee0f9d18de55","signature":"439cd298e3a7f9cd1fdbfa31d1ca8942192b3accbcf369586aabf533d02bdd73","impliedFormat":99},{"version":"75dbf3fa97d4604233f841d980cc4d1b84d519a3d5c89e34949e9a860a59a38e","signature":"cf21e19ef3f9a12497bf12504a455b299c456f7aa4f44eff54202636c0fe0c8d","impliedFormat":99},{"version":"ba82ccb10b660ba4e631cab0de696935ae02ffc54bc1693f821d577e6b17165b","impliedFormat":1},{"version":"902534fcb369bcf61b2afb1a07294096d820c431e3929b3f19cc9f5f050f76cb","signature":"9179b87d0dae14402bedfde99dbc42b824cf4652faa92d7358af232eef2e3efe","impliedFormat":99},{"version":"d72e52eecb1fa8815ad46be8b41dc413c0f231d7b47c5c31b7d8e294db9b430a","signature":"53415c7cda21bd3379b841860c0b46b805b94465036fb57426677ebb16247b8a","impliedFormat":99},{"version":"d6d158bea01b6ef28b7748f03a69e65d36b3aa04853a25b08921c787e6b9dfcf","signature":"e9b54b66f6786269ba3d7cab22d3c92c398a238a67f29f5197a9a9a5bb2627db","impliedFormat":99},{"version":"dfeace00e35d82310b5751cbd2e212c3736a0ec8639177aa4be73f56df4cbe5b","signature":"282f789b6325f1c7b085d458b9daa683a5b932fd9272a4866cffb0bda597ac86","impliedFormat":99},{"version":"f8ce0f9982fd48bf82cbf851f405c31907d076e3a3e6e51556648c543cd70d35","signature":"5e95a59e877fee0fc0541fc51a4a7d101e00d555fd34ae2ca427b1662e4e7417","impliedFormat":99},{"version":"71f4c8bd974be178e35067b043b747a54ba85b1ee2cecbee0a4ab1b2ccaca82c","signature":"4490d5d8a1e385be8d75b64b8e3d35eb443b24db0cd98832240bd582640bdf6c","impliedFormat":99},{"version":"f4bd0319ee19dec80db2df9e2833fa3ae75ea666617156c6ba22b0b5dfe722a2","signature":"fc7c785f58fc7994ebbd05ff48e90eb7820bbd2d6c106e87b77aa92ce1a8491a","impliedFormat":99},{"version":"e0fc1faa7b927923cca0635dbc2890e153d3ace8c532660c45eb826dfc1c0c39","signature":"620b7cf8b66911c558f2484fdeea68036aaec51c1d47301484904af255588107","impliedFormat":99},{"version":"e98ad6a408069d53689fa0eb977800ff020aea09782c7f1d0da6f9826fd37c07","signature":"0e84d0bd49e4d406121663f461a18b30d22553c3aca066b82281a641e4b3fa9c","impliedFormat":99},{"version":"f3c158a49f42dd80b528fd11e9366b325cbca9205482e3c07a80298e04bac6ae","signature":"ed437b1ff58b402d1f24bcbf6f4be362176ba5e8abbca4a7a41cf91dccc9df99","impliedFormat":99},{"version":"89dc4033302baf1f59785f361fbb1dd95da6ec5dc55714b5ea2da8fe4bd63480","signature":"0367f8989065ce1c3e65f4edd612e17e52d9bbded86ddea05136ca3a09fc21a3","impliedFormat":99},{"version":"687c1b6a1e893fb3bc932269827bcedd8b8ca8d65a7fe449a0fb20147dbb538d","signature":"813c86102644d3be59ce59e4a5192abe43983a186f72f2f0dd56f44d37cac4fe","impliedFormat":99},{"version":"0b688277a5a64522078804983d6869e308bd2e983f48871159f132c7ff7657c4","signature":"772fa2af8f8569c42f9c77211726e0e7f9b6d11f661bc7274393386db74a22a4","impliedFormat":99},{"version":"5a02696ef43cc74d954594dd09bbdb416498de3ec8b6abe0db2a80677b99fd22","signature":"89aa3cc6438ab46c2edcf993c04143579ee7f39809972d3fae22ad37f7e420dc","impliedFormat":99},{"version":"317f3b641e3ab1874491987a705491bb5ffb0e6c36adbecfcf0e6064f9c15db5","signature":"e3418c0cf118a1a58c6fa84806cd714e0d69db94a5deff6d501b61d475b091dc","impliedFormat":99},{"version":"3d3de07fc7df084a2c7e419c80dde45db2b00ef18fe4592a7561d3b38bb7fb18","signature":"c76871b0e812849e53baa7f64cab69e26a3d098784ee29a1a61eaf76e90ecae7","impliedFormat":99},{"version":"166bffd3fa42e07a1dda6acf18cd2c68e02d344b853894cc25375389f45788d3","signature":"b1df0819322860c218cc6221fff5eedb9fc72521fd4b39b8843aeb679a95e514","impliedFormat":99},{"version":"6c0b9557f49259d0373c3cd59ca5cf976f72b4c840e02ae9f166188044f2383f","signature":"1c05860f01c02b7a57388de5b5291906b10cb0cc64bab56bcc4e42625f637c66","impliedFormat":99},{"version":"4c91e36d9ae709ec60546a0003838e181ea57cce8049d85f7f2e792d30eacf9e","signature":"7b98c588c4bccf6f15731d1a947ddaa8a8dd59407b22c1edb0df32c45d51719f","impliedFormat":99},{"version":"cbdcfe5ab85b91c6fe771c18bb30173162212a8a49e5f18ca5f9eacec5889d6a","signature":"0154121b973f6ef0781cd9069ffd4564703a1ac5355f8e4599ee0031c5faba4a","impliedFormat":99},{"version":"665bb85ac0c6de975c461361ffec7c51352732c3f8183e1e01f87acd64e4b2c9","signature":"aee5f94c785a2411c367ab415b76f851bc39b0f7a9493bf9db97477484747828","impliedFormat":99},{"version":"6f54db6601e19225e7f8cdf6ce9bc44eca9395fa682b56245637b26f7dc78493","signature":"281c74c453809fb74d4f20f19df25419f60ccd45e5f910e6bfb6551d4d927810","impliedFormat":99},{"version":"5750cf945b62afe4bab47b5fd7f8017b461af5e4cc937e45d1ac2f6e0d24846d","signature":"2d5742531c4f0d0fffd5af8625a171c9fae960e0802d8d4023426dcd07f72620","impliedFormat":99},{"version":"61f99efd21d9abbb8c6ac936298b0ff114c5df78aece35b862bce8d1de964f2c","signature":"595aae9166f140eb6396b5b1d8e9d56dc75e48d4c6b4d7209d8d6a3b3af268df","impliedFormat":99},{"version":"df1e23fc688efec89f25bd29d9022698e1e02eea9058924f311e7aa29eaaea9f","signature":"c214854e5dca8e0efe6b41276869b43ab9cd687c42cd0b0bb2baf587ee202a05","impliedFormat":99},{"version":"acaac745478015289e38774deb5266dcaa63a9bbc01d09a4d134b6f372e2562e","signature":"3051f2c4dd86ce70a144a506e1dffbcbf7739fe84b6bd5dbe57e44457b7ae5e9","impliedFormat":99},{"version":"774eb3b1162c49abb6d1b08908302fbc917f3bd9d22527f2cf61d3d55dfec249","signature":"d88c59d124b3d55eb0c36b85ffb82180a2a947adf56de16a532efe8a2bae545a","impliedFormat":99},{"version":"efa94f89ea1ea7d8614374eaebbea7d4308258ad3f3e9da5725b14b2af478bf7","signature":"404f97b47fc2905a16a1a9d789ce222329463ad67d6d6a9c4167e93c044d93dc","impliedFormat":99},{"version":"70521b6ab0dcba37539e5303104f29b721bfb2940b2776da4cc818c07e1fefc1","affectsGlobalScope":true,"impliedFormat":1},{"version":"030e350db2525514580ed054f712ffb22d273e6bc7eddc1bb7eda1e0ba5d395e","affectsGlobalScope":true,"impliedFormat":1},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"a79e62f1e20467e11a904399b8b18b18c0c6eea6b50c1168bf215356d5bebfaf","affectsGlobalScope":true,"impliedFormat":1},{"version":"13af9e8fb6757946c48117315866177b95e554d1e773577bb6ca6e40083b6d73","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e9c23ba78aabc2e0a27033f18737a6df754067731e69dc5f52823957d60a4b6","impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"24bd580b5743dc56402c440dc7f9a4f5d592ad7a419f25414d37a7bfe11e342b","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","impliedFormat":1},{"version":"6bdc71028db658243775263e93a7db2fd2abfce3ca569c3cca5aee6ed5eb186d","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"e61be3f894b41b7baa1fbd6a66893f2579bfad01d208b4ff61daef21493ef0a8","impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"615ba88d0128ed16bf83ef8ccbb6aff05c3ee2db1cc0f89ab50a4939bfc1943f","impliedFormat":1},{"version":"a4d551dbf8746780194d550c88f26cf937caf8d56f102969a110cfaed4b06656","impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","impliedFormat":1},{"version":"317e63deeb21ac07f3992f5b50cdca8338f10acd4fbb7257ebf56735bf52ab00","impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","impliedFormat":1},{"version":"d2bc987ae352271d0d615a420dcf98cc886aa16b87fb2b569358c1fe0ca0773d","affectsGlobalScope":true,"impliedFormat":1},{"version":"f550093acc8ad4f64ad1c7e96153615f3351b81919dae5473375b81e1e8f272c","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"76103716ba397bbb61f9fa9c9090dca59f39f9047cb1352b2179c5d8e7f4e8d0","impliedFormat":1},{"version":"53eac70430b30089a3a1959d8306b0f9cfaf0de75224b68ef25243e0b5ad1ca3","affectsGlobalScope":true,"impliedFormat":1},{"version":"4314c7a11517e221f7296b46547dbc4df047115b182f544d072bdccffa57fc72","impliedFormat":1},{"version":"115971d64632ea4742b5b115fb64ed04bcaae2c3c342f13d9ba7e3f9ee39c4e7","impliedFormat":1},{"version":"c2510f124c0293ab80b1777c44d80f812b75612f297b9857406468c0f4dafe29","affectsGlobalScope":true,"impliedFormat":1},{"version":"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb","impliedFormat":1},{"version":"86956cc2eb9dd371d6fab493d326a574afedebf76eef3fa7833b8e0d9b52d6f1","affectsGlobalScope":true,"impliedFormat":1},{"version":"19d5f8d3930e9f99aa2c36258bf95abbe5adf7e889e6181872d1cdba7c9a7dd5","impliedFormat":1},{"version":"e6f5a38687bebe43a4cef426b69d34373ef68be9a6b1538ec0a371e69f309354","impliedFormat":1},{"version":"a6bf63d17324010ca1fbf0389cab83f93389bb0b9a01dc8a346d092f65b3605f","impliedFormat":1},{"version":"e009777bef4b023a999b2e5b9a136ff2cde37dc3f77c744a02840f05b18be8ff","impliedFormat":1},{"version":"1e0d1f8b0adfa0b0330e028c7941b5a98c08b600efe7f14d2d2a00854fb2f393","impliedFormat":1},{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true,"impliedFormat":1},{"version":"88bc59b32d0d5b4e5d9632ac38edea23454057e643684c3c0b94511296f2998c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1ff5a53a58e756d2661b73ba60ffe274231a4432d21f7a2d0d9e4f6aa99f4283","impliedFormat":1},{"version":"1e289f30a48126935a5d408a91129a13a59c9b0f8c007a816f9f16ef821e144e","impliedFormat":1},{"version":"2ea254f944dfe131df1264d1fb96e4b1f7d110195b21f1f5dbb68fdd394e5518","impliedFormat":1},{"version":"5135bdd72cc05a8192bd2e92f0914d7fc43ee077d1293dc622a049b7035a0afb","impliedFormat":1},{"version":"4f80de3a11c0d2f1329a72e92c7416b2f7eab14f67e92cac63bb4e8d01c6edc8","impliedFormat":1},{"version":"6d386bc0d7f3afa1d401afc3e00ed6b09205a354a9795196caed937494a713e6","impliedFormat":1},{"version":"fcc4b974b1cf7eca347490f11143ab2f5bc3c449b2073eb4d9494f6a16651e75","affectsGlobalScope":true,"impliedFormat":1},{"version":"23459c1915878a7c1e86e8bdb9c187cddd3aea105b8b1dfce512f093c969bc7e","impliedFormat":1},{"version":"b1b6ee0d012aeebe11d776a155d8979730440082797695fc8e2a5c326285678f","impliedFormat":1},{"version":"45875bcae57270aeb3ebc73a5e3fb4c7b9d91d6b045f107c1d8513c28ece71c0","impliedFormat":1},{"version":"1dc73f8854e5c4506131c4d95b3a6c24d0c80336d3758e95110f4c7b5cb16397","affectsGlobalScope":true,"impliedFormat":1},{"version":"5f6f1d54779d0b9ed152b0516b0958cd34889764c1190434bbf18e7a8bb884cd","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f16a7e4deafa527ed9995a772bb380eb7d3c2c0fd4ae178c5263ed18394db2c","impliedFormat":1},{"version":"c6b4e0a02545304935ecbf7de7a8e056a31bb50939b5b321c9d50a405b5a0bba","impliedFormat":1},{"version":"fab29e6d649aa074a6b91e3bdf2bff484934a46067f6ee97a30fcd9762ae2213","impliedFormat":1},{"version":"8145e07aad6da5f23f2fcd8c8e4c5c13fb26ee986a79d03b0829b8fce152d8b2","impliedFormat":1},{"version":"e1120271ebbc9952fdc7b2dd3e145560e52e06956345e6fdf91d70ca4886464f","impliedFormat":1},{"version":"814118df420c4e38fe5ae1b9a3bafb6e9c2aa40838e528cde908381867be6466","impliedFormat":1},{"version":"1cbae62b67f180291d211f0e1045fb923a8ec800cfbf9caa13223d769013dae2","impliedFormat":1},{"version":"553870e516f8c772b89f3820576152ebc70181d7994d96917bb943e37da7f8a7","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","impliedFormat":1},{"version":"745c4240220559bd340c8aeb6e3c5270a709d3565e934dc22a69c304703956bc","affectsGlobalScope":true,"impliedFormat":1},{"version":"2754d8221d77c7b382096651925eb476f1066b3348da4b73fe71ced7801edada","impliedFormat":1},{"version":"92949391eab12082218333a61b9070996f404ad662ff488d48ebb09564963d2b","affectsGlobalScope":true,"impliedFormat":1},{"version":"bef91efa0baea5d0e0f0f27b574a8bc100ce62a6d7e70220a0d58af6acab5e89","affectsGlobalScope":true,"impliedFormat":1},{"version":"282fd2a1268a25345b830497b4b7bf5037a5e04f6a9c44c840cb605e19fea841","impliedFormat":1},{"version":"5360a27d3ebca11b224d7d3e38e3e2c63f8290cb1fcf6c3610401898f8e68bc3","impliedFormat":1},{"version":"66ba1b2c3e3a3644a1011cd530fb444a96b1b2dfe2f5e837a002d41a1a799e60","impliedFormat":1},{"version":"7e514f5b852fdbc166b539fdd1f4e9114f29911592a5eb10a94bb3a13ccac3c4","impliedFormat":1},{"version":"7d6ff413e198d25639f9f01f16673e7df4e4bd2875a42455afd4ecc02ef156da","affectsGlobalScope":true,"impliedFormat":1},{"version":"cb094bb347d7df3380299eb69836c2c8758626ecf45917577707c03cf816b6f4","affectsGlobalScope":true,"impliedFormat":1},{"version":"f689c4237b70ae6be5f0e4180e8833f34ace40529d1acc0676ab8fb8f70457d7","impliedFormat":1},{"version":"ae25afbbf1ed5df63a177d67b9048bf7481067f1b8dc9c39212e59db94fc9fc6","impliedFormat":1},{"version":"ac5ed35e649cdd8143131964336ab9076937fa91802ec760b3ea63b59175c10a","impliedFormat":1},{"version":"52a8e7e8a1454b6d1b5ad428efae3870ffc56f2c02d923467f2940c454aa9aec","affectsGlobalScope":true,"impliedFormat":1},{"version":"78dc0513cc4f1642906b74dda42146bcbd9df7401717d6e89ea6d72d12ecb539","impliedFormat":1},{"version":"ad90122e1cb599b3bc06a11710eb5489101be678f2920f2322b0ac3e195af78d","impliedFormat":1}],"root":[[84,108],[113,117],[119,146]],"options":{"allowJs":false,"composite":true,"declaration":true,"emitDecoratorMetadata":false,"experimentalDecorators":false,"importHelpers":false,"module":100,"noImplicitAny":false,"noUnusedLocals":true,"outDir":"./dist","removeComments":false,"rootDir":"./src","skipLibCheck":true,"sourceMap":false,"strict":true,"strictNullChecks":true,"target":99,"useUnknownInCatchVariables":false},"referencedMap":[[153,1],[83,1],[118,1],[112,2],[110,3],[109,1],[111,3],[80,1],[81,1],[15,1],[13,1],[14,1],[19,1],[18,1],[2,1],[20,1],[21,1],[22,1],[23,1],[24,1],[25,1],[26,1],[27,1],[3,1],[28,1],[29,1],[4,1],[30,1],[34,1],[31,1],[32,1],[33,1],[35,1],[36,1],[37,1],[5,1],[38,1],[39,1],[40,1],[41,1],[6,1],[45,1],[42,1],[43,1],[44,1],[46,1],[7,1],[47,1],[52,1],[53,1],[48,1],[49,1],[50,1],[51,1],[8,1],[57,1],[54,1],[55,1],[56,1],[58,1],[9,1],[59,1],[60,1],[61,1],[63,1],[62,1],[64,1],[65,1],[10,1],[66,1],[67,1],[68,1],[11,1],[69,1],[70,1],[71,1],[72,1],[73,1],[1,1],[74,1],[75,1],[12,1],[78,1],[77,1],[82,1],[76,1],[79,1],[17,1],[16,1],[192,4],[193,4],[194,5],[152,6],[195,7],[196,8],[197,9],[147,1],[150,10],[148,1],[149,1],[198,11],[199,12],[200,13],[201,14],[202,15],[203,16],[204,16],[206,17],[205,18],[207,19],[208,20],[209,21],[191,22],[151,1],[210,23],[211,24],[212,25],[245,26],[213,27],[214,28],[215,29],[216,30],[217,31],[218,32],[219,33],[220,34],[221,35],[222,36],[223,36],[224,37],[225,1],[226,1],[227,38],[229,39],[228,40],[230,41],[231,42],[232,43],[233,44],[234,45],[235,46],[236,47],[237,48],[238,49],[239,50],[240,51],[241,52],[242,53],[243,54],[244,55],[169,56],[179,57],[168,56],[189,58],[160,59],[159,60],[188,61],[182,62],[187,63],[162,64],[176,65],[161,66],[185,67],[157,68],[156,61],[186,69],[158,70],[163,71],[164,1],[167,71],[154,1],[190,72],[180,73],[171,74],[172,75],[174,76],[170,77],[173,78],[183,61],[165,79],[166,80],[175,81],[155,82],[178,73],[177,71],[181,1],[184,83],[138,84],[124,85],[88,86],[96,87],[86,1],[127,1],[128,88],[142,89],[139,90],[140,91],[141,92],[125,93],[126,94],[144,95],[143,96],[99,97],[100,98],[132,99],[101,100],[122,101],[95,102],[115,1],[123,103],[116,93],[113,104],[114,105],[137,106],[121,107],[133,86],[135,108],[134,109],[136,110],[145,108],[117,111],[102,1],[103,1],[98,112],[131,113],[130,93],[129,114],[97,111],[120,115],[104,1],[108,116],[91,117],[146,118],[107,119],[106,120],[105,121],[84,1],[87,1],[92,1],[89,122],[85,1],[90,1],[93,123],[94,124],[119,121]],"latestChangedDtsFile":"./dist/services/local-content.d.ts","version":"5.7.3"}
1
+ {"fileNames":["../../node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/typescript/lib/lib.es2021.d.ts","../../node_modules/typescript/lib/lib.es2022.d.ts","../../node_modules/typescript/lib/lib.es2023.d.ts","../../node_modules/typescript/lib/lib.es2024.d.ts","../../node_modules/typescript/lib/lib.esnext.d.ts","../../node_modules/typescript/lib/lib.dom.d.ts","../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../node_modules/typescript/lib/lib.dom.asynciterable.d.ts","../../node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../../node_modules/typescript/lib/lib.scripthost.d.ts","../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../node_modules/typescript/lib/lib.es2023.array.d.ts","../../node_modules/typescript/lib/lib.es2023.collection.d.ts","../../node_modules/typescript/lib/lib.es2023.intl.d.ts","../../node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts","../../node_modules/typescript/lib/lib.es2024.collection.d.ts","../../node_modules/typescript/lib/lib.es2024.object.d.ts","../../node_modules/typescript/lib/lib.es2024.promise.d.ts","../../node_modules/typescript/lib/lib.es2024.regexp.d.ts","../../node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2024.string.d.ts","../../node_modules/typescript/lib/lib.esnext.array.d.ts","../../node_modules/typescript/lib/lib.esnext.collection.d.ts","../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../node_modules/typescript/lib/lib.esnext.iterator.d.ts","../../node_modules/typescript/lib/lib.decorators.d.ts","../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../node_modules/typescript/lib/lib.esnext.full.d.ts","../../node_modules/cookie/dist/index.d.ts","./src/services/logger.ts","./src/services/variables-service.ts","./src/channel/eventhub-service.ts","./src/services/schema-service.ts","./src/channel/channel-store.ts","./src/services/user-session-service.ts","./src/time-utils.ts","./src/services/jwt-service.ts","./src/services/secret-service.ts","./src/types/core.types.ts","./src/types/functions.types.ts","./src/http/http-routes.types.ts","./src/channel/channel.types.ts","./src/scheduler/scheduler.types.ts","./src/pikku-state.ts","./src/errors/error-handler.ts","./src/errors/errors.ts","./src/handle-error.ts","./src/pikku-request.ts","./src/pikku-response.ts","./src/services/content-service.ts","./src/services/logger-console.ts","./src/services/local-variables.ts","./src/services/local-secrets.ts","./src/services/index.ts","../../node_modules/picoquery/lib/shared.d.ts","../../node_modules/picoquery/lib/parse.d.ts","../../node_modules/picoquery/lib/stringify.d.ts","../../node_modules/picoquery/lib/main.d.ts","./src/http/pikku-fetch-http-request.ts","./src/http/pikku-fetch-http-response.ts","./src/http/incomingmessage-to-request-convertor.ts","./src/http/log-http-routes.ts","./src/permissions.ts","../../node_modules/path-to-regexp/dist/index.d.ts","./src/utils.ts","./src/schema.ts","./src/middleware-runner.ts","./src/http/http-route-runner.ts","./src/http/index.ts","./src/channel/channel-runner.ts","./src/channel/log-channels.ts","./src/channel/pikku-abstract-channel-handler.ts","./src/channel/eventhub-store.ts","./src/channel/index.ts","./src/scheduler/scheduler-runner.ts","./src/scheduler/log-schedulers.ts","./src/scheduler/index.ts","./src/errors/index.ts","./src/middleware/auth-apikey.ts","./src/middleware/auth-cookie.ts","./src/middleware/auth-bearer.ts","./src/middleware/index.ts","./src/index.ts","./src/channel/channel-handler.ts","./src/channel/local/local-channel-handler.ts","./src/channel/local/local-channel-runner.ts","./src/channel/local/local-eventhub-service.ts","./src/channel/local/index.ts","./src/channel/serverless/serverless-channel-runner.ts","./src/channel/serverless/index.ts","./src/middleware/timeout.ts","./src/services/local-content.ts","./node_modules/@types/node/compatibility/disposable.d.ts","./node_modules/@types/node/compatibility/indexable.d.ts","./node_modules/@types/node/compatibility/iterators.d.ts","./node_modules/@types/node/compatibility/index.d.ts","./node_modules/@types/node/globals.typedarray.d.ts","./node_modules/@types/node/buffer.buffer.d.ts","../../node_modules/buffer/index.d.ts","./node_modules/undici-types/header.d.ts","./node_modules/undici-types/readable.d.ts","./node_modules/undici-types/file.d.ts","./node_modules/undici-types/fetch.d.ts","./node_modules/undici-types/formdata.d.ts","./node_modules/undici-types/connector.d.ts","./node_modules/undici-types/client.d.ts","./node_modules/undici-types/errors.d.ts","./node_modules/undici-types/dispatcher.d.ts","./node_modules/undici-types/global-dispatcher.d.ts","./node_modules/undici-types/global-origin.d.ts","./node_modules/undici-types/pool-stats.d.ts","./node_modules/undici-types/pool.d.ts","./node_modules/undici-types/handlers.d.ts","./node_modules/undici-types/balanced-pool.d.ts","./node_modules/undici-types/agent.d.ts","./node_modules/undici-types/mock-interceptor.d.ts","./node_modules/undici-types/mock-agent.d.ts","./node_modules/undici-types/mock-client.d.ts","./node_modules/undici-types/mock-pool.d.ts","./node_modules/undici-types/mock-errors.d.ts","./node_modules/undici-types/proxy-agent.d.ts","./node_modules/undici-types/env-http-proxy-agent.d.ts","./node_modules/undici-types/retry-handler.d.ts","./node_modules/undici-types/retry-agent.d.ts","./node_modules/undici-types/api.d.ts","./node_modules/undici-types/interceptors.d.ts","./node_modules/undici-types/util.d.ts","./node_modules/undici-types/cookies.d.ts","./node_modules/undici-types/patch.d.ts","./node_modules/undici-types/websocket.d.ts","./node_modules/undici-types/eventsource.d.ts","./node_modules/undici-types/filereader.d.ts","./node_modules/undici-types/diagnostics-channel.d.ts","./node_modules/undici-types/content-type.d.ts","./node_modules/undici-types/cache.d.ts","./node_modules/undici-types/index.d.ts","./node_modules/@types/node/globals.d.ts","./node_modules/@types/node/assert.d.ts","./node_modules/@types/node/assert/strict.d.ts","./node_modules/@types/node/async_hooks.d.ts","./node_modules/@types/node/buffer.d.ts","./node_modules/@types/node/child_process.d.ts","./node_modules/@types/node/cluster.d.ts","./node_modules/@types/node/console.d.ts","./node_modules/@types/node/constants.d.ts","./node_modules/@types/node/crypto.d.ts","./node_modules/@types/node/dgram.d.ts","./node_modules/@types/node/diagnostics_channel.d.ts","./node_modules/@types/node/dns.d.ts","./node_modules/@types/node/dns/promises.d.ts","./node_modules/@types/node/domain.d.ts","./node_modules/@types/node/dom-events.d.ts","./node_modules/@types/node/events.d.ts","./node_modules/@types/node/fs.d.ts","./node_modules/@types/node/fs/promises.d.ts","./node_modules/@types/node/http.d.ts","./node_modules/@types/node/http2.d.ts","./node_modules/@types/node/https.d.ts","./node_modules/@types/node/inspector.d.ts","./node_modules/@types/node/module.d.ts","./node_modules/@types/node/net.d.ts","./node_modules/@types/node/os.d.ts","./node_modules/@types/node/path.d.ts","./node_modules/@types/node/perf_hooks.d.ts","./node_modules/@types/node/process.d.ts","./node_modules/@types/node/punycode.d.ts","./node_modules/@types/node/querystring.d.ts","./node_modules/@types/node/readline.d.ts","./node_modules/@types/node/readline/promises.d.ts","./node_modules/@types/node/repl.d.ts","./node_modules/@types/node/sea.d.ts","./node_modules/@types/node/sqlite.d.ts","./node_modules/@types/node/stream.d.ts","./node_modules/@types/node/stream/promises.d.ts","./node_modules/@types/node/stream/consumers.d.ts","./node_modules/@types/node/stream/web.d.ts","./node_modules/@types/node/string_decoder.d.ts","./node_modules/@types/node/test.d.ts","./node_modules/@types/node/timers.d.ts","./node_modules/@types/node/timers/promises.d.ts","./node_modules/@types/node/tls.d.ts","./node_modules/@types/node/trace_events.d.ts","./node_modules/@types/node/tty.d.ts","./node_modules/@types/node/url.d.ts","./node_modules/@types/node/util.d.ts","./node_modules/@types/node/v8.d.ts","./node_modules/@types/node/vm.d.ts","./node_modules/@types/node/wasi.d.ts","./node_modules/@types/node/worker_threads.d.ts","./node_modules/@types/node/zlib.d.ts","./node_modules/@types/node/index.d.ts"],"fileIdsList":[[152,195],[109,110,111,152,195],[109,152,195],[152,192,195],[152,194,195],[195],[152,195,200,230],[152,195,196,201,207,208,215,227,238],[152,195,196,197,207,215],[147,148,149,152,195],[152,195,198,239],[152,195,199,200,208,216],[152,195,200,227,235],[152,195,201,203,207,215],[152,194,195,202],[152,195,203,204],[152,195,207],[152,195,205,207],[152,194,195,207],[152,195,207,208,209,227,238],[152,195,207,208,209,222,227,230],[152,190,195,243],[152,190,195,203,207,210,215,227,238],[152,195,207,208,210,211,215,227,235,238],[152,195,210,212,227,235,238],[150,151,152,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244],[152,195,207,213],[152,195,214,238],[152,195,203,207,215,227],[152,195,216],[152,195,217],[152,194,195,218],[152,192,193,194,195,196,197,198,199,200,201,202,203,204,205,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244],[152,195,220],[152,195,221],[152,195,207,222,223],[152,195,222,224,239,241],[152,195,207,227,228,229,230],[152,195,227,229],[152,195,227,228],[152,195,230],[152,195,231],[152,192,195,227],[152,195,207,233,234],[152,195,233,234],[152,195,200,215,227,235],[152,195,236],[152,195,215,237],[152,195,210,221,238],[152,195,200,239],[152,195,227,240],[152,195,214,241],[152,195,242],[152,195,200,207,209,218,227,238,241,243],[152,195,227,244],[152,162,166,195,238],[152,162,195,227,238],[152,157,195],[152,159,162,195,235,238],[152,195,215,235],[152,195,245],[152,157,195,245],[152,159,162,195,215,238],[152,154,155,158,161,195,207,227,238],[152,162,169,195],[152,154,160,195],[152,162,183,184,195],[152,158,162,195,230,238,245],[152,183,195,245],[152,156,157,195,245],[152,162,195],[152,156,157,158,159,160,161,162,163,164,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,184,185,186,187,188,189,195],[152,162,177,195],[152,162,169,170,195],[152,160,162,170,171,195],[152,161,195],[152,154,157,162,195],[152,162,166,170,171,195],[152,166,195],[152,160,162,165,195,238],[152,154,159,162,169,195],[152,195,227],[152,157,162,183,195,243,245],[93,96,98,117,152,195],[89,96,98,100,118,120,152,195],[93,152,195],[93,94,95,99,152,195],[86,88,96,124,125,126,127,152,195],[139,140,141,152,195],[126,152,195],[89,93,95,96,101,119,121,122,124,138,139,152,195],[86,96,152,195],[98,108,152,195],[96,152,195],[143,152,195],[88,89,93,95,96,98,101,113,119,121,122,124,138,152,195],[98,152,195],[99,152,195],[99,100,152,195],[84,95,99,100,152,195],[89,93,95,98,100,101,113,114,117,118,119,120,121,152,195],[83,93,94,99,152,195],[95,113,114,115,116,122,152,195],[83,95,100,112,152,195],[83,95,152,195],[90,93,94,98,102,103,108,121,122,123,124,128,129,131,132,136,152,195],[89,93,152,195],[93,100,152,195],[83,90,93,152,195],[133,134,135,152,195],[93,94,152,195],[93,95,96,97,99,152,195],[97,129,130,152,195],[93,94,97,98,99,119,152,195],[84,87,98,100,152,195],[84,85,87,89,91,92,104,105,106,107,152,195],[90,152,195],[108,152,195,208,209],[85,92,106,152,195],[85,152,195],[84,152,195],[88,93,152,195],[84,85,86,87,89,91,92,95,152,195],[93,96,152,195]],"fileInfos":[{"version":"e41c290ef7dd7dab3493e6cbe5909e0148edf4a8dad0271be08edec368a0f7b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"27bdc30a0e32783366a5abeda841bc22757c1797de8681bbe81fbc735eeb1c10","impliedFormat":1},{"version":"8fd575e12870e9944c7e1d62e1f5a73fcf23dd8d3a321f2a2c74c20d022283fe","impliedFormat":1},{"version":"e12a46ce14b817d4c9e6b2b478956452330bf00c9801b79de46f7a1815b5bd40","impliedFormat":1},{"version":"4fd3f3422b2d2a3dfd5cdd0f387b3a8ec45f006c6ea896a4cb41264c2100bb2c","affectsGlobalScope":true,"impliedFormat":1},{"version":"69e65d976bf166ce4a9e6f6c18f94d2424bf116e90837ace179610dbccad9b42","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7a3c8b952931daebdfc7a2897c53c0a1c73624593fa070e46bd537e64dcd20a","affectsGlobalScope":true,"impliedFormat":1},{"version":"80e18897e5884b6723488d4f5652167e7bb5024f946743134ecc4aa4ee731f89","affectsGlobalScope":true,"impliedFormat":1},{"version":"cd034f499c6cdca722b60c04b5b1b78e058487a7085a8e0d6fb50809947ee573","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"62bb211266ee48b2d0edf0d8d1b191f0c24fc379a82bd4c1692a082c540bc6b1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"936e80ad36a2ee83fc3caf008e7c4c5afe45b3cf3d5c24408f039c1d47bdc1df","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"fef8cfad2e2dc5f5b3d97a6f4f2e92848eb1b88e897bb7318cef0e2820bceaab","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"f1e2a172204962276504466a6393426d2ca9c54894b1ad0a6c9dad867a65f876","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"b5ce7a470bc3628408429040c4e3a53a27755022a32fd05e2cb694e7015386c7","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"bab26767638ab3557de12c900f0b91f710c7dc40ee9793d5a27d32c04f0bf646","affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e3c06ea092138bf9fa5e874a1fdbc9d54805d074bee1de31b99a11e2fec239d","affectsGlobalScope":true,"impliedFormat":1},{"version":"87dc0f382502f5bbce5129bdc0aea21e19a3abbc19259e0b43ae038a9fc4e326","affectsGlobalScope":true,"impliedFormat":1},{"version":"b1cb28af0c891c8c96b2d6b7be76bd394fddcfdb4709a20ba05a7c1605eea0f9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true,"impliedFormat":1},{"version":"56e4ed5aab5f5920980066a9409bfaf53e6d21d3f8d020c17e4de584d29600ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ece9f17b3866cc077099c73f4983bddbcb1dc7ddb943227f1ec070f529dedd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a6282c8827e4b9a95f4bf4f5c205673ada31b982f50572d27103df8ceb8013c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1c9319a09485199c1f7b0498f2988d6d2249793ef67edda49d1e584746be9032","affectsGlobalScope":true,"impliedFormat":1},{"version":"e3a2a0cee0f03ffdde24d89660eba2685bfbdeae955a6c67e8c4c9fd28928eeb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"51ad4c928303041605b4d7ae32e0c1ee387d43a24cd6f1ebf4a2699e1076d4fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true,"impliedFormat":1},{"version":"61d6a2092f48af66dbfb220e31eea8b10bc02b6932d6e529005fd2d7b3281290","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"bde31fd423cd93b0eff97197a3f66df7c93e8c0c335cbeb113b7ff1ac35c23f4","impliedFormat":1},{"version":"5a7ebcf5fe8ac590dd03af1bbe426dfed639a3490fb1e5d6b934e45643b8ea1b","impliedFormat":1},{"version":"0c9b1eda8101fd8bf376fad28c6fabf20acfc30d6402a94ee46453a4ee1d5b04","signature":"d6d8e1704f13488e91b5ae6209958d3d76afc84d7e583670f1666371022ea603","impliedFormat":99},{"version":"f460dc79f7250fa2dd7f9d7f15ad9c18168289524b94eee4d63d1a0bd8f66fdb","signature":"07ae4cece96eb084ea1ea8f92dae8106a6ef555cd859211a406a9efb6ab62c0d","impliedFormat":99},{"version":"eae5739206d003069a28b7d894dc9bc2712d5a2459298dce210114de6a512630","signature":"69246ea7d84fde6b17161d65cd5246196a46284d64e12c846ee5eb38efc22f1e","impliedFormat":99},{"version":"7b8c33cc83ddb335bbff1339d2798355ef151f6346490fb7937c542766c966b6","signature":"bdd61b3cc3ff69aa7b588eefcfb7965ef108cf78e273ed2b06b1af9ff3e8895b","impliedFormat":99},{"version":"189ac1e713c72a4c4775b2e300d252c47389b2eec6f8a13b0934263e6ffa6d68","signature":"f0136cccbf1eca046090fe63f450d21946bf67b21352c4b5a436d5adfd4640d5","impliedFormat":99},{"version":"9f3114fcfc075b1d767198ad4d447cc72b7397d245914dd3830dc9232ce82de4","signature":"3ee6cb10da36d74ab7e056df51bb65f41e20df94cffcf813ba688c1411876c12","impliedFormat":99},{"version":"06b2b49bbdc07806329bfd74f324a073f0ea1349596c8efcb21378ef31c7b0c6","signature":"b5e406dcf54e8f52eb702a9e8ae640ed5482759a1d9acf74958ec18cadc480bf","impliedFormat":99},{"version":"c0607865181a590858fb3e828dc6e81cc5597eeeb6974e9f099283357d2c9583","signature":"62986f8902b52095026bdba058ff44392c0ec26c78d4768f7aab31e78d965f20","impliedFormat":99},{"version":"f34bba872994525b166d1168c033c6c4a9d275f030c517a4932a3d96466df721","signature":"d293df64831379effa58ef7c63edf7b96e59e2f85739d5ac91ac8f27cd772df0","impliedFormat":99},{"version":"397e7c1d98bd86ef0eca68fc48519214978e05f5893d84bb7132e83ec16a732d","signature":"9de547790bd68998cc092708edc991efe88c8db194ded298e4eabfe6b450cb9c","impliedFormat":99},{"version":"1633ea5ae726d45cfb6001b47d56da665741c1631e72f0560ce0ff2d1789c6e1","signature":"2a1cc5358d50e9152c92bfc484d25675f5984922b54f68a6c6ff4ae4d3563086","impliedFormat":99},{"version":"f0e45fd6ad06501f8492b334e63c6321504ed120e446c48b5536008b4ba89d01","signature":"3e2a4846238282eba0f098c8c303076ab3748fc026eec9c4a68ea8deccd7df00","impliedFormat":99},{"version":"747be1e63045b414fe65b0eae689362cfe9cd68d9d3a9f5fa15d5ac3acad9994","signature":"a11f5458ed40fbbd221716097d5b1f92dbe7fa4088fd6db6fade1da35fe9d1db","impliedFormat":99},{"version":"286e09cf3c4f29724ecac6008501593c60dba91d81b8e1f9fe22881a75cbbcb7","signature":"d38c56b8e2b832569b826ad8962e57889091d6478f120a7ff29132d64d7a1875","impliedFormat":99},{"version":"c8196ff02c752392fcb9a58a474e7cfa57d8c947e4a77ca0ee3be72d891c34c4","signature":"4d72606689dd705e0100c44b469c08792cebbc2d85106f8e54285447de56a249","impliedFormat":99},{"version":"63e858abbf63ff09c4d88d8a03bb09a28b16aff73ac85ec4e8831319f54b5f69","signature":"fc229cda030c2974a05e03c5c86eb2c32d26f58b6f49b1b610c431f9159d81e6","impliedFormat":99},{"version":"a862d1db2db80c379ed34d906072a4bee7194bd2674f28a59c9a782c334e0dc6","signature":"5861423c8f263f4d91a00297b6d74669596935b8f31f29a94847a056aac13a6f","impliedFormat":99},{"version":"d8650f40cb31973b401695017cfed0289f8ace9f3db1bd4bff0e6a0d22c2159f","signature":"c9fdf0f6f37a42b2269625e430e98baba9337e89d1b70a4e4ae1142ab39ed16d","impliedFormat":99},{"version":"95aab46e25cd2603c59dcba5903a7dac51524975a59775d46da09917b7fa7a86","signature":"fd757c959e0c11a7265b85e84f793fb96d140ab58300ff12e5302f708c12df8f","impliedFormat":99},{"version":"fbf264ed1294a2377313139a7ffbc1c7c0a1245641fe27c7111b7294123aceed","signature":"4642b2ac614eb714017f6e7f630342cb93c3631d606771b201d560bc8f6c2ee3","impliedFormat":99},{"version":"82a5d4d3ccf1448c9d912d0cecb757e94c5d4a54c98f9e771c3e5ef08bbb1163","signature":"b4594f029996adc443729bba8ff83f2d98a00a02e10422c1b653ee9a7f1f3fb3","impliedFormat":99},{"version":"4c450f5553dd582c8e148c7522dab4dc20a25dbbceb00c21307ca3141a937bd6","signature":"2435079d0ee60718fb4b36adbd00a33649ec2ef6b7d2119fd8525307af38827b","impliedFormat":99},{"version":"46e36680394e51afe9bb5ecf8313d1f77ae93604388f169ce93ee6614b1fc837","signature":"4bfbe6eec6d673e4ec5e99b0a30fbee091958e5f3198d67604de383bb11a8e6b","impliedFormat":99},{"version":"7afcf38a3914fcda859cecef32c3c8d43facafd28bb2d28fce95dcfddd2085db","signature":"80ec71c3f5586270693412ea3547a6200fc799b5b7fa35b156c9f1984c66ab2b","impliedFormat":99},{"version":"e4dd77a1279e1fd3dfc58557f468c872cb51ae0ee3d75b16893cf486b97b99f9","signature":"62d923377ae858d5ca1d7d78eb18d6d65632597d3398352c01dd4c436d3372a0","impliedFormat":99},{"version":"b79c47c1952deb44203c7ad5e85ecc60e3eab751edcfae2eb39bddffdb2addc6","impliedFormat":99},{"version":"0fdeb386d5e17483c2b152f6b0f369ff234f57a4e333c44cb18f63480237aa0e","impliedFormat":99},{"version":"b170d7755fa9def5551bf76252d06e7f63d7ad46457f735688233499bd215f0e","impliedFormat":99},{"version":"a798b0af0f2c819bfba03f97cb2027676c06e5d259bb9eb948061d0c98ad887c","impliedFormat":99},{"version":"f694438b5a385e12c04aa767c094506d87b74b772700c85a74e847f01b552edb","signature":"a6f23c9db5bb94c55c4520e93c32fe2ee8964d986244b1f4e9db2bd8375b3270","impliedFormat":99},{"version":"722a0f06fcc3963e532d8051d7c1f869855eb7f64093e94d88333f513b66cb67","signature":"af588397446849841e3123bb5ce1f3e9179206c476fd3a834118a5bf56ac88dd","impliedFormat":99},{"version":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":99},{"version":"7c34c6a5f0d2764736a15cad253671882fec460a261e050cc203ee0f9d18de55","signature":"439cd298e3a7f9cd1fdbfa31d1ca8942192b3accbcf369586aabf533d02bdd73","impliedFormat":99},{"version":"75dbf3fa97d4604233f841d980cc4d1b84d519a3d5c89e34949e9a860a59a38e","signature":"cf21e19ef3f9a12497bf12504a455b299c456f7aa4f44eff54202636c0fe0c8d","impliedFormat":99},{"version":"ba82ccb10b660ba4e631cab0de696935ae02ffc54bc1693f821d577e6b17165b","impliedFormat":1},{"version":"902534fcb369bcf61b2afb1a07294096d820c431e3929b3f19cc9f5f050f76cb","signature":"9179b87d0dae14402bedfde99dbc42b824cf4652faa92d7358af232eef2e3efe","impliedFormat":99},{"version":"03bced0d9bccd4699977433ade88e0feb302222bc177f21b2a53a6d9e5019164","signature":"cea0b7a9e97b5082d471c1b9772acaa3bbe3cc1f8717827893e94b276952c0d6","impliedFormat":99},{"version":"d6d158bea01b6ef28b7748f03a69e65d36b3aa04853a25b08921c787e6b9dfcf","signature":"e9b54b66f6786269ba3d7cab22d3c92c398a238a67f29f5197a9a9a5bb2627db","impliedFormat":99},{"version":"3900b4e982524183c01c615d4bdb1e50c677bf680285be0b0aa917842fbdccdf","signature":"74ef054f97b516e9cbe8598269bb83af0ee44c34ddc0ca0c04d91f9725d6b752","impliedFormat":99},{"version":"f8ce0f9982fd48bf82cbf851f405c31907d076e3a3e6e51556648c543cd70d35","signature":"5e95a59e877fee0fc0541fc51a4a7d101e00d555fd34ae2ca427b1662e4e7417","impliedFormat":99},{"version":"13ed990579e253422ee8217ad95da1ef604dcbdc5a75e067c787a43bb21ceeed","signature":"3c1c88b46049c3e88edbc2bf2c5c5e019afed7dd916779a3dbd7769cffca4642","impliedFormat":99},{"version":"f4bd0319ee19dec80db2df9e2833fa3ae75ea666617156c6ba22b0b5dfe722a2","signature":"fc7c785f58fc7994ebbd05ff48e90eb7820bbd2d6c106e87b77aa92ce1a8491a","impliedFormat":99},{"version":"e0fc1faa7b927923cca0635dbc2890e153d3ace8c532660c45eb826dfc1c0c39","signature":"620b7cf8b66911c558f2484fdeea68036aaec51c1d47301484904af255588107","impliedFormat":99},{"version":"e98ad6a408069d53689fa0eb977800ff020aea09782c7f1d0da6f9826fd37c07","signature":"0e84d0bd49e4d406121663f461a18b30d22553c3aca066b82281a641e4b3fa9c","impliedFormat":99},{"version":"f3c158a49f42dd80b528fd11e9366b325cbca9205482e3c07a80298e04bac6ae","signature":"ed437b1ff58b402d1f24bcbf6f4be362176ba5e8abbca4a7a41cf91dccc9df99","impliedFormat":99},{"version":"89dc4033302baf1f59785f361fbb1dd95da6ec5dc55714b5ea2da8fe4bd63480","signature":"0367f8989065ce1c3e65f4edd612e17e52d9bbded86ddea05136ca3a09fc21a3","impliedFormat":99},{"version":"687c1b6a1e893fb3bc932269827bcedd8b8ca8d65a7fe449a0fb20147dbb538d","signature":"813c86102644d3be59ce59e4a5192abe43983a186f72f2f0dd56f44d37cac4fe","impliedFormat":99},{"version":"0b688277a5a64522078804983d6869e308bd2e983f48871159f132c7ff7657c4","signature":"772fa2af8f8569c42f9c77211726e0e7f9b6d11f661bc7274393386db74a22a4","impliedFormat":99},{"version":"5a02696ef43cc74d954594dd09bbdb416498de3ec8b6abe0db2a80677b99fd22","signature":"89aa3cc6438ab46c2edcf993c04143579ee7f39809972d3fae22ad37f7e420dc","impliedFormat":99},{"version":"317f3b641e3ab1874491987a705491bb5ffb0e6c36adbecfcf0e6064f9c15db5","signature":"e3418c0cf118a1a58c6fa84806cd714e0d69db94a5deff6d501b61d475b091dc","impliedFormat":99},{"version":"3d3de07fc7df084a2c7e419c80dde45db2b00ef18fe4592a7561d3b38bb7fb18","signature":"c76871b0e812849e53baa7f64cab69e26a3d098784ee29a1a61eaf76e90ecae7","impliedFormat":99},{"version":"166bffd3fa42e07a1dda6acf18cd2c68e02d344b853894cc25375389f45788d3","signature":"b1df0819322860c218cc6221fff5eedb9fc72521fd4b39b8843aeb679a95e514","impliedFormat":99},{"version":"6c0b9557f49259d0373c3cd59ca5cf976f72b4c840e02ae9f166188044f2383f","signature":"1c05860f01c02b7a57388de5b5291906b10cb0cc64bab56bcc4e42625f637c66","impliedFormat":99},{"version":"4c91e36d9ae709ec60546a0003838e181ea57cce8049d85f7f2e792d30eacf9e","signature":"7b98c588c4bccf6f15731d1a947ddaa8a8dd59407b22c1edb0df32c45d51719f","impliedFormat":99},{"version":"cbdcfe5ab85b91c6fe771c18bb30173162212a8a49e5f18ca5f9eacec5889d6a","signature":"0154121b973f6ef0781cd9069ffd4564703a1ac5355f8e4599ee0031c5faba4a","impliedFormat":99},{"version":"665bb85ac0c6de975c461361ffec7c51352732c3f8183e1e01f87acd64e4b2c9","signature":"aee5f94c785a2411c367ab415b76f851bc39b0f7a9493bf9db97477484747828","impliedFormat":99},{"version":"b939a045d2ccd16b3713a968cb5e9899d3f35907b2532bed2cb1d9248791164b","signature":"3e8337e16ee7698a3193a643a8826337c38038e392ba2f2ea8837101e9cf5e7e","impliedFormat":99},{"version":"5750cf945b62afe4bab47b5fd7f8017b461af5e4cc937e45d1ac2f6e0d24846d","signature":"2d5742531c4f0d0fffd5af8625a171c9fae960e0802d8d4023426dcd07f72620","impliedFormat":99},{"version":"61f99efd21d9abbb8c6ac936298b0ff114c5df78aece35b862bce8d1de964f2c","signature":"595aae9166f140eb6396b5b1d8e9d56dc75e48d4c6b4d7209d8d6a3b3af268df","impliedFormat":99},{"version":"2fa019a0982d30097178fae0a3b9413887d704bfdda0d4b6dccb004787a4db20","signature":"f8900d0ae5cf0dfb2ba857320a6407d71dd47c3d7ac79f34fdf5c3817352bca9","impliedFormat":99},{"version":"acaac745478015289e38774deb5266dcaa63a9bbc01d09a4d134b6f372e2562e","signature":"3051f2c4dd86ce70a144a506e1dffbcbf7739fe84b6bd5dbe57e44457b7ae5e9","impliedFormat":99},{"version":"774eb3b1162c49abb6d1b08908302fbc917f3bd9d22527f2cf61d3d55dfec249","signature":"d88c59d124b3d55eb0c36b85ffb82180a2a947adf56de16a532efe8a2bae545a","impliedFormat":99},{"version":"e8ceef9ec45f52721b749c59030e7a82a923969f66759e21ba29605458309792","signature":"dc0d3b54f14e204d51fcdfce1154a50c9e14359762e7c5516e936747d358f5cf","impliedFormat":99},{"version":"70521b6ab0dcba37539e5303104f29b721bfb2940b2776da4cc818c07e1fefc1","affectsGlobalScope":true,"impliedFormat":1},{"version":"030e350db2525514580ed054f712ffb22d273e6bc7eddc1bb7eda1e0ba5d395e","affectsGlobalScope":true,"impliedFormat":1},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"a79e62f1e20467e11a904399b8b18b18c0c6eea6b50c1168bf215356d5bebfaf","affectsGlobalScope":true,"impliedFormat":1},{"version":"13af9e8fb6757946c48117315866177b95e554d1e773577bb6ca6e40083b6d73","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e9c23ba78aabc2e0a27033f18737a6df754067731e69dc5f52823957d60a4b6","impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"24bd580b5743dc56402c440dc7f9a4f5d592ad7a419f25414d37a7bfe11e342b","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","impliedFormat":1},{"version":"6bdc71028db658243775263e93a7db2fd2abfce3ca569c3cca5aee6ed5eb186d","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"e61be3f894b41b7baa1fbd6a66893f2579bfad01d208b4ff61daef21493ef0a8","impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"615ba88d0128ed16bf83ef8ccbb6aff05c3ee2db1cc0f89ab50a4939bfc1943f","impliedFormat":1},{"version":"a4d551dbf8746780194d550c88f26cf937caf8d56f102969a110cfaed4b06656","impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","impliedFormat":1},{"version":"317e63deeb21ac07f3992f5b50cdca8338f10acd4fbb7257ebf56735bf52ab00","impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","impliedFormat":1},{"version":"d2bc987ae352271d0d615a420dcf98cc886aa16b87fb2b569358c1fe0ca0773d","affectsGlobalScope":true,"impliedFormat":1},{"version":"f550093acc8ad4f64ad1c7e96153615f3351b81919dae5473375b81e1e8f272c","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"76103716ba397bbb61f9fa9c9090dca59f39f9047cb1352b2179c5d8e7f4e8d0","impliedFormat":1},{"version":"53eac70430b30089a3a1959d8306b0f9cfaf0de75224b68ef25243e0b5ad1ca3","affectsGlobalScope":true,"impliedFormat":1},{"version":"4314c7a11517e221f7296b46547dbc4df047115b182f544d072bdccffa57fc72","impliedFormat":1},{"version":"115971d64632ea4742b5b115fb64ed04bcaae2c3c342f13d9ba7e3f9ee39c4e7","impliedFormat":1},{"version":"c2510f124c0293ab80b1777c44d80f812b75612f297b9857406468c0f4dafe29","affectsGlobalScope":true,"impliedFormat":1},{"version":"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb","impliedFormat":1},{"version":"86956cc2eb9dd371d6fab493d326a574afedebf76eef3fa7833b8e0d9b52d6f1","affectsGlobalScope":true,"impliedFormat":1},{"version":"19d5f8d3930e9f99aa2c36258bf95abbe5adf7e889e6181872d1cdba7c9a7dd5","impliedFormat":1},{"version":"e6f5a38687bebe43a4cef426b69d34373ef68be9a6b1538ec0a371e69f309354","impliedFormat":1},{"version":"a6bf63d17324010ca1fbf0389cab83f93389bb0b9a01dc8a346d092f65b3605f","impliedFormat":1},{"version":"e009777bef4b023a999b2e5b9a136ff2cde37dc3f77c744a02840f05b18be8ff","impliedFormat":1},{"version":"1e0d1f8b0adfa0b0330e028c7941b5a98c08b600efe7f14d2d2a00854fb2f393","impliedFormat":1},{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true,"impliedFormat":1},{"version":"88bc59b32d0d5b4e5d9632ac38edea23454057e643684c3c0b94511296f2998c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1ff5a53a58e756d2661b73ba60ffe274231a4432d21f7a2d0d9e4f6aa99f4283","impliedFormat":1},{"version":"1e289f30a48126935a5d408a91129a13a59c9b0f8c007a816f9f16ef821e144e","impliedFormat":1},{"version":"2ea254f944dfe131df1264d1fb96e4b1f7d110195b21f1f5dbb68fdd394e5518","impliedFormat":1},{"version":"5135bdd72cc05a8192bd2e92f0914d7fc43ee077d1293dc622a049b7035a0afb","impliedFormat":1},{"version":"4f80de3a11c0d2f1329a72e92c7416b2f7eab14f67e92cac63bb4e8d01c6edc8","impliedFormat":1},{"version":"6d386bc0d7f3afa1d401afc3e00ed6b09205a354a9795196caed937494a713e6","impliedFormat":1},{"version":"fcc4b974b1cf7eca347490f11143ab2f5bc3c449b2073eb4d9494f6a16651e75","affectsGlobalScope":true,"impliedFormat":1},{"version":"23459c1915878a7c1e86e8bdb9c187cddd3aea105b8b1dfce512f093c969bc7e","impliedFormat":1},{"version":"b1b6ee0d012aeebe11d776a155d8979730440082797695fc8e2a5c326285678f","impliedFormat":1},{"version":"45875bcae57270aeb3ebc73a5e3fb4c7b9d91d6b045f107c1d8513c28ece71c0","impliedFormat":1},{"version":"1dc73f8854e5c4506131c4d95b3a6c24d0c80336d3758e95110f4c7b5cb16397","affectsGlobalScope":true,"impliedFormat":1},{"version":"5f6f1d54779d0b9ed152b0516b0958cd34889764c1190434bbf18e7a8bb884cd","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f16a7e4deafa527ed9995a772bb380eb7d3c2c0fd4ae178c5263ed18394db2c","impliedFormat":1},{"version":"c6b4e0a02545304935ecbf7de7a8e056a31bb50939b5b321c9d50a405b5a0bba","impliedFormat":1},{"version":"fab29e6d649aa074a6b91e3bdf2bff484934a46067f6ee97a30fcd9762ae2213","impliedFormat":1},{"version":"8145e07aad6da5f23f2fcd8c8e4c5c13fb26ee986a79d03b0829b8fce152d8b2","impliedFormat":1},{"version":"e1120271ebbc9952fdc7b2dd3e145560e52e06956345e6fdf91d70ca4886464f","impliedFormat":1},{"version":"814118df420c4e38fe5ae1b9a3bafb6e9c2aa40838e528cde908381867be6466","impliedFormat":1},{"version":"1cbae62b67f180291d211f0e1045fb923a8ec800cfbf9caa13223d769013dae2","impliedFormat":1},{"version":"553870e516f8c772b89f3820576152ebc70181d7994d96917bb943e37da7f8a7","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","impliedFormat":1},{"version":"745c4240220559bd340c8aeb6e3c5270a709d3565e934dc22a69c304703956bc","affectsGlobalScope":true,"impliedFormat":1},{"version":"2754d8221d77c7b382096651925eb476f1066b3348da4b73fe71ced7801edada","impliedFormat":1},{"version":"92949391eab12082218333a61b9070996f404ad662ff488d48ebb09564963d2b","affectsGlobalScope":true,"impliedFormat":1},{"version":"bef91efa0baea5d0e0f0f27b574a8bc100ce62a6d7e70220a0d58af6acab5e89","affectsGlobalScope":true,"impliedFormat":1},{"version":"282fd2a1268a25345b830497b4b7bf5037a5e04f6a9c44c840cb605e19fea841","impliedFormat":1},{"version":"5360a27d3ebca11b224d7d3e38e3e2c63f8290cb1fcf6c3610401898f8e68bc3","impliedFormat":1},{"version":"66ba1b2c3e3a3644a1011cd530fb444a96b1b2dfe2f5e837a002d41a1a799e60","impliedFormat":1},{"version":"7e514f5b852fdbc166b539fdd1f4e9114f29911592a5eb10a94bb3a13ccac3c4","impliedFormat":1},{"version":"7d6ff413e198d25639f9f01f16673e7df4e4bd2875a42455afd4ecc02ef156da","affectsGlobalScope":true,"impliedFormat":1},{"version":"cb094bb347d7df3380299eb69836c2c8758626ecf45917577707c03cf816b6f4","affectsGlobalScope":true,"impliedFormat":1},{"version":"f689c4237b70ae6be5f0e4180e8833f34ace40529d1acc0676ab8fb8f70457d7","impliedFormat":1},{"version":"ae25afbbf1ed5df63a177d67b9048bf7481067f1b8dc9c39212e59db94fc9fc6","impliedFormat":1},{"version":"ac5ed35e649cdd8143131964336ab9076937fa91802ec760b3ea63b59175c10a","impliedFormat":1},{"version":"52a8e7e8a1454b6d1b5ad428efae3870ffc56f2c02d923467f2940c454aa9aec","affectsGlobalScope":true,"impliedFormat":1},{"version":"78dc0513cc4f1642906b74dda42146bcbd9df7401717d6e89ea6d72d12ecb539","impliedFormat":1},{"version":"ad90122e1cb599b3bc06a11710eb5489101be678f2920f2322b0ac3e195af78d","impliedFormat":1}],"root":[[84,108],[113,117],[119,146]],"options":{"allowJs":false,"composite":true,"declaration":true,"emitDecoratorMetadata":false,"experimentalDecorators":false,"importHelpers":false,"module":100,"noImplicitAny":false,"noUnusedLocals":true,"outDir":"./dist","removeComments":false,"rootDir":"./src","skipLibCheck":true,"sourceMap":false,"strict":true,"strictNullChecks":true,"target":99,"useUnknownInCatchVariables":false},"referencedMap":[[153,1],[83,1],[118,1],[112,2],[110,3],[109,1],[111,3],[80,1],[81,1],[15,1],[13,1],[14,1],[19,1],[18,1],[2,1],[20,1],[21,1],[22,1],[23,1],[24,1],[25,1],[26,1],[27,1],[3,1],[28,1],[29,1],[4,1],[30,1],[34,1],[31,1],[32,1],[33,1],[35,1],[36,1],[37,1],[5,1],[38,1],[39,1],[40,1],[41,1],[6,1],[45,1],[42,1],[43,1],[44,1],[46,1],[7,1],[47,1],[52,1],[53,1],[48,1],[49,1],[50,1],[51,1],[8,1],[57,1],[54,1],[55,1],[56,1],[58,1],[9,1],[59,1],[60,1],[61,1],[63,1],[62,1],[64,1],[65,1],[10,1],[66,1],[67,1],[68,1],[11,1],[69,1],[70,1],[71,1],[72,1],[73,1],[1,1],[74,1],[75,1],[12,1],[78,1],[77,1],[82,1],[76,1],[79,1],[17,1],[16,1],[192,4],[193,4],[194,5],[152,6],[195,7],[196,8],[197,9],[147,1],[150,10],[148,1],[149,1],[198,11],[199,12],[200,13],[201,14],[202,15],[203,16],[204,16],[206,17],[205,18],[207,19],[208,20],[209,21],[191,22],[151,1],[210,23],[211,24],[212,25],[245,26],[213,27],[214,28],[215,29],[216,30],[217,31],[218,32],[219,33],[220,34],[221,35],[222,36],[223,36],[224,37],[225,1],[226,1],[227,38],[229,39],[228,40],[230,41],[231,42],[232,43],[233,44],[234,45],[235,46],[236,47],[237,48],[238,49],[239,50],[240,51],[241,52],[242,53],[243,54],[244,55],[169,56],[179,57],[168,56],[189,58],[160,59],[159,60],[188,61],[182,62],[187,63],[162,64],[176,65],[161,66],[185,67],[157,68],[156,61],[186,69],[158,70],[163,71],[164,1],[167,71],[154,1],[190,72],[180,73],[171,74],[172,75],[174,76],[170,77],[173,78],[183,61],[165,79],[166,80],[175,81],[155,82],[178,73],[177,71],[181,1],[184,83],[138,84],[124,85],[88,86],[96,87],[86,1],[127,1],[128,88],[142,89],[139,90],[140,91],[141,92],[125,93],[126,94],[144,95],[143,96],[99,97],[100,98],[132,99],[101,100],[122,101],[95,102],[115,1],[123,103],[116,93],[113,104],[114,105],[137,106],[121,107],[133,86],[135,108],[134,109],[136,110],[145,108],[117,111],[102,1],[103,1],[98,112],[131,113],[130,93],[129,114],[97,111],[120,115],[104,1],[108,116],[91,117],[146,118],[107,119],[106,120],[105,121],[84,1],[87,1],[92,1],[89,122],[85,1],[90,1],[93,123],[94,124],[119,121]],"latestChangedDtsFile":"./dist/services/local-content.d.ts","version":"5.7.3"}