RFC: Validation #3519
Replies: 22 comments
-
| Engines: 
 Existing lambda middleware: | 
Beta Was this translation helpful? Give feedback.
-
| Thanks a lot for those inputs ! We will look into it | 
Beta Was this translation helpful? Give feedback.
-
| @misterjoshua Thanks a lot. This is very nice RFC and rich in details. We plan to catch up with Python feature so this is in our roadmap. The team is focusing in fixing all outstanding issues on 3 core utilities to have Production Ready version. So it may take a while to implement this. However, I would like to use this chance to discuss the feature API so we have a clear spec, ready for implementation. This feature is comparable to the  Let's explore the alternatives so we can weight pros & cons: Validation class@misterjoshua What do you think of this alternative? Usage 1: Middy middlewareimport { Validation, Envelope, validateSchema } from "@aws-lambda-powertools/validation";
const validation = new Validation({
  envelope: Envelope.jmesPath("detail"), // Optional: only if we want to validate a part of it
  inboundSchema: {...},
  outboundSchema: {...}, //optional
});
// Copied from proposal
//....
async function handlerBase(request: GreetingRequest, context: lambda.Context): Promise<GreetingResponse> {
  return {
    message: `Hello ${request.name}`,
  };
}
//...
export const handler = middy(handlerBase)
  .use(validateSchema()
  .use(..); // can chain with Logger's injectContext() or any other utilitiesThe advantage is that it's easier to chain multiple utility features. In your proposal, if we also want to use  export const handler = Tracer.captureLambdaHandler(Logger.injectContext(
  Validation.handler(handlerBase, {...});
)));Usage 2: Class decoratorWe can follow the same pattern of core utilities. import { Validation } from `....`;
 
const validation = new Validation({
  envelop: ...;
  inboundSchema: ...;
  outboundSchema: ...;
});
class Lambda implements LambdaInterface {
    // Decorate your handler class method
    @validation.validateHandler()
    public async handler(request: GreetingRequest, context: lambda.Context): Promise<GreetingResponse> {
        /* ... */
    }
}Usage 3: manualThis is where I see no clear winner. Python version have only a  The  const validationOption = {
  envelop: ...;
  inboundSchema: ...;
  outboundSchema: ...;
};
try {
  const person: Person = validate<Person>(JSON.parse(someInput), validationOption);
  logger.info(`Person's name is ${person.name}`);
} catch (e) {
  logger.error(`Failure: ${e}`);
}That being said using  Other points to consider:
 | 
Beta Was this translation helpful? Give feedback.
-
| 
 @ijemmy I like the middleware idea - it's familiar to many node devs. I have a few thoughts on the example above: 
 What about something like this? (EDIT: I have added some discussion near the bottom of this comment about separating Validation from Envelope as another decorator and middleware to be applied before validation.) import { Validation, Envelope, validateSchema } from "@aws-lambda-powertools/validation";
// Composable, multi-purpose envelope-stripping example.
const envelope = Envelope.multiPurpose({
  envelopes: [
    // Accepts the given detail type and unwraps `details`
    Envelope.awsEventBridgeEvent({ detailType: 'Detail Type Name' }),
    // Flat maps SQS event `Records[*].body` to parsed json and feeds each
    // through `handlerBase` when the entire event is valid.
    Envelope.awsSqsEvent({ jsonPayload: true, flatMapRecords: true }),
    // Same idea as SQS, but for SNS and `Records[*].Sns.Message`
    Envelope.awsSnsEvent({ jsonPayload: true, flatMapRecords: true }),
  ],
});
const validation = new Validation({
  envelope: envelope, // Replaced multi-purpose envelope example
  inboundSchema: {...},
  // Commented out for the sake of this example:
  // outboundSchema: {...},
});
// Multi-purpose handler - it doesn't need to know how it's getting GreetingRequest, whether it's from
// SNS, SQS, or Event Bridge.
async function handlerBase(request: GreetingRequest, context: lambda.Context): Promise<GreetingResponse> {
  return {
    message: `Hello ${request.name}`,
  };
}
export const handler = middy(handlerBase)
  .use(validateSchema(validation)) // This example assumes Middy can flat map SQS/SNS batch records.
  .use(...);
 This looks good. I like the decorator syntax. Here's an example of the same multi-purpose handler as above: import { Validation, Envelope } from "@aws-lambda-powertools/validation";
// Multi-purpose envelope unwrapping example (same as previous example)
const envelope = Envelope.multiPurpose({
  envelopes: [
    Envelope.awsEventBridgeEvent({ detailType: 'Detail Type Name' }),
    Envelope.awsSqsEvent({ jsonPayload: true, flatMapRecords: true }),
    Envelope.awsSnsEvent({ jsonPayload: true, flatMapRecords: true }),
  ],
});
const validation = new Validation({
  envelope: envelope, // Replaced multi-purpose envelope example
  inboundSchema: {...},
  // Commented out for the sake of this example:
  // outboundSchema: {...},
});
class Lambda implements LambdaInterface {
    // Decorate your handler class method
    @validation.validateHandler()
    public async handler(request: GreetingRequest, context: lambda.Context): Promise<GreetingResponse> {
        /* ... */
    }
}
 I agree.  
 I think not. For backend lambdas, the output isn't always important. (i.e., Lambdas handling SQS, SNS, or Event Bridge Rule Targets.) 
 Yes, I think so. For API Gateway, I can envision a scenario where I want to create an entirely custom error response with a particular HTTP status code. Perhaps  async function validationErrorHandler(error) {
  return {
    statusCode: 418, // HTTP 418 I'm a teapot
    message: 'My custom message here',
  };
}
const validation = new Validation({
  inboundSchema: {...},
  outboundSchema: {...},
  validationErrorHandler: validationErrorHandler,
});
// Provide `validation` to middleware or use the decorator approach.
 Given that Tracer, Logger, and Metrics already depend on Commons, could we add something like  const logger = new Logger(...);
const validation = new Validation({
  inboundSchema: {...},
  outboundSchema: {...},
  logger: logger,
});
 If we put  
 I see value in having the decorator version of the validation even if we don't add a middy middleware due to overlap in their ecosystem... But I don't see how adding a middleware for Middy would add much complexity if we're already adding a decorator version, since the majority of the logic would live in  EDIT: I was just thinking that at a certain point, I'm not sure if the idea of multi-purpose lambdas is just a validation story - it could be two stories: Validation and Extraction. I figure it should be possible to separate Validation and Extraction into two distinct features. Extraction could just as well be its own middleware & decorator, perhaps centred around the concept of  // Composable, multi-purpose envelope-stripping example.
const envelope = Envelope.multiPurpose({
  envelopes: [
    // Accepts the given detail type and unwraps `details`
    Envelope.awsEventBridgeEvent(),
    // Flat maps SQS event `Records[*].body` to parsed json and feeds each
    // through `handlerBase` when the entire event is valid.
    Envelope.awsSqsEvent({ jsonPayload: true, flatMapRecords: true }),
    // Same idea as SQS, but for SNS and `Records[*].Message`
    Envelope.awsSnsEvent({ jsonPayload: true, flatMapRecords: true }),
  ],
});
const validation = new Validation({
  inboundSchema: {...},
  // Commented out for the sake of this example:
  // outboundSchema: {...},
});
// Multi-purpose handler - it doesn't need to know how it's getting GreetingRequest, whether it's from
// SNS, SQS, or Event Bridge.
async function handlerBase(request: GreetingRequest, context: lambda.Context): Promise<GreetingResponse> {
  return {
    message: `Hello ${request.name}`,
  };
}
export const handler = middy(handlerBase)
  .use(extractFromEnvelope(envelope)) // This example assumes Middy can flat map SQS/SNS batch records.
  .use(validateSchema(validation))
  .use(...);Here's use case 2: // Composable, multi-purpose envelope-stripping example.
const envelope = Envelope.multiPurpose({
  envelopes: [
    // Unwraps `details`
    Envelope.awsEventBridgeEvent(),
    // Flat maps SQS event `Records[*].body` to parsed json and feeds each
    // through `handlerBase` when the entire event is valid.
    Envelope.awsSqsEvent({ jsonPayload: true, flatMapRecords: true }),
    // Same idea as SQS, but for SNS and `Records[*].Message`
    Envelope.awsSnsEvent({ jsonPayload: true, flatMapRecords: true }),
  ],
});
const validation = new Validation({
  inboundSchema: {...},
  // Commented out for the sake of this example:
  // outboundSchema: {...},
});
class Lambda implements LambdaInterface {
    // Decorate your handler class method
    @envelope.extractForHandler()
    @validation.validateHandler()
    public async handler(request: GreetingRequest, context: lambda.Context): Promise<GreetingResponse> {
        /* ... */
    }
}I'm happy to open another RFC focused on Extraction, if this is something that could work. | 
Beta Was this translation helpful? Give feedback.
-
| Middy takes this approach of separating  If AWS provided the JSON schemas for each event in the documentation, that would be super helpful. I've thought about writing these myself, but i'd just be reverse engineering from the samples and may not be accurate. | 
Beta Was this translation helpful? Give feedback.
-
| 
 That's right. 
 I'm inclined to have two different middlewares for different tasks. 
 Is it something similar to this Built-in envelops in Python version? If yes, this should be included in the spec. 
 Can you tell me more about your business use cases? I haven't seen many use cases of consuming the same data from different AWS source. 
 I think this is out of scope for Validation. I would go with an extra line of  
 That could be a good option. The price we pay is leaking abstraction between modules. 
 No, it won't add much complexity. | 
Beta Was this translation helpful? Give feedback.
-
| 
 Wow, this is pretty good. I'm going to use that in my next project :) Regarding JSON schemas, let me pass this feedback to the Lambda team. | 
Beta Was this translation helpful? Give feedback.
-
| 
 EDIT: When I made the above comment, I was not aware of the parser utility tracked in #1334. Personally, I probably won't use the validation package as the parsing validation does validation and parsing and I'd rather have them all as one. | 
Beta Was this translation helpful? Give feedback.
-
| Hi everyone, as indicated in our roadmap we plan to implement this utility in the coming months. Over the next few days I'll take some time to go through the existing content of the RFC and consolidate everything. | 
Beta Was this translation helpful? Give feedback.
-
| Within this effort I'd like to see a pattern built for creating decorators and not just middleware - if possible. | 
Beta Was this translation helpful? Give feedback.
-
| Hi @codyfrisch, thanks a lot for taking the time to share this detail/request. We are planning on including decorator usage as part of this utility. When we released the Idempotency Utility we held back the decorators because we had some open questions around TypeScript 5.x support. However last week we finally transitioned successfully and stabilized the topic, so we are ready to develop new decorators for all the utility that make sense, this one being one of them. | 
Beta Was this translation helpful? Give feedback.
-
| Hi there! We discussed this RFC with @dreamorosi and how to move it forward, so as the first step I did a little research about JSON validation packages, that could be used as a wrapper dependency for the  The first thing that comes to mind is  TLDR 
 I am on the fence about  The full comparison table is below. 
 I also looked at djv, json-schema, is-my-json-valid, and a few others, and decided not to add them in the table, because some of them aren't maintained, outdated, not performant, or serve different purpose. | 
Beta Was this translation helpful? Give feedback.
-
| @shdq, I edited my comment above regarding zod. I now (after learning about parsing package) don't think it should be considered for validation. With that said, I do think the distinction between validation and parsing is a nuanced once that many will not be aware of. It would be valuable to have a callout in the docs for validation that if you're looking for validation+parsing with zod, please see the parsing package. | 
Beta Was this translation helpful? Give feedback.
-
| I'd like to dive a bit deeper into the two top options:  Package SizeSetupFrom the linked benchmarks I wasn't sure about where the "unpacked size" came from, so I decided to test them a more production-like environment and see what's the final size. To do so, I have created a simple Lambda function that: 1/ imports the schema validation dependency, 2/ initializes it, 3/ provides a simple schema, and 4/ performs a validation. The function is intentionally left as small as possible & without any Powertools utility so that we can assess the final size of the dependency almost in isolation. Below you can find the code of the functions. Ajv functionimport Ajv from "ajv";
const ajv = new Ajv({ allErrors: false });
const schema = {
  type: "object",
  properties: {
    foo: { type: "integer" },
    bar: { type: "string" },
  },
  required: ["foo"],
  additionalProperties: false,
};
export const handler = async (event: any = {}): Promise<any> => {
  const valid = ajv.validate(schema, event);
  if (!valid) {
    return {
      statusCode: 400,
      body: JSON.stringify(ajv.errors),
    };
  }
  return {
    statusCode: 200,
    body: JSON.stringify(event),
  };
};schemasafe functionimport { validator } from "@exodus/schemasafe";
const validate = validator(
  {
    type: "object",
    properties: {
      foo: { type: "integer" },
      bar: { type: "string" },
    },
    required: ["foo"],
    additionalProperties: false,
  },
  {
    includeErrors: false,
  }
);
export const handler = async (event: any = {}): Promise<any> => {
  const valid = validate(event);
  if (!valid) {
    return {
      statusCode: 400,
      body: JSON.stringify(validate.errors),
    };
  }
  return {
    statusCode: 200,
    body: JSON.stringify(event),
  };
};Additionally, I'm bundling the function using  
 In all cases I am generating a metafile so that we can run it through the esbuild analyzer and see what it contains and its final size, plus ESM vs CJS distribution. Below you can see the code used to deploy/bundle. CJS as-isimport { Stack, type StackProps } from "aws-cdk-lib";
import { Construct } from "constructs";
import {
  NodejsFunction,
  OutputFormat,
} from "aws-cdk-lib/aws-lambda-nodejs";
import { Runtime } from "aws-cdk-lib/aws-lambda";
export class JsonScheamBenchStack extends Stack {
  constructor(scope: Construct, id: string, props?: StackProps) {
    super(scope, id, props);
    new NodejsFunction(this, "JsonSchemaBench", {
      runtime: Runtime.NODEJS_18_X,
      entry: "lib/fn/index.ts",
      handler: "handler",
      bundling: {
        format: OutputFormat.CJS,
        metafile: true,
      },
    });
  }
}CJS optimizedimport { Stack, type StackProps } from "aws-cdk-lib";
import { Construct } from "constructs";
import {
  NodejsFunction,
  OutputFormat,
  SourceMapMode,
} from "aws-cdk-lib/aws-lambda-nodejs";
import { Runtime } from "aws-cdk-lib/aws-lambda";
export class JsonScheamBenchStack extends Stack {
  constructor(scope: Construct, id: string, props?: StackProps) {
    super(scope, id, props);
    new NodejsFunction(this, "JsonSchemaBench", {
      runtime: Runtime.NODEJS_18_X,
      entry: "lib/fn/index.ts",
      handler: "handler",
      bundling: {
        format: OutputFormat.CJS,
        metafile: true,
        minify: true,
        mainFields: ["module", "main"],
        sourceMap: true,
        sourceMapMode: SourceMapMode.EXTERNAL,
        esbuildArgs: {
          "--tree-shaking": "true",
        },
      },
    });
  }
}ESM as-isimport { Stack, type StackProps } from "aws-cdk-lib";
import { Construct } from "constructs";
import {
  NodejsFunction,
  OutputFormat,
} from "aws-cdk-lib/aws-lambda-nodejs";
import { Runtime } from "aws-cdk-lib/aws-lambda";
export class JsonScheamBenchStack extends Stack {
  constructor(scope: Construct, id: string, props?: StackProps) {
    super(scope, id, props);
    new NodejsFunction(this, "JsonSchemaBench", {
      runtime: Runtime.NODEJS_18_X,
      entry: "lib/fn/index.ts",
      handler: "handler",
      bundling: {
        format: OutputFormat.ESM,
        metafile: true,
      },
    });
  }
}ESM optimizedimport { Stack, type StackProps } from "aws-cdk-lib";
import { Construct } from "constructs";
import {
  NodejsFunction,
  OutputFormat,
  SourceMapMode,
} from "aws-cdk-lib/aws-lambda-nodejs";
import { Runtime } from "aws-cdk-lib/aws-lambda";
export class JsonScheamBenchStack extends Stack {
  constructor(scope: Construct, id: string, props?: StackProps) {
    super(scope, id, props);
    new NodejsFunction(this, "JsonSchemaBench", {
      runtime: Runtime.NODEJS_18_X,
      entry: "lib/fn/index.ts",
      handler: "handler",
      bundling: {
        format: OutputFormat.ESM,
        metafile: true,
        minify: true,
        mainFields: ["module", "main"],
        sourceMap: true,
        sourceMapMode: SourceMapMode.EXTERNAL,
        esbuildArgs: {
          "--tree-shaking": "true",
        },
      },
    });
  }
}ResultsFrom the results below we can observe a few things: 
 
 Below a breakdown of each result, you can get the metafile generated by each test in the  AjvCJS as-is (not optimized){
  "inputs": {
    "node_modules/ajv/dist/compile/codegen/code.js": {
      "bytes": 4609,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/codegen/scope.js": {
      "bytes": 5206,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/code.js",
          "kind": "require-call",
          "original": "./code"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/codegen/index.js": {
      "bytes": 23127,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/code.js",
          "kind": "require-call",
          "original": "./code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/scope.js",
          "kind": "require-call",
          "original": "./scope"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/code.js",
          "kind": "require-call",
          "original": "./code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/scope.js",
          "kind": "require-call",
          "original": "./scope"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/util.js": {
      "bytes": 7111,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/code.js",
          "kind": "require-call",
          "original": "./codegen/code"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/names.js": {
      "bytes": 1113,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/errors.js": {
      "bytes": 5744,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "./util"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "./names"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/boolSchema.js": {
      "bytes": 1531,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/errors.js",
          "kind": "require-call",
          "original": "../errors"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "../names"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/rules.js": {
      "bytes": 918,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/applicability.js": {
      "bytes": 853,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/dataType.js": {
      "bytes": 8339,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/rules.js",
          "kind": "require-call",
          "original": "../rules"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/applicability.js",
          "kind": "require-call",
          "original": "./applicability"
        },
        {
          "path": "node_modules/ajv/dist/compile/errors.js",
          "kind": "require-call",
          "original": "../errors"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/defaults.js": {
      "bytes": 1448,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/code.js": {
      "bytes": 6216,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "../compile/names"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/keyword.js": {
      "bytes": 5695,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "../names"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../../vocabularies/code"
        },
        {
          "path": "node_modules/ajv/dist/compile/errors.js",
          "kind": "require-call",
          "original": "../errors"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/subschema.js": {
      "bytes": 3858,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/fast-deep-equal/index.js": {
      "bytes": 1177,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/json-schema-traverse/index.js": {
      "bytes": 2428,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/resolve.js": {
      "bytes": 4981,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "./util"
        },
        {
          "path": "node_modules/fast-deep-equal/index.js",
          "kind": "require-call",
          "original": "fast-deep-equal"
        },
        {
          "path": "node_modules/json-schema-traverse/index.js",
          "kind": "require-call",
          "original": "json-schema-traverse"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/index.js": {
      "bytes": 20552,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/validate/boolSchema.js",
          "kind": "require-call",
          "original": "./boolSchema"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/dataType.js",
          "kind": "require-call",
          "original": "./dataType"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/applicability.js",
          "kind": "require-call",
          "original": "./applicability"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/dataType.js",
          "kind": "require-call",
          "original": "./dataType"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/defaults.js",
          "kind": "require-call",
          "original": "./defaults"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/keyword.js",
          "kind": "require-call",
          "original": "./keyword"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/subschema.js",
          "kind": "require-call",
          "original": "./subschema"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "../names"
        },
        {
          "path": "node_modules/ajv/dist/compile/resolve.js",
          "kind": "require-call",
          "original": "../resolve"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../util"
        },
        {
          "path": "node_modules/ajv/dist/compile/errors.js",
          "kind": "require-call",
          "original": "../errors"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/runtime/validation_error.js": {
      "bytes": 337,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/ref_error.js": {
      "bytes": 543,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/resolve.js",
          "kind": "require-call",
          "original": "./resolve"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/index.js": {
      "bytes": 9983,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./codegen"
        },
        {
          "path": "node_modules/ajv/dist/runtime/validation_error.js",
          "kind": "require-call",
          "original": "../runtime/validation_error"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "./names"
        },
        {
          "path": "node_modules/ajv/dist/compile/resolve.js",
          "kind": "require-call",
          "original": "./resolve"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "./util"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/index.js",
          "kind": "require-call",
          "original": "./validate"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/refs/data.json": {
      "bytes": 409,
      "imports": []
    },
    "node_modules/uri-js/dist/es5/uri.all.js": {
      "bytes": 57304,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/runtime/uri.js": {
      "bytes": 216,
      "imports": [
        {
          "path": "node_modules/uri-js/dist/es5/uri.all.js",
          "kind": "require-call",
          "original": "uri-js"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/core.js": {
      "bytes": 25103,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/validate/index.js",
          "kind": "require-call",
          "original": "./compile/validate"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/runtime/validation_error.js",
          "kind": "require-call",
          "original": "./runtime/validation_error"
        },
        {
          "path": "node_modules/ajv/dist/compile/ref_error.js",
          "kind": "require-call",
          "original": "./compile/ref_error"
        },
        {
          "path": "node_modules/ajv/dist/compile/rules.js",
          "kind": "require-call",
          "original": "./compile/rules"
        },
        {
          "path": "node_modules/ajv/dist/compile/index.js",
          "kind": "require-call",
          "original": "./compile"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/resolve.js",
          "kind": "require-call",
          "original": "./compile/resolve"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/dataType.js",
          "kind": "require-call",
          "original": "./compile/validate/dataType"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "./compile/util"
        },
        {
          "path": "node_modules/ajv/dist/refs/data.json",
          "kind": "require-call",
          "original": "./refs/data.json"
        },
        {
          "path": "node_modules/ajv/dist/runtime/uri.js",
          "kind": "require-call",
          "original": "./runtime/uri"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/core/id.js": {
      "bytes": 267,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/core/ref.js": {
      "bytes": 5234,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/ref_error.js",
          "kind": "require-call",
          "original": "../../compile/ref_error"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "../../compile/names"
        },
        {
          "path": "node_modules/ajv/dist/compile/index.js",
          "kind": "require-call",
          "original": "../../compile"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/core/index.js": {
      "bytes": 357,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/core/id.js",
          "kind": "require-call",
          "original": "./id"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/core/ref.js",
          "kind": "require-call",
          "original": "./ref"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/limitNumber.js": {
      "bytes": 1036,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/multipleOf.js": {
      "bytes": 1023,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/runtime/ucs2length.js": {
      "bytes": 808,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/limitLength.js": {
      "bytes": 1130,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/runtime/ucs2length.js",
          "kind": "require-call",
          "original": "../../runtime/ucs2length"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/pattern.js": {
      "bytes": 905,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/limitProperties.js": {
      "bytes": 896,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/required.js": {
      "bytes": 3188,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/limitItems.js": {
      "bytes": 852,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/runtime/equal.js": {
      "bytes": 286,
      "imports": [
        {
          "path": "node_modules/fast-deep-equal/index.js",
          "kind": "require-call",
          "original": "fast-deep-equal"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/uniqueItems.js": {
      "bytes": 3037,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/validate/dataType.js",
          "kind": "require-call",
          "original": "../../compile/validate/dataType"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/runtime/equal.js",
          "kind": "require-call",
          "original": "../../runtime/equal"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/const.js": {
      "bytes": 852,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/runtime/equal.js",
          "kind": "require-call",
          "original": "../../runtime/equal"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/enum.js": {
      "bytes": 1901,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/runtime/equal.js",
          "kind": "require-call",
          "original": "../../runtime/equal"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/index.js": {
      "bytes": 1036,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/limitNumber.js",
          "kind": "require-call",
          "original": "./limitNumber"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/multipleOf.js",
          "kind": "require-call",
          "original": "./multipleOf"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/limitLength.js",
          "kind": "require-call",
          "original": "./limitLength"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/pattern.js",
          "kind": "require-call",
          "original": "./pattern"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/limitProperties.js",
          "kind": "require-call",
          "original": "./limitProperties"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/required.js",
          "kind": "require-call",
          "original": "./required"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/limitItems.js",
          "kind": "require-call",
          "original": "./limitItems"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/uniqueItems.js",
          "kind": "require-call",
          "original": "./uniqueItems"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/const.js",
          "kind": "require-call",
          "original": "./const"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/enum.js",
          "kind": "require-call",
          "original": "./enum"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/additionalItems.js": {
      "bytes": 1931,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/items.js": {
      "bytes": 1993,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/prefixItems.js": {
      "bytes": 354,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/items.js",
          "kind": "require-call",
          "original": "./items"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/items2020.js": {
      "bytes": 1037,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/additionalItems.js",
          "kind": "require-call",
          "original": "./additionalItems"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/contains.js": {
      "bytes": 3680,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/dependencies.js": {
      "bytes": 3198,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/propertyNames.js": {
      "bytes": 1221,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js": {
      "bytes": 4309,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "../../compile/names"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/properties.js": {
      "bytes": 2153,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/validate/index.js",
          "kind": "require-call",
          "original": "../../compile/validate"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js",
          "kind": "require-call",
          "original": "./additionalProperties"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/patternProperties.js": {
      "bytes": 3236,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/not.js": {
      "bytes": 773,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/anyOf.js": {
      "bytes": 343,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/oneOf.js": {
      "bytes": 2257,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/allOf.js": {
      "bytes": 756,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/if.js": {
      "bytes": 2438,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/thenElse.js": {
      "bytes": 446,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/index.js": {
      "bytes": 1529,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/additionalItems.js",
          "kind": "require-call",
          "original": "./additionalItems"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/prefixItems.js",
          "kind": "require-call",
          "original": "./prefixItems"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/items.js",
          "kind": "require-call",
          "original": "./items"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/items2020.js",
          "kind": "require-call",
          "original": "./items2020"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/contains.js",
          "kind": "require-call",
          "original": "./contains"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/dependencies.js",
          "kind": "require-call",
          "original": "./dependencies"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/propertyNames.js",
          "kind": "require-call",
          "original": "./propertyNames"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js",
          "kind": "require-call",
          "original": "./additionalProperties"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/properties.js",
          "kind": "require-call",
          "original": "./properties"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/patternProperties.js",
          "kind": "require-call",
          "original": "./patternProperties"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/not.js",
          "kind": "require-call",
          "original": "./not"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/anyOf.js",
          "kind": "require-call",
          "original": "./anyOf"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/oneOf.js",
          "kind": "require-call",
          "original": "./oneOf"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/allOf.js",
          "kind": "require-call",
          "original": "./allOf"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/if.js",
          "kind": "require-call",
          "original": "./if"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/thenElse.js",
          "kind": "require-call",
          "original": "./thenElse"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/format/format.js": {
      "bytes": 4317,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/format/index.js": {
      "bytes": 209,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/format/format.js",
          "kind": "require-call",
          "original": "./format"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/metadata.js": {
      "bytes": 427,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/draft7.js": {
      "bytes": 557,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/core/index.js",
          "kind": "require-call",
          "original": "./core"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/index.js",
          "kind": "require-call",
          "original": "./validation"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/index.js",
          "kind": "require-call",
          "original": "./applicator"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/format/index.js",
          "kind": "require-call",
          "original": "./format"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/metadata.js",
          "kind": "require-call",
          "original": "./metadata"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/discriminator/types.js": {
      "bytes": 316,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/discriminator/index.js": {
      "bytes": 4659,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/discriminator/types.js",
          "kind": "require-call",
          "original": "../discriminator/types"
        },
        {
          "path": "node_modules/ajv/dist/compile/index.js",
          "kind": "require-call",
          "original": "../../compile"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/refs/json-schema-draft-07.json": {
      "bytes": 3811,
      "imports": []
    },
    "node_modules/ajv/dist/ajv.js": {
      "bytes": 2782,
      "imports": [
        {
          "path": "node_modules/ajv/dist/core.js",
          "kind": "require-call",
          "original": "./core"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/draft7.js",
          "kind": "require-call",
          "original": "./vocabularies/draft7"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/discriminator/index.js",
          "kind": "require-call",
          "original": "./vocabularies/discriminator"
        },
        {
          "path": "node_modules/ajv/dist/refs/json-schema-draft-07.json",
          "kind": "require-call",
          "original": "./refs/json-schema-draft-07.json"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/index.js",
          "kind": "require-call",
          "original": "./compile/validate"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/runtime/validation_error.js",
          "kind": "require-call",
          "original": "./runtime/validation_error"
        },
        {
          "path": "node_modules/ajv/dist/compile/ref_error.js",
          "kind": "require-call",
          "original": "./compile/ref_error"
        }
      ],
      "format": "cjs"
    },
    "lib/index.ts": {
      "bytes": 526,
      "imports": [
        {
          "path": "node_modules/ajv/dist/ajv.js",
          "kind": "import-statement",
          "original": "ajv"
        }
      ],
      "format": "esm"
    }
  },
  "outputs": {
    "cdk.out/bundling-temp-0990d7ea4018ad0a411912ef858acd9549ca8be4aee1c21fe73ae824ac9beadd/index.js": {
      "imports": [],
      "exports": [],
      "entryPoint": "lib/index.ts",
      "inputs": {
        "node_modules/ajv/dist/compile/codegen/code.js": {
          "bytesInOutput": 4828
        },
        "node_modules/ajv/dist/compile/codegen/scope.js": {
          "bytesInOutput": 5320
        },
        "node_modules/ajv/dist/compile/codegen/index.js": {
          "bytesInOutput": 23933
        },
        "node_modules/ajv/dist/compile/util.js": {
          "bytesInOutput": 7179
        },
        "node_modules/ajv/dist/compile/names.js": {
          "bytesInOutput": 1233
        },
        "node_modules/ajv/dist/compile/errors.js": {
          "bytesInOutput": 5946
        },
        "node_modules/ajv/dist/compile/validate/boolSchema.js": {
          "bytesInOutput": 1568
        },
        "node_modules/ajv/dist/compile/rules.js": {
          "bytesInOutput": 1028
        },
        "node_modules/ajv/dist/compile/validate/applicability.js": {
          "bytesInOutput": 989
        },
        "node_modules/ajv/dist/compile/validate/dataType.js": {
          "bytesInOutput": 8180
        },
        "node_modules/ajv/dist/compile/validate/defaults.js": {
          "bytesInOutput": 1429
        },
        "node_modules/ajv/dist/vocabularies/code.js": {
          "bytesInOutput": 6236
        },
        "node_modules/ajv/dist/compile/validate/keyword.js": {
          "bytesInOutput": 5744
        },
        "node_modules/ajv/dist/compile/validate/subschema.js": {
          "bytesInOutput": 3742
        },
        "node_modules/fast-deep-equal/index.js": {
          "bytesInOutput": 1413
        },
        "node_modules/json-schema-traverse/index.js": {
          "bytesInOutput": 2843
        },
        "node_modules/ajv/dist/compile/resolve.js": {
          "bytesInOutput": 5082
        },
        "node_modules/ajv/dist/compile/validate/index.js": {
          "bytesInOutput": 20425
        },
        "node_modules/ajv/dist/runtime/validation_error.js": {
          "bytesInOutput": 441
        },
        "node_modules/ajv/dist/compile/ref_error.js": {
          "bytesInOutput": 639
        },
        "node_modules/ajv/dist/compile/index.js": {
          "bytesInOutput": 9098
        },
        "node_modules/ajv/dist/refs/data.json": {
          "bytesInOutput": 563
        },
        "node_modules/uri-js/dist/es5/uri.all.js": {
          "bytesInOutput": 49091
        },
        "node_modules/ajv/dist/runtime/uri.js": {
          "bytesInOutput": 294
        },
        "node_modules/ajv/dist/core.js": {
          "bytesInOutput": 24068
        },
        "node_modules/ajv/dist/vocabularies/core/id.js": {
          "bytesInOutput": 359
        },
        "node_modules/ajv/dist/vocabularies/core/ref.js": {
          "bytesInOutput": 5026
        },
        "node_modules/ajv/dist/vocabularies/core/index.js": {
          "bytesInOutput": 460
        },
        "node_modules/ajv/dist/vocabularies/validation/limitNumber.js": {
          "bytesInOutput": 1159
        },
        "node_modules/ajv/dist/vocabularies/validation/multipleOf.js": {
          "bytesInOutput": 1025
        },
        "node_modules/ajv/dist/runtime/ucs2length.js": {
          "bytesInOutput": 703
        },
        "node_modules/ajv/dist/vocabularies/validation/limitLength.js": {
          "bytesInOutput": 1212
        },
        "node_modules/ajv/dist/vocabularies/validation/pattern.js": {
          "bytesInOutput": 962
        },
        "node_modules/ajv/dist/vocabularies/validation/limitProperties.js": {
          "bytesInOutput": 1010
        },
        "node_modules/ajv/dist/vocabularies/validation/required.js": {
          "bytesInOutput": 3129
        },
        "node_modules/ajv/dist/vocabularies/validation/limitItems.js": {
          "bytesInOutput": 961
        },
        "node_modules/ajv/dist/runtime/equal.js": {
          "bytesInOutput": 314
        },
        "node_modules/ajv/dist/vocabularies/validation/uniqueItems.js": {
          "bytesInOutput": 2967
        },
        "node_modules/ajv/dist/vocabularies/validation/const.js": {
          "bytesInOutput": 922
        },
        "node_modules/ajv/dist/vocabularies/validation/enum.js": {
          "bytesInOutput": 1882
        },
        "node_modules/ajv/dist/vocabularies/validation/index.js": {
          "bytesInOutput": 1160
        },
        "node_modules/ajv/dist/vocabularies/applicator/additionalItems.js": {
          "bytesInOutput": 2044
        },
        "node_modules/ajv/dist/vocabularies/applicator/items.js": {
          "bytesInOutput": 2102
        },
        "node_modules/ajv/dist/vocabularies/applicator/prefixItems.js": {
          "bytesInOutput": 464
        },
        "node_modules/ajv/dist/vocabularies/applicator/items2020.js": {
          "bytesInOutput": 1133
        },
        "node_modules/ajv/dist/vocabularies/applicator/contains.js": {
          "bytesInOutput": 3571
        },
        "node_modules/ajv/dist/vocabularies/applicator/dependencies.js": {
          "bytesInOutput": 3375
        },
        "node_modules/ajv/dist/vocabularies/applicator/propertyNames.js": {
          "bytesInOutput": 1281
        },
        "node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js": {
          "bytesInOutput": 4045
        },
        "node_modules/ajv/dist/vocabularies/applicator/properties.js": {
          "bytesInOutput": 2166
        },
        "node_modules/ajv/dist/vocabularies/applicator/patternProperties.js": {
          "bytesInOutput": 2860
        },
        "node_modules/ajv/dist/vocabularies/applicator/not.js": {
          "bytesInOutput": 862
        },
        "node_modules/ajv/dist/vocabularies/applicator/anyOf.js": {
          "bytesInOutput": 447
        },
        "node_modules/ajv/dist/vocabularies/applicator/oneOf.js": {
          "bytesInOutput": 1975
        },
        "node_modules/ajv/dist/vocabularies/applicator/allOf.js": {
          "bytesInOutput": 810
        },
        "node_modules/ajv/dist/vocabularies/applicator/if.js": {
          "bytesInOutput": 2439
        },
        "node_modules/ajv/dist/vocabularies/applicator/thenElse.js": {
          "bytesInOutput": 534
        },
        "node_modules/ajv/dist/vocabularies/applicator/index.js": {
          "bytesInOutput": 1614
        },
        "node_modules/ajv/dist/vocabularies/format/format.js": {
          "bytesInOutput": 4056
        },
        "node_modules/ajv/dist/vocabularies/format/index.js": {
          "bytesInOutput": 298
        },
        "node_modules/ajv/dist/vocabularies/metadata.js": {
          "bytesInOutput": 543
        },
        "node_modules/ajv/dist/vocabularies/draft7.js": {
          "bytesInOutput": 651
        },
        "node_modules/ajv/dist/vocabularies/discriminator/types.js": {
          "bytesInOutput": 427
        },
        "node_modules/ajv/dist/vocabularies/discriminator/index.js": {
          "bytesInOutput": 4500
        },
        "node_modules/ajv/dist/refs/json-schema-draft-07.json": {
          "bytesInOutput": 4337
        },
        "node_modules/ajv/dist/ajv.js": {
          "bytesInOutput": 2906
        },
        "lib/index.ts": {
          "bytesInOutput": 639
        }
      },
      "bytes": 270106
    }
  }
}CJS optimized{
  "inputs": {
    "node_modules/ajv/dist/compile/codegen/code.js": {
      "bytes": 4609,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/codegen/scope.js": {
      "bytes": 5206,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/code.js",
          "kind": "require-call",
          "original": "./code"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/codegen/index.js": {
      "bytes": 23127,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/code.js",
          "kind": "require-call",
          "original": "./code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/scope.js",
          "kind": "require-call",
          "original": "./scope"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/code.js",
          "kind": "require-call",
          "original": "./code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/scope.js",
          "kind": "require-call",
          "original": "./scope"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/util.js": {
      "bytes": 7111,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/code.js",
          "kind": "require-call",
          "original": "./codegen/code"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/names.js": {
      "bytes": 1113,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/errors.js": {
      "bytes": 5744,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "./util"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "./names"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/boolSchema.js": {
      "bytes": 1531,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/errors.js",
          "kind": "require-call",
          "original": "../errors"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "../names"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/rules.js": {
      "bytes": 918,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/applicability.js": {
      "bytes": 853,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/dataType.js": {
      "bytes": 8339,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/rules.js",
          "kind": "require-call",
          "original": "../rules"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/applicability.js",
          "kind": "require-call",
          "original": "./applicability"
        },
        {
          "path": "node_modules/ajv/dist/compile/errors.js",
          "kind": "require-call",
          "original": "../errors"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/defaults.js": {
      "bytes": 1448,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/code.js": {
      "bytes": 6216,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "../compile/names"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/keyword.js": {
      "bytes": 5695,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "../names"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../../vocabularies/code"
        },
        {
          "path": "node_modules/ajv/dist/compile/errors.js",
          "kind": "require-call",
          "original": "../errors"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/subschema.js": {
      "bytes": 3858,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/fast-deep-equal/index.js": {
      "bytes": 1177,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/json-schema-traverse/index.js": {
      "bytes": 2428,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/resolve.js": {
      "bytes": 4981,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "./util"
        },
        {
          "path": "node_modules/fast-deep-equal/index.js",
          "kind": "require-call",
          "original": "fast-deep-equal"
        },
        {
          "path": "node_modules/json-schema-traverse/index.js",
          "kind": "require-call",
          "original": "json-schema-traverse"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/index.js": {
      "bytes": 20552,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/validate/boolSchema.js",
          "kind": "require-call",
          "original": "./boolSchema"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/dataType.js",
          "kind": "require-call",
          "original": "./dataType"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/applicability.js",
          "kind": "require-call",
          "original": "./applicability"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/dataType.js",
          "kind": "require-call",
          "original": "./dataType"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/defaults.js",
          "kind": "require-call",
          "original": "./defaults"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/keyword.js",
          "kind": "require-call",
          "original": "./keyword"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/subschema.js",
          "kind": "require-call",
          "original": "./subschema"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "../names"
        },
        {
          "path": "node_modules/ajv/dist/compile/resolve.js",
          "kind": "require-call",
          "original": "../resolve"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../util"
        },
        {
          "path": "node_modules/ajv/dist/compile/errors.js",
          "kind": "require-call",
          "original": "../errors"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/runtime/validation_error.js": {
      "bytes": 337,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/ref_error.js": {
      "bytes": 543,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/resolve.js",
          "kind": "require-call",
          "original": "./resolve"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/index.js": {
      "bytes": 9983,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./codegen"
        },
        {
          "path": "node_modules/ajv/dist/runtime/validation_error.js",
          "kind": "require-call",
          "original": "../runtime/validation_error"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "./names"
        },
        {
          "path": "node_modules/ajv/dist/compile/resolve.js",
          "kind": "require-call",
          "original": "./resolve"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "./util"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/index.js",
          "kind": "require-call",
          "original": "./validate"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/refs/data.json": {
      "bytes": 409,
      "imports": []
    },
    "node_modules/uri-js/dist/es5/uri.all.js": {
      "bytes": 57304,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/runtime/uri.js": {
      "bytes": 216,
      "imports": [
        {
          "path": "node_modules/uri-js/dist/es5/uri.all.js",
          "kind": "require-call",
          "original": "uri-js"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/core.js": {
      "bytes": 25103,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/validate/index.js",
          "kind": "require-call",
          "original": "./compile/validate"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/runtime/validation_error.js",
          "kind": "require-call",
          "original": "./runtime/validation_error"
        },
        {
          "path": "node_modules/ajv/dist/compile/ref_error.js",
          "kind": "require-call",
          "original": "./compile/ref_error"
        },
        {
          "path": "node_modules/ajv/dist/compile/rules.js",
          "kind": "require-call",
          "original": "./compile/rules"
        },
        {
          "path": "node_modules/ajv/dist/compile/index.js",
          "kind": "require-call",
          "original": "./compile"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/resolve.js",
          "kind": "require-call",
          "original": "./compile/resolve"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/dataType.js",
          "kind": "require-call",
          "original": "./compile/validate/dataType"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "./compile/util"
        },
        {
          "path": "node_modules/ajv/dist/refs/data.json",
          "kind": "require-call",
          "original": "./refs/data.json"
        },
        {
          "path": "node_modules/ajv/dist/runtime/uri.js",
          "kind": "require-call",
          "original": "./runtime/uri"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/core/id.js": {
      "bytes": 267,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/core/ref.js": {
      "bytes": 5234,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/ref_error.js",
          "kind": "require-call",
          "original": "../../compile/ref_error"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "../../compile/names"
        },
        {
          "path": "node_modules/ajv/dist/compile/index.js",
          "kind": "require-call",
          "original": "../../compile"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/core/index.js": {
      "bytes": 357,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/core/id.js",
          "kind": "require-call",
          "original": "./id"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/core/ref.js",
          "kind": "require-call",
          "original": "./ref"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/limitNumber.js": {
      "bytes": 1036,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/multipleOf.js": {
      "bytes": 1023,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/runtime/ucs2length.js": {
      "bytes": 808,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/limitLength.js": {
      "bytes": 1130,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/runtime/ucs2length.js",
          "kind": "require-call",
          "original": "../../runtime/ucs2length"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/pattern.js": {
      "bytes": 905,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/limitProperties.js": {
      "bytes": 896,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/required.js": {
      "bytes": 3188,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/limitItems.js": {
      "bytes": 852,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/runtime/equal.js": {
      "bytes": 286,
      "imports": [
        {
          "path": "node_modules/fast-deep-equal/index.js",
          "kind": "require-call",
          "original": "fast-deep-equal"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/uniqueItems.js": {
      "bytes": 3037,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/validate/dataType.js",
          "kind": "require-call",
          "original": "../../compile/validate/dataType"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/runtime/equal.js",
          "kind": "require-call",
          "original": "../../runtime/equal"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/const.js": {
      "bytes": 852,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/runtime/equal.js",
          "kind": "require-call",
          "original": "../../runtime/equal"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/enum.js": {
      "bytes": 1901,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/runtime/equal.js",
          "kind": "require-call",
          "original": "../../runtime/equal"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/index.js": {
      "bytes": 1036,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/limitNumber.js",
          "kind": "require-call",
          "original": "./limitNumber"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/multipleOf.js",
          "kind": "require-call",
          "original": "./multipleOf"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/limitLength.js",
          "kind": "require-call",
          "original": "./limitLength"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/pattern.js",
          "kind": "require-call",
          "original": "./pattern"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/limitProperties.js",
          "kind": "require-call",
          "original": "./limitProperties"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/required.js",
          "kind": "require-call",
          "original": "./required"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/limitItems.js",
          "kind": "require-call",
          "original": "./limitItems"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/uniqueItems.js",
          "kind": "require-call",
          "original": "./uniqueItems"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/const.js",
          "kind": "require-call",
          "original": "./const"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/enum.js",
          "kind": "require-call",
          "original": "./enum"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/additionalItems.js": {
      "bytes": 1931,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/items.js": {
      "bytes": 1993,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/prefixItems.js": {
      "bytes": 354,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/items.js",
          "kind": "require-call",
          "original": "./items"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/items2020.js": {
      "bytes": 1037,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/additionalItems.js",
          "kind": "require-call",
          "original": "./additionalItems"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/contains.js": {
      "bytes": 3680,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/dependencies.js": {
      "bytes": 3198,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/propertyNames.js": {
      "bytes": 1221,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js": {
      "bytes": 4309,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "../../compile/names"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/properties.js": {
      "bytes": 2153,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/validate/index.js",
          "kind": "require-call",
          "original": "../../compile/validate"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js",
          "kind": "require-call",
          "original": "./additionalProperties"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/patternProperties.js": {
      "bytes": 3236,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/not.js": {
      "bytes": 773,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/anyOf.js": {
      "bytes": 343,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/oneOf.js": {
      "bytes": 2257,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/allOf.js": {
      "bytes": 756,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/if.js": {
      "bytes": 2438,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/thenElse.js": {
      "bytes": 446,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/index.js": {
      "bytes": 1529,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/additionalItems.js",
          "kind": "require-call",
          "original": "./additionalItems"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/prefixItems.js",
          "kind": "require-call",
          "original": "./prefixItems"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/items.js",
          "kind": "require-call",
          "original": "./items"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/items2020.js",
          "kind": "require-call",
          "original": "./items2020"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/contains.js",
          "kind": "require-call",
          "original": "./contains"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/dependencies.js",
          "kind": "require-call",
          "original": "./dependencies"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/propertyNames.js",
          "kind": "require-call",
          "original": "./propertyNames"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js",
          "kind": "require-call",
          "original": "./additionalProperties"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/properties.js",
          "kind": "require-call",
          "original": "./properties"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/patternProperties.js",
          "kind": "require-call",
          "original": "./patternProperties"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/not.js",
          "kind": "require-call",
          "original": "./not"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/anyOf.js",
          "kind": "require-call",
          "original": "./anyOf"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/oneOf.js",
          "kind": "require-call",
          "original": "./oneOf"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/allOf.js",
          "kind": "require-call",
          "original": "./allOf"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/if.js",
          "kind": "require-call",
          "original": "./if"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/thenElse.js",
          "kind": "require-call",
          "original": "./thenElse"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/format/format.js": {
      "bytes": 4317,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/format/index.js": {
      "bytes": 209,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/format/format.js",
          "kind": "require-call",
          "original": "./format"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/metadata.js": {
      "bytes": 427,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/draft7.js": {
      "bytes": 557,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/core/index.js",
          "kind": "require-call",
          "original": "./core"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/index.js",
          "kind": "require-call",
          "original": "./validation"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/index.js",
          "kind": "require-call",
          "original": "./applicator"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/format/index.js",
          "kind": "require-call",
          "original": "./format"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/metadata.js",
          "kind": "require-call",
          "original": "./metadata"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/discriminator/types.js": {
      "bytes": 316,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/discriminator/index.js": {
      "bytes": 4659,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/discriminator/types.js",
          "kind": "require-call",
          "original": "../discriminator/types"
        },
        {
          "path": "node_modules/ajv/dist/compile/index.js",
          "kind": "require-call",
          "original": "../../compile"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/refs/json-schema-draft-07.json": {
      "bytes": 3811,
      "imports": []
    },
    "node_modules/ajv/dist/ajv.js": {
      "bytes": 2782,
      "imports": [
        {
          "path": "node_modules/ajv/dist/core.js",
          "kind": "require-call",
          "original": "./core"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/draft7.js",
          "kind": "require-call",
          "original": "./vocabularies/draft7"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/discriminator/index.js",
          "kind": "require-call",
          "original": "./vocabularies/discriminator"
        },
        {
          "path": "node_modules/ajv/dist/refs/json-schema-draft-07.json",
          "kind": "require-call",
          "original": "./refs/json-schema-draft-07.json"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/index.js",
          "kind": "require-call",
          "original": "./compile/validate"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/runtime/validation_error.js",
          "kind": "require-call",
          "original": "./runtime/validation_error"
        },
        {
          "path": "node_modules/ajv/dist/compile/ref_error.js",
          "kind": "require-call",
          "original": "./compile/ref_error"
        }
      ],
      "format": "cjs"
    },
    "lib/index.ts": {
      "bytes": 526,
      "imports": [
        {
          "path": "node_modules/ajv/dist/ajv.js",
          "kind": "import-statement",
          "original": "ajv"
        }
      ],
      "format": "esm"
    }
  },
  "outputs": {
    "cdk.out/bundling-temp-a4cef03ca0990f006ed0f408fa8502aa66ceaf062b5fa86c78880fb7fb32f3e7/index.js.map": {
      "imports": [],
      "exports": [],
      "inputs": {},
      "bytes": 460012
    },
    "cdk.out/bundling-temp-a4cef03ca0990f006ed0f408fa8502aa66ceaf062b5fa86c78880fb7fb32f3e7/index.js": {
      "imports": [],
      "exports": [],
      "entryPoint": "lib/index.ts",
      "inputs": {
        "node_modules/ajv/dist/compile/codegen/code.js": {
          "bytesInOutput": 2551
        },
        "node_modules/ajv/dist/compile/codegen/scope.js": {
          "bytesInOutput": 2600
        },
        "node_modules/ajv/dist/compile/codegen/index.js": {
          "bytesInOutput": 11758
        },
        "node_modules/ajv/dist/compile/util.js": {
          "bytesInOutput": 3574
        },
        "node_modules/ajv/dist/compile/names.js": {
          "bytesInOutput": 629
        },
        "node_modules/ajv/dist/compile/errors.js": {
          "bytesInOutput": 3104
        },
        "node_modules/ajv/dist/compile/validate/boolSchema.js": {
          "bytesInOutput": 672
        },
        "node_modules/ajv/dist/compile/rules.js": {
          "bytesInOutput": 570
        },
        "node_modules/ajv/dist/compile/validate/applicability.js": {
          "bytesInOutput": 480
        },
        "node_modules/ajv/dist/compile/validate/dataType.js": {
          "bytesInOutput": 4120
        },
        "node_modules/ajv/dist/compile/validate/defaults.js": {
          "bytesInOutput": 680
        },
        "node_modules/ajv/dist/vocabularies/code.js": {
          "bytesInOutput": 3106
        },
        "node_modules/ajv/dist/compile/validate/keyword.js": {
          "bytesInOutput": 2961
        },
        "node_modules/ajv/dist/compile/validate/subschema.js": {
          "bytesInOutput": 1978
        },
        "node_modules/fast-deep-equal/index.js": {
          "bytesInOutput": 736
        },
        "node_modules/json-schema-traverse/index.js": {
          "bytesInOutput": 1246
        },
        "node_modules/ajv/dist/compile/resolve.js": {
          "bytesInOutput": 2087
        },
        "node_modules/ajv/dist/compile/validate/index.js": {
          "bytesInOutput": 10181
        },
        "node_modules/ajv/dist/runtime/validation_error.js": {
          "bytesInOutput": 206
        },
        "node_modules/ajv/dist/compile/ref_error.js": {
          "bytesInOutput": 323
        },
        "node_modules/ajv/dist/compile/index.js": {
          "bytesInOutput": 4688
        },
        "node_modules/ajv/dist/refs/data.json": {
          "bytesInOutput": 358
        },
        "node_modules/uri-js/dist/es5/uri.all.js": {
          "bytesInOutput": 18833
        },
        "node_modules/ajv/dist/runtime/uri.js": {
          "bytesInOutput": 155
        },
        "node_modules/ajv/dist/core.js": {
          "bytesInOutput": 12293
        },
        "node_modules/ajv/dist/vocabularies/core/id.js": {
          "bytesInOutput": 195
        },
        "node_modules/ajv/dist/vocabularies/core/ref.js": {
          "bytesInOutput": 2379
        },
        "node_modules/ajv/dist/vocabularies/core/index.js": {
          "bytesInOutput": 213
        },
        "node_modules/ajv/dist/vocabularies/validation/limitNumber.js": {
          "bytesInOutput": 666
        },
        "node_modules/ajv/dist/vocabularies/validation/multipleOf.js": {
          "bytesInOutput": 551
        },
        "node_modules/ajv/dist/runtime/ucs2length.js": {
          "bytesInOutput": 301
        },
        "node_modules/ajv/dist/vocabularies/validation/limitLength.js": {
          "bytesInOutput": 629
        },
        "node_modules/ajv/dist/vocabularies/validation/pattern.js": {
          "bytesInOutput": 497
        },
        "node_modules/ajv/dist/vocabularies/validation/limitProperties.js": {
          "bytesInOutput": 549
        },
        "node_modules/ajv/dist/vocabularies/validation/required.js": {
          "bytesInOutput": 1400
        },
        "node_modules/ajv/dist/vocabularies/validation/limitItems.js": {
          "bytesInOutput": 510
        },
        "node_modules/ajv/dist/runtime/equal.js": {
          "bytesInOutput": 157
        },
        "node_modules/ajv/dist/vocabularies/validation/uniqueItems.js": {
          "bytesInOutput": 1499
        },
        "node_modules/ajv/dist/vocabularies/validation/const.js": {
          "bytesInOutput": 439
        },
        "node_modules/ajv/dist/vocabularies/validation/enum.js": {
          "bytesInOutput": 921
        },
        "node_modules/ajv/dist/vocabularies/validation/index.js": {
          "bytesInOutput": 381
        },
        "node_modules/ajv/dist/vocabularies/applicator/additionalItems.js": {
          "bytesInOutput": 1090
        },
        "node_modules/ajv/dist/vocabularies/applicator/items.js": {
          "bytesInOutput": 1075
        },
        "node_modules/ajv/dist/vocabularies/applicator/prefixItems.js": {
          "bytesInOutput": 227
        },
        "node_modules/ajv/dist/vocabularies/applicator/items2020.js": {
          "bytesInOutput": 530
        },
        "node_modules/ajv/dist/vocabularies/applicator/contains.js": {
          "bytesInOutput": 1734
        },
        "node_modules/ajv/dist/vocabularies/applicator/dependencies.js": {
          "bytesInOutput": 1565
        },
        "node_modules/ajv/dist/vocabularies/applicator/propertyNames.js": {
          "bytesInOutput": 630
        },
        "node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js": {
          "bytesInOutput": 1741
        },
        "node_modules/ajv/dist/vocabularies/applicator/properties.js": {
          "bytesInOutput": 992
        },
        "node_modules/ajv/dist/vocabularies/applicator/patternProperties.js": {
          "bytesInOutput": 1168
        },
        "node_modules/ajv/dist/vocabularies/applicator/not.js": {
          "bytesInOutput": 435
        },
        "node_modules/ajv/dist/vocabularies/applicator/anyOf.js": {
          "bytesInOutput": 229
        },
        "node_modules/ajv/dist/vocabularies/applicator/oneOf.js": {
          "bytesInOutput": 912
        },
        "node_modules/ajv/dist/vocabularies/applicator/allOf.js": {
          "bytesInOutput": 407
        },
        "node_modules/ajv/dist/vocabularies/applicator/if.js": {
          "bytesInOutput": 1105
        },
        "node_modules/ajv/dist/vocabularies/applicator/thenElse.js": {
          "bytesInOutput": 278
        },
        "node_modules/ajv/dist/vocabularies/applicator/index.js": {
          "bytesInOutput": 462
        },
        "node_modules/ajv/dist/vocabularies/format/format.js": {
          "bytesInOutput": 1932
        },
        "node_modules/ajv/dist/vocabularies/format/index.js": {
          "bytesInOutput": 121
        },
        "node_modules/ajv/dist/vocabularies/metadata.js": {
          "bytesInOutput": 308
        },
        "node_modules/ajv/dist/vocabularies/draft7.js": {
          "bytesInOutput": 235
        },
        "node_modules/ajv/dist/vocabularies/discriminator/types.js": {
          "bytesInOutput": 192
        },
        "node_modules/ajv/dist/vocabularies/discriminator/index.js": {
          "bytesInOutput": 2211
        },
        "node_modules/ajv/dist/refs/json-schema-draft-07.json": {
          "bytesInOutput": 2481
        },
        "node_modules/ajv/dist/ajv.js": {
          "bytesInOutput": 1638
        },
        "lib/index.ts": {
          "bytesInOutput": 342
        }
      },
      "bytes": 126058
    }
  }
}ESM as-is (not optimized){
  "inputs": {
    "node_modules/ajv/dist/compile/codegen/code.js": {
      "bytes": 4609,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/codegen/scope.js": {
      "bytes": 5206,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/code.js",
          "kind": "require-call",
          "original": "./code"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/codegen/index.js": {
      "bytes": 23127,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/code.js",
          "kind": "require-call",
          "original": "./code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/scope.js",
          "kind": "require-call",
          "original": "./scope"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/code.js",
          "kind": "require-call",
          "original": "./code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/scope.js",
          "kind": "require-call",
          "original": "./scope"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/util.js": {
      "bytes": 7111,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/code.js",
          "kind": "require-call",
          "original": "./codegen/code"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/names.js": {
      "bytes": 1113,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/errors.js": {
      "bytes": 5744,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "./util"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "./names"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/boolSchema.js": {
      "bytes": 1531,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/errors.js",
          "kind": "require-call",
          "original": "../errors"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "../names"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/rules.js": {
      "bytes": 918,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/applicability.js": {
      "bytes": 853,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/dataType.js": {
      "bytes": 8339,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/rules.js",
          "kind": "require-call",
          "original": "../rules"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/applicability.js",
          "kind": "require-call",
          "original": "./applicability"
        },
        {
          "path": "node_modules/ajv/dist/compile/errors.js",
          "kind": "require-call",
          "original": "../errors"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/defaults.js": {
      "bytes": 1448,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/code.js": {
      "bytes": 6216,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "../compile/names"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/keyword.js": {
      "bytes": 5695,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "../names"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../../vocabularies/code"
        },
        {
          "path": "node_modules/ajv/dist/compile/errors.js",
          "kind": "require-call",
          "original": "../errors"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/subschema.js": {
      "bytes": 3858,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/fast-deep-equal/index.js": {
      "bytes": 1177,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/json-schema-traverse/index.js": {
      "bytes": 2428,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/resolve.js": {
      "bytes": 4981,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "./util"
        },
        {
          "path": "node_modules/fast-deep-equal/index.js",
          "kind": "require-call",
          "original": "fast-deep-equal"
        },
        {
          "path": "node_modules/json-schema-traverse/index.js",
          "kind": "require-call",
          "original": "json-schema-traverse"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/index.js": {
      "bytes": 20552,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/validate/boolSchema.js",
          "kind": "require-call",
          "original": "./boolSchema"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/dataType.js",
          "kind": "require-call",
          "original": "./dataType"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/applicability.js",
          "kind": "require-call",
          "original": "./applicability"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/dataType.js",
          "kind": "require-call",
          "original": "./dataType"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/defaults.js",
          "kind": "require-call",
          "original": "./defaults"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/keyword.js",
          "kind": "require-call",
          "original": "./keyword"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/subschema.js",
          "kind": "require-call",
          "original": "./subschema"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "../names"
        },
        {
          "path": "node_modules/ajv/dist/compile/resolve.js",
          "kind": "require-call",
          "original": "../resolve"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../util"
        },
        {
          "path": "node_modules/ajv/dist/compile/errors.js",
          "kind": "require-call",
          "original": "../errors"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/runtime/validation_error.js": {
      "bytes": 337,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/ref_error.js": {
      "bytes": 543,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/resolve.js",
          "kind": "require-call",
          "original": "./resolve"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/index.js": {
      "bytes": 9983,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./codegen"
        },
        {
          "path": "node_modules/ajv/dist/runtime/validation_error.js",
          "kind": "require-call",
          "original": "../runtime/validation_error"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "./names"
        },
        {
          "path": "node_modules/ajv/dist/compile/resolve.js",
          "kind": "require-call",
          "original": "./resolve"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "./util"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/index.js",
          "kind": "require-call",
          "original": "./validate"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/refs/data.json": {
      "bytes": 409,
      "imports": []
    },
    "node_modules/uri-js/dist/es5/uri.all.js": {
      "bytes": 57304,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/runtime/uri.js": {
      "bytes": 216,
      "imports": [
        {
          "path": "node_modules/uri-js/dist/es5/uri.all.js",
          "kind": "require-call",
          "original": "uri-js"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/core.js": {
      "bytes": 25103,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/validate/index.js",
          "kind": "require-call",
          "original": "./compile/validate"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/runtime/validation_error.js",
          "kind": "require-call",
          "original": "./runtime/validation_error"
        },
        {
          "path": "node_modules/ajv/dist/compile/ref_error.js",
          "kind": "require-call",
          "original": "./compile/ref_error"
        },
        {
          "path": "node_modules/ajv/dist/compile/rules.js",
          "kind": "require-call",
          "original": "./compile/rules"
        },
        {
          "path": "node_modules/ajv/dist/compile/index.js",
          "kind": "require-call",
          "original": "./compile"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/resolve.js",
          "kind": "require-call",
          "original": "./compile/resolve"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/dataType.js",
          "kind": "require-call",
          "original": "./compile/validate/dataType"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "./compile/util"
        },
        {
          "path": "node_modules/ajv/dist/refs/data.json",
          "kind": "require-call",
          "original": "./refs/data.json"
        },
        {
          "path": "node_modules/ajv/dist/runtime/uri.js",
          "kind": "require-call",
          "original": "./runtime/uri"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/core/id.js": {
      "bytes": 267,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/core/ref.js": {
      "bytes": 5234,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/ref_error.js",
          "kind": "require-call",
          "original": "../../compile/ref_error"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "../../compile/names"
        },
        {
          "path": "node_modules/ajv/dist/compile/index.js",
          "kind": "require-call",
          "original": "../../compile"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/core/index.js": {
      "bytes": 357,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/core/id.js",
          "kind": "require-call",
          "original": "./id"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/core/ref.js",
          "kind": "require-call",
          "original": "./ref"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/limitNumber.js": {
      "bytes": 1036,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/multipleOf.js": {
      "bytes": 1023,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/runtime/ucs2length.js": {
      "bytes": 808,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/limitLength.js": {
      "bytes": 1130,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/runtime/ucs2length.js",
          "kind": "require-call",
          "original": "../../runtime/ucs2length"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/pattern.js": {
      "bytes": 905,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/limitProperties.js": {
      "bytes": 896,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/required.js": {
      "bytes": 3188,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/limitItems.js": {
      "bytes": 852,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/runtime/equal.js": {
      "bytes": 286,
      "imports": [
        {
          "path": "node_modules/fast-deep-equal/index.js",
          "kind": "require-call",
          "original": "fast-deep-equal"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/uniqueItems.js": {
      "bytes": 3037,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/validate/dataType.js",
          "kind": "require-call",
          "original": "../../compile/validate/dataType"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/runtime/equal.js",
          "kind": "require-call",
          "original": "../../runtime/equal"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/const.js": {
      "bytes": 852,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/runtime/equal.js",
          "kind": "require-call",
          "original": "../../runtime/equal"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/enum.js": {
      "bytes": 1901,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/runtime/equal.js",
          "kind": "require-call",
          "original": "../../runtime/equal"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/index.js": {
      "bytes": 1036,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/limitNumber.js",
          "kind": "require-call",
          "original": "./limitNumber"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/multipleOf.js",
          "kind": "require-call",
          "original": "./multipleOf"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/limitLength.js",
          "kind": "require-call",
          "original": "./limitLength"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/pattern.js",
          "kind": "require-call",
          "original": "./pattern"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/limitProperties.js",
          "kind": "require-call",
          "original": "./limitProperties"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/required.js",
          "kind": "require-call",
          "original": "./required"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/limitItems.js",
          "kind": "require-call",
          "original": "./limitItems"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/uniqueItems.js",
          "kind": "require-call",
          "original": "./uniqueItems"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/const.js",
          "kind": "require-call",
          "original": "./const"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/enum.js",
          "kind": "require-call",
          "original": "./enum"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/additionalItems.js": {
      "bytes": 1931,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/items.js": {
      "bytes": 1993,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/prefixItems.js": {
      "bytes": 354,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/items.js",
          "kind": "require-call",
          "original": "./items"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/items2020.js": {
      "bytes": 1037,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/additionalItems.js",
          "kind": "require-call",
          "original": "./additionalItems"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/contains.js": {
      "bytes": 3680,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/dependencies.js": {
      "bytes": 3198,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/propertyNames.js": {
      "bytes": 1221,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js": {
      "bytes": 4309,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "../../compile/names"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/properties.js": {
      "bytes": 2153,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/validate/index.js",
          "kind": "require-call",
          "original": "../../compile/validate"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js",
          "kind": "require-call",
          "original": "./additionalProperties"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/patternProperties.js": {
      "bytes": 3236,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/not.js": {
      "bytes": 773,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/anyOf.js": {
      "bytes": 343,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/oneOf.js": {
      "bytes": 2257,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/allOf.js": {
      "bytes": 756,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/if.js": {
      "bytes": 2438,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/thenElse.js": {
      "bytes": 446,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/index.js": {
      "bytes": 1529,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/additionalItems.js",
          "kind": "require-call",
          "original": "./additionalItems"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/prefixItems.js",
          "kind": "require-call",
          "original": "./prefixItems"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/items.js",
          "kind": "require-call",
          "original": "./items"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/items2020.js",
          "kind": "require-call",
          "original": "./items2020"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/contains.js",
          "kind": "require-call",
          "original": "./contains"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/dependencies.js",
          "kind": "require-call",
          "original": "./dependencies"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/propertyNames.js",
          "kind": "require-call",
          "original": "./propertyNames"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js",
          "kind": "require-call",
          "original": "./additionalProperties"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/properties.js",
          "kind": "require-call",
          "original": "./properties"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/patternProperties.js",
          "kind": "require-call",
          "original": "./patternProperties"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/not.js",
          "kind": "require-call",
          "original": "./not"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/anyOf.js",
          "kind": "require-call",
          "original": "./anyOf"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/oneOf.js",
          "kind": "require-call",
          "original": "./oneOf"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/allOf.js",
          "kind": "require-call",
          "original": "./allOf"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/if.js",
          "kind": "require-call",
          "original": "./if"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/thenElse.js",
          "kind": "require-call",
          "original": "./thenElse"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/format/format.js": {
      "bytes": 4317,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/format/index.js": {
      "bytes": 209,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/format/format.js",
          "kind": "require-call",
          "original": "./format"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/metadata.js": {
      "bytes": 427,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/draft7.js": {
      "bytes": 557,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/core/index.js",
          "kind": "require-call",
          "original": "./core"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/index.js",
          "kind": "require-call",
          "original": "./validation"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/index.js",
          "kind": "require-call",
          "original": "./applicator"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/format/index.js",
          "kind": "require-call",
          "original": "./format"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/metadata.js",
          "kind": "require-call",
          "original": "./metadata"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/discriminator/types.js": {
      "bytes": 316,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/discriminator/index.js": {
      "bytes": 4659,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/discriminator/types.js",
          "kind": "require-call",
          "original": "../discriminator/types"
        },
        {
          "path": "node_modules/ajv/dist/compile/index.js",
          "kind": "require-call",
          "original": "../../compile"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/refs/json-schema-draft-07.json": {
      "bytes": 3811,
      "imports": []
    },
    "node_modules/ajv/dist/ajv.js": {
      "bytes": 2782,
      "imports": [
        {
          "path": "node_modules/ajv/dist/core.js",
          "kind": "require-call",
          "original": "./core"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/draft7.js",
          "kind": "require-call",
          "original": "./vocabularies/draft7"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/discriminator/index.js",
          "kind": "require-call",
          "original": "./vocabularies/discriminator"
        },
        {
          "path": "node_modules/ajv/dist/refs/json-schema-draft-07.json",
          "kind": "require-call",
          "original": "./refs/json-schema-draft-07.json"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/index.js",
          "kind": "require-call",
          "original": "./compile/validate"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/runtime/validation_error.js",
          "kind": "require-call",
          "original": "./runtime/validation_error"
        },
        {
          "path": "node_modules/ajv/dist/compile/ref_error.js",
          "kind": "require-call",
          "original": "./compile/ref_error"
        }
      ],
      "format": "cjs"
    },
    "lib/index.ts": {
      "bytes": 526,
      "imports": [
        {
          "path": "node_modules/ajv/dist/ajv.js",
          "kind": "import-statement",
          "original": "ajv"
        }
      ],
      "format": "esm"
    }
  },
  "outputs": {
    "cdk.out/bundling-temp-b2d2ab9ee495e0f83bf18dd31ab7a011018f75869b059d5c59af67db0b35c2db/index.mjs": {
      "imports": [],
      "exports": [
        "handler"
      ],
      "entryPoint": "lib/index.ts",
      "inputs": {
        "node_modules/ajv/dist/compile/codegen/code.js": {
          "bytesInOutput": 4828
        },
        "node_modules/ajv/dist/compile/codegen/scope.js": {
          "bytesInOutput": 5320
        },
        "node_modules/ajv/dist/compile/codegen/index.js": {
          "bytesInOutput": 23933
        },
        "node_modules/ajv/dist/compile/util.js": {
          "bytesInOutput": 7179
        },
        "node_modules/ajv/dist/compile/names.js": {
          "bytesInOutput": 1233
        },
        "node_modules/ajv/dist/compile/errors.js": {
          "bytesInOutput": 5946
        },
        "node_modules/ajv/dist/compile/validate/boolSchema.js": {
          "bytesInOutput": 1568
        },
        "node_modules/ajv/dist/compile/rules.js": {
          "bytesInOutput": 1028
        },
        "node_modules/ajv/dist/compile/validate/applicability.js": {
          "bytesInOutput": 989
        },
        "node_modules/ajv/dist/compile/validate/dataType.js": {
          "bytesInOutput": 8180
        },
        "node_modules/ajv/dist/compile/validate/defaults.js": {
          "bytesInOutput": 1429
        },
        "node_modules/ajv/dist/vocabularies/code.js": {
          "bytesInOutput": 6236
        },
        "node_modules/ajv/dist/compile/validate/keyword.js": {
          "bytesInOutput": 5744
        },
        "node_modules/ajv/dist/compile/validate/subschema.js": {
          "bytesInOutput": 3742
        },
        "node_modules/fast-deep-equal/index.js": {
          "bytesInOutput": 1411
        },
        "node_modules/json-schema-traverse/index.js": {
          "bytesInOutput": 2841
        },
        "node_modules/ajv/dist/compile/resolve.js": {
          "bytesInOutput": 5082
        },
        "node_modules/ajv/dist/compile/validate/index.js": {
          "bytesInOutput": 20425
        },
        "node_modules/ajv/dist/runtime/validation_error.js": {
          "bytesInOutput": 441
        },
        "node_modules/ajv/dist/compile/ref_error.js": {
          "bytesInOutput": 639
        },
        "node_modules/ajv/dist/compile/index.js": {
          "bytesInOutput": 9098
        },
        "node_modules/ajv/dist/refs/data.json": {
          "bytesInOutput": 561
        },
        "node_modules/uri-js/dist/es5/uri.all.js": {
          "bytesInOutput": 49089
        },
        "node_modules/ajv/dist/runtime/uri.js": {
          "bytesInOutput": 294
        },
        "node_modules/ajv/dist/core.js": {
          "bytesInOutput": 24068
        },
        "node_modules/ajv/dist/vocabularies/core/id.js": {
          "bytesInOutput": 359
        },
        "node_modules/ajv/dist/vocabularies/core/ref.js": {
          "bytesInOutput": 5026
        },
        "node_modules/ajv/dist/vocabularies/core/index.js": {
          "bytesInOutput": 460
        },
        "node_modules/ajv/dist/vocabularies/validation/limitNumber.js": {
          "bytesInOutput": 1159
        },
        "node_modules/ajv/dist/vocabularies/validation/multipleOf.js": {
          "bytesInOutput": 1025
        },
        "node_modules/ajv/dist/runtime/ucs2length.js": {
          "bytesInOutput": 703
        },
        "node_modules/ajv/dist/vocabularies/validation/limitLength.js": {
          "bytesInOutput": 1212
        },
        "node_modules/ajv/dist/vocabularies/validation/pattern.js": {
          "bytesInOutput": 962
        },
        "node_modules/ajv/dist/vocabularies/validation/limitProperties.js": {
          "bytesInOutput": 1010
        },
        "node_modules/ajv/dist/vocabularies/validation/required.js": {
          "bytesInOutput": 3129
        },
        "node_modules/ajv/dist/vocabularies/validation/limitItems.js": {
          "bytesInOutput": 961
        },
        "node_modules/ajv/dist/runtime/equal.js": {
          "bytesInOutput": 314
        },
        "node_modules/ajv/dist/vocabularies/validation/uniqueItems.js": {
          "bytesInOutput": 2967
        },
        "node_modules/ajv/dist/vocabularies/validation/const.js": {
          "bytesInOutput": 922
        },
        "node_modules/ajv/dist/vocabularies/validation/enum.js": {
          "bytesInOutput": 1882
        },
        "node_modules/ajv/dist/vocabularies/validation/index.js": {
          "bytesInOutput": 1160
        },
        "node_modules/ajv/dist/vocabularies/applicator/additionalItems.js": {
          "bytesInOutput": 2044
        },
        "node_modules/ajv/dist/vocabularies/applicator/items.js": {
          "bytesInOutput": 2102
        },
        "node_modules/ajv/dist/vocabularies/applicator/prefixItems.js": {
          "bytesInOutput": 464
        },
        "node_modules/ajv/dist/vocabularies/applicator/items2020.js": {
          "bytesInOutput": 1133
        },
        "node_modules/ajv/dist/vocabularies/applicator/contains.js": {
          "bytesInOutput": 3571
        },
        "node_modules/ajv/dist/vocabularies/applicator/dependencies.js": {
          "bytesInOutput": 3375
        },
        "node_modules/ajv/dist/vocabularies/applicator/propertyNames.js": {
          "bytesInOutput": 1281
        },
        "node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js": {
          "bytesInOutput": 4045
        },
        "node_modules/ajv/dist/vocabularies/applicator/properties.js": {
          "bytesInOutput": 2166
        },
        "node_modules/ajv/dist/vocabularies/applicator/patternProperties.js": {
          "bytesInOutput": 2860
        },
        "node_modules/ajv/dist/vocabularies/applicator/not.js": {
          "bytesInOutput": 862
        },
        "node_modules/ajv/dist/vocabularies/applicator/anyOf.js": {
          "bytesInOutput": 447
        },
        "node_modules/ajv/dist/vocabularies/applicator/oneOf.js": {
          "bytesInOutput": 1975
        },
        "node_modules/ajv/dist/vocabularies/applicator/allOf.js": {
          "bytesInOutput": 810
        },
        "node_modules/ajv/dist/vocabularies/applicator/if.js": {
          "bytesInOutput": 2439
        },
        "node_modules/ajv/dist/vocabularies/applicator/thenElse.js": {
          "bytesInOutput": 534
        },
        "node_modules/ajv/dist/vocabularies/applicator/index.js": {
          "bytesInOutput": 1614
        },
        "node_modules/ajv/dist/vocabularies/format/format.js": {
          "bytesInOutput": 4056
        },
        "node_modules/ajv/dist/vocabularies/format/index.js": {
          "bytesInOutput": 298
        },
        "node_modules/ajv/dist/vocabularies/metadata.js": {
          "bytesInOutput": 543
        },
        "node_modules/ajv/dist/vocabularies/draft7.js": {
          "bytesInOutput": 651
        },
        "node_modules/ajv/dist/vocabularies/discriminator/types.js": {
          "bytesInOutput": 427
        },
        "node_modules/ajv/dist/vocabularies/discriminator/index.js": {
          "bytesInOutput": 4500
        },
        "node_modules/ajv/dist/refs/json-schema-draft-07.json": {
          "bytesInOutput": 4335
        },
        "node_modules/ajv/dist/ajv.js": {
          "bytesInOutput": 2904
        },
        "lib/index.ts": {
          "bytesInOutput": 520
        }
      },
      "bytes": 269662
    }
  }
}ESM optimized{
  "inputs": {
    "node_modules/ajv/dist/compile/codegen/code.js": {
      "bytes": 4609,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/codegen/scope.js": {
      "bytes": 5206,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/code.js",
          "kind": "require-call",
          "original": "./code"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/codegen/index.js": {
      "bytes": 23127,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/code.js",
          "kind": "require-call",
          "original": "./code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/scope.js",
          "kind": "require-call",
          "original": "./scope"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/code.js",
          "kind": "require-call",
          "original": "./code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/scope.js",
          "kind": "require-call",
          "original": "./scope"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/util.js": {
      "bytes": 7111,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/code.js",
          "kind": "require-call",
          "original": "./codegen/code"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/names.js": {
      "bytes": 1113,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/errors.js": {
      "bytes": 5744,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "./util"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "./names"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/boolSchema.js": {
      "bytes": 1531,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/errors.js",
          "kind": "require-call",
          "original": "../errors"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "../names"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/rules.js": {
      "bytes": 918,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/applicability.js": {
      "bytes": 853,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/dataType.js": {
      "bytes": 8339,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/rules.js",
          "kind": "require-call",
          "original": "../rules"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/applicability.js",
          "kind": "require-call",
          "original": "./applicability"
        },
        {
          "path": "node_modules/ajv/dist/compile/errors.js",
          "kind": "require-call",
          "original": "../errors"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/defaults.js": {
      "bytes": 1448,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/code.js": {
      "bytes": 6216,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "../compile/names"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/keyword.js": {
      "bytes": 5695,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "../names"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../../vocabularies/code"
        },
        {
          "path": "node_modules/ajv/dist/compile/errors.js",
          "kind": "require-call",
          "original": "../errors"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/subschema.js": {
      "bytes": 3858,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/fast-deep-equal/index.js": {
      "bytes": 1177,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/json-schema-traverse/index.js": {
      "bytes": 2428,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/resolve.js": {
      "bytes": 4981,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "./util"
        },
        {
          "path": "node_modules/fast-deep-equal/index.js",
          "kind": "require-call",
          "original": "fast-deep-equal"
        },
        {
          "path": "node_modules/json-schema-traverse/index.js",
          "kind": "require-call",
          "original": "json-schema-traverse"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/validate/index.js": {
      "bytes": 20552,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/validate/boolSchema.js",
          "kind": "require-call",
          "original": "./boolSchema"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/dataType.js",
          "kind": "require-call",
          "original": "./dataType"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/applicability.js",
          "kind": "require-call",
          "original": "./applicability"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/dataType.js",
          "kind": "require-call",
          "original": "./dataType"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/defaults.js",
          "kind": "require-call",
          "original": "./defaults"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/keyword.js",
          "kind": "require-call",
          "original": "./keyword"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/subschema.js",
          "kind": "require-call",
          "original": "./subschema"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "../names"
        },
        {
          "path": "node_modules/ajv/dist/compile/resolve.js",
          "kind": "require-call",
          "original": "../resolve"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../util"
        },
        {
          "path": "node_modules/ajv/dist/compile/errors.js",
          "kind": "require-call",
          "original": "../errors"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/runtime/validation_error.js": {
      "bytes": 337,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/ref_error.js": {
      "bytes": 543,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/resolve.js",
          "kind": "require-call",
          "original": "./resolve"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/compile/index.js": {
      "bytes": 9983,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./codegen"
        },
        {
          "path": "node_modules/ajv/dist/runtime/validation_error.js",
          "kind": "require-call",
          "original": "../runtime/validation_error"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "./names"
        },
        {
          "path": "node_modules/ajv/dist/compile/resolve.js",
          "kind": "require-call",
          "original": "./resolve"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "./util"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/index.js",
          "kind": "require-call",
          "original": "./validate"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/refs/data.json": {
      "bytes": 409,
      "imports": []
    },
    "node_modules/uri-js/dist/es5/uri.all.js": {
      "bytes": 57304,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/runtime/uri.js": {
      "bytes": 216,
      "imports": [
        {
          "path": "node_modules/uri-js/dist/es5/uri.all.js",
          "kind": "require-call",
          "original": "uri-js"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/core.js": {
      "bytes": 25103,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/validate/index.js",
          "kind": "require-call",
          "original": "./compile/validate"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/runtime/validation_error.js",
          "kind": "require-call",
          "original": "./runtime/validation_error"
        },
        {
          "path": "node_modules/ajv/dist/compile/ref_error.js",
          "kind": "require-call",
          "original": "./compile/ref_error"
        },
        {
          "path": "node_modules/ajv/dist/compile/rules.js",
          "kind": "require-call",
          "original": "./compile/rules"
        },
        {
          "path": "node_modules/ajv/dist/compile/index.js",
          "kind": "require-call",
          "original": "./compile"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/resolve.js",
          "kind": "require-call",
          "original": "./compile/resolve"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/dataType.js",
          "kind": "require-call",
          "original": "./compile/validate/dataType"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "./compile/util"
        },
        {
          "path": "node_modules/ajv/dist/refs/data.json",
          "kind": "require-call",
          "original": "./refs/data.json"
        },
        {
          "path": "node_modules/ajv/dist/runtime/uri.js",
          "kind": "require-call",
          "original": "./runtime/uri"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/core/id.js": {
      "bytes": 267,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/core/ref.js": {
      "bytes": 5234,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/ref_error.js",
          "kind": "require-call",
          "original": "../../compile/ref_error"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "../../compile/names"
        },
        {
          "path": "node_modules/ajv/dist/compile/index.js",
          "kind": "require-call",
          "original": "../../compile"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/core/index.js": {
      "bytes": 357,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/core/id.js",
          "kind": "require-call",
          "original": "./id"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/core/ref.js",
          "kind": "require-call",
          "original": "./ref"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/limitNumber.js": {
      "bytes": 1036,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/multipleOf.js": {
      "bytes": 1023,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/runtime/ucs2length.js": {
      "bytes": 808,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/limitLength.js": {
      "bytes": 1130,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/runtime/ucs2length.js",
          "kind": "require-call",
          "original": "../../runtime/ucs2length"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/pattern.js": {
      "bytes": 905,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/limitProperties.js": {
      "bytes": 896,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/required.js": {
      "bytes": 3188,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/limitItems.js": {
      "bytes": 852,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/runtime/equal.js": {
      "bytes": 286,
      "imports": [
        {
          "path": "node_modules/fast-deep-equal/index.js",
          "kind": "require-call",
          "original": "fast-deep-equal"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/uniqueItems.js": {
      "bytes": 3037,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/validate/dataType.js",
          "kind": "require-call",
          "original": "../../compile/validate/dataType"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/runtime/equal.js",
          "kind": "require-call",
          "original": "../../runtime/equal"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/const.js": {
      "bytes": 852,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/runtime/equal.js",
          "kind": "require-call",
          "original": "../../runtime/equal"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/enum.js": {
      "bytes": 1901,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/runtime/equal.js",
          "kind": "require-call",
          "original": "../../runtime/equal"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/validation/index.js": {
      "bytes": 1036,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/limitNumber.js",
          "kind": "require-call",
          "original": "./limitNumber"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/multipleOf.js",
          "kind": "require-call",
          "original": "./multipleOf"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/limitLength.js",
          "kind": "require-call",
          "original": "./limitLength"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/pattern.js",
          "kind": "require-call",
          "original": "./pattern"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/limitProperties.js",
          "kind": "require-call",
          "original": "./limitProperties"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/required.js",
          "kind": "require-call",
          "original": "./required"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/limitItems.js",
          "kind": "require-call",
          "original": "./limitItems"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/uniqueItems.js",
          "kind": "require-call",
          "original": "./uniqueItems"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/const.js",
          "kind": "require-call",
          "original": "./const"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/enum.js",
          "kind": "require-call",
          "original": "./enum"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/additionalItems.js": {
      "bytes": 1931,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/items.js": {
      "bytes": 1993,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/prefixItems.js": {
      "bytes": 354,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/items.js",
          "kind": "require-call",
          "original": "./items"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/items2020.js": {
      "bytes": 1037,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/additionalItems.js",
          "kind": "require-call",
          "original": "./additionalItems"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/contains.js": {
      "bytes": 3680,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/dependencies.js": {
      "bytes": 3198,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/propertyNames.js": {
      "bytes": 1221,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js": {
      "bytes": 4309,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/names.js",
          "kind": "require-call",
          "original": "../../compile/names"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/properties.js": {
      "bytes": 2153,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/validate/index.js",
          "kind": "require-call",
          "original": "../../compile/validate"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js",
          "kind": "require-call",
          "original": "./additionalProperties"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/patternProperties.js": {
      "bytes": 3236,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/not.js": {
      "bytes": 773,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/anyOf.js": {
      "bytes": 343,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/code.js",
          "kind": "require-call",
          "original": "../code"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/oneOf.js": {
      "bytes": 2257,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/allOf.js": {
      "bytes": 756,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/if.js": {
      "bytes": 2438,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/thenElse.js": {
      "bytes": 446,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/applicator/index.js": {
      "bytes": 1529,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/additionalItems.js",
          "kind": "require-call",
          "original": "./additionalItems"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/prefixItems.js",
          "kind": "require-call",
          "original": "./prefixItems"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/items.js",
          "kind": "require-call",
          "original": "./items"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/items2020.js",
          "kind": "require-call",
          "original": "./items2020"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/contains.js",
          "kind": "require-call",
          "original": "./contains"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/dependencies.js",
          "kind": "require-call",
          "original": "./dependencies"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/propertyNames.js",
          "kind": "require-call",
          "original": "./propertyNames"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js",
          "kind": "require-call",
          "original": "./additionalProperties"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/properties.js",
          "kind": "require-call",
          "original": "./properties"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/patternProperties.js",
          "kind": "require-call",
          "original": "./patternProperties"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/not.js",
          "kind": "require-call",
          "original": "./not"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/anyOf.js",
          "kind": "require-call",
          "original": "./anyOf"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/oneOf.js",
          "kind": "require-call",
          "original": "./oneOf"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/allOf.js",
          "kind": "require-call",
          "original": "./allOf"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/if.js",
          "kind": "require-call",
          "original": "./if"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/thenElse.js",
          "kind": "require-call",
          "original": "./thenElse"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/format/format.js": {
      "bytes": 4317,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/format/index.js": {
      "bytes": 209,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/format/format.js",
          "kind": "require-call",
          "original": "./format"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/metadata.js": {
      "bytes": 427,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/draft7.js": {
      "bytes": 557,
      "imports": [
        {
          "path": "node_modules/ajv/dist/vocabularies/core/index.js",
          "kind": "require-call",
          "original": "./core"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/validation/index.js",
          "kind": "require-call",
          "original": "./validation"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/applicator/index.js",
          "kind": "require-call",
          "original": "./applicator"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/format/index.js",
          "kind": "require-call",
          "original": "./format"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/metadata.js",
          "kind": "require-call",
          "original": "./metadata"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/discriminator/types.js": {
      "bytes": 316,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/ajv/dist/vocabularies/discriminator/index.js": {
      "bytes": 4659,
      "imports": [
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "../../compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/discriminator/types.js",
          "kind": "require-call",
          "original": "../discriminator/types"
        },
        {
          "path": "node_modules/ajv/dist/compile/index.js",
          "kind": "require-call",
          "original": "../../compile"
        },
        {
          "path": "node_modules/ajv/dist/compile/util.js",
          "kind": "require-call",
          "original": "../../compile/util"
        }
      ],
      "format": "cjs"
    },
    "node_modules/ajv/dist/refs/json-schema-draft-07.json": {
      "bytes": 3811,
      "imports": []
    },
    "node_modules/ajv/dist/ajv.js": {
      "bytes": 2782,
      "imports": [
        {
          "path": "node_modules/ajv/dist/core.js",
          "kind": "require-call",
          "original": "./core"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/draft7.js",
          "kind": "require-call",
          "original": "./vocabularies/draft7"
        },
        {
          "path": "node_modules/ajv/dist/vocabularies/discriminator/index.js",
          "kind": "require-call",
          "original": "./vocabularies/discriminator"
        },
        {
          "path": "node_modules/ajv/dist/refs/json-schema-draft-07.json",
          "kind": "require-call",
          "original": "./refs/json-schema-draft-07.json"
        },
        {
          "path": "node_modules/ajv/dist/compile/validate/index.js",
          "kind": "require-call",
          "original": "./compile/validate"
        },
        {
          "path": "node_modules/ajv/dist/compile/codegen/index.js",
          "kind": "require-call",
          "original": "./compile/codegen"
        },
        {
          "path": "node_modules/ajv/dist/runtime/validation_error.js",
          "kind": "require-call",
          "original": "./runtime/validation_error"
        },
        {
          "path": "node_modules/ajv/dist/compile/ref_error.js",
          "kind": "require-call",
          "original": "./compile/ref_error"
        }
      ],
      "format": "cjs"
    },
    "lib/index.ts": {
      "bytes": 526,
      "imports": [
        {
          "path": "node_modules/ajv/dist/ajv.js",
          "kind": "import-statement",
          "original": "ajv"
        }
      ],
      "format": "esm"
    }
  },
  "outputs": {
    "cdk.out/bundling-temp-dbfbd9bf24692f110039c812220a486263a3194ae91aae9abe6014d0f705ed0f/index.mjs.map": {
      "imports": [],
      "exports": [],
      "inputs": {},
      "bytes": 459913
    },
    "cdk.out/bundling-temp-dbfbd9bf24692f110039c812220a486263a3194ae91aae9abe6014d0f705ed0f/index.mjs": {
      "imports": [],
      "exports": [
        "handler"
      ],
      "entryPoint": "lib/index.ts",
      "inputs": {
        "node_modules/ajv/dist/compile/codegen/code.js": {
          "bytesInOutput": 2551
        },
        "node_modules/ajv/dist/compile/codegen/scope.js": {
          "bytesInOutput": 2600
        },
        "node_modules/ajv/dist/compile/codegen/index.js": {
          "bytesInOutput": 11758
        },
        "node_modules/ajv/dist/compile/util.js": {
          "bytesInOutput": 3574
        },
        "node_modules/ajv/dist/compile/names.js": {
          "bytesInOutput": 629
        },
        "node_modules/ajv/dist/compile/errors.js": {
          "bytesInOutput": 3104
        },
        "node_modules/ajv/dist/compile/validate/boolSchema.js": {
          "bytesInOutput": 672
        },
        "node_modules/ajv/dist/compile/rules.js": {
          "bytesInOutput": 570
        },
        "node_modules/ajv/dist/compile/validate/applicability.js": {
          "bytesInOutput": 480
        },
        "node_modules/ajv/dist/compile/validate/dataType.js": {
          "bytesInOutput": 4120
        },
        "node_modules/ajv/dist/compile/validate/defaults.js": {
          "bytesInOutput": 680
        },
        "node_modules/ajv/dist/vocabularies/code.js": {
          "bytesInOutput": 3106
        },
        "node_modules/ajv/dist/compile/validate/keyword.js": {
          "bytesInOutput": 2961
        },
        "node_modules/ajv/dist/compile/validate/subschema.js": {
          "bytesInOutput": 1978
        },
        "node_modules/fast-deep-equal/index.js": {
          "bytesInOutput": 736
        },
        "node_modules/json-schema-traverse/index.js": {
          "bytesInOutput": 1246
        },
        "node_modules/ajv/dist/compile/resolve.js": {
          "bytesInOutput": 2087
        },
        "node_modules/ajv/dist/compile/validate/index.js": {
          "bytesInOutput": 10181
        },
        "node_modules/ajv/dist/runtime/validation_error.js": {
          "bytesInOutput": 206
        },
        "node_modules/ajv/dist/compile/ref_error.js": {
          "bytesInOutput": 323
        },
        "node_modules/ajv/dist/compile/index.js": {
          "bytesInOutput": 4688
        },
        "node_modules/ajv/dist/refs/data.json": {
          "bytesInOutput": 358
        },
        "node_modules/uri-js/dist/es5/uri.all.js": {
          "bytesInOutput": 18833
        },
        "node_modules/ajv/dist/runtime/uri.js": {
          "bytesInOutput": 155
        },
        "node_modules/ajv/dist/core.js": {
          "bytesInOutput": 12293
        },
        "node_modules/ajv/dist/vocabularies/core/id.js": {
          "bytesInOutput": 195
        },
        "node_modules/ajv/dist/vocabularies/core/ref.js": {
          "bytesInOutput": 2379
        },
        "node_modules/ajv/dist/vocabularies/core/index.js": {
          "bytesInOutput": 213
        },
        "node_modules/ajv/dist/vocabularies/validation/limitNumber.js": {
          "bytesInOutput": 666
        },
        "node_modules/ajv/dist/vocabularies/validation/multipleOf.js": {
          "bytesInOutput": 551
        },
        "node_modules/ajv/dist/runtime/ucs2length.js": {
          "bytesInOutput": 301
        },
        "node_modules/ajv/dist/vocabularies/validation/limitLength.js": {
          "bytesInOutput": 629
        },
        "node_modules/ajv/dist/vocabularies/validation/pattern.js": {
          "bytesInOutput": 497
        },
        "node_modules/ajv/dist/vocabularies/validation/limitProperties.js": {
          "bytesInOutput": 549
        },
        "node_modules/ajv/dist/vocabularies/validation/required.js": {
          "bytesInOutput": 1400
        },
        "node_modules/ajv/dist/vocabularies/validation/limitItems.js": {
          "bytesInOutput": 510
        },
        "node_modules/ajv/dist/runtime/equal.js": {
          "bytesInOutput": 157
        },
        "node_modules/ajv/dist/vocabularies/validation/uniqueItems.js": {
          "bytesInOutput": 1499
        },
        "node_modules/ajv/dist/vocabularies/validation/const.js": {
          "bytesInOutput": 439
        },
        "node_modules/ajv/dist/vocabularies/validation/enum.js": {
          "bytesInOutput": 921
        },
        "node_modules/ajv/dist/vocabularies/validation/index.js": {
          "bytesInOutput": 381
        },
        "node_modules/ajv/dist/vocabularies/applicator/additionalItems.js": {
          "bytesInOutput": 1090
        },
        "node_modules/ajv/dist/vocabularies/applicator/items.js": {
          "bytesInOutput": 1075
        },
        "node_modules/ajv/dist/vocabularies/applicator/prefixItems.js": {
          "bytesInOutput": 227
        },
        "node_modules/ajv/dist/vocabularies/applicator/items2020.js": {
          "bytesInOutput": 530
        },
        "node_modules/ajv/dist/vocabularies/applicator/contains.js": {
          "bytesInOutput": 1734
        },
        "node_modules/ajv/dist/vocabularies/applicator/dependencies.js": {
          "bytesInOutput": 1565
        },
        "node_modules/ajv/dist/vocabularies/applicator/propertyNames.js": {
          "bytesInOutput": 630
        },
        "node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js": {
          "bytesInOutput": 1741
        },
        "node_modules/ajv/dist/vocabularies/applicator/properties.js": {
          "bytesInOutput": 992
        },
        "node_modules/ajv/dist/vocabularies/applicator/patternProperties.js": {
          "bytesInOutput": 1168
        },
        "node_modules/ajv/dist/vocabularies/applicator/not.js": {
          "bytesInOutput": 435
        },
        "node_modules/ajv/dist/vocabularies/applicator/anyOf.js": {
          "bytesInOutput": 229
        },
        "node_modules/ajv/dist/vocabularies/applicator/oneOf.js": {
          "bytesInOutput": 912
        },
        "node_modules/ajv/dist/vocabularies/applicator/allOf.js": {
          "bytesInOutput": 407
        },
        "node_modules/ajv/dist/vocabularies/applicator/if.js": {
          "bytesInOutput": 1105
        },
        "node_modules/ajv/dist/vocabularies/applicator/thenElse.js": {
          "bytesInOutput": 278
        },
        "node_modules/ajv/dist/vocabularies/applicator/index.js": {
          "bytesInOutput": 462
        },
        "node_modules/ajv/dist/vocabularies/format/format.js": {
          "bytesInOutput": 1932
        },
        "node_modules/ajv/dist/vocabularies/format/index.js": {
          "bytesInOutput": 121
        },
        "node_modules/ajv/dist/vocabularies/metadata.js": {
          "bytesInOutput": 308
        },
        "node_modules/ajv/dist/vocabularies/draft7.js": {
          "bytesInOutput": 235
        },
        "node_modules/ajv/dist/vocabularies/discriminator/types.js": {
          "bytesInOutput": 192
        },
        "node_modules/ajv/dist/vocabularies/discriminator/index.js": {
          "bytesInOutput": 2211
        },
        "node_modules/ajv/dist/refs/json-schema-draft-07.json": {
          "bytesInOutput": 2481
        },
        "node_modules/ajv/dist/ajv.js": {
          "bytesInOutput": 1638
        },
        "lib/index.ts": {
          "bytesInOutput": 286
        }
      },
      "bytes": 125882
    }
  }
}schemasafeCJS as-is (not optimized){
  "inputs": {
    "node_modules/@exodus/schemasafe/src/safe-format.js": {
      "bytes": 4292,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/scope-utils.js": {
      "bytes": 1692,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/safe-format.js",
          "kind": "require-call",
          "original": "./safe-format"
        }
      ],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/scope-functions.js": {
      "bytes": 4136,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/javascript.js": {
      "bytes": 7792,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/safe-format.js",
          "kind": "require-call",
          "original": "./safe-format"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/scope-utils.js",
          "kind": "require-call",
          "original": "./scope-utils"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/scope-functions.js",
          "kind": "require-call",
          "original": "./scope-functions"
        }
      ],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/generate-function.js": {
      "bytes": 3576,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/safe-format.js",
          "kind": "require-call",
          "original": "./safe-format"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/javascript.js",
          "kind": "require-call",
          "original": "./javascript"
        }
      ],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/known-keywords.js": {
      "bytes": 2633,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/pointer.js": {
      "bytes": 7176,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/known-keywords.js",
          "kind": "require-call",
          "original": "./known-keywords"
        }
      ],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/formats.js": {
      "bytes": 12210,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/tracing.js": {
      "bytes": 6105,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/compile.js": {
      "bytes": 69997,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/safe-format.js",
          "kind": "require-call",
          "original": "./safe-format"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/generate-function.js",
          "kind": "require-call",
          "original": "./generate-function"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/pointer.js",
          "kind": "require-call",
          "original": "./pointer"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/formats.js",
          "kind": "require-call",
          "original": "./formats"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/scope-functions.js",
          "kind": "require-call",
          "original": "./scope-functions"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/scope-utils.js",
          "kind": "require-call",
          "original": "./scope-utils"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/javascript.js",
          "kind": "require-call",
          "original": "./javascript"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/known-keywords.js",
          "kind": "require-call",
          "original": "./known-keywords"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/tracing.js",
          "kind": "require-call",
          "original": "./tracing"
        }
      ],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/index.js": {
      "bytes": 3686,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/generate-function.js",
          "kind": "require-call",
          "original": "./generate-function"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/pointer.js",
          "kind": "require-call",
          "original": "./pointer"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/compile.js",
          "kind": "require-call",
          "original": "./compile"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/scope-functions.js",
          "kind": "require-call",
          "original": "./scope-functions"
        }
      ],
      "format": "cjs"
    },
    "lib/fn/index-schemasafe.ts": {
      "bytes": 568,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/index.js",
          "kind": "import-statement",
          "original": "@exodus/schemasafe"
        }
      ],
      "format": "esm"
    }
  },
  "outputs": {
    "cdk.out/bundling-temp-24b1b5f9ff76742b1ec0b77577d3f4fa438eab4a76ac54affb4ff7030465a1a7/index.js": {
      "imports": [],
      "exports": [],
      "entryPoint": "lib/fn/index-schemasafe.ts",
      "inputs": {
        "node_modules/@exodus/schemasafe/src/safe-format.js": {
          "bytesInOutput": 3640
        },
        "node_modules/@exodus/schemasafe/src/scope-utils.js": {
          "bytesInOutput": 1713
        },
        "node_modules/@exodus/schemasafe/src/scope-functions.js": {
          "bytesInOutput": 3900
        },
        "node_modules/@exodus/schemasafe/src/javascript.js": {
          "bytesInOutput": 7518
        },
        "node_modules/@exodus/schemasafe/src/generate-function.js": {
          "bytesInOutput": 3690
        },
        "node_modules/@exodus/schemasafe/src/known-keywords.js": {
          "bytesInOutput": 3004
        },
        "node_modules/@exodus/schemasafe/src/pointer.js": {
          "bytesInOutput": 7799
        },
        "node_modules/@exodus/schemasafe/src/formats.js": {
          "bytesInOutput": 13511
        },
        "node_modules/@exodus/schemasafe/src/tracing.js": {
          "bytesInOutput": 4050
        },
        "node_modules/@exodus/schemasafe/src/compile.js": {
          "bytesInOutput": 67300
        },
        "node_modules/@exodus/schemasafe/src/index.js": {
          "bytesInOutput": 4214
        },
        "lib/fn/index-schemasafe.ts": {
          "bytesInOutput": 715
        }
      },
      "bytes": 123335
    }
  }
}
CJS optimized{
  "inputs": {
    "node_modules/@exodus/schemasafe/src/safe-format.js": {
      "bytes": 4292,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/scope-utils.js": {
      "bytes": 1692,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/safe-format.js",
          "kind": "require-call",
          "original": "./safe-format"
        }
      ],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/scope-functions.js": {
      "bytes": 4136,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/javascript.js": {
      "bytes": 7792,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/safe-format.js",
          "kind": "require-call",
          "original": "./safe-format"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/scope-utils.js",
          "kind": "require-call",
          "original": "./scope-utils"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/scope-functions.js",
          "kind": "require-call",
          "original": "./scope-functions"
        }
      ],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/generate-function.js": {
      "bytes": 3576,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/safe-format.js",
          "kind": "require-call",
          "original": "./safe-format"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/javascript.js",
          "kind": "require-call",
          "original": "./javascript"
        }
      ],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/known-keywords.js": {
      "bytes": 2633,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/pointer.js": {
      "bytes": 7176,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/known-keywords.js",
          "kind": "require-call",
          "original": "./known-keywords"
        }
      ],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/formats.js": {
      "bytes": 12210,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/tracing.js": {
      "bytes": 6105,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/compile.js": {
      "bytes": 69997,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/safe-format.js",
          "kind": "require-call",
          "original": "./safe-format"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/generate-function.js",
          "kind": "require-call",
          "original": "./generate-function"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/pointer.js",
          "kind": "require-call",
          "original": "./pointer"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/formats.js",
          "kind": "require-call",
          "original": "./formats"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/scope-functions.js",
          "kind": "require-call",
          "original": "./scope-functions"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/scope-utils.js",
          "kind": "require-call",
          "original": "./scope-utils"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/javascript.js",
          "kind": "require-call",
          "original": "./javascript"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/known-keywords.js",
          "kind": "require-call",
          "original": "./known-keywords"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/tracing.js",
          "kind": "require-call",
          "original": "./tracing"
        }
      ],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/index.js": {
      "bytes": 3686,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/generate-function.js",
          "kind": "require-call",
          "original": "./generate-function"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/pointer.js",
          "kind": "require-call",
          "original": "./pointer"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/compile.js",
          "kind": "require-call",
          "original": "./compile"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/scope-functions.js",
          "kind": "require-call",
          "original": "./scope-functions"
        }
      ],
      "format": "cjs"
    },
    "lib/fn/index-schemasafe.ts": {
      "bytes": 568,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/index.js",
          "kind": "import-statement",
          "original": "@exodus/schemasafe"
        }
      ],
      "format": "esm"
    }
  },
  "outputs": {
    "cdk.out/bundling-temp-fdd671246f2b6003ef198ba32d7a36b6c6be1b22cad87af446f9d9743c9b0c96/index.js.map": {
      "imports": [],
      "exports": [],
      "inputs": {},
      "bytes": 208798
    },
    "cdk.out/bundling-temp-fdd671246f2b6003ef198ba32d7a36b6c6be1b22cad87af446f9d9743c9b0c96/index.js": {
      "imports": [],
      "exports": [],
      "entryPoint": "lib/fn/index-schemasafe.ts",
      "inputs": {
        "node_modules/@exodus/schemasafe/src/safe-format.js": {
          "bytesInOutput": 2038
        },
        "node_modules/@exodus/schemasafe/src/scope-utils.js": {
          "bytesInOutput": 731
        },
        "node_modules/@exodus/schemasafe/src/scope-functions.js": {
          "bytesInOutput": 1910
        },
        "node_modules/@exodus/schemasafe/src/javascript.js": {
          "bytesInOutput": 4038
        },
        "node_modules/@exodus/schemasafe/src/generate-function.js": {
          "bytesInOutput": 1539
        },
        "node_modules/@exodus/schemasafe/src/known-keywords.js": {
          "bytesInOutput": 1453
        },
        "node_modules/@exodus/schemasafe/src/pointer.js": {
          "bytesInOutput": 3709
        },
        "node_modules/@exodus/schemasafe/src/formats.js": {
          "bytesInOutput": 6618
        },
        "node_modules/@exodus/schemasafe/src/tracing.js": {
          "bytesInOutput": 2500
        },
        "node_modules/@exodus/schemasafe/src/compile.js": {
          "bytesInOutput": 29638
        },
        "node_modules/@exodus/schemasafe/src/index.js": {
          "bytesInOutput": 2005
        },
        "lib/fn/index-schemasafe.ts": {
          "bytesInOutput": 335
        }
      },
      "bytes": 57195
    }
  }
}ESM as-is (not optimized){
  "inputs": {
    "node_modules/@exodus/schemasafe/src/safe-format.js": {
      "bytes": 4292,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/scope-utils.js": {
      "bytes": 1692,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/safe-format.js",
          "kind": "require-call",
          "original": "./safe-format"
        }
      ],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/scope-functions.js": {
      "bytes": 4136,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/javascript.js": {
      "bytes": 7792,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/safe-format.js",
          "kind": "require-call",
          "original": "./safe-format"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/scope-utils.js",
          "kind": "require-call",
          "original": "./scope-utils"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/scope-functions.js",
          "kind": "require-call",
          "original": "./scope-functions"
        }
      ],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/generate-function.js": {
      "bytes": 3576,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/safe-format.js",
          "kind": "require-call",
          "original": "./safe-format"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/javascript.js",
          "kind": "require-call",
          "original": "./javascript"
        }
      ],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/known-keywords.js": {
      "bytes": 2633,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/pointer.js": {
      "bytes": 7176,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/known-keywords.js",
          "kind": "require-call",
          "original": "./known-keywords"
        }
      ],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/formats.js": {
      "bytes": 12210,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/tracing.js": {
      "bytes": 6105,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/compile.js": {
      "bytes": 69997,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/safe-format.js",
          "kind": "require-call",
          "original": "./safe-format"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/generate-function.js",
          "kind": "require-call",
          "original": "./generate-function"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/pointer.js",
          "kind": "require-call",
          "original": "./pointer"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/formats.js",
          "kind": "require-call",
          "original": "./formats"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/scope-functions.js",
          "kind": "require-call",
          "original": "./scope-functions"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/scope-utils.js",
          "kind": "require-call",
          "original": "./scope-utils"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/javascript.js",
          "kind": "require-call",
          "original": "./javascript"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/known-keywords.js",
          "kind": "require-call",
          "original": "./known-keywords"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/tracing.js",
          "kind": "require-call",
          "original": "./tracing"
        }
      ],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/index.js": {
      "bytes": 3686,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/generate-function.js",
          "kind": "require-call",
          "original": "./generate-function"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/pointer.js",
          "kind": "require-call",
          "original": "./pointer"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/compile.js",
          "kind": "require-call",
          "original": "./compile"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/scope-functions.js",
          "kind": "require-call",
          "original": "./scope-functions"
        }
      ],
      "format": "cjs"
    },
    "lib/fn/index-schemasafe.ts": {
      "bytes": 568,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/index.js",
          "kind": "import-statement",
          "original": "@exodus/schemasafe"
        }
      ],
      "format": "esm"
    }
  },
  "outputs": {
    "cdk.out/bundling-temp-49c3a91ea7b0bb56d839a78eeddd941a11002566ac6b1e1f6f47e7b510b03eb5/index.mjs": {
      "imports": [],
      "exports": [
        "handler"
      ],
      "entryPoint": "lib/fn/index-schemasafe.ts",
      "inputs": {
        "node_modules/@exodus/schemasafe/src/safe-format.js": {
          "bytesInOutput": 3638
        },
        "node_modules/@exodus/schemasafe/src/scope-utils.js": {
          "bytesInOutput": 1711
        },
        "node_modules/@exodus/schemasafe/src/scope-functions.js": {
          "bytesInOutput": 3898
        },
        "node_modules/@exodus/schemasafe/src/javascript.js": {
          "bytesInOutput": 7516
        },
        "node_modules/@exodus/schemasafe/src/generate-function.js": {
          "bytesInOutput": 3688
        },
        "node_modules/@exodus/schemasafe/src/known-keywords.js": {
          "bytesInOutput": 3002
        },
        "node_modules/@exodus/schemasafe/src/pointer.js": {
          "bytesInOutput": 7797
        },
        "node_modules/@exodus/schemasafe/src/formats.js": {
          "bytesInOutput": 13509
        },
        "node_modules/@exodus/schemasafe/src/tracing.js": {
          "bytesInOutput": 4048
        },
        "node_modules/@exodus/schemasafe/src/compile.js": {
          "bytesInOutput": 67298
        },
        "node_modules/@exodus/schemasafe/src/index.js": {
          "bytesInOutput": 4212
        },
        "lib/fn/index-schemasafe.ts": {
          "bytesInOutput": 557
        }
      },
      "bytes": 122842
    }
  }
}
ESM optimized{
  "inputs": {
    "node_modules/@exodus/schemasafe/src/safe-format.js": {
      "bytes": 4292,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/scope-utils.js": {
      "bytes": 1692,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/safe-format.js",
          "kind": "require-call",
          "original": "./safe-format"
        }
      ],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/scope-functions.js": {
      "bytes": 4136,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/javascript.js": {
      "bytes": 7792,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/safe-format.js",
          "kind": "require-call",
          "original": "./safe-format"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/scope-utils.js",
          "kind": "require-call",
          "original": "./scope-utils"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/scope-functions.js",
          "kind": "require-call",
          "original": "./scope-functions"
        }
      ],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/generate-function.js": {
      "bytes": 3576,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/safe-format.js",
          "kind": "require-call",
          "original": "./safe-format"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/javascript.js",
          "kind": "require-call",
          "original": "./javascript"
        }
      ],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/known-keywords.js": {
      "bytes": 2633,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/pointer.js": {
      "bytes": 7176,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/known-keywords.js",
          "kind": "require-call",
          "original": "./known-keywords"
        }
      ],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/formats.js": {
      "bytes": 12210,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/tracing.js": {
      "bytes": 6105,
      "imports": [],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/compile.js": {
      "bytes": 69997,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/safe-format.js",
          "kind": "require-call",
          "original": "./safe-format"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/generate-function.js",
          "kind": "require-call",
          "original": "./generate-function"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/pointer.js",
          "kind": "require-call",
          "original": "./pointer"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/formats.js",
          "kind": "require-call",
          "original": "./formats"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/scope-functions.js",
          "kind": "require-call",
          "original": "./scope-functions"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/scope-utils.js",
          "kind": "require-call",
          "original": "./scope-utils"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/javascript.js",
          "kind": "require-call",
          "original": "./javascript"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/known-keywords.js",
          "kind": "require-call",
          "original": "./known-keywords"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/tracing.js",
          "kind": "require-call",
          "original": "./tracing"
        }
      ],
      "format": "cjs"
    },
    "node_modules/@exodus/schemasafe/src/index.js": {
      "bytes": 3686,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/generate-function.js",
          "kind": "require-call",
          "original": "./generate-function"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/pointer.js",
          "kind": "require-call",
          "original": "./pointer"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/compile.js",
          "kind": "require-call",
          "original": "./compile"
        },
        {
          "path": "node_modules/@exodus/schemasafe/src/scope-functions.js",
          "kind": "require-call",
          "original": "./scope-functions"
        }
      ],
      "format": "cjs"
    },
    "lib/fn/index-schemasafe.ts": {
      "bytes": 568,
      "imports": [
        {
          "path": "node_modules/@exodus/schemasafe/src/index.js",
          "kind": "import-statement",
          "original": "@exodus/schemasafe"
        }
      ],
      "format": "esm"
    }
  },
  "outputs": {
    "cdk.out/bundling-temp-85b55ab21d14c842623f87d2cc94ffc22e2d2730b506e94fc2e72c68790c604f/index.mjs.map": {
      "imports": [],
      "exports": [],
      "inputs": {},
      "bytes": 208686
    },
    "cdk.out/bundling-temp-85b55ab21d14c842623f87d2cc94ffc22e2d2730b506e94fc2e72c68790c604f/index.mjs": {
      "imports": [],
      "exports": [
        "handler"
      ],
      "entryPoint": "lib/fn/index-schemasafe.ts",
      "inputs": {
        "node_modules/@exodus/schemasafe/src/safe-format.js": {
          "bytesInOutput": 2038
        },
        "node_modules/@exodus/schemasafe/src/scope-utils.js": {
          "bytesInOutput": 731
        },
        "node_modules/@exodus/schemasafe/src/scope-functions.js": {
          "bytesInOutput": 1910
        },
        "node_modules/@exodus/schemasafe/src/javascript.js": {
          "bytesInOutput": 4038
        },
        "node_modules/@exodus/schemasafe/src/generate-function.js": {
          "bytesInOutput": 1539
        },
        "node_modules/@exodus/schemasafe/src/known-keywords.js": {
          "bytesInOutput": 1453
        },
        "node_modules/@exodus/schemasafe/src/pointer.js": {
          "bytesInOutput": 3709
        },
        "node_modules/@exodus/schemasafe/src/formats.js": {
          "bytesInOutput": 6618
        },
        "node_modules/@exodus/schemasafe/src/tracing.js": {
          "bytesInOutput": 2500
        },
        "node_modules/@exodus/schemasafe/src/compile.js": {
          "bytesInOutput": 29638
        },
        "node_modules/@exodus/schemasafe/src/index.js": {
          "bytesInOutput": 2005
        },
        "lib/fn/index-schemasafe.ts": {
          "bytesInOutput": 279
        }
      },
      "bytes": 57019
    }
  }
} | 
Beta Was this translation helpful? Give feedback.
-
| In terms of performance, looking at the benchmarks linked above, the main thing that I noticed is that they're running on potentially outdated versions of these libraries. For example,  I have cloned the repo, then ran  After the first run I realized that  At this point I was able to run the benchmarks successfully and the results are consistent with the original ones in terms of ordering albeit with a much smaller difference between the two. Overall it appears that even though  Another interesting detail to notice is that when it comes to errors thrown during the validation,  Below the full breakdown of the results. Note Note that the tests above have been run on my laptop and not in Lambda, so the results might be different once ran there. json-schema-benchmark (draft7)Performance benchmark for Node.js JSON-schema validators. Also tests against official JSON-schema test suite, version draft7. and checks Contribute to these benchmarks Performance
 1049 tests are run in each test run. Validators tested:  (validators not in the results above where excluded because of failing tests - see below for details) 
 Test failure summaryThis test suite uses the official JSON-schema test suite, version draft7. If a validator does not pass a test in the official test suite, it will show up in these results. 
 Some validators have deliberately chosen not to support parts of the spec. Go to the homepage of the validator to learn if that is the case for these tests. json-schema-benchmark (draft6)Performance benchmark for Node.js JSON-schema validators. Also tests against official JSON-schema test suite, version draft6. and checks Contribute to these benchmarks Performance
 884 tests are run in each test run. Validators tested:  (validators not in the results above where excluded because of failing tests - see below for details) 
 Test failure summaryThis test suite uses the official JSON-schema test suite, version draft6. If a validator does not pass a test in the official test suite, it will show up in these results. 
 Some validators have deliberately chosen not to support parts of the spec. Go to the homepage of the validator to learn if that is the case for these tests. | 
Beta Was this translation helpful? Give feedback.
-
| Another thing to notice, that I must admit gives me pause, is the fact that  | 
Beta Was this translation helpful? Give feedback.
-
| Worth noting that ajv supports compiling the JSON Schema into ESM (with treeshaking), not represented in the above tests. The resulting bundle is smaller than all the others (from testing a few years ago) with this approach, but requires an extra build step. This is what Middy recommends, though can't comment on how many people choose this option. https://middy.js.org/docs/middlewares/validator Additional bonuses of ajv is that is has translations of errors into multiple languages, making it more inclusive. | 
Beta Was this translation helpful? Give feedback.
-
| One aside from me. We're using ajv in one particular internal project. The schema compilation step caused some very non-trivial cold start delays for us because we were compiling all schemas at startup, even if we weren't going to use the validation function in the lifetime of the given Lambda invocation. We had better luck compiling and caching validators just in time. | 
Beta Was this translation helpful? Give feedback.
-
| @willfarrell thanks for the info, any chance you could link to an example or docs that show how to do this? I've tried to search their repo but the only relevant pieces I could find are this setting and this discussion which seem to point to the fact that this setting influences only the code generation/compilation. I'm not yet 100% familiar with this project and space, so I might completely be off base, but this means that using this setting you can influence only the code generated by ajv. This kinda makes sense in the frame of my mental model as I've never seen dynamic runtime switching of imports. Whether a module is interpreted as CJS or ESM is decided (roughly) based on the way it's exported both in its source and in its  But regardless of the above, I have tried to run the build test again setting the  I also ran the unminified outputs of the bundles with  @misterjoshua That's good info. I'd like to run some tests on Lambda next, I'm just not sure what would be a representative sample to show performance short of reworking the entire benchmark suite to call Lambda functions rather than run the tests locally. | 
Beta Was this translation helpful? Give feedback.
-
| You're in the right area. I create a package to allow other extension to work with ESM called  | 
Beta Was this translation helpful? Give feedback.
-
| @dreamorosi In my understanding  So you have two options, compile schema everytime in runtime or precompile it as a standalone code. This is what this  For standalone to have ESM/CJS you can generate a function from the precompiled schema + validation function – https://ajv.js.org/standalone.html. You create it as a bundle with a CLI (or a wrapper  Pros: You have this tiny bundle and ESM support (if needed). As a solution, it can be described in docs about how to create a schema bundle or add a guide on how to do an extra step in  But some users may not want to do the extra build step, so we need to have  | 
Beta Was this translation helpful? Give feedback.
-
| I wanted to give an update on this utility. As you might've seen we have just published our roadmap for this year and we have decided to include this utility as part of a larger push to close the gap between this version of Powertools for AWS and the one written in Python. In terms of implementation, after the discussion above, we have decided to go with  As mentioned in the roadmap page, for this feature we're going to offer the chance to the community to contribute and lead the implementation. Based on feedback received over the last few months we've heard many people interested in making an impact on the project so we're happy to give this spotlight to anyone who's interested. Below are the three main issues/tasks for this new feature, if anyone is interested please don't hesitate to reach out: 
 Finally, I want to thank each and every one of those who took the time to contribute to this discussion and helped with the research. | 
Beta Was this translation helpful? Give feedback.









Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Description of the proposal
There should be a consistent way to validate the structures of inputs and outputs for AWS lambdas.
Name of the core utility (and consequently the folders that contain the libraries):
packages/validationJustification
The "Garbage in, garbage out" principle suggests that we should validate our inputs to prevent "garbage in," and for Lambda, those inputs include events passed to the lambda handler. A short, informal survey of GitHub projects using the CDK's NodejsFunction found that 90% of the studied projects hand-code their validation, indicating little consensus on any singular tool to validate inputs.
Additionally, the Java and Python toolkits saw fit to add validation of not only lambda input but lambda responses.
Validation support should be added to work toward feature parity between the AWS Lambda Powertools libraries and to offer developers a good alternative to hand-coding their validation.
Goals
Proposed API
Installation
Yarn
Npm
Usage
Lambda Handler
Ad-hoc validation
Survey Results
Obtained by searching GitHub code for NodejsFunction in TypeScript projects. The repositories are from the first twenty results, sorted by "best match." These cases are good enough evidence for me, but perhaps the community can suggest a better way to get this information.
Beta Was this translation helpful? Give feedback.
All reactions