{
	"$id": "https://spec.openapis.org/oas/3.1/schema/2022-10-07",
	"$schema": "https://json-schema.org/draft/2020-12/schema",
	"description": "The description of OpenAPI v3.1.x documents without schema validation, as defined by https://spec.openapis.org/oas/v3.1.0",
	"type": "object",
	"properties": {
		"openapi": {
			"type": "string",
			"pattern": "^3\\.1\\.\\d+(-.+)?$"
		},
		"info": {
			"$ref": "#/$defs/info"
		},
		"jsonSchemaDialect": {
			"type": "string",
			"format": "uri",
			"default": "https://spec.openapis.org/oas/3.1/dialect/base"
		},
		"servers": {
			"type": "array",
			"items": {
				"$ref": "#/$defs/server"
			},
			"default": [
				{
					"url": "/"
				}
			]
		},
		"paths": {
			"$ref": "#/$defs/paths"
		},
		"webhooks": {
			"type": "object",
			"additionalProperties": {
				"$ref": "#/$defs/path-item-or-reference"
			}
		},
		"components": {
			"$ref": "#/$defs/components"
		},
		"security": {
			"type": "array",
			"items": {
				"$ref": "#/$defs/security-requirement"
			}
		},
		"tags": {
			"type": "array",
			"items": {
				"$ref": "#/$defs/tag"
			}
		},
		"externalDocs": {
			"$ref": "#/$defs/external-documentation"
		}
	},
	"required": [
		"openapi",
		"info"
	],
	"anyOf": [
		{
			"required": [
				"paths"
			]
		},
		{
			"required": [
				"components"
			]
		},
		{
			"required": [
				"webhooks"
			]
		}
	],
	"$ref": "#/$defs/specification-extensions",
	"unevaluatedProperties": false,
	"$defs": {
		"info": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#info-object",
			"type": "object",
			"properties": {
				"title": {
					"type": "string"
				},
				"summary": {
					"type": "string"
				},
				"description": {
					"type": "string"
				},
				"termsOfService": {
					"type": "string",
					"format": "uri"
				},
				"contact": {
					"$ref": "#/$defs/contact"
				},
				"license": {
					"$ref": "#/$defs/license"
				},
				"version": {
					"type": "string"
				}
			},
			"required": [
				"title",
				"version"
			],
			"$ref": "#/$defs/specification-extensions",
			"unevaluatedProperties": false
		},
		"contact": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#contact-object",
			"type": "object",
			"properties": {
				"name": {
					"type": "string"
				},
				"url": {
					"type": "string",
					"format": "uri"
				},
				"email": {
					"type": "string",
					"format": "email"
				}
			},
			"$ref": "#/$defs/specification-extensions",
			"unevaluatedProperties": false
		},
		"license": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#license-object",
			"type": "object",
			"properties": {
				"name": {
					"type": "string"
				},
				"identifier": {
					"type": "string"
				},
				"url": {
					"type": "string",
					"format": "uri"
				}
			},
			"required": [
				"name"
			],
			"dependentSchemas": {
				"identifier": {
					"not": {
						"required": [
							"url"
						]
					}
				}
			},
			"$ref": "#/$defs/specification-extensions",
			"unevaluatedProperties": false
		},
		"server": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#server-object",
			"type": "object",
			"properties": {
				"url": {
					"type": "string",
					"format": "uri-reference"
				},
				"description": {
					"type": "string"
				},
				"variables": {
					"type": "object",
					"additionalProperties": {
						"$ref": "#/$defs/server-variable"
					}
				}
			},
			"required": [
				"url"
			],
			"$ref": "#/$defs/specification-extensions",
			"unevaluatedProperties": false
		},
		"server-variable": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#server-variable-object",
			"type": "object",
			"properties": {
				"enum": {
					"type": "array",
					"items": {
						"type": "string"
					},
					"minItems": 1
				},
				"default": {
					"type": "string"
				},
				"description": {
					"type": "string"
				}
			},
			"required": [
				"default"
			],
			"$ref": "#/$defs/specification-extensions",
			"unevaluatedProperties": false
		},
		"components": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#components-object",
			"type": "object",
			"properties": {
				"schemas": {
					"type": "object",
					"additionalProperties": {
						"$ref": "#/$defs/schema"
					}
				},
				"responses": {
					"type": "object",
					"additionalProperties": {
						"$ref": "#/$defs/response-or-reference"
					}
				},
				"parameters": {
					"type": "object",
					"additionalProperties": {
						"$ref": "#/$defs/parameter-or-reference"
					}
				},
				"examples": {
					"type": "object",
					"additionalProperties": {
						"$ref": "#/$defs/example-or-reference"
					}
				},
				"requestBodies": {
					"type": "object",
					"additionalProperties": {
						"$ref": "#/$defs/request-body-or-reference"
					}
				},
				"headers": {
					"type": "object",
					"additionalProperties": {
						"$ref": "#/$defs/header-or-reference"
					}
				},
				"securitySchemes": {
					"type": "object",
					"additionalProperties": {
						"$ref": "#/$defs/security-scheme-or-reference"
					}
				},
				"links": {
					"type": "object",
					"additionalProperties": {
						"$ref": "#/$defs/link-or-reference"
					}
				},
				"callbacks": {
					"type": "object",
					"additionalProperties": {
						"$ref": "#/$defs/callbacks-or-reference"
					}
				},
				"pathItems": {
					"type": "object",
					"additionalProperties": {
						"$ref": "#/$defs/path-item-or-reference"
					}
				}
			},
			"patternProperties": {
				"^(schemas|responses|parameters|examples|requestBodies|headers|securitySchemes|links|callbacks|pathItems)$": {
					"$comment": "Enumerating all of the property names in the regex above is necessary for unevaluatedProperties to work as expected",
					"propertyNames": {
						"pattern": "^[a-zA-Z0-9._-]+$"
					}
				}
			},
			"$ref": "#/$defs/specification-extensions",
			"unevaluatedProperties": false
		},
		"paths": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#paths-object",
			"type": "object",
			"patternProperties": {
				"^/": {
					"$ref": "#/$defs/path-item"
				}
			},
			"$ref": "#/$defs/specification-extensions",
			"unevaluatedProperties": false
		},
		"path-item": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#path-item-object",
			"type": "object",
			"properties": {
				"summary": {
					"type": "string"
				},
				"description": {
					"type": "string"
				},
				"servers": {
					"type": "array",
					"items": {
						"$ref": "#/$defs/server"
					}
				},
				"parameters": {
					"type": "array",
					"items": {
						"$ref": "#/$defs/parameter-or-reference"
					}
				},
				"get": {
					"$ref": "#/$defs/operation"
				},
				"put": {
					"$ref": "#/$defs/operation"
				},
				"post": {
					"$ref": "#/$defs/operation"
				},
				"delete": {
					"$ref": "#/$defs/operation"
				},
				"options": {
					"$ref": "#/$defs/operation"
				},
				"head": {
					"$ref": "#/$defs/operation"
				},
				"patch": {
					"$ref": "#/$defs/operation"
				},
				"trace": {
					"$ref": "#/$defs/operation"
				}
			},
			"$ref": "#/$defs/specification-extensions",
			"unevaluatedProperties": false
		},
		"path-item-or-reference": {
			"if": {
				"type": "object",
				"required": [
					"$ref"
				]
			},
			"then": {
				"$ref": "#/$defs/reference"
			},
			"else": {
				"$ref": "#/$defs/path-item"
			}
		},
		"operation": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#operation-object",
			"type": "object",
			"properties": {
				"tags": {
					"type": "array",
					"items": {
						"type": "string"
					}
				},
				"summary": {
					"type": "string"
				},
				"description": {
					"type": "string"
				},
				"externalDocs": {
					"$ref": "#/$defs/external-documentation"
				},
				"operationId": {
					"type": "string"
				},
				"parameters": {
					"type": "array",
					"items": {
						"$ref": "#/$defs/parameter-or-reference"
					}
				},
				"requestBody": {
					"$ref": "#/$defs/request-body-or-reference"
				},
				"responses": {
					"$ref": "#/$defs/responses"
				},
				"callbacks": {
					"type": "object",
					"additionalProperties": {
						"$ref": "#/$defs/callbacks-or-reference"
					}
				},
				"deprecated": {
					"default": false,
					"type": "boolean"
				},
				"security": {
					"type": "array",
					"items": {
						"$ref": "#/$defs/security-requirement"
					}
				},
				"servers": {
					"type": "array",
					"items": {
						"$ref": "#/$defs/server"
					}
				}
			},
			"$ref": "#/$defs/specification-extensions",
			"unevaluatedProperties": false
		},
		"external-documentation": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#external-documentation-object",
			"type": "object",
			"properties": {
				"description": {
					"type": "string"
				},
				"url": {
					"type": "string",
					"format": "uri"
				}
			},
			"required": [
				"url"
			],
			"$ref": "#/$defs/specification-extensions",
			"unevaluatedProperties": false
		},
		"parameter": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#parameter-object",
			"type": "object",
			"properties": {
				"name": {
					"type": "string"
				},
				"in": {
					"enum": [
						"query",
						"header",
						"path",
						"cookie"
					]
				},
				"description": {
					"type": "string"
				},
				"required": {
					"default": false,
					"type": "boolean"
				},
				"deprecated": {
					"default": false,
					"type": "boolean"
				},
				"schema": {
					"$ref": "#/$defs/schema"
				},
				"content": {
					"$ref": "#/$defs/content",
					"minProperties": 1,
					"maxProperties": 1
				}
			},
			"required": [
				"name",
				"in"
			],
			"oneOf": [
				{
					"required": [
						"schema"
					]
				},
				{
					"required": [
						"content"
					]
				}
			],
			"if": {
				"properties": {
					"in": {
						"const": "query"
					}
				},
				"required": [
					"in"
				]
			},
			"then": {
				"properties": {
					"allowEmptyValue": {
						"default": false,
						"type": "boolean"
					}
				}
			},
			"dependentSchemas": {
				"schema": {
					"properties": {
						"style": {
							"type": "string"
						},
						"explode": {
							"type": "boolean"
						}
					},
					"allOf": [
						{
							"$ref": "#/$defs/examples"
						},
						{
							"$ref": "#/$defs/parameter/dependentSchemas/schema/$defs/styles-for-path"
						},
						{
							"$ref": "#/$defs/parameter/dependentSchemas/schema/$defs/styles-for-header"
						},
						{
							"$ref": "#/$defs/parameter/dependentSchemas/schema/$defs/styles-for-query"
						},
						{
							"$ref": "#/$defs/parameter/dependentSchemas/schema/$defs/styles-for-cookie"
						},
						{
							"$ref": "#/$defs/parameter/dependentSchemas/schema/$defs/styles-for-form"
						}
					],
					"$defs": {
						"styles-for-path": {
							"if": {
								"properties": {
									"in": {
										"const": "path"
									}
								},
								"required": [
									"in"
								]
							},
							"then": {
								"properties": {
									"name": {
										"pattern": "[^/#?]+$"
									},
									"style": {
										"default": "simple",
										"enum": [
											"matrix",
											"label",
											"simple"
										]
									},
									"required": {
										"const": true
									}
								},
								"required": [
									"required"
								]
							}
						},
						"styles-for-header": {
							"if": {
								"properties": {
									"in": {
										"const": "header"
									}
								},
								"required": [
									"in"
								]
							},
							"then": {
								"properties": {
									"style": {
										"default": "simple",
										"const": "simple"
									}
								}
							}
						},
						"styles-for-query": {
							"if": {
								"properties": {
									"in": {
										"const": "query"
									}
								},
								"required": [
									"in"
								]
							},
							"then": {
								"properties": {
									"style": {
										"default": "form",
										"enum": [
											"form",
											"spaceDelimited",
											"pipeDelimited",
											"deepObject"
										]
									},
									"allowReserved": {
										"default": false,
										"type": "boolean"
									}
								}
							}
						},
						"styles-for-cookie": {
							"if": {
								"properties": {
									"in": {
										"const": "cookie"
									}
								},
								"required": [
									"in"
								]
							},
							"then": {
								"properties": {
									"style": {
										"default": "form",
										"const": "form"
									}
								}
							}
						},
						"styles-for-form": {
							"if": {
								"properties": {
									"style": {
										"const": "form"
									}
								},
								"required": [
									"style"
								]
							},
							"then": {
								"properties": {
									"explode": {
										"default": true
									}
								}
							},
							"else": {
								"properties": {
									"explode": {
										"default": false
									}
								}
							}
						}
					}
				}
			},
			"$ref": "#/$defs/specification-extensions",
			"unevaluatedProperties": false
		},
		"parameter-or-reference": {
			"if": {
				"type": "object",
				"required": [
					"$ref"
				]
			},
			"then": {
				"$ref": "#/$defs/reference"
			},
			"else": {
				"$ref": "#/$defs/parameter"
			}
		},
		"request-body": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#request-body-object",
			"type": "object",
			"properties": {
				"description": {
					"type": "string"
				},
				"content": {
					"$ref": "#/$defs/content"
				},
				"required": {
					"default": false,
					"type": "boolean"
				}
			},
			"required": [
				"content"
			],
			"$ref": "#/$defs/specification-extensions",
			"unevaluatedProperties": false
		},
		"request-body-or-reference": {
			"if": {
				"type": "object",
				"required": [
					"$ref"
				]
			},
			"then": {
				"$ref": "#/$defs/reference"
			},
			"else": {
				"$ref": "#/$defs/request-body"
			}
		},
		"content": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#fixed-fields-10",
			"type": "object",
			"additionalProperties": {
				"$ref": "#/$defs/media-type"
			},
			"propertyNames": {
				"format": "media-range"
			}
		},
		"media-type": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#media-type-object",
			"type": "object",
			"properties": {
				"schema": {
					"$ref": "#/$defs/schema"
				},
				"encoding": {
					"type": "object",
					"additionalProperties": {
						"$ref": "#/$defs/encoding"
					}
				}
			},
			"allOf": [
				{
					"$ref": "#/$defs/specification-extensions"
				},
				{
					"$ref": "#/$defs/examples"
				}
			],
			"unevaluatedProperties": false
		},
		"encoding": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#encoding-object",
			"type": "object",
			"properties": {
				"contentType": {
					"type": "string",
					"format": "media-range"
				},
				"headers": {
					"type": "object",
					"additionalProperties": {
						"$ref": "#/$defs/header-or-reference"
					}
				},
				"style": {
					"default": "form",
					"enum": [
						"form",
						"spaceDelimited",
						"pipeDelimited",
						"deepObject"
					]
				},
				"explode": {
					"type": "boolean"
				},
				"allowReserved": {
					"default": false,
					"type": "boolean"
				}
			},
			"allOf": [
				{
					"$ref": "#/$defs/specification-extensions"
				},
				{
					"$ref": "#/$defs/encoding/$defs/explode-default"
				}
			],
			"unevaluatedProperties": false,
			"$defs": {
				"explode-default": {
					"if": {
						"properties": {
							"style": {
								"const": "form"
							}
						},
						"required": [
							"style"
						]
					},
					"then": {
						"properties": {
							"explode": {
								"default": true
							}
						}
					},
					"else": {
						"properties": {
							"explode": {
								"default": false
							}
						}
					}
				}
			}
		},
		"responses": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#responses-object",
			"type": "object",
			"properties": {
				"default": {
					"$ref": "#/$defs/response-or-reference"
				}
			},
			"patternProperties": {
				"^[1-5](?:[0-9]{2}|XX)$": {
					"$ref": "#/$defs/response-or-reference"
				}
			},
			"minProperties": 1,
			"$ref": "#/$defs/specification-extensions",
			"unevaluatedProperties": false
		},
		"response": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#response-object",
			"type": "object",
			"properties": {
				"description": {
					"type": "string"
				},
				"headers": {
					"type": "object",
					"additionalProperties": {
						"$ref": "#/$defs/header-or-reference"
					}
				},
				"content": {
					"$ref": "#/$defs/content"
				},
				"links": {
					"type": "object",
					"additionalProperties": {
						"$ref": "#/$defs/link-or-reference"
					}
				}
			},
			"required": [
				"description"
			],
			"$ref": "#/$defs/specification-extensions",
			"unevaluatedProperties": false
		},
		"response-or-reference": {
			"if": {
				"type": "object",
				"required": [
					"$ref"
				]
			},
			"then": {
				"$ref": "#/$defs/reference"
			},
			"else": {
				"$ref": "#/$defs/response"
			}
		},
		"callbacks": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#callback-object",
			"type": "object",
			"$ref": "#/$defs/specification-extensions",
			"additionalProperties": {
				"$ref": "#/$defs/path-item-or-reference"
			}
		},
		"callbacks-or-reference": {
			"if": {
				"type": "object",
				"required": [
					"$ref"
				]
			},
			"then": {
				"$ref": "#/$defs/reference"
			},
			"else": {
				"$ref": "#/$defs/callbacks"
			}
		},
		"example": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#example-object",
			"type": "object",
			"properties": {
				"summary": {
					"type": "string"
				},
				"description": {
					"type": "string"
				},
				"value": true,
				"externalValue": {
					"type": "string",
					"format": "uri"
				}
			},
			"not": {
				"required": [
					"value",
					"externalValue"
				]
			},
			"$ref": "#/$defs/specification-extensions",
			"unevaluatedProperties": false
		},
		"example-or-reference": {
			"if": {
				"type": "object",
				"required": [
					"$ref"
				]
			},
			"then": {
				"$ref": "#/$defs/reference"
			},
			"else": {
				"$ref": "#/$defs/example"
			}
		},
		"link": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#link-object",
			"type": "object",
			"properties": {
				"operationRef": {
					"type": "string",
					"format": "uri-reference"
				},
				"operationId": {
					"type": "string"
				},
				"parameters": {
					"$ref": "#/$defs/map-of-strings"
				},
				"requestBody": true,
				"description": {
					"type": "string"
				},
				"body": {
					"$ref": "#/$defs/server"
				}
			},
			"oneOf": [
				{
					"required": [
						"operationRef"
					]
				},
				{
					"required": [
						"operationId"
					]
				}
			],
			"$ref": "#/$defs/specification-extensions",
			"unevaluatedProperties": false
		},
		"link-or-reference": {
			"if": {
				"type": "object",
				"required": [
					"$ref"
				]
			},
			"then": {
				"$ref": "#/$defs/reference"
			},
			"else": {
				"$ref": "#/$defs/link"
			}
		},
		"header": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#header-object",
			"type": "object",
			"properties": {
				"description": {
					"type": "string"
				},
				"required": {
					"default": false,
					"type": "boolean"
				},
				"deprecated": {
					"default": false,
					"type": "boolean"
				},
				"schema": {
					"$ref": "#/$defs/schema"
				},
				"content": {
					"$ref": "#/$defs/content",
					"minProperties": 1,
					"maxProperties": 1
				}
			},
			"oneOf": [
				{
					"required": [
						"schema"
					]
				},
				{
					"required": [
						"content"
					]
				}
			],
			"dependentSchemas": {
				"schema": {
					"properties": {
						"style": {
							"default": "simple",
							"const": "simple"
						},
						"explode": {
							"default": false,
							"type": "boolean"
						}
					},
					"$ref": "#/$defs/examples"
				}
			},
			"$ref": "#/$defs/specification-extensions",
			"unevaluatedProperties": false
		},
		"header-or-reference": {
			"if": {
				"type": "object",
				"required": [
					"$ref"
				]
			},
			"then": {
				"$ref": "#/$defs/reference"
			},
			"else": {
				"$ref": "#/$defs/header"
			}
		},
		"tag": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#tag-object",
			"type": "object",
			"properties": {
				"name": {
					"type": "string"
				},
				"description": {
					"type": "string"
				},
				"externalDocs": {
					"$ref": "#/$defs/external-documentation"
				}
			},
			"required": [
				"name"
			],
			"$ref": "#/$defs/specification-extensions",
			"unevaluatedProperties": false
		},
		"reference": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#reference-object",
			"type": "object",
			"properties": {
				"$ref": {
					"type": "string",
					"format": "uri-reference"
				},
				"summary": {
					"type": "string"
				},
				"description": {
					"type": "string"
				}
			},
			"unevaluatedProperties": false
		},
		"schema": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#schema-object",
			"$dynamicAnchor": "meta",
			"type": [
				"object",
				"boolean"
			]
		},
		"security-scheme": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#security-scheme-object",
			"type": "object",
			"properties": {
				"type": {
					"enum": [
						"apiKey",
						"http",
						"mutualTLS",
						"oauth2",
						"openIdConnect"
					]
				},
				"description": {
					"type": "string"
				}
			},
			"required": [
				"type"
			],
			"allOf": [
				{
					"$ref": "#/$defs/specification-extensions"
				},
				{
					"$ref": "#/$defs/security-scheme/$defs/type-apikey"
				},
				{
					"$ref": "#/$defs/security-scheme/$defs/type-http"
				},
				{
					"$ref": "#/$defs/security-scheme/$defs/type-http-bearer"
				},
				{
					"$ref": "#/$defs/security-scheme/$defs/type-oauth2"
				},
				{
					"$ref": "#/$defs/security-scheme/$defs/type-oidc"
				}
			],
			"unevaluatedProperties": false,
			"$defs": {
				"type-apikey": {
					"if": {
						"properties": {
							"type": {
								"const": "apiKey"
							}
						},
						"required": [
							"type"
						]
					},
					"then": {
						"properties": {
							"name": {
								"type": "string"
							},
							"in": {
								"enum": [
									"query",
									"header",
									"cookie"
								]
							}
						},
						"required": [
							"name",
							"in"
						]
					}
				},
				"type-http": {
					"if": {
						"properties": {
							"type": {
								"const": "http"
							}
						},
						"required": [
							"type"
						]
					},
					"then": {
						"properties": {
							"scheme": {
								"type": "string"
							}
						},
						"required": [
							"scheme"
						]
					}
				},
				"type-http-bearer": {
					"if": {
						"properties": {
							"type": {
								"const": "http"
							},
							"scheme": {
								"type": "string",
								"pattern": "^[Bb][Ee][Aa][Rr][Ee][Rr]$"
							}
						},
						"required": [
							"type",
							"scheme"
						]
					},
					"then": {
						"properties": {
							"bearerFormat": {
								"type": "string"
							}
						}
					}
				},
				"type-oauth2": {
					"if": {
						"properties": {
							"type": {
								"const": "oauth2"
							}
						},
						"required": [
							"type"
						]
					},
					"then": {
						"properties": {
							"flows": {
								"$ref": "#/$defs/oauth-flows"
							}
						},
						"required": [
							"flows"
						]
					}
				},
				"type-oidc": {
					"if": {
						"properties": {
							"type": {
								"const": "openIdConnect"
							}
						},
						"required": [
							"type"
						]
					},
					"then": {
						"properties": {
							"openIdConnectUrl": {
								"type": "string",
								"format": "uri"
							}
						},
						"required": [
							"openIdConnectUrl"
						]
					}
				}
			}
		},
		"security-scheme-or-reference": {
			"if": {
				"type": "object",
				"required": [
					"$ref"
				]
			},
			"then": {
				"$ref": "#/$defs/reference"
			},
			"else": {
				"$ref": "#/$defs/security-scheme"
			}
		},
		"oauth-flows": {
			"type": "object",
			"properties": {
				"implicit": {
					"$ref": "#/$defs/oauth-flows/$defs/implicit"
				},
				"password": {
					"$ref": "#/$defs/oauth-flows/$defs/password"
				},
				"clientCredentials": {
					"$ref": "#/$defs/oauth-flows/$defs/client-credentials"
				},
				"authorizationCode": {
					"$ref": "#/$defs/oauth-flows/$defs/authorization-code"
				}
			},
			"$ref": "#/$defs/specification-extensions",
			"unevaluatedProperties": false,
			"$defs": {
				"implicit": {
					"type": "object",
					"properties": {
						"authorizationUrl": {
							"type": "string",
							"format": "uri"
						},
						"refreshUrl": {
							"type": "string",
							"format": "uri"
						},
						"scopes": {
							"$ref": "#/$defs/map-of-strings"
						}
					},
					"required": [
						"authorizationUrl",
						"scopes"
					],
					"$ref": "#/$defs/specification-extensions",
					"unevaluatedProperties": false
				},
				"password": {
					"type": "object",
					"properties": {
						"tokenUrl": {
							"type": "string",
							"format": "uri"
						},
						"refreshUrl": {
							"type": "string",
							"format": "uri"
						},
						"scopes": {
							"$ref": "#/$defs/map-of-strings"
						}
					},
					"required": [
						"tokenUrl",
						"scopes"
					],
					"$ref": "#/$defs/specification-extensions",
					"unevaluatedProperties": false
				},
				"client-credentials": {
					"type": "object",
					"properties": {
						"tokenUrl": {
							"type": "string",
							"format": "uri"
						},
						"refreshUrl": {
							"type": "string",
							"format": "uri"
						},
						"scopes": {
							"$ref": "#/$defs/map-of-strings"
						}
					},
					"required": [
						"tokenUrl",
						"scopes"
					],
					"$ref": "#/$defs/specification-extensions",
					"unevaluatedProperties": false
				},
				"authorization-code": {
					"type": "object",
					"properties": {
						"authorizationUrl": {
							"type": "string",
							"format": "uri"
						},
						"tokenUrl": {
							"type": "string",
							"format": "uri"
						},
						"refreshUrl": {
							"type": "string",
							"format": "uri"
						},
						"scopes": {
							"$ref": "#/$defs/map-of-strings"
						}
					},
					"required": [
						"authorizationUrl",
						"tokenUrl",
						"scopes"
					],
					"$ref": "#/$defs/specification-extensions",
					"unevaluatedProperties": false
				}
			}
		},
		"security-requirement": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#security-requirement-object",
			"type": "object",
			"additionalProperties": {
				"type": "array",
				"items": {
					"type": "string"
				}
			}
		},
		"specification-extensions": {
			"$comment": "https://spec.openapis.org/oas/v3.1.0#specification-extensions",
			"patternProperties": {
				"^x-": true
			}
		},
		"examples": {
			"properties": {
				"example": true,
				"examples": {
					"type": "object",
					"additionalProperties": {
						"$ref": "#/$defs/example-or-reference"
					}
				}
			}
		},
		"map-of-strings": {
			"type": "object",
			"additionalProperties": {
				"type": "string"
			}
		}
	}
}