UNPKG

@sphereon/pex

Version:

A Typescript implementation of the v1 and v2 DIF Presentation Exchange specification

197 lines 27.6 kB
"use strict"; module.exports = validate42; module.exports.default = validate42; const schema12 = { "$ref": "#/definitions/FilterV1Base", "$schema": "http://json-schema.org/draft-07/schema#", "definitions": { "FilterV1Base": { "additionalProperties": false, "properties": { "const": { "$ref": "#/definitions/OneOfNumberStringBoolean" }, "enum": { "items": { "$ref": "#/definitions/OneOfNumberString" }, "type": "array" }, "exclusiveMaximum": { "$ref": "#/definitions/OneOfNumberString" }, "exclusiveMinimum": { "$ref": "#/definitions/OneOfNumberString" }, "format": { "type": "string" }, "maxLength": { "type": "number" }, "maximum": { "$ref": "#/definitions/OneOfNumberString" }, "minLength": { "type": "number" }, "minimum": { "$ref": "#/definitions/OneOfNumberString" }, "not": { "type": "object" }, "pattern": { "type": "string" }, "type": { "type": "string" } }, "required": ["type"], "type": "object" }, "OneOfNumberString": { "type": ["number", "string"] }, "OneOfNumberStringBoolean": { "type": ["number", "string", "boolean"] } } }; const schema13 = { "additionalProperties": false, "properties": { "const": { "$ref": "#/definitions/OneOfNumberStringBoolean" }, "enum": { "items": { "$ref": "#/definitions/OneOfNumberString" }, "type": "array" }, "exclusiveMaximum": { "$ref": "#/definitions/OneOfNumberString" }, "exclusiveMinimum": { "$ref": "#/definitions/OneOfNumberString" }, "format": { "type": "string" }, "maxLength": { "type": "number" }, "maximum": { "$ref": "#/definitions/OneOfNumberString" }, "minLength": { "type": "number" }, "minimum": { "$ref": "#/definitions/OneOfNumberString" }, "not": { "type": "object" }, "pattern": { "type": "string" }, "type": { "type": "string" } }, "required": ["type"], "type": "object" }; const func4 = Object.prototype.hasOwnProperty; const schema14 = { "type": ["number", "string", "boolean"] }; function validate44(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { let vErrors = null; let errors = 0; if (((!(typeof data == "number")) && (typeof data !== "string")) && (typeof data !== "boolean")) { const err0 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: schema14.type }, message: "must be number,string,boolean", schema: schema14.type, parentSchema: schema14, data }; if (vErrors === null) { vErrors = [err0]; } else { vErrors.push(err0); } errors++; } validate44.errors = vErrors; return errors === 0; } const schema15 = { "type": ["number", "string"] }; function validate46(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { let vErrors = null; let errors = 0; if ((!(typeof data == "number")) && (typeof data !== "string")) { const err0 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: schema15.type }, message: "must be number,string", schema: schema15.type, parentSchema: schema15, data }; if (vErrors === null) { vErrors = [err0]; } else { vErrors.push(err0); } errors++; } validate46.errors = vErrors; return errors === 0; } function validate43(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { let vErrors = null; let errors = 0; if (data && typeof data == "object" && !Array.isArray(data)) { if (data.type === undefined) { const err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "type" }, message: "must have required property '" + "type" + "'", schema: schema13.required, parentSchema: schema13, data }; if (vErrors === null) { vErrors = [err0]; } else { vErrors.push(err0); } errors++; } for (const key0 in data) { if (!(func4.call(schema13.properties, key0))) { const err1 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties", schema: false, parentSchema: schema13, data }; if (vErrors === null) { vErrors = [err1]; } else { vErrors.push(err1); } errors++; } } if (data.const !== undefined) { if (!(validate44(data.const, { instancePath: instancePath + "/const", parentData: data, parentDataProperty: "const", rootData }))) { vErrors = vErrors === null ? validate44.errors : vErrors.concat(validate44.errors); errors = vErrors.length; } } if (data.enum !== undefined) { let data1 = data.enum; if (Array.isArray(data1)) { const len0 = data1.length; for (let i0 = 0; i0 < len0; i0++) { if (!(validate46(data1[i0], { instancePath: instancePath + "/enum/" + i0, parentData: data1, parentDataProperty: i0, rootData }))) { vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); errors = vErrors.length; } } } else { const err2 = { instancePath: instancePath + "/enum", schemaPath: "#/properties/enum/type", keyword: "type", params: { type: "array" }, message: "must be array", schema: schema13.properties.enum.type, parentSchema: schema13.properties.enum, data: data1 }; if (vErrors === null) { vErrors = [err2]; } else { vErrors.push(err2); } errors++; } } if (data.exclusiveMaximum !== undefined) { if (!(validate46(data.exclusiveMaximum, { instancePath: instancePath + "/exclusiveMaximum", parentData: data, parentDataProperty: "exclusiveMaximum", rootData }))) { vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); errors = vErrors.length; } } if (data.exclusiveMinimum !== undefined) { if (!(validate46(data.exclusiveMinimum, { instancePath: instancePath + "/exclusiveMinimum", parentData: data, parentDataProperty: "exclusiveMinimum", rootData }))) { vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); errors = vErrors.length; } } if (data.format !== undefined) { let data5 = data.format; if (typeof data5 !== "string") { const err3 = { instancePath: instancePath + "/format", schemaPath: "#/properties/format/type", keyword: "type", params: { type: "string" }, message: "must be string", schema: schema13.properties.format.type, parentSchema: schema13.properties.format, data: data5 }; if (vErrors === null) { vErrors = [err3]; } else { vErrors.push(err3); } errors++; } } if (data.maxLength !== undefined) { let data6 = data.maxLength; if (!(typeof data6 == "number")) { const err4 = { instancePath: instancePath + "/maxLength", schemaPath: "#/properties/maxLength/type", keyword: "type", params: { type: "number" }, message: "must be number", schema: schema13.properties.maxLength.type, parentSchema: schema13.properties.maxLength, data: data6 }; if (vErrors === null) { vErrors = [err4]; } else { vErrors.push(err4); } errors++; } } if (data.maximum !== undefined) { if (!(validate46(data.maximum, { instancePath: instancePath + "/maximum", parentData: data, parentDataProperty: "maximum", rootData }))) { vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); errors = vErrors.length; } } if (data.minLength !== undefined) { let data8 = data.minLength; if (!(typeof data8 == "number")) { const err5 = { instancePath: instancePath + "/minLength", schemaPath: "#/properties/minLength/type", keyword: "type", params: { type: "number" }, message: "must be number", schema: schema13.properties.minLength.type, parentSchema: schema13.properties.minLength, data: data8 }; if (vErrors === null) { vErrors = [err5]; } else { vErrors.push(err5); } errors++; } } if (data.minimum !== undefined) { if (!(validate46(data.minimum, { instancePath: instancePath + "/minimum", parentData: data, parentDataProperty: "minimum", rootData }))) { vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors); errors = vErrors.length; } } if (data.not !== undefined) { let data10 = data.not; if (!(data10 && typeof data10 == "object" && !Array.isArray(data10))) { const err6 = { instancePath: instancePath + "/not", schemaPath: "#/properties/not/type", keyword: "type", params: { type: "object" }, message: "must be object", schema: schema13.properties.not.type, parentSchema: schema13.properties.not, data: data10 }; if (vErrors === null) { vErrors = [err6]; } else { vErrors.push(err6); } errors++; } } if (data.pattern !== undefined) { let data11 = data.pattern; if (typeof data11 !== "string") { const err7 = { instancePath: instancePath + "/pattern", schemaPath: "#/properties/pattern/type", keyword: "type", params: { type: "string" }, message: "must be string", schema: schema13.properties.pattern.type, parentSchema: schema13.properties.pattern, data: data11 }; if (vErrors === null) { vErrors = [err7]; } else { vErrors.push(err7); } errors++; } } if (data.type !== undefined) { let data12 = data.type; if (typeof data12 !== "string") { const err8 = { instancePath: instancePath + "/type", schemaPath: "#/properties/type/type", keyword: "type", params: { type: "string" }, message: "must be string", schema: schema13.properties.type.type, parentSchema: schema13.properties.type, data: data12 }; if (vErrors === null) { vErrors = [err8]; } else { vErrors.push(err8); } errors++; } } } else { const err9 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object", schema: schema13.type, parentSchema: schema13, data }; if (vErrors === null) { vErrors = [err9]; } else { vErrors.push(err9); } errors++; } validate43.errors = vErrors; return errors === 0; } function validate42(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) { let vErrors = null; let errors = 0; if (!(validate43(data, { instancePath, parentData, parentDataProperty, rootData }))) { vErrors = vErrors === null ? validate43.errors : vErrors.concat(validate43.errors); errors = vErrors.length; } validate42.errors = vErrors; return errors === 0; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGVGaWx0ZXJ2MS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi92YWxpZGF0aW9uL3ZhbGlkYXRlRmlsdGVydjEuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWSxDQUFDO0FBQUEsTUFBTSxDQUFDLE9BQU8sR0FBRyxVQUFVLENBQUM7QUFBQSxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sR0FBRyxVQUFVLENBQUM7QUFBQSxNQUFNLFFBQVEsR0FBRyxFQUFDLE1BQU0sRUFBQyw0QkFBNEIsRUFBQyxTQUFTLEVBQUMseUNBQXlDLEVBQUMsYUFBYSxFQUFDLEVBQUMsY0FBYyxFQUFDLEVBQUMsc0JBQXNCLEVBQUMsS0FBSyxFQUFDLFlBQVksRUFBQyxFQUFDLE9BQU8sRUFBQyxFQUFDLE1BQU0sRUFBQyx3Q0FBd0MsRUFBQyxFQUFDLE1BQU0sRUFBQyxFQUFDLE9BQU8sRUFBQyxFQUFDLE1BQU0sRUFBQyxpQ0FBaUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxPQUFPLEVBQUMsRUFBQyxrQkFBa0IsRUFBQyxFQUFDLE1BQU0sRUFBQyxpQ0FBaUMsRUFBQyxFQUFDLGtCQUFrQixFQUFDLEVBQUMsTUFBTSxFQUFDLGlDQUFpQyxFQUFDLEVBQUMsUUFBUSxFQUFDLEVBQUMsTUFBTSxFQUFDLFFBQVEsRUFBQyxFQUFDLFdBQVcsRUFBQyxFQUFDLE1BQU0sRUFBQyxRQUFRLEVBQUMsRUFBQyxTQUFTLEVBQUMsRUFBQyxNQUFNLEVBQUMsaUNBQWlDLEVBQUMsRUFBQyxXQUFXLEVBQUMsRUFBQyxNQUFNLEVBQUMsUUFBUSxFQUFDLEVBQUMsU0FBUyxFQUFDLEVBQUMsTUFBTSxFQUFDLGlDQUFpQyxFQUFDLEVBQUMsS0FBSyxFQUFDLEVBQUMsTUFBTSxFQUFDLFFBQVEsRUFBQyxFQUFDLFNBQVMsRUFBQyxFQUFDLE1BQU0sRUFBQyxRQUFRLEVBQUMsRUFBQyxNQUFNLEVBQUMsRUFBQyxNQUFNLEVBQUMsUUFBUSxF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RUFBQyxDQUFDLFFBQVEsRUFBQyxRQUFRLENBQUMsRUFBQyxDQUFDO0FBQUEsU0FBUyxVQUFVLENBQUMsSUFBSSxFQUFFLEVBQUMsWUFBWSxHQUFDLEVBQUUsRUFBRSxVQUFVLEVBQUUsa0JBQWtCLEVBQUUsUUFBUSxHQUFDLElBQUksRUFBQyxHQUFDLEVBQUUsSUFBRSxJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUMsQ0FBQSxJQUFJLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQSxJQUFHLENBQUMsQ0FBQyxDQUFDLE9BQU8sSUFBSSxJQUFJLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLElBQUksS0FBSyxRQUFRLENBQUMsRUFBQyxDQUFDO0lBQUEsTUFBTSxJQUFJLEdBQUcsRUFBQyxZQUFZLEVBQUMsVUFBVSxFQUFDLFFBQVEsRUFBQyxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sRUFBQyxFQUFDLElBQUksRUFBRSxRQUFRLENBQUMsSUFBSSxFQUFDLEVBQUMsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sRUFBQyxRQUFRLENBQUMsSUFBSSxFQUFDLFlBQVksRUFBQyxRQUFRLEVBQUMsSUFBSSxFQUFDLENBQUM7SUFBQSxJQUFHLE9BQU8sS0FBSyxJQUFJLEVBQUMsQ0FBQztRQUFBLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQUEsQ0FBQztTQUFLLENBQUM7UUFBQSxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQUEsQ0FBQztJQUFBLE1BQU0sRUFBRSxDQUFDO0FBQUEsQ0FBQyxDQUFBLFVBQVUsQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLENBQUEsT0FBTyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUEsQ0FBQztBQUFBLFNBQVMsVUFBVSxDQUFDLElBQUksRUFBRSxFQUFDLFlBQVksR0FBQyxFQUFFLEVBQUUsVUFBVSxFQUFFLGtCQUFrQixFQUFFLFFBQVEsR0FBQyxJQUFJLEVBQUMsR0FBQyxFQUFFLElBQUUsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFD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LE1BQU0sQ0FBQyxJQUFJLEVBQUMsWUFBWSxFQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFDLElBQUksRUFBQyxLQUFLLEVBQUMsQ0FBQztZQUFBLElBQUcsT0FBTyxLQUFLLElBQUksRUFBQyxDQUFDO2dCQUFBLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQUEsQ0FBQztpQkFBSyxDQUFDO2dCQUFBLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFBQSxDQUFDO1lBQUEsTUFBTSxFQUFFLENBQUM7UUFBQSxDQUFDO0lBQUEsQ0FBQztJQUFBLElBQUcsSUFBSSxDQUFDLFNBQVMsS0FBSyxTQUFTLEVBQUMsQ0FBQztRQUFBLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFBQSxJQUFHLENBQUMsQ0FBQyxPQUFPLEtBQUssSUFBSSxRQUFRLENBQUMsRUFBQyxDQUFDO1lBQUEsTUFBTSxJQUFJLEdBQUcsRUFBQyxZQUFZLEVBQUMsWUFBWSxHQUFDLFlBQVksRUFBQyxVQUFVLEVBQUMsNkJBQTZCLEVBQUMsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLEVBQUMsRUFBQyxJQUFJLEVBQUUsUUFBUSxFQUFDLEVBQUMsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sRUFBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUMsWUFBWSxFQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsU0FBUyxFQUFDLElBQUksRUFBQyxLQUFLLEVBQUMsQ0FBQztZQUFBLElBQUcsT0FBTyxLQUFLLElBQUksRUFBQyxDQUFDO2dCQUFBLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQUEsQ0FBQztpQkFBSyxDQUFDO2dCQUFBLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFBQSxDQUFDO1lBQUEsTUFBTSxFQUFFLENBQUM7UUFBQSxDQUFDO0lBQUEsQ0FBQztJQUFBLElBQUcsSUFBSSxDQUFDLE9BQU8sS0FBSyxTQUFTLEVBQUMsQ0FBQztRQUFBLElBQUcsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUMsWUFBWSxFQUFDLFlBQVksR0FBQyxVQUFVLEVBQUMsVUFBVSxFQUFDLElBQUksRUFBQyxrQkFBa0IsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLENBQUMsQ0FBQyxFQUFDLENBQUM7WUFBQSxPQUFPLEdBQUcsT0FBTyxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7WUFBQSxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQztRQUFBLENBQUM7SUFBQSxDQUFDO0lBQUEsSUFBRyxJQUFJLENBQUMsU0FBUyxLQUFLLFNBQVMsRUFBQyxDQUFDO1FBQUEsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUFBLElBQUcsQ0FBQyxDQUFDLE9BQU8sS0FBSyxJQUFJLFFBQVEsQ0FBQyxFQUFDLENBQUM7WUFBQSxNQUFNLElBQUksR0FBRyxFQUFDLFlBQVksRUFBQyxZQUFZLEdBQUMsWUFBWSxFQUFDLFVBQVUsRUFBQyw2QkFBNkIsRUFBQyxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sRUFBQyxFQUFDLElBQUksRUFBRSxRQUFRLEVBQUMsRUFBQyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxFQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLElBQUksRUFBQyxZQUFZLEVBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxTQUFTLEVBQUMsSUFBSSxFQUFDLEtBQUssRUFBQyxDQUFDO1lBQUEsSUFBRyxPQUFPLEtBQUssSUFBSSxFQUFDLENBQUM7Z0JBQUEsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7WUFBQSxDQUFDO2lCQUFLLENBQUM7Z0JBQUEsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUFBLENBQUM7WUFBQSxNQUFNLEVBQUUsQ0FBQztRQUFBLENBQUM7SUFBQSxDQUFDO0lBQUEsSUFBRyxJQUFJLENBQUMsT0FBTyxLQUFLLFNBQVMsRUFBQyxDQUFDO1FBQUEsSUFBRyxDQUFDLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBQyxZQUFZLEVBQUMsWUFBWSxHQUFDLFVBQVUsRUFBQyxVQUFVLEVBQUMsSUFBSSxFQUFDLGtCQUFrQixFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsQ0FBQyxDQUFDLEVBQUMsQ0FBQztZQUFBLE9BQU8sR0FBRyxPQUFPLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUFBLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDO1FBQUEsQ0FBQztJQUFBLENBQUM7SUFBQSxJQUFHLElBQUksQ0FBQyxHQUFHLEtBQUssU0FBUyxFQUFDLENBQUM7UUFBQSxJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDO1FBQUEsSUFBRyxDQUFDLENBQUMsTUFBTSxJQUFJLE9BQU8sTUFBTSxJQUFJLFFBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBQyxDQUFDO1lBQUEsTUFBTSxJQUFJLEdBQUcsRUFBQyxZQUFZLEVBQUMsWUFBWSxHQUFDLE1BQU0sRUFBQyxVQUFVLEVBQUMsdUJBQXVCLEVBQUMsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLEVBQUMsRUFBQyxJQUFJLEVBQUUsUUFBUSxFQUFDLEVBQUMsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sRUFBQyxRQUFRLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUMsWUFBWSxFQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFDLElBQUksRUFBQyxNQUFNLEVBQUMsQ0FBQztZQUFBLElBQUcsT0FBTyxLQUFLLElBQUksRUFBQyxDQUFDO2dCQUFBLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQUEsQ0FBQztpQkFBSyxDQUFDO2dCQUFBLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFBQSxDQUFDO1lBQUEsTUFBTSxFQUFFLENBQUM7UUFBQSxDQUFDO0lBQUEsQ0FBQztJQUFBLElBQUcsSUFBSSxDQUFDLE9BQU8sS0FBSyxTQUFTLEVBQUMsQ0FBQztRQUFBLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFBQSxJQUFHLE9BQU8sTUFBTSxLQUFLLFFBQVEsRUFBQyxDQUFDO1lBQUEsTUFBTSxJQUFJLEdBQUcsRUFBQyxZQUFZLEVBQUMsWUFBWSxHQUFDLFVBQVUsRUFBQyxVQUFVLEVBQUMsMkJBQTJCLEVBQUMsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLEVBQUMsRUFBQyxJQUFJLEVBQUUsUUFBUSxFQUFDLEVBQUMsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sRUFBQyxRQUFRLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUMsWUFBWSxFQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLEVBQUMsQ0FBQztZQUFBLElBQUcsT0FBTyxLQUFLLElBQUksRUFBQyxDQUFDO2dCQUFBLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQUEsQ0FBQztpQkFBSyxDQUFDO2dCQUFBLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFBQSxDQUFDO1lBQUEsTUFBTSxFQUFFLENBQUM7UUFBQSxDQUFDO0lBQUEsQ0FBQztJQUFBLElBQUcsSUFBSSxDQUFDLElBQUksS0FBSyxTQUFTLEVBQUMsQ0FBQztRQUFBLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFBQSxJQUFHLE9BQU8sTUFBTSxLQUFLLFFBQVEsRUFBQyxDQUFDO1lBQUEsTUFBTSxJQUFJLEdBQUcsRUFBQyxZQUFZLEVBQUMsWUFBWSxHQUFDLE9BQU8sRUFBQyxVQUFVLEVBQUMsd0JBQXdCLEVBQUMsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLEVBQUMsRUFBQyxJQUFJLEVBQUUsUUFBUSxFQUFDLEVBQUMsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sRUFBQyxRQUFRLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUMsWUFBWSxFQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFDLElBQUksRUFBQyxNQUFNLEVBQUMsQ0FBQztZQUFBLElBQUcsT0FBTyxLQUFLLElBQUksRUFBQyxDQUFDO2dCQUFBLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQUEsQ0FBQztpQkFBSyxDQUFDO2dCQUFBLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFBQSxDQUFDO1lBQUEsTUFBTSxFQUFFLENBQUM7UUFBQSxDQUFDO0lBQUEsQ0FBQztBQUFBLENBQUM7S0FBSyxDQUFDO0lBQUEsTUFBTSxJQUFJLEdBQUcsRUFBQyxZQUFZLEVBQUMsVUFBVSxFQUFDLFFBQVEsRUFBQyxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sRUFBQyxFQUFDLElBQUksRUFBRSxRQUFRLEVBQUMsRUFBQyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxFQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUMsWUFBWSxFQUFDLFFBQVEsRUFBQyxJQUFJLEVBQUMsQ0FBQztJQUFBLElBQUcsT0FBTyxLQUFLLElBQUksRUFBQyxDQUFDO1FBQUEsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7SUFBQSxDQUFDO1NBQUssQ0FBQztRQUFBLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFBQSxDQUFDO0lBQUEsTUFBTSxFQUFFLENBQUM7QUFBQSxDQUFDLENBQUEsVUFBVSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsQ0FBQSxPQUFPLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQSxDQUFDO0FBQUEsU0FBUyxVQUFVLENBQUMsSUFBSSxFQUFFLEVBQUMsWUFBWSxHQUFDLEVBQUUsRUFBRSxVQUFVLEVBQUUsa0JBQWtCLEVBQUUsUUFBUSxHQUFDLElBQUksRUFBQyxHQUFDLEVBQUUsSUFBRSxJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUMsQ0FBQSxJQUFJLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQSxJQUFHLENBQUMsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLEVBQUMsWUFBWSxFQUFDLFVBQVUsRUFBQyxrQkFBa0IsRUFBQyxRQUFRLEVBQUMsQ0FBQyxDQUFDLEVBQUMsQ0FBQztJQUFBLE9BQU8sR0FBRyxPQUFPLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUFBLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDO0FBQUEsQ0FBQyxDQUFBLFVBQVUsQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLENBQUEsT0FBTyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUEsQ0FBQyJ9