diff --git a/conf/site/node_modules/sass-loader/CHANGELOG.md b/conf/site/node_modules/sass-loader/CHANGELOG.md index 3e54f9f3..881dec10 100644 --- a/conf/site/node_modules/sass-loader/CHANGELOG.md +++ b/conf/site/node_modules/sass-loader/CHANGELOG.md @@ -2,6 +2,13 @@ All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. +### [10.0.2](https://github.com/webpack-contrib/sass-loader/compare/v10.0.1...v10.0.2) (2020-09-03) + + +### Bug Fixes + +* source maps generation ([#886](https://github.com/webpack-contrib/sass-loader/issues/886)) ([8327d55](https://github.com/webpack-contrib/sass-loader/commit/8327d55df9e8fc6e24d2759d7bd50174ed1ff1e4)) + ### [10.0.1](https://github.com/webpack-contrib/sass-loader/compare/v10.0.0...v10.0.1) (2020-08-25) ### Chore diff --git a/conf/site/node_modules/sass-loader/dist/index.js b/conf/site/node_modules/sass-loader/dist/index.js index b6330f5e..21fbec71 100644 --- a/conf/site/node_modules/sass-loader/dist/index.js +++ b/conf/site/node_modules/sass-loader/dist/index.js @@ -55,29 +55,18 @@ function loader(content) { callback(new _SassError.default(error)); return; - } // Modify source paths only for webpack, otherwise we do nothing + } + let map = result.map ? JSON.parse(result.map) : null; // Modify source paths only for webpack, otherwise we do nothing - if (result.map && useSourceMap) { - // eslint-disable-next-line no-param-reassign - result.map = JSON.parse(result.map); // result.map.file is an optional property that provides the output filename. - // Since we don't know the final filename in the webpack build chain yet, it makes no sense to have it. - // eslint-disable-next-line no-param-reassign - - delete result.map.file; // eslint-disable-next-line no-param-reassign - - result.sourceRoot = ''; // node-sass returns POSIX paths, that's why we need to transform them back to native paths. - // This fixes an error on windows where the source-map module cannot resolve the source maps. - // @see https://github.com/webpack-contrib/sass-loader/issues/366#issuecomment-279460722 - // eslint-disable-next-line no-param-reassign - - result.map.sources = result.map.sources.map(source => (0, _utils.absolutifySourceMapSource)(this.rootContext, source)); + if (map && useSourceMap) { + map = (0, _utils.normalizeSourceMap)(map, this.rootContext); } result.stats.includedFiles.forEach(includedFile => { this.addDependency(_path.default.normalize(includedFile)); }); - callback(null, result.css.toString(), result.map); + callback(null, result.css.toString(), map); }); } diff --git a/conf/site/node_modules/sass-loader/dist/utils.js b/conf/site/node_modules/sass-loader/dist/utils.js index f99eb2da..8f52bf13 100644 --- a/conf/site/node_modules/sass-loader/dist/utils.js +++ b/conf/site/node_modules/sass-loader/dist/utils.js @@ -8,7 +8,7 @@ exports.getSassOptions = getSassOptions; exports.getWebpackResolver = getWebpackResolver; exports.getWebpackImporter = getWebpackImporter; exports.getRenderFunctionFromSassImplementation = getRenderFunctionFromSassImplementation; -exports.absolutifySourceMapSource = absolutifySourceMapSource; +exports.normalizeSourceMap = normalizeSourceMap; var _url = _interopRequireDefault(require("url")); @@ -157,8 +157,7 @@ function getSassOptions(loaderContext, loaderOptions, content, implementation, u // all paths in sourceMap.sources will be relative to that path. // Pretty complicated... :( options.sourceMap = true; - options.outFile = _path.default.join(loaderContext.rootContext, 'style.css.map'); // options.sourceMapRoot = process.cwd(); - + options.outFile = _path.default.join(loaderContext.rootContext, 'style.css.map'); options.sourceMapContents = true; options.omitSourceMapUrl = true; options.sourceMapEmbed = false; @@ -447,12 +446,26 @@ function getURLType(source) { return ABSOLUTE_SCHEME.test(source) ? 'absolute' : 'path-relative'; } -function absolutifySourceMapSource(sourceRoot, source) { - const sourceType = getURLType(source); // Do no touch `scheme-relative`, `path-absolute` and `absolute` types +function normalizeSourceMap(map, rootContext) { + const newMap = map; // result.map.file is an optional property that provides the output filename. + // Since we don't know the final filename in the webpack build chain yet, it makes no sense to have it. + // eslint-disable-next-line no-param-reassign - if (sourceType === 'path-relative') { - return _path.default.resolve(sourceRoot, _path.default.normalize(source)); - } + delete newMap.file; // eslint-disable-next-line no-param-reassign - return source; + newMap.sourceRoot = ''; // node-sass returns POSIX paths, that's why we need to transform them back to native paths. + // This fixes an error on windows where the source-map module cannot resolve the source maps. + // @see https://github.com/webpack-contrib/sass-loader/issues/366#issuecomment-279460722 + // eslint-disable-next-line no-param-reassign + + newMap.sources = newMap.sources.map(source => { + const sourceType = getURLType(source); // Do no touch `scheme-relative`, `path-absolute` and `absolute` types + + if (sourceType === 'path-relative') { + return _path.default.resolve(rootContext, _path.default.normalize(source)); + } + + return source; + }); + return newMap; } \ No newline at end of file diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/LICENSE b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/LICENSE new file mode 100644 index 00000000..90139aa7 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2016 Evgeny Poberezkin + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/README.md b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/README.md new file mode 100644 index 00000000..1964a220 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/README.md @@ -0,0 +1,836 @@ +# ajv-keywords + +Custom JSON-Schema keywords for [Ajv](https://github.com/epoberezkin/ajv) validator + +[![Build Status](https://travis-ci.org/ajv-validator/ajv-keywords.svg?branch=master)](https://travis-ci.org/ajv-validator/ajv-keywords) +[![npm](https://img.shields.io/npm/v/ajv-keywords.svg)](https://www.npmjs.com/package/ajv-keywords) +[![npm downloads](https://img.shields.io/npm/dm/ajv-keywords.svg)](https://www.npmjs.com/package/ajv-keywords) +[![Coverage Status](https://coveralls.io/repos/github/ajv-validator/ajv-keywords/badge.svg?branch=master)](https://coveralls.io/github/ajv-validator/ajv-keywords?branch=master) +[![Dependabot](https://api.dependabot.com/badges/status?host=github&repo=ajv-validator/ajv-keywords)](https://app.dependabot.com/accounts/ajv-validator/repos/60477053) +[![Gitter](https://img.shields.io/gitter/room/ajv-validator/ajv.svg)](https://gitter.im/ajv-validator/ajv) + + +## Contents + +- [Install](#install) +- [Usage](#usage) +- [Keywords](#keywords) + - [Types](#types) + - [typeof](#typeof) + - [instanceof](#instanceof) + - [Keywords for numbers](#keywords-for-numbers) + - [range and exclusiveRange](#range-and-exclusiverange) + - [Keywords for strings](#keywords-for-strings) + - [regexp](#regexp) + - [formatMaximum / formatMinimum and formatExclusiveMaximum / formatExclusiveMinimum](#formatmaximum--formatminimum-and-formatexclusivemaximum--formatexclusiveminimum) + - [transform](#transform)\* + - [Keywords for arrays](#keywords-for-arrays) + - [uniqueItemProperties](#uniqueitemproperties) + - [Keywords for objects](#keywords-for-objects) + - [allRequired](#allrequired) + - [anyRequired](#anyrequired) + - [oneRequired](#onerequired) + - [patternRequired](#patternrequired) + - [prohibited](#prohibited) + - [deepProperties](#deepproperties) + - [deepRequired](#deeprequired) + - [Compound keywords](#compound-keywords) + - [switch](#switch) (deprecated) + - [select/selectCases/selectDefault](#selectselectcasesselectdefault) (BETA) + - [Keywords for all types](#keywords-for-all-types) + - [dynamicDefaults](#dynamicdefaults)\* +- [Security contact](#security-contact) +- [Open-source software support](#open-source-software-support) +- [License](#license) + +\* - keywords that modify data + + +## Install + +``` +npm install ajv-keywords +``` + + +## Usage + +To add all available keywords: + +```javascript +var Ajv = require('ajv'); +var ajv = new Ajv; +require('ajv-keywords')(ajv); + +ajv.validate({ instanceof: 'RegExp' }, /.*/); // true +ajv.validate({ instanceof: 'RegExp' }, '.*'); // false +``` + +To add a single keyword: + +```javascript +require('ajv-keywords')(ajv, 'instanceof'); +``` + +To add multiple keywords: + +```javascript +require('ajv-keywords')(ajv, ['typeof', 'instanceof']); +``` + +To add a single keyword in browser (to avoid adding unused code): + +```javascript +require('ajv-keywords/keywords/instanceof')(ajv); +``` + + +## Keywords + +### Types + +#### `typeof` + +Based on JavaScript `typeof` operation. + +The value of the keyword should be a string (`"undefined"`, `"string"`, `"number"`, `"object"`, `"function"`, `"boolean"` or `"symbol"`) or array of strings. + +To pass validation the result of `typeof` operation on the value should be equal to the string (or one of the strings in the array). + +``` +ajv.validate({ typeof: 'undefined' }, undefined); // true +ajv.validate({ typeof: 'undefined' }, null); // false +ajv.validate({ typeof: ['undefined', 'object'] }, null); // true +``` + + +#### `instanceof` + +Based on JavaScript `instanceof` operation. + +The value of the keyword should be a string (`"Object"`, `"Array"`, `"Function"`, `"Number"`, `"String"`, `"Date"`, `"RegExp"`, `"Promise"` or `"Buffer"`) or array of strings. + +To pass validation the result of `data instanceof ...` operation on the value should be true: + +``` +ajv.validate({ instanceof: 'Array' }, []); // true +ajv.validate({ instanceof: 'Array' }, {}); // false +ajv.validate({ instanceof: ['Array', 'Function'] }, function(){}); // true +``` + +You can add your own constructor function to be recognised by this keyword: + +```javascript +function MyClass() {} +var instanceofDefinition = require('ajv-keywords').get('instanceof').definition; +// or require('ajv-keywords/keywords/instanceof').definition; +instanceofDefinition.CONSTRUCTORS.MyClass = MyClass; + +ajv.validate({ instanceof: 'MyClass' }, new MyClass); // true +``` + + +### Keywords for numbers + +#### `range` and `exclusiveRange` + +Syntax sugar for the combination of minimum and maximum keywords, also fails schema compilation if there are no numbers in the range. + +The value of this keyword must be the array consisting of two numbers, the second must be greater or equal than the first one. + +If the validated value is not a number the validation passes, otherwise to pass validation the value should be greater (or equal) than the first number and smaller (or equal) than the second number in the array. If `exclusiveRange` keyword is present in the same schema and its value is true, the validated value must not be equal to the range boundaries. + +```javascript +var schema = { range: [1, 3] }; +ajv.validate(schema, 1); // true +ajv.validate(schema, 2); // true +ajv.validate(schema, 3); // true +ajv.validate(schema, 0.99); // false +ajv.validate(schema, 3.01); // false + +var schema = { range: [1, 3], exclusiveRange: true }; +ajv.validate(schema, 1.01); // true +ajv.validate(schema, 2); // true +ajv.validate(schema, 2.99); // true +ajv.validate(schema, 1); // false +ajv.validate(schema, 3); // false +``` + + +### Keywords for strings + +#### `regexp` + +This keyword allows to use regular expressions with flags in schemas (the standard `pattern` keyword does not support flags). + +This keyword applies only to strings. If the data is not a string, the validation succeeds. + +The value of this keyword can be either a string (the result of `regexp.toString()`) or an object with the properties `pattern` and `flags` (the same strings that should be passed to RegExp constructor). + +```javascript +var schema = { + type: 'object', + properties: { + foo: { regexp: '/foo/i' }, + bar: { regexp: { pattern: 'bar', flags: 'i' } } + } +}; + +var validData = { + foo: 'Food', + bar: 'Barmen' +}; + +var invalidData = { + foo: 'fog', + bar: 'bad' +}; +``` + + +#### `formatMaximum` / `formatMinimum` and `formatExclusiveMaximum` / `formatExclusiveMinimum` + +These keywords allow to define minimum/maximum constraints when the format keyword defines ordering. + +These keywords apply only to strings. If the data is not a string, the validation succeeds. + +The value of keyword `formatMaximum` (`formatMinimum`) should be a string. This value is the maximum (minimum) allowed value for the data to be valid as determined by `format` keyword. If `format` is not present schema compilation will throw exception. + +When this keyword is added, it defines comparison rules for formats `"date"`, `"time"` and `"date-time"`. Custom formats also can have comparison rules. See [addFormat](https://github.com/epoberezkin/ajv#api-addformat) method. + +The value of keyword `formatExclusiveMaximum` (`formatExclusiveMinimum`) should be a boolean value. These keyword cannot be used without `formatMaximum` (`formatMinimum`). If this keyword value is equal to `true`, the data to be valid should not be equal to the value in `formatMaximum` (`formatMinimum`) keyword. + +```javascript +require('ajv-keywords')(ajv, ['formatMinimum', 'formatMaximum']); + +var schema = { + format: 'date', + formatMinimum: '2016-02-06', + formatMaximum: '2016-12-27', + formatExclusiveMaximum: true +} + +var validDataList = ['2016-02-06', '2016-12-26', 1]; + +var invalidDataList = ['2016-02-05', '2016-12-27', 'abc']; +``` + + +#### `transform` + +This keyword allows a string to be modified before validation. + +These keywords apply only to strings. If the data is not a string, the transform is skipped. + +There are limitation due to how ajv is written: +- a stand alone string cannot be transformed. ie `data = 'a'; ajv.validate(schema, data);` +- currently cannot work with `ajv-pack` + +**Supported options:** +- `trim`: remove whitespace from start and end +- `trimLeft`: remove whitespace from start +- `trimRight`: remove whitespace from end +- `toLowerCase`: case string to all lower case +- `toUpperCase`: case string to all upper case +- `toEnumCase`: case string to match case in schema + +Options are applied in the order they are listed. + +Note: `toEnumCase` requires that all allowed values are unique when case insensitive. + +**Example: multiple options** +```javascript +require('ajv-keywords')(ajv, ['transform']); + +var schema = { + type: 'array', + items: { + type:'string', + transform:['trim','toLowerCase'] + } +}; + +var data = [' MixCase ']; +ajv.validate(schema, data); +console.log(data); // ['mixcase'] + +``` + +**Example: `enumcase`** +```javascript +require('ajv-keywords')(ajv, ['transform']); + +var schema = { + type: 'array', + items: { + type:'string', + transform:['trim','toEnumCase'], + enum:['pH'] + } +}; + +var data = ['ph',' Ph','PH','pH ']; +ajv.validate(schema, data); +console.log(data); // ['pH','pH','pH','pH'] +``` + + +### Keywords for arrays + +#### `uniqueItemProperties` + +The keyword allows to check that some properties in array items are unique. + +This keyword applies only to arrays. If the data is not an array, the validation succeeds. + +The value of this keyword must be an array of strings - property names that should have unique values across all items. + +```javascript +var schema = { uniqueItemProperties: [ "id", "name" ] }; + +var validData = [ + { id: 1 }, + { id: 2 }, + { id: 3 } +]; + +var invalidData1 = [ + { id: 1 }, + { id: 1 }, // duplicate "id" + { id: 3 } +]; + +var invalidData2 = [ + { id: 1, name: "taco" }, + { id: 2, name: "taco" }, // duplicate "name" + { id: 3, name: "salsa" } +]; +``` + +This keyword is contributed by [@blainesch](https://github.com/blainesch). + + +### Keywords for objects + +#### `allRequired` + +This keyword allows to require the presence of all properties used in `properties` keyword in the same schema object. + +This keyword applies only to objects. If the data is not an object, the validation succeeds. + +The value of this keyword must be boolean. + +If the value of the keyword is `false`, the validation succeeds. + +If the value of the keyword is `true`, the validation succeeds if the data contains all properties defined in `properties` keyword (in the same schema object). + +If the `properties` keyword is not present in the same schema object, schema compilation will throw exception. + +```javascript +var schema = { + properties: { + foo: {type: 'number'}, + bar: {type: 'number'} + } + allRequired: true +}; + +var validData = { foo: 1, bar: 2 }; +var alsoValidData = { foo: 1, bar: 2, baz: 3 }; + +var invalidDataList = [ {}, { foo: 1 }, { bar: 2 } ]; +``` + + +#### `anyRequired` + +This keyword allows to require the presence of any (at least one) property from the list. + +This keyword applies only to objects. If the data is not an object, the validation succeeds. + +The value of this keyword must be an array of strings, each string being a property name. For data object to be valid at least one of the properties in this array should be present in the object. + +```javascript +var schema = { + anyRequired: ['foo', 'bar'] +}; + +var validData = { foo: 1 }; +var alsoValidData = { foo: 1, bar: 2 }; + +var invalidDataList = [ {}, { baz: 3 } ]; +``` + + +#### `oneRequired` + +This keyword allows to require the presence of only one property from the list. + +This keyword applies only to objects. If the data is not an object, the validation succeeds. + +The value of this keyword must be an array of strings, each string being a property name. For data object to be valid exactly one of the properties in this array should be present in the object. + +```javascript +var schema = { + oneRequired: ['foo', 'bar'] +}; + +var validData = { foo: 1 }; +var alsoValidData = { bar: 2, baz: 3 }; + +var invalidDataList = [ {}, { baz: 3 }, { foo: 1, bar: 2 } ]; +``` + + +#### `patternRequired` + +This keyword allows to require the presence of properties that match some pattern(s). + +This keyword applies only to objects. If the data is not an object, the validation succeeds. + +The value of this keyword should be an array of strings, each string being a regular expression. For data object to be valid each regular expression in this array should match at least one property name in the data object. + +If the array contains multiple regular expressions, more than one expression can match the same property name. + +```javascript +var schema = { patternRequired: [ 'f.*o', 'b.*r' ] }; + +var validData = { foo: 1, bar: 2 }; +var alsoValidData = { foobar: 3 }; + +var invalidDataList = [ {}, { foo: 1 }, { bar: 2 } ]; +``` + + +#### `prohibited` + +This keyword allows to prohibit that any of the properties in the list is present in the object. + +This keyword applies only to objects. If the data is not an object, the validation succeeds. + +The value of this keyword should be an array of strings, each string being a property name. For data object to be valid none of the properties in this array should be present in the object. + +``` +var schema = { prohibited: ['foo', 'bar']}; + +var validData = { baz: 1 }; +var alsoValidData = {}; + +var invalidDataList = [ + { foo: 1 }, + { bar: 2 }, + { foo: 1, bar: 2} +]; +``` + +__Please note__: `{prohibited: ['foo', 'bar']}` is equivalent to `{not: {anyRequired: ['foo', 'bar']}}` (i.e. it has the same validation result for any data). + + +#### `deepProperties` + +This keyword allows to validate deep properties (identified by JSON pointers). + +This keyword applies only to objects. If the data is not an object, the validation succeeds. + +The value should be an object, where keys are JSON pointers to the data, starting from the current position in data, and the values are JSON schemas. For data object to be valid the value of each JSON pointer should be valid according to the corresponding schema. + +```javascript +var schema = { + type: 'object', + deepProperties: { + "/users/1/role": { "enum": ["admin"] } + } +}; + +var validData = { + users: [ + {}, + { + id: 123, + role: 'admin' + } + ] +}; + +var alsoValidData = { + users: { + "1": { + id: 123, + role: 'admin' + } + } +}; + +var invalidData = { + users: [ + {}, + { + id: 123, + role: 'user' + } + ] +}; + +var alsoInvalidData = { + users: { + "1": { + id: 123, + role: 'user' + } + } +}; +``` + + +#### `deepRequired` + +This keyword allows to check that some deep properties (identified by JSON pointers) are available. + +This keyword applies only to objects. If the data is not an object, the validation succeeds. + +The value should be an array of JSON pointers to the data, starting from the current position in data. For data object to be valid each JSON pointer should be some existing part of the data. + +```javascript +var schema = { + type: 'object', + deepRequired: ["/users/1/role"] +}; + +var validData = { + users: [ + {}, + { + id: 123, + role: 'admin' + } + ] +}; + +var invalidData = { + users: [ + {}, + { + id: 123 + } + ] +}; +``` + +See [json-schema-org/json-schema-spec#203](https://github.com/json-schema-org/json-schema-spec/issues/203#issue-197211916) for an example of the equivalent schema without `deepRequired` keyword. + + +### Compound keywords + +#### `switch` (deprecated) + +__Please note__: this keyword is provided to preserve backward compatibility with previous versions of Ajv. It is strongly recommended to use `if`/`then`/`else` keywords instead, as they have been added to the draft-07 of JSON Schema specification. + +This keyword allows to perform advanced conditional validation. + +The value of the keyword is the array of if/then clauses. Each clause is the object with the following properties: + +- `if` (optional) - the value is JSON-schema +- `then` (required) - the value is JSON-schema or boolean +- `continue` (optional) - the value is boolean + +The validation process is dynamic; all clauses are executed sequentially in the following way: + +1. `if`: + 1. `if` property is JSON-schema according to which the data is: + 1. valid => go to step 2. + 2. invalid => go to the NEXT clause, if this was the last clause the validation of `switch` SUCCEEDS. + 2. `if` property is absent => go to step 2. +2. `then`: + 1. `then` property is `true` or it is JSON-schema according to which the data is valid => go to step 3. + 2. `then` property is `false` or it is JSON-schema according to which the data is invalid => the validation of `switch` FAILS. +3. `continue`: + 1. `continue` property is `true` => go to the NEXT clause, if this was the last clause the validation of `switch` SUCCEEDS. + 2. `continue` property is `false` or absent => validation of `switch` SUCCEEDS. + +```javascript +require('ajv-keywords')(ajv, 'switch'); + +var schema = { + type: 'array', + items: { + type: 'integer', + 'switch': [ + { if: { not: { minimum: 1 } }, then: false }, + { if: { maximum: 10 }, then: true }, + { if: { maximum: 100 }, then: { multipleOf: 10 } }, + { if: { maximum: 1000 }, then: { multipleOf: 100 } }, + { then: false } + ] + } +}; + +var validItems = [1, 5, 10, 20, 50, 100, 200, 500, 1000]; + +var invalidItems = [1, 0, 2000, 11, 57, 123, 'foo']; +``` + +The above schema is equivalent to (for example): + +```javascript +{ + type: 'array', + items: { + type: 'integer', + if: { minimum: 1, maximum: 10 }, + then: true, + else: { + if: { maximum: 100 }, + then: { multipleOf: 10 }, + else: { + if: { maximum: 1000 }, + then: { multipleOf: 100 }, + else: false + } + } + } +} +``` + + +#### `select`/`selectCases`/`selectDefault` + +These keywords allow to choose the schema to validate the data based on the value of some property in the validated data. + +These keywords must be present in the same schema object (`selectDefault` is optional). + +The value of `select` keyword should be a [$data reference](https://github.com/epoberezkin/ajv/tree/5.0.2-beta.0#data-reference) that points to any primitive JSON type (string, number, boolean or null) in the data that is validated. You can also use a constant of primitive type as the value of this keyword (e.g., for debugging purposes). + +The value of `selectCases` keyword must be an object where each property name is a possible string representation of the value of `select` keyword and each property value is a corresponding schema (from draft-06 it can be boolean) that must be used to validate the data. + +The value of `selectDefault` keyword is a schema (from draft-06 it can be boolean) that must be used to validate the data in case `selectCases` has no key equal to the stringified value of `select` keyword. + +The validation succeeds in one of the following cases: +- the validation of data using selected schema succeeds, +- none of the schemas is selected for validation, +- the value of select is undefined (no property in the data that the data reference points to). + +If `select` value (in data) is not a primitive type the validation fails. + +__Please note__: these keywords require Ajv `$data` option to support [$data reference](https://github.com/epoberezkin/ajv/tree/5.0.2-beta.0#data-reference). + + +```javascript +require('ajv-keywords')(ajv, 'select'); + +var schema = { + type: object, + required: ['kind'], + properties: { + kind: { type: 'string' } + }, + select: { $data: '0/kind' }, + selectCases: { + foo: { + required: ['foo'], + properties: { + kind: {}, + foo: { type: 'string' } + }, + additionalProperties: false + }, + bar: { + required: ['bar'], + properties: { + kind: {}, + bar: { type: 'number' } + }, + additionalProperties: false + } + }, + selectDefault: { + propertyNames: { + not: { enum: ['foo', 'bar'] } + } + } +}; + +var validDataList = [ + { kind: 'foo', foo: 'any' }, + { kind: 'bar', bar: 1 }, + { kind: 'anything_else', not_bar_or_foo: 'any value' } +]; + +var invalidDataList = [ + { kind: 'foo' }, // no propery foo + { kind: 'bar' }, // no propery bar + { kind: 'foo', foo: 'any', another: 'any value' }, // additional property + { kind: 'bar', bar: 1, another: 'any value' }, // additional property + { kind: 'anything_else', foo: 'any' } // property foo not allowed + { kind: 'anything_else', bar: 1 } // property bar not allowed +]; +``` + +__Please note__: the current implementation is BETA. It does not allow using relative URIs in $ref keywords in schemas in `selectCases` and `selectDefault` that point outside of these schemas. The workaround is to use absolute URIs (that can point to any (sub-)schema added to Ajv, including those inside the current root schema where `select` is used). See [tests](https://github.com/epoberezkin/ajv-keywords/blob/v2.0.0/spec/tests/select.json#L314). + + +### Keywords for all types + +#### `dynamicDefaults` + +This keyword allows to assign dynamic defaults to properties, such as timestamps, unique IDs etc. + +This keyword only works if `useDefaults` options is used and not inside `anyOf` keywords etc., in the same way as [default keyword treated by Ajv](https://github.com/epoberezkin/ajv#assigning-defaults). + +The keyword should be added on the object level. Its value should be an object with each property corresponding to a property name, in the same way as in standard `properties` keyword. The value of each property can be: + +- an identifier of default function (a string) +- an object with properties `func` (an identifier) and `args` (an object with parameters that will be passed to this function during schema compilation - see examples). + +The properties used in `dynamicDefaults` should not be added to `required` keyword (or validation will fail), because unlike `default` this keyword is processed after validation. + +There are several predefined dynamic default functions: + +- `"timestamp"` - current timestamp in milliseconds +- `"datetime"` - current date and time as string (ISO, valid according to `date-time` format) +- `"date"` - current date as string (ISO, valid according to `date` format) +- `"time"` - current time as string (ISO, valid according to `time` format) +- `"random"` - pseudo-random number in [0, 1) interval +- `"randomint"` - pseudo-random integer number. If string is used as a property value, the function will randomly return 0 or 1. If object `{ func: 'randomint', args: { max: N } }` is used then the default will be an integer number in [0, N) interval. +- `"seq"` - sequential integer number starting from 0. If string is used as a property value, the default sequence will be used. If object `{ func: 'seq', args: { name: 'foo'} }` is used then the sequence with name `"foo"` will be used. Sequences are global, even if different ajv instances are used. + +```javascript +var schema = { + type: 'object', + dynamicDefaults: { + ts: 'datetime', + r: { func: 'randomint', args: { max: 100 } }, + id: { func: 'seq', args: { name: 'id' } } + }, + properties: { + ts: { + type: 'string', + format: 'date-time' + }, + r: { + type: 'integer', + minimum: 0, + exclusiveMaximum: 100 + }, + id: { + type: 'integer', + minimum: 0 + } + } +}; + +var data = {}; +ajv.validate(data); // true +data; // { ts: '2016-12-01T22:07:28.829Z', r: 25, id: 0 } + +var data1 = {}; +ajv.validate(data1); // true +data1; // { ts: '2016-12-01T22:07:29.832Z', r: 68, id: 1 } + +ajv.validate(data1); // true +data1; // didn't change, as all properties were defined +``` + +When using the `useDefaults` option value `"empty"`, properties and items equal to `null` or `""` (empty string) will be considered missing and assigned defaults. Use the `allOf` [compound keyword](https://github.com/epoberezkin/ajv/blob/master/KEYWORDS.md#compound-keywords) to execute `dynamicDefaults` before validation. + +```javascript +var schema = { + allOf: [ + { + dynamicDefaults: { + ts: 'datetime', + r: { func: 'randomint', args: { min: 5, max: 100 } }, + id: { func: 'seq', args: { name: 'id' } } + } + }, + { + type: 'object', + properties: { + ts: { + type: 'string' + }, + r: { + type: 'number', + minimum: 5, + exclusiveMaximum: 100 + }, + id: { + type: 'integer', + minimum: 0 + } + } + } + ] +}; + +var data = { ts: '', r: null }; +ajv.validate(data); // true +data; // { ts: '2016-12-01T22:07:28.829Z', r: 25, id: 0 } +``` + +You can add your own dynamic default function to be recognised by this keyword: + +```javascript +var uuid = require('uuid'); + +function uuidV4() { return uuid.v4(); } + +var definition = require('ajv-keywords').get('dynamicDefaults').definition; +// or require('ajv-keywords/keywords/dynamicDefaults').definition; +definition.DEFAULTS.uuid = uuidV4; + +var schema = { + dynamicDefaults: { id: 'uuid' }, + properties: { id: { type: 'string', format: 'uuid' } } +}; + +var data = {}; +ajv.validate(schema, data); // true +data; // { id: 'a1183fbe-697b-4030-9bcc-cfeb282a9150' }; + +var data1 = {}; +ajv.validate(schema, data1); // true +data1; // { id: '5b008de7-1669-467a-a5c6-70fa244d7209' } +``` + +You also can define dynamic default that accepts parameters, e.g. version of uuid: + +```javascript +var uuid = require('uuid'); + +function getUuid(args) { + var version = 'v' + (arvs && args.v || 4); + return function() { + return uuid[version](); + }; +} + +var definition = require('ajv-keywords').get('dynamicDefaults').definition; +definition.DEFAULTS.uuid = getUuid; + +var schema = { + dynamicDefaults: { + id1: 'uuid', // v4 + id2: { func: 'uuid', v: 4 }, // v4 + id3: { func: 'uuid', v: 1 } // v1 + } +}; +``` + + +## Security contact + +To report a security vulnerability, please use the +[Tidelift security contact](https://tidelift.com/security). +Tidelift will coordinate the fix and disclosure. + +Please do NOT report security vulnerabilities via GitHub issues. + + +## Open-source software support + +Ajv-keywords is a part of [Tidelift subscription](https://tidelift.com/subscription/pkg/npm-ajv-keywords?utm_source=npm-ajv-keywords&utm_medium=referral&utm_campaign=readme) - it provides a centralised support to open-source software users, in addition to the support provided by software maintainers. + + +## License + +[MIT](https://github.com/epoberezkin/ajv-keywords/blob/master/LICENSE) diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/ajv-keywords.d.ts b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/ajv-keywords.d.ts new file mode 100644 index 00000000..2d562ee4 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/ajv-keywords.d.ts @@ -0,0 +1,7 @@ +declare module 'ajv-keywords' { + import { Ajv } from 'ajv'; + + function keywords(ajv: Ajv, include?: string | string[]): Ajv; + + export = keywords; +} diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/index.js b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/index.js new file mode 100644 index 00000000..07a8edab --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/index.js @@ -0,0 +1,35 @@ +'use strict'; + +var KEYWORDS = require('./keywords'); + +module.exports = defineKeywords; + + +/** + * Defines one or several keywords in ajv instance + * @param {Ajv} ajv validator instance + * @param {String|Array|undefined} keyword keyword(s) to define + * @return {Ajv} ajv instance (for chaining) + */ +function defineKeywords(ajv, keyword) { + if (Array.isArray(keyword)) { + for (var i=0; i d2) return 1; + if (d1 < d2) return -1; + if (d1 === d2) return 0; +} + + +function compareTime(t1, t2) { + if (!(t1 && t2)) return; + t1 = t1.match(TIME); + t2 = t2.match(TIME); + if (!(t1 && t2)) return; + t1 = t1[1] + t1[2] + t1[3] + (t1[4]||''); + t2 = t2[1] + t2[2] + t2[3] + (t2[4]||''); + if (t1 > t2) return 1; + if (t1 < t2) return -1; + if (t1 === t2) return 0; +} + + +function compareDateTime(dt1, dt2) { + if (!(dt1 && dt2)) return; + dt1 = dt1.split(DATE_TIME_SEPARATOR); + dt2 = dt2.split(DATE_TIME_SEPARATOR); + var res = compareDate(dt1[0], dt2[0]); + if (res === undefined) return; + return res || compareTime(dt1[1], dt2[1]); +} diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/_util.js b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/_util.js new file mode 100644 index 00000000..dd52df72 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/_util.js @@ -0,0 +1,15 @@ +'use strict'; + +module.exports = { + metaSchemaRef: metaSchemaRef +}; + +var META_SCHEMA_ID = 'http://json-schema.org/draft-07/schema'; + +function metaSchemaRef(ajv) { + var defaultMeta = ajv._opts.defaultMeta; + if (typeof defaultMeta == 'string') return { $ref: defaultMeta }; + if (ajv.getSchema(META_SCHEMA_ID)) return { $ref: META_SCHEMA_ID }; + console.warn('meta schema not defined'); + return {}; +} diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/allRequired.js b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/allRequired.js new file mode 100644 index 00000000..afc73ebf --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/allRequired.js @@ -0,0 +1,18 @@ +'use strict'; + +module.exports = function defFunc(ajv) { + defFunc.definition = { + type: 'object', + macro: function (schema, parentSchema) { + if (!schema) return true; + var properties = Object.keys(parentSchema.properties); + if (properties.length == 0) return true; + return {required: properties}; + }, + metaSchema: {type: 'boolean'}, + dependencies: ['properties'] + }; + + ajv.addKeyword('allRequired', defFunc.definition); + return ajv; +}; diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/anyRequired.js b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/anyRequired.js new file mode 100644 index 00000000..acc55a92 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/anyRequired.js @@ -0,0 +1,24 @@ +'use strict'; + +module.exports = function defFunc(ajv) { + defFunc.definition = { + type: 'object', + macro: function (schema) { + if (schema.length == 0) return true; + if (schema.length == 1) return {required: schema}; + var schemas = schema.map(function (prop) { + return {required: [prop]}; + }); + return {anyOf: schemas}; + }, + metaSchema: { + type: 'array', + items: { + type: 'string' + } + } + }; + + ajv.addKeyword('anyRequired', defFunc.definition); + return ajv; +}; diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/deepProperties.js b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/deepProperties.js new file mode 100644 index 00000000..e5aff605 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/deepProperties.js @@ -0,0 +1,54 @@ +'use strict'; + +var util = require('./_util'); + +module.exports = function defFunc(ajv) { + defFunc.definition = { + type: 'object', + macro: function (schema) { + var schemas = []; + for (var pointer in schema) + schemas.push(getSchema(pointer, schema[pointer])); + return {'allOf': schemas}; + }, + metaSchema: { + type: 'object', + propertyNames: { + type: 'string', + format: 'json-pointer' + }, + additionalProperties: util.metaSchemaRef(ajv) + } + }; + + ajv.addKeyword('deepProperties', defFunc.definition); + return ajv; +}; + + +function getSchema(jsonPointer, schema) { + var segments = jsonPointer.split('/'); + var rootSchema = {}; + var pointerSchema = rootSchema; + for (var i=1; i' + , $result = 'result' + $lvl; +}} + +{{# def.$data }} + + +{{? $isDataExcl }} + {{ + var $schemaValueExcl = it.util.getData($schemaExcl.$data, $dataLvl, it.dataPathArr) + , $exclusive = 'exclusive' + $lvl + , $opExpr = 'op' + $lvl + , $opStr = '\' + ' + $opExpr + ' + \''; + }} + var schemaExcl{{=$lvl}} = {{=$schemaValueExcl}}; + {{ $schemaValueExcl = 'schemaExcl' + $lvl; }} + + if (typeof {{=$schemaValueExcl}} != 'boolean' && {{=$schemaValueExcl}} !== undefined) { + {{=$valid}} = false; + {{ var $errorKeyword = $exclusiveKeyword; }} + {{# def.error:'_formatExclusiveLimit' }} + } + + {{# def.elseIfValid }} + + {{# def.compareFormat }} + var {{=$exclusive}} = {{=$schemaValueExcl}} === true; + + if ({{=$valid}} === undefined) { + {{=$valid}} = {{=$exclusive}} + ? {{=$result}} {{=$op}} 0 + : {{=$result}} {{=$op}}= 0; + } + + if (!{{=$valid}}) var op{{=$lvl}} = {{=$exclusive}} ? '{{=$op}}' : '{{=$op}}='; +{{??}} + {{ + var $exclusive = $schemaExcl === true + , $opStr = $op; /*used in error*/ + if (!$exclusive) $opStr += '='; + var $opExpr = '\'' + $opStr + '\''; /*used in error*/ + }} + + {{# def.compareFormat }} + + if ({{=$valid}} === undefined) + {{=$valid}} = {{=$result}} {{=$op}}{{?!$exclusive}}={{?}} 0; +{{?}} + +{{= $closingBraces }} + +if (!{{=$valid}}) { + {{ var $errorKeyword = $keyword; }} + {{# def.error:'_formatLimit' }} +} diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/dot/patternRequired.jst b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/dot/patternRequired.jst new file mode 100644 index 00000000..6f82f626 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/dot/patternRequired.jst @@ -0,0 +1,33 @@ +{{# def.definitions }} +{{# def.errors }} +{{# def.setupKeyword }} + +{{ + var $key = 'key' + $lvl + , $idx = 'idx' + $lvl + , $matched = 'patternMatched' + $lvl + , $dataProperties = 'dataProperties' + $lvl + , $closingBraces = '' + , $ownProperties = it.opts.ownProperties; +}} + +var {{=$valid}} = true; +{{? $ownProperties }} + var {{=$dataProperties}} = undefined; +{{?}} + +{{~ $schema:$pProperty }} + var {{=$matched}} = false; + {{# def.iterateProperties }} + {{=$matched}} = {{= it.usePattern($pProperty) }}.test({{=$key}}); + if ({{=$matched}}) break; + } + + {{ var $missingPattern = it.util.escapeQuotes($pProperty); }} + if (!{{=$matched}}) { + {{=$valid}} = false; + {{# def.addError:'patternRequired' }} + } {{# def.elseIfValid }} +{{~}} + +{{= $closingBraces }} diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/dot/switch.jst b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/dot/switch.jst new file mode 100644 index 00000000..24d68cfc --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/dot/switch.jst @@ -0,0 +1,71 @@ +{{# def.definitions }} +{{# def.errors }} +{{# def.setupKeyword }} +{{# def.setupNextLevel }} + + +{{## def.validateIf: + {{# def.setCompositeRule }} + {{ $it.createErrors = false; }} + {{# def._validateSwitchRule:if }} + {{ $it.createErrors = true; }} + {{# def.resetCompositeRule }} + {{=$ifPassed}} = {{=$nextValid}}; +#}} + +{{## def.validateThen: + {{? typeof $sch.then == 'boolean' }} + {{? $sch.then === false }} + {{# def.error:'switch' }} + {{?}} + var {{=$nextValid}} = {{= $sch.then }}; + {{??}} + {{# def._validateSwitchRule:then }} + {{?}} +#}} + +{{## def._validateSwitchRule:_clause: + {{ + $it.schema = $sch._clause; + $it.schemaPath = $schemaPath + '[' + $caseIndex + ']._clause'; + $it.errSchemaPath = $errSchemaPath + '/' + $caseIndex + '/_clause'; + }} + {{# def.insertSubschemaCode }} +#}} + +{{## def.switchCase: + {{? $sch.if && {{# def.nonEmptySchema:$sch.if }} }} + var {{=$errs}} = errors; + {{# def.validateIf }} + if ({{=$ifPassed}}) { + {{# def.validateThen }} + } else { + {{# def.resetErrors }} + } + {{??}} + {{=$ifPassed}} = true; + {{# def.validateThen }} + {{?}} +#}} + + +{{ + var $ifPassed = 'ifPassed' + it.level + , $currentBaseId = $it.baseId + , $shouldContinue; +}} +var {{=$ifPassed}}; + +{{~ $schema:$sch:$caseIndex }} + {{? $caseIndex && !$shouldContinue }} + if (!{{=$ifPassed}}) { + {{ $closingBraces+= '}'; }} + {{?}} + + {{# def.switchCase }} + {{ $shouldContinue = $sch.continue }} +{{~}} + +{{= $closingBraces }} + +var {{=$valid}} = {{=$nextValid}}; diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/dotjs/README.md b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/dotjs/README.md new file mode 100644 index 00000000..e2846c86 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/dotjs/README.md @@ -0,0 +1,3 @@ +These files are compiled dot templates from dot folder. + +Do NOT edit them directly, edit the templates and run `npm run build` from main ajv-keywords folder. diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/dotjs/_formatLimit.js b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/dotjs/_formatLimit.js new file mode 100644 index 00000000..d2af6388 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/dotjs/_formatLimit.js @@ -0,0 +1,178 @@ +'use strict'; +module.exports = function generate__formatLimit(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $errorKeyword; + var $data = 'data' + ($dataLvl || ''); + var $valid = 'valid' + $lvl; + out += 'var ' + ($valid) + ' = undefined;'; + if (it.opts.format === false) { + out += ' ' + ($valid) + ' = true; '; + return out; + } + var $schemaFormat = it.schema.format, + $isDataFormat = it.opts.$data && $schemaFormat.$data, + $closingBraces = ''; + if ($isDataFormat) { + var $schemaValueFormat = it.util.getData($schemaFormat.$data, $dataLvl, it.dataPathArr), + $format = 'format' + $lvl, + $compare = 'compare' + $lvl; + out += ' var ' + ($format) + ' = formats[' + ($schemaValueFormat) + '] , ' + ($compare) + ' = ' + ($format) + ' && ' + ($format) + '.compare;'; + } else { + var $format = it.formats[$schemaFormat]; + if (!($format && $format.compare)) { + out += ' ' + ($valid) + ' = true; '; + return out; + } + var $compare = 'formats' + it.util.getProperty($schemaFormat) + '.compare'; + } + var $isMax = $keyword == 'formatMaximum', + $exclusiveKeyword = 'formatExclusive' + ($isMax ? 'Maximum' : 'Minimum'), + $schemaExcl = it.schema[$exclusiveKeyword], + $isDataExcl = it.opts.$data && $schemaExcl && $schemaExcl.$data, + $op = $isMax ? '<' : '>', + $result = 'result' + $lvl; + var $isData = it.opts.$data && $schema && $schema.$data, + $schemaValue; + if ($isData) { + out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; '; + $schemaValue = 'schema' + $lvl; + } else { + $schemaValue = $schema; + } + if ($isDataExcl) { + var $schemaValueExcl = it.util.getData($schemaExcl.$data, $dataLvl, it.dataPathArr), + $exclusive = 'exclusive' + $lvl, + $opExpr = 'op' + $lvl, + $opStr = '\' + ' + $opExpr + ' + \''; + out += ' var schemaExcl' + ($lvl) + ' = ' + ($schemaValueExcl) + '; '; + $schemaValueExcl = 'schemaExcl' + $lvl; + out += ' if (typeof ' + ($schemaValueExcl) + ' != \'boolean\' && ' + ($schemaValueExcl) + ' !== undefined) { ' + ($valid) + ' = false; '; + var $errorKeyword = $exclusiveKeyword; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ($errorKeyword || '_formatExclusiveLimit') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} '; + if (it.opts.messages !== false) { + out += ' , message: \'' + ($exclusiveKeyword) + ' should be boolean\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += ' } '; + if ($breakOnError) { + $closingBraces += '}'; + out += ' else { '; + } + if ($isData) { + out += ' if (' + ($schemaValue) + ' === undefined) ' + ($valid) + ' = true; else if (typeof ' + ($schemaValue) + ' != \'string\') ' + ($valid) + ' = false; else { '; + $closingBraces += '}'; + } + if ($isDataFormat) { + out += ' if (!' + ($compare) + ') ' + ($valid) + ' = true; else { '; + $closingBraces += '}'; + } + out += ' var ' + ($result) + ' = ' + ($compare) + '(' + ($data) + ', '; + if ($isData) { + out += '' + ($schemaValue); + } else { + out += '' + (it.util.toQuotedString($schema)); + } + out += ' ); if (' + ($result) + ' === undefined) ' + ($valid) + ' = false; var ' + ($exclusive) + ' = ' + ($schemaValueExcl) + ' === true; if (' + ($valid) + ' === undefined) { ' + ($valid) + ' = ' + ($exclusive) + ' ? ' + ($result) + ' ' + ($op) + ' 0 : ' + ($result) + ' ' + ($op) + '= 0; } if (!' + ($valid) + ') var op' + ($lvl) + ' = ' + ($exclusive) + ' ? \'' + ($op) + '\' : \'' + ($op) + '=\';'; + } else { + var $exclusive = $schemaExcl === true, + $opStr = $op; + if (!$exclusive) $opStr += '='; + var $opExpr = '\'' + $opStr + '\''; + if ($isData) { + out += ' if (' + ($schemaValue) + ' === undefined) ' + ($valid) + ' = true; else if (typeof ' + ($schemaValue) + ' != \'string\') ' + ($valid) + ' = false; else { '; + $closingBraces += '}'; + } + if ($isDataFormat) { + out += ' if (!' + ($compare) + ') ' + ($valid) + ' = true; else { '; + $closingBraces += '}'; + } + out += ' var ' + ($result) + ' = ' + ($compare) + '(' + ($data) + ', '; + if ($isData) { + out += '' + ($schemaValue); + } else { + out += '' + (it.util.toQuotedString($schema)); + } + out += ' ); if (' + ($result) + ' === undefined) ' + ($valid) + ' = false; if (' + ($valid) + ' === undefined) ' + ($valid) + ' = ' + ($result) + ' ' + ($op); + if (!$exclusive) { + out += '='; + } + out += ' 0;'; + } + out += '' + ($closingBraces) + 'if (!' + ($valid) + ') { '; + var $errorKeyword = $keyword; + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ($errorKeyword || '_formatLimit') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { comparison: ' + ($opExpr) + ', limit: '; + if ($isData) { + out += '' + ($schemaValue); + } else { + out += '' + (it.util.toQuotedString($schema)); + } + out += ' , exclusive: ' + ($exclusive) + ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should be ' + ($opStr) + ' "'; + if ($isData) { + out += '\' + ' + ($schemaValue) + ' + \''; + } else { + out += '' + (it.util.escapeQuotes($schema)); + } + out += '"\' '; + } + if (it.opts.verbose) { + out += ' , schema: '; + if ($isData) { + out += 'validate.schema' + ($schemaPath); + } else { + out += '' + (it.util.toQuotedString($schema)); + } + out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + out += '}'; + return out; +} diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/dotjs/patternRequired.js b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/dotjs/patternRequired.js new file mode 100644 index 00000000..31bd0b68 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/dotjs/patternRequired.js @@ -0,0 +1,58 @@ +'use strict'; +module.exports = function generate_patternRequired(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $valid = 'valid' + $lvl; + var $key = 'key' + $lvl, + $idx = 'idx' + $lvl, + $matched = 'patternMatched' + $lvl, + $dataProperties = 'dataProperties' + $lvl, + $closingBraces = '', + $ownProperties = it.opts.ownProperties; + out += 'var ' + ($valid) + ' = true;'; + if ($ownProperties) { + out += ' var ' + ($dataProperties) + ' = undefined;'; + } + var arr1 = $schema; + if (arr1) { + var $pProperty, i1 = -1, + l1 = arr1.length - 1; + while (i1 < l1) { + $pProperty = arr1[i1 += 1]; + out += ' var ' + ($matched) + ' = false; '; + if ($ownProperties) { + out += ' ' + ($dataProperties) + ' = ' + ($dataProperties) + ' || Object.keys(' + ($data) + '); for (var ' + ($idx) + '=0; ' + ($idx) + '<' + ($dataProperties) + '.length; ' + ($idx) + '++) { var ' + ($key) + ' = ' + ($dataProperties) + '[' + ($idx) + ']; '; + } else { + out += ' for (var ' + ($key) + ' in ' + ($data) + ') { '; + } + out += ' ' + ($matched) + ' = ' + (it.usePattern($pProperty)) + '.test(' + ($key) + '); if (' + ($matched) + ') break; } '; + var $missingPattern = it.util.escapeQuotes($pProperty); + out += ' if (!' + ($matched) + ') { ' + ($valid) + ' = false; var err = '; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('patternRequired') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingPattern: \'' + ($missingPattern) + '\' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should have property matching pattern \\\'' + ($missingPattern) + '\\\'\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } '; + if ($breakOnError) { + $closingBraces += '}'; + out += ' else { '; + } + } + } + out += '' + ($closingBraces); + return out; +} diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/dotjs/switch.js b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/dotjs/switch.js new file mode 100644 index 00000000..0a3fb80c --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/dotjs/switch.js @@ -0,0 +1,129 @@ +'use strict'; +module.exports = function generate_switch(it, $keyword, $ruleType) { + var out = ' '; + var $lvl = it.level; + var $dataLvl = it.dataLevel; + var $schema = it.schema[$keyword]; + var $schemaPath = it.schemaPath + it.util.getProperty($keyword); + var $errSchemaPath = it.errSchemaPath + '/' + $keyword; + var $breakOnError = !it.opts.allErrors; + var $data = 'data' + ($dataLvl || ''); + var $valid = 'valid' + $lvl; + var $errs = 'errs__' + $lvl; + var $it = it.util.copy(it); + var $closingBraces = ''; + $it.level++; + var $nextValid = 'valid' + $it.level; + var $ifPassed = 'ifPassed' + it.level, + $currentBaseId = $it.baseId, + $shouldContinue; + out += 'var ' + ($ifPassed) + ';'; + var arr1 = $schema; + if (arr1) { + var $sch, $caseIndex = -1, + l1 = arr1.length - 1; + while ($caseIndex < l1) { + $sch = arr1[$caseIndex += 1]; + if ($caseIndex && !$shouldContinue) { + out += ' if (!' + ($ifPassed) + ') { '; + $closingBraces += '}'; + } + if ($sch.if && (it.opts.strictKeywords ? typeof $sch.if == 'object' && Object.keys($sch.if).length > 0 : it.util.schemaHasRules($sch.if, it.RULES.all))) { + out += ' var ' + ($errs) + ' = errors; '; + var $wasComposite = it.compositeRule; + it.compositeRule = $it.compositeRule = true; + $it.createErrors = false; + $it.schema = $sch.if; + $it.schemaPath = $schemaPath + '[' + $caseIndex + '].if'; + $it.errSchemaPath = $errSchemaPath + '/' + $caseIndex + '/if'; + out += ' ' + (it.validate($it)) + ' '; + $it.baseId = $currentBaseId; + $it.createErrors = true; + it.compositeRule = $it.compositeRule = $wasComposite; + out += ' ' + ($ifPassed) + ' = ' + ($nextValid) + '; if (' + ($ifPassed) + ') { '; + if (typeof $sch.then == 'boolean') { + if ($sch.then === false) { + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('switch') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { caseIndex: ' + ($caseIndex) + ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should pass "switch" keyword validation\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + } + out += ' var ' + ($nextValid) + ' = ' + ($sch.then) + '; '; + } else { + $it.schema = $sch.then; + $it.schemaPath = $schemaPath + '[' + $caseIndex + '].then'; + $it.errSchemaPath = $errSchemaPath + '/' + $caseIndex + '/then'; + out += ' ' + (it.validate($it)) + ' '; + $it.baseId = $currentBaseId; + } + out += ' } else { errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; } } '; + } else { + out += ' ' + ($ifPassed) + ' = true; '; + if (typeof $sch.then == 'boolean') { + if ($sch.then === false) { + var $$outStack = $$outStack || []; + $$outStack.push(out); + out = ''; /* istanbul ignore else */ + if (it.createErrors !== false) { + out += ' { keyword: \'' + ('switch') + '\' , dataPath: (dataPath || \'\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { caseIndex: ' + ($caseIndex) + ' } '; + if (it.opts.messages !== false) { + out += ' , message: \'should pass "switch" keyword validation\' '; + } + if (it.opts.verbose) { + out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' '; + } + out += ' } '; + } else { + out += ' {} '; + } + var __err = out; + out = $$outStack.pop(); + if (!it.compositeRule && $breakOnError) { + /* istanbul ignore if */ + if (it.async) { + out += ' throw new ValidationError([' + (__err) + ']); '; + } else { + out += ' validate.errors = [' + (__err) + ']; return false; '; + } + } else { + out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; '; + } + } + out += ' var ' + ($nextValid) + ' = ' + ($sch.then) + '; '; + } else { + $it.schema = $sch.then; + $it.schemaPath = $schemaPath + '[' + $caseIndex + '].then'; + $it.errSchemaPath = $errSchemaPath + '/' + $caseIndex + '/then'; + out += ' ' + (it.validate($it)) + ' '; + $it.baseId = $currentBaseId; + } + } + $shouldContinue = $sch.continue + } + } + out += '' + ($closingBraces) + 'var ' + ($valid) + ' = ' + ($nextValid) + ';'; + return out; +} diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/dynamicDefaults.js b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/dynamicDefaults.js new file mode 100644 index 00000000..5323bb8c --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/dynamicDefaults.js @@ -0,0 +1,72 @@ +'use strict'; + +var sequences = {}; + +var DEFAULTS = { + timestamp: function() { return Date.now(); }, + datetime: function() { return (new Date).toISOString(); }, + date: function() { return (new Date).toISOString().slice(0, 10); }, + time: function() { return (new Date).toISOString().slice(11); }, + random: function() { return Math.random(); }, + randomint: function (args) { + var limit = args && args.max || 2; + return function() { return Math.floor(Math.random() * limit); }; + }, + seq: function (args) { + var name = args && args.name || ''; + sequences[name] = sequences[name] || 0; + return function() { return sequences[name]++; }; + } +}; + +module.exports = function defFunc(ajv) { + defFunc.definition = { + compile: function (schema, parentSchema, it) { + var funcs = {}; + + for (var key in schema) { + var d = schema[key]; + var func = getDefault(typeof d == 'string' ? d : d.func); + funcs[key] = func.length ? func(d.args) : func; + } + + return it.opts.useDefaults && !it.compositeRule + ? assignDefaults + : noop; + + function assignDefaults(data) { + for (var prop in schema){ + if (data[prop] === undefined + || (it.opts.useDefaults == 'empty' + && (data[prop] === null || data[prop] === ''))) + data[prop] = funcs[prop](); + } + return true; + } + + function noop() { return true; } + }, + DEFAULTS: DEFAULTS, + metaSchema: { + type: 'object', + additionalProperties: { + type: ['string', 'object'], + additionalProperties: false, + required: ['func', 'args'], + properties: { + func: { type: 'string' }, + args: { type: 'object' } + } + } + } + }; + + ajv.addKeyword('dynamicDefaults', defFunc.definition); + return ajv; + + function getDefault(d) { + var def = DEFAULTS[d]; + if (def) return def; + throw new Error('invalid "dynamicDefaults" keyword property value: ' + d); + } +}; diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/formatMaximum.js b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/formatMaximum.js new file mode 100644 index 00000000..e7daabf8 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/formatMaximum.js @@ -0,0 +1,3 @@ +'use strict'; + +module.exports = require('./_formatLimit')('Maximum'); diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/formatMinimum.js b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/formatMinimum.js new file mode 100644 index 00000000..eddd6e40 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/formatMinimum.js @@ -0,0 +1,3 @@ +'use strict'; + +module.exports = require('./_formatLimit')('Minimum'); diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/index.js b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/index.js new file mode 100644 index 00000000..99534ec2 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/index.js @@ -0,0 +1,22 @@ +'use strict'; + +module.exports = { + 'instanceof': require('./instanceof'), + range: require('./range'), + regexp: require('./regexp'), + 'typeof': require('./typeof'), + dynamicDefaults: require('./dynamicDefaults'), + allRequired: require('./allRequired'), + anyRequired: require('./anyRequired'), + oneRequired: require('./oneRequired'), + prohibited: require('./prohibited'), + uniqueItemProperties: require('./uniqueItemProperties'), + deepProperties: require('./deepProperties'), + deepRequired: require('./deepRequired'), + formatMinimum: require('./formatMinimum'), + formatMaximum: require('./formatMaximum'), + patternRequired: require('./patternRequired'), + 'switch': require('./switch'), + select: require('./select'), + transform: require('./transform') +}; diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/instanceof.js b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/instanceof.js new file mode 100644 index 00000000..ea88f5ca --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/instanceof.js @@ -0,0 +1,58 @@ +'use strict'; + +var CONSTRUCTORS = { + Object: Object, + Array: Array, + Function: Function, + Number: Number, + String: String, + Date: Date, + RegExp: RegExp +}; + +module.exports = function defFunc(ajv) { + /* istanbul ignore else */ + if (typeof Buffer != 'undefined') + CONSTRUCTORS.Buffer = Buffer; + + /* istanbul ignore else */ + if (typeof Promise != 'undefined') + CONSTRUCTORS.Promise = Promise; + + defFunc.definition = { + compile: function (schema) { + if (typeof schema == 'string') { + var Constructor = getConstructor(schema); + return function (data) { + return data instanceof Constructor; + }; + } + + var constructors = schema.map(getConstructor); + return function (data) { + for (var i=0; i max || (exclusive && min == max)) + throw new Error('There are no numbers in range'); + } +}; diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/regexp.js b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/regexp.js new file mode 100644 index 00000000..973628c3 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/regexp.js @@ -0,0 +1,36 @@ +'use strict'; + +module.exports = function defFunc(ajv) { + defFunc.definition = { + type: 'string', + inline: function (it, keyword, schema) { + return getRegExp() + '.test(data' + (it.dataLevel || '') + ')'; + + function getRegExp() { + try { + if (typeof schema == 'object') + return new RegExp(schema.pattern, schema.flags); + + var rx = schema.match(/^\/(.*)\/([gimuy]*)$/); + if (rx) return new RegExp(rx[1], rx[2]); + throw new Error('cannot parse string into RegExp'); + } catch(e) { + console.error('regular expression', schema, 'is invalid'); + throw e; + } + } + }, + metaSchema: { + type: ['string', 'object'], + properties: { + pattern: { type: 'string' }, + flags: { type: 'string' } + }, + required: ['pattern'], + additionalProperties: false + } + }; + + ajv.addKeyword('regexp', defFunc.definition); + return ajv; +}; diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/select.js b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/select.js new file mode 100644 index 00000000..f79c6c7a --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/select.js @@ -0,0 +1,79 @@ +'use strict'; + +var util = require('./_util'); + +module.exports = function defFunc(ajv) { + if (!ajv._opts.$data) { + console.warn('keyword select requires $data option'); + return ajv; + } + var metaSchemaRef = util.metaSchemaRef(ajv); + var compiledCaseSchemas = []; + + defFunc.definition = { + validate: function v(schema, data, parentSchema) { + if (parentSchema.selectCases === undefined) + throw new Error('keyword "selectCases" is absent'); + var compiled = getCompiledSchemas(parentSchema, false); + var validate = compiled.cases[schema]; + if (validate === undefined) validate = compiled.default; + if (typeof validate == 'boolean') return validate; + var valid = validate(data); + if (!valid) v.errors = validate.errors; + return valid; + }, + $data: true, + metaSchema: { type: ['string', 'number', 'boolean', 'null'] } + }; + + ajv.addKeyword('select', defFunc.definition); + ajv.addKeyword('selectCases', { + compile: function (schemas, parentSchema) { + var compiled = getCompiledSchemas(parentSchema); + for (var value in schemas) + compiled.cases[value] = compileOrBoolean(schemas[value]); + return function() { return true; }; + }, + valid: true, + metaSchema: { + type: 'object', + additionalProperties: metaSchemaRef + } + }); + ajv.addKeyword('selectDefault', { + compile: function (schema, parentSchema) { + var compiled = getCompiledSchemas(parentSchema); + compiled.default = compileOrBoolean(schema); + return function() { return true; }; + }, + valid: true, + metaSchema: metaSchemaRef + }); + return ajv; + + + function getCompiledSchemas(parentSchema, create) { + var compiled; + compiledCaseSchemas.some(function (c) { + if (c.parentSchema === parentSchema) { + compiled = c; + return true; + } + }); + if (!compiled && create !== false) { + compiled = { + parentSchema: parentSchema, + cases: {}, + default: true + }; + compiledCaseSchemas.push(compiled); + } + return compiled; + } + + function compileOrBoolean(schema) { + return typeof schema == 'boolean' + ? schema + : ajv.compile(schema); + } +}; diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/switch.js b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/switch.js new file mode 100644 index 00000000..5b0f3f83 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/switch.js @@ -0,0 +1,38 @@ +'use strict'; + +var util = require('./_util'); + +module.exports = function defFunc(ajv) { + if (ajv.RULES.keywords.switch && ajv.RULES.keywords.if) return; + + var metaSchemaRef = util.metaSchemaRef(ajv); + + defFunc.definition = { + inline: require('./dotjs/switch'), + statements: true, + errors: 'full', + metaSchema: { + type: 'array', + items: { + required: [ 'then' ], + properties: { + 'if': metaSchemaRef, + 'then': { + anyOf: [ + { type: 'boolean' }, + metaSchemaRef + ] + }, + 'continue': { type: 'boolean' } + }, + additionalProperties: false, + dependencies: { + 'continue': [ 'if' ] + } + } + } + }; + + ajv.addKeyword('switch', defFunc.definition); + return ajv; +}; diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/transform.js b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/transform.js new file mode 100644 index 00000000..d715452b --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/transform.js @@ -0,0 +1,80 @@ +'use strict'; + +module.exports = function defFunc (ajv) { + var transform = { + trimLeft: function (value) { + return value.replace(/^[\s]+/, ''); + }, + trimRight: function (value) { + return value.replace(/[\s]+$/, ''); + }, + trim: function (value) { + return value.trim(); + }, + toLowerCase: function (value) { + return value.toLowerCase(); + }, + toUpperCase: function (value) { + return value.toUpperCase(); + }, + toEnumCase: function (value, cfg) { + return cfg.hash[makeHashTableKey(value)] || value; + } + }; + + defFunc.definition = { + type: 'string', + errors: false, + modifying: true, + valid: true, + compile: function (schema, parentSchema) { + var cfg; + + if (schema.indexOf('toEnumCase') !== -1) { + // build hash table to enum values + cfg = {hash: {}}; + + // requires `enum` in schema + if (!parentSchema.enum) + throw new Error('Missing enum. To use `transform:["toEnumCase"]`, `enum:[...]` is required.'); + for (var i = parentSchema.enum.length; i--; i) { + var v = parentSchema.enum[i]; + if (typeof v !== 'string') continue; + var k = makeHashTableKey(v); + // requires all `enum` values have unique keys + if (cfg.hash[k]) + throw new Error('Invalid enum uniqueness. To use `transform:["toEnumCase"]`, all values must be unique when case insensitive.'); + cfg.hash[k] = v; + } + } + + return function (data, dataPath, object, key) { + // skip if value only + if (!object) return; + + // apply transform in order provided + for (var j = 0, l = schema.length; j < l; j++) + data = transform[schema[j]](data, cfg); + + object[key] = data; + }; + }, + metaSchema: { + type: 'array', + items: { + type: 'string', + enum: [ + 'trimLeft', 'trimRight', 'trim', + 'toLowerCase', 'toUpperCase', 'toEnumCase' + ] + } + } + }; + + ajv.addKeyword('transform', defFunc.definition); + return ajv; + + function makeHashTableKey (value) { + return value.toLowerCase(); + } +}; diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/typeof.js b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/typeof.js new file mode 100644 index 00000000..3a3574d8 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/typeof.js @@ -0,0 +1,32 @@ +'use strict'; + +var KNOWN_TYPES = ['undefined', 'string', 'number', 'object', 'function', 'boolean', 'symbol']; + +module.exports = function defFunc(ajv) { + defFunc.definition = { + inline: function (it, keyword, schema) { + var data = 'data' + (it.dataLevel || ''); + if (typeof schema == 'string') return 'typeof ' + data + ' == "' + schema + '"'; + schema = 'validate.schema' + it.schemaPath + '.' + keyword; + return schema + '.indexOf(typeof ' + data + ') >= 0'; + }, + metaSchema: { + anyOf: [ + { + type: 'string', + enum: KNOWN_TYPES + }, + { + type: 'array', + items: { + type: 'string', + enum: KNOWN_TYPES + } + } + ] + } + }; + + ajv.addKeyword('typeof', defFunc.definition); + return ajv; +}; diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/uniqueItemProperties.js b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/uniqueItemProperties.js new file mode 100644 index 00000000..cd670dac --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/keywords/uniqueItemProperties.js @@ -0,0 +1,59 @@ +'use strict'; + +var SCALAR_TYPES = ['number', 'integer', 'string', 'boolean', 'null']; + +module.exports = function defFunc(ajv) { + defFunc.definition = { + type: 'array', + compile: function(keys, parentSchema, it) { + var equal = it.util.equal; + var scalar = getScalarKeys(keys, parentSchema); + + return function(data) { + if (data.length > 1) { + for (var k=0; k < keys.length; k++) { + var i, key = keys[k]; + if (scalar[k]) { + var hash = {}; + for (i = data.length; i--;) { + if (!data[i] || typeof data[i] != 'object') continue; + var prop = data[i][key]; + if (prop && typeof prop == 'object') continue; + if (typeof prop == 'string') prop = '"' + prop; + if (hash[prop]) return false; + hash[prop] = true; + } + } else { + for (i = data.length; i--;) { + if (!data[i] || typeof data[i] != 'object') continue; + for (var j = i; j--;) { + if (data[j] && typeof data[j] == 'object' && equal(data[i][key], data[j][key])) + return false; + } + } + } + } + } + return true; + }; + }, + metaSchema: { + type: 'array', + items: {type: 'string'} + } + }; + + ajv.addKeyword('uniqueItemProperties', defFunc.definition); + return ajv; +}; + + +function getScalarKeys(keys, schema) { + return keys.map(function(key) { + var properties = schema.items && schema.items.properties; + var propType = properties && properties[key] && properties[key].type; + return Array.isArray(propType) + ? propType.indexOf('object') < 0 && propType.indexOf('array') < 0 + : SCALAR_TYPES.indexOf(propType) >= 0; + }); +} diff --git a/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/package.json b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/package.json new file mode 100644 index 00000000..ea74b668 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/ajv-keywords/package.json @@ -0,0 +1,84 @@ +{ + "_args": [ + [ + "ajv-keywords@3.5.2", + "/home/henry/Documents/git/Speedtest-tracker-docker/conf/site" + ] + ], + "_development": true, + "_from": "ajv-keywords@3.5.2", + "_id": "ajv-keywords@3.5.2", + "_inBundle": false, + "_integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "_location": "/sass-loader/ajv-keywords", + "_phantomChildren": {}, + "_requested": { + "type": "version", + "registry": true, + "raw": "ajv-keywords@3.5.2", + "name": "ajv-keywords", + "escapedName": "ajv-keywords", + "rawSpec": "3.5.2", + "saveSpec": null, + "fetchSpec": "3.5.2" + }, + "_requiredBy": [ + "/sass-loader/schema-utils" + ], + "_resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "_spec": "3.5.2", + "_where": "/home/henry/Documents/git/Speedtest-tracker-docker/conf/site", + "author": { + "name": "Evgeny Poberezkin" + }, + "bugs": { + "url": "https://github.com/epoberezkin/ajv-keywords/issues" + }, + "description": "Custom JSON-Schema keywords for Ajv validator", + "devDependencies": { + "ajv": "^6.9.1", + "ajv-pack": "^0.3.0", + "chai": "^4.2.0", + "coveralls": "^3.0.2", + "dot": "^1.1.1", + "eslint": "^7.2.0", + "glob": "^7.1.3", + "istanbul": "^0.4.3", + "js-beautify": "^1.8.9", + "json-schema-test": "^2.0.0", + "mocha": "^8.0.1", + "pre-commit": "^1.1.3", + "uuid": "^8.1.0" + }, + "files": [ + "index.js", + "ajv-keywords.d.ts", + "keywords" + ], + "homepage": "https://github.com/epoberezkin/ajv-keywords#readme", + "keywords": [ + "JSON-Schema", + "ajv", + "keywords" + ], + "license": "MIT", + "main": "index.js", + "name": "ajv-keywords", + "peerDependencies": { + "ajv": "^6.9.1" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/epoberezkin/ajv-keywords.git" + }, + "scripts": { + "build": "node node_modules/ajv/scripts/compile-dots.js node_modules/ajv/lib keywords", + "eslint": "eslint index.js keywords/*.js spec", + "prepublish": "npm run build", + "test": "npm run build && npm run eslint && npm run test-cov", + "test-cov": "istanbul cover -x 'spec/**' node_modules/mocha/bin/_mocha -- spec/*.spec.js -R spec", + "test-spec": "mocha spec/*.spec.js -R spec" + }, + "typings": "ajv-keywords.d.ts", + "version": "3.5.2" +} diff --git a/conf/site/node_modules/sass-loader/node_modules/schema-utils/CHANGELOG.md b/conf/site/node_modules/sass-loader/node_modules/schema-utils/CHANGELOG.md new file mode 100644 index 00000000..d0751666 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/schema-utils/CHANGELOG.md @@ -0,0 +1,286 @@ +# Changelog + +All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. + +### [2.7.1](https://github.com/webpack/schema-utils/compare/v2.7.0...v2.7.1) (2020-08-31) + + +### Bug Fixes + +* remove esModuleInterop from tsconfig ([#110](https://github.com/webpack/schema-utils/issues/110)) ([#111](https://github.com/webpack/schema-utils/issues/111)) ([2f40154](https://github.com/webpack/schema-utils/commit/2f40154b91e45b393258ae9dd8f10cc3b8590b7d)) + +## [2.7.0](https://github.com/webpack/schema-utils/compare/v2.6.6...v2.7.0) (2020-05-29) + + +### Features + +* improve hints ([a36e535](https://github.com/webpack/schema-utils/commit/a36e535faca1b01e27c3bfa3c8bee9227c3f836c)) +* smart not case ([#101](https://github.com/webpack/schema-utils/issues/101)) ([698d8b0](https://github.com/webpack/schema-utils/commit/698d8b05462d86aadb217e25a45c7b953a79a52e)) + + +### Bug Fixes + +* move @types/json-schema from devDependencies to dependencies ([#97](https://github.com/webpack/schema-utils/issues/97)) ([#98](https://github.com/webpack/schema-utils/issues/98)) ([945e67d](https://github.com/webpack/schema-utils/commit/945e67db5e19baf7ec7df72813b0739dd56f950d)) + +### [2.6.6](https://github.com/webpack/schema-utils/compare/v2.6.5...v2.6.6) (2020-04-17) + + +### Bug Fixes + +* improve perf + +### [2.6.5](https://github.com/webpack/schema-utils/compare/v2.6.4...v2.6.5) (2020-03-11) + + +### Bug Fixes + +* correct dots at end of sentence ([7284beb](https://github.com/webpack/schema-utils/commit/7284bebe00cd570f1bef2c15951a07b9794038e6)) + +### [2.6.4](https://github.com/webpack/schema-utils/compare/v2.6.3...v2.6.4) (2020-01-17) + + +### Bug Fixes + +* change `initialised` to `initialized` ([#87](https://github.com/webpack/schema-utils/issues/87)) ([70f12d3](https://github.com/webpack/schema-utils/commit/70f12d33a8eaa27249bc9c1a27f886724cf91ea7)) + +### [2.6.3](https://github.com/webpack/schema-utils/compare/v2.6.2...v2.6.3) (2020-01-17) + + +### Bug Fixes + +* prefer the `baseDataPath` option from arguments ([#86](https://github.com/webpack/schema-utils/issues/86)) ([e236859](https://github.com/webpack/schema-utils/commit/e236859e85b28e35e1294f86fc1ff596a5031cea)) + +### [2.6.2](https://github.com/webpack/schema-utils/compare/v2.6.1...v2.6.2) (2020-01-14) + + +### Bug Fixes + +* better handle Windows absolute paths ([#85](https://github.com/webpack/schema-utils/issues/85)) ([1fa2930](https://github.com/webpack/schema-utils/commit/1fa2930a161e907b9fc53a7233d605910afdb883)) + +### [2.6.1](https://github.com/webpack/schema-utils/compare/v2.6.0...v2.6.1) (2019-11-28) + + +### Bug Fixes + +* typescript declarations ([#84](https://github.com/webpack/schema-utils/issues/84)) ([89d55a9](https://github.com/webpack/schema-utils/commit/89d55a9a8edfa6a8ac8b112f226bb3154e260319)) + +## [2.6.0](https://github.com/webpack/schema-utils/compare/v2.5.0...v2.6.0) (2019-11-27) + + +### Features + +* support configuration via title ([#81](https://github.com/webpack/schema-utils/issues/81)) ([afddc10](https://github.com/webpack/schema-utils/commit/afddc109f6891cd37a9f1835d50862d119a072bf)) + + +### Bug Fixes + +* typescript definitions ([#70](https://github.com/webpack/schema-utils/issues/70)) ([f38158d](https://github.com/webpack/schema-utils/commit/f38158d6d040e2c701622778ae8122fb26a4f990)) + +## [2.5.0](https://github.com/webpack/schema-utils/compare/v2.4.1...v2.5.0) (2019-10-15) + + +### Bug Fixes + +* rework format for maxLength, minLength ([#67](https://github.com/webpack/schema-utils/issues/67)) ([0d12259](https://github.com/webpack/schema-utils/commit/0d12259)) +* support all cases with one number in range ([#64](https://github.com/webpack/schema-utils/issues/64)) ([7fc8069](https://github.com/webpack/schema-utils/commit/7fc8069)) +* typescript definition and export naming ([#69](https://github.com/webpack/schema-utils/issues/69)) ([a435b79](https://github.com/webpack/schema-utils/commit/a435b79)) + + +### Features + +* "smart" numbers range ([62fb107](https://github.com/webpack/schema-utils/commit/62fb107)) + +### [2.4.1](https://github.com/webpack/schema-utils/compare/v2.4.0...v2.4.1) (2019-09-27) + + +### Bug Fixes + +* publish definitions ([#58](https://github.com/webpack/schema-utils/issues/58)) ([1885faa](https://github.com/webpack/schema-utils/commit/1885faa)) + +## [2.4.0](https://github.com/webpack/schema-utils/compare/v2.3.0...v2.4.0) (2019-09-26) + + +### Features + +* better errors when the `type` keyword doesn't exist ([0988be2](https://github.com/webpack/schema-utils/commit/0988be2)) +* support $data reference ([#56](https://github.com/webpack/schema-utils/issues/56)) ([d2f11d6](https://github.com/webpack/schema-utils/commit/d2f11d6)) +* types definitions ([#52](https://github.com/webpack/schema-utils/issues/52)) ([facb431](https://github.com/webpack/schema-utils/commit/facb431)) + +## [2.3.0](https://github.com/webpack/schema-utils/compare/v2.2.0...v2.3.0) (2019-09-26) + + +### Features + +* support `not` keyword ([#53](https://github.com/webpack/schema-utils/issues/53)) ([765f458](https://github.com/webpack/schema-utils/commit/765f458)) + +## [2.2.0](https://github.com/webpack/schema-utils/compare/v2.1.0...v2.2.0) (2019-09-02) + + +### Features + +* better error output for `oneOf` and `anyOf` ([#48](https://github.com/webpack/schema-utils/issues/48)) ([#50](https://github.com/webpack/schema-utils/issues/50)) ([332242f](https://github.com/webpack/schema-utils/commit/332242f)) + +## [2.1.0](https://github.com/webpack-contrib/schema-utils/compare/v2.0.1...v2.1.0) (2019-08-07) + + +### Bug Fixes + +* throw error on sparse arrays ([#47](https://github.com/webpack-contrib/schema-utils/issues/47)) ([b85ac38](https://github.com/webpack-contrib/schema-utils/commit/b85ac38)) + + +### Features + +* export `ValidateError` ([#46](https://github.com/webpack-contrib/schema-utils/issues/46)) ([ff781d7](https://github.com/webpack-contrib/schema-utils/commit/ff781d7)) + + + +### [2.0.1](https://github.com/webpack-contrib/schema-utils/compare/v2.0.0...v2.0.1) (2019-07-18) + + +### Bug Fixes + +* error message for empty object ([#44](https://github.com/webpack-contrib/schema-utils/issues/44)) ([0b4b4a2](https://github.com/webpack-contrib/schema-utils/commit/0b4b4a2)) + + + +### [2.0.0](https://github.com/webpack-contrib/schema-utils/compare/v1.0.0...v2.0.0) (2019-07-17) + + +### BREAKING CHANGES + +* drop support for Node.js < 8.9.0 +* drop support `errorMessage`, please use `description` for links. +* api was changed, please look documentation. +* error messages was fully rewritten. + + + +# [1.0.0](https://github.com/webpack-contrib/schema-utils/compare/v0.4.7...v1.0.0) (2018-08-07) + + +### Features + +* **src:** add support for custom error messages ([#33](https://github.com/webpack-contrib/schema-utils/issues/33)) ([1cbe4ef](https://github.com/webpack-contrib/schema-utils/commit/1cbe4ef)) + + + + +## [0.4.7](https://github.com/webpack-contrib/schema-utils/compare/v0.4.6...v0.4.7) (2018-08-07) + + +### Bug Fixes + +* **src:** `node >= v4.0.0` support ([#32](https://github.com/webpack-contrib/schema-utils/issues/32)) ([cb13dd4](https://github.com/webpack-contrib/schema-utils/commit/cb13dd4)) + + + + +## [0.4.6](https://github.com/webpack-contrib/schema-utils/compare/v0.4.5...v0.4.6) (2018-08-06) + + +### Bug Fixes + +* **package:** remove lockfile ([#28](https://github.com/webpack-contrib/schema-utils/issues/28)) ([69f1a81](https://github.com/webpack-contrib/schema-utils/commit/69f1a81)) +* **package:** remove unnecessary `webpack` dependency ([#26](https://github.com/webpack-contrib/schema-utils/issues/26)) ([532eaa5](https://github.com/webpack-contrib/schema-utils/commit/532eaa5)) + + + + +## [0.4.5](https://github.com/webpack-contrib/schema-utils/compare/v0.4.4...v0.4.5) (2018-02-13) + + +### Bug Fixes + +* **CHANGELOG:** update broken links ([4483b9f](https://github.com/webpack-contrib/schema-utils/commit/4483b9f)) +* **package:** update broken links ([f2494ba](https://github.com/webpack-contrib/schema-utils/commit/f2494ba)) + + + + +## [0.4.4](https://github.com/webpack-contrib/schema-utils/compare/v0.4.3...v0.4.4) (2018-02-13) + + +### Bug Fixes + +* **package:** update `dependencies` ([#22](https://github.com/webpack-contrib/schema-utils/issues/22)) ([3aecac6](https://github.com/webpack-contrib/schema-utils/commit/3aecac6)) + + + + +## [0.4.3](https://github.com/webpack-contrib/schema-utils/compare/v0.4.2...v0.4.3) (2017-12-14) + + +### Bug Fixes + +* **validateOptions:** throw `err` instead of `process.exit(1)` ([#17](https://github.com/webpack-contrib/schema-utils/issues/17)) ([c595eda](https://github.com/webpack-contrib/schema-utils/commit/c595eda)) +* **ValidationError:** never return `this` in the ctor ([#16](https://github.com/webpack-contrib/schema-utils/issues/16)) ([c723791](https://github.com/webpack-contrib/schema-utils/commit/c723791)) + + + + +## [0.4.2](https://github.com/webpack-contrib/schema-utils/compare/v0.4.1...v0.4.2) (2017-11-09) + + +### Bug Fixes + +* **validateOptions:** catch `ValidationError` and handle it internally ([#15](https://github.com/webpack-contrib/schema-utils/issues/15)) ([9c5ef5e](https://github.com/webpack-contrib/schema-utils/commit/9c5ef5e)) + + + + +## [0.4.1](https://github.com/webpack-contrib/schema-utils/compare/v0.4.0...v0.4.1) (2017-11-03) + + +### Bug Fixes + +* **ValidationError:** use `Error.captureStackTrace` for `err.stack` handling ([#14](https://github.com/webpack-contrib/schema-utils/issues/14)) ([a6fb974](https://github.com/webpack-contrib/schema-utils/commit/a6fb974)) + + + + +# [0.4.0](https://github.com/webpack-contrib/schema-utils/compare/v0.3.0...v0.4.0) (2017-10-28) + + +### Features + +* add support for `typeof`, `instanceof` (`{Function\|RegExp}`) ([#10](https://github.com/webpack-contrib/schema-utils/issues/10)) ([9f01816](https://github.com/webpack-contrib/schema-utils/commit/9f01816)) + + + + +# [0.3.0](https://github.com/webpack-contrib/schema-utils/compare/v0.2.1...v0.3.0) (2017-04-29) + + +### Features + +* add ValidationError ([#8](https://github.com/webpack-contrib/schema-utils/issues/8)) ([d48f0fb](https://github.com/webpack-contrib/schema-utils/commit/d48f0fb)) + + + + +## [0.2.1](https://github.com/webpack-contrib/schema-utils/compare/v0.2.0...v0.2.1) (2017-03-13) + + +### Bug Fixes + +* Include .babelrc to `files` ([28f0363](https://github.com/webpack-contrib/schema-utils/commit/28f0363)) +* Include source to `files` ([43b0f2f](https://github.com/webpack-contrib/schema-utils/commit/43b0f2f)) + + + + +# [0.2.0](https://github.com/webpack-contrib/schema-utils/compare/v0.1.0...v0.2.0) (2017-03-12) + + +# 0.1.0 (2017-03-07) + + +### Features + +* **validations:** add validateOptions module ([ae9b47b](https://github.com/webpack-contrib/schema-utils/commit/ae9b47b)) + + + +# Change Log + +All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. diff --git a/conf/site/node_modules/sass-loader/node_modules/schema-utils/LICENSE b/conf/site/node_modules/sass-loader/node_modules/schema-utils/LICENSE new file mode 100644 index 00000000..8c11fc72 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/schema-utils/LICENSE @@ -0,0 +1,20 @@ +Copyright JS Foundation and other contributors + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/conf/site/node_modules/sass-loader/node_modules/schema-utils/README.md b/conf/site/node_modules/sass-loader/node_modules/schema-utils/README.md new file mode 100644 index 00000000..a0150e4c --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/schema-utils/README.md @@ -0,0 +1,276 @@ +
+ + + + + + +
+ +[![npm][npm]][npm-url] +[![node][node]][node-url] +[![deps][deps]][deps-url] +[![tests][tests]][tests-url] +[![coverage][cover]][cover-url] +[![chat][chat]][chat-url] +[![size][size]][size-url] + +# schema-utils + +Package for validate options in loaders and plugins. + +## Getting Started + +To begin, you'll need to install `schema-utils`: + +```console +npm install schema-utils +``` + +## API + +**schema.json** + +```json +{ + "type": "object", + "properties": { + "option": { + "type": "boolean" + } + }, + "additionalProperties": false +} +``` + +```js +import schema from './path/to/schema.json'; +import validate from 'schema-utils'; + +const options = { option: true }; +const configuration = { name: 'Loader Name/Plugin Name/Name' }; + +validate(schema, options, configuration); +``` + +### `schema` + +Type: `String` + +JSON schema. + +Simple example of schema: + +```json +{ + "type": "object", + "properties": { + "name": { + "description": "This is description of option.", + "type": "string" + } + }, + "additionalProperties": false +} +``` + +### `options` + +Type: `Object` + +Object with options. + +```js +validate( + schema, + { + name: 123, + }, + { name: 'MyPlugin' } +); +``` + +### `configuration` + +Allow to configure validator. + +There is an alternative method to configure the `name` and`baseDataPath` options via the `title` property in the schema. +For example: + +```json +{ + "title": "My Loader options", + "type": "object", + "properties": { + "name": { + "description": "This is description of option.", + "type": "string" + } + }, + "additionalProperties": false +} +``` + +The last word used for the `baseDataPath` option, other words used for the `name` option. +Based on the example above the `name` option equals `My Loader`, the `baseDataPath` option equals `options`. + +#### `name` + +Type: `Object` +Default: `"Object"` + +Allow to setup name in validation errors. + +```js +validate(schema, options, { name: 'MyPlugin' }); +``` + +```shell +Invalid configuration object. MyPlugin has been initialised using a configuration object that does not match the API schema. + - configuration.optionName should be a integer. +``` + +#### `baseDataPath` + +Type: `String` +Default: `"configuration"` + +Allow to setup base data path in validation errors. + +```js +validate(schema, options, { name: 'MyPlugin', baseDataPath: 'options' }); +``` + +```shell +Invalid options object. MyPlugin has been initialised using an options object that does not match the API schema. + - options.optionName should be a integer. +``` + +#### `postFormatter` + +Type: `Function` +Default: `undefined` + +Allow to reformat errors. + +```js +validate(schema, options, { + name: 'MyPlugin', + postFormatter: (formattedError, error) => { + if (error.keyword === 'type') { + return `${formattedError}\nAdditional Information.`; + } + + return formattedError; + }, +}); +``` + +```shell +Invalid options object. MyPlugin has been initialized using an options object that does not match the API schema. + - options.optionName should be a integer. + Additional Information. +``` + +## Examples + +**schema.json** + +```json +{ + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "test": { + "anyOf": [ + { "type": "array" }, + { "type": "string" }, + { "instanceof": "RegExp" } + ] + }, + "transform": { + "instanceof": "Function" + }, + "sourceMap": { + "type": "boolean" + } + }, + "additionalProperties": false +} +``` + +### `Loader` + +```js +import { getOptions } from 'loader-utils'; +import validateOptions from 'schema-utils'; + +import schema from 'path/to/schema.json'; + +function loader(src, map) { + const options = getOptions(this) || {}; + + validateOptions(schema, options, { + name: 'Loader Name', + baseDataPath: 'options', + }); + + // Code... +} + +export default loader; +``` + +### `Plugin` + +```js +import validateOptions from 'schema-utils'; + +import schema from 'path/to/schema.json'; + +class Plugin { + constructor(options) { + validateOptions(schema, options, { + name: 'Plugin Name', + baseDataPath: 'options', + }); + + this.options = options; + } + + apply(compiler) { + // Code... + } +} + +export default Plugin; +``` + +## Contributing + +Please take a moment to read our contributing guidelines if you haven't yet done so. + +[CONTRIBUTING](./.github/CONTRIBUTING.md) + +## License + +[MIT](./LICENSE) + +[npm]: https://img.shields.io/npm/v/schema-utils.svg +[npm-url]: https://npmjs.com/package/schema-utils +[node]: https://img.shields.io/node/v/schema-utils.svg +[node-url]: https://nodejs.org +[deps]: https://david-dm.org/webpack/schema-utils.svg +[deps-url]: https://david-dm.org/webpack/schema-utils +[tests]: https://github.com/webpack/schema-utils/workflows/schema-utils/badge.svg +[tests-url]: https://github.com/webpack/schema-utils/actions +[cover]: https://codecov.io/gh/webpack/schema-utils/branch/master/graph/badge.svg +[cover-url]: https://codecov.io/gh/webpack/schema-utils +[chat]: https://badges.gitter.im/webpack/webpack.svg +[chat-url]: https://gitter.im/webpack/webpack +[size]: https://packagephobia.com/badge?p=schema-utils +[size-url]: https://packagephobia.com/result?p=schema-utils diff --git a/conf/site/node_modules/sass-loader/node_modules/schema-utils/declarations/ValidationError.d.ts b/conf/site/node_modules/sass-loader/node_modules/schema-utils/declarations/ValidationError.d.ts new file mode 100644 index 00000000..1b53f70f --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/schema-utils/declarations/ValidationError.d.ts @@ -0,0 +1,88 @@ +export default ValidationError; +export type JSONSchema6 = import('json-schema').JSONSchema6; +export type JSONSchema7 = import('json-schema').JSONSchema7; +export type Schema = + | (import('json-schema').JSONSchema4 & import('./validate').Extend) + | (import('json-schema').JSONSchema6 & import('./validate').Extend) + | (import('json-schema').JSONSchema7 & import('./validate').Extend); +export type ValidationErrorConfiguration = { + name?: string | undefined; + baseDataPath?: string | undefined; + postFormatter?: import('./validate').PostFormatter | undefined; +}; +export type PostFormatter = ( + formattedError: string, + error: import('ajv').ErrorObject & { + children?: import('ajv').ErrorObject[] | undefined; + } +) => string; +export type SchemaUtilErrorObject = import('ajv').ErrorObject & { + children?: import('ajv').ErrorObject[] | undefined; +}; +export type SPECIFICITY = number; +declare class ValidationError extends Error { + /** + * @param {Array} errors + * @param {Schema} schema + * @param {ValidationErrorConfiguration} configuration + */ + constructor( + errors: Array, + schema: Schema, + configuration?: ValidationErrorConfiguration + ); + /** @type {Array} */ + errors: Array; + /** @type {Schema} */ + schema: Schema; + /** @type {string} */ + headerName: string; + /** @type {string} */ + baseDataPath: string; + /** @type {PostFormatter | null} */ + postFormatter: PostFormatter | null; + /** + * @param {string} path + * @returns {Schema} + */ + getSchemaPart(path: string): Schema; + /** + * @param {Schema} schema + * @param {boolean} logic + * @param {Array} prevSchemas + * @returns {string} + */ + formatSchema( + schema: Schema, + logic?: boolean, + prevSchemas?: Array + ): string; + /** + * @param {Schema=} schemaPart + * @param {(boolean | Array)=} additionalPath + * @param {boolean=} needDot + * @param {boolean=} logic + * @returns {string} + */ + getSchemaPartText( + schemaPart?: Schema | undefined, + additionalPath?: (boolean | Array) | undefined, + needDot?: boolean | undefined, + logic?: boolean | undefined + ): string; + /** + * @param {Schema=} schemaPart + * @returns {string} + */ + getSchemaPartDescription(schemaPart?: Schema | undefined): string; + /** + * @param {SchemaUtilErrorObject} error + * @returns {string} + */ + formatValidationError(error: SchemaUtilErrorObject): string; + /** + * @param {Array} errors + * @returns {string} + */ + formatValidationErrors(errors: Array): string; +} diff --git a/conf/site/node_modules/sass-loader/node_modules/schema-utils/declarations/index.d.ts b/conf/site/node_modules/sass-loader/node_modules/schema-utils/declarations/index.d.ts new file mode 100644 index 00000000..2ee7d9e9 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/schema-utils/declarations/index.d.ts @@ -0,0 +1,2 @@ +declare const _exports: typeof import('./validate').default; +export = _exports; diff --git a/conf/site/node_modules/sass-loader/node_modules/schema-utils/declarations/keywords/absolutePath.d.ts b/conf/site/node_modules/sass-loader/node_modules/schema-utils/declarations/keywords/absolutePath.d.ts new file mode 100644 index 00000000..6843dd63 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/schema-utils/declarations/keywords/absolutePath.d.ts @@ -0,0 +1,12 @@ +export default addAbsolutePathKeyword; +export type Ajv = import('ajv').Ajv; +export type ValidateFunction = import('ajv').ValidateFunction; +export type SchemaUtilErrorObject = import('ajv').ErrorObject & { + children?: import('ajv').ErrorObject[] | undefined; +}; +/** + * + * @param {Ajv} ajv + * @returns {Ajv} + */ +declare function addAbsolutePathKeyword(ajv: Ajv): Ajv; diff --git a/conf/site/node_modules/sass-loader/node_modules/schema-utils/declarations/util/Range.d.ts b/conf/site/node_modules/sass-loader/node_modules/schema-utils/declarations/util/Range.d.ts new file mode 100644 index 00000000..d28de383 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/schema-utils/declarations/util/Range.d.ts @@ -0,0 +1,82 @@ +export = Range; +/** + * @typedef {[number, boolean]} RangeValue + */ +/** + * @callback RangeValueCallback + * @param {RangeValue} rangeValue + * @returns {boolean} + */ +declare class Range { + /** + * @param {"left" | "right"} side + * @param {boolean} exclusive + * @returns {">" | ">=" | "<" | "<="} + */ + static getOperator( + side: 'left' | 'right', + exclusive: boolean + ): '>' | '>=' | '<' | '<='; + /** + * @param {number} value + * @param {boolean} logic is not logic applied + * @param {boolean} exclusive is range exclusive + * @returns {string} + */ + static formatRight(value: number, logic: boolean, exclusive: boolean): string; + /** + * @param {number} value + * @param {boolean} logic is not logic applied + * @param {boolean} exclusive is range exclusive + * @returns {string} + */ + static formatLeft(value: number, logic: boolean, exclusive: boolean): string; + /** + * @param {number} start left side value + * @param {number} end right side value + * @param {boolean} startExclusive is range exclusive from left side + * @param {boolean} endExclusive is range exclusive from right side + * @param {boolean} logic is not logic applied + * @returns {string} + */ + static formatRange( + start: number, + end: number, + startExclusive: boolean, + endExclusive: boolean, + logic: boolean + ): string; + /** + * @param {Array} values + * @param {boolean} logic is not logic applied + * @return {RangeValue} computed value and it's exclusive flag + */ + static getRangeValue( + values: Array<[number, boolean]>, + logic: boolean + ): [number, boolean]; + /** @type {Array} */ + _left: Array<[number, boolean]>; + /** @type {Array} */ + _right: Array<[number, boolean]>; + /** + * @param {number} value + * @param {boolean=} exclusive + */ + left(value: number, exclusive?: boolean | undefined): void; + /** + * @param {number} value + * @param {boolean=} exclusive + */ + right(value: number, exclusive?: boolean | undefined): void; + /** + * @param {boolean} logic is not logic applied + * @return {string} "smart" range string representation + */ + format(logic?: boolean): string; +} +declare namespace Range { + export { RangeValue, RangeValueCallback }; +} +type RangeValue = [number, boolean]; +type RangeValueCallback = (rangeValue: [number, boolean]) => boolean; diff --git a/conf/site/node_modules/sass-loader/node_modules/schema-utils/declarations/util/hints.d.ts b/conf/site/node_modules/sass-loader/node_modules/schema-utils/declarations/util/hints.d.ts new file mode 100644 index 00000000..39412aa5 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/schema-utils/declarations/util/hints.d.ts @@ -0,0 +1,6 @@ +export function stringHints(schema: Schema, logic: boolean): string[]; +export function numberHints(schema: Schema, logic: boolean): string[]; +export type Schema = + | (import('json-schema').JSONSchema4 & import('../validate').Extend) + | (import('json-schema').JSONSchema6 & import('../validate').Extend) + | (import('json-schema').JSONSchema7 & import('../validate').Extend); diff --git a/conf/site/node_modules/sass-loader/node_modules/schema-utils/declarations/validate.d.ts b/conf/site/node_modules/sass-loader/node_modules/schema-utils/declarations/validate.d.ts new file mode 100644 index 00000000..6a3a5b8a --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/schema-utils/declarations/validate.d.ts @@ -0,0 +1,43 @@ +export default validate; +export type JSONSchema4 = import('json-schema').JSONSchema4; +export type JSONSchema6 = import('json-schema').JSONSchema6; +export type JSONSchema7 = import('json-schema').JSONSchema7; +export type ErrorObject = import('ajv').ErrorObject; +export type Extend = { + formatMinimum?: number | undefined; + formatMaximum?: number | undefined; + formatExclusiveMinimum?: boolean | undefined; + formatExclusiveMaximum?: boolean | undefined; +}; +export type Schema = + | (import('json-schema').JSONSchema4 & Extend) + | (import('json-schema').JSONSchema6 & Extend) + | (import('json-schema').JSONSchema7 & Extend); +export type SchemaUtilErrorObject = import('ajv').ErrorObject & { + children?: import('ajv').ErrorObject[] | undefined; +}; +export type PostFormatter = ( + formattedError: string, + error: SchemaUtilErrorObject +) => string; +export type ValidationErrorConfiguration = { + name?: string | undefined; + baseDataPath?: string | undefined; + postFormatter?: PostFormatter | undefined; +}; +/** + * @param {Schema} schema + * @param {Array | object} options + * @param {ValidationErrorConfiguration=} configuration + * @returns {void} + */ +declare function validate( + schema: Schema, + options: Array | object, + configuration?: ValidationErrorConfiguration | undefined +): void; +declare namespace validate { + export { ValidationError }; + export { ValidationError as ValidateError }; +} +import ValidationError from './ValidationError'; diff --git a/conf/site/node_modules/sass-loader/node_modules/schema-utils/dist/ValidationError.js b/conf/site/node_modules/sass-loader/node_modules/schema-utils/dist/ValidationError.js new file mode 100644 index 00000000..ae5bd94c --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/schema-utils/dist/ValidationError.js @@ -0,0 +1,1261 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = void 0; + +const { + stringHints, + numberHints +} = require('./util/hints'); +/** @typedef {import("json-schema").JSONSchema6} JSONSchema6 */ + +/** @typedef {import("json-schema").JSONSchema7} JSONSchema7 */ + +/** @typedef {import("./validate").Schema} Schema */ + +/** @typedef {import("./validate").ValidationErrorConfiguration} ValidationErrorConfiguration */ + +/** @typedef {import("./validate").PostFormatter} PostFormatter */ + +/** @typedef {import("./validate").SchemaUtilErrorObject} SchemaUtilErrorObject */ + +/** @enum {number} */ + + +const SPECIFICITY = { + type: 1, + not: 1, + oneOf: 1, + anyOf: 1, + if: 1, + enum: 1, + const: 1, + instanceof: 1, + required: 2, + pattern: 2, + patternRequired: 2, + format: 2, + formatMinimum: 2, + formatMaximum: 2, + minimum: 2, + exclusiveMinimum: 2, + maximum: 2, + exclusiveMaximum: 2, + multipleOf: 2, + uniqueItems: 2, + contains: 2, + minLength: 2, + maxLength: 2, + minItems: 2, + maxItems: 2, + minProperties: 2, + maxProperties: 2, + dependencies: 2, + propertyNames: 2, + additionalItems: 2, + additionalProperties: 2, + absolutePath: 2 +}; +/** + * + * @param {Array} array + * @param {(item: SchemaUtilErrorObject) => number} fn + * @returns {Array} + */ + +function filterMax(array, fn) { + const evaluatedMax = array.reduce((max, item) => Math.max(max, fn(item)), 0); + return array.filter(item => fn(item) === evaluatedMax); +} +/** + * + * @param {Array} children + * @returns {Array} + */ + + +function filterChildren(children) { + let newChildren = children; + newChildren = filterMax(newChildren, + /** + * + * @param {SchemaUtilErrorObject} error + * @returns {number} + */ + error => error.dataPath ? error.dataPath.length : 0); + newChildren = filterMax(newChildren, + /** + * @param {SchemaUtilErrorObject} error + * @returns {number} + */ + error => SPECIFICITY[ + /** @type {keyof typeof SPECIFICITY} */ + error.keyword] || 2); + return newChildren; +} +/** + * Find all children errors + * @param {Array} children + * @param {Array} schemaPaths + * @return {number} returns index of first child + */ + + +function findAllChildren(children, schemaPaths) { + let i = children.length - 1; + + const predicate = + /** + * @param {string} schemaPath + * @returns {boolean} + */ + schemaPath => children[i].schemaPath.indexOf(schemaPath) !== 0; + + while (i > -1 && !schemaPaths.every(predicate)) { + if (children[i].keyword === 'anyOf' || children[i].keyword === 'oneOf') { + const refs = extractRefs(children[i]); + const childrenStart = findAllChildren(children.slice(0, i), refs.concat(children[i].schemaPath)); + i = childrenStart - 1; + } else { + i -= 1; + } + } + + return i + 1; +} +/** + * Extracts all refs from schema + * @param {SchemaUtilErrorObject} error + * @return {Array} + */ + + +function extractRefs(error) { + const { + schema + } = error; + + if (!Array.isArray(schema)) { + return []; + } + + return schema.map(({ + $ref + }) => $ref).filter(s => s); +} +/** + * Groups children by their first level parent (assuming that error is root) + * @param {Array} children + * @return {Array} + */ + + +function groupChildrenByFirstChild(children) { + const result = []; + let i = children.length - 1; + + while (i > 0) { + const child = children[i]; + + if (child.keyword === 'anyOf' || child.keyword === 'oneOf') { + const refs = extractRefs(child); + const childrenStart = findAllChildren(children.slice(0, i), refs.concat(child.schemaPath)); + + if (childrenStart !== i) { + result.push(Object.assign({}, child, { + children: children.slice(childrenStart, i) + })); + i = childrenStart; + } else { + result.push(child); + } + } else { + result.push(child); + } + + i -= 1; + } + + if (i === 0) { + result.push(children[i]); + } + + return result.reverse(); +} +/** + * @param {string} str + * @param {string} prefix + * @returns {string} + */ + + +function indent(str, prefix) { + return str.replace(/\n(?!$)/g, `\n${prefix}`); +} +/** + * @param {Schema} schema + * @returns {schema is (Schema & {not: Schema})} + */ + + +function hasNotInSchema(schema) { + return !!schema.not; +} +/** + * @param {Schema} schema + * @return {Schema} + */ + + +function findFirstTypedSchema(schema) { + if (hasNotInSchema(schema)) { + return findFirstTypedSchema(schema.not); + } + + return schema; +} +/** + * @param {Schema} schema + * @return {boolean} + */ + + +function canApplyNot(schema) { + const typedSchema = findFirstTypedSchema(schema); + return likeNumber(typedSchema) || likeInteger(typedSchema) || likeString(typedSchema) || likeNull(typedSchema) || likeBoolean(typedSchema); +} +/** + * @param {any} maybeObj + * @returns {boolean} + */ + + +function isObject(maybeObj) { + return typeof maybeObj === 'object' && maybeObj !== null; +} +/** + * @param {Schema} schema + * @returns {boolean} + */ + + +function likeNumber(schema) { + return schema.type === 'number' || typeof schema.minimum !== 'undefined' || typeof schema.exclusiveMinimum !== 'undefined' || typeof schema.maximum !== 'undefined' || typeof schema.exclusiveMaximum !== 'undefined' || typeof schema.multipleOf !== 'undefined'; +} +/** + * @param {Schema} schema + * @returns {boolean} + */ + + +function likeInteger(schema) { + return schema.type === 'integer' || typeof schema.minimum !== 'undefined' || typeof schema.exclusiveMinimum !== 'undefined' || typeof schema.maximum !== 'undefined' || typeof schema.exclusiveMaximum !== 'undefined' || typeof schema.multipleOf !== 'undefined'; +} +/** + * @param {Schema} schema + * @returns {boolean} + */ + + +function likeString(schema) { + return schema.type === 'string' || typeof schema.minLength !== 'undefined' || typeof schema.maxLength !== 'undefined' || typeof schema.pattern !== 'undefined' || typeof schema.format !== 'undefined' || typeof schema.formatMinimum !== 'undefined' || typeof schema.formatMaximum !== 'undefined'; +} +/** + * @param {Schema} schema + * @returns {boolean} + */ + + +function likeBoolean(schema) { + return schema.type === 'boolean'; +} +/** + * @param {Schema} schema + * @returns {boolean} + */ + + +function likeArray(schema) { + return schema.type === 'array' || typeof schema.minItems === 'number' || typeof schema.maxItems === 'number' || typeof schema.uniqueItems !== 'undefined' || typeof schema.items !== 'undefined' || typeof schema.additionalItems !== 'undefined' || typeof schema.contains !== 'undefined'; +} +/** + * @param {Schema & {patternRequired?: Array}} schema + * @returns {boolean} + */ + + +function likeObject(schema) { + return schema.type === 'object' || typeof schema.minProperties !== 'undefined' || typeof schema.maxProperties !== 'undefined' || typeof schema.required !== 'undefined' || typeof schema.properties !== 'undefined' || typeof schema.patternProperties !== 'undefined' || typeof schema.additionalProperties !== 'undefined' || typeof schema.dependencies !== 'undefined' || typeof schema.propertyNames !== 'undefined' || typeof schema.patternRequired !== 'undefined'; +} +/** + * @param {Schema} schema + * @returns {boolean} + */ + + +function likeNull(schema) { + return schema.type === 'null'; +} +/** + * @param {string} type + * @returns {string} + */ + + +function getArticle(type) { + if (/^[aeiou]/i.test(type)) { + return 'an'; + } + + return 'a'; +} +/** + * @param {Schema=} schema + * @returns {string} + */ + + +function getSchemaNonTypes(schema) { + if (!schema) { + return ''; + } + + if (!schema.type) { + if (likeNumber(schema) || likeInteger(schema)) { + return ' | should be any non-number'; + } + + if (likeString(schema)) { + return ' | should be any non-string'; + } + + if (likeArray(schema)) { + return ' | should be any non-array'; + } + + if (likeObject(schema)) { + return ' | should be any non-object'; + } + } + + return ''; +} +/** + * @param {Array} hints + * @returns {string} + */ + + +function formatHints(hints) { + return hints.length > 0 ? `(${hints.join(', ')})` : ''; +} +/** + * @param {Schema} schema + * @param {boolean} logic + * @returns {string[]} + */ + + +function getHints(schema, logic) { + if (likeNumber(schema) || likeInteger(schema)) { + return numberHints(schema, logic); + } else if (likeString(schema)) { + return stringHints(schema, logic); + } + + return []; +} + +class ValidationError extends Error { + /** + * @param {Array} errors + * @param {Schema} schema + * @param {ValidationErrorConfiguration} configuration + */ + constructor(errors, schema, configuration = {}) { + super(); + /** @type {string} */ + + this.name = 'ValidationError'; + /** @type {Array} */ + + this.errors = errors; + /** @type {Schema} */ + + this.schema = schema; + let headerNameFromSchema; + let baseDataPathFromSchema; + + if (schema.title && (!configuration.name || !configuration.baseDataPath)) { + const splittedTitleFromSchema = schema.title.match(/^(.+) (.+)$/); + + if (splittedTitleFromSchema) { + if (!configuration.name) { + [, headerNameFromSchema] = splittedTitleFromSchema; + } + + if (!configuration.baseDataPath) { + [,, baseDataPathFromSchema] = splittedTitleFromSchema; + } + } + } + /** @type {string} */ + + + this.headerName = configuration.name || headerNameFromSchema || 'Object'; + /** @type {string} */ + + this.baseDataPath = configuration.baseDataPath || baseDataPathFromSchema || 'configuration'; + /** @type {PostFormatter | null} */ + + this.postFormatter = configuration.postFormatter || null; + const header = `Invalid ${this.baseDataPath} object. ${this.headerName} has been initialized using ${getArticle(this.baseDataPath)} ${this.baseDataPath} object that does not match the API schema.\n`; + /** @type {string} */ + + this.message = `${header}${this.formatValidationErrors(errors)}`; + Error.captureStackTrace(this, this.constructor); + } + /** + * @param {string} path + * @returns {Schema} + */ + + + getSchemaPart(path) { + const newPath = path.split('/'); + let schemaPart = this.schema; + + for (let i = 1; i < newPath.length; i++) { + const inner = schemaPart[ + /** @type {keyof Schema} */ + newPath[i]]; + + if (!inner) { + break; + } + + schemaPart = inner; + } + + return schemaPart; + } + /** + * @param {Schema} schema + * @param {boolean} logic + * @param {Array} prevSchemas + * @returns {string} + */ + + + formatSchema(schema, logic = true, prevSchemas = []) { + let newLogic = logic; + + const formatInnerSchema = + /** + * + * @param {Object} innerSchema + * @param {boolean=} addSelf + * @returns {string} + */ + (innerSchema, addSelf) => { + if (!addSelf) { + return this.formatSchema(innerSchema, newLogic, prevSchemas); + } + + if (prevSchemas.includes(innerSchema)) { + return '(recursive)'; + } + + return this.formatSchema(innerSchema, newLogic, prevSchemas.concat(schema)); + }; + + if (hasNotInSchema(schema) && !likeObject(schema)) { + if (canApplyNot(schema.not)) { + newLogic = !logic; + return formatInnerSchema(schema.not); + } + + const needApplyLogicHere = !schema.not.not; + const prefix = logic ? '' : 'non '; + newLogic = !logic; + return needApplyLogicHere ? prefix + formatInnerSchema(schema.not) : formatInnerSchema(schema.not); + } + + if ( + /** @type {Schema & {instanceof: string | Array}} */ + schema.instanceof) { + const { + instanceof: value + } = + /** @type {Schema & {instanceof: string | Array}} */ + schema; + const values = !Array.isArray(value) ? [value] : value; + return values.map( + /** + * @param {string} item + * @returns {string} + */ + item => item === 'Function' ? 'function' : item).join(' | '); + } + + if (schema.enum) { + return ( + /** @type {Array} */ + schema.enum.map(item => JSON.stringify(item)).join(' | ') + ); + } + + if (typeof schema.const !== 'undefined') { + return JSON.stringify(schema.const); + } + + if (schema.oneOf) { + return ( + /** @type {Array} */ + schema.oneOf.map(item => formatInnerSchema(item, true)).join(' | ') + ); + } + + if (schema.anyOf) { + return ( + /** @type {Array} */ + schema.anyOf.map(item => formatInnerSchema(item, true)).join(' | ') + ); + } + + if (schema.allOf) { + return ( + /** @type {Array} */ + schema.allOf.map(item => formatInnerSchema(item, true)).join(' & ') + ); + } + + if ( + /** @type {JSONSchema7} */ + schema.if) { + const { + if: ifValue, + then: thenValue, + else: elseValue + } = + /** @type {JSONSchema7} */ + schema; + return `${ifValue ? `if ${formatInnerSchema(ifValue)}` : ''}${thenValue ? ` then ${formatInnerSchema(thenValue)}` : ''}${elseValue ? ` else ${formatInnerSchema(elseValue)}` : ''}`; + } + + if (schema.$ref) { + return formatInnerSchema(this.getSchemaPart(schema.$ref), true); + } + + if (likeNumber(schema) || likeInteger(schema)) { + const [type, ...hints] = getHints(schema, logic); + const str = `${type}${hints.length > 0 ? ` ${formatHints(hints)}` : ''}`; + return logic ? str : hints.length > 0 ? `non-${type} | ${str}` : `non-${type}`; + } + + if (likeString(schema)) { + const [type, ...hints] = getHints(schema, logic); + const str = `${type}${hints.length > 0 ? ` ${formatHints(hints)}` : ''}`; + return logic ? str : str === 'string' ? 'non-string' : `non-string | ${str}`; + } + + if (likeBoolean(schema)) { + return `${logic ? '' : 'non-'}boolean`; + } + + if (likeArray(schema)) { + // not logic already applied in formatValidationError + newLogic = true; + const hints = []; + + if (typeof schema.minItems === 'number') { + hints.push(`should not have fewer than ${schema.minItems} item${schema.minItems > 1 ? 's' : ''}`); + } + + if (typeof schema.maxItems === 'number') { + hints.push(`should not have more than ${schema.maxItems} item${schema.maxItems > 1 ? 's' : ''}`); + } + + if (schema.uniqueItems) { + hints.push('should not have duplicate items'); + } + + const hasAdditionalItems = typeof schema.additionalItems === 'undefined' || Boolean(schema.additionalItems); + let items = ''; + + if (schema.items) { + if (Array.isArray(schema.items) && schema.items.length > 0) { + items = `${ + /** @type {Array} */ + schema.items.map(item => formatInnerSchema(item)).join(', ')}`; + + if (hasAdditionalItems) { + if (schema.additionalItems && isObject(schema.additionalItems) && Object.keys(schema.additionalItems).length > 0) { + hints.push(`additional items should be ${formatInnerSchema(schema.additionalItems)}`); + } + } + } else if (schema.items && Object.keys(schema.items).length > 0) { + // "additionalItems" is ignored + items = `${formatInnerSchema(schema.items)}`; + } else { + // Fallback for empty `items` value + items = 'any'; + } + } else { + // "additionalItems" is ignored + items = 'any'; + } + + if (schema.contains && Object.keys(schema.contains).length > 0) { + hints.push(`should contains at least one ${this.formatSchema(schema.contains)} item`); + } + + return `[${items}${hasAdditionalItems ? ', ...' : ''}]${hints.length > 0 ? ` (${hints.join(', ')})` : ''}`; + } + + if (likeObject(schema)) { + // not logic already applied in formatValidationError + newLogic = true; + const hints = []; + + if (typeof schema.minProperties === 'number') { + hints.push(`should not have fewer than ${schema.minProperties} ${schema.minProperties > 1 ? 'properties' : 'property'}`); + } + + if (typeof schema.maxProperties === 'number') { + hints.push(`should not have more than ${schema.maxProperties} ${schema.minProperties && schema.minProperties > 1 ? 'properties' : 'property'}`); + } + + if (schema.patternProperties && Object.keys(schema.patternProperties).length > 0) { + const patternProperties = Object.keys(schema.patternProperties); + hints.push(`additional property names should match pattern${patternProperties.length > 1 ? 's' : ''} ${patternProperties.map(pattern => JSON.stringify(pattern)).join(' | ')}`); + } + + const properties = schema.properties ? Object.keys(schema.properties) : []; + const required = schema.required ? schema.required : []; + const allProperties = [...new Set( + /** @type {Array} */ + [].concat(required).concat(properties))]; + const objectStructure = allProperties.map(property => { + const isRequired = required.includes(property); // Some properties need quotes, maybe we should add check + // Maybe we should output type of property (`foo: string`), but it is looks very unreadable + + return `${property}${isRequired ? '' : '?'}`; + }).concat(typeof schema.additionalProperties === 'undefined' || Boolean(schema.additionalProperties) ? schema.additionalProperties && isObject(schema.additionalProperties) ? [`: ${formatInnerSchema(schema.additionalProperties)}`] : ['…'] : []).join(', '); + const { + dependencies, + propertyNames, + patternRequired + } = + /** @type {Schema & {patternRequired?: Array;}} */ + schema; + + if (dependencies) { + Object.keys(dependencies).forEach(dependencyName => { + const dependency = dependencies[dependencyName]; + + if (Array.isArray(dependency)) { + hints.push(`should have ${dependency.length > 1 ? 'properties' : 'property'} ${dependency.map(dep => `'${dep}'`).join(', ')} when property '${dependencyName}' is present`); + } else { + hints.push(`should be valid according to the schema ${formatInnerSchema(dependency)} when property '${dependencyName}' is present`); + } + }); + } + + if (propertyNames && Object.keys(propertyNames).length > 0) { + hints.push(`each property name should match format ${JSON.stringify(schema.propertyNames.format)}`); + } + + if (patternRequired && patternRequired.length > 0) { + hints.push(`should have property matching pattern ${patternRequired.map( + /** + * @param {string} item + * @returns {string} + */ + item => JSON.stringify(item))}`); + } + + return `object {${objectStructure ? ` ${objectStructure} ` : ''}}${hints.length > 0 ? ` (${hints.join(', ')})` : ''}`; + } + + if (likeNull(schema)) { + return `${logic ? '' : 'non-'}null`; + } + + if (Array.isArray(schema.type)) { + // not logic already applied in formatValidationError + return `${schema.type.join(' | ')}`; + } // Fallback for unknown keywords + // not logic already applied in formatValidationError + + /* istanbul ignore next */ + + + return JSON.stringify(schema, null, 2); + } + /** + * @param {Schema=} schemaPart + * @param {(boolean | Array)=} additionalPath + * @param {boolean=} needDot + * @param {boolean=} logic + * @returns {string} + */ + + + getSchemaPartText(schemaPart, additionalPath, needDot = false, logic = true) { + if (!schemaPart) { + return ''; + } + + if (Array.isArray(additionalPath)) { + for (let i = 0; i < additionalPath.length; i++) { + /** @type {Schema | undefined} */ + const inner = schemaPart[ + /** @type {keyof Schema} */ + additionalPath[i]]; + + if (inner) { + // eslint-disable-next-line no-param-reassign + schemaPart = inner; + } else { + break; + } + } + } + + while (schemaPart.$ref) { + // eslint-disable-next-line no-param-reassign + schemaPart = this.getSchemaPart(schemaPart.$ref); + } + + let schemaText = `${this.formatSchema(schemaPart, logic)}${needDot ? '.' : ''}`; + + if (schemaPart.description) { + schemaText += `\n-> ${schemaPart.description}`; + } + + return schemaText; + } + /** + * @param {Schema=} schemaPart + * @returns {string} + */ + + + getSchemaPartDescription(schemaPart) { + if (!schemaPart) { + return ''; + } + + while (schemaPart.$ref) { + // eslint-disable-next-line no-param-reassign + schemaPart = this.getSchemaPart(schemaPart.$ref); + } + + if (schemaPart.description) { + return `\n-> ${schemaPart.description}`; + } + + return ''; + } + /** + * @param {SchemaUtilErrorObject} error + * @returns {string} + */ + + + formatValidationError(error) { + const { + keyword, + dataPath: errorDataPath + } = error; + const dataPath = `${this.baseDataPath}${errorDataPath}`; + + switch (keyword) { + case 'type': + { + const { + parentSchema, + params + } = error; // eslint-disable-next-line default-case + + switch ( + /** @type {import("ajv").TypeParams} */ + params.type) { + case 'number': + return `${dataPath} should be a ${this.getSchemaPartText(parentSchema, false, true)}`; + + case 'integer': + return `${dataPath} should be a ${this.getSchemaPartText(parentSchema, false, true)}`; + + case 'string': + return `${dataPath} should be a ${this.getSchemaPartText(parentSchema, false, true)}`; + + case 'boolean': + return `${dataPath} should be a ${this.getSchemaPartText(parentSchema, false, true)}`; + + case 'array': + return `${dataPath} should be an array:\n${this.getSchemaPartText(parentSchema)}`; + + case 'object': + return `${dataPath} should be an object:\n${this.getSchemaPartText(parentSchema)}`; + + case 'null': + return `${dataPath} should be a ${this.getSchemaPartText(parentSchema, false, true)}`; + + default: + return `${dataPath} should be:\n${this.getSchemaPartText(parentSchema)}`; + } + } + + case 'instanceof': + { + const { + parentSchema + } = error; + return `${dataPath} should be an instance of ${this.getSchemaPartText(parentSchema, false, true)}`; + } + + case 'pattern': + { + const { + params, + parentSchema + } = error; + const { + pattern + } = + /** @type {import("ajv").PatternParams} */ + params; + return `${dataPath} should match pattern ${JSON.stringify(pattern)}${getSchemaNonTypes(parentSchema)}.${this.getSchemaPartDescription(parentSchema)}`; + } + + case 'format': + { + const { + params, + parentSchema + } = error; + const { + format + } = + /** @type {import("ajv").FormatParams} */ + params; + return `${dataPath} should match format ${JSON.stringify(format)}${getSchemaNonTypes(parentSchema)}.${this.getSchemaPartDescription(parentSchema)}`; + } + + case 'formatMinimum': + case 'formatMaximum': + { + const { + params, + parentSchema + } = error; + const { + comparison, + limit + } = + /** @type {import("ajv").ComparisonParams} */ + params; + return `${dataPath} should be ${comparison} ${JSON.stringify(limit)}${getSchemaNonTypes(parentSchema)}.${this.getSchemaPartDescription(parentSchema)}`; + } + + case 'minimum': + case 'maximum': + case 'exclusiveMinimum': + case 'exclusiveMaximum': + { + const { + parentSchema, + params + } = error; + const { + comparison, + limit + } = + /** @type {import("ajv").ComparisonParams} */ + params; + const [, ...hints] = getHints( + /** @type {Schema} */ + parentSchema, true); + + if (hints.length === 0) { + hints.push(`should be ${comparison} ${limit}`); + } + + return `${dataPath} ${hints.join(' ')}${getSchemaNonTypes(parentSchema)}.${this.getSchemaPartDescription(parentSchema)}`; + } + + case 'multipleOf': + { + const { + params, + parentSchema + } = error; + const { + multipleOf + } = + /** @type {import("ajv").MultipleOfParams} */ + params; + return `${dataPath} should be multiple of ${multipleOf}${getSchemaNonTypes(parentSchema)}.${this.getSchemaPartDescription(parentSchema)}`; + } + + case 'patternRequired': + { + const { + params, + parentSchema + } = error; + const { + missingPattern + } = + /** @type {import("ajv").PatternRequiredParams} */ + params; + return `${dataPath} should have property matching pattern ${JSON.stringify(missingPattern)}${getSchemaNonTypes(parentSchema)}.${this.getSchemaPartDescription(parentSchema)}`; + } + + case 'minLength': + { + const { + params, + parentSchema + } = error; + const { + limit + } = + /** @type {import("ajv").LimitParams} */ + params; + + if (limit === 1) { + return `${dataPath} should be an non-empty string${getSchemaNonTypes(parentSchema)}.${this.getSchemaPartDescription(parentSchema)}`; + } + + const length = limit - 1; + return `${dataPath} should be longer than ${length} character${length > 1 ? 's' : ''}${getSchemaNonTypes(parentSchema)}.${this.getSchemaPartDescription(parentSchema)}`; + } + + case 'minItems': + { + const { + params, + parentSchema + } = error; + const { + limit + } = + /** @type {import("ajv").LimitParams} */ + params; + + if (limit === 1) { + return `${dataPath} should be an non-empty array${getSchemaNonTypes(parentSchema)}.${this.getSchemaPartDescription(parentSchema)}`; + } + + return `${dataPath} should not have fewer than ${limit} items${getSchemaNonTypes(parentSchema)}.${this.getSchemaPartDescription(parentSchema)}`; + } + + case 'minProperties': + { + const { + params, + parentSchema + } = error; + const { + limit + } = + /** @type {import("ajv").LimitParams} */ + params; + + if (limit === 1) { + return `${dataPath} should be an non-empty object${getSchemaNonTypes(parentSchema)}.${this.getSchemaPartDescription(parentSchema)}`; + } + + return `${dataPath} should not have fewer than ${limit} properties${getSchemaNonTypes(parentSchema)}.${this.getSchemaPartDescription(parentSchema)}`; + } + + case 'maxLength': + { + const { + params, + parentSchema + } = error; + const { + limit + } = + /** @type {import("ajv").LimitParams} */ + params; + const max = limit + 1; + return `${dataPath} should be shorter than ${max} character${max > 1 ? 's' : ''}${getSchemaNonTypes(parentSchema)}.${this.getSchemaPartDescription(parentSchema)}`; + } + + case 'maxItems': + { + const { + params, + parentSchema + } = error; + const { + limit + } = + /** @type {import("ajv").LimitParams} */ + params; + return `${dataPath} should not have more than ${limit} items${getSchemaNonTypes(parentSchema)}.${this.getSchemaPartDescription(parentSchema)}`; + } + + case 'maxProperties': + { + const { + params, + parentSchema + } = error; + const { + limit + } = + /** @type {import("ajv").LimitParams} */ + params; + return `${dataPath} should not have more than ${limit} properties${getSchemaNonTypes(parentSchema)}.${this.getSchemaPartDescription(parentSchema)}`; + } + + case 'uniqueItems': + { + const { + params, + parentSchema + } = error; + const { + i + } = + /** @type {import("ajv").UniqueItemsParams} */ + params; + return `${dataPath} should not contain the item '${error.data[i]}' twice${getSchemaNonTypes(parentSchema)}.${this.getSchemaPartDescription(parentSchema)}`; + } + + case 'additionalItems': + { + const { + params, + parentSchema + } = error; + const { + limit + } = + /** @type {import("ajv").LimitParams} */ + params; + return `${dataPath} should not have more than ${limit} items${getSchemaNonTypes(parentSchema)}. These items are valid:\n${this.getSchemaPartText(parentSchema)}`; + } + + case 'contains': + { + const { + parentSchema + } = error; + return `${dataPath} should contains at least one ${this.getSchemaPartText(parentSchema, ['contains'])} item${getSchemaNonTypes(parentSchema)}.`; + } + + case 'required': + { + const { + parentSchema, + params + } = error; + const missingProperty = + /** @type {import("ajv").DependenciesParams} */ + params.missingProperty.replace(/^\./, ''); + const hasProperty = parentSchema && Boolean( + /** @type {Schema} */ + parentSchema.properties && + /** @type {Schema} */ + parentSchema.properties[missingProperty]); + return `${dataPath} misses the property '${missingProperty}'${getSchemaNonTypes(parentSchema)}.${hasProperty ? ` Should be:\n${this.getSchemaPartText(parentSchema, ['properties', missingProperty])}` : this.getSchemaPartDescription(parentSchema)}`; + } + + case 'additionalProperties': + { + const { + params, + parentSchema + } = error; + const { + additionalProperty + } = + /** @type {import("ajv").AdditionalPropertiesParams} */ + params; + return `${dataPath} has an unknown property '${additionalProperty}'${getSchemaNonTypes(parentSchema)}. These properties are valid:\n${this.getSchemaPartText(parentSchema)}`; + } + + case 'dependencies': + { + const { + params, + parentSchema + } = error; + const { + property, + deps + } = + /** @type {import("ajv").DependenciesParams} */ + params; + const dependencies = deps.split(',').map( + /** + * @param {string} dep + * @returns {string} + */ + dep => `'${dep.trim()}'`).join(', '); + return `${dataPath} should have properties ${dependencies} when property '${property}' is present${getSchemaNonTypes(parentSchema)}.${this.getSchemaPartDescription(parentSchema)}`; + } + + case 'propertyNames': + { + const { + params, + parentSchema, + schema + } = error; + const { + propertyName + } = + /** @type {import("ajv").PropertyNamesParams} */ + params; + return `${dataPath} property name '${propertyName}' is invalid${getSchemaNonTypes(parentSchema)}. Property names should be match format ${JSON.stringify(schema.format)}.${this.getSchemaPartDescription(parentSchema)}`; + } + + case 'enum': + { + const { + parentSchema + } = error; + + if (parentSchema && + /** @type {Schema} */ + parentSchema.enum && + /** @type {Schema} */ + parentSchema.enum.length === 1) { + return `${dataPath} should be ${this.getSchemaPartText(parentSchema, false, true)}`; + } + + return `${dataPath} should be one of these:\n${this.getSchemaPartText(parentSchema)}`; + } + + case 'const': + { + const { + parentSchema + } = error; + return `${dataPath} should be equal to constant ${this.getSchemaPartText(parentSchema, false, true)}`; + } + + case 'not': + { + const postfix = likeObject( + /** @type {Schema} */ + error.parentSchema) ? `\n${this.getSchemaPartText(error.parentSchema)}` : ''; + const schemaOutput = this.getSchemaPartText(error.schema, false, false, false); + + if (canApplyNot(error.schema)) { + return `${dataPath} should be any ${schemaOutput}${postfix}.`; + } + + const { + schema, + parentSchema + } = error; + return `${dataPath} should not be ${this.getSchemaPartText(schema, false, true)}${parentSchema && likeObject(parentSchema) ? `\n${this.getSchemaPartText(parentSchema)}` : ''}`; + } + + case 'oneOf': + case 'anyOf': + { + const { + parentSchema, + children + } = error; + + if (children && children.length > 0) { + if (error.schema.length === 1) { + const lastChild = children[children.length - 1]; + const remainingChildren = children.slice(0, children.length - 1); + return this.formatValidationError(Object.assign({}, lastChild, { + children: remainingChildren, + parentSchema: Object.assign({}, parentSchema, lastChild.parentSchema) + })); + } + + let filteredChildren = filterChildren(children); + + if (filteredChildren.length === 1) { + return this.formatValidationError(filteredChildren[0]); + } + + filteredChildren = groupChildrenByFirstChild(filteredChildren); + return `${dataPath} should be one of these:\n${this.getSchemaPartText(parentSchema)}\nDetails:\n${filteredChildren.map( + /** + * @param {SchemaUtilErrorObject} nestedError + * @returns {string} + */ + nestedError => ` * ${indent(this.formatValidationError(nestedError), ' ')}`).join('\n')}`; + } + + return `${dataPath} should be one of these:\n${this.getSchemaPartText(parentSchema)}`; + } + + case 'if': + { + const { + params, + parentSchema + } = error; + const { + failingKeyword + } = + /** @type {import("ajv").IfParams} */ + params; + return `${dataPath} should match "${failingKeyword}" schema:\n${this.getSchemaPartText(parentSchema, [failingKeyword])}`; + } + + case 'absolutePath': + { + const { + message, + parentSchema + } = error; + return `${dataPath}: ${message}${this.getSchemaPartDescription(parentSchema)}`; + } + + /* istanbul ignore next */ + + default: + { + const { + message, + parentSchema + } = error; + const ErrorInJSON = JSON.stringify(error, null, 2); // For `custom`, `false schema`, `$ref` keywords + // Fallback for unknown keywords + + return `${dataPath} ${message} (${ErrorInJSON}).\n${this.getSchemaPartText(parentSchema, false)}`; + } + } + } + /** + * @param {Array} errors + * @returns {string} + */ + + + formatValidationErrors(errors) { + return errors.map(error => { + let formattedError = this.formatValidationError(error); + + if (this.postFormatter) { + formattedError = this.postFormatter(formattedError, error); + } + + return ` - ${indent(formattedError, ' ')}`; + }).join('\n'); + } + +} + +var _default = ValidationError; +exports.default = _default; \ No newline at end of file diff --git a/conf/site/node_modules/sass-loader/node_modules/schema-utils/dist/index.js b/conf/site/node_modules/sass-loader/node_modules/schema-utils/dist/index.js new file mode 100644 index 00000000..e7c67917 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/schema-utils/dist/index.js @@ -0,0 +1,5 @@ +"use strict"; + +const validate = require('./validate'); + +module.exports = validate.default; \ No newline at end of file diff --git a/conf/site/node_modules/sass-loader/node_modules/schema-utils/dist/keywords/absolutePath.js b/conf/site/node_modules/sass-loader/node_modules/schema-utils/dist/keywords/absolutePath.js new file mode 100644 index 00000000..1ff958f2 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/schema-utils/dist/keywords/absolutePath.js @@ -0,0 +1,93 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = void 0; + +/** @typedef {import("ajv").Ajv} Ajv */ + +/** @typedef {import("ajv").ValidateFunction} ValidateFunction */ + +/** @typedef {import("../validate").SchemaUtilErrorObject} SchemaUtilErrorObject */ + +/** + * @param {string} message + * @param {object} schema + * @param {string} data + * @returns {SchemaUtilErrorObject} + */ +function errorMessage(message, schema, data) { + return { + // @ts-ignore + // eslint-disable-next-line no-undefined + dataPath: undefined, + // @ts-ignore + // eslint-disable-next-line no-undefined + schemaPath: undefined, + keyword: 'absolutePath', + params: { + absolutePath: data + }, + message, + parentSchema: schema + }; +} +/** + * @param {boolean} shouldBeAbsolute + * @param {object} schema + * @param {string} data + * @returns {SchemaUtilErrorObject} + */ + + +function getErrorFor(shouldBeAbsolute, schema, data) { + const message = shouldBeAbsolute ? `The provided value ${JSON.stringify(data)} is not an absolute path!` : `A relative path is expected. However, the provided value ${JSON.stringify(data)} is an absolute path!`; + return errorMessage(message, schema, data); +} +/** + * + * @param {Ajv} ajv + * @returns {Ajv} + */ + + +function addAbsolutePathKeyword(ajv) { + ajv.addKeyword('absolutePath', { + errors: true, + type: 'string', + + compile(schema, parentSchema) { + /** @type {ValidateFunction} */ + const callback = data => { + let passes = true; + const isExclamationMarkPresent = data.includes('!'); + + if (isExclamationMarkPresent) { + callback.errors = [errorMessage(`The provided value ${JSON.stringify(data)} contains exclamation mark (!) which is not allowed because it's reserved for loader syntax.`, parentSchema, data)]; + passes = false; + } // ?:[A-Za-z]:\\ - Windows absolute path + // \\\\ - Windows network absolute path + // \/ - Unix-like OS absolute path + + + const isCorrectAbsolutePath = schema === /^(?:[A-Za-z]:(\\|\/)|\\\\|\/)/.test(data); + + if (!isCorrectAbsolutePath) { + callback.errors = [getErrorFor(schema, parentSchema, data)]; + passes = false; + } + + return passes; + }; + + callback.errors = []; + return callback; + } + + }); + return ajv; +} + +var _default = addAbsolutePathKeyword; +exports.default = _default; \ No newline at end of file diff --git a/conf/site/node_modules/sass-loader/node_modules/schema-utils/dist/util/Range.js b/conf/site/node_modules/sass-loader/node_modules/schema-utils/dist/util/Range.js new file mode 100644 index 00000000..74bb0572 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/schema-utils/dist/util/Range.js @@ -0,0 +1,163 @@ +"use strict"; + +/** + * @typedef {[number, boolean]} RangeValue + */ + +/** + * @callback RangeValueCallback + * @param {RangeValue} rangeValue + * @returns {boolean} + */ +class Range { + /** + * @param {"left" | "right"} side + * @param {boolean} exclusive + * @returns {">" | ">=" | "<" | "<="} + */ + static getOperator(side, exclusive) { + if (side === 'left') { + return exclusive ? '>' : '>='; + } + + return exclusive ? '<' : '<='; + } + /** + * @param {number} value + * @param {boolean} logic is not logic applied + * @param {boolean} exclusive is range exclusive + * @returns {string} + */ + + + static formatRight(value, logic, exclusive) { + if (logic === false) { + return Range.formatLeft(value, !logic, !exclusive); + } + + return `should be ${Range.getOperator('right', exclusive)} ${value}`; + } + /** + * @param {number} value + * @param {boolean} logic is not logic applied + * @param {boolean} exclusive is range exclusive + * @returns {string} + */ + + + static formatLeft(value, logic, exclusive) { + if (logic === false) { + return Range.formatRight(value, !logic, !exclusive); + } + + return `should be ${Range.getOperator('left', exclusive)} ${value}`; + } + /** + * @param {number} start left side value + * @param {number} end right side value + * @param {boolean} startExclusive is range exclusive from left side + * @param {boolean} endExclusive is range exclusive from right side + * @param {boolean} logic is not logic applied + * @returns {string} + */ + + + static formatRange(start, end, startExclusive, endExclusive, logic) { + let result = 'should be'; + result += ` ${Range.getOperator(logic ? 'left' : 'right', logic ? startExclusive : !startExclusive)} ${start} `; + result += logic ? 'and' : 'or'; + result += ` ${Range.getOperator(logic ? 'right' : 'left', logic ? endExclusive : !endExclusive)} ${end}`; + return result; + } + /** + * @param {Array} values + * @param {boolean} logic is not logic applied + * @return {RangeValue} computed value and it's exclusive flag + */ + + + static getRangeValue(values, logic) { + let minMax = logic ? Infinity : -Infinity; + let j = -1; + const predicate = logic ? + /** @type {RangeValueCallback} */ + ([value]) => value <= minMax : + /** @type {RangeValueCallback} */ + ([value]) => value >= minMax; + + for (let i = 0; i < values.length; i++) { + if (predicate(values[i])) { + [minMax] = values[i]; + j = i; + } + } + + if (j > -1) { + return values[j]; + } + + return [Infinity, true]; + } + + constructor() { + /** @type {Array} */ + this._left = []; + /** @type {Array} */ + + this._right = []; + } + /** + * @param {number} value + * @param {boolean=} exclusive + */ + + + left(value, exclusive = false) { + this._left.push([value, exclusive]); + } + /** + * @param {number} value + * @param {boolean=} exclusive + */ + + + right(value, exclusive = false) { + this._right.push([value, exclusive]); + } + /** + * @param {boolean} logic is not logic applied + * @return {string} "smart" range string representation + */ + + + format(logic = true) { + const [start, leftExclusive] = Range.getRangeValue(this._left, logic); + const [end, rightExclusive] = Range.getRangeValue(this._right, !logic); + + if (!Number.isFinite(start) && !Number.isFinite(end)) { + return ''; + } + + const realStart = leftExclusive ? start + 1 : start; + const realEnd = rightExclusive ? end - 1 : end; // e.g. 5 < x < 7, 5 < x <= 6, 6 <= x <= 6 + + if (realStart === realEnd) { + return `should be ${logic ? '' : '!'}= ${realStart}`; + } // e.g. 4 < x < ∞ + + + if (Number.isFinite(start) && !Number.isFinite(end)) { + return Range.formatLeft(start, logic, leftExclusive); + } // e.g. ∞ < x < 4 + + + if (!Number.isFinite(start) && Number.isFinite(end)) { + return Range.formatRight(end, logic, rightExclusive); + } + + return Range.formatRange(start, end, leftExclusive, rightExclusive, logic); + } + +} + +module.exports = Range; \ No newline at end of file diff --git a/conf/site/node_modules/sass-loader/node_modules/schema-utils/dist/util/hints.js b/conf/site/node_modules/sass-loader/node_modules/schema-utils/dist/util/hints.js new file mode 100644 index 00000000..afa00d54 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/schema-utils/dist/util/hints.js @@ -0,0 +1,105 @@ +"use strict"; + +const Range = require('./Range'); +/** @typedef {import("../validate").Schema} Schema */ + +/** + * @param {Schema} schema + * @param {boolean} logic + * @return {string[]} + */ + + +module.exports.stringHints = function stringHints(schema, logic) { + const hints = []; + let type = 'string'; + const currentSchema = { ...schema + }; + + if (!logic) { + const tmpLength = currentSchema.minLength; + const tmpFormat = currentSchema.formatMinimum; + const tmpExclusive = currentSchema.formatExclusiveMaximum; + currentSchema.minLength = currentSchema.maxLength; + currentSchema.maxLength = tmpLength; + currentSchema.formatMinimum = currentSchema.formatMaximum; + currentSchema.formatMaximum = tmpFormat; + currentSchema.formatExclusiveMaximum = !currentSchema.formatExclusiveMinimum; + currentSchema.formatExclusiveMinimum = !tmpExclusive; + } + + if (typeof currentSchema.minLength === 'number') { + if (currentSchema.minLength === 1) { + type = 'non-empty string'; + } else { + const length = Math.max(currentSchema.minLength - 1, 0); + hints.push(`should be longer than ${length} character${length > 1 ? 's' : ''}`); + } + } + + if (typeof currentSchema.maxLength === 'number') { + if (currentSchema.maxLength === 0) { + type = 'empty string'; + } else { + const length = currentSchema.maxLength + 1; + hints.push(`should be shorter than ${length} character${length > 1 ? 's' : ''}`); + } + } + + if (currentSchema.pattern) { + hints.push(`should${logic ? '' : ' not'} match pattern ${JSON.stringify(currentSchema.pattern)}`); + } + + if (currentSchema.format) { + hints.push(`should${logic ? '' : ' not'} match format ${JSON.stringify(currentSchema.format)}`); + } + + if (currentSchema.formatMinimum) { + hints.push(`should be ${currentSchema.formatExclusiveMinimum ? '>' : '>='} ${JSON.stringify(currentSchema.formatMinimum)}`); + } + + if (currentSchema.formatMaximum) { + hints.push(`should be ${currentSchema.formatExclusiveMaximum ? '<' : '<='} ${JSON.stringify(currentSchema.formatMaximum)}`); + } + + return [type].concat(hints); +}; +/** + * @param {Schema} schema + * @param {boolean} logic + * @return {string[]} + */ + + +module.exports.numberHints = function numberHints(schema, logic) { + const hints = [schema.type === 'integer' ? 'integer' : 'number']; + const range = new Range(); + + if (typeof schema.minimum === 'number') { + range.left(schema.minimum); + } + + if (typeof schema.exclusiveMinimum === 'number') { + range.left(schema.exclusiveMinimum, true); + } + + if (typeof schema.maximum === 'number') { + range.right(schema.maximum); + } + + if (typeof schema.exclusiveMaximum === 'number') { + range.right(schema.exclusiveMaximum, true); + } + + const rangeFormat = range.format(logic); + + if (rangeFormat) { + hints.push(rangeFormat); + } + + if (typeof schema.multipleOf === 'number') { + hints.push(`should${logic ? '' : ' not'} be multiple of ${schema.multipleOf}`); + } + + return hints; +}; \ No newline at end of file diff --git a/conf/site/node_modules/sass-loader/node_modules/schema-utils/dist/validate.js b/conf/site/node_modules/sass-loader/node_modules/schema-utils/dist/validate.js new file mode 100644 index 00000000..c7ea5eeb --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/schema-utils/dist/validate.js @@ -0,0 +1,162 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = void 0; + +var _absolutePath = _interopRequireDefault(require("./keywords/absolutePath")); + +var _ValidationError = _interopRequireDefault(require("./ValidationError")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +// Use CommonJS require for ajv libs so TypeScript consumers aren't locked into esModuleInterop (see #110). +const Ajv = require('ajv'); + +const ajvKeywords = require('ajv-keywords'); +/** @typedef {import("json-schema").JSONSchema4} JSONSchema4 */ + +/** @typedef {import("json-schema").JSONSchema6} JSONSchema6 */ + +/** @typedef {import("json-schema").JSONSchema7} JSONSchema7 */ + +/** @typedef {import("ajv").ErrorObject} ErrorObject */ + +/** + * @typedef {Object} Extend + * @property {number=} formatMinimum + * @property {number=} formatMaximum + * @property {boolean=} formatExclusiveMinimum + * @property {boolean=} formatExclusiveMaximum + */ + +/** @typedef {(JSONSchema4 | JSONSchema6 | JSONSchema7) & Extend} Schema */ + +/** @typedef {ErrorObject & { children?: Array}} SchemaUtilErrorObject */ + +/** + * @callback PostFormatter + * @param {string} formattedError + * @param {SchemaUtilErrorObject} error + * @returns {string} + */ + +/** + * @typedef {Object} ValidationErrorConfiguration + * @property {string=} name + * @property {string=} baseDataPath + * @property {PostFormatter=} postFormatter + */ + + +const ajv = new Ajv({ + allErrors: true, + verbose: true, + $data: true +}); +ajvKeywords(ajv, ['instanceof', 'formatMinimum', 'formatMaximum', 'patternRequired']); // Custom keywords + +(0, _absolutePath.default)(ajv); +/** + * @param {Schema} schema + * @param {Array | object} options + * @param {ValidationErrorConfiguration=} configuration + * @returns {void} + */ + +function validate(schema, options, configuration) { + let errors = []; + + if (Array.isArray(options)) { + errors = Array.from(options, nestedOptions => validateObject(schema, nestedOptions)); + errors.forEach((list, idx) => { + const applyPrefix = + /** + * @param {SchemaUtilErrorObject} error + */ + error => { + // eslint-disable-next-line no-param-reassign + error.dataPath = `[${idx}]${error.dataPath}`; + + if (error.children) { + error.children.forEach(applyPrefix); + } + }; + + list.forEach(applyPrefix); + }); + errors = errors.reduce((arr, items) => { + arr.push(...items); + return arr; + }, []); + } else { + errors = validateObject(schema, options); + } + + if (errors.length > 0) { + throw new _ValidationError.default(errors, schema, configuration); + } +} +/** + * @param {Schema} schema + * @param {Array | object} options + * @returns {Array} + */ + + +function validateObject(schema, options) { + const compiledSchema = ajv.compile(schema); + const valid = compiledSchema(options); + if (valid) return []; + return compiledSchema.errors ? filterErrors(compiledSchema.errors) : []; +} +/** + * @param {Array} errors + * @returns {Array} + */ + + +function filterErrors(errors) { + /** @type {Array} */ + let newErrors = []; + + for (const error of + /** @type {Array} */ + errors) { + const { + dataPath + } = error; + /** @type {Array} */ + + let children = []; + newErrors = newErrors.filter(oldError => { + if (oldError.dataPath.includes(dataPath)) { + if (oldError.children) { + children = children.concat(oldError.children.slice(0)); + } // eslint-disable-next-line no-undefined, no-param-reassign + + + oldError.children = undefined; + children.push(oldError); + return false; + } + + return true; + }); + + if (children.length) { + error.children = children; + } + + newErrors.push(error); + } + + return newErrors; +} // TODO change after resolve https://github.com/microsoft/TypeScript/issues/34994 + + +validate.ValidationError = _ValidationError.default; +validate.ValidateError = _ValidationError.default; +var _default = validate; +exports.default = _default; \ No newline at end of file diff --git a/conf/site/node_modules/sass-loader/node_modules/schema-utils/package.json b/conf/site/node_modules/sass-loader/node_modules/schema-utils/package.json new file mode 100644 index 00000000..b9df47f9 --- /dev/null +++ b/conf/site/node_modules/sass-loader/node_modules/schema-utils/package.json @@ -0,0 +1,113 @@ +{ + "_args": [ + [ + "schema-utils@2.7.1", + "/home/henry/Documents/git/Speedtest-tracker-docker/conf/site" + ] + ], + "_development": true, + "_from": "schema-utils@2.7.1", + "_id": "schema-utils@2.7.1", + "_inBundle": false, + "_integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "_location": "/sass-loader/schema-utils", + "_phantomChildren": {}, + "_requested": { + "type": "version", + "registry": true, + "raw": "schema-utils@2.7.1", + "name": "schema-utils", + "escapedName": "schema-utils", + "rawSpec": "2.7.1", + "saveSpec": null, + "fetchSpec": "2.7.1" + }, + "_requiredBy": [ + "/sass-loader" + ], + "_resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "_spec": "2.7.1", + "_where": "/home/henry/Documents/git/Speedtest-tracker-docker/conf/site", + "author": { + "name": "webpack Contrib", + "url": "https://github.com/webpack-contrib" + }, + "bugs": { + "url": "https://github.com/webpack/schema-utils/issues" + }, + "dependencies": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + }, + "description": "webpack Validation Utils", + "devDependencies": { + "@babel/cli": "^7.10.5", + "@babel/core": "^7.11.4", + "@babel/preset-env": "^7.11.0", + "@commitlint/cli": "^10.0.0", + "@commitlint/config-conventional": "^10.0.0", + "@webpack-contrib/defaults": "^6.3.0", + "@webpack-contrib/eslint-config-webpack": "^3.0.0", + "babel-jest": "^25.5.1", + "cross-env": "^6.0.3", + "del": "^5.1.0", + "del-cli": "^3.0.1", + "eslint": "^7.7.0", + "eslint-config-prettier": "^6.11.0", + "eslint-plugin-import": "^2.22.0", + "husky": "^4.2.5", + "jest": "^25.5.4", + "lint-staged": "^10.2.13", + "npm-run-all": "^4.1.5", + "prettier": "^1.19.1", + "standard-version": "^9.0.0", + "typescript": "^4.0.2" + }, + "engines": { + "node": ">= 8.9.0" + }, + "files": [ + "dist", + "declarations" + ], + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "homepage": "https://github.com/webpack/schema-utils", + "keywords": [ + "webpack" + ], + "license": "MIT", + "main": "dist/index.js", + "name": "schema-utils", + "repository": { + "type": "git", + "url": "git+https://github.com/webpack/schema-utils.git" + }, + "scripts": { + "build": "npm-run-all -p \"build:**\"", + "build:code": "cross-env NODE_ENV=production babel src -d dist --copy-files", + "build:types": "tsc --declaration --emitDeclarationOnly --outDir declarations && prettier \"declarations/**/*.ts\" --write", + "clean": "del-cli dist declarations", + "commitlint": "commitlint --from=master", + "defaults": "webpack-defaults", + "lint": "npm-run-all -l -p \"lint:**\"", + "lint:js": "eslint --cache .", + "lint:prettier": "prettier \"{**/*,*}.{js,json,md,yml,css,ts}\" --list-different", + "lint:types": "tsc --pretty --noEmit", + "prebuild": "npm run clean", + "prepare": "npm run build", + "pretest": "npm run lint", + "release": "standard-version", + "security": "npm audit", + "start": "npm run build -- -w", + "test": "npm run test:coverage", + "test:coverage": "npm run test:only -- --collectCoverageFrom=\"src/**/*.js\" --coverage", + "test:only": "cross-env NODE_ENV=test jest", + "test:watch": "npm run test:only -- --watch" + }, + "types": "declarations/index.d.ts", + "version": "2.7.1" +} diff --git a/conf/site/node_modules/sass-loader/package.json b/conf/site/node_modules/sass-loader/package.json index 9bee2622..4636b7a5 100644 --- a/conf/site/node_modules/sass-loader/package.json +++ b/conf/site/node_modules/sass-loader/package.json @@ -1,17 +1,19 @@ { "_args": [ [ - "sass-loader@10.0.1", + "sass-loader@10.0.2", "/home/henry/Documents/git/Speedtest-tracker-docker/conf/site" ] ], "_development": true, - "_from": "sass-loader@10.0.1", - "_id": "sass-loader@10.0.1", + "_from": "sass-loader@10.0.2", + "_id": "sass-loader@10.0.2", "_inBundle": false, - "_integrity": "sha512-b2PSldKVTS3JcFPHSrEXh3BeAfR7XknGiGCAO5aHruR3Pf3kqLP3Gb2ypXLglRrAzgZkloNxLZ7GXEGDX0hBUQ==", + "_integrity": "sha512-wV6NDUVB8/iEYMalV/+139+vl2LaRFlZGEd5/xmdcdzQcgmis+npyco6NsDTVOlNA3y2NV9Gcz+vHyFMIT+ffg==", "_location": "/sass-loader", "_phantomChildren": { + "@types/json-schema": "7.0.5", + "ajv": "6.12.4", "big.js": "5.2.2", "emojis-list": "3.0.0", "json5": "2.1.2" @@ -19,18 +21,18 @@ "_requested": { "type": "version", "registry": true, - "raw": "sass-loader@10.0.1", + "raw": "sass-loader@10.0.2", "name": "sass-loader", "escapedName": "sass-loader", - "rawSpec": "10.0.1", + "rawSpec": "10.0.2", "saveSpec": null, - "fetchSpec": "10.0.1" + "fetchSpec": "10.0.2" }, "_requiredBy": [ "#DEV:/" ], - "_resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-10.0.1.tgz", - "_spec": "10.0.1", + "_resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-10.0.2.tgz", + "_spec": "10.0.2", "_where": "/home/henry/Documents/git/Speedtest-tracker-docker/conf/site", "author": { "name": "J. Tangelder" @@ -42,14 +44,14 @@ "klona": "^2.0.3", "loader-utils": "^2.0.0", "neo-async": "^2.6.2", - "schema-utils": "^2.7.0", + "schema-utils": "^2.7.1", "semver": "^7.3.2" }, "description": "Sass loader for webpack", "devDependencies": { - "@babel/cli": "^7.10.5", - "@babel/core": "^7.11.4", - "@babel/preset-env": "^7.11.0", + "@babel/cli": "^7.11.5", + "@babel/core": "^7.11.5", + "@babel/preset-env": "^7.11.5", "@commitlint/cli": "^10.0.0", "@commitlint/config-conventional": "^10.0.0", "@webpack-contrib/defaults": "^6.3.0", @@ -62,20 +64,20 @@ "del": "^5.1.0", "del-cli": "^3.0.1", "enhanced-resolve": "^4.3.0", - "eslint": "^7.7.0", + "eslint": "^7.8.1", "eslint-config-prettier": "^6.11.0", "eslint-plugin-import": "^2.21.2", "fibers": "^5.0.0", - "file-loader": "^6.0.0", + "file-loader": "^6.1.0", "foundation-sites": "^6.6.3", "husky": "^4.2.5", "jest": "^26.4.2", - "lint-staged": "^10.2.12", + "lint-staged": "^10.3.0", "material-components-web": "^7.0.0", "memfs": "^3.2.0", "node-sass": "^4.14.1", "npm-run-all": "^4.1.5", - "prettier": "^2.1.0", + "prettier": "^2.1.1", "sass": "^1.26.10", "standard-version": "^9.0.0", "style-loader": "^1.2.1", @@ -142,5 +144,5 @@ "test:only": "cross-env NODE_ENV=test jest", "test:watch": "npm run test:only -- --watch" }, - "version": "10.0.1" + "version": "10.0.2" } diff --git a/conf/site/vendor/barryvdh/laravel-ide-helper/.php_cs.common.php b/conf/site/vendor/barryvdh/laravel-ide-helper/.php_cs.common.php new file mode 100644 index 00000000..a7aad637 --- /dev/null +++ b/conf/site/vendor/barryvdh/laravel-ide-helper/.php_cs.common.php @@ -0,0 +1,65 @@ + true, + 'blank_line_after_opening_tag' => true, + 'braces' => [ + // Not-yet-implemented + // 'allow_single_line_anonymous_class_with_empty_body' => true, + ], + 'compact_nullable_typehint' => true, + 'declare_equal_normalize' => true, + 'lowercase_cast' => true, + 'lowercase_static_reference' => true, + 'new_with_braces' => true, + 'no_blank_lines_after_class_opening' => true, + 'no_leading_import_slash' => true, + 'no_whitespace_in_blank_line' => true, + 'ordered_class_elements' => [ + 'order' => [ + 'use_trait', + ], + ], + 'ordered_imports' => [ + 'imports_order' => [ + 'class', + 'function', + 'const', + ], + 'sort_algorithm' => 'alpha', + ], + 'return_type_declaration' => true, + 'short_scalar_cast' => true, + 'single_blank_line_before_namespace' => true, + 'single_trait_insert_per_statement' => true, + 'ternary_operator_spaces' => true, + 'visibility_required' => [ + 'elements' => [ + 'const', + 'method', + 'property', + ], + ], + + // Further quality-of-life improvements + 'array_syntax' => [ + 'syntax' => 'short', + ], + 'concat_space' => [ + 'spacing' => 'one', + ], + 'fully_qualified_strict_types' => true, + 'native_function_invocation' => [ + 'include' => [], + 'strict' => true, + ], + 'no_unused_imports' => true, + 'single_quote' => true, + 'space_after_semicolon' => true, + 'trailing_comma_in_multiline_array' => true, + 'trim_array_spaces' => true, + 'unary_operator_spaces' => true, + 'whitespace_after_comma_in_array' => true, +]; diff --git a/conf/site/vendor/barryvdh/laravel-ide-helper/.php_cs.dist b/conf/site/vendor/barryvdh/laravel-ide-helper/.php_cs.dist new file mode 100644 index 00000000..20833451 --- /dev/null +++ b/conf/site/vendor/barryvdh/laravel-ide-helper/.php_cs.dist @@ -0,0 +1,14 @@ +in(__DIR__) + ->exclude('tests'); + +$config = require __DIR__ . '/.php_cs.common.php'; + +return PhpCsFixer\Config::create() + ->setFinder($finder) + ->setRules($config) + ->setRiskyAllowed(true) + ->setCacheFile(__DIR__ . '/.php_cs.cache'); diff --git a/conf/site/vendor/barryvdh/laravel-ide-helper/.php_cs.tests.php b/conf/site/vendor/barryvdh/laravel-ide-helper/.php_cs.tests.php new file mode 100644 index 00000000..24c484d1 --- /dev/null +++ b/conf/site/vendor/barryvdh/laravel-ide-helper/.php_cs.tests.php @@ -0,0 +1,22 @@ +in(__DIR__ . '/tests') + ->exclude('__snapshots__'); + +$config = require __DIR__ . '/.php_cs.common.php'; + +// Additional rules for tests +$config = array_merge( + $config, + [ + 'declare_strict_types' => true, + ] +); + +return PhpCsFixer\Config::create() + ->setFinder($finder) + ->setRules($config) + ->setRiskyAllowed(true) + ->setCacheFile(__DIR__ . '/.php_cs.tests.cache'); diff --git a/conf/site/vendor/barryvdh/laravel-ide-helper/CHANGELOG.md b/conf/site/vendor/barryvdh/laravel-ide-helper/CHANGELOG.md new file mode 100644 index 00000000..6ff1fcb5 --- /dev/null +++ b/conf/site/vendor/barryvdh/laravel-ide-helper/CHANGELOG.md @@ -0,0 +1,60 @@ +# Changelog + +All notable changes to this project will be documented in this file. + +[Next release](https://github.com/barryvdh/laravel-ide-helper/compare/v2.8.0...master) +-------------- +### Added +- Support Laravel 8 [\#1022 / barryvdh](https://github.com/barryvdh/laravel-ide-helper/pull/1022) +- Add option to force usage of FQN [\#1031 / edvordo](https://github.com/barryvdh/laravel-ide-helper/pull/1031) +- Add support for macros of all macroable classes [\#1006 / domkrm](https://github.com/barryvdh/laravel-ide-helper/pull/1006) + +2020-08-11, 2.8.0 +----------------- +### Added +- Add static return type to builder methods [\#924 / dmason30](https://github.com/barryvdh/laravel-ide-helper/pull/924) +- Add `optonal` to meta generator for PhpStorm [\#932 / halaei](https://github.com/barryvdh/laravel-ide-helper/pull/932) +- Decimal columns as string in Models [\#948 / fgibaux](https://github.com/barryvdh/laravel-ide-helper/pull/948) +- Simplify full namespaces for already included resources [\#954 / LANGERGabriel](https://github.com/barryvdh/laravel-ide-helper/pull/954) +- Make writing relation count properties optional [\#969 / AegirLeet](https://github.com/barryvdh/laravel-ide-helper/pull/969) +- Add more methods able to resolve container instances [\#996 / mfn](https://github.com/barryvdh/laravel-ide-helper/pull/996) + +### Fixed +- Test `auth` is bound before detect Auth driver [\#946 / zhwei](https://github.com/barryvdh/laravel-ide-helper/pull/946) +- Fix inline doc-block for final models [\#944 / Gummibeer](https://github.com/barryvdh/laravel-ide-helper/pull/955) + +2020-04-22, 2.7.0 +----------------- +### Added +- Add `ignored_models` as config option [\#890 / pataar](https://github.com/barryvdh/laravel-ide-helper/pull/890) +- Infer return type from reflection if no phpdoc given [\#906 / mfn](https://github.com/barryvdh/laravel-ide-helper/pull/906) +- Add custom collection support for get and all methods [\#903 / dmason30](https://github.com/barryvdh/laravel-ide-helper/pull/903) +- if a model implements interfaces, include them in the stub [\#920 / mr-feek](https://github.com/barryvdh/laravel-ide-helper/pull/920) +- Generate noinspections PHPStorm tags [\#905 / mzglinski](https://github.com/barryvdh/laravel-ide-helper/pull/905) +- Added support for Laravel 7 custom casts [\#913 / belamov](https://github.com/barryvdh/laravel-ide-helper/pull/913) +- Ability to use patterns for model_locations [\#921 / 4n70w4](https://github.com/barryvdh/laravel-ide-helper/pull/921) + +### Fixed +- MorphToMany relations with query not working [\#894 / UksusoFF](https://github.com/barryvdh/laravel-ide-helper/pull/894) +- Fix camelCase duplicated properties generator [\#881 / bop10](https://github.com/barryvdh/laravel-ide-helper/pull/881) +- Prevent generation of invalid code for certain parameter default values [\#901 / loilo](https://github.com/barryvdh/laravel-ide-helper/pull/901) +- Make hasOne and morphOne nullable [\#864 / leo108](https://github.com/barryvdh/laravel-ide-helper/pull/864) +- Remove unnecessary and wrong definition of SoftDelete methods [\#918 / mfn](https://github.com/barryvdh/laravel-ide-helper/pull/918) +- Unregister meta command custom autoloader when it is no longer needed [\#919 / mr-feek](https://github.com/barryvdh/laravel-ide-helper/pull/919) + +2020-02-25, 2.6.7 +----------------- +### Added +- Support for Laravel 7 [commit by barryvdh](https://github.com/barryvdh/laravel-ide-helper/commit/edd69c5e0508972c81f1f7173236de2459c45814) + +2019-12-02, 2.6.6 +----------------- +### Added +- Add splat operator (...) support [\#860 / ngmy](https://github.com/barryvdh/laravel-ide-helper/pull/860) +- Add support for custom date class via Date::use() [\#859 / mfn](https://github.com/barryvdh/laravel-ide-helper/pull/859) + +### Fixed +- Prevent undefined property errors [\#877 / matt-allan](https://github.com/barryvdh/laravel-ide-helper/pull/877) + +---- +Missing an older changelog? Feel free to submit a PR! diff --git a/conf/site/vendor/barryvdh/laravel-ide-helper/README.md b/conf/site/vendor/barryvdh/laravel-ide-helper/README.md index 5fe83bbb..3cd5e26e 100644 --- a/conf/site/vendor/barryvdh/laravel-ide-helper/README.md +++ b/conf/site/vendor/barryvdh/laravel-ide-helper/README.md @@ -39,7 +39,7 @@ If for some reason you want manually control this: "extra": { "laravel": { "dont-discover": [ - "barryvdh/laravel-ide-helper", + "barryvdh/laravel-ide-helper" ] } } @@ -52,7 +52,7 @@ If for some reason you want manually control this: ```php public function register() { - if ($this->app->environment() !== 'production') { + if ($this->app->isLocal()) { $this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class); } // ... @@ -110,6 +110,18 @@ You can use an in-memory SQLite driver by adding the `-M` option. You can choose to include helper files. This is not enabled by default, but you can override it with the `--helpers (-H)` option. The `Illuminate/Support/helpers.php` is already set up, but you can add/remove your own files in the config file. +### Automatic PHPDoc generation for macros and mixins + +This package can generate PHPDocs for macros and mixins which will be added to the `_ide_helper.php` file. + +But this only works if you use type hinting when declaring a macro. + +```php +Str::macro('concat', function(string $str1, string $str2) : string { + return $str1 . $str2; +}); +``` + ### Automatic PHPDocs for models If you don't want to write your properties yourself, you can use the command `php artisan ide-helper:models` to generate @@ -121,6 +133,10 @@ By default, you are asked to overwrite or write to a separate file (`_ide_helper You can write the comments directly to your Model file, using the `--write (-W)` option, or force to not write with `--nowrite (-N)`. +Alternatively using the `--write-mixin (-M)` option will only add a mixin tag to your Model file, +writing the rest in (`_ide_helper_models.php`). +The class name will be different from the model, avoiding the IDE duplicate annoyance. + > Please make sure to back up your models, before writing the info. Writing to the models should keep the existing comments and only append new properties/methods. @@ -128,7 +144,7 @@ The existing PHPDoc is replaced, or added if not found. With the `--reset (-R)` option, the existing PHPDocs are ignored, and only the newly found columns/relations are saved as PHPDocs. ```bash -php artisan ide-helper:models Post +php artisan ide-helper:models "App\Models\Post" ``` ```php @@ -151,10 +167,18 @@ php artisan ide-helper:models Post */ ``` +With the `--write-mixin (-M)` option +```php +/** + * … + * @mixin IdeHelperPost + */ +``` + By default, models in `app/models` are scanned. The optional argument tells what models to use (also outside app/models). ```bash -php artisan ide-helper:models Post User +php artisan ide-helper:models "App\Models\Post" "App\Models\User" ``` You can also scan a different directory, using the `--dir` option (relative from the base path): @@ -168,20 +192,18 @@ You can publish the config file (`php artisan vendor:publish`) and set the defau Models can be ignored using the `--ignore (-I)` option ```bash -php artisan ide-helper:models --ignore="Post,User" +php artisan ide-helper:models --ignore="App\Models\Post,App\Models\User" ``` Or can be ignored by setting the `ignored_models` config ```php 'ignored_models' => [ - Post::class, + App\Post::class, Api\User::class ], ``` -> Note: With namespaces, wrap your model name in double-quotes (`"`): `php artisan ide-helper:models "API\User"`, or escape the slashes (`Api\\User`). - #### Magic `where*` methods Eloquent allows calling `where` on your modes, e.g. `Post::whereTitle(…)` and automatically translates this to e.g. `Post::where('title', '=', '…')`. diff --git a/conf/site/vendor/barryvdh/laravel-ide-helper/composer.json b/conf/site/vendor/barryvdh/laravel-ide-helper/composer.json index 9787c2cd..0cd686ed 100644 --- a/conf/site/vendor/barryvdh/laravel-ide-helper/composer.json +++ b/conf/site/vendor/barryvdh/laravel-ide-helper/composer.json @@ -21,22 +21,23 @@ ], "require": { "php": ">=7.2", + "ext-json": "*", "barryvdh/reflection-docblock": "^2.0.6", "composer/composer": "^1.6 || ^2.0@dev", "doctrine/dbal": "~2.3", - "illuminate/console": "^5.5 || ^6 || ^7", - "illuminate/filesystem": "^5.5 || ^6 || ^7", - "illuminate/support": "^5.5 || ^6 || ^7", + "illuminate/console": "^6 || ^7 || ^8", + "illuminate/filesystem": "^6 || ^7 || ^8", + "illuminate/support": "^6 || ^7 || ^8", "phpdocumentor/type-resolver": "^1.1.0" }, "require-dev": { - "illuminate/config": "^5.5 || ^6 || ^7", - "illuminate/view": "^5.5 || ^6 || ^7", + "friendsofphp/php-cs-fixer": "^2", + "illuminate/config": "^6 || ^7 || ^8", + "illuminate/view": "^6 || ^7 || ^8", "mockery/mockery": "^1.3", - "orchestra/testbench": "^3.5 || ^4 || ^5", - "phpro/grumphp": "^0.19.0", + "orchestra/testbench": "^4 || ^5 || ^6", + "phpunit/phpunit": "^8.5 || ^9", "spatie/phpunit-snapshot-assertions": "^1.4 || ^2.2 || ^3", - "squizlabs/php_codesniffer": "^3.5", "vimeo/psalm": "^3.12" }, "config": { @@ -44,7 +45,7 @@ }, "extra": { "branch-alias": { - "dev-master": "2.7-dev" + "dev-master": "2.8-dev" }, "laravel": { "providers": [ @@ -62,11 +63,20 @@ "Barryvdh\\LaravelIdeHelper\\Tests\\": "tests" } }, + "minimum-stability": "dev", + "prefer-stable": true, "scripts": { "analyze": "psalm", - "check-style": "phpcs -p --standard=PSR12 config/ resources/ src/ tests/ '--ignore=*__snapshots_*'", - "fix-style": "phpcbf -p --standard=PSR12 config/ resources/ src/ tests/ '--ignore=*__snapshots_*'", + "check-style": [ + "php-cs-fixer fix --diff --diff-format=udiff --dry-run", + "php-cs-fixer fix --diff --diff-format=udiff --dry-run --config=.php_cs.tests.php" + ], + "fix-style": [ + "php-cs-fixer fix", + "php-cs-fixer fix --config=.php_cs.tests.php" + ], "test": "phpunit", + "test-ci": "phpunit -d --without-creating-snapshots", "test-regenerate": "phpunit -d --update-snapshots" } } diff --git a/conf/site/vendor/barryvdh/laravel-ide-helper/config/ide-helper.php b/conf/site/vendor/barryvdh/laravel-ide-helper/config/ide-helper.php index c0b252a4..e287fea5 100644 --- a/conf/site/vendor/barryvdh/laravel-ide-helper/config/ide-helper.php +++ b/conf/site/vendor/barryvdh/laravel-ide-helper/config/ide-helper.php @@ -1,6 +1,6 @@ false, - 'helper_files' => array( + 'helper_files' => [ base_path() . '/vendor/laravel/framework/src/Illuminate/Support/helpers.php', - ), + ], /* |-------------------------------------------------------------------------- @@ -115,9 +115,9 @@ return array( | */ - 'model_locations' => array( + 'model_locations' => [ 'app', - ), + ], /* |-------------------------------------------------------------------------- @@ -128,9 +128,9 @@ return array( | */ - 'ignored_models' => array( + 'ignored_models' => [ - ), + ], /* |-------------------------------------------------------------------------- @@ -141,12 +141,12 @@ return array( | */ - 'extra' => array( - 'Eloquent' => array('Illuminate\Database\Eloquent\Builder', 'Illuminate\Database\Query\Builder'), - 'Session' => array('Illuminate\Session\Store'), - ), + 'extra' => [ + 'Eloquent' => ['Illuminate\Database\Eloquent\Builder', 'Illuminate\Database\Query\Builder'], + 'Session' => ['Illuminate\Session\Store'], + ], - 'magic' => array(), + 'magic' => [], /* |-------------------------------------------------------------------------- @@ -158,9 +158,9 @@ return array( | */ - 'interfaces' => array( + 'interfaces' => [ - ), + ], /* |-------------------------------------------------------------------------- @@ -188,9 +188,9 @@ return array( | ), | */ - 'custom_db_types' => array( + 'custom_db_types' => [ - ), + ], /* |-------------------------------------------------------------------------- @@ -226,10 +226,10 @@ return array( | Cast the given "real type" to the given "type". | */ - 'type_overrides' => array( + 'type_overrides' => [ 'integer' => 'int', 'boolean' => 'bool', - ), + ], /* |-------------------------------------------------------------------------- @@ -242,4 +242,15 @@ return array( */ 'include_class_docblocks' => false, -); + /* + |-------------------------------------------------------------------------- + | Force FQN usage + |-------------------------------------------------------------------------- + | + | Use the fully qualified (class) name in docBlock, + | event if class exists in a given file + | or there is an import (use className) of a given class + | + */ + 'force_fqn' => false, +]; diff --git a/conf/site/vendor/barryvdh/laravel-ide-helper/grumphp.yml b/conf/site/vendor/barryvdh/laravel-ide-helper/grumphp.yml deleted file mode 100644 index 04caf1c5..00000000 --- a/conf/site/vendor/barryvdh/laravel-ide-helper/grumphp.yml +++ /dev/null @@ -1,17 +0,0 @@ -grumphp: - tasks: - phpunit: - script: test - triggered_by: [php] - metadata: - task: composer_script - phpcs: - script: check-style - triggered_by: [php] - metadata: - task: composer_script - static analysis: - script: analyze - triggered_by: [php] - metadata: - task: composer_script diff --git a/conf/site/vendor/barryvdh/laravel-ide-helper/src/Alias.php b/conf/site/vendor/barryvdh/laravel-ide-helper/src/Alias.php index 464b259a..4ad4e87c 100644 --- a/conf/site/vendor/barryvdh/laravel-ide-helper/src/Alias.php +++ b/conf/site/vendor/barryvdh/laravel-ide-helper/src/Alias.php @@ -11,13 +11,13 @@ namespace Barryvdh\LaravelIdeHelper; -use Closure; -use ReflectionClass; use Barryvdh\Reflection\DocBlock; use Barryvdh\Reflection\DocBlock\Context; -use Barryvdh\Reflection\DocBlock\Tag\MethodTag; -use Illuminate\Config\Repository as ConfigRepository; use Barryvdh\Reflection\DocBlock\Serializer as DocBlockSerializer; +use Barryvdh\Reflection\DocBlock\Tag\MethodTag; +use Closure; +use Illuminate\Config\Repository as ConfigRepository; +use ReflectionClass; class Alias { @@ -31,12 +31,12 @@ class Alias protected $short; protected $namespace = '__root'; protected $root = null; - protected $classes = array(); - protected $methods = array(); - protected $usedMethods = array(); + protected $classes = []; + protected $methods = []; + protected $usedMethods = []; protected $valid = false; - protected $magicMethods = array(); - protected $interfaces = array(); + protected $magicMethods = []; + protected $interfaces = []; protected $phpdoc = null; /** @var ConfigRepository */ @@ -50,7 +50,7 @@ class Alias * @param array $magicMethods * @param array $interfaces */ - public function __construct($config, $alias, $facade, $magicMethods = array(), $interfaces = array()) + public function __construct($config, $alias, $facade, $magicMethods = [], $interfaces = []) { $this->alias = $alias; $this->magicMethods = $magicMethods; @@ -63,12 +63,12 @@ class Alias $this->detectRoot(); - if ((!$this->isTrait() && $this->root)) { - $this->valid = true; - } else { + if (!$this->root || $this->isTrait()) { return; } + $this->valid = true; + $this->addClass($this->root); $this->detectFake(); $this->detectNamespace(); @@ -82,7 +82,7 @@ class Alias if ($facade === '\Illuminate\Database\Eloquent\Model') { - $this->usedMethods = array('decrement', 'increment'); + $this->usedMethods = ['decrement', 'increment']; } } @@ -201,13 +201,13 @@ class Alias protected function detectFake() { $facade = $this->facade; - + if (!method_exists($facade, 'fake')) { return; } $real = $facade::getFacadeRoot(); - + try { $facade::fake(); $fake = $facade::getFacadeRoot(); @@ -289,12 +289,12 @@ class Alias //When the database connection is not set, some classes will be skipped } catch (\PDOException $e) { $this->error( - "PDOException: " . $e->getMessage() . + 'PDOException: ' . $e->getMessage() . "\nPlease configure your database connection correctly, or use the sqlite memory driver (-M)." . " Skipping $facade." ); } catch (\Exception $e) { - $this->error("Exception: " . $e->getMessage() . "\nSkipping $facade."); + $this->error('Exception: ' . $e->getMessage() . "\nSkipping $facade."); } } @@ -306,10 +306,7 @@ class Alias protected function isTrait() { // Check if the facade is not a Trait - if (function_exists('trait_exists') && trait_exists($this->facade)) { - return true; - } - return false; + return trait_exists($this->facade); } /** @@ -416,22 +413,22 @@ class Alias { $serializer = new DocBlockSerializer(1, $prefix); - if ($this->phpdoc) { - if ($this->config->get('ide-helper.include_class_docblocks')) { - // if a class doesn't expose any DocBlock tags - // we can perform reflection on the class and - // add in the original class DocBlock - if (count($this->phpdoc->getTags()) === 0) { - $class = new ReflectionClass($this->root); - $this->phpdoc = new DocBlock($class->getDocComment()); - } - } - - $this->removeDuplicateMethodsFromPhpDoc(); - return $serializer->getDocComment($this->phpdoc); + if (!$this->phpdoc) { + return ''; } - return ''; + if ($this->config->get('ide-helper.include_class_docblocks')) { + // if a class doesn't expose any DocBlock tags + // we can perform reflection on the class and + // add in the original class DocBlock + if (count($this->phpdoc->getTags()) === 0) { + $class = new ReflectionClass($this->root); + $this->phpdoc = new DocBlock($class->getDocComment()); + } + } + + $this->removeDuplicateMethodsFromPhpDoc(); + return $serializer->getDocComment($this->phpdoc); } /** diff --git a/conf/site/vendor/barryvdh/laravel-ide-helper/src/Console/GeneratorCommand.php b/conf/site/vendor/barryvdh/laravel-ide-helper/src/Console/GeneratorCommand.php index 6de5012f..c2abf146 100644 --- a/conf/site/vendor/barryvdh/laravel-ide-helper/src/Console/GeneratorCommand.php +++ b/conf/site/vendor/barryvdh/laravel-ide-helper/src/Console/GeneratorCommand.php @@ -15,8 +15,8 @@ use Barryvdh\LaravelIdeHelper\Eloquent; use Barryvdh\LaravelIdeHelper\Generator; use Illuminate\Console\Command; use Illuminate\Filesystem\Filesystem; -use Symfony\Component\Console\Input\InputOption; use Symfony\Component\Console\Input\InputArgument; +use Symfony\Component\Console\Input\InputOption; /** * A command to generate autocomplete information for your IDE @@ -25,7 +25,6 @@ use Symfony\Component\Console\Input\InputArgument; */ class GeneratorCommand extends Command { - /** * The console command name. * @@ -59,7 +58,8 @@ class GeneratorCommand extends Command * @param \Illuminate\View\Factory $view */ public function __construct( - /*ConfigRepository */ $config, + /*ConfigRepository */ + $config, Filesystem $files, /* Illuminate\View\Factory */ $view @@ -85,46 +85,47 @@ class GeneratorCommand extends Command $this->error( 'Error generating IDE Helper: first delete your compiled file (php artisan clear-compiled)' ); + return; + } + + $filename = $this->argument('filename'); + $format = $this->option('format'); + + // Strip the php extension + if (substr($filename, -4, 4) === '.php') { + $filename = substr($filename, 0, -4); + } + + $filename .= '.' . $format; + + if ($this->option('memory')) { + $this->useMemoryDriver(); + } + + + $helpers = ''; + if ($this->option('helpers') || ($this->config->get('ide-helper.include_helpers'))) { + foreach ($this->config->get('ide-helper.helper_files', []) as $helper) { + if (file_exists($helper)) { + $helpers .= str_replace([''], '', $this->files->get($helper)); + } + } } else { - $filename = $this->argument('filename'); - $format = $this->option('format'); - - // Strip the php extension - if (substr($filename, -4, 4) == '.php') { - $filename = substr($filename, 0, -4); - } - - $filename .= '.' . $format; - - if ($this->option('memory')) { - $this->useMemoryDriver(); - } - - $helpers = ''; - if ($this->option('helpers') || ($this->config->get('ide-helper.include_helpers'))) { - foreach ($this->config->get('ide-helper.helper_files', array()) as $helper) { - if (file_exists($helper)) { - $helpers .= str_replace(array(''), '', $this->files->get($helper)); - } - } - } else { - $helpers = ''; - } - - $generator = new Generator($this->config, $this->view, $this->getOutput(), $helpers); - $content = $generator->generate($format); - $written = $this->files->put($filename, $content); - - if ($written !== false) { - $this->info("A new helper file was written to $filename"); - - if ($this->option('write_mixins')) { - Eloquent::writeEloquentModelHelper($this, $this->files); - } - } else { - $this->error("The helper file could not be created at $filename"); + } + + $generator = new Generator($this->config, $this->view, $this->getOutput(), $helpers); + $content = $generator->generate($format); + $written = $this->files->put($filename, $content); + + if ($written !== false) { + $this->info("A new helper file was written to $filename"); + + if ($this->option('write_mixins')) { + Eloquent::writeEloquentModelHelper($this, $this->files); } + } else { + $this->error("The helper file could not be created at $filename"); } } @@ -133,10 +134,10 @@ class GeneratorCommand extends Command //Use a sqlite database in memory, to avoid connection errors on Database facades $this->config->set( 'database.connections.sqlite', - array( + [ 'driver' => 'sqlite', 'database' => ':memory:', - ) + ] ); $this->config->set('database.default', 'sqlite'); } @@ -150,11 +151,11 @@ class GeneratorCommand extends Command { $filename = $this->config->get('ide-helper.filename'); - return array( - array( - 'filename', InputArgument::OPTIONAL, 'The path to the helper file', $filename - ), - ); + return [ + [ + 'filename', InputArgument::OPTIONAL, 'The path to the helper file', $filename, + ], + ]; } /** @@ -167,11 +168,11 @@ class GeneratorCommand extends Command $format = $this->config->get('ide-helper.format'); $writeMixins = $this->config->get('ide-helper.write_eloquent_model_mixins'); - return array( - array('format', "F", InputOption::VALUE_OPTIONAL, 'The format for the IDE Helper', $format), - array('write_mixins', "W", InputOption::VALUE_OPTIONAL, 'Write mixins to Laravel Model?', $writeMixins), - array('helpers', "H", InputOption::VALUE_NONE, 'Include the helper files'), - array('memory', "M", InputOption::VALUE_NONE, 'Use sqlite memory driver'), - ); + return [ + ['format', 'F', InputOption::VALUE_OPTIONAL, 'The format for the IDE Helper', $format], + ['write_mixins', 'W', InputOption::VALUE_OPTIONAL, 'Write mixins to Laravel Model?', $writeMixins], + ['helpers', 'H', InputOption::VALUE_NONE, 'Include the helper files'], + ['memory', 'M', InputOption::VALUE_NONE, 'Use sqlite memory driver'], + ]; } } diff --git a/conf/site/vendor/barryvdh/laravel-ide-helper/src/Console/MetaCommand.php b/conf/site/vendor/barryvdh/laravel-ide-helper/src/Console/MetaCommand.php index 58d0ef8b..b5cbf725 100644 --- a/conf/site/vendor/barryvdh/laravel-ide-helper/src/Console/MetaCommand.php +++ b/conf/site/vendor/barryvdh/laravel-ide-helper/src/Console/MetaCommand.php @@ -23,7 +23,6 @@ use Symfony\Component\Console\Output\OutputInterface; */ class MetaCommand extends Command { - /** * The console command name. * @@ -58,7 +57,7 @@ class MetaCommand extends Command '\App::makeWith(0)', '\app(0)', '\resolve(0)', - '\Psr\Container\ContainerInterface::get', + '\Psr\Container\ContainerInterface::get(0)', ]; /** @@ -87,7 +86,7 @@ class MetaCommand extends Command $this->registerClassAutoloadExceptions(); - $bindings = array(); + $bindings = []; foreach ($this->getAbstracts() as $abstract) { // Validator and seeder cause problems if (in_array($abstract, ['validator', 'seeder'])) { @@ -161,9 +160,9 @@ class MetaCommand extends Command { $filename = $this->config->get('ide-helper.meta_filename'); - return array( - array('filename', 'F', InputOption::VALUE_OPTIONAL, 'The path to the meta file', $filename), - ); + return [ + ['filename', 'F', InputOption::VALUE_OPTIONAL, 'The path to the meta file', $filename], + ]; } /** diff --git a/conf/site/vendor/barryvdh/laravel-ide-helper/src/Console/ModelsCommand.php b/conf/site/vendor/barryvdh/laravel-ide-helper/src/Console/ModelsCommand.php index e0514b9f..651c0415 100644 --- a/conf/site/vendor/barryvdh/laravel-ide-helper/src/Console/ModelsCommand.php +++ b/conf/site/vendor/barryvdh/laravel-ide-helper/src/Console/ModelsCommand.php @@ -58,10 +58,11 @@ class ModelsCommand extends Command protected $write_model_magic_where; protected $write_model_relation_count_properties; - protected $properties = array(); - protected $methods = array(); + protected $properties = []; + protected $methods = []; protected $write = false; - protected $dirs = array(); + protected $write_mixin = false; + protected $dirs = []; protected $reset; protected $keep_text; protected $phpstorm_noinspections; @@ -71,7 +72,7 @@ class ModelsCommand extends Command protected $nullableColumns = []; /** - * During initializtion we use Laravels Date Facade to + * During initialization we use Laravels Date Facade to * determine the actual date class and store it here. * * @var string @@ -96,8 +97,9 @@ class ModelsCommand extends Command { $filename = $this->option('filename'); $this->write = $this->option('write'); + $this->write_mixin = $this->option('write-mixin'); $this->dirs = array_merge( - $this->laravel['config']->get('ide-helper.model_locations'), + $this->laravel['config']->get('ide-helper.model_locations', []), $this->option('dir') ); $model = $this->argument('model'); @@ -111,6 +113,7 @@ class ModelsCommand extends Command $this->write_model_relation_count_properties = $this->laravel['config']->get('ide-helper.write_model_relation_count_properties', true); + $this->write = $this->write_mixin ? true : $this->write; //If filename is default and Write is not specified, ask what to do if (!$this->write && $filename === $this->filename && !$this->option('nowrite')) { if ( @@ -128,7 +131,7 @@ class ModelsCommand extends Command $content = $this->generateDocs($model, $ignore); - if (!$this->write) { + if (!$this->write || $this->write_mixin) { $written = $this->files->put($filename, $content); if ($written !== false) { $this->info("Model information was written to $filename"); @@ -146,9 +149,9 @@ class ModelsCommand extends Command */ protected function getArguments() { - return array( - array('model', InputArgument::OPTIONAL | InputArgument::IS_ARRAY, 'Which models to include', array()), - ); + return [ + ['model', InputArgument::OPTIONAL | InputArgument::IS_ARRAY, 'Which models to include', []], + ]; } /** @@ -158,20 +161,23 @@ class ModelsCommand extends Command */ protected function getOptions() { - return array( - array('filename', 'F', InputOption::VALUE_OPTIONAL, 'The path to the helper file', $this->filename), - array('dir', 'D', InputOption::VALUE_OPTIONAL | InputOption::VALUE_IS_ARRAY, - 'The model dir, supports glob patterns', array()), - array('write', 'W', InputOption::VALUE_NONE, 'Write to Model file'), - array('nowrite', 'N', InputOption::VALUE_NONE, 'Don\'t write to Model file'), - array('reset', 'R', InputOption::VALUE_NONE, 'Remove the original phpdocs instead of appending'), - array('smart-reset', 'r', InputOption::VALUE_NONE, 'Refresh the properties/methods list, but keep the text'), - array('phpstorm-noinspections', 'p', InputOption::VALUE_NONE, + return [ + ['filename', 'F', InputOption::VALUE_OPTIONAL, 'The path to the helper file', $this->filename], + ['dir', 'D', InputOption::VALUE_OPTIONAL | InputOption::VALUE_IS_ARRAY, + 'The model dir, supports glob patterns', [], ], + ['write', 'W', InputOption::VALUE_NONE, 'Write to Model file'], + ['write-mixin', 'M', InputOption::VALUE_NONE, + "Write models to {$this->filename} and adds @mixin to each model, avoiding IDE duplicate declaration warnings", + ], + ['nowrite', 'N', InputOption::VALUE_NONE, 'Don\'t write to Model file'], + ['reset', 'R', InputOption::VALUE_NONE, 'Remove the original phpdocs instead of appending'], + ['smart-reset', 'r', InputOption::VALUE_NONE, 'Refresh the properties/methods list, but keep the text'], + ['phpstorm-noinspections', 'p', InputOption::VALUE_NONE, 'Add PhpFullyQualifiedNameUsageInspection and PhpUnnecessaryFullyQualifiedNameInspection PHPStorm ' . - 'noinspection tags' - ), - array('ignore', 'I', InputOption::VALUE_OPTIONAL, 'Which models to ignore', ''), - ); + 'noinspection tags', + ], + ['ignore', 'I', InputOption::VALUE_OPTIONAL, 'Which models to ignore', ''], + ]; } protected function generateDocs($loadModels, $ignore = '') @@ -195,7 +201,7 @@ class ModelsCommand extends Command if (empty($loadModels)) { $models = $this->loadModels(); } else { - $models = array(); + $models = []; foreach ($loadModels as $model) { $models = array_merge($models, explode(',', $model)); } @@ -203,7 +209,7 @@ class ModelsCommand extends Command $ignore = array_merge( explode(',', $ignore), - $this->laravel['config']->get('ide-helper.ignored_models', array()) + $this->laravel['config']->get('ide-helper.ignored_models', []) ); foreach ($models as $name) { @@ -213,8 +219,8 @@ class ModelsCommand extends Command } continue; } - $this->properties = array(); - $this->methods = array(); + $this->properties = []; + $this->methods = []; if (class_exists($name)) { try { // handle abstract classes, interfaces, ... @@ -224,9 +230,7 @@ class ModelsCommand extends Command continue; } - if ($this->output->getVerbosity() >= OutputInterface::VERBOSITY_VERBOSE) { - $this->comment("Loading model '$name'"); - } + $this->comment("Loading model '$name'", OutputInterface::VERBOSITY_VERBOSE); if (!$reflectionClass->IsInstantiable()) { // ignore abstract class or interface @@ -250,7 +254,7 @@ class ModelsCommand extends Command $ignore[] = $name; $this->nullableColumns = []; } catch (\Throwable $e) { - $this->error("Exception: " . $e->getMessage() . + $this->error('Exception: ' . $e->getMessage() . "\nCould not analyze class $name.\n\nTrace:\n" . $e->getTraceAsString()); } @@ -270,9 +274,17 @@ class ModelsCommand extends Command protected function loadModels() { - $models = array(); + $models = []; foreach ($this->dirs as $dir) { - $dir = base_path() . '/' . $dir; + if (is_dir(base_path($dir))) { + $dir = base_path($dir); + } + + if (!is_dir($dir)) { + $this->error("Cannot locate directory '{'$dir}'"); + continue; + } + $dirs = glob($dir, GLOB_ONLYDIR); foreach ($dirs as $dir) { if (file_exists($dir)) { @@ -338,29 +350,29 @@ class ModelsCommand extends Command if (!isset($this->properties[$name])) { continue; - } else { - $realType = $this->checkForCustomLaravelCasts($realType); - $realType = $this->getTypeOverride($realType); - $this->properties[$name]['type'] = $this->getTypeInModel($model, $realType); + } - if (isset($this->nullableColumns[$name])) { - $this->properties[$name]['type'] .= '|null'; - } + $realType = $this->checkForCustomLaravelCasts($realType); + $realType = $this->getTypeOverride($realType); + $this->properties[$name]['type'] = $this->getTypeInModel($model, $realType); + + if (isset($this->nullableColumns[$name])) { + $this->properties[$name]['type'] .= '|null'; } } } /** - * Returns the overide type for the give type. + * Returns the override type for the give type. * * @param string $type * @return string|null */ protected function getTypeOverride($type) { - $typeOverrides = $this->laravel['config']->get('ide-helper.type_overrides', array()); + $typeOverrides = $this->laravel['config']->get('ide-helper.type_overrides', []); - return isset($typeOverrides[$type]) ? $typeOverrides[$type] : $type; + return $typeOverrides[$type] ?? $type; } /** @@ -371,12 +383,12 @@ class ModelsCommand extends Command protected function getPropertiesFromTable($model) { $table = $model->getConnection()->getTablePrefix() . $model->getTable(); - $schema = $model->getConnection()->getDoctrineSchemaManager($table); + $schema = $model->getConnection()->getDoctrineSchemaManager(); $databasePlatform = $schema->getDatabasePlatform(); $databasePlatform->registerDoctrineTypeMapping('enum', 'string'); $platformName = $databasePlatform->getName(); - $customTypes = $this->laravel['config']->get("ide-helper.custom_db_types.{$platformName}", array()); + $customTypes = $this->laravel['config']->get("ide-helper.custom_db_types.{$platformName}", []); foreach ($customTypes as $yourTypeName => $doctrineTypeName) { $databasePlatform->registerDoctrineTypeMapping($yourTypeName, $doctrineTypeName); } @@ -388,70 +400,72 @@ class ModelsCommand extends Command $columns = $schema->listTableColumns($table, $database); - if ($columns) { - foreach ($columns as $column) { - $name = $column->getName(); - if (in_array($name, $model->getDates())) { - $type = $this->dateClass; - } else { - $type = $column->getType()->getName(); - switch ($type) { - case 'string': - case 'text': - case 'date': - case 'time': - case 'guid': - case 'datetimetz': - case 'datetime': - case 'decimal': - $type = 'string'; - break; - case 'integer': - case 'bigint': - case 'smallint': - $type = 'integer'; - break; - case 'boolean': - switch (config('database.default')) { - case 'sqlite': - case 'mysql': - $type = 'integer'; - break; - default: - $type = 'boolean'; - break; - } - break; - case 'float': - $type = 'float'; - break; - default: - $type = 'mixed'; - break; - } - } + if (!$columns) { + return; + } - $comment = $column->getComment(); - if (!$column->getNotnull()) { - $this->nullableColumns[$name] = true; + foreach ($columns as $column) { + $name = $column->getName(); + if (in_array($name, $model->getDates())) { + $type = $this->dateClass; + } else { + $type = $column->getType()->getName(); + switch ($type) { + case 'string': + case 'text': + case 'date': + case 'time': + case 'guid': + case 'datetimetz': + case 'datetime': + case 'decimal': + $type = 'string'; + break; + case 'integer': + case 'bigint': + case 'smallint': + $type = 'integer'; + break; + case 'boolean': + switch (config('database.default')) { + case 'sqlite': + case 'mysql': + $type = 'integer'; + break; + default: + $type = 'boolean'; + break; + } + break; + case 'float': + $type = 'float'; + break; + default: + $type = 'mixed'; + break; } - $this->setProperty( - $name, - $this->getTypeInModel($model, $type), - true, - true, - $comment, - !$column->getNotnull() + } + + $comment = $column->getComment(); + if (!$column->getNotnull()) { + $this->nullableColumns[$name] = true; + } + $this->setProperty( + $name, + $this->getTypeInModel($model, $type), + true, + true, + $comment, + !$column->getNotnull() + ); + if ($this->write_model_magic_where) { + $this->setMethod( + Str::camel('where_' . $name), + $this->getClassNameInDestinationFile($model, \Illuminate\Database\Eloquent\Builder::class) + . '|' + . $this->getClassNameInDestinationFile($model, get_class($model)), + ['$value'] ); - if ($this->write_model_magic_where) { - $this->setMethod( - Str::camel("where_" . $name), - $this->getClassNameInDestinationFile($model, \Illuminate\Database\Eloquent\Builder::class) - . '|' - . $this->getClassNameInDestinationFile($model, get_class($model)), - array('$value') - ); - } } } } @@ -513,7 +527,7 @@ class ModelsCommand extends Command $this->setMethod( $method, - $builder . "|" . $this->getClassNameInDestinationFile($model, get_class($model)) + $builder . '|' . $this->getClassNameInDestinationFile($model, get_class($model)) ); } elseif ( !method_exists('Illuminate\Database\Eloquent\Model', $method) @@ -544,7 +558,7 @@ class ModelsCommand extends Command $code = substr($code, $begin, strrpos($code, '}') - $begin + 1); foreach ( - array( + [ 'hasMany' => '\Illuminate\Database\Eloquent\Relations\HasMany', 'hasManyThrough' => '\Illuminate\Database\Eloquent\Relations\HasManyThrough', 'hasOneThrough' => '\Illuminate\Database\Eloquent\Relations\HasOneThrough', @@ -555,8 +569,8 @@ class ModelsCommand extends Command 'morphTo' => '\Illuminate\Database\Eloquent\Relations\MorphTo', 'morphMany' => '\Illuminate\Database\Eloquent\Relations\MorphMany', 'morphToMany' => '\Illuminate\Database\Eloquent\Relations\MorphToMany', - 'morphedByMany' => '\Illuminate\Database\Eloquent\Relations\MorphToMany' - ) as $relation => $impl + 'morphedByMany' => '\Illuminate\Database\Eloquent\Relations\MorphToMany', + ] as $relation => $impl ) { $search = '$this->' . $relation . '('; if (stripos($code, $search) || ltrim($impl, '\\') === ltrim((string)$type, '\\')) { @@ -570,7 +584,11 @@ class ModelsCommand extends Command // can cause errors. Since we don't need constraints we can // disable them when we fetch the relation to avoid errors. $relationObj = Relation::noConstraints(function () use ($model, $method) { - return $model->$method(); + try { + return $model->$method(); + } catch (\Throwable $e) { + return null; + } }); if ($relationObj instanceof Relation) { @@ -609,7 +627,7 @@ class ModelsCommand extends Command false ); } - } elseif ($relation === "morphTo") { + } elseif ($relation === 'morphTo') { // Model isn't specified because relation is polymorphic $this->setProperty( $method, @@ -676,7 +694,7 @@ class ModelsCommand extends Command protected function setProperty($name, $type = null, $read = null, $write = null, $comment = '', $nullable = false) { if (!isset($this->properties[$name])) { - $this->properties[$name] = array(); + $this->properties[$name] = []; $this->properties[$name]['type'] = 'mixed'; $this->properties[$name]['read'] = false; $this->properties[$name]['write'] = false; @@ -697,12 +715,12 @@ class ModelsCommand extends Command } } - protected function setMethod($name, $type = '', $arguments = array()) + protected function setMethod($name, $type = '', $arguments = []) { $methods = array_change_key_case($this->methods, CASE_LOWER); if (!isset($methods[strtolower($name)])) { - $this->methods[$name] = array(); + $this->methods[$name] = []; $this->methods[$name]['type'] = $type; $this->methods[$name]['arguments'] = $arguments; } @@ -740,13 +758,13 @@ class ModelsCommand extends Command $phpdoc->setText($class); } - $properties = array(); - $methods = array(); + $properties = []; + $methods = []; foreach ($phpdoc->getTags() as $tag) { $name = $tag->getName(); - if ($name == "property" || $name == "property-read" || $name == "property-write") { + if ($name == 'property' || $name == 'property-read' || $name == 'property-write') { $properties[] = $tag->getVariableName(); - } elseif ($name == "method") { + } elseif ($name == 'method') { $methods[] = $tag->getMethodName(); } } @@ -785,37 +803,54 @@ class ModelsCommand extends Command $phpdoc->appendTag($tag); } - if ($this->write && ! $phpdoc->getTagsByName('mixin')) { + if ($this->write && !$phpdoc->getTagsByName('mixin')) { $eloquentClassNameInModel = $this->getClassNameInDestinationFile($reflection, 'Eloquent'); - $phpdoc->appendTag(Tag::createInstance("@mixin " . $eloquentClassNameInModel, $phpdoc)); + $phpdoc->appendTag(Tag::createInstance('@mixin ' . $eloquentClassNameInModel, $phpdoc)); } if ($this->phpstorm_noinspections) { /** * Facades, Eloquent API * @see https://www.jetbrains.com/help/phpstorm/php-fully-qualified-name-usage.html */ - $phpdoc->appendTag(Tag::createInstance("@noinspection PhpFullyQualifiedNameUsageInspection", $phpdoc)); + $phpdoc->appendTag(Tag::createInstance('@noinspection PhpFullyQualifiedNameUsageInspection', $phpdoc)); /** * Relations, other models in the same namespace * @see https://www.jetbrains.com/help/phpstorm/php-unnecessary-fully-qualified-name.html */ $phpdoc->appendTag( - Tag::createInstance("@noinspection PhpUnnecessaryFullyQualifiedNameInspection", $phpdoc) + Tag::createInstance('@noinspection PhpUnnecessaryFullyQualifiedNameInspection', $phpdoc) ); } $serializer = new DocBlockSerializer(); - $serializer->getDocComment($phpdoc); $docComment = $serializer->getDocComment($phpdoc); + if ($this->write_mixin) { + $phpdocMixin = new DocBlock($reflection, new Context($namespace)); + // remove all mixin tags prefixed with IdeHelper + foreach ($phpdocMixin->getTagsByName('mixin') as $tag) { + if (Str::startsWith($tag->getContent(), 'IdeHelper')) { + $phpdocMixin->deleteTag($tag); + } + } + + $mixinClassName = "IdeHelper{$classname}"; + $phpdocMixin->appendTag(Tag::createInstance("@mixin {$mixinClassName}", $phpdocMixin)); + $mixinDocComment = $serializer->getDocComment($phpdocMixin); + // remove blank lines if there's no text + if (!$phpdocMixin->getText()) { + $mixinDocComment = preg_replace("/\s\*\s*\n/", '', $mixinDocComment); + } + } if ($this->write) { + $modelDocComment = $this->write_mixin ? $mixinDocComment : $docComment; $filename = $reflection->getFileName(); $contents = $this->files->get($filename); if ($originalDoc) { - $contents = str_replace($originalDoc, $docComment, $contents); + $contents = str_replace($originalDoc, $modelDocComment, $contents); } else { - $replace = "{$docComment}\n"; + $replace = "{$modelDocComment}\n"; $pos = strpos($contents, "final class {$classname}") ?: strpos($contents, "class {$classname}"); if ($pos !== false) { $contents = substr_replace($contents, $replace, $pos, 0); @@ -826,6 +861,7 @@ class ModelsCommand extends Command } } + $classname = $this->write_mixin ? $mixinClassName : $classname; $output = "namespace {$namespace}{\n{$docComment}\n\t{$keyword}class {$classname} extends \Eloquent "; if ($interfaceNames) { @@ -844,14 +880,12 @@ class ModelsCommand extends Command */ public function getParameters($method) { - //Loop through the default values for paremeters, and make the correct output string - $params = array(); - $paramsWithDefault = array(); + //Loop through the default values for parameters, and make the correct output string + $paramsWithDefault = []; /** @var \ReflectionParameter $param */ foreach ($method->getParameters() as $param) { $paramClass = $param->getClass(); $paramStr = (!is_null($paramClass) ? '\\' . $paramClass->getName() . ' ' : '') . '$' . $param->getName(); - $params[] = $paramStr; if ($param->isOptional() && $param->isDefaultValueAvailable()) { $default = $param->getDefaultValue(); if (is_bool($default)) { @@ -1034,11 +1068,6 @@ class ModelsCommand extends Command return $type; } - /** - * @param object|ReflectionClass $model - * @param string $type - * @return string - */ protected function getTypeInModel(object $model, ?string $type): ?string { if ($type === null) { @@ -1052,11 +1081,6 @@ class ModelsCommand extends Command return $type; } - /** - * @param object|ReflectionClass $model - * @param string $className - * @return string - */ protected function getClassNameInDestinationFile(object $model, string $className): string { $reflection = $model instanceof ReflectionClass @@ -1067,8 +1091,9 @@ class ModelsCommand extends Command $className = trim($className, '\\'); $writingToExternalFile = !$this->write; $classIsNotInExternalFile = $reflection->getName() !== $className; + $forceFQCN = $this->laravel['config']->get('ide-helper.force_fqn', false); - if ($writingToExternalFile && $classIsNotInExternalFile) { + if (($writingToExternalFile && $classIsNotInExternalFile) || $forceFQCN) { return '\\' . $className; } diff --git a/conf/site/vendor/barryvdh/laravel-ide-helper/src/Eloquent.php b/conf/site/vendor/barryvdh/laravel-ide-helper/src/Eloquent.php index e2125e96..23f39dd9 100644 --- a/conf/site/vendor/barryvdh/laravel-ide-helper/src/Eloquent.php +++ b/conf/site/vendor/barryvdh/laravel-ide-helper/src/Eloquent.php @@ -8,12 +8,12 @@ namespace Barryvdh\LaravelIdeHelper; -use Illuminate\Console\Command; -use Illuminate\Filesystem\Filesystem; use Barryvdh\Reflection\DocBlock; use Barryvdh\Reflection\DocBlock\Context; use Barryvdh\Reflection\DocBlock\Serializer as DocBlockSerializer; use Barryvdh\Reflection\DocBlock\Tag; +use Illuminate\Console\Command; +use Illuminate\Filesystem\Filesystem; class Eloquent { @@ -85,25 +85,29 @@ class Eloquent } $filename = $reflection->getFileName(); - if ($filename) { - $contents = $files->get($filename); - if ($contents) { - $count = 0; - $contents = str_replace($originalDoc, $docComment, $contents, $count); - if ($count > 0) { - if ($files->put($filename, $contents)) { - $command->info('Wrote expected docblock to ' . $filename); - } else { - $command->error('File write failed to ' . $filename); - } - } else { - $command->error('Content did not change ' . $contents); - } - } else { - $command->error('No file contents found ' . $filename); - } - } else { + if (!$filename) { $command->error('Filename not found ' . $class); + return; } + + $contents = $files->get($filename); + if (!$contents) { + $command->error('No file contents found ' . $filename); + return; + } + + $count = 0; + $contents = str_replace($originalDoc, $docComment, $contents, $count); + if ($count <= 0) { + $command->error('Content did not change ' . $contents); + return; + } + + if (!$files->put($filename, $contents)) { + $command->error('File write failed to ' . $filename); + return; + } + + $command->info('Wrote expected docblock to ' . $filename); } } diff --git a/conf/site/vendor/barryvdh/laravel-ide-helper/src/Factories.php b/conf/site/vendor/barryvdh/laravel-ide-helper/src/Factories.php index fffded87..7038edec 100644 --- a/conf/site/vendor/barryvdh/laravel-ide-helper/src/Factories.php +++ b/conf/site/vendor/barryvdh/laravel-ide-helper/src/Factories.php @@ -8,7 +8,6 @@ use ReflectionClass; class Factories { - public static function all() { $factories = []; diff --git a/conf/site/vendor/barryvdh/laravel-ide-helper/src/Generator.php b/conf/site/vendor/barryvdh/laravel-ide-helper/src/Generator.php index 6e1c487e..877e9156 100644 --- a/conf/site/vendor/barryvdh/laravel-ide-helper/src/Generator.php +++ b/conf/site/vendor/barryvdh/laravel-ide-helper/src/Generator.php @@ -11,9 +11,10 @@ namespace Barryvdh\LaravelIdeHelper; -use Illuminate\Foundation\Application; use Illuminate\Foundation\AliasLoader; use Illuminate\Support\Collection; +use Illuminate\Support\Str; +use Illuminate\Support\Traits\Macroable; use ReflectionClass; use Symfony\Component\Console\Output\OutputInterface; @@ -28,9 +29,9 @@ class Generator /** @var \Symfony\Component\Console\Output\OutputInterface */ protected $output; - protected $extra = array(); - protected $magic = array(); - protected $interfaces = array(); + protected $extra = []; + protected $magic = []; + protected $interfaces = []; protected $helpers; /** @@ -40,8 +41,10 @@ class Generator * @param string $helpers */ public function __construct( - /*ConfigRepository */ $config, - /* Illuminate\View\Factory */ $view, + /*ConfigRepository */ + $config, + /* Illuminate\View\Factory */ + $view, OutputInterface $output = null, $helpers = '' ) { @@ -93,16 +96,16 @@ class Generator public function generateJsonHelper() { - $classes = array(); + $classes = []; foreach ($this->getValidAliases() as $aliases) { foreach ($aliases as $alias) { - $functions = array(); + $functions = []; foreach ($alias->getMethods() as $method) { $functions[$method->getName()] = '(' . $method->getParamsWithDefault() . ')'; } - $classes[$alias->getAlias()] = array( + $classes[$alias->getAlias()] = [ 'functions' => $functions, - ); + ]; } } @@ -111,11 +114,11 @@ class Generator $flags |= JSON_PRETTY_PRINT; } - return json_encode(array( - 'php' => array( + return json_encode([ + 'php' => [ 'classes' => $classes, - ), - ), $flags); + ], + ], $flags); } protected function detectDrivers() @@ -129,7 +132,7 @@ class Generator && app()->bound('auth') ) { $class = get_class(\Auth::guard()); - $this->extra['Auth'] = array($class); + $this->extra['Auth'] = [$class]; $this->interfaces['\Illuminate\Auth\UserProviderInterface'] = $class; } } catch (\Exception $e) { @@ -138,7 +141,7 @@ class Generator try { if (class_exists('DB') && is_a('DB', '\Illuminate\Support\Facades\DB', true)) { $class = get_class(\DB::connection()); - $this->extra['DB'] = array($class); + $this->extra['DB'] = [$class]; $this->interfaces['\Illuminate\Database\ConnectionInterface'] = $class; } } catch (\Exception $e) { @@ -148,7 +151,7 @@ class Generator if (class_exists('Cache') && is_a('Cache', '\Illuminate\Support\Facades\Cache', true)) { $driver = get_class(\Cache::driver()); $store = get_class(\Cache::getStore()); - $this->extra['Cache'] = array($driver, $store); + $this->extra['Cache'] = [$driver, $store]; $this->interfaces['\Illuminate\Cache\StoreInterface'] = $store; } } catch (\Exception $e) { @@ -157,7 +160,7 @@ class Generator try { if (class_exists('Queue') && is_a('Queue', '\Illuminate\Support\Facades\Queue', true)) { $class = get_class(\Queue::connection()); - $this->extra['Queue'] = array($class); + $this->extra['Queue'] = [$class]; $this->interfaces['\Illuminate\Queue\QueueInterface'] = $class; } } catch (\Exception $e) { @@ -166,7 +169,7 @@ class Generator try { if (class_exists('SSH') && is_a('SSH', '\Illuminate\Support\Facades\SSH', true)) { $class = get_class(\SSH::connection()); - $this->extra['SSH'] = array($class); + $this->extra['SSH'] = [$class]; $this->interfaces['\Illuminate\Remote\ConnectionInterface'] = $class; } } catch (\Exception $e) { @@ -175,7 +178,7 @@ class Generator try { if (class_exists('Storage') && is_a('Storage', '\Illuminate\Support\Facades\Storage', true)) { $class = get_class(\Storage::disk()); - $this->extra['Storage'] = array($class); + $this->extra['Storage'] = [$class]; $this->interfaces['\Illuminate\Contracts\Filesystem\Filesystem'] = $class; } } catch (\Exception $e) { @@ -198,7 +201,7 @@ class Generator continue; } - $magicMethods = array_key_exists($name, $this->magic) ? $this->magic[$name] : array(); + $magicMethods = array_key_exists($name, $this->magic) ? $this->magic[$name] : []; $alias = new Alias($this->config, $name, $facade, $magicMethods, $this->interfaces); if ($alias->isValid()) { //Add extra methods, from other classes (magic static calls) @@ -220,7 +223,11 @@ class Generator */ protected function getAliasesByExtendsNamespace() { - return $this->getValidAliases()->groupBy(function (Alias $alias) { + $aliases = $this->getValidAliases(); + + $this->addMacroableClasses($aliases); + + return $aliases->groupBy(function (Alias $alias) { return $alias->getExtendsNamespace(); }); } @@ -291,4 +298,55 @@ class Generator echo $string . "\r\n"; } } + + /** + * Add all macroable classes which are not already loaded as an alias and have defined macros. + * + * @param Collection $aliases + */ + protected function addMacroableClasses(Collection $aliases) + { + $macroable = $this->getMacroableClasses($aliases); + + foreach ($macroable as $class) { + $reflection = new ReflectionClass($class); + + if (!$reflection->getStaticProperties()['macros']) { + continue; + } + + $aliases[] = new Alias($this->config, $class, $class, [], $this->interfaces); + } + } + + /** + * Get all loaded macroable classes which are not loaded as an alias. + * + * @param Collection $aliases + * @return Collection + */ + protected function getMacroableClasses(Collection $aliases) + { + return (new Collection(get_declared_classes())) + ->filter(function ($class) { + $reflection = new ReflectionClass($class); + + // Filter out internal classes and class aliases + return !$reflection->isInternal() && $reflection->getName() === $class; + }) + ->filter(function ($class) { + $traits = class_uses($class); + + // Filter only classes with the macroable trait + return isset($traits[Macroable::class]); + }) + ->filter(function ($class) use ($aliases) { + $class = Str::start($class, '\\'); + + // Filter out aliases + return !$aliases->first(function (Alias $alias) use ($class) { + return $alias->getExtends() === $class; + }); + }); + } } diff --git a/conf/site/vendor/barryvdh/laravel-ide-helper/src/IdeHelperServiceProvider.php b/conf/site/vendor/barryvdh/laravel-ide-helper/src/IdeHelperServiceProvider.php index 6988ea6e..42b128a8 100644 --- a/conf/site/vendor/barryvdh/laravel-ide-helper/src/IdeHelperServiceProvider.php +++ b/conf/site/vendor/barryvdh/laravel-ide-helper/src/IdeHelperServiceProvider.php @@ -15,6 +15,7 @@ use Barryvdh\LaravelIdeHelper\Console\EloquentCommand; use Barryvdh\LaravelIdeHelper\Console\GeneratorCommand; use Barryvdh\LaravelIdeHelper\Console\MetaCommand; use Barryvdh\LaravelIdeHelper\Console\ModelsCommand; +use Illuminate\Foundation\Application; use Illuminate\Support\ServiceProvider; use Illuminate\View\Engines\EngineResolver; use Illuminate\View\Engines\PhpEngine; @@ -23,7 +24,6 @@ use Illuminate\View\FileViewFinder; class IdeHelperServiceProvider extends ServiceProvider { - /** * Indicates if loading of the provider is deferred. * @@ -86,7 +86,7 @@ class IdeHelperServiceProvider extends ServiceProvider $this->app->singleton( 'command.ide-helper.eloquent', - function ($app) use ($localViewFactory) { + function ($app) { return new EloquentCommand($app['files']); } ); @@ -106,7 +106,7 @@ class IdeHelperServiceProvider extends ServiceProvider */ public function provides() { - return array('command.ide-helper.generate', 'command.ide-helper.models'); + return ['command.ide-helper.generate', 'command.ide-helper.models']; } /** @@ -116,7 +116,11 @@ class IdeHelperServiceProvider extends ServiceProvider { $resolver = new EngineResolver(); $resolver->register('php', function () { - return new PhpEngine(); + if ((int) Application::VERSION < 8) { + return new PhpEngine(); + } + + return new PhpEngine($this->app['files']); }); $finder = new FileViewFinder($this->app['files'], [__DIR__ . '/../resources/views']); $factory = new Factory($resolver, $finder, $this->app['events']); diff --git a/conf/site/vendor/barryvdh/laravel-ide-helper/src/Macro.php b/conf/site/vendor/barryvdh/laravel-ide-helper/src/Macro.php index 95f214e1..55132fe2 100644 --- a/conf/site/vendor/barryvdh/laravel-ide-helper/src/Macro.php +++ b/conf/site/vendor/barryvdh/laravel-ide-helper/src/Macro.php @@ -21,7 +21,7 @@ class Macro extends Method $alias, $class, $methodName = null, - $interfaces = array() + $interfaces = [] ) { parent::__construct($method, $alias, $class, $methodName, $interfaces); } @@ -31,7 +31,26 @@ class Macro extends Method */ protected function initPhpDoc($method) { - $this->phpdoc = new DocBlock($method); + $this->phpdoc = new DocBlock('/** */'); + + // Add macro parameters + foreach ($method->getParameters() as $parameter) { + $type = $parameter->hasType() ? $parameter->getType()->getName() : 'mixed'; + $type .= $parameter->hasType() && $parameter->getType()->allowsNull() ? '|null' : ''; + + $name = $parameter->isVariadic() ? '...' : ''; + $name .= '$' . $parameter->getName(); + + $this->phpdoc->appendTag(Tag::createInstance("@param {$type} {$name}")); + } + + // Add macro return type + if ($method->hasReturnType()) { + $type = $method->getReturnType()->getName(); + $type .= $method->getReturnType()->allowsNull() ? '|null' : ''; + + $this->phpdoc->appendTag(Tag::createInstance("@return {$type}")); + } } /** diff --git a/conf/site/vendor/barryvdh/laravel-ide-helper/src/Method.php b/conf/site/vendor/barryvdh/laravel-ide-helper/src/Method.php index 2917906d..ea090c6a 100644 --- a/conf/site/vendor/barryvdh/laravel-ide-helper/src/Method.php +++ b/conf/site/vendor/barryvdh/laravel-ide-helper/src/Method.php @@ -13,10 +13,10 @@ namespace Barryvdh\LaravelIdeHelper; use Barryvdh\Reflection\DocBlock; use Barryvdh\Reflection\DocBlock\Context; -use Barryvdh\Reflection\DocBlock\Tag; -use Barryvdh\Reflection\DocBlock\Tag\ReturnTag; -use Barryvdh\Reflection\DocBlock\Tag\ParamTag; use Barryvdh\Reflection\DocBlock\Serializer as DocBlockSerializer; +use Barryvdh\Reflection\DocBlock\Tag; +use Barryvdh\Reflection\DocBlock\Tag\ParamTag; +use Barryvdh\Reflection\DocBlock\Tag\ReturnTag; use Illuminate\Database\Eloquent\Builder; use Illuminate\Support\Str; @@ -32,9 +32,9 @@ class Method protected $declaringClassName; protected $name; protected $namespace; - protected $params = array(); - protected $params_with_default = array(); - protected $interfaces = array(); + protected $params = []; + protected $params_with_default = []; + protected $interfaces = []; protected $real_name; protected $return = null; protected $root; @@ -46,7 +46,7 @@ class Method * @param string|null $methodName * @param array $interfaces */ - public function __construct($method, $alias, $class, $methodName = null, $interfaces = array()) + public function __construct($method, $alias, $class, $methodName = null, $interfaces = []) { $this->method = $method; $this->interfaces = $interfaces; @@ -119,7 +119,7 @@ class Method */ public function isInstanceCall() { - return ! ($this->method->isClosure() || $this->method->isStatic()); + return !($this->method->isClosure() || $this->method->isStatic()); } /** @@ -251,35 +251,37 @@ class Method */ protected function normalizeReturn(DocBlock $phpdoc) { - //Get the return type and adjust them for beter autocomplete + //Get the return type and adjust them for better autocomplete $returnTags = $phpdoc->getTagsByName('return'); - if ($returnTags) { - /** @var ReturnTag $tag */ - $tag = reset($returnTags); - // Get the expanded type - $returnValue = $tag->getType(); - // Replace the interfaces - foreach ($this->interfaces as $interface => $real) { - $returnValue = str_replace($interface, $real, $returnValue); - } - - // Set the changed content - $tag->setContent($returnValue . ' ' . $tag->getDescription()); - $this->return = $returnValue; - - if ($tag->getType() === '$this') { - Str::contains($this->root, Builder::class) - ? $tag->setType($this->root . '|static') - : $tag->setType($this->root); - } - } else { + if (count($returnTags) === 0) { $this->return = null; + return; + } + + /** @var ReturnTag $tag */ + $tag = reset($returnTags); + // Get the expanded type + $returnValue = $tag->getType(); + + // Replace the interfaces + foreach ($this->interfaces as $interface => $real) { + $returnValue = str_replace($interface, $real, $returnValue); + } + + // Set the changed content + $tag->setContent($returnValue . ' ' . $tag->getDescription()); + $this->return = $returnValue; + + if ($tag->getType() === '$this') { + Str::contains($this->root, Builder::class) + ? $tag->setType($this->root . '|static') + : $tag->setType($this->root); } } /** - * Convert keywwords that are incorrect. + * Convert keywords that are incorrect. * * @param string $string * @return string @@ -300,7 +302,7 @@ class Method */ public function shouldReturn() { - if ($this->return !== "void" && $this->method->name !== "__construct") { + if ($this->return !== 'void' && $this->method->name !== '__construct') { return true; } @@ -311,13 +313,13 @@ class Method * Get the parameters and format them correctly * * @param \ReflectionMethod $method - * @return array + * @return void */ public function getParameters($method) { - //Loop through the default values for paremeters, and make the correct output string - $params = array(); - $paramsWithDefault = array(); + //Loop through the default values for parameters, and make the correct output string + $params = []; + $paramsWithDefault = []; foreach ($method->getParameters() as $param) { $paramStr = $param->isVariadic() ? '...$' . $param->getName() : '$' . $param->getName(); $params[] = $paramStr; @@ -366,9 +368,9 @@ class Method if (strpos($phpdoc->getText(), '{@inheritdoc}') !== false) { //Not at the end yet, try another parent/interface.. return $this->getInheritDoc($method); - } else { - return $phpdoc; } + + return $phpdoc; } } } diff --git a/conf/site/vendor/composer/autoload_classmap.php b/conf/site/vendor/composer/autoload_classmap.php index 8ce94cce..7323c056 100644 --- a/conf/site/vendor/composer/autoload_classmap.php +++ b/conf/site/vendor/composer/autoload_classmap.php @@ -5232,6 +5232,7 @@ return array( 'Symfony\\Component\\VarDumper\\VarDumper' => $vendorDir . '/symfony/var-dumper/VarDumper.php', 'Symfony\\Contracts\\EventDispatcher\\Event' => $vendorDir . '/symfony/event-dispatcher-contracts/Event.php', 'Symfony\\Contracts\\EventDispatcher\\EventDispatcherInterface' => $vendorDir . '/symfony/event-dispatcher-contracts/EventDispatcherInterface.php', + 'Symfony\\Contracts\\Service\\Attribute\\Required' => $vendorDir . '/symfony/service-contracts/Attribute/Required.php', 'Symfony\\Contracts\\Service\\ResetInterface' => $vendorDir . '/symfony/service-contracts/ResetInterface.php', 'Symfony\\Contracts\\Service\\ServiceLocatorTrait' => $vendorDir . '/symfony/service-contracts/ServiceLocatorTrait.php', 'Symfony\\Contracts\\Service\\ServiceProviderInterface' => $vendorDir . '/symfony/service-contracts/ServiceProviderInterface.php', diff --git a/conf/site/vendor/composer/autoload_files.php b/conf/site/vendor/composer/autoload_files.php index 21f16522..df54acab 100644 --- a/conf/site/vendor/composer/autoload_files.php +++ b/conf/site/vendor/composer/autoload_files.php @@ -15,8 +15,8 @@ return array( '6e3fae29631ef280660b3cdad06f25a8' => $vendorDir . '/symfony/deprecation-contracts/function.php', '9b38cf48e83f5d8f60375221cd213eee' => $vendorDir . '/phpstan/phpstan/bootstrap.php', '0d59ee240a4cd96ddbb4ff164fccea4d' => $vendorDir . '/symfony/polyfill-php73/bootstrap.php', - '667aeda72477189d0494fecd327c3641' => $vendorDir . '/symfony/var-dumper/Resources/functions/dump.php', '320cde22f66dd4f5d3fd621d3e88b98f' => $vendorDir . '/symfony/polyfill-ctype/bootstrap.php', + '667aeda72477189d0494fecd327c3641' => $vendorDir . '/symfony/var-dumper/Resources/functions/dump.php', '801c31d8ed748cfa537fa45402288c95' => $vendorDir . '/psy/psysh/src/functions.php', 'def43f6c87e4f8dfd0c9e1b1bab14fe8' => $vendorDir . '/symfony/polyfill-iconv/bootstrap.php', '2c102faa651ef8ea5874edb585946bce' => $vendorDir . '/swiftmailer/swiftmailer/lib/swift_required.php', @@ -28,11 +28,11 @@ return array( '538ca81a9a966a6716601ecf48f4eaef' => $vendorDir . '/opis/closure/functions.php', 'f0906e6318348a765ffb6eb24e0d0938' => $vendorDir . '/laravel/framework/src/Illuminate/Foundation/helpers.php', '58571171fd5812e6e447dce228f52f4d' => $vendorDir . '/laravel/framework/src/Illuminate/Support/helpers.php', - '9cdd7b9056abc3081735233ba9dd9c7f' => $vendorDir . '/facade/flare-client-php/src/helpers.php', - 'b6ec61354e97f32c0ae683041c78392a' => $vendorDir . '/scrivo/highlight.php/HighlightUtilities/functions.php', '8825ede83f2f289127722d4e842cf7e8' => $vendorDir . '/symfony/polyfill-intl-grapheme/bootstrap.php', 'bd9634f2d41831496de0d3dfe4c94881' => $vendorDir . '/symfony/polyfill-php56/bootstrap.php', - 'ed962a97bd972bc82007176b647d4e36' => $vendorDir . '/facade/ignition/src/helpers.php', + 'b6ec61354e97f32c0ae683041c78392a' => $vendorDir . '/scrivo/highlight.php/HighlightUtilities/functions.php', + '9cdd7b9056abc3081735233ba9dd9c7f' => $vendorDir . '/facade/flare-client-php/src/helpers.php', '6124b4c8570aa390c21fafd04a26c69f' => $vendorDir . '/myclabs/deep-copy/src/DeepCopy/deep_copy.php', 'b6b991a57620e2fb6b2f66f03fe9ddc2' => $vendorDir . '/symfony/string/Resources/functions.php', + 'ed962a97bd972bc82007176b647d4e36' => $vendorDir . '/facade/ignition/src/helpers.php', ); diff --git a/conf/site/vendor/composer/autoload_psr4.php b/conf/site/vendor/composer/autoload_psr4.php index 0dd05b37..a923c905 100644 --- a/conf/site/vendor/composer/autoload_psr4.php +++ b/conf/site/vendor/composer/autoload_psr4.php @@ -7,7 +7,7 @@ $baseDir = dirname($vendorDir); return array( 'voku\\' => array($vendorDir . '/voku/portable-ascii/src/voku'), - 'phpDocumentor\\Reflection\\' => array($vendorDir . '/phpdocumentor/reflection-common/src', $vendorDir . '/phpdocumentor/reflection-docblock/src', $vendorDir . '/phpdocumentor/type-resolver/src'), + 'phpDocumentor\\Reflection\\' => array($vendorDir . '/phpdocumentor/reflection-docblock/src', $vendorDir . '/phpdocumentor/reflection-common/src', $vendorDir . '/phpdocumentor/type-resolver/src'), 'XdgBaseDir\\' => array($vendorDir . '/dnoegel/php-xdg-base-dir/src'), 'Whoops\\' => array($vendorDir . '/filp/whoops/src/Whoops'), 'Webmozart\\Assert\\' => array($vendorDir . '/webmozart/assert/src'), diff --git a/conf/site/vendor/composer/autoload_static.php b/conf/site/vendor/composer/autoload_static.php index 3506a00f..f6e1b97f 100644 --- a/conf/site/vendor/composer/autoload_static.php +++ b/conf/site/vendor/composer/autoload_static.php @@ -16,8 +16,8 @@ class ComposerStaticInita54da675f7e63b2b06cffe7d297f5df8 '6e3fae29631ef280660b3cdad06f25a8' => __DIR__ . '/..' . '/symfony/deprecation-contracts/function.php', '9b38cf48e83f5d8f60375221cd213eee' => __DIR__ . '/..' . '/phpstan/phpstan/bootstrap.php', '0d59ee240a4cd96ddbb4ff164fccea4d' => __DIR__ . '/..' . '/symfony/polyfill-php73/bootstrap.php', - '667aeda72477189d0494fecd327c3641' => __DIR__ . '/..' . '/symfony/var-dumper/Resources/functions/dump.php', '320cde22f66dd4f5d3fd621d3e88b98f' => __DIR__ . '/..' . '/symfony/polyfill-ctype/bootstrap.php', + '667aeda72477189d0494fecd327c3641' => __DIR__ . '/..' . '/symfony/var-dumper/Resources/functions/dump.php', '801c31d8ed748cfa537fa45402288c95' => __DIR__ . '/..' . '/psy/psysh/src/functions.php', 'def43f6c87e4f8dfd0c9e1b1bab14fe8' => __DIR__ . '/..' . '/symfony/polyfill-iconv/bootstrap.php', '2c102faa651ef8ea5874edb585946bce' => __DIR__ . '/..' . '/swiftmailer/swiftmailer/lib/swift_required.php', @@ -29,13 +29,13 @@ class ComposerStaticInita54da675f7e63b2b06cffe7d297f5df8 '538ca81a9a966a6716601ecf48f4eaef' => __DIR__ . '/..' . '/opis/closure/functions.php', 'f0906e6318348a765ffb6eb24e0d0938' => __DIR__ . '/..' . '/laravel/framework/src/Illuminate/Foundation/helpers.php', '58571171fd5812e6e447dce228f52f4d' => __DIR__ . '/..' . '/laravel/framework/src/Illuminate/Support/helpers.php', - '9cdd7b9056abc3081735233ba9dd9c7f' => __DIR__ . '/..' . '/facade/flare-client-php/src/helpers.php', - 'b6ec61354e97f32c0ae683041c78392a' => __DIR__ . '/..' . '/scrivo/highlight.php/HighlightUtilities/functions.php', '8825ede83f2f289127722d4e842cf7e8' => __DIR__ . '/..' . '/symfony/polyfill-intl-grapheme/bootstrap.php', 'bd9634f2d41831496de0d3dfe4c94881' => __DIR__ . '/..' . '/symfony/polyfill-php56/bootstrap.php', - 'ed962a97bd972bc82007176b647d4e36' => __DIR__ . '/..' . '/facade/ignition/src/helpers.php', + 'b6ec61354e97f32c0ae683041c78392a' => __DIR__ . '/..' . '/scrivo/highlight.php/HighlightUtilities/functions.php', + '9cdd7b9056abc3081735233ba9dd9c7f' => __DIR__ . '/..' . '/facade/flare-client-php/src/helpers.php', '6124b4c8570aa390c21fafd04a26c69f' => __DIR__ . '/..' . '/myclabs/deep-copy/src/DeepCopy/deep_copy.php', 'b6b991a57620e2fb6b2f66f03fe9ddc2' => __DIR__ . '/..' . '/symfony/string/Resources/functions.php', + 'ed962a97bd972bc82007176b647d4e36' => __DIR__ . '/..' . '/facade/ignition/src/helpers.php', ); public static $prefixLengthsPsr4 = array ( @@ -212,8 +212,8 @@ class ComposerStaticInita54da675f7e63b2b06cffe7d297f5df8 ), 'phpDocumentor\\Reflection\\' => array ( - 0 => __DIR__ . '/..' . '/phpdocumentor/reflection-common/src', - 1 => __DIR__ . '/..' . '/phpdocumentor/reflection-docblock/src', + 0 => __DIR__ . '/..' . '/phpdocumentor/reflection-docblock/src', + 1 => __DIR__ . '/..' . '/phpdocumentor/reflection-common/src', 2 => __DIR__ . '/..' . '/phpdocumentor/type-resolver/src', ), 'XdgBaseDir\\' => @@ -5857,6 +5857,7 @@ class ComposerStaticInita54da675f7e63b2b06cffe7d297f5df8 'Symfony\\Component\\VarDumper\\VarDumper' => __DIR__ . '/..' . '/symfony/var-dumper/VarDumper.php', 'Symfony\\Contracts\\EventDispatcher\\Event' => __DIR__ . '/..' . '/symfony/event-dispatcher-contracts/Event.php', 'Symfony\\Contracts\\EventDispatcher\\EventDispatcherInterface' => __DIR__ . '/..' . '/symfony/event-dispatcher-contracts/EventDispatcherInterface.php', + 'Symfony\\Contracts\\Service\\Attribute\\Required' => __DIR__ . '/..' . '/symfony/service-contracts/Attribute/Required.php', 'Symfony\\Contracts\\Service\\ResetInterface' => __DIR__ . '/..' . '/symfony/service-contracts/ResetInterface.php', 'Symfony\\Contracts\\Service\\ServiceLocatorTrait' => __DIR__ . '/..' . '/symfony/service-contracts/ServiceLocatorTrait.php', 'Symfony\\Contracts\\Service\\ServiceProviderInterface' => __DIR__ . '/..' . '/symfony/service-contracts/ServiceProviderInterface.php', diff --git a/conf/site/vendor/composer/installed.json b/conf/site/vendor/composer/installed.json index 00add99f..09e575b2 100644 --- a/conf/site/vendor/composer/installed.json +++ b/conf/site/vendor/composer/installed.json @@ -55,44 +55,45 @@ }, { "name": "barryvdh/laravel-ide-helper", - "version": "v2.8.0", - "version_normalized": "2.8.0.0", + "version": "v2.8.1", + "version_normalized": "2.8.1.0", "source": { "type": "git", "url": "https://github.com/barryvdh/laravel-ide-helper.git", - "reference": "ba95d18ef55c91295250ae8b7bfa73d8fb866b9b" + "reference": "affa55122f83575888d4ebf1728992686e8223de" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/barryvdh/laravel-ide-helper/zipball/ba95d18ef55c91295250ae8b7bfa73d8fb866b9b", - "reference": "ba95d18ef55c91295250ae8b7bfa73d8fb866b9b", + "url": "https://api.github.com/repos/barryvdh/laravel-ide-helper/zipball/affa55122f83575888d4ebf1728992686e8223de", + "reference": "affa55122f83575888d4ebf1728992686e8223de", "shasum": "" }, "require": { "barryvdh/reflection-docblock": "^2.0.6", "composer/composer": "^1.6 || ^2.0@dev", "doctrine/dbal": "~2.3", - "illuminate/console": "^5.5 || ^6 || ^7", - "illuminate/filesystem": "^5.5 || ^6 || ^7", - "illuminate/support": "^5.5 || ^6 || ^7", + "ext-json": "*", + "illuminate/console": "^6 || ^7 || ^8", + "illuminate/filesystem": "^6 || ^7 || ^8", + "illuminate/support": "^6 || ^7 || ^8", "php": ">=7.2", "phpdocumentor/type-resolver": "^1.1.0" }, "require-dev": { - "illuminate/config": "^5.5 || ^6 || ^7", - "illuminate/view": "^5.5 || ^6 || ^7", + "friendsofphp/php-cs-fixer": "^2", + "illuminate/config": "^6 || ^7 || ^8", + "illuminate/view": "^6 || ^7 || ^8", "mockery/mockery": "^1.3", - "orchestra/testbench": "^3.5 || ^4 || ^5", - "phpro/grumphp": "^0.19.0", + "orchestra/testbench": "^4 || ^5 || ^6", + "phpunit/phpunit": "^8.5 || ^9", "spatie/phpunit-snapshot-assertions": "^1.4 || ^2.2 || ^3", - "squizlabs/php_codesniffer": "^3.5", "vimeo/psalm": "^3.12" }, - "time": "2020-08-10T08:22:48+00:00", + "time": "2020-09-07T07:36:37+00:00", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.7-dev" + "dev-master": "2.8-dev" }, "laravel": { "providers": [ @@ -1202,17 +1203,17 @@ }, { "name": "egulias/email-validator", - "version": "2.1.19", - "version_normalized": "2.1.19.0", + "version": "2.1.20", + "version_normalized": "2.1.20.0", "source": { "type": "git", "url": "https://github.com/egulias/EmailValidator.git", - "reference": "840d5603eb84cc81a6a0382adac3293e57c1c64c" + "reference": "f46887bc48db66c7f38f668eb7d6ae54583617ff" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/840d5603eb84cc81a6a0382adac3293e57c1c64c", - "reference": "840d5603eb84cc81a6a0382adac3293e57c1c64c", + "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/f46887bc48db66c7f38f668eb7d6ae54583617ff", + "reference": "f46887bc48db66c7f38f668eb7d6ae54583617ff", "shasum": "" }, "require": { @@ -1228,7 +1229,7 @@ "suggest": { "ext-intl": "PHP Internationalization Libraries are required to use the SpoofChecking validation" }, - "time": "2020-08-08T21:28:19+00:00", + "time": "2020-09-06T13:44:32+00:00", "type": "library", "extra": { "branch-alias": { @@ -1262,22 +1263,22 @@ }, { "name": "facade/flare-client-php", - "version": "1.3.4", - "version_normalized": "1.3.4.0", + "version": "1.3.5", + "version_normalized": "1.3.5.0", "source": { "type": "git", "url": "https://github.com/facade/flare-client-php.git", - "reference": "0eeb0de4fc1078433f0915010bd8f41e998adcb4" + "reference": "25907a113bfc212a38d458ae365bfb902b4e7fb8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/facade/flare-client-php/zipball/0eeb0de4fc1078433f0915010bd8f41e998adcb4", - "reference": "0eeb0de4fc1078433f0915010bd8f41e998adcb4", + "url": "https://api.github.com/repos/facade/flare-client-php/zipball/25907a113bfc212a38d458ae365bfb902b4e7fb8", + "reference": "25907a113bfc212a38d458ae365bfb902b4e7fb8", "shasum": "" }, "require": { "facade/ignition-contracts": "~1.0", - "illuminate/pipeline": "^5.5|^6.0|^7.0", + "illuminate/pipeline": "^5.5|^6.0|^7.0|^8.0", "php": "^7.1", "symfony/http-foundation": "^3.3|^4.1|^5.0", "symfony/mime": "^3.4|^4.0|^5.1", @@ -1289,7 +1290,7 @@ "phpunit/phpunit": "^7.5.16", "spatie/phpunit-snapshot-assertions": "^2.0" }, - "time": "2020-07-13T23:25:57+00:00", + "time": "2020-08-26T18:06:23+00:00", "type": "library", "extra": { "branch-alias": { @@ -1326,17 +1327,17 @@ }, { "name": "facade/ignition", - "version": "2.3.6", - "version_normalized": "2.3.6.0", + "version": "2.3.7", + "version_normalized": "2.3.7.0", "source": { "type": "git", "url": "https://github.com/facade/ignition.git", - "reference": "d7d05dba5a0bdbf018a2cb7be268f22f5d73eb81" + "reference": "b364db8860a63c1fb58b72b9718863c21df08762" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/facade/ignition/zipball/d7d05dba5a0bdbf018a2cb7be268f22f5d73eb81", - "reference": "d7d05dba5a0bdbf018a2cb7be268f22f5d73eb81", + "url": "https://api.github.com/repos/facade/ignition/zipball/b364db8860a63c1fb58b72b9718863c21df08762", + "reference": "b364db8860a63c1fb58b72b9718863c21df08762", "shasum": "" }, "require": { @@ -1355,13 +1356,13 @@ "require-dev": { "friendsofphp/php-cs-fixer": "^2.14", "mockery/mockery": "^1.3", - "orchestra/testbench": "5.0", + "orchestra/testbench": "^5.0|^6.0", "psalm/plugin-laravel": "^1.2" }, "suggest": { "laravel/telescope": "^3.1" }, - "time": "2020-08-10T13:50:38+00:00", + "time": "2020-09-06T19:26:27+00:00", "type": "library", "extra": { "branch-alias": { @@ -1570,37 +1571,34 @@ }, { "name": "fruitcake/laravel-cors", - "version": "v2.0.1", - "version_normalized": "2.0.1.0", + "version": "v2.0.2", + "version_normalized": "2.0.2.0", "source": { "type": "git", "url": "https://github.com/fruitcake/laravel-cors.git", - "reference": "dbfc311b25d4873c3c2382b26860be3567492bd6" + "reference": "4b19bfc3bd422948af37a42a62fad7f49025894a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/fruitcake/laravel-cors/zipball/dbfc311b25d4873c3c2382b26860be3567492bd6", - "reference": "dbfc311b25d4873c3c2382b26860be3567492bd6", + "url": "https://api.github.com/repos/fruitcake/laravel-cors/zipball/4b19bfc3bd422948af37a42a62fad7f49025894a", + "reference": "4b19bfc3bd422948af37a42a62fad7f49025894a", "shasum": "" }, "require": { "asm89/stack-cors": "^2.0.1", - "illuminate/contracts": "^5.6|^6.0|^7.0|^8.0", - "illuminate/support": "^5.6|^6.0|^7.0|^8.0", - "php": ">=7.1", - "symfony/http-foundation": "^4.0|^5.0", - "symfony/http-kernel": "^4.0|^5.0" + "illuminate/contracts": "^6|^7|^8", + "illuminate/support": "^6|^7|^8", + "php": ">=7.2", + "symfony/http-foundation": "^4|^5", + "symfony/http-kernel": "^4.3.4|^5" }, "require-dev": { - "laravel/framework": "^5.5|^6.0|^7.0|^8.0", - "orchestra/dusk-updater": "^1.2", - "orchestra/testbench": "^3.5|^4.0|^5.0|^6.0", - "orchestra/testbench-dusk": "^5.1", - "phpro/grumphp": "^0.16|^0.17", - "phpunit/phpunit": "^6.0|^7.0|^8.0", + "laravel/framework": "^6|^7|^8", + "orchestra/testbench-dusk": "^4|^5|^6", + "phpunit/phpunit": "^6|^7|^8", "squizlabs/php_codesniffer": "^3.5" }, - "time": "2020-05-31T07:30:16+00:00", + "time": "2020-09-07T11:48:52+00:00", "type": "library", "extra": { "branch-alias": { @@ -1638,6 +1636,12 @@ "cors", "crossdomain", "laravel" + ], + "funding": [ + { + "url": "https://github.com/barryvdh", + "type": "github" + } ] }, { @@ -2073,31 +2077,31 @@ }, { "name": "laravel-notification-channels/telegram", - "version": "0.4.1", - "version_normalized": "0.4.1.0", + "version": "0.5.0", + "version_normalized": "0.5.0.0", "source": { "type": "git", "url": "https://github.com/laravel-notification-channels/telegram.git", - "reference": "55a9d8bce07f456e0c675909dba9b21acda376d6" + "reference": "c1e12a953ecb5fec0c285bc74950028ddd085fc0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel-notification-channels/telegram/zipball/55a9d8bce07f456e0c675909dba9b21acda376d6", - "reference": "55a9d8bce07f456e0c675909dba9b21acda376d6", + "url": "https://api.github.com/repos/laravel-notification-channels/telegram/zipball/c1e12a953ecb5fec0c285bc74950028ddd085fc0", + "reference": "c1e12a953ecb5fec0c285bc74950028ddd085fc0", "shasum": "" }, "require": { "ext-json": "*", "guzzlehttp/guzzle": "^6.2 || ^7.0", - "illuminate/notifications": "^5.5 || ^6.0 || ^7.0", - "illuminate/support": "^5.5 || ^6.0 || ^7.0", + "illuminate/notifications": "^5.5 || ^6.0 || ^7.0 || ^8.0", + "illuminate/support": "^5.5 || ^6.0 || ^7.0 || ^8.0", "php": ">=7.1" }, "require-dev": { "mockery/mockery": "^1.3", "phpunit/phpunit": "^7.0 || ^8.0" }, - "time": "2020-07-06T19:01:02+00:00", + "time": "2020-09-07T19:29:19+00:00", "type": "library", "extra": { "laravel": { @@ -2136,17 +2140,17 @@ }, { "name": "laravel/framework", - "version": "v7.27.0", - "version_normalized": "7.27.0.0", + "version": "v7.28.1", + "version_normalized": "7.28.1.0", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "17777a92da9b3cf0026f26462d289d596420e6d0" + "reference": "f7493ab717ca2a9598b1db2d6a3bae8ac8c755e8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/17777a92da9b3cf0026f26462d289d596420e6d0", - "reference": "17777a92da9b3cf0026f26462d289d596420e6d0", + "url": "https://api.github.com/repos/laravel/framework/zipball/f7493ab717ca2a9598b1db2d6a3bae8ac8c755e8", + "reference": "f7493ab717ca2a9598b1db2d6a3bae8ac8c755e8", "shasum": "" }, "require": { @@ -2260,7 +2264,7 @@ "symfony/psr-http-message-bridge": "Required to use PSR-7 bridging features (^2.0).", "wildbit/swiftmailer-postmark": "Required to use Postmark mail driver (^3.0)." }, - "time": "2020-09-01T13:41:48+00:00", + "time": "2020-09-09T15:02:46+00:00", "type": "library", "extra": { "branch-alias": { @@ -2421,17 +2425,17 @@ }, { "name": "laravel/ui", - "version": "v2.2.0", - "version_normalized": "2.2.0.0", + "version": "v2.3.0", + "version_normalized": "2.3.0.0", "source": { "type": "git", "url": "https://github.com/laravel/ui.git", - "reference": "fb1404f04ece6eee128e3fb750d3a1e064238b33" + "reference": "2ccaa3b821ea8ac7e05393b946d0578bdb46099b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/ui/zipball/fb1404f04ece6eee128e3fb750d3a1e064238b33", - "reference": "fb1404f04ece6eee128e3fb750d3a1e064238b33", + "url": "https://api.github.com/repos/laravel/ui/zipball/2ccaa3b821ea8ac7e05393b946d0578bdb46099b", + "reference": "2ccaa3b821ea8ac7e05393b946d0578bdb46099b", "shasum": "" }, "require": { @@ -2444,7 +2448,7 @@ "mockery/mockery": "^1.0", "phpunit/phpunit": "^8.0|^9.0" }, - "time": "2020-08-25T18:30:43+00:00", + "time": "2020-09-09T12:07:59+00:00", "type": "library", "extra": { "laravel": { @@ -2478,17 +2482,17 @@ }, { "name": "lcobucci/jwt", - "version": "3.3.1", - "version_normalized": "3.3.1.0", + "version": "3.3.3", + "version_normalized": "3.3.3.0", "source": { "type": "git", "url": "https://github.com/lcobucci/jwt.git", - "reference": "a11ec5f4b4d75d1fcd04e133dede4c317aac9e18" + "reference": "c1123697f6a2ec29162b82f170dd4a491f524773" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/lcobucci/jwt/zipball/a11ec5f4b4d75d1fcd04e133dede4c317aac9e18", - "reference": "a11ec5f4b4d75d1fcd04e133dede4c317aac9e18", + "url": "https://api.github.com/repos/lcobucci/jwt/zipball/c1123697f6a2ec29162b82f170dd4a491f524773", + "reference": "c1123697f6a2ec29162b82f170dd4a491f524773", "shasum": "" }, "require": { @@ -2503,7 +2507,7 @@ "phpunit/phpunit": "^5.7 || ^7.3", "squizlabs/php_codesniffer": "~2.3" }, - "time": "2019-05-24T18:30:49+00:00", + "time": "2020-08-20T13:22:28+00:00", "type": "library", "extra": { "branch-alias": { @@ -2531,6 +2535,16 @@ "keywords": [ "JWS", "jwt" + ], + "funding": [ + { + "url": "https://github.com/lcobucci", + "type": "github" + }, + { + "url": "https://www.patreon.com/lcobucci", + "type": "patreon" + } ] }, { @@ -3053,17 +3067,17 @@ }, { "name": "nesbot/carbon", - "version": "2.39.0", - "version_normalized": "2.39.0.0", + "version": "2.39.1", + "version_normalized": "2.39.1.0", "source": { "type": "git", "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "0a41ea7f7fedacf307b7a339800e10356a042918" + "reference": "7af467873250583cc967a59ee9df29fabab193c1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/0a41ea7f7fedacf307b7a339800e10356a042918", - "reference": "0a41ea7f7fedacf307b7a339800e10356a042918", + "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/7af467873250583cc967a59ee9df29fabab193c1", + "reference": "7af467873250583cc967a59ee9df29fabab193c1", "shasum": "" }, "require": { @@ -3076,13 +3090,13 @@ "doctrine/orm": "^2.7", "friendsofphp/php-cs-fixer": "^2.14 || ^3.0", "kylekatarnls/multi-tester": "^2.0", - "phpmd/phpmd": "^2.8", + "phpmd/phpmd": "^2.9", "phpstan/extension-installer": "^1.0", "phpstan/phpstan": "^0.12.35", "phpunit/phpunit": "^7.5 || ^8.0", "squizlabs/php_codesniffer": "^3.4" }, - "time": "2020-08-24T12:35:58+00:00", + "time": "2020-09-04T13:11:37+00:00", "bin": [ "bin/carbon" ], @@ -3365,17 +3379,17 @@ }, { "name": "opis/closure", - "version": "3.5.6", - "version_normalized": "3.5.6.0", + "version": "3.5.7", + "version_normalized": "3.5.7.0", "source": { "type": "git", "url": "https://github.com/opis/closure.git", - "reference": "e8d34df855b0a0549a300cb8cb4db472556e8aa9" + "reference": "4531e53afe2fc660403e76fb7644e95998bff7bf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/opis/closure/zipball/e8d34df855b0a0549a300cb8cb4db472556e8aa9", - "reference": "e8d34df855b0a0549a300cb8cb4db472556e8aa9", + "url": "https://api.github.com/repos/opis/closure/zipball/4531e53afe2fc660403e76fb7644e95998bff7bf", + "reference": "4531e53afe2fc660403e76fb7644e95998bff7bf", "shasum": "" }, "require": { @@ -3385,7 +3399,7 @@ "jeremeamia/superclosure": "^2.0", "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0" }, - "time": "2020-08-11T08:46:50+00:00", + "time": "2020-09-06T17:02:15+00:00", "type": "library", "extra": { "branch-alias": { @@ -3581,27 +3595,27 @@ }, { "name": "phpdocumentor/reflection-common", - "version": "2.1.0", - "version_normalized": "2.1.0.0", + "version": "2.2.0", + "version_normalized": "2.2.0.0", "source": { "type": "git", "url": "https://github.com/phpDocumentor/ReflectionCommon.git", - "reference": "6568f4687e5b41b054365f9ae03fcb1ed5f2069b" + "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/6568f4687e5b41b054365f9ae03fcb1ed5f2069b", - "reference": "6568f4687e5b41b054365f9ae03fcb1ed5f2069b", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/1d01c49d4ed62f25aa84a747ad35d5a16924662b", + "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b", "shasum": "" }, "require": { - "php": ">=7.1" + "php": "^7.2 || ^8.0" }, - "time": "2020-04-27T09:25:28+00:00", + "time": "2020-06-27T09:03:43+00:00", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.x-dev" + "dev-2.x": "2.x-dev" } }, "installation-source": "dist", @@ -3687,28 +3701,27 @@ }, { "name": "phpdocumentor/type-resolver", - "version": "1.2.0", - "version_normalized": "1.2.0.0", + "version": "1.3.0", + "version_normalized": "1.3.0.0", "source": { "type": "git", "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "30441f2752e493c639526b215ed81d54f369d693" + "reference": "e878a14a65245fbe78f8080eba03b47c3b705651" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/30441f2752e493c639526b215ed81d54f369d693", - "reference": "30441f2752e493c639526b215ed81d54f369d693", + "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/e878a14a65245fbe78f8080eba03b47c3b705651", + "reference": "e878a14a65245fbe78f8080eba03b47c3b705651", "shasum": "" }, "require": { - "php": "^7.2", + "php": "^7.2 || ^8.0", "phpdocumentor/reflection-common": "^2.0" }, "require-dev": { - "ext-tokenizer": "^7.2", - "mockery/mockery": "~1" + "ext-tokenizer": "*" }, - "time": "2020-06-19T20:22:09+00:00", + "time": "2020-06-27T10:12:23+00:00", "type": "library", "extra": { "branch-alias": { @@ -4903,17 +4916,17 @@ }, { "name": "scrivo/highlight.php", - "version": "v9.18.1.1", - "version_normalized": "9.18.1.1", + "version": "v9.18.1.2", + "version_normalized": "9.18.1.2", "source": { "type": "git", "url": "https://github.com/scrivo/highlight.php.git", - "reference": "52fc21c99fd888e33aed4879e55a3646f8d40558" + "reference": "efb6e445494a9458aa59b0af5edfa4bdcc6809d9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/scrivo/highlight.php/zipball/52fc21c99fd888e33aed4879e55a3646f8d40558", - "reference": "52fc21c99fd888e33aed4879e55a3646f8d40558", + "url": "https://api.github.com/repos/scrivo/highlight.php/zipball/efb6e445494a9458aa59b0af5edfa4bdcc6809d9", + "reference": "efb6e445494a9458aa59b0af5edfa4bdcc6809d9", "shasum": "" }, "require": { @@ -4930,7 +4943,7 @@ "suggest": { "ext-dom": "Needed to make use of the features in the utilities namespace" }, - "time": "2020-03-02T05:59:21+00:00", + "time": "2020-08-27T03:24:44+00:00", "type": "library", "installation-source": "dist", "autoload": { @@ -4970,6 +4983,12 @@ "highlight.js", "highlight.php", "syntax" + ], + "funding": [ + { + "url": "https://github.com/allejo", + "type": "github" + } ] }, { @@ -5948,27 +5967,27 @@ }, { "name": "symfony/deprecation-contracts", - "version": "v2.1.3", - "version_normalized": "2.1.3.0", + "version": "v2.2.0", + "version_normalized": "2.2.0.0", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "5e20b83385a77593259c9f8beb2c43cd03b2ac14" + "reference": "5fa56b4074d1ae755beb55617ddafe6f5d78f665" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/5e20b83385a77593259c9f8beb2c43cd03b2ac14", - "reference": "5e20b83385a77593259c9f8beb2c43cd03b2ac14", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/5fa56b4074d1ae755beb55617ddafe6f5d78f665", + "reference": "5fa56b4074d1ae755beb55617ddafe6f5d78f665", "shasum": "" }, "require": { "php": ">=7.1" }, - "time": "2020-06-06T08:49:21+00:00", + "time": "2020-09-07T11:33:47+00:00", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.1-dev" + "dev-master": "2.2-dev" }, "thanks": { "name": "symfony/contracts", @@ -6175,17 +6194,17 @@ }, { "name": "symfony/event-dispatcher-contracts", - "version": "v2.1.3", - "version_normalized": "2.1.3.0", + "version": "v2.2.0", + "version_normalized": "2.2.0.0", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "f6f613d74cfc5a623fc36294d3451eb7fa5a042b" + "reference": "0ba7d54483095a198fa51781bc608d17e84dffa2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/f6f613d74cfc5a623fc36294d3451eb7fa5a042b", - "reference": "f6f613d74cfc5a623fc36294d3451eb7fa5a042b", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/0ba7d54483095a198fa51781bc608d17e84dffa2", + "reference": "0ba7d54483095a198fa51781bc608d17e84dffa2", "shasum": "" }, "require": { @@ -6195,11 +6214,11 @@ "suggest": { "symfony/event-dispatcher-implementation": "" }, - "time": "2020-07-06T13:23:11+00:00", + "time": "2020-09-07T11:33:47+00:00", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.1-dev" + "dev-master": "2.2-dev" }, "thanks": { "name": "symfony/contracts", @@ -7141,28 +7160,32 @@ }, { "name": "symfony/polyfill-php56", - "version": "v1.15.0", - "version_normalized": "1.15.0.0", + "version": "v1.18.1", + "version_normalized": "1.18.1.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php56.git", - "reference": "d51ec491c8ddceae7dca8dd6c7e30428f543f37d" + "reference": "13df84e91cd168f247c2f2ec82cc0fa24901c011" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php56/zipball/d51ec491c8ddceae7dca8dd6c7e30428f543f37d", - "reference": "d51ec491c8ddceae7dca8dd6c7e30428f543f37d", + "url": "https://api.github.com/repos/symfony/polyfill-php56/zipball/13df84e91cd168f247c2f2ec82cc0fa24901c011", + "reference": "13df84e91cd168f247c2f2ec82cc0fa24901c011", "shasum": "" }, "require": { "php": ">=5.3.3", "symfony/polyfill-util": "~1.0" }, - "time": "2020-03-09T19:04:49+00:00", + "time": "2020-07-14T12:35:20+00:00", "type": "library", "extra": { "branch-alias": { - "dev-master": "1.15-dev" + "dev-master": "1.18-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" } }, "installation-source": "dist", @@ -7527,27 +7550,31 @@ }, { "name": "symfony/polyfill-util", - "version": "v1.15.0", - "version_normalized": "1.15.0.0", + "version": "v1.18.1", + "version_normalized": "1.18.1.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-util.git", - "reference": "d8e76c104127675d0ea3df3be0f2ae24a8619027" + "reference": "46b910c71e9828f8ec2aa7a0314de1130d9b295a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-util/zipball/d8e76c104127675d0ea3df3be0f2ae24a8619027", - "reference": "d8e76c104127675d0ea3df3be0f2ae24a8619027", + "url": "https://api.github.com/repos/symfony/polyfill-util/zipball/46b910c71e9828f8ec2aa7a0314de1130d9b295a", + "reference": "46b910c71e9828f8ec2aa7a0314de1130d9b295a", "shasum": "" }, "require": { "php": ">=5.3.3" }, - "time": "2020-03-02T11:55:35+00:00", + "time": "2020-07-14T12:35:20+00:00", "type": "library", "extra": { "branch-alias": { - "dev-master": "1.15-dev" + "dev-master": "1.18-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" } }, "installation-source": "dist", @@ -7755,17 +7782,17 @@ }, { "name": "symfony/service-contracts", - "version": "v2.1.3", - "version_normalized": "2.1.3.0", + "version": "v2.2.0", + "version_normalized": "2.2.0.0", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "58c7475e5457c5492c26cc740cc0ad7464be9442" + "reference": "d15da7ba4957ffb8f1747218be9e1a121fd298a1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/58c7475e5457c5492c26cc740cc0ad7464be9442", - "reference": "58c7475e5457c5492c26cc740cc0ad7464be9442", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/d15da7ba4957ffb8f1747218be9e1a121fd298a1", + "reference": "d15da7ba4957ffb8f1747218be9e1a121fd298a1", "shasum": "" }, "require": { @@ -7775,11 +7802,11 @@ "suggest": { "symfony/service-implementation": "" }, - "time": "2020-07-06T13:23:11+00:00", + "time": "2020-09-07T11:33:47+00:00", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.1-dev" + "dev-master": "2.2-dev" }, "thanks": { "name": "symfony/contracts", @@ -8014,17 +8041,17 @@ }, { "name": "symfony/translation-contracts", - "version": "v2.1.3", - "version_normalized": "2.1.3.0", + "version": "v2.2.0", + "version_normalized": "2.2.0.0", "source": { "type": "git", "url": "https://github.com/symfony/translation-contracts.git", - "reference": "616a9773c853097607cf9dd6577d5b143ffdcd63" + "reference": "77ce1c3627c9f39643acd9af086631f842c50c4d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/616a9773c853097607cf9dd6577d5b143ffdcd63", - "reference": "616a9773c853097607cf9dd6577d5b143ffdcd63", + "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/77ce1c3627c9f39643acd9af086631f842c50c4d", + "reference": "77ce1c3627c9f39643acd9af086631f842c50c4d", "shasum": "" }, "require": { @@ -8033,11 +8060,11 @@ "suggest": { "symfony/translation-implementation": "" }, - "time": "2020-07-06T13:23:11+00:00", + "time": "2020-09-07T11:33:47+00:00", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.1-dev" + "dev-master": "2.2-dev" }, "thanks": { "name": "symfony/contracts", @@ -8276,37 +8303,37 @@ }, { "name": "tymon/jwt-auth", - "version": "1.0.0", - "version_normalized": "1.0.0.0", + "version": "1.0.1", + "version_normalized": "1.0.1.0", "source": { "type": "git", "url": "https://github.com/tymondesigns/jwt-auth.git", - "reference": "d4cf9fd2b98790712d3e6cd1094e5ff018431f19" + "reference": "b927137cd5bd4d2f5d48a1ca71bc85006b99dbae" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/tymondesigns/jwt-auth/zipball/d4cf9fd2b98790712d3e6cd1094e5ff018431f19", - "reference": "d4cf9fd2b98790712d3e6cd1094e5ff018431f19", + "url": "https://api.github.com/repos/tymondesigns/jwt-auth/zipball/b927137cd5bd4d2f5d48a1ca71bc85006b99dbae", + "reference": "b927137cd5bd4d2f5d48a1ca71bc85006b99dbae", "shasum": "" }, "require": { - "illuminate/auth": "^5.2|^6|^7", - "illuminate/contracts": "^5.2|^6|^7", - "illuminate/http": "^5.2|^6|^7", - "illuminate/support": "^5.2|^6|^7", + "illuminate/auth": "^5.2|^6|^7|^8", + "illuminate/contracts": "^5.2|^6|^7|^8", + "illuminate/http": "^5.2|^6|^7|^8", + "illuminate/support": "^5.2|^6|^7|^8", "lcobucci/jwt": "^3.2", "namshi/jose": "^7.0", "nesbot/carbon": "^1.0|^2.0", "php": "^5.5.9|^7.0" }, "require-dev": { - "illuminate/console": "^5.2|^6|^7", - "illuminate/database": "^5.2|^6|^7", - "illuminate/routing": "^5.2|^6|^7", + "illuminate/console": "^5.2|^6|^7|^8", + "illuminate/database": "^5.2|^6|^7|^8", + "illuminate/routing": "^5.2|^6|^7|^8", "mockery/mockery": ">=0.9.9", "phpunit/phpunit": "~4.8|~6.0" }, - "time": "2020-03-04T11:21:28+00:00", + "time": "2020-09-08T12:29:20+00:00", "type": "library", "extra": { "branch-alias": { @@ -8348,6 +8375,12 @@ "auth", "jwt", "laravel" + ], + "funding": [ + { + "url": "https://www.patreon.com/seantymon", + "type": "patreon" + } ] }, { diff --git a/conf/site/vendor/egulias/email-validator/src/Validation/DNSCheckValidation.php b/conf/site/vendor/egulias/email-validator/src/Validation/DNSCheckValidation.php index a18da94b..fe72ed00 100644 --- a/conf/site/vendor/egulias/email-validator/src/Validation/DNSCheckValidation.php +++ b/conf/site/vendor/egulias/email-validator/src/Validation/DNSCheckValidation.php @@ -118,11 +118,12 @@ class DNSCheckValidation implements EmailValidation private function validateDnsRecords($host) { // Get all MX, A and AAAA DNS records for host - $dnsRecords = dns_get_record($host, DNS_MX + DNS_A + DNS_AAAA); + // Using @ as workaround to fix https://bugs.php.net/bug.php?id=73149 + $dnsRecords = @dns_get_record($host, DNS_MX + DNS_A + DNS_AAAA); // No MX, A or AAAA DNS records - if (empty($dnsRecords)) { + if (empty($dnsRecords) || !$dnsRecords) { $this->error = new NoDNSRecord(); return false; } diff --git a/conf/site/vendor/facade/flare-client-php/CHANGELOG.md b/conf/site/vendor/facade/flare-client-php/CHANGELOG.md index db373ac7..a0519f63 100644 --- a/conf/site/vendor/facade/flare-client-php/CHANGELOG.md +++ b/conf/site/vendor/facade/flare-client-php/CHANGELOG.md @@ -2,6 +2,10 @@ All notable changes to `flare-client-php` will be documented in this file +## 1.3.5 - 2020-07-15 + +- allow Laravel 8 (#13) + ## 1.3.4 - 2020-07-14 - use directory separator constant diff --git a/conf/site/vendor/facade/flare-client-php/composer.json b/conf/site/vendor/facade/flare-client-php/composer.json index 306a3371..ea601b38 100644 --- a/conf/site/vendor/facade/flare-client-php/composer.json +++ b/conf/site/vendor/facade/flare-client-php/composer.json @@ -12,7 +12,7 @@ "require": { "php": "^7.1", "facade/ignition-contracts": "~1.0", - "illuminate/pipeline": "^5.5|^6.0|^7.0", + "illuminate/pipeline": "^5.5|^6.0|^7.0|^8.0", "symfony/http-foundation": "^3.3|^4.1|^5.0", "symfony/mime": "^3.4|^4.0|^5.1", "symfony/var-dumper": "^3.4|^4.0|^5.0" diff --git a/conf/site/vendor/facade/ignition/CHANGELOG.md b/conf/site/vendor/facade/ignition/CHANGELOG.md index 737ced6d..bfde9ebf 100644 --- a/conf/site/vendor/facade/ignition/CHANGELOG.md +++ b/conf/site/vendor/facade/ignition/CHANGELOG.md @@ -2,6 +2,11 @@ All notable changes to `ignition` will be documented in this file +## 2.3.7 - 2020-09-06 + +- add loading state on share button (#309) +- compatiblity fix for L8 + ## 2.3.6 - 2020-08-10 - possible security vulnerability: bump elliptic version (#300) diff --git a/conf/site/vendor/facade/ignition/composer.json b/conf/site/vendor/facade/ignition/composer.json index ab6d5605..285db4be 100644 --- a/conf/site/vendor/facade/ignition/composer.json +++ b/conf/site/vendor/facade/ignition/composer.json @@ -25,7 +25,7 @@ "require-dev": { "friendsofphp/php-cs-fixer": "^2.14", "mockery/mockery": "^1.3", - "orchestra/testbench": "5.0", + "orchestra/testbench": "^5.0|^6.0", "psalm/plugin-laravel": "^1.2" }, "suggest": { diff --git a/conf/site/vendor/facade/ignition/resources/compiled/ignition.js b/conf/site/vendor/facade/ignition/resources/compiled/ignition.js index 5ce8c8e5..49f6c381 100644 --- a/conf/site/vendor/facade/ignition/resources/compiled/ignition.js +++ b/conf/site/vendor/facade/ignition/resources/compiled/ignition.js @@ -22,11 +22,11 @@ function(t){switch(t.source){case"bitbucket.org":return"x-token-auth:"+t.token+" * Released under MIT license * Based on Underscore.js 1.8.3 * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors - */(function(){var i,a=200,s="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",c="Expected a function",u="__lodash_hash_undefined__",l=500,f="__lodash_placeholder__",p=1,d=2,h=4,m=1,g=2,v=1,b=2,_=4,y=8,E=16,k=32,x=64,w=128,C=256,A=512,T=30,S="...",R=800,O=16,N=1,L=2,I=1/0,D=9007199254740991,M=17976931348623157e292,P=NaN,j=4294967295,U=j-1,F=j>>>1,$=[["ary",w],["bind",v],["bindKey",b],["curry",y],["curryRight",E],["flip",A],["partial",k],["partialRight",x],["rearg",C]],B="[object Arguments]",z="[object Array]",q="[object AsyncFunction]",H="[object Boolean]",G="[object Date]",V="[object DOMException]",W="[object Error]",Y="[object Function]",K="[object GeneratorFunction]",X="[object Map]",Z="[object Number]",J="[object Null]",Q="[object Object]",tt="[object Proxy]",et="[object RegExp]",nt="[object Set]",rt="[object String]",ot="[object Symbol]",it="[object Undefined]",at="[object WeakMap]",st="[object WeakSet]",ct="[object ArrayBuffer]",ut="[object DataView]",lt="[object Float32Array]",ft="[object Float64Array]",pt="[object Int8Array]",dt="[object Int16Array]",ht="[object Int32Array]",mt="[object Uint8Array]",gt="[object Uint8ClampedArray]",vt="[object Uint16Array]",bt="[object Uint32Array]",_t=/\b__p \+= '';/g,yt=/\b(__p \+=) '' \+/g,Et=/(__e\(.*?\)|\b__t\)) \+\n'';/g,kt=/&(?:amp|lt|gt|quot|#39);/g,xt=/[&<>"']/g,wt=RegExp(kt.source),Ct=RegExp(xt.source),At=/<%-([\s\S]+?)%>/g,Tt=/<%([\s\S]+?)%>/g,St=/<%=([\s\S]+?)%>/g,Rt=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Ot=/^\w*$/,Nt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Lt=/[\\^$.*+?()[\]{}|]/g,It=RegExp(Lt.source),Dt=/^\s+|\s+$/g,Mt=/^\s+/,Pt=/\s+$/,jt=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Ut=/\{\n\/\* \[wrapped with (.+)\] \*/,Ft=/,? & /,$t=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Bt=/\\(\\)?/g,zt=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,qt=/\w*$/,Ht=/^[-+]0x[0-9a-f]+$/i,Gt=/^0b[01]+$/i,Vt=/^\[object .+?Constructor\]$/,Wt=/^0o[0-7]+$/i,Yt=/^(?:0|[1-9]\d*)$/,Kt=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Xt=/($^)/,Zt=/['\n\r\u2028\u2029\\]/g,Jt="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Qt="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",te="[\\ud800-\\udfff]",ee="["+Qt+"]",ne="["+Jt+"]",re="\\d+",oe="[\\u2700-\\u27bf]",ie="[a-z\\xdf-\\xf6\\xf8-\\xff]",ae="[^\\ud800-\\udfff"+Qt+re+"\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde]",se="\\ud83c[\\udffb-\\udfff]",ce="[^\\ud800-\\udfff]",ue="(?:\\ud83c[\\udde6-\\uddff]){2}",le="[\\ud800-\\udbff][\\udc00-\\udfff]",fe="[A-Z\\xc0-\\xd6\\xd8-\\xde]",pe="(?:"+ie+"|"+ae+")",de="(?:"+fe+"|"+ae+")",he="(?:"+ne+"|"+se+")"+"?",me="[\\ufe0e\\ufe0f]?"+he+("(?:\\u200d(?:"+[ce,ue,le].join("|")+")[\\ufe0e\\ufe0f]?"+he+")*"),ge="(?:"+[oe,ue,le].join("|")+")"+me,ve="(?:"+[ce+ne+"?",ne,ue,le,te].join("|")+")",be=RegExp("['’]","g"),_e=RegExp(ne,"g"),ye=RegExp(se+"(?="+se+")|"+ve+me,"g"),Ee=RegExp([fe+"?"+ie+"+(?:['’](?:d|ll|m|re|s|t|ve))?(?="+[ee,fe,"$"].join("|")+")",de+"+(?:['’](?:D|LL|M|RE|S|T|VE))?(?="+[ee,fe+pe,"$"].join("|")+")",fe+"?"+pe+"+(?:['’](?:d|ll|m|re|s|t|ve))?",fe+"+(?:['’](?:D|LL|M|RE|S|T|VE))?","\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",re,ge].join("|"),"g"),ke=RegExp("[\\u200d\\ud800-\\udfff"+Jt+"\\ufe0e\\ufe0f]"),xe=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,we=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Ce=-1,Ae={};Ae[lt]=Ae[ft]=Ae[pt]=Ae[dt]=Ae[ht]=Ae[mt]=Ae[gt]=Ae[vt]=Ae[bt]=!0,Ae[B]=Ae[z]=Ae[ct]=Ae[H]=Ae[ut]=Ae[G]=Ae[W]=Ae[Y]=Ae[X]=Ae[Z]=Ae[Q]=Ae[et]=Ae[nt]=Ae[rt]=Ae[at]=!1;var Te={};Te[B]=Te[z]=Te[ct]=Te[ut]=Te[H]=Te[G]=Te[lt]=Te[ft]=Te[pt]=Te[dt]=Te[ht]=Te[X]=Te[Z]=Te[Q]=Te[et]=Te[nt]=Te[rt]=Te[ot]=Te[mt]=Te[gt]=Te[vt]=Te[bt]=!0,Te[W]=Te[Y]=Te[at]=!1;var Se={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Re=parseFloat,Oe=parseInt,Ne="object"==typeof t&&t&&t.Object===Object&&t,Le="object"==typeof self&&self&&self.Object===Object&&self,Ie=Ne||Le||Function("return this")(),De=e&&!e.nodeType&&e,Me=De&&"object"==typeof r&&r&&!r.nodeType&&r,Pe=Me&&Me.exports===De,je=Pe&&Ne.process,Ue=function(){try{var t=Me&&Me.require&&Me.require("util").types;return t||je&&je.binding&&je.binding("util")}catch(t){}}(),Fe=Ue&&Ue.isArrayBuffer,$e=Ue&&Ue.isDate,Be=Ue&&Ue.isMap,ze=Ue&&Ue.isRegExp,qe=Ue&&Ue.isSet,He=Ue&&Ue.isTypedArray;function Ge(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function Ve(t,e,n,r){for(var o=-1,i=null==t?0:t.length;++o-1}function Je(t,e,n){for(var r=-1,o=null==t?0:t.length;++r-1;);return n}function En(t,e){for(var n=t.length;n--&&cn(e,t[n],0)>-1;);return n}var kn=dn({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),xn=dn({"&":"&","<":"<",">":">",'"':""","'":"'"});function wn(t){return"\\"+Se[t]}function Cn(t){return ke.test(t)}function An(t){var e=-1,n=Array(t.size);return t.forEach((function(t,r){n[++e]=[r,t]})),n}function Tn(t,e){return function(n){return t(e(n))}}function Sn(t,e){for(var n=-1,r=t.length,o=0,i=[];++n",""":'"',"'":"'"});var Dn=function t(e){var n,r=(e=null==e?Ie:Dn.defaults(Ie.Object(),e,Dn.pick(Ie,we))).Array,o=e.Date,Jt=e.Error,Qt=e.Function,te=e.Math,ee=e.Object,ne=e.RegExp,re=e.String,oe=e.TypeError,ie=r.prototype,ae=Qt.prototype,se=ee.prototype,ce=e["__core-js_shared__"],ue=ae.toString,le=se.hasOwnProperty,fe=0,pe=(n=/[^.]+$/.exec(ce&&ce.keys&&ce.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",de=se.toString,he=ue.call(ee),me=Ie._,ge=ne("^"+ue.call(le).replace(Lt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),ve=Pe?e.Buffer:i,ye=e.Symbol,ke=e.Uint8Array,Se=ve?ve.allocUnsafe:i,Ne=Tn(ee.getPrototypeOf,ee),Le=ee.create,De=se.propertyIsEnumerable,Me=ie.splice,je=ye?ye.isConcatSpreadable:i,Ue=ye?ye.iterator:i,on=ye?ye.toStringTag:i,dn=function(){try{var t=Fi(ee,"defineProperty");return t({},"",{}),t}catch(t){}}(),Mn=e.clearTimeout!==Ie.clearTimeout&&e.clearTimeout,Pn=o&&o.now!==Ie.Date.now&&o.now,jn=e.setTimeout!==Ie.setTimeout&&e.setTimeout,Un=te.ceil,Fn=te.floor,$n=ee.getOwnPropertySymbols,Bn=ve?ve.isBuffer:i,zn=e.isFinite,qn=ie.join,Hn=Tn(ee.keys,ee),Gn=te.max,Vn=te.min,Wn=o.now,Yn=e.parseInt,Kn=te.random,Xn=ie.reverse,Zn=Fi(e,"DataView"),Jn=Fi(e,"Map"),Qn=Fi(e,"Promise"),tr=Fi(e,"Set"),er=Fi(e,"WeakMap"),nr=Fi(ee,"create"),rr=er&&new er,or={},ir=fa(Zn),ar=fa(Jn),sr=fa(Qn),cr=fa(tr),ur=fa(er),lr=ye?ye.prototype:i,fr=lr?lr.valueOf:i,pr=lr?lr.toString:i;function dr(t){if(Ss(t)&&!vs(t)&&!(t instanceof vr)){if(t instanceof gr)return t;if(le.call(t,"__wrapped__"))return pa(t)}return new gr(t)}var hr=function(){function t(){}return function(e){if(!Ts(e))return{};if(Le)return Le(e);t.prototype=e;var n=new t;return t.prototype=i,n}}();function mr(){}function gr(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=i}function vr(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=j,this.__views__=[]}function br(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e=e?t:e)),t}function Mr(t,e,n,r,o,a){var s,c=e&p,u=e&d,l=e&h;if(n&&(s=o?n(t,r,o,a):n(t)),s!==i)return s;if(!Ts(t))return t;var f=vs(t);if(f){if(s=function(t){var e=t.length,n=new t.constructor(e);e&&"string"==typeof t[0]&&le.call(t,"index")&&(n.index=t.index,n.input=t.input);return n}(t),!c)return ri(t,s)}else{var m=zi(t),g=m==Y||m==K;if(Es(t))return Zo(t,c);if(m==Q||m==B||g&&!o){if(s=u||g?{}:Hi(t),!c)return u?function(t,e){return oi(t,Bi(t),e)}(t,function(t,e){return t&&oi(e,ic(e),t)}(s,t)):function(t,e){return oi(t,$i(t),e)}(t,Nr(s,t))}else{if(!Te[m])return o?t:{};s=function(t,e,n){var r=t.constructor;switch(e){case ct:return Jo(t);case H:case G:return new r(+t);case ut:return function(t,e){var n=e?Jo(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}(t,n);case lt:case ft:case pt:case dt:case ht:case mt:case gt:case vt:case bt:return Qo(t,n);case X:return new r;case Z:case rt:return new r(t);case et:return function(t){var e=new t.constructor(t.source,qt.exec(t));return e.lastIndex=t.lastIndex,e}(t);case nt:return new r;case ot:return o=t,fr?ee(fr.call(o)):{}}var o}(t,m,c)}}a||(a=new kr);var v=a.get(t);if(v)return v;a.set(t,s),Is(t)?t.forEach((function(r){s.add(Mr(r,e,n,r,t,a))})):Rs(t)&&t.forEach((function(r,o){s.set(o,Mr(r,e,n,o,t,a))}));var b=f?i:(l?u?Li:Ni:u?ic:oc)(t);return We(b||t,(function(r,o){b&&(r=t[o=r]),Sr(s,o,Mr(r,e,n,o,t,a))})),s}function Pr(t,e,n){var r=n.length;if(null==t)return!r;for(t=ee(t);r--;){var o=n[r],a=e[o],s=t[o];if(s===i&&!(o in t)||!a(s))return!1}return!0}function jr(t,e,n){if("function"!=typeof t)throw new oe(c);return oa((function(){t.apply(i,n)}),e)}function Ur(t,e,n,r){var o=-1,i=Ze,s=!0,c=t.length,u=[],l=e.length;if(!c)return u;n&&(e=Qe(e,vn(n))),r?(i=Je,s=!1):e.length>=a&&(i=_n,s=!1,e=new Er(e));t:for(;++o-1},_r.prototype.set=function(t,e){var n=this.__data__,r=Rr(n,t);return r<0?(++this.size,n.push([t,e])):n[r][1]=e,this},yr.prototype.clear=function(){this.size=0,this.__data__={hash:new br,map:new(Jn||_r),string:new br}},yr.prototype.delete=function(t){var e=ji(this,t).delete(t);return this.size-=e?1:0,e},yr.prototype.get=function(t){return ji(this,t).get(t)},yr.prototype.has=function(t){return ji(this,t).has(t)},yr.prototype.set=function(t,e){var n=ji(this,t),r=n.size;return n.set(t,e),this.size+=n.size==r?0:1,this},Er.prototype.add=Er.prototype.push=function(t){return this.__data__.set(t,u),this},Er.prototype.has=function(t){return this.__data__.has(t)},kr.prototype.clear=function(){this.__data__=new _r,this.size=0},kr.prototype.delete=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n},kr.prototype.get=function(t){return this.__data__.get(t)},kr.prototype.has=function(t){return this.__data__.has(t)},kr.prototype.set=function(t,e){var n=this.__data__;if(n instanceof _r){var r=n.__data__;if(!Jn||r.length0&&n(s)?e>1?Hr(s,e-1,n,r,o):tn(o,s):r||(o[o.length]=s)}return o}var Gr=ci(),Vr=ci(!0);function Wr(t,e){return t&&Gr(t,e,oc)}function Yr(t,e){return t&&Vr(t,e,oc)}function Kr(t,e){return Xe(e,(function(e){return ws(t[e])}))}function Xr(t,e){for(var n=0,r=(e=Wo(e,t)).length;null!=t&&ne}function to(t,e){return null!=t&&le.call(t,e)}function eo(t,e){return null!=t&&e in ee(t)}function no(t,e,n){for(var o=n?Je:Ze,a=t[0].length,s=t.length,c=s,u=r(s),l=1/0,f=[];c--;){var p=t[c];c&&e&&(p=Qe(p,vn(e))),l=Vn(p.length,l),u[c]=!n&&(e||a>=120&&p.length>=120)?new Er(c&&p):i}p=t[0];var d=-1,h=u[0];t:for(;++d=s)return c;var u=n[r];return c*("desc"==u?-1:1)}}return t.index-e.index}(t,e,n)}))}function _o(t,e,n){for(var r=-1,o=e.length,i={};++r-1;)s!==t&&Me.call(s,c,1),Me.call(t,c,1);return t}function Eo(t,e){for(var n=t?e.length:0,r=n-1;n--;){var o=e[n];if(n==r||o!==i){var i=o;Vi(o)?Me.call(t,o,1):Fo(t,o)}}return t}function ko(t,e){return t+Fn(Kn()*(e-t+1))}function xo(t,e){var n="";if(!t||e<1||e>D)return n;do{e%2&&(n+=t),(e=Fn(e/2))&&(t+=t)}while(e);return n}function wo(t,e){return ia(ta(t,e,Oc),t+"")}function Co(t){return wr(dc(t))}function Ao(t,e){var n=dc(t);return ca(n,Dr(e,0,n.length))}function To(t,e,n,r){if(!Ts(t))return t;for(var o=-1,a=(e=Wo(e,t)).length,s=a-1,c=t;null!=c&&++oi?0:i+e),(n=n>i?i:n)<0&&(n+=i),i=e>n?0:n-e>>>0,e>>>=0;for(var a=r(i);++o>>1,a=t[i];null!==a&&!Ms(a)&&(n?a<=e:a=a){var l=e?null:xi(t);if(l)return Rn(l);s=!1,o=_n,u=new Er}else u=e?[]:c;t:for(;++r=r?t:No(t,e,n)}var Xo=Mn||function(t){return Ie.clearTimeout(t)};function Zo(t,e){if(e)return t.slice();var n=t.length,r=Se?Se(n):new t.constructor(n);return t.copy(r),r}function Jo(t){var e=new t.constructor(t.byteLength);return new ke(e).set(new ke(t)),e}function Qo(t,e){var n=e?Jo(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}function ti(t,e){if(t!==e){var n=t!==i,r=null===t,o=t==t,a=Ms(t),s=e!==i,c=null===e,u=e==e,l=Ms(e);if(!c&&!l&&!a&&t>e||a&&s&&u&&!c&&!l||r&&s&&u||!n&&u||!o)return 1;if(!r&&!a&&!l&&t1?n[o-1]:i,s=o>2?n[2]:i;for(a=t.length>3&&"function"==typeof a?(o--,a):i,s&&Wi(n[0],n[1],s)&&(a=o<3?i:a,o=1),e=ee(e);++r-1?o[a?e[s]:s]:i}}function di(t){return Oi((function(e){var n=e.length,r=n,o=gr.prototype.thru;for(t&&e.reverse();r--;){var a=e[r];if("function"!=typeof a)throw new oe(c);if(o&&!s&&"wrapper"==Di(a))var s=new gr([],!0)}for(r=s?r:n;++r1&&y.reverse(),p&&lc))return!1;var l=a.get(t);if(l&&a.get(e))return l==e;var f=-1,p=!0,d=n&g?new Er:i;for(a.set(t,e),a.set(e,t);++f-1&&t%1==0&&t1?"& ":"")+e[r],e=e.join(n>2?", ":" "),t.replace(jt,"{\n/* [wrapped with "+e+"] */\n")}(r,function(t,e){return We($,(function(n){var r="_."+n[0];e&n[1]&&!Ze(t,r)&&t.push(r)})),t.sort()}(function(t){var e=t.match(Ut);return e?e[1].split(Ft):[]}(r),n)))}function sa(t){var e=0,n=0;return function(){var r=Wn(),o=O-(r-n);if(n=r,o>0){if(++e>=R)return arguments[0]}else e=0;return t.apply(i,arguments)}}function ca(t,e){var n=-1,r=t.length,o=r-1;for(e=e===i?r:e;++n1?t[e-1]:i;return n="function"==typeof n?(t.pop(),n):i,La(t,n)}));function Fa(t){var e=dr(t);return e.__chain__=!0,e}function $a(t,e){return e(t)}var Ba=Oi((function(t){var e=t.length,n=e?t[0]:0,r=this.__wrapped__,o=function(e){return Ir(e,t)};return!(e>1||this.__actions__.length)&&r instanceof vr&&Vi(n)?((r=r.slice(n,+n+(e?1:0))).__actions__.push({func:$a,args:[o],thisArg:i}),new gr(r,this.__chain__).thru((function(t){return e&&!t.length&&t.push(i),t}))):this.thru(o)}));var za=ii((function(t,e,n){le.call(t,n)?++t[n]:Lr(t,n,1)}));var qa=pi(ga),Ha=pi(va);function Ga(t,e){return(vs(t)?We:Fr)(t,Pi(e,3))}function Va(t,e){return(vs(t)?Ye:$r)(t,Pi(e,3))}var Wa=ii((function(t,e,n){le.call(t,n)?t[n].push(e):Lr(t,n,[e])}));var Ya=wo((function(t,e,n){var o=-1,i="function"==typeof e,a=_s(t)?r(t.length):[];return Fr(t,(function(t){a[++o]=i?Ge(e,t,n):ro(t,e,n)})),a})),Ka=ii((function(t,e,n){Lr(t,n,e)}));function Xa(t,e){return(vs(t)?Qe:po)(t,Pi(e,3))}var Za=ii((function(t,e,n){t[n?0:1].push(e)}),(function(){return[[],[]]}));var Ja=wo((function(t,e){if(null==t)return[];var n=e.length;return n>1&&Wi(t,e[0],e[1])?e=[]:n>2&&Wi(e[0],e[1],e[2])&&(e=[e[0]]),bo(t,Hr(e,1),[])})),Qa=Pn||function(){return Ie.Date.now()};function ts(t,e,n){return e=n?i:e,e=t&&null==e?t.length:e,Ci(t,w,i,i,i,i,e)}function es(t,e){var n;if("function"!=typeof e)throw new oe(c);return t=Bs(t),function(){return--t>0&&(n=e.apply(this,arguments)),t<=1&&(e=i),n}}var ns=wo((function(t,e,n){var r=v;if(n.length){var o=Sn(n,Mi(ns));r|=k}return Ci(t,r,e,n,o)})),rs=wo((function(t,e,n){var r=v|b;if(n.length){var o=Sn(n,Mi(rs));r|=k}return Ci(e,r,t,n,o)}));function os(t,e,n){var r,o,a,s,u,l,f=0,p=!1,d=!1,h=!0;if("function"!=typeof t)throw new oe(c);function m(e){var n=r,a=o;return r=o=i,f=e,s=t.apply(a,n)}function g(t){var n=t-l;return l===i||n>=e||n<0||d&&t-f>=a}function v(){var t=Qa();if(g(t))return b(t);u=oa(v,function(t){var n=e-(t-l);return d?Vn(n,a-(t-f)):n}(t))}function b(t){return u=i,h&&r?m(t):(r=o=i,s)}function _(){var t=Qa(),n=g(t);if(r=arguments,o=this,l=t,n){if(u===i)return function(t){return f=t,u=oa(v,e),p?m(t):s}(l);if(d)return Xo(u),u=oa(v,e),m(l)}return u===i&&(u=oa(v,e)),s}return e=qs(e)||0,Ts(n)&&(p=!!n.leading,a=(d="maxWait"in n)?Gn(qs(n.maxWait)||0,e):a,h="trailing"in n?!!n.trailing:h),_.cancel=function(){u!==i&&Xo(u),f=0,r=l=o=u=i},_.flush=function(){return u===i?s:b(Qa())},_}var is=wo((function(t,e){return jr(t,1,e)})),as=wo((function(t,e,n){return jr(t,qs(e)||0,n)}));function ss(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new oe(c);var n=function(){var r=arguments,o=e?e.apply(this,r):r[0],i=n.cache;if(i.has(o))return i.get(o);var a=t.apply(this,r);return n.cache=i.set(o,a)||i,a};return n.cache=new(ss.Cache||yr),n}function cs(t){if("function"!=typeof t)throw new oe(c);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}ss.Cache=yr;var us=Yo((function(t,e){var n=(e=1==e.length&&vs(e[0])?Qe(e[0],vn(Pi())):Qe(Hr(e,1),vn(Pi()))).length;return wo((function(r){for(var o=-1,i=Vn(r.length,n);++o=e})),gs=oo(function(){return arguments}())?oo:function(t){return Ss(t)&&le.call(t,"callee")&&!De.call(t,"callee")},vs=r.isArray,bs=Fe?vn(Fe):function(t){return Ss(t)&&Jr(t)==ct};function _s(t){return null!=t&&As(t.length)&&!ws(t)}function ys(t){return Ss(t)&&_s(t)}var Es=Bn||qc,ks=$e?vn($e):function(t){return Ss(t)&&Jr(t)==G};function xs(t){if(!Ss(t))return!1;var e=Jr(t);return e==W||e==V||"string"==typeof t.message&&"string"==typeof t.name&&!Ns(t)}function ws(t){if(!Ts(t))return!1;var e=Jr(t);return e==Y||e==K||e==q||e==tt}function Cs(t){return"number"==typeof t&&t==Bs(t)}function As(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=D}function Ts(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function Ss(t){return null!=t&&"object"==typeof t}var Rs=Be?vn(Be):function(t){return Ss(t)&&zi(t)==X};function Os(t){return"number"==typeof t||Ss(t)&&Jr(t)==Z}function Ns(t){if(!Ss(t)||Jr(t)!=Q)return!1;var e=Ne(t);if(null===e)return!0;var n=le.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&ue.call(n)==he}var Ls=ze?vn(ze):function(t){return Ss(t)&&Jr(t)==et};var Is=qe?vn(qe):function(t){return Ss(t)&&zi(t)==nt};function Ds(t){return"string"==typeof t||!vs(t)&&Ss(t)&&Jr(t)==rt}function Ms(t){return"symbol"==typeof t||Ss(t)&&Jr(t)==ot}var Ps=He?vn(He):function(t){return Ss(t)&&As(t.length)&&!!Ae[Jr(t)]};var js=yi(fo),Us=yi((function(t,e){return t<=e}));function Fs(t){if(!t)return[];if(_s(t))return Ds(t)?Ln(t):ri(t);if(Ue&&t[Ue])return function(t){for(var e,n=[];!(e=t.next()).done;)n.push(e.value);return n}(t[Ue]());var e=zi(t);return(e==X?An:e==nt?Rn:dc)(t)}function $s(t){return t?(t=qs(t))===I||t===-I?(t<0?-1:1)*M:t==t?t:0:0===t?t:0}function Bs(t){var e=$s(t),n=e%1;return e==e?n?e-n:e:0}function zs(t){return t?Dr(Bs(t),0,j):0}function qs(t){if("number"==typeof t)return t;if(Ms(t))return P;if(Ts(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=Ts(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(Dt,"");var n=Gt.test(t);return n||Wt.test(t)?Oe(t.slice(2),n?2:8):Ht.test(t)?P:+t}function Hs(t){return oi(t,ic(t))}function Gs(t){return null==t?"":jo(t)}var Vs=ai((function(t,e){if(Zi(e)||_s(e))oi(e,oc(e),t);else for(var n in e)le.call(e,n)&&Sr(t,n,e[n])})),Ws=ai((function(t,e){oi(e,ic(e),t)})),Ys=ai((function(t,e,n,r){oi(e,ic(e),t,r)})),Ks=ai((function(t,e,n,r){oi(e,oc(e),t,r)})),Xs=Oi(Ir);var Zs=wo((function(t,e){t=ee(t);var n=-1,r=e.length,o=r>2?e[2]:i;for(o&&Wi(e[0],e[1],o)&&(r=1);++n1),e})),oi(t,Li(t),n),r&&(n=Mr(n,p|d|h,Si));for(var o=e.length;o--;)Fo(n,e[o]);return n}));var uc=Oi((function(t,e){return null==t?{}:function(t,e){return _o(t,e,(function(e,n){return tc(t,n)}))}(t,e)}));function lc(t,e){if(null==t)return{};var n=Qe(Li(t),(function(t){return[t]}));return e=Pi(e),_o(t,n,(function(t,n){return e(t,n[0])}))}var fc=wi(oc),pc=wi(ic);function dc(t){return null==t?[]:bn(t,oc(t))}var hc=li((function(t,e,n){return e=e.toLowerCase(),t+(n?mc(e):e)}));function mc(t){return xc(Gs(t).toLowerCase())}function gc(t){return(t=Gs(t))&&t.replace(Kt,kn).replace(_e,"")}var vc=li((function(t,e,n){return t+(n?"-":"")+e.toLowerCase()})),bc=li((function(t,e,n){return t+(n?" ":"")+e.toLowerCase()})),_c=ui("toLowerCase");var yc=li((function(t,e,n){return t+(n?"_":"")+e.toLowerCase()}));var Ec=li((function(t,e,n){return t+(n?" ":"")+xc(e)}));var kc=li((function(t,e,n){return t+(n?" ":"")+e.toUpperCase()})),xc=ui("toUpperCase");function wc(t,e,n){return t=Gs(t),(e=n?i:e)===i?function(t){return xe.test(t)}(t)?function(t){return t.match(Ee)||[]}(t):function(t){return t.match($t)||[]}(t):t.match(e)||[]}var Cc=wo((function(t,e){try{return Ge(t,i,e)}catch(t){return xs(t)?t:new Jt(t)}})),Ac=Oi((function(t,e){return We(e,(function(e){e=la(e),Lr(t,e,ns(t[e],t))})),t}));function Tc(t){return function(){return t}}var Sc=di(),Rc=di(!0);function Oc(t){return t}function Nc(t){return co("function"==typeof t?t:Mr(t,p))}var Lc=wo((function(t,e){return function(n){return ro(n,t,e)}})),Ic=wo((function(t,e){return function(n){return ro(t,n,e)}}));function Dc(t,e,n){var r=oc(e),o=Kr(e,r);null!=n||Ts(e)&&(o.length||!r.length)||(n=e,e=t,t=this,o=Kr(e,oc(e)));var i=!(Ts(n)&&"chain"in n&&!n.chain),a=ws(t);return We(o,(function(n){var r=e[n];t[n]=r,a&&(t.prototype[n]=function(){var e=this.__chain__;if(i||e){var n=t(this.__wrapped__),o=n.__actions__=ri(this.__actions__);return o.push({func:r,args:arguments,thisArg:t}),n.__chain__=e,n}return r.apply(t,tn([this.value()],arguments))})})),t}function Mc(){}var Pc=vi(Qe),jc=vi(Ke),Uc=vi(rn);function Fc(t){return Yi(t)?pn(la(t)):function(t){return function(e){return Xr(e,t)}}(t)}var $c=_i(),Bc=_i(!0);function zc(){return[]}function qc(){return!1}var Hc=gi((function(t,e){return t+e}),0),Gc=ki("ceil"),Vc=gi((function(t,e){return t/e}),1),Wc=ki("floor");var Yc,Kc=gi((function(t,e){return t*e}),1),Xc=ki("round"),Zc=gi((function(t,e){return t-e}),0);return dr.after=function(t,e){if("function"!=typeof e)throw new oe(c);return t=Bs(t),function(){if(--t<1)return e.apply(this,arguments)}},dr.ary=ts,dr.assign=Vs,dr.assignIn=Ws,dr.assignInWith=Ys,dr.assignWith=Ks,dr.at=Xs,dr.before=es,dr.bind=ns,dr.bindAll=Ac,dr.bindKey=rs,dr.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return vs(t)?t:[t]},dr.chain=Fa,dr.chunk=function(t,e,n){e=(n?Wi(t,e,n):e===i)?1:Gn(Bs(e),0);var o=null==t?0:t.length;if(!o||e<1)return[];for(var a=0,s=0,c=r(Un(o/e));ao?0:o+n),(r=r===i||r>o?o:Bs(r))<0&&(r+=o),r=n>r?0:zs(r);n>>0)?(t=Gs(t))&&("string"==typeof e||null!=e&&!Ls(e))&&!(e=jo(e))&&Cn(t)?Ko(Ln(t),0,n):t.split(e,n):[]},dr.spread=function(t,e){if("function"!=typeof t)throw new oe(c);return e=null==e?0:Gn(Bs(e),0),wo((function(n){var r=n[e],o=Ko(n,0,e);return r&&tn(o,r),Ge(t,this,o)}))},dr.tail=function(t){var e=null==t?0:t.length;return e?No(t,1,e):[]},dr.take=function(t,e,n){return t&&t.length?No(t,0,(e=n||e===i?1:Bs(e))<0?0:e):[]},dr.takeRight=function(t,e,n){var r=null==t?0:t.length;return r?No(t,(e=r-(e=n||e===i?1:Bs(e)))<0?0:e,r):[]},dr.takeRightWhile=function(t,e){return t&&t.length?Bo(t,Pi(e,3),!1,!0):[]},dr.takeWhile=function(t,e){return t&&t.length?Bo(t,Pi(e,3)):[]},dr.tap=function(t,e){return e(t),t},dr.throttle=function(t,e,n){var r=!0,o=!0;if("function"!=typeof t)throw new oe(c);return Ts(n)&&(r="leading"in n?!!n.leading:r,o="trailing"in n?!!n.trailing:o),os(t,e,{leading:r,maxWait:e,trailing:o})},dr.thru=$a,dr.toArray=Fs,dr.toPairs=fc,dr.toPairsIn=pc,dr.toPath=function(t){return vs(t)?Qe(t,la):Ms(t)?[t]:ri(ua(Gs(t)))},dr.toPlainObject=Hs,dr.transform=function(t,e,n){var r=vs(t),o=r||Es(t)||Ps(t);if(e=Pi(e,4),null==n){var i=t&&t.constructor;n=o?r?new i:[]:Ts(t)&&ws(i)?hr(Ne(t)):{}}return(o?We:Wr)(t,(function(t,r,o){return e(n,t,r,o)})),n},dr.unary=function(t){return ts(t,1)},dr.union=Sa,dr.unionBy=Ra,dr.unionWith=Oa,dr.uniq=function(t){return t&&t.length?Uo(t):[]},dr.uniqBy=function(t,e){return t&&t.length?Uo(t,Pi(e,2)):[]},dr.uniqWith=function(t,e){return e="function"==typeof e?e:i,t&&t.length?Uo(t,i,e):[]},dr.unset=function(t,e){return null==t||Fo(t,e)},dr.unzip=Na,dr.unzipWith=La,dr.update=function(t,e,n){return null==t?t:$o(t,e,Vo(n))},dr.updateWith=function(t,e,n,r){return r="function"==typeof r?r:i,null==t?t:$o(t,e,Vo(n),r)},dr.values=dc,dr.valuesIn=function(t){return null==t?[]:bn(t,ic(t))},dr.without=Ia,dr.words=wc,dr.wrap=function(t,e){return ls(Vo(e),t)},dr.xor=Da,dr.xorBy=Ma,dr.xorWith=Pa,dr.zip=ja,dr.zipObject=function(t,e){return Ho(t||[],e||[],Sr)},dr.zipObjectDeep=function(t,e){return Ho(t||[],e||[],To)},dr.zipWith=Ua,dr.entries=fc,dr.entriesIn=pc,dr.extend=Ws,dr.extendWith=Ys,Dc(dr,dr),dr.add=Hc,dr.attempt=Cc,dr.camelCase=hc,dr.capitalize=mc,dr.ceil=Gc,dr.clamp=function(t,e,n){return n===i&&(n=e,e=i),n!==i&&(n=(n=qs(n))==n?n:0),e!==i&&(e=(e=qs(e))==e?e:0),Dr(qs(t),e,n)},dr.clone=function(t){return Mr(t,h)},dr.cloneDeep=function(t){return Mr(t,p|h)},dr.cloneDeepWith=function(t,e){return Mr(t,p|h,e="function"==typeof e?e:i)},dr.cloneWith=function(t,e){return Mr(t,h,e="function"==typeof e?e:i)},dr.conformsTo=function(t,e){return null==e||Pr(t,e,oc(e))},dr.deburr=gc,dr.defaultTo=function(t,e){return null==t||t!=t?e:t},dr.divide=Vc,dr.endsWith=function(t,e,n){t=Gs(t),e=jo(e);var r=t.length,o=n=n===i?r:Dr(Bs(n),0,r);return(n-=e.length)>=0&&t.slice(n,o)==e},dr.eq=ds,dr.escape=function(t){return(t=Gs(t))&&Ct.test(t)?t.replace(xt,xn):t},dr.escapeRegExp=function(t){return(t=Gs(t))&&It.test(t)?t.replace(Lt,"\\$&"):t},dr.every=function(t,e,n){var r=vs(t)?Ke:Br;return n&&Wi(t,e,n)&&(e=i),r(t,Pi(e,3))},dr.find=qa,dr.findIndex=ga,dr.findKey=function(t,e){return an(t,Pi(e,3),Wr)},dr.findLast=Ha,dr.findLastIndex=va,dr.findLastKey=function(t,e){return an(t,Pi(e,3),Yr)},dr.floor=Wc,dr.forEach=Ga,dr.forEachRight=Va,dr.forIn=function(t,e){return null==t?t:Gr(t,Pi(e,3),ic)},dr.forInRight=function(t,e){return null==t?t:Vr(t,Pi(e,3),ic)},dr.forOwn=function(t,e){return t&&Wr(t,Pi(e,3))},dr.forOwnRight=function(t,e){return t&&Yr(t,Pi(e,3))},dr.get=Qs,dr.gt=hs,dr.gte=ms,dr.has=function(t,e){return null!=t&&qi(t,e,to)},dr.hasIn=tc,dr.head=_a,dr.identity=Oc,dr.includes=function(t,e,n,r){t=_s(t)?t:dc(t),n=n&&!r?Bs(n):0;var o=t.length;return n<0&&(n=Gn(o+n,0)),Ds(t)?n<=o&&t.indexOf(e,n)>-1:!!o&&cn(t,e,n)>-1},dr.indexOf=function(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var o=null==n?0:Bs(n);return o<0&&(o=Gn(r+o,0)),cn(t,e,o)},dr.inRange=function(t,e,n){return e=$s(e),n===i?(n=e,e=0):n=$s(n),function(t,e,n){return t>=Vn(e,n)&&t=-D&&t<=D},dr.isSet=Is,dr.isString=Ds,dr.isSymbol=Ms,dr.isTypedArray=Ps,dr.isUndefined=function(t){return t===i},dr.isWeakMap=function(t){return Ss(t)&&zi(t)==at},dr.isWeakSet=function(t){return Ss(t)&&Jr(t)==st},dr.join=function(t,e){return null==t?"":qn.call(t,e)},dr.kebabCase=vc,dr.last=xa,dr.lastIndexOf=function(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var o=r;return n!==i&&(o=(o=Bs(n))<0?Gn(r+o,0):Vn(o,r-1)),e==e?function(t,e,n){for(var r=n+1;r--;)if(t[r]===e)return r;return r}(t,e,o):sn(t,ln,o,!0)},dr.lowerCase=bc,dr.lowerFirst=_c,dr.lt=js,dr.lte=Us,dr.max=function(t){return t&&t.length?zr(t,Oc,Qr):i},dr.maxBy=function(t,e){return t&&t.length?zr(t,Pi(e,2),Qr):i},dr.mean=function(t){return fn(t,Oc)},dr.meanBy=function(t,e){return fn(t,Pi(e,2))},dr.min=function(t){return t&&t.length?zr(t,Oc,fo):i},dr.minBy=function(t,e){return t&&t.length?zr(t,Pi(e,2),fo):i},dr.stubArray=zc,dr.stubFalse=qc,dr.stubObject=function(){return{}},dr.stubString=function(){return""},dr.stubTrue=function(){return!0},dr.multiply=Kc,dr.nth=function(t,e){return t&&t.length?vo(t,Bs(e)):i},dr.noConflict=function(){return Ie._===this&&(Ie._=me),this},dr.noop=Mc,dr.now=Qa,dr.pad=function(t,e,n){t=Gs(t);var r=(e=Bs(e))?Nn(t):0;if(!e||r>=e)return t;var o=(e-r)/2;return bi(Fn(o),n)+t+bi(Un(o),n)},dr.padEnd=function(t,e,n){t=Gs(t);var r=(e=Bs(e))?Nn(t):0;return e&&re){var r=t;t=e,e=r}if(n||t%1||e%1){var o=Kn();return Vn(t+o*(e-t+Re("1e-"+((o+"").length-1))),e)}return ko(t,e)},dr.reduce=function(t,e,n){var r=vs(t)?en:hn,o=arguments.length<3;return r(t,Pi(e,4),n,o,Fr)},dr.reduceRight=function(t,e,n){var r=vs(t)?nn:hn,o=arguments.length<3;return r(t,Pi(e,4),n,o,$r)},dr.repeat=function(t,e,n){return e=(n?Wi(t,e,n):e===i)?1:Bs(e),xo(Gs(t),e)},dr.replace=function(){var t=arguments,e=Gs(t[0]);return t.length<3?e:e.replace(t[1],t[2])},dr.result=function(t,e,n){var r=-1,o=(e=Wo(e,t)).length;for(o||(o=1,t=i);++rD)return[];var n=j,r=Vn(t,j);e=Pi(e),t-=j;for(var o=gn(r,e);++n=a)return t;var c=n-Nn(r);if(c<1)return r;var u=s?Ko(s,0,c).join(""):t.slice(0,c);if(o===i)return u+r;if(s&&(c+=u.length-c),Ls(o)){if(t.slice(c).search(o)){var l,f=u;for(o.global||(o=ne(o.source,Gs(qt.exec(o))+"g")),o.lastIndex=0;l=o.exec(f);)var p=l.index;u=u.slice(0,p===i?c:p)}}else if(t.indexOf(jo(o),c)!=c){var d=u.lastIndexOf(o);d>-1&&(u=u.slice(0,d))}return u+r},dr.unescape=function(t){return(t=Gs(t))&&wt.test(t)?t.replace(kt,In):t},dr.uniqueId=function(t){var e=++fe;return Gs(t)+e},dr.upperCase=kc,dr.upperFirst=xc,dr.each=Ga,dr.eachRight=Va,dr.first=_a,Dc(dr,(Yc={},Wr(dr,(function(t,e){le.call(dr.prototype,e)||(Yc[e]=t)})),Yc),{chain:!1}),dr.VERSION="4.17.15",We(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(t){dr[t].placeholder=dr})),We(["drop","take"],(function(t,e){vr.prototype[t]=function(n){n=n===i?1:Gn(Bs(n),0);var r=this.__filtered__&&!e?new vr(this):this.clone();return r.__filtered__?r.__takeCount__=Vn(n,r.__takeCount__):r.__views__.push({size:Vn(n,j),type:t+(r.__dir__<0?"Right":"")}),r},vr.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}})),We(["filter","map","takeWhile"],(function(t,e){var n=e+1,r=n==N||3==n;vr.prototype[t]=function(t){var e=this.clone();return e.__iteratees__.push({iteratee:Pi(t,3),type:n}),e.__filtered__=e.__filtered__||r,e}})),We(["head","last"],(function(t,e){var n="take"+(e?"Right":"");vr.prototype[t]=function(){return this[n](1).value()[0]}})),We(["initial","tail"],(function(t,e){var n="drop"+(e?"":"Right");vr.prototype[t]=function(){return this.__filtered__?new vr(this):this[n](1)}})),vr.prototype.compact=function(){return this.filter(Oc)},vr.prototype.find=function(t){return this.filter(t).head()},vr.prototype.findLast=function(t){return this.reverse().find(t)},vr.prototype.invokeMap=wo((function(t,e){return"function"==typeof t?new vr(this):this.map((function(n){return ro(n,t,e)}))})),vr.prototype.reject=function(t){return this.filter(cs(Pi(t)))},vr.prototype.slice=function(t,e){t=Bs(t);var n=this;return n.__filtered__&&(t>0||e<0)?new vr(n):(t<0?n=n.takeRight(-t):t&&(n=n.drop(t)),e!==i&&(n=(e=Bs(e))<0?n.dropRight(-e):n.take(e-t)),n)},vr.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},vr.prototype.toArray=function(){return this.take(j)},Wr(vr.prototype,(function(t,e){var n=/^(?:filter|find|map|reject)|While$/.test(e),r=/^(?:head|last)$/.test(e),o=dr[r?"take"+("last"==e?"Right":""):e],a=r||/^find/.test(e);o&&(dr.prototype[e]=function(){var e=this.__wrapped__,s=r?[1]:arguments,c=e instanceof vr,u=s[0],l=c||vs(e),f=function(t){var e=o.apply(dr,tn([t],s));return r&&p?e[0]:e};l&&n&&"function"==typeof u&&1!=u.length&&(c=l=!1);var p=this.__chain__,d=!!this.__actions__.length,h=a&&!p,m=c&&!d;if(!a&&l){e=m?e:new vr(this);var g=t.apply(e,s);return g.__actions__.push({func:$a,args:[f],thisArg:i}),new gr(g,p)}return h&&m?t.apply(this,s):(g=this.thru(f),h?r?g.value()[0]:g.value():g)})})),We(["pop","push","shift","sort","splice","unshift"],(function(t){var e=ie[t],n=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",r=/^(?:pop|shift)$/.test(t);dr.prototype[t]=function(){var t=arguments;if(r&&!this.__chain__){var o=this.value();return e.apply(vs(o)?o:[],t)}return this[n]((function(n){return e.apply(vs(n)?n:[],t)}))}})),Wr(vr.prototype,(function(t,e){var n=dr[e];if(n){var r=n.name+"";le.call(or,r)||(or[r]=[]),or[r].push({name:e,func:n})}})),or[hi(i,b).name]=[{name:"wrapper",func:i}],vr.prototype.clone=function(){var t=new vr(this.__wrapped__);return t.__actions__=ri(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=ri(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=ri(this.__views__),t},vr.prototype.reverse=function(){if(this.__filtered__){var t=new vr(this);t.__dir__=-1,t.__filtered__=!0}else(t=this.clone()).__dir__*=-1;return t},vr.prototype.value=function(){var t=this.__wrapped__.value(),e=this.__dir__,n=vs(t),r=e<0,o=n?t.length:0,i=function(t,e,n){var r=-1,o=n.length;for(;++r=this.__values__.length;return{done:t,value:t?i:this.__values__[this.__index__++]}},dr.prototype.plant=function(t){for(var e,n=this;n instanceof mr;){var r=pa(n);r.__index__=0,r.__values__=i,e?o.__wrapped__=r:e=r;var o=r;n=n.__wrapped__}return o.__wrapped__=t,e},dr.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof vr){var e=t;return this.__actions__.length&&(e=new vr(this)),(e=e.reverse()).__actions__.push({func:$a,args:[Ta],thisArg:i}),new gr(e,this.__chain__)}return this.thru(Ta)},dr.prototype.toJSON=dr.prototype.valueOf=dr.prototype.value=function(){return zo(this.__wrapped__,this.__actions__)},dr.prototype.first=dr.prototype.head,Ue&&(dr.prototype[Ue]=function(){return this}),dr}();Ie._=Dn,(o=function(){return Dn}.call(e,n,e,r))===i||(r.exports=o)}).call(this)}).call(this,n(11),n(21)(t))},function(t,e,n){var r,o,i;o=function(t){var e,n=[],r=Object.keys,o={},i={},a=/^(no-?highlight|plain|text)$/i,s=/\blang(?:uage)?-([\w-]+)\b/i,c=/((^(<[^>]+>|\t|)+|(?:\n)))/gm,u="",l={classPrefix:"hljs-",tabReplace:null,useBR:!1,languages:void 0};function f(t){return t.replace(/&/g,"&").replace(//g,">")}function p(t){return t.nodeName.toLowerCase()}function d(t,e){var n=t&&t.exec(e);return n&&0===n.index}function h(t){return a.test(t)}function m(t){var e,n={},r=Array.prototype.slice.call(arguments,1);for(e in t)n[e]=t[e];return r.forEach((function(t){for(e in t)n[e]=t[e]})),n}function g(t){var e=[];return function t(n,r){for(var o=n.firstChild;o;o=o.nextSibling)3===o.nodeType?r+=o.nodeValue.length:1===o.nodeType&&(e.push({event:"start",offset:r,node:o}),r=t(o,r),p(o).match(/br|hr|img|input/)||e.push({event:"stop",offset:r,node:o}));return r}(t,0),e}function v(t){if(e&&!t.langApiRestored){for(var n in t.langApiRestored=!0,e)t[n]&&(t[e[n]]=t[n]);(t.contains||[]).concat(t.variants||[]).forEach(v)}}function b(t){function e(t){return t&&t.source||t}function n(n,r){return new RegExp(e(n),"m"+(t.case_insensitive?"i":"")+(r?"g":""))}!function o(i,a){if(!i.compiled){if(i.compiled=!0,i.keywords=i.keywords||i.beginKeywords,i.keywords){var s={},c=function(e,n){t.case_insensitive&&(n=n.toLowerCase()),n.split(" ").forEach((function(t){var n=t.split("|");s[n[0]]=[e,n[1]?Number(n[1]):1]}))};"string"==typeof i.keywords?c("keyword",i.keywords):r(i.keywords).forEach((function(t){c(t,i.keywords[t])})),i.keywords=s}i.lexemesRe=n(i.lexemes||/\w+/,!0),a&&(i.beginKeywords&&(i.begin="\\b("+i.beginKeywords.split(" ").join("|")+")\\b"),i.begin||(i.begin=/\B|\b/),i.beginRe=n(i.begin),i.endSameAsBegin&&(i.end=i.begin),i.end||i.endsWithParent||(i.end=/\B|\b/),i.end&&(i.endRe=n(i.end)),i.terminator_end=e(i.end)||"",i.endsWithParent&&a.terminator_end&&(i.terminator_end+=(i.end?"|":"")+a.terminator_end)),i.illegal&&(i.illegalRe=n(i.illegal)),null==i.relevance&&(i.relevance=1),i.contains||(i.contains=[]),i.contains=Array.prototype.concat.apply([],i.contains.map((function(t){return function(t){return t.variants&&!t.cached_variants&&(t.cached_variants=t.variants.map((function(e){return m(t,{variants:null},e)}))),t.cached_variants||t.endsWithParent&&[m(t)]||[t]}("self"===t?i:t)}))),i.contains.forEach((function(t){o(t,i)})),i.starts&&o(i.starts,a);var u=i.contains.map((function(t){return t.beginKeywords?"\\.?(?:"+t.begin+")\\.?":t.begin})).concat([i.terminator_end,i.illegal]).map(e).filter(Boolean);i.terminators=u.length?n(function(t,n){for(var r=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./,o=0,i="",a=0;a0&&(i+=n);c.length>0;){var u=r.exec(c);if(null==u){i+=c;break}i+=c.substring(0,u.index),c=c.substring(u.index+u[0].length),"\\"==u[0][0]&&u[1]?i+="\\"+String(Number(u[1])+s):(i+=u[0],"("==u[0]&&o++)}}return i}(u,"|"),!0):{exec:function(){return null}}}}(t)}function _(t,e,n,r){function i(t){return new RegExp(t.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"),"m")}function a(t,e){var n=m.case_insensitive?e[0].toLowerCase():e[0];return t.keywords.hasOwnProperty(n)&&t.keywords[n]}function s(t,e,n,r){var o='')+e+(n?"":u):e}function c(){k+=null!=v.subLanguage?function(){var t="string"==typeof v.subLanguage;if(t&&!o[v.subLanguage])return f(x);var e=t?_(v.subLanguage,x,!0,E[v.subLanguage]):y(x,v.subLanguage.length?v.subLanguage:void 0);return v.relevance>0&&(C+=e.relevance),t&&(E[v.subLanguage]=e.top),s(e.language,e.value,!1,!0)}():function(){var t,e,n,r;if(!v.keywords)return f(x);for(r="",e=0,v.lexemesRe.lastIndex=0,n=v.lexemesRe.exec(x);n;)r+=f(x.substring(e,n.index)),(t=a(v,n))?(C+=t[1],r+=s(t[0],f(n[0]))):r+=f(n[0]),e=v.lexemesRe.lastIndex,n=v.lexemesRe.exec(x);return r+f(x.substr(e))}(),x=""}function p(t){k+=t.className?s(t.className,"",!0):"",v=Object.create(t,{parent:{value:v}})}function h(t,e){if(x+=t,null==e)return c(),0;var r=function(t,e){var n,r;for(n=0,r=e.contains.length;n")+'"');return x+=e,e.length||1}var m=w(t);if(!m)throw new Error('Unknown language: "'+t+'"');b(m);var g,v=r||m,E={},k="";for(g=v;g!==m;g=g.parent)g.className&&(k=s(g.className,"",!0)+k);var x="",C=0;try{for(var A,T,S=0;v.terminators.lastIndex=S,A=v.terminators.exec(e);)T=h(e.substring(S,A.index),A[0]),S=A.index+T;for(h(e.substr(S)),g=v;g.parent;g=g.parent)g.className&&(k+=u);return{relevance:C,value:k,language:t,top:v}}catch(t){if(t.message&&-1!==t.message.indexOf("Illegal"))return{relevance:0,value:f(e)};throw t}}function y(t,e){e=e||l.languages||r(o);var n={relevance:0,value:f(t)},i=n;return e.filter(w).filter(C).forEach((function(e){var r=_(e,t,!1);r.language=e,r.relevance>i.relevance&&(i=r),r.relevance>n.relevance&&(i=n,n=r)})),i.language&&(n.second_best=i),n}function E(t){return l.tabReplace||l.useBR?t.replace(c,(function(t,e){return l.useBR&&"\n"===t?"
":l.tabReplace?e.replace(/\t/g,l.tabReplace):""})):t}function k(t){var e,r,o,a,c,u=function(t){var e,n,r,o,i=t.className+" ";if(i+=t.parentNode?t.parentNode.className:"",n=s.exec(i))return w(n[1])?n[1]:"no-highlight";for(e=0,r=(i=i.split(/\s+/)).length;e/g,"\n"):e=t,c=e.textContent,o=u?_(u,c,!0):y(c),(r=g(e)).length&&((a=document.createElementNS("http://www.w3.org/1999/xhtml","div")).innerHTML=o.value,o.value=function(t,e,r){var o=0,i="",a=[];function s(){return t.length&&e.length?t[0].offset!==e[0].offset?t[0].offset"}function u(t){i+=""}function l(t){("start"===t.event?c:u)(t.node)}for(;t.length||e.length;){var d=s();if(i+=f(r.substring(o,d[0].offset)),o=d[0].offset,d===t){a.reverse().forEach(u);do{l(d.splice(0,1)[0]),d=s()}while(d===t&&d.length&&d[0].offset===o);a.reverse().forEach(c)}else"start"===d[0].event?a.push(d[0].node):a.pop(),l(d.splice(0,1)[0])}return i+f(r.substr(o))}(r,g(a),c)),o.value=E(o.value),t.innerHTML=o.value,t.className=function(t,e,n){var r=e?i[e]:n,o=[t.trim()];return t.match(/\bhljs\b/)||o.push("hljs"),-1===t.indexOf(r)&&o.push(r),o.join(" ").trim()}(t.className,u,o.language),t.result={language:o.language,re:o.relevance},o.second_best&&(t.second_best={language:o.second_best.language,re:o.second_best.relevance}))}function x(){if(!x.called){x.called=!0;var t=document.querySelectorAll("pre code");n.forEach.call(t,k)}}function w(t){return t=(t||"").toLowerCase(),o[t]||o[i[t]]}function C(t){var e=w(t);return e&&!e.disableAutodetect}return t.highlight=_,t.highlightAuto=y,t.fixMarkup=E,t.highlightBlock=k,t.configure=function(t){l=m(l,t)},t.initHighlighting=x,t.initHighlightingOnLoad=function(){addEventListener("DOMContentLoaded",x,!1),addEventListener("load",x,!1)},t.registerLanguage=function(e,n){var r=o[e]=n(t);v(r),r.aliases&&r.aliases.forEach((function(t){i[t]=e}))},t.listLanguages=function(){return r(o)},t.getLanguage=w,t.autoDetection=C,t.inherit=m,t.IDENT_RE="[a-zA-Z]\\w*",t.UNDERSCORE_IDENT_RE="[a-zA-Z_]\\w*",t.NUMBER_RE="\\b\\d+(\\.\\d+)?",t.C_NUMBER_RE="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",t.BINARY_NUMBER_RE="\\b(0b[01]+)",t.RE_STARTERS_RE="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",t.BACKSLASH_ESCAPE={begin:"\\\\[\\s\\S]",relevance:0},t.APOS_STRING_MODE={className:"string",begin:"'",end:"'",illegal:"\\n",contains:[t.BACKSLASH_ESCAPE]},t.QUOTE_STRING_MODE={className:"string",begin:'"',end:'"',illegal:"\\n",contains:[t.BACKSLASH_ESCAPE]},t.PHRASAL_WORDS_MODE={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},t.COMMENT=function(e,n,r){var o=t.inherit({className:"comment",begin:e,end:n,contains:[]},r||{});return o.contains.push(t.PHRASAL_WORDS_MODE),o.contains.push({className:"doctag",begin:"(?:TODO|FIXME|NOTE|BUG|XXX):",relevance:0}),o},t.C_LINE_COMMENT_MODE=t.COMMENT("//","$"),t.C_BLOCK_COMMENT_MODE=t.COMMENT("/\\*","\\*/"),t.HASH_COMMENT_MODE=t.COMMENT("#","$"),t.NUMBER_MODE={className:"number",begin:t.NUMBER_RE,relevance:0},t.C_NUMBER_MODE={className:"number",begin:t.C_NUMBER_RE,relevance:0},t.BINARY_NUMBER_MODE={className:"number",begin:t.BINARY_NUMBER_RE,relevance:0},t.CSS_NUMBER_MODE={className:"number",begin:t.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},t.REGEXP_MODE={className:"regexp",begin:/\//,end:/\/[gimuy]*/,illegal:/\n/,contains:[t.BACKSLASH_ESCAPE,{begin:/\[/,end:/\]/,relevance:0,contains:[t.BACKSLASH_ESCAPE]}]},t.TITLE_MODE={className:"title",begin:t.IDENT_RE,relevance:0},t.UNDERSCORE_TITLE_MODE={className:"title",begin:t.UNDERSCORE_IDENT_RE,relevance:0},t.METHOD_GUARD={begin:"\\.\\s*"+t.UNDERSCORE_IDENT_RE,relevance:0},t},i="object"==typeof window&&window||"object"==typeof self&&self,e.nodeType?i&&(i.hljs=o({}),void 0===(r=function(){return i.hljs}.apply(e,[]))||(t.exports=r)):o(e)},function(t,e,n){"use strict";t.exports=n(102)},function(t,e,n){"use strict";t.exports.encode=n(103),t.exports.decode=n(104),t.exports.format=n(105),t.exports.parse=n(106)},function(t,e){t.exports=/[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/},function(t,e){t.exports=/[\0-\x1F\x7F-\x9F]/},function(t,e){t.exports=/[ \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/},function(t,e,n){"use strict";var r="<[A-Za-z][A-Za-z0-9\\-]*(?:\\s+[a-zA-Z_:][a-zA-Z0-9:._-]*(?:\\s*=\\s*(?:[^\"'=<>`\\x00-\\x20]+|'[^']*'|\"[^\"]*\"))?)*\\s*\\/?>",o="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>",i=new RegExp("^(?:"+r+"|"+o+"|\x3c!----\x3e|\x3c!--(?:-?[^>-])(?:-?[^-])*--\x3e|<[?].*?[?]>|]*>|)"),a=new RegExp("^(?:"+r+"|"+o+")");t.exports.HTML_TAG_RE=i,t.exports.HTML_OPEN_CLOSE_TAG_RE=a},function(t,e,n){"use strict";t.exports.tokenize=function(t,e){var n,r,o,i,a=t.pos,s=t.src.charCodeAt(a);if(e)return!1;if(126!==s)return!1;if(o=(r=t.scanDelims(t.pos,!0)).length,i=String.fromCharCode(s),o<2)return!1;for(o%2&&(t.push("text","",0).content=i,o--),n=0;n=0;e--)95!==(n=s[e]).marker&&42!==n.marker||-1!==n.end&&(r=s[n.end],a=e>0&&s[e-1].end===n.end+1&&s[e-1].token===n.token-1&&s[n.end+1].token===r.token+1&&s[e-1].marker===n.marker,i=String.fromCharCode(n.marker),(o=t.tokens[n.token]).type=a?"strong_open":"em_open",o.tag=a?"strong":"em",o.nesting=1,o.markup=a?i+i:i,o.content="",(o=t.tokens[r.token]).type=a?"strong_close":"em_close",o.tag=a?"strong":"em",o.nesting=-1,o.markup=a?i+i:i,o.content="",a&&(t.tokens[s[e-1].token].content="",t.tokens[s[n.end+1].token].content="",e--))}},function(t,e,n){(function(t,r){var o;/*! https://mths.be/punycode v1.4.1 by @mathias */!function(i){e&&e.nodeType,t&&t.nodeType;var a="object"==typeof r&&r;a.global!==a&&a.window!==a&&a.self;var s,c=2147483647,u=36,l=1,f=26,p=38,d=700,h=72,m=128,g="-",v=/^xn--/,b=/[^\x20-\x7E]/,_=/[\x2E\u3002\uFF0E\uFF61]/g,y={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},E=u-l,k=Math.floor,x=String.fromCharCode;function w(t){throw new RangeError(y[t])}function C(t,e){for(var n=t.length,r=[];n--;)r[n]=e(t[n]);return r}function A(t,e){var n=t.split("@"),r="";return n.length>1&&(r=n[0]+"@",t=n[1]),r+C((t=t.replace(_,".")).split("."),e).join(".")}function T(t){for(var e,n,r=[],o=0,i=t.length;o=55296&&e<=56319&&o65535&&(e+=x((t-=65536)>>>10&1023|55296),t=56320|1023&t),e+=x(t)})).join("")}function R(t,e){return t+22+75*(t<26)-((0!=e)<<5)}function O(t,e,n){var r=0;for(t=n?k(t/d):t>>1,t+=k(t/e);t>E*f>>1;r+=u)t=k(t/E);return k(r+(E+1)*t/(t+p))}function N(t){var e,n,r,o,i,a,s,p,d,v,b,_=[],y=t.length,E=0,x=m,C=h;for((n=t.lastIndexOf(g))<0&&(n=0),r=0;r=128&&w("not-basic"),_.push(t.charCodeAt(r));for(o=n>0?n+1:0;o=y&&w("invalid-input"),((p=(b=t.charCodeAt(o++))-48<10?b-22:b-65<26?b-65:b-97<26?b-97:u)>=u||p>k((c-E)/a))&&w("overflow"),E+=p*a,!(p<(d=s<=C?l:s>=C+f?f:s-C));s+=u)a>k(c/(v=u-d))&&w("overflow"),a*=v;C=O(E-i,e=_.length+1,0==i),k(E/e)>c-x&&w("overflow"),x+=k(E/e),E%=e,_.splice(E++,0,x)}return S(_)}function L(t){var e,n,r,o,i,a,s,p,d,v,b,_,y,E,C,A=[];for(_=(t=T(t)).length,e=m,n=0,i=h,a=0;a<_;++a)(b=t[a])<128&&A.push(x(b));for(r=o=A.length,o&&A.push(g);r<_;){for(s=c,a=0;a<_;++a)(b=t[a])>=e&&bk((c-n)/(y=r+1))&&w("overflow"),n+=(s-e)*y,e=s,a=0;a<_;++a)if((b=t[a])c&&w("overflow"),b==e){for(p=n,d=u;!(p<(v=d<=i?l:d>=i+f?f:d-i));d+=u)C=p-v,E=u-v,A.push(x(R(v+C%E,0))),p=k(C/E);A.push(x(R(p,0))),i=O(n,y,r==o),n=0,++r}++n,++e}return A.join("")}s={version:"1.4.1",ucs2:{decode:T,encode:S},decode:N,encode:L,toASCII:function(t){return A(t,(function(t){return b.test(t)?"xn--"+L(t):t}))},toUnicode:function(t){return A(t,(function(t){return v.test(t)?N(t.slice(4).toLowerCase()):t}))}},void 0===(o=function(){return s}.call(e,n,e,t))||(t.exports=o)}()}).call(this,n(21)(t),n(11))},function(t,e,n){"use strict";t.exports=function(t,e){!0===e&&(e=0);var n=t.indexOf("://"),r=t.substring(0,n).split("+").filter(Boolean);return"number"==typeof e?r[e]:r}},function(t,e,n){"use strict";var r=n(64);t.exports=function t(e){if(Array.isArray(e))return-1!==e.indexOf("ssh")||-1!==e.indexOf("rsync");if("string"!=typeof e)return!1;var n=r(e);return e=e.substring(e.indexOf("://")+3),!!t(n)||e.indexOf("@")=o?t:r(t,e,n)}},function(t,e){var n=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]");t.exports=function(t){return n.test(t)}},function(t,e,n){var r=n(173),o=n(68),i=n(174);t.exports=function(t){return o(t)?i(t):r(t)}},function(t,e,n){var r=n(22),o=n(175),i=n(9),a=n(23),s=1/0,c=r?r.prototype:void 0,u=c?c.toString:void 0;t.exports=function t(e){if("string"==typeof e)return e;if(i(e))return o(e,t)+"";if(a(e))return u?u.call(e):"";var n=e+"";return"0"==n&&1/e==-s?"-0":n}},function(t,e,n){(function(e){var n="object"==typeof e&&e&&e.Object===Object&&e;t.exports=n}).call(this,n(11))},function(t,e,n){var r=n(182),o=n(183),i=n(184);t.exports=function(t,e,n){return e==e?i(t,e,n):r(t,o,n)}},function(t,e,n){var r=n(17),o=n(19),i="[object AsyncFunction]",a="[object Function]",s="[object GeneratorFunction]",c="[object Proxy]";t.exports=function(t){if(!o(t))return!1;var e=r(t);return e==a||e==s||e==i||e==c}},function(t,e,n){var r=n(75),o=n(196),i=Object.prototype.hasOwnProperty;t.exports=function(t){if(!r(t))return o(t);var e=[];for(var n in Object(t))i.call(t,n)&&"constructor"!=n&&e.push(n);return e}},function(t,e){var n=Object.prototype;t.exports=function(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||n)}},function(t,e,n){var r=n(198),o=n(44),i=n(203),a=n(78),s=n(204),c=n(17),u=n(77),l=u(r),f=u(o),p=u(i),d=u(a),h=u(s),m=c;(r&&"[object DataView]"!=m(new r(new ArrayBuffer(1)))||o&&"[object Map]"!=m(new o)||i&&"[object Promise]"!=m(i.resolve())||a&&"[object Set]"!=m(new a)||s&&"[object WeakMap]"!=m(new s))&&(m=function(t){var e=c(t),n="[object Object]"==e?t.constructor:void 0,r=n?u(n):"";if(r)switch(r){case l:return"[object DataView]";case f:return"[object Map]";case p:return"[object Promise]";case d:return"[object Set]";case h:return"[object WeakMap]"}return e}),t.exports=m},function(t,e){var n=Function.prototype.toString;t.exports=function(t){if(null!=t){try{return n.call(t)}catch(t){}try{return t+""}catch(t){}}return""}},function(t,e,n){var r=n(12)(n(8),"Set");t.exports=r},function(t,e,n){var r=n(48),o=n(233),i=n(234);function a(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new r;++ep))return!1;var h=l.get(t);if(h&&l.get(e))return h==e;var m=-1,g=!0,v=n&s?new r:void 0;for(l.set(t,e),l.set(e,t);++m>>24)|4278255360&(n[d]<<24|n[d]>>>8);n[c>>>5]|=128<>>9<<4)]=c;var h=s._ff,m=s._gg,g=s._hh,v=s._ii;for(d=0;d>>0,l=l+_>>>0,f=f+y>>>0,p=p+E>>>0}return r.endian([u,l,f,p])})._ff=function(t,e,n,r,o,i,a){var s=t+(e&n|~e&r)+(o>>>0)+a;return(s<>>32-i)+e},s._gg=function(t,e,n,r,o,i,a){var s=t+(e&r|n&~r)+(o>>>0)+a;return(s<>>32-i)+e},s._hh=function(t,e,n,r,o,i,a){var s=t+(e^n^r)+(o>>>0)+a;return(s<>>32-i)+e},s._ii=function(t,e,n,r,o,i,a){var s=t+(n^(e|~r))+(o>>>0)+a;return(s<>>32-i)+e},s._blocksize=16,s._digestsize=16,t.exports=function(t,e){if(null==t)throw new Error("Illegal argument "+t);var n=r.wordsToBytes(s(t,e));return e&&e.asBytes?n:e&&e.asString?a.bytesToString(n):r.bytesToHex(n)}},function(t,e,n){var r=n(94);"string"==typeof r&&(r=[[t.i,r,""]]);var o={hmr:!0,transform:void 0,insertInto:void 0};n(96)(r,o);r.locals&&(t.exports=r.locals)},function(t,e,n){(t.exports=n(95)(!1)).push([t.i,'@charset \'UTF-8\';\n\n/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput { /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect { /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type="button"],\n[type="reset"],\n[type="submit"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type="button"]::-moz-focus-inner,\n[type="reset"]::-moz-focus-inner,\n[type="submit"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type="button"]:-moz-focusring,\n[type="reset"]:-moz-focusring,\n[type="submit"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type="checkbox"],\n[type="radio"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type="number"]::-webkit-inner-spin-button,\n[type="number"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type="search"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type="search"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\n/*\n * Add the correct display in all browsers.\n */\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n\n/**\n * Manually forked from SUIT CSS Base: https://github.com/suitcss/base\n * A thin layer on top of normalize.css that provides a starting point more\n * suitable for web applications.\n */\n\n/**\n * 1. Prevent padding and border from affecting element width\n * https://goo.gl/pYtbK7\n * 2. Change the default font family in all browsers (opinionated)\n */\n\nhtml {\n box-sizing: border-box; /* 1 */\n font-family: sans-serif; /* 2 */\n}\n\n*,\n*::before,\n*::after {\n box-sizing: inherit;\n}\n\n/**\n * Removes the default spacing and border for appropriate elements.\n */\n\n\ndl,\ndd,\nh2,\nh3,\nh5,\np,\npre {\n margin: 0;\n}\n\nbutton {\n background: transparent;\n padding: 0;\n}\n\n/**\n * Work around a Firefox/IE bug where the transparent `button` background\n * results in a loss of the default `button` focus styles.\n */\n\nbutton:focus {\n outline: 1px dotted;\n outline: 5px auto -webkit-focus-ring-color;\n}\n\nol,\nul {\n list-style: none;\n margin: 0;\n padding: 0;\n}\n\n/**\n * Tailwind custom reset styles\n */\n\n/**\n * 1. Use the system font stack as a sane default.\n * 2. Use Tailwind\'s default "normal" line-height so the user isn\'t forced\n * to override it to ensure consistency even when using the default theme.\n */\n\nhtml {\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 1 */\n line-height: 1.5; /* 2 */\n}\n\n/**\n * Allow adding a border to an element by just adding a border-width.\n *\n * By default, the way the browser specifies that an element should have no\n * border is by setting it\'s border-style to `none` in the user-agent\n * stylesheet.\n *\n * In order to easily add borders to elements by just setting the `border-width`\n * property, we change the default border-style for all elements to `solid`, and\n * use border-width to hide them instead. This way our `border` utilities only\n * need to set the `border-width` property instead of the entire `border`\n * shorthand, making our border utilities much more straightforward to compose.\n *\n * https://github.com/tailwindcss/tailwindcss/pull/116\n */\n\n*,\n*::before,\n*::after {\n border-width: 0;\n border-style: solid;\n border-color: rgb(232, 229, 239);\n border-color: var(--gray-300);\n}\n\n/*\n * Ensure horizontal rules are visible by default\n */\n\n/**\n * Undo the `border-style: none` reset that Normalize applies to images so that\n * our `border-{width}` utilities have the expected effect.\n *\n * The Normalize reset is unnecessary for us since we default the border-width\n * to 0 on all elements.\n *\n * https://github.com/tailwindcss/tailwindcss/issues/362\n */\n\ntextarea {\n resize: vertical;\n}\n\ninput::-webkit-input-placeholder,\ntextarea::-webkit-input-placeholder {\n color: #a0aec0;\n}\n\ninput::-moz-placeholder,\ntextarea::-moz-placeholder {\n color: #a0aec0;\n}\n\ninput:-ms-input-placeholder,\ntextarea:-ms-input-placeholder {\n color: #a0aec0;\n}\n\ninput::-ms-input-placeholder,\ntextarea::-ms-input-placeholder {\n color: #a0aec0;\n}\n\ninput::placeholder,\ntextarea::placeholder {\n color: #a0aec0;\n}\n\nbutton,\n[role="button"] {\n cursor: pointer;\n}\n\n\nh2,\nh3,\nh5 {\n font-size: inherit;\n font-weight: inherit;\n}\n\n/**\n * Reset links to optimize for opt-in styling instead of\n * opt-out.\n */\n\na {\n color: inherit;\n text-decoration: inherit;\n}\n\n/**\n * Reset form element properties that are easy to forget to\n * style explicitly so you don\'t inadvertently introduce\n * styles that deviate from your design system. These styles\n * supplement a partial reset that is already applied by\n * normalize.css.\n */\n\nbutton,\ninput,\nselect,\ntextarea {\n padding: 0;\n line-height: inherit;\n color: inherit;\n}\n\n/**\n * Use the configured \'mono\' font family for elements that\n * are expected to be rendered with a monospace font, falling\n * back to the system monospace stack if there is no configured\n * \'mono\' font family.\n */\n\npre,\ncode {\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;\n}\n\n/**\n * Make replaced elements `display: block` by default as that\'s\n * the behavior you want almost all of the time. Inspired by\n * CSS Remedy, with `svg` added as well.\n *\n * https://github.com/mozdevs/cssremedy/issues/14\n */\n\n\nsvg,\ncanvas {\n display: block;\n vertical-align: middle;\n}\n\n/**\n * Constrain images and videos to the parent width and preserve\n * their instrinsic aspect ratio.\n *\n * https://github.com/mozdevs/cssremedy/issues/14\n */\n\n:root {\n --white: rgb(255, 255, 255);\n --blue-400: rgb(122, 122, 255);\n --green-100: rgb(227, 255, 242);\n --green-300: rgb(148, 242, 200);\n --green-400: rgb(114, 224, 175);\n --green-500: rgb(34, 212, 146);\n --purple-100: rgb(251, 245, 255);\n --purple-200: rgb(236, 211, 253);\n --purple-300: rgb(214, 188, 250);\n --purple-400: rgb(183, 148, 244);\n --purple-500: rgb(121, 0, 245);\n --purple-600: rgb(113, 7, 220);\n --purple-800: rgb(79, 15, 143);\n --red-100: rgb(255, 235, 243);\n --red-300: rgb(250, 133, 162);\n --red-400: rgb(250, 78, 121);\n --yellow-100: rgb(255, 253, 235);\n --yellow-200: rgb(255, 248, 196);\n --yellow-300: rgb(255, 243, 148);\n --yellow-400: rgb(255, 234, 79);\n --tint-50: rgba(0, 0, 150, 0.015);\n --tint-100: rgba(0, 0, 150, 0.025);\n --tint-200: rgba(0, 0, 100, 0.07);\n --tint-300: rgba(25, 0, 100, 0.1);\n --tint-400: rgba(20, 0, 100, 0.2);\n --tint-500: rgba(30, 20, 90, 0.35);\n --tint-600: rgba(30, 20, 70, 0.5);\n --tint-700: rgba(15, 10, 60, 0.75);\n --gray-50: rgb(252, 252, 253);\n --gray-100: rgb(247, 247, 252);\n --gray-200: rgb(238, 238, 245);\n --gray-300: rgb(232, 229, 239);\n --gray-400: rgb(209, 204, 224);\n --gray-500: rgb(176, 173, 197);\n --gray-600: rgb(142, 137, 162);\n --gray-700: rgb(75, 71, 109);\n --gray-800: rgb(51, 47, 81);\n /* dark theme */\n --dark-white: rgb(38, 38, 50);\n --dark-blue-400: rgb(85, 0, 255);\n --dark-green-100: rgb(32, 97, 90);\n --dark-green-300: rgb(55, 111, 123);\n --dark-green-500: rgb(63, 152, 142);\n --dark-purple-100: rgb(60, 46, 96);\n --dark-purple-200: rgb(81, 50, 128);\n --dark-purple-300: rgb(104, 85, 147);\n --dark-purple-400: rgb(106, 87, 148);\n --dark-purple-500: rgb(126, 107, 167);\n --dark-purple-600: rgb(145, 127, 183);\n --dark-purple-800: rgb(158, 140, 194);\n --dark-red-100: rgb(255, 235, 243);\n --dark-red-300: rgb(250, 133, 162);\n --dark-red-400: rgb(250, 78, 121);\n --dark-yellow-100: rgb(61, 57, 49);\n --dark-yellow-200: rgb(90, 78, 53);\n --dark-yellow-300: rgb(119, 103, 70);\n --dark-yellow-400: rgb(145, 121, 90);\n --dark-tint-50: rgba(240, 240, 245, 0.05);\n --dark-tint-100: rgba(240, 240, 245, 0.075);\n --dark-tint-200: rgba(240, 240, 245, 0.1);\n --dark-tint-300: rgba(240, 240, 245, 0.125);\n --dark-tint-400: rgba(240, 240, 245, 0.25);\n --dark-tint-500: rgba(240, 240, 245, 0.45);\n --dark-tint-600: rgba(240, 240, 245, 0.55);\n --dark-tint-700: rgba(240, 240, 245, 0.65);\n --dark-gray-0: rgb(30, 30, 40);\n --dark-gray-50: rgb(38, 38, 50);\n --dark-gray-100: rgb(48, 48, 58);\n --dark-gray-200: rgb(51, 51, 65);\n --dark-gray-300: rgb(75, 75, 85);\n --dark-gray-400: rgb(142, 142, 160);\n --dark-gray-500: rgb(152, 152, 170);\n --dark-gray-600: rgb(165, 165, 175);\n --dark-gray-700: rgb(216, 216, 223);\n --dark-gray-800: rgb(230, 230, 235);\n --dark-shadow-sm: \'0 2px 0 var(--gray-0)\';\n --dark-shadow-default: \'0 2px 0 var(--gray-50), 2px 4px 0 var(--gray-0)\';\n --dark-shadow-lg: \'0 2px 0 var(--gray-100), 2px 4px 0 var(--gray-50), 4px 6px 0 var(--gray-0)\';\n --dark-shadow-input: \'inset 0 2px 0 var(--gray-100)\';\n}\n\nhtml {\n box-sizing: border-box;\n font-size: 14px;\n background-color: rgb(238, 238, 245);\n background-color: var(--gray-200);\n overflow-x: hidden;\n overflow-y: scroll;\n}\n\n@media (min-width: 1024px) {\n html {\n font-size: 16px;\n }\n}\n\n/* Exclude iframes like 1Password save modals */\n\n*:not(iframe),\n*:after,\n*:before {\n position: relative;\n}\n\n*:focus {\n outline: 0 !important;\n}\n\nbody {\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";\n color: rgb(51, 47, 81);\n color: var(--gray-800);\n line-height: 1.5;\n width: 100%;\n}\n\n/* Dark theme */\n\n@media (prefers-color-scheme: dark) {\n html.theme-auto {\n --white: var(--dark-white);\n --blue-400: var(--dark-blue-400);\n --green-100: var(--dark-green-100);\n --green-300: var(--dark-green-300);\n --green-400: var(--dark-green-400);\n --green-500: var(--dark-green-500);\n --purple-100: var(--dark-purple-100);\n --purple-200: var(--dark-purple-200);\n --purple-300: var(--dark-purple-300);\n --purple-400: var(--dark-purple-400);\n --purple-500: var(--dark-purple-500);\n --purple-600: var(--dark-purple-600);\n --purple-800: var(--dark-purple-800);\n --red-100: var(--dark-red-100);\n --red-300: var(--dark-red-300);\n --red-400: var(--dark-red-400);\n --yellow-100: var(--dark-yellow-100);\n --yellow-200: var(--dark-yellow-200);\n --yellow-300: var(--dark-yellow-300);\n --yellow-400: var(--dark-yellow-400);\n --tint-50: var(--dark-tint-50);\n --tint-100: var(--dark-tint-100);\n --tint-200: var(--dark-tint-200);\n --tint-300: var(--dark-tint-300);\n --tint-400: var(--dark-tint-400);\n --tint-500: var(--dark-tint-500);\n --tint-600: var(--dark-tint-600);\n --tint-700: var(--dark-tint-700);\n --gray-0: var(--dark-gray-0);\n --gray-50: var(--dark-gray-50);\n --gray-100: var(--dark-gray-100);\n --gray-200: var(--dark-gray-200);\n --gray-300: var(--dark-gray-300);\n --gray-400: var(--dark-gray-400);\n --gray-500: var(--dark-gray-500);\n --gray-600: var(--dark-gray-600);\n --gray-700: var(--dark-gray-700);\n --gray-800: var(--dark-gray-800);\n --shadow-sm: \'0 2px 0 var(--gray-50)\';\n --shadow-default: \'0 2px 0 var(--gray-100), 2px 4px 0 var(--gray-50)\';\n --shadow-lg: \'0 2px 0 var(--gray-200), 2px 4px 0 var(--gray-100), 4px 6px 0 var(--gray-50)\';\n --shadow-input: \'inset 0 2px 0 var(--gray-100)\';\n }\n\n html.theme-auto {\n background-color: rgb(30, 30, 40);\n background-color: var(--dark-gray-0);\n }\n\n html.theme-auto .checkbox:before {\n background-color: rgb(51, 47, 81);\n background-color: var(--gray-800);\n }\n\n html.theme-auto .tab-nav,\n html.theme-auto .dropdown {\n background-color: rgb(209, 204, 224);\n background-color: var(--gray-400);\n }\n}\n\nhtml.theme-dark {\n --white: var(--dark-white);\n --blue-400: var(--dark-blue-400);\n --green-100: var(--dark-green-100);\n --green-300: var(--dark-green-300);\n --green-400: var(--dark-green-400);\n --green-500: var(--dark-green-500);\n --purple-100: var(--dark-purple-100);\n --purple-200: var(--dark-purple-200);\n --purple-300: var(--dark-purple-300);\n --purple-400: var(--dark-purple-400);\n --purple-500: var(--dark-purple-500);\n --purple-600: var(--dark-purple-600);\n --purple-800: var(--dark-purple-800);\n --red-100: var(--dark-red-100);\n --red-300: var(--dark-red-300);\n --red-400: var(--dark-red-400);\n --yellow-100: var(--dark-yellow-100);\n --yellow-200: var(--dark-yellow-200);\n --yellow-300: var(--dark-yellow-300);\n --yellow-400: var(--dark-yellow-400);\n --tint-50: var(--dark-tint-50);\n --tint-100: var(--dark-tint-100);\n --tint-200: var(--dark-tint-200);\n --tint-300: var(--dark-tint-300);\n --tint-400: var(--dark-tint-400);\n --tint-500: var(--dark-tint-500);\n --tint-600: var(--dark-tint-600);\n --tint-700: var(--dark-tint-700);\n --gray-0: var(--dark-gray-0);\n --gray-50: var(--dark-gray-50);\n --gray-100: var(--dark-gray-100);\n --gray-200: var(--dark-gray-200);\n --gray-300: var(--dark-gray-300);\n --gray-400: var(--dark-gray-400);\n --gray-500: var(--dark-gray-500);\n --gray-600: var(--dark-gray-600);\n --gray-700: var(--dark-gray-700);\n --gray-800: var(--dark-gray-800);\n --shadow-sm: \'0 2px 0 var(--gray-50)\';\n --shadow-default: \'0 2px 0 var(--gray-100), 2px 4px 0 var(--gray-50)\';\n --shadow-lg: \'0 2px 0 var(--gray-200), 2px 4px 0 var(--gray-100), 4px 6px 0 var(--gray-50)\';\n --shadow-input: \'inset 0 2px 0 var(--gray-100)\';\n}\n\nhtml.theme-dark {\n background-color: rgb(30, 30, 40);\n background-color: var(--dark-gray-0);\n}\n\nhtml.theme-dark .checkbox:before {\n background-color: rgb(51, 47, 81);\n background-color: var(--gray-800);\n}\n\nhtml.theme-dark .tab-nav,\nhtml.theme-dark .dropdown {\n background-color: rgb(209, 204, 224);\n background-color: var(--gray-400);\n}\n\n.alert {\n padding-left: 1rem;\n padding-right: 1rem;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n color: rgb(75, 71, 109);\n color: var(--gray-700);\n border-width: 0;\n border-left-width: 2px;\n border-color: rgba(0, 0, 150, 0.025);\n border-color: var(--tint-100);\n}\n\n.alert-warning {\n background-color: rgb(255, 253, 235);\n background-color: var(--yellow-100);\n border-color: rgb(255, 234, 79);\n border-color: var(--yellow-400);\n}\n\n.alert-empty {\n color: rgba(30, 20, 90, 0.35);\n color: var(--tint-500);\n padding-top: 2rem;\n padding-bottom: 2rem;\n text-align: center;\n}\n\n.button {\n display: inline-flex;\n align-items: center;\n justify-items: center;\n align-content: center;\n justify-content: center;\n padding-left: 1rem;\n padding-right: 1rem;\n min-height: 2.5rem;\n border-width: 0;\n background-color: rgb(121, 0, 245);\n background-color: var(--purple-500);\n overflow: hidden;\n border-radius: 0.125rem;\n color: rgb(255, 255, 255);\n color: var(--white);\n line-height: 1;\n text-decoration: none;\n}\n\n.button:after {\n content: \'\';\n display: block;\n position: absolute;\n left: 100%;\n bottom: 0;\n width: 200%;\n height: 100vh;\n background-color: rgba(30, 20, 90, 0.35);\n background-color: var(--tint-500);\n transform: translateX(-1rem) skewX(-65deg);\n transform-origin: 0% 100%;\n transition: transform 0.75s ease-out;\n}\n\n.button:hover:after {\n transform: translateX(-1.5rem) skewX(-65deg);\n transition-duration: 0.3s;\n}\n\n.button:not(:disabled):active:after {\n transition-delay: 0.2s;\n transition-duration: 0.3s;\n transform: translateX(-100%) skewX(-65deg);\n}\n\n.button-secondary {\n display: inline-flex;\n align-items: center;\n justify-items: center;\n align-content: center;\n justify-content: center;\n padding-left: 1rem;\n padding-right: 1rem;\n min-height: 2.5rem;\n border-width: 0;\n background-color: rgb(121, 0, 245);\n background-color: var(--purple-500);\n overflow: hidden;\n border-radius: 0.125rem;\n color: rgb(255, 255, 255);\n color: var(--white);\n line-height: 1;\n text-decoration: none;\n background-color: rgba(0, 0, 100, 0.07);\n background-color: var(--tint-200);\n color: rgba(15, 10, 60, 0.75);\n color: var(--tint-700);\n}\n\n.button-secondary:hover {\n background-color: rgba(25, 0, 100, 0.1);\n background-color: var(--tint-300);\n}\n\n.button-secondary:not(:disabled):active {\n background-color: rgba(30, 20, 90, 0.35);\n background-color: var(--tint-500);\n opacity: 0.5;\n}\n\n.button:focus,\n.button-secondary:focus {\n outline: 0;\n}\n\n.button:disabled,\n.button-secondary:disabled {\n cursor: not-allowed;\n opacity: 0.25;\n}\n\n.button-sm {\n font-size: 0.875rem;\n}\n\n.button.button-sm,\n.button-secondary.button-sm {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n min-height: 1.5rem;\n border-radius: 0.125rem;\n}\n\n.button-lg {\n font-size: 1.125rem;\n}\n\n.button.button-lg,\n.button-secondary.button-lg {\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n min-height: 3rem;\n}\n\n.button-lg.button:after {\n transform: translateX(-2rem) skewX(-65deg);\n}\n\n.button-lg.button:hover:after {\n transform: translateX(-3rem) skewX(-65deg);\n}\n\n.card {\n position: relative;\n display: grid;\n align-items: stretch;\n border-width: 1px;\n border-color: rgba(25, 0, 100, 0.1);\n border-color: var(--tint-300);\n background-color: rgb(255, 255, 255);\n background-color: var(--white);\n box-shadow: var(--shadow-sm);\n border-radius: 0.125rem;\n}\n\n.card-details {\n overflow: hidden;\n}\n\n.card-details-overflow {\n display: grid;\n grid-gap: 1rem;\n padding: 1.5rem;\n overflow-x: auto;\n}\n\n@media (min-width: 768px) {\n .card {\n grid-template-columns: 16rem 1fr;\n }\n\n .card-has-header {\n grid-template-rows: auto 1fr;\n }\n\n .card.card-no-props {\n display: block;\n }\n\n .card-header {\n grid-column-end: span 2;\n }\n\n .card-details-overflow {\n padding: 2rem;\n }\n}\n\n.checkbox-label {\n display: grid;\n justify-content: flex-start;\n grid-template-columns: auto;\n grid-auto-flow: column;\n grid-gap: 0.5rem;\n min-height: 0;\n cursor: pointer;\n color: rgb(51, 47, 81);\n color: var(--gray-800);\n}\n\n.checkbox {\n width: 1.5em;\n height: 1.5em;\n border-style: none;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n\n.checkbox:before {\n position: absolute;\n width: 1.5em;\n height: 1.5em;\n border-width: 1px;\n border-color: rgba(0, 0, 100, 0.07);\n border-color: var(--tint-200);\n background-color: rgb(252, 252, 253);\n background-color: var(--gray-50);\n box-shadow: var(--shadow-default);\n border-radius: 0.125rem;\n overflow: hidden;\n content: \'\';\n}\n\n.checkbox:after {\n position: absolute;\n top: 50%;\n left: 50%;\n color: rgb(121, 0, 245);\n color: var(--purple-500);\n font-size: 1.2em;\n font-weight: 900;\n line-height: 1;\n content: \'✓\';\n transition: transform 0.1s;\n transform: translate(-50%, -50%) scale(0);\n}\n\n.checkbox:focus,\n.checkbox:hover {\n outline: 0;\n}\n\n.checkbox:focus:before {\n border-color: rgba(25, 0, 100, 0.1);\n border-color: var(--tint-300);\n background-color: rgb(255, 255, 255);\n background-color: var(--white);\n}\n\n.checkbox:hover:before {\n border-color: rgba(25, 0, 100, 0.1);\n border-color: var(--tint-300);\n}\n\n.checkbox:checked:after {\n transform: translate(-50%, -50%) scale(1);\n}\n\n.checkbox:disabled {\n opacity: 0.5;\n}\n\n.code {\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;\n color: rgb(75, 71, 109);\n color: var(--gray-700);\n}\n\n.code-inline {\n display: inline-block;\n margin-top: -0.25rem;\n margin-bottom: -0.25rem;\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n border-radius: 0.125rem;\n background-color: rgb(247, 247, 252);\n background-color: var(--gray-100);\n border-width: 1px;\n border-color: rgba(0, 0, 150, 0.025);\n border-color: var(--tint-100);\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;\n color: rgb(75, 71, 109);\n color: var(--gray-700);\n word-break: break-all;\n}\n\n.code-block {\n display: block;\n padding-left: 1rem;\n padding-right: 1rem;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n border-radius: 0.125rem;\n background-color: rgb(247, 247, 252);\n background-color: var(--gray-100);\n border-width: 1px;\n border-color: rgba(0, 0, 150, 0.025);\n border-color: var(--tint-100);\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;\n color: rgb(75, 71, 109);\n color: var(--gray-700);\n}\n\n.code-inline pre,\n.code-block pre {\n white-space: pre-wrap;\n}\n\n.definition-list {\n display: grid;\n grid-column-gap: 1.5rem;\n grid-row-gap: 0.5rem;\n}\n\n.definition-list .definition-list {\n border-left-width: 2px;\n border-color: rgb(232, 229, 239);\n border-color: var(--gray-300);\n padding-left: 1rem;\n}\n\n@media (min-width: 640px) {\n .definition-list {\n grid-template-columns: 8rem 1fr;\n }\n\n .definition-list .definition-list {\n grid-template-columns: auto 1fr;\n }\n}\n\n@media (min-width: 1024px) {\n .definition-list {\n grid-template-columns: 14rem 1fr;\n }\n}\n\n.definition-list-title {\n font-weight: 600;\n margin-bottom: 0.75rem;\n}\n\n@media (min-width: 640px) {\n .definition-list-title {\n margin-left: 9.5rem;\n }\n}\n\n@media (min-width: 1024px) {\n .definition-list-title {\n margin-left: 15.5rem;\n }\n}\n\n.definition-label {\n color: rgba(30, 20, 70, 0.5);\n color: var(--tint-600);\n word-wrap: break-word;\n line-height: 1.25;\n}\n\n@media (min-width: 640px) {\n .definition-label {\n text-align: right;\n }\n}\n\n.definition-value {\n word-break: break-all;\n margin-bottom: 1rem;\n line-height: 1.25;\n}\n\n@media (min-width: 640px) {\n .definition-value {\n margin-bottom: 0;\n }\n}\n\n.definition-label:empty:after,\n.definition-value:empty:after {\n content: \'—\';\n color: rgb(232, 229, 239);\n color: var(--gray-300);\n}\n\n.definition-list-empty {\n color: rgb(232, 229, 239);\n color: var(--gray-300);\n}\n\n@media (min-width: 640px) {\n .definition-list-empty {\n grid-column-start: 2;\n }\n\n .definition-list .definition-list .definition-list-empty {\n grid-column-start: 1;\n }\n}\n\n.dropdown {\n position: absolute;\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);\n overflow-y: auto;\n max-height: \'66vh\';\n border-width: 1px;\n border-top-width: 0;\n border-color: rgba(0, 0, 100, 0.07);\n border-color: var(--tint-200);\n color: rgb(255, 255, 255);\n color: var(--white);\n background-color: rgb(75, 71, 109);\n background-color: var(--gray-700);\n}\n\n.layout-col {\n max-width: 80rem;\n padding-left: 1rem;\n padding-right: 1rem;\n margin-left: auto;\n margin-right: auto;\n}\n\n@media (min-width: 640px) {\n .layout-col {\n padding-left: 2.5rem;\n padding-right: 2.5rem;\n }\n}\n\n.link {\n text-decoration: underline;\n -webkit-text-decoration-color: rgb(209, 204, 224);\n text-decoration-color: rgb(209, 204, 224);\n -webkit-text-decoration-color: var(--gray-400);\n text-decoration-color: var(--gray-400);\n}\n\n.link:hover {\n color: rgb(121, 0, 245);\n color: var(--purple-500);\n -webkit-text-decoration-color: rgb(214, 188, 250);\n text-decoration-color: rgb(214, 188, 250);\n -webkit-text-decoration-color: var(--purple-300);\n text-decoration-color: var(--purple-300);\n}\n\n.links a {\n text-decoration: underline;\n -webkit-text-decoration-color: rgb(209, 204, 224);\n text-decoration-color: rgb(209, 204, 224);\n -webkit-text-decoration-color: var(--gray-400);\n text-decoration-color: var(--gray-400);\n}\n\n.links a:hover {\n color: rgb(121, 0, 245);\n color: var(--purple-500);\n -webkit-text-decoration-color: rgb(214, 188, 250);\n text-decoration-color: rgb(214, 188, 250);\n -webkit-text-decoration-color: var(--purple-300);\n text-decoration-color: var(--purple-300);\n}\n\n.link-dimmed {\n font-weight: 400;\n text-decoration: underline;\n color: rgba(30, 20, 70, 0.5);\n color: var(--tint-600);\n -webkit-text-decoration-color: rgba(20, 0, 100, 0.2);\n text-decoration-color: rgba(20, 0, 100, 0.2);\n -webkit-text-decoration-color: var(--tint-400);\n text-decoration-color: var(--tint-400);\n}\n\n.link-dimmed:hover {\n color: rgba(15, 10, 60, 0.75);\n color: var(--tint-700);\n -webkit-text-decoration-color: rgba(30, 20, 90, 0.35);\n text-decoration-color: rgba(30, 20, 90, 0.35);\n -webkit-text-decoration-color: var(--tint-500);\n text-decoration-color: var(--tint-500);\n}\n\n.link-solution {\n text-decoration: underline;\n color: rgb(75, 71, 109);\n color: var(--gray-700);\n -webkit-text-decoration-color: rgba(20, 0, 100, 0.2);\n text-decoration-color: rgba(20, 0, 100, 0.2);\n -webkit-text-decoration-color: var(--tint-400);\n text-decoration-color: var(--tint-400);\n}\n\n.link-solution:hover {\n color: rgb(51, 47, 81);\n color: var(--gray-800);\n -webkit-text-decoration-color: rgba(30, 20, 90, 0.35);\n text-decoration-color: rgba(30, 20, 90, 0.35);\n -webkit-text-decoration-color: var(--tint-500);\n text-decoration-color: var(--tint-500);\n}\n\n.grid {\n display: grid;\n}\n\n.cols-2 {\n grid-template-columns: repeat(2, 1fr);\n}\n\n.cols-auto {\n grid-template-columns: auto;\n grid-auto-flow: column;\n}\n\n.cols-auto-1fr {\n grid-template-columns: auto 1fr;\n}\n\n.gap-1 {\n grid-gap: 0.25rem;\n}\n\n.gap-2 {\n grid-gap: 0.5rem;\n}\n\n.gapy-2 {\n grid-row-gap: 0.5rem;\n}\n\n.gap-4 {\n grid-gap: 1rem;\n}\n\n.gapx-4 {\n grid-column-gap: 1rem;\n}\n\n.gapx-6 {\n grid-column-gap: 1.5rem;\n}\n\n.span-2 {\n grid-column-end: span 2;\n}\n\n.place-center {\n align-items: center;\n justify-items: center;\n align-content: center;\n justify-content: center;\n}\n\n.icon {\n fill: currentColor;\n height: 1em;\n line-height: 1;\n width: 1em;\n display: inline-block;\n vertical-align: baseline;\n vertical-align: initial;\n}\n\n.scrollbar::-webkit-scrollbar,\n.scrollbar::-webkit-scrollbar-corner {\n width: 4px;\n height: 4px;\n}\n\n.scrollbar::-webkit-scrollbar-track {\n background-color: rgb(255, 255, 255);\n background-color: var(--white);\n}\n\n.scrollbar::-webkit-scrollbar-track:horizontal,\n.scrollbar-lg::-webkit-scrollbar-track:horizontal {\n border-top: solid 1px rgba(0, 0, 0, 0.1);\n}\n\n.scrollbar::-webkit-scrollbar-track:vertical,\n.scrollbar-lg::-webkit-scrollbar-track:vertical {\n border-left: solid 1px rgba(0, 0, 0, 0.1);\n}\n\n.scrollbar::-webkit-scrollbar-thumb {\n background-color: rgb(209, 204, 224);\n background-color: var(--gray-400);\n border-radius: 2px;\n}\n\n.scrollbar-lg::-webkit-scrollbar,\n.scrollbar-lg::-webkit-scrollbar-corner {\n width: 8px;\n height: 8px;\n}\n\n.scrollbar-lg::-webkit-scrollbar-track {\n background-color: rgb(252, 252, 253);\n background-color: var(--gray-50);\n}\n\n.scrollbar-lg::-webkit-scrollbar-thumb {\n background-color: rgb(142, 137, 162);\n background-color: var(--gray-600);\n border-radius: 4px;\n}\n\n:root {\n --stack-height: var(--tab-main-height);\n}\n\n.stack {\n display: grid;\n grid-template: calc(0.4 * calc(100vh - 3rem)) calc(0.6 * calc(100vh - 3rem)) / 1fr;\n grid-template: calc(0.4 * var(--stack-height)) calc(0.6 * var(--stack-height)) / 1fr;\n}\n\n@media (min-width: 640px) {\n .stack {\n align-items: stretch;\n grid-template: calc(100vh - 3rem) / 22rem 1fr;\n grid-template: var(--stack-height) / 22rem 1fr;\n }\n}\n\n.stack-nav {\n height: 100%;\n background-color: rgb(255, 255, 255);\n background-color: var(--white);\n border-bottom-width: 1px;\n border-color: rgb(232, 229, 239);\n border-color: var(--gray-300);\n font-size: 0.75rem;\n overflow: hidden;\n display: grid;\n grid-template: 1fr / 100%;\n}\n\n@media (min-width: 640px) {\n .stack-nav {\n display: grid;\n grid-template: auto 1fr / 100%;\n border-bottom-width: 0;\n border-right-width: 1px;\n }\n}\n\n.stack-nav-actions {\n display: none;\n}\n\n@media (min-width: 640px) {\n .stack-nav-actions {\n display: grid;\n align-items: center;\n justify-content: space-between;\n grid-template-columns: auto;\n grid-auto-flow: column;\n padding-top: 1rem;\n padding-bottom: 1rem;\n background-color: rgb(247, 247, 252);\n background-color: var(--gray-100);\n }\n}\n\n.stack-nav-arrows {\n display: grid;\n grid-template-columns: repeat(2, 1fr);\n justify-content: center;\n align-items: center;\n grid-gap: 0.25rem;\n width: 2.5rem;\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n}\n\n.stack-nav-arrow {\n color: rgb(176, 173, 197);\n color: var(--gray-500);\n font-size: 0.75rem;\n}\n\n.stack-nav-arrow:hover {\n color: rgb(75, 71, 109);\n color: var(--gray-700);\n}\n\n.stack-frames {\n overflow: hidden;\n border-top-width: 1px;\n border-color: rgb(238, 238, 245);\n border-color: var(--gray-200);\n}\n\n.stack-frames-scroll {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n overflow-x: hidden;\n overflow-y: auto;\n}\n\n.stack-frame-group {\n border-bottom-width: 1px;\n border-color: rgb(232, 229, 239);\n border-color: var(--gray-300);\n background-color: rgb(255, 255, 255);\n background-color: var(--white);\n}\n\n.stack-frame {\n display: grid;\n align-items: flex-end;\n grid-template-columns: 2rem auto auto;\n}\n\n@media (min-width: 640px) {\n .stack-frame {\n grid-template-columns: 3rem 1fr auto;\n }\n}\n\n.stack-frame:not(:first-child) {\n margin-top: -0.5rem;\n}\n\n.stack-frame-selected,\n.stack-frame-selected .stack-frame-header {\n background-color: rgb(251, 245, 255);\n background-color: var(--purple-100);\n z-index: 10;\n}\n\n.stack-frame-group-vendor .stack-frame-selected,\n.stack-frame-group-vendor .stack-frame-selected .stack-frame-header {\n /* @apply bg-gray-100; */\n}\n\n.stack-frame-number {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n padding-top: 1rem;\n padding-bottom: 1rem;\n color: rgb(121, 0, 245);\n color: var(--purple-500);\n font-feature-settings: "tnum";\n font-variant-numeric: tabular-nums;\n text-align: center;\n}\n\n.stack-frame-group-vendor .stack-frame-number {\n color: rgba(30, 20, 90, 0.35);\n color: var(--tint-500);\n}\n\n.stack-frame-header {\n margin-right: -2.5rem;\n width: 100%;\n}\n\n.stack-frame-text {\n display: grid;\n align-items: center;\n grid-gap: 0.5rem;\n border-left-width: 2px;\n padding-left: 0.75rem;\n padding-top: 1rem;\n padding-bottom: 1rem;\n border-color: rgb(214, 188, 250);\n border-color: var(--purple-300);\n color: rgb(75, 71, 109);\n color: var(--gray-700);\n}\n\n.stack-frame-group-vendor .stack-frame-text {\n border-color: rgb(232, 229, 239);\n border-color: var(--gray-300);\n}\n\n.stack-frame-selected .stack-frame-text {\n border-color: rgb(121, 0, 245);\n border-color: var(--purple-500);\n}\n\n.stack-frame-group-vendor .stack-frame-selected .stack-frame-text {\n border-color: rgb(176, 173, 197);\n border-color: var(--gray-500);\n}\n\n.stack-frame-line {\n padding-left: 0.5rem;\n padding-right: 0.25rem;\n padding-top: 1rem;\n padding-bottom: 1rem;\n text-align: right;\n line-height: 1.25;\n}\n\n.stack-main {\n display: grid;\n height: 100%;\n overflow: hidden;\n background-color: rgb(247, 247, 252);\n background-color: var(--gray-100);\n grid-template: auto 1fr / 100%;\n}\n\n.stack-main-header {\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n border-bottom-width: 1px;\n border-color: rgb(238, 238, 245);\n border-color: var(--gray-200);\n font-size: 0.75rem;\n}\n\n@media (min-width: 640px) {\n .stack-main-header {\n padding-top: 1rem;\n padding-bottom: 1rem;\n font-size: 1rem;\n }\n}\n\n.stack-main-content {\n overflow: hidden;\n}\n\n.stack-viewer {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n display: flex;\n overflow: auto;\n background-color: rgb(255, 255, 255);\n background-color: var(--white);\n font-size: 0.75rem;\n}\n\n.stack-ruler {\n position: -webkit-sticky;\n position: sticky;\n flex: none;\n left: 0;\n z-index: 20;\n}\n\n.stack-lines {\n min-height: 100%;\n border-right-width: 1px;\n border-color: rgb(238, 238, 245);\n border-color: var(--gray-200);\n background-color: rgb(247, 247, 252);\n background-color: var(--gray-100);\n padding-top: 1rem;\n padding-bottom: 1rem;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n\n.stack-line {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;\n color: rgba(30, 20, 70, 0.5);\n color: var(--tint-600);\n line-height: 2;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n\n.stack-line-highlight {\n background-color: rgb(236, 211, 253);\n background-color: var(--purple-200);\n}\n\n.stack-line-selected {\n background-color: rgb(255, 248, 196);\n background-color: var(--yellow-200);\n}\n\n.stack-line-highlight.stack-line-selected {\n background-color: rgb(255, 243, 148);\n background-color: var(--yellow-300);\n}\n\n.stack-code {\n flex-grow: 1;\n padding-top: 1rem;\n padding-bottom: 1rem;\n}\n\n.stack-code-line {\n padding-left: 1.5rem;\n color: rgb(75, 71, 109);\n color: var(--gray-700);\n line-height: 2;\n}\n\n.stack-code-line:hover {\n background-color: rgb(251, 245, 255);\n background-color: var(--purple-100);\n}\n\n.stack-code-line .editor-link {\n display: inline-block;\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n opacity: 0;\n color: rgb(183, 148, 244);\n color: var(--purple-400);\n}\n\n.stack-code-line .editor-link:hover {\n color: rgb(121, 0, 245);\n color: var(--purple-500);\n}\n\n.stack-code-line:hover .editor-link {\n opacity: 1;\n}\n\n.stack-code-line-highlight {\n background-color: rgb(251, 245, 255);\n background-color: var(--purple-100);\n}\n\n.stack-code-line-selected {\n background-color: rgb(255, 253, 235);\n background-color: var(--yellow-100);\n}\n\n.stack-code-line-highlight.stack-code-line-selected {\n background-color: rgb(255, 248, 196);\n background-color: var(--yellow-200);\n}\n\n.solution-hiding {\n pointer-events: none;\n}\n\n.solution-hidden {\n height: 0;\n overflow: hidden;\n}\n\n.solution-hidden .solution-main,\n.solution-hiding .solution-main {\n transform: translateY(-25px) scaleY(0.95);\n opacity: 0;\n}\n\n.solution-main {\n z-index: 1;\n color: rgb(51, 47, 81);\n color: var(--gray-800);\n opacity: 1;\n transition: all 0.1s;\n}\n\n.solution-toggle {\n position: absolute;\n z-index: 10;\n top: 0.5rem;\n right: 10px;\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n font-size: 0.75rem;\n line-height: 1;\n cursor: pointer;\n}\n\n.solution-toggle-show {\n top: 0;\n background-color: rgb(148, 242, 200);\n background-color: var(--green-300);\n box-shadow: var(--shadow-sm);\n border-bottom-right-radius: 0.125rem;\n border-bottom-left-radius: 0.125rem;\n z-index: 0;\n clip-path: polygon(0 0, 100% 0, 100% 100%, 9px 100%, 0 calc(100% - 5px));\n -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 9px 100%, 0 calc(100% - 5px));\n}\n\n.solution-toggle-show a {\n text-decoration: none;\n}\n\n.solution-background {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n top: -6px;\n margin: 0 10px;\n background-color: rgb(148, 242, 200);\n background-color: var(--green-300);\n box-shadow: var(--shadow-default);\n border-width: 1px;\n border-color: rgba(25, 0, 100, 0.1);\n border-color: var(--tint-300);\n overflow: hidden;\n border-bottom-right-radius: 0.125rem;\n border-bottom-left-radius: 0.125rem;\n}\n\n.solution-title {\n font-weight: 600;\n font-size: 1.5rem;\n line-height: 1.25;\n margin-bottom: 1rem;\n}\n\n.solution-content {\n max-width: 56rem;\n}\n\n@media (min-width: 768px) {\n .solution-content {\n margin-left: 15rem;\n }\n}\n\n.solution code {\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;\n color: rgb(75, 71, 109);\n color: var(--gray-700);\n display: inline-block;\n margin-top: -0.25rem;\n margin-bottom: -0.25rem;\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n border-radius: 0.125rem;\n background-color: rgba(0, 0, 150, 0.025);\n background-color: var(--tint-100);\n border-width: 1px;\n border-color: rgba(0, 0, 150, 0.025);\n border-color: var(--tint-100);\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;\n color: rgb(75, 71, 109);\n color: var(--gray-700);\n word-break: break-all;\n line-height: 1.25;\n}\n\n:root {\n --tab-main-height: calc(100vh - 3rem);\n}\n\n.tabs {\n z-index: 10;\n}\n\n.tab-main {\n z-index: 1;\n border-left-width: 1px;\n border-right-width: 1px;\n border-bottom-width: 1px;\n border-color: rgba(25, 0, 100, 0.1);\n border-color: var(--tint-300);\n min-height: calc(100vh - 3rem);\n min-height: var(--tab-main-height);\n}\n\n.tab-content {\n background-color: rgb(255, 255, 255);\n background-color: var(--white);\n font-size: 0.875rem;\n min-height: calc(100vh - 3rem);\n min-height: var(--tab-main-height);\n}\n\n.tab-content-section {\n padding-top: 2rem;\n padding-bottom: 2rem;\n border-top-width: 2px;\n border-color: rgba(0, 0, 100, 0.07);\n border-color: var(--tint-200);\n}\n\n.tab-content-section:first-child {\n border-top-width: 0;\n}\n\n.tab-nav {\n position: sticky;\n position: -webkit-sticky;\n display: grid;\n justify-content: center;\n grid-template-columns: auto;\n grid-auto-flow: column;\n grid-gap: 0.5rem;\n top: 0;\n width: 100%;\n z-index: 10;\n background-color: rgb(75, 71, 109);\n background-color: var(--gray-700);\n padding: 0.25rem;\n box-shadow: var(--shadow-default);\n border-top-left-radius: 0.125rem;\n border-top-right-radius: 0.125rem;\n font-size: 0.75rem;\n}\n\n.tab-bar {\n display: grid;\n grid-template-columns: auto;\n grid-auto-flow: column;\n justify-content: flex-start;\n grid-gap: 0.25rem;\n overflow-x: auto;\n overflow-y: hidden;\n}\n\n.tab-bar::-webkit-scrollbar {\n height: 2px;\n}\n\n@media (min-width: 640px) {\n .tab-bar {\n justify-content: center;\n }\n}\n\n.tab {\n padding-left: 1rem;\n padding-right: 1rem;\n color: rgb(232, 229, 239);\n color: var(--gray-300);\n white-space: nowrap;\n border-radius: 0.125rem;\n height: 2.5rem;\n font-size: 0.875rem;\n}\n\n.tab-delimiter {\n border-left-width: 1px;\n border-color: rgb(142, 137, 162);\n border-color: var(--gray-600);\n}\n\n.tab:hover {\n background-color: rgba(20, 0, 100, 0.2);\n background-color: var(--tint-400);\n color: rgb(255, 255, 255);\n color: var(--white);\n}\n\n.tab-active,\n.tab-active:hover {\n background-color: rgba(30, 20, 70, 0.5);\n background-color: var(--tint-600);\n color: rgb(255, 255, 255);\n color: var(--white);\n}\n\n.ui-url {\n display: inline-block;\n line-height: 1.25;\n font-size: 0.875rem;\n font-weight: 400;\n text-decoration: underline;\n color: rgba(30, 20, 70, 0.5);\n color: var(--tint-600);\n -webkit-text-decoration-color: rgba(20, 0, 100, 0.2);\n text-decoration-color: rgba(20, 0, 100, 0.2);\n -webkit-text-decoration-color: var(--tint-400);\n text-decoration-color: var(--tint-400);\n}\n\n.ui-url:hover {\n color: rgba(15, 10, 60, 0.75);\n color: var(--tint-700);\n -webkit-text-decoration-color: rgba(30, 20, 90, 0.35);\n text-decoration-color: rgba(30, 20, 90, 0.35);\n -webkit-text-decoration-color: var(--tint-500);\n text-decoration-color: var(--tint-500);\n}\n\n.ui-path {\n display: inline-block;\n line-height: 1.25;\n}\n\n.ui-exception-message {\n font-weight: 600;\n line-height: 1.25;\n word-wrap: break-word;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 5;\n overflow: hidden;\n}\n\n.ui-exception-message-full {\n -webkit-line-clamp: unset;\n}\n\n.ui-exception-class {\n display: inline-block;\n line-height: 1.25;\n color: rgba(30, 20, 70, 0.5);\n color: var(--tint-600);\n}\n\n.ui-line-number {\n display: inline-block;\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n border-radius: 0.125rem;\n background-color: rgba(0, 0, 150, 0.015);\n background-color: var(--tint-50);\n color: rgba(30, 20, 70, 0.5);\n color: var(--tint-600);\n font-size: 0.75rem;\n line-height: 1.25;\n}\n\n.dark .hljs {\n display: block;\n overflow-x: auto;\n padding: 0.5em;\n color: #abb2bf;\n background: #282c34;\n}\n\n.dark .hljs-comment,\n.dark .hljs-quote {\n color: #5c6370;\n font-style: italic;\n}\n\n.dark .hljs-doctag,\n.dark .hljs-keyword,\n.dark .hljs-formula {\n color: #c678dd;\n}\n\n.dark .hljs-section,\n.dark .hljs-name,\n.dark .hljs-selector-tag,\n.dark .hljs-deletion,\n.dark .hljs-subst {\n color: #e06c75;\n}\n\n.dark .hljs-literal {\n color: #56b6c2;\n}\n\n.dark .hljs-string,\n.dark .hljs-regexp,\n.dark .hljs-addition,\n.dark .hljs-attribute,\n.dark .hljs-meta-string {\n color: #98c379;\n}\n\n.dark .hljs-built_in,\n.dark .hljs-class .dark .hljs-title {\n color: #e6c07b;\n}\n\n.dark .hljs-attr,\n.dark .hljs-variable,\n.dark .hljs-template-variable,\n.dark .hljs-type,\n.dark .hljs-selector-class,\n.dark .hljs-selector-attr,\n.dark .hljs-selector-pseudo,\n.dark .hljs-number {\n color: #d19a66;\n}\n\n.dark .hljs-symbol,\n.dark .hljs-bullet,\n.dark .hljs-link,\n.dark .hljs-meta,\n.dark .hljs-selector-id,\n.dark .hljs-title {\n color: #61aeee;\n}\n\n.dark .hljs-emphasis {\n font-style: italic;\n}\n\n.dark .hljs-strong {\n font-weight: bold;\n}\n\n.dark .hljs-link {\n text-decoration: underline;\n}\n\n.light .hljs {\n display: block;\n overflow-x: auto;\n padding: 0.5em;\n color: #383a42;\n background: #fafafa;\n}\n\n.light .hljs-comment,\n.light .hljs-quote {\n color: #a0a1a7;\n font-style: italic;\n}\n\n.light .hljs-doctag,\n.light .hljs-keyword,\n.light .hljs-formula {\n color: #a626a4;\n}\n\n.light .hljs-section,\n.light .hljs-name,\n.light .hljs-selector-tag,\n.light .hljs-deletion,\n.light .hljs-subst {\n color: #e45649;\n}\n\n.light .hljs-literal {\n color: #0184bb;\n}\n\n.light .hljs-string,\n.light .hljs-regexp,\n.light .hljs-addition,\n.light .hljs-attribute,\n.light .hljs-meta-string {\n color: #50a14f;\n}\n\n.light .hljs-built_in,\n.light .hljs-class .light .hljs-title {\n color: #c18401;\n}\n\n.light .hljs-attr,\n.light .hljs-variable,\n.light .hljs-template-variable,\n.light .hljs-type,\n.light .hljs-selector-class,\n.light .hljs-selector-attr,\n.light .hljs-selector-pseudo,\n.light .hljs-number {\n color: #986801;\n}\n\n.light .hljs-symbol,\n.light .hljs-bullet,\n.light .hljs-link,\n.light .hljs-meta,\n.light .hljs-selector-id,\n.light .hljs-title {\n color: #4078f2;\n}\n\n.light .hljs-emphasis {\n font-style: italic;\n}\n\n.light .hljs-strong {\n font-weight: bold;\n}\n\n.light .hljs-link {\n text-decoration: underline;\n}\n\n/* \n Dumps are hidden asap in errorPage.blade \n What follows is !important\n*/\n\n.tabs pre.sf-dump {\n display: block !important;\n}\n\n.sf-dump-public.sf-dump-highlight,\n.sf-dump-protected.sf-dump-highlight,\n.sf-dump-private.sf-dump-highlight,\n.sf-dump-str.sf-dump-highlight,\n.sf-dump-key.sf-dump-highlight {\n background-color: rgb(251, 245, 255) !important;\n background-color: var(--purple-100) !important;\n border-color: rgb(236, 211, 253) !important;\n border-color: var(--purple-200) !important;\n}\n\n.sf-dump-public.sf-dump-highlight-active,\n.sf-dump-protected.sf-dump-highlight-active,\n.sf-dump-private.sf-dump-highlight-active,\n.sf-dump-str.sf-dump-highlight-active,\n.sf-dump-key.sf-dump-highlight-active {\n background-color: rgb(255, 253, 235) !important;\n background-color: var(--yellow-100) !important;\n border-color: rgb(255, 248, 196) !important;\n border-color: var(--yellow-200) !important;\n}\n\npre.sf-dump .sf-dump-search-wrapper > * {\n border-color: rgb(232, 229, 239) !important;\n border-color: var(--gray-300) !important;\n}\n\npre.sf-dump .sf-dump-search-wrapper > input.sf-dump-search-input {\n font-size: 0.75rem !important;\n background-color: rgb(51, 47, 81) !important;\n background-color: var(--gray-800) !important;\n}\n\npre.sf-dump .sf-dump-search-wrapper > .sf-dump-search-input-next,\npre.sf-dump .sf-dump-search-wrapper > .sf-dump-search-input-previous {\n background-color: rgba(0, 0, 150, 0.025) !important;\n background-color: var(--tint-100) !important;\n}\n\npre.sf-dump .sf-dump-search-wrapper > .sf-dump-search-count {\n font-size: 0.875rem !important;\n}\n\npre.sf-dump,\npre.sf-dump .sf-dump-default {\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important;\n background-color: rgb(247, 247, 252) !important;\n background-color: var(--gray-100) !important;\n color: rgb(51, 47, 81) !important;\n color: var(--gray-800) !important;\n}\n\npre.sf-dump .sf-dump-num {\n color: rgb(250, 133, 162) !important;\n color: var(--red-300) !important;\n}\n\npre.sf-dump .sf-dump-const {\n font-weight: 400 !important;\n}\n\npre.sf-dump .sf-dump-str {\n font-weight: 400 !important;\n color: rgb(142, 137, 162) !important;\n color: var(--gray-600) !important;\n}\n\npre.sf-dump .sf-dump-note {\n color: rgb(122, 122, 255) !important;\n color: var(--blue-400) !important;\n}\n\npre.sf-dump .sf-dump-ref {\n color: rgb(142, 137, 162) !important;\n color: var(--gray-600) !important;\n}\n\npre.sf-dump .sf-dump-public,\npre.sf-dump .sf-dump-protected,\npre.sf-dump .sf-dump-private {\n color: rgb(121, 0, 245) !important;\n color: var(--purple-500) !important;\n}\n\npre.sf-dump .sf-dump-meta {\n color: rgb(121, 0, 245) !important;\n color: var(--purple-500) !important;\n}\n\npre.sf-dump .sf-dump-key {\n color: rgb(113, 7, 220) !important;\n color: var(--purple-600) !important;\n}\n\npre.sf-dump .sf-dump-index {\n color: rgb(122, 122, 255) !important;\n color: var(--blue-400) !important;\n}\n\npre.sf-dump .sf-dump-ellipsis {\n color: rgb(113, 7, 220) !important;\n color: var(--purple-600) !important;\n}\n\n.bg-gray-100{\n background-color: rgb(247, 247, 252) !important;\n background-color: var(--gray-100) !important;\n}\n\n.bg-tint-200{\n background-color: rgba(0, 0, 100, 0.07) !important;\n background-color: var(--tint-200) !important;\n}\n\n.bg-tint-300{\n background-color: rgba(25, 0, 100, 0.1) !important;\n background-color: var(--tint-300) !important;\n}\n\n.bg-tint-600{\n background-color: rgba(30, 20, 70, 0.5) !important;\n background-color: var(--tint-600) !important;\n}\n\n.hover\\:bg-tint-100:hover{\n background-color: rgba(0, 0, 150, 0.025) !important;\n background-color: var(--tint-100) !important;\n}\n\n.hover\\:bg-tint-400:hover{\n background-color: rgba(20, 0, 100, 0.2) !important;\n background-color: var(--tint-400) !important;\n}\n\n.hover\\:bg-tint-700:hover{\n background-color: rgba(15, 10, 60, 0.75) !important;\n background-color: var(--tint-700) !important;\n}\n\n.border-gray-700{\n border-color: rgb(75, 71, 109) !important;\n border-color: var(--gray-700) !important;\n}\n\n.border-tint-200{\n border-color: rgba(0, 0, 100, 0.07) !important;\n border-color: var(--tint-200) !important;\n}\n\n.border-tint-300{\n border-color: rgba(25, 0, 100, 0.1) !important;\n border-color: var(--tint-300) !important;\n}\n\n.rounded-full{\n border-radius: 9999px !important;\n}\n\n.rounded-t{\n border-top-left-radius: 0.25rem !important;\n border-top-right-radius: 0.25rem !important;\n}\n\n.border-none{\n border-style: none !important;\n}\n\n.border-t-2{\n border-top-width: 2px !important;\n}\n\n.border-b{\n border-bottom-width: 1px !important;\n}\n\n.cursor-pointer{\n cursor: pointer !important;\n}\n\n.inline-block{\n display: inline-block !important;\n}\n\n.flex{\n display: flex !important;\n}\n\n.inline-flex{\n display: inline-flex !important;\n}\n\n.hidden{\n display: none !important;\n}\n\n.items-center{\n align-items: center !important;\n}\n\n.items-baseline{\n align-items: baseline !important;\n}\n\n.justify-start{\n justify-content: flex-start !important;\n}\n\n.justify-end{\n justify-content: flex-end !important;\n}\n\n.justify-center{\n justify-content: center !important;\n}\n\n.font-mono{\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important;\n}\n\n.font-normal{\n font-weight: 400 !important;\n}\n\n.font-medium{\n font-weight: 500 !important;\n}\n\n.font-semibold{\n font-weight: 600 !important;\n}\n\n.h-5{\n height: 1.25rem !important;\n}\n\n.h-8{\n height: 2rem !important;\n}\n\n.h-full{\n height: 100% !important;\n}\n\n.mx-0{\n margin-left: 0 !important;\n margin-right: 0 !important;\n}\n\n.ml-0{\n margin-left: 0 !important;\n}\n\n.mt-1{\n margin-top: 0.25rem !important;\n}\n\n.mr-1{\n margin-right: 0.25rem !important;\n}\n\n.mb-1{\n margin-bottom: 0.25rem !important;\n}\n\n.mt-2{\n margin-top: 0.5rem !important;\n}\n\n.mr-2{\n margin-right: 0.5rem !important;\n}\n\n.mb-2{\n margin-bottom: 0.5rem !important;\n}\n\n.ml-2{\n margin-left: 0.5rem !important;\n}\n\n.mb-3{\n margin-bottom: 0.75rem !important;\n}\n\n.mt-4{\n margin-top: 1rem !important;\n}\n\n.mr-4{\n margin-right: 1rem !important;\n}\n\n.mb-4{\n margin-bottom: 1rem !important;\n}\n\n.ml-6{\n margin-left: 1.5rem !important;\n}\n\n.mt-8{\n margin-top: 2rem !important;\n}\n\n.mt-12{\n margin-top: 3rem !important;\n}\n\n.ml-auto{\n margin-left: auto !important;\n}\n\n.min-h-0{\n min-height: 0 !important;\n}\n\n.min-w-8{\n min-width: 2rem !important;\n}\n\n.opacity-25{\n opacity: 0.25 !important;\n}\n\n.opacity-50{\n opacity: 0.5 !important;\n}\n\n.opacity-75{\n opacity: 0.75 !important;\n}\n\n.overflow-visible{\n overflow: visible !important;\n}\n\n.p-4{\n padding: 1rem !important;\n}\n\n.p-12{\n padding: 3rem !important;\n}\n\n.py-2{\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n}\n\n.px-2{\n padding-left: 0.5rem !important;\n padding-right: 0.5rem !important;\n}\n\n.py-4{\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n}\n\n.px-4{\n padding-left: 1rem !important;\n padding-right: 1rem !important;\n}\n\n.px-6{\n padding-left: 1.5rem !important;\n padding-right: 1.5rem !important;\n}\n\n.pt-2{\n padding-top: 0.5rem !important;\n}\n\n.pt-10{\n padding-top: 2.5rem !important;\n}\n\n.pointer-events-none{\n pointer-events: none !important;\n}\n\n.static{\n position: static !important;\n}\n\n.absolute{\n position: absolute !important;\n}\n\n.relative{\n position: relative !important;\n}\n\n.sticky{\n position: -webkit-sticky !important;\n position: sticky !important;\n}\n\n.inset-0{\n top: 0 !important;\n right: 0 !important;\n bottom: 0 !important;\n left: 0 !important;\n}\n\n.top-0{\n top: 0 !important;\n}\n\n.right-0{\n right: 0 !important;\n}\n\n.bottom-0{\n bottom: 0 !important;\n}\n\n.left-0{\n left: 0 !important;\n}\n\n.top-full{\n top: 100% !important;\n}\n\n.left-full{\n left: 100% !important;\n}\n\n.text-left{\n text-align: left !important;\n}\n\n.text-white{\n color: rgb(255, 255, 255) !important;\n color: var(--white) !important;\n}\n\n.text-green-300{\n color: rgb(148, 242, 200) !important;\n color: var(--green-300) !important;\n}\n\n.text-purple-400{\n color: rgb(183, 148, 244) !important;\n color: var(--purple-400) !important;\n}\n\n.text-purple-800{\n color: rgb(79, 15, 143) !important;\n color: var(--purple-800) !important;\n}\n\n.text-gray-200{\n color: rgb(238, 238, 245) !important;\n color: var(--gray-200) !important;\n}\n\n.text-gray-300{\n color: rgb(232, 229, 239) !important;\n color: var(--gray-300) !important;\n}\n\n.text-gray-400{\n color: rgb(209, 204, 224) !important;\n color: var(--gray-400) !important;\n}\n\n.text-gray-500{\n color: rgb(176, 173, 197) !important;\n color: var(--gray-500) !important;\n}\n\n.text-gray-800{\n color: rgb(51, 47, 81) !important;\n color: var(--gray-800) !important;\n}\n\n.text-tint-600{\n color: rgba(30, 20, 70, 0.5) !important;\n color: var(--tint-600) !important;\n}\n\n.hover\\:text-white:hover{\n color: rgb(255, 255, 255) !important;\n color: var(--white) !important;\n}\n\n.hover\\:text-purple-500:hover{\n color: rgb(121, 0, 245) !important;\n color: var(--purple-500) !important;\n}\n\n.text-xs{\n font-size: 0.75rem !important;\n}\n\n.text-sm{\n font-size: 0.875rem !important;\n}\n\n.text-2xl{\n font-size: 1.5rem !important;\n}\n\n.italic{\n font-style: italic !important;\n}\n\n.uppercase{\n text-transform: uppercase !important;\n}\n\n.underline{\n text-decoration: underline !important;\n}\n\n.no-underline{\n text-decoration: none !important;\n}\n\n.tracking-wider{\n letter-spacing: 0.05em !important;\n}\n\n.align-middle{\n vertical-align: middle !important;\n}\n\n.whitespace-no-wrap{\n white-space: nowrap !important;\n}\n\n.w-4{\n width: 1rem !important;\n}\n\n.w-full{\n width: 100% !important;\n}\n\n.z-1{\n z-index: 1 !important;\n}\n\n.z-10{\n z-index: 10 !important;\n}\n\n@media (min-width: 640px){\n\n .sm\\:start-2 {\n grid-column-start: 2;\n }\n\n .sm\\:block{\n display: block !important;\n }\n\n .sm\\:ml-6{\n margin-left: 1.5rem !important;\n }\n}\n\n@media (min-width: 768px){\n\n .md\\:block{\n display: block !important;\n }\n}\n',""])},function(t,e,n){"use strict";t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var n=function(t,e){var n=t[1]||"",r=t[3];if(!r)return n;if(e&&"function"==typeof btoa){var o=(a=r,s=btoa(unescape(encodeURIComponent(JSON.stringify(a)))),c="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(s),"/*# ".concat(c," */")),i=r.sources.map((function(t){return"/*# sourceURL=".concat(r.sourceRoot).concat(t," */")}));return[n].concat(i).concat([o]).join("\n")}var a,s,c;return[n].join("\n")}(e,t);return e[2]?"@media ".concat(e[2],"{").concat(n,"}"):n})).join("")},e.i=function(t,n){"string"==typeof t&&(t=[[null,t,""]]);for(var r={},o=0;o=0&&f.splice(e,1)}function v(t){var e=document.createElement("style");if(void 0===t.attrs.type&&(t.attrs.type="text/css"),void 0===t.attrs.nonce){var r=function(){0;return n.nc}();r&&(t.attrs.nonce=r)}return b(e,t.attrs),m(t,e),e}function b(t,e){Object.keys(e).forEach((function(n){t.setAttribute(n,e[n])}))}function _(t,e){var n,r,o,i;if(e.transform&&t.css){if(!(i="function"==typeof e.transform?e.transform(t.css):e.transform.default(t.css)))return function(){};t.css=i}if(e.singleton){var a=l++;n=u||(u=v(e)),r=k.bind(null,n,a,!1),o=k.bind(null,n,a,!0)}else t.sourceMap&&"function"==typeof URL&&"function"==typeof URL.createObjectURL&&"function"==typeof URL.revokeObjectURL&&"function"==typeof Blob&&"function"==typeof btoa?(n=function(t){var e=document.createElement("link");return void 0===t.attrs.type&&(t.attrs.type="text/css"),t.attrs.rel="stylesheet",b(e,t.attrs),m(t,e),e}(e),r=w.bind(null,n,e),o=function(){g(n),n.href&&URL.revokeObjectURL(n.href)}):(n=v(e),r=x.bind(null,n),o=function(){g(n)});return r(t),function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap)return;r(t=e)}else o()}}t.exports=function(t,e){if("undefined"!=typeof DEBUG&&DEBUG&&"object"!=typeof document)throw new Error("The style-loader cannot be used in a non-browser environment");(e=e||{}).attrs="object"==typeof e.attrs?e.attrs:{},e.singleton||"boolean"==typeof e.singleton||(e.singleton=a()),e.insertInto||(e.insertInto="head"),e.insertAt||(e.insertAt="bottom");var n=h(t,e);return d(n,e),function(t){for(var r=[],o=0;om.maxDepth)&&a(y)}else if(/\bsf-dump-ref\b/.test(g.className)&&(y=g.getAttribute("href"))&&(y=y.substr(1),g.className+=" "+y,/[\[{]$/.test(g.previousSibling.nodeValue))){y=y!=g.nextSibling.id&&t.getElementById(y);try{p=y.nextSibling,g.appendChild(y),p.parentNode.insertBefore(y,p),/^[@#]/.test(g.innerHTML)?g.innerHTML+=" ":(g.innerHTML="",g.className="sf-dump-ref"),g.className+=" sf-dump-toggle"}catch(t){"&"==g.innerHTML.charAt(0)&&(g.innerHTML="…",g.className="sf-dump-ref")}}if(t.evaluate&&Array.from&&l.children.length>1){var C=function(t){var e,n,r=t.current();r&&(!function(t){for(var e,n=[];(t=t.parentNode||{})&&(e=t.previousSibling)&&"A"===e.tagName;)n.push(e);0!==n.length&&n.forEach((function(t){s(t)}))}(r),function(t,e,n){u(t),Array.from(n||[]).forEach((function(t){/\bsf-dump-highlight\b/.test(t.className)||(t.className=t.className+" sf-dump-highlight")})),/\bsf-dump-highlight-active\b/.test(e.className)||(e.className=e.className+" sf-dump-highlight-active")}(l,r,t.nodes),"scrollIntoView"in r&&(r.scrollIntoView(!0),e=r.getBoundingClientRect(),n=A.getBoundingClientRect(),e.top0?this.idx-1:this.nodes.length-1,this.current())},isEmpty:function(){return 0===this.count()},current:function(){return this.isEmpty()?null:this.nodes[this.idx]},reset:function(){this.nodes=[],this.idx=0},count:function(){return this.nodes.length}};var A=t.createElement("div");A.className="sf-dump-search-wrapper sf-dump-search-hidden",A.innerHTML='\n \n 0 of 0\n \n \n ',l.insertBefore(A,l.firstChild);var T=new SearchState,S=A.querySelector(".sf-dump-search-input"),R=A.querySelector(".sf-dump-search-count"),O=0,N="";i(S,"keyup",(function(e){var n=e.target.value;n!==N&&(N=n,clearTimeout(O),O=setTimeout((function(){if(T.reset(),c(l),u(l),""!==n){for(var e=["sf-dump-str","sf-dump-key","sf-dump-public","sf-dump-protected","sf-dump-private"].map(x).join(" or "),r=t.evaluate(".//span["+e+"][contains(translate(child::text(), "+k(n.toUpperCase())+", "+k(n.toLowerCase())+"), "+k(n.toLowerCase())+")]",l,null,XPathResult.ORDERED_NODE_ITERATOR_TYPE,null);node=r.iterateNext();)T.nodes.push(node);C(T)}else R.textContent="0 of 0"}),400))})),Array.from(A.querySelectorAll(".sf-dump-search-input-next, .sf-dump-search-input-previous")).forEach((function(t){i(t,"click",(function(t){t.preventDefault(),-1!==t.target.className.indexOf("next")?T.next():T.previous(),S.focus(),c(l),C(T)}))})),i(l,"keydown",(function(t){var e=!/\bsf-dump-search-hidden\b/.test(A.className);if(114===t.keyCode&&!e||E(t)&&70===t.keyCode){if(70===t.keyCode&&document.activeElement===S)return;t.preventDefault(),A.className=A.className.replace(/\bsf-dump-search-hidden\b/,""),S.focus()}else e&&(27===t.keyCode?(A.className+=" sf-dump-search-hidden",t.preventDefault(),u(l),S.value=""):(E(t)&&71===t.keyCode||13===t.keyCode||114===t.keyCode)&&(t.preventDefault(),t.shiftKey?T.previous():T.next(),c(l),C(T)))}))}if(!(0>=m.maxStringLength))try{for(v=(g=l.querySelectorAll(".sf-dump-str")).length,b=0,_=[];b
'+g.innerHTML+'')}catch(t){}}}(document)},function(t,e,n){var r=function(t){"use strict";var e,n=Object.prototype,r=n.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(t,e,n,r){var o=e&&e.prototype instanceof m?e:m,i=Object.create(o.prototype),a=new T(r||[]);return i._invoke=function(t,e,n){var r=l;return function(o,i){if(r===p)throw new Error("Generator is already running");if(r===d){if("throw"===o)throw i;return R()}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===h)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(r===l)throw r=d,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r=p;var c=u(t,e,n);if("normal"===c.type){if(r=n.done?d:f,c.arg===h)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(r=d,n.method="throw",n.arg=c.arg)}}}(t,n,a),i}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var l="suspendedStart",f="suspendedYield",p="executing",d="completed",h={};function m(){}function g(){}function v(){}var b={};b[i]=function(){return this};var _=Object.getPrototypeOf,y=_&&_(_(S([])));y&&y!==n&&r.call(y,i)&&(b=y);var E=v.prototype=m.prototype=Object.create(b);function k(t){["next","throw","return"].forEach((function(e){t[e]=function(t){return this._invoke(e,t)}}))}function x(t){var e;this._invoke=function(n,o){function i(){return new Promise((function(e,i){!function e(n,o,i,a){var s=u(t[n],t,o);if("throw"!==s.type){var c=s.arg,l=c.value;return l&&"object"==typeof l&&r.call(l,"__await")?Promise.resolve(l.__await).then((function(t){e("next",t,i,a)}),(function(t){e("throw",t,i,a)})):Promise.resolve(l).then((function(t){c.value=t,i(c)}),(function(t){return e("throw",t,i,a)}))}a(s.arg)}(n,o,e,i)}))}return e=e?e.then(i,i):i()}}function w(t,n){var r=t.iterator[n.method];if(r===e){if(n.delegate=null,"throw"===n.method){if(t.iterator.return&&(n.method="return",n.arg=e,w(t,n),"throw"===n.method))return h;n.method="throw",n.arg=new TypeError("The iterator does not provide a 'throw' method")}return h}var o=u(r,t.iterator,n.arg);if("throw"===o.type)return n.method="throw",n.arg=o.arg,n.delegate=null,h;var i=o.arg;return i?i.done?(n[t.resultName]=i.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=e),n.delegate=null,h):i:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,h)}function C(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function A(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function T(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(C,this),this.reset(!0)}function S(t){if(t){var n=t[i];if(n)return n.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,a=function n(){for(;++o=0;--i){var a=this.tryEntries[i],s=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var c=r.call(a,"catchLoc"),u=r.call(a,"finallyLoc");if(c&&u){if(this.prev=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),A(n),h}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;A(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,n,r){return this.delegate={iterator:S(t),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=e),h}},t}(t.exports);try{regeneratorRuntime=r}catch(t){Function("r","regeneratorRuntime = r")(r)}},function(t,e,n){"use strict";t.exports=n(101)},function(t,e,n){"use strict";var r=n(1),o=n(109),i=n(113),a=n(114),s=n(122),c=n(136),u=n(149),l=n(56),f=n(63),p={default:n(151),zero:n(152),commonmark:n(153)},d=/^(vbscript|javascript|file|data):/,h=/^data:image\/(gif|png|jpeg|webp);/;function m(t){var e=t.trim().toLowerCase();return!d.test(e)||!!h.test(e)}var g=["http:","https:","mailto:"];function v(t){var e=l.parse(t,!0);if(e.hostname&&(!e.protocol||g.indexOf(e.protocol)>=0))try{e.hostname=f.toASCII(e.hostname)}catch(t){}return l.encode(l.format(e))}function b(t){var e=l.parse(t,!0);if(e.hostname&&(!e.protocol||g.indexOf(e.protocol)>=0))try{e.hostname=f.toUnicode(e.hostname)}catch(t){}return l.decode(l.format(e))}function _(t,e){if(!(this instanceof _))return new _(t,e);e||r.isString(t)||(e=t||{},t="default"),this.inline=new c,this.block=new s,this.core=new a,this.renderer=new i,this.linkify=new u,this.validateLink=m,this.normalizeLink=v,this.normalizeLinkText=b,this.utils=r,this.helpers=r.assign({},o),this.options={},this.configure(t),e&&this.set(e)}_.prototype.set=function(t){return r.assign(this.options,t),this},_.prototype.configure=function(t){var e,n=this;if(r.isString(t)&&!(t=p[e=t]))throw new Error('Wrong `markdown-it` preset "'+e+'", check name');if(!t)throw new Error("Wrong `markdown-it` preset, can't be empty");return t.options&&n.set(t.options),t.components&&Object.keys(t.components).forEach((function(e){t.components[e].rules&&n[e].ruler.enableOnly(t.components[e].rules),t.components[e].rules2&&n[e].ruler2.enableOnly(t.components[e].rules2)})),this},_.prototype.enable=function(t,e){var n=[];Array.isArray(t)||(t=[t]),["core","block","inline"].forEach((function(e){n=n.concat(this[e].ruler.enable(t,!0))}),this),n=n.concat(this.inline.ruler2.enable(t,!0));var r=t.filter((function(t){return n.indexOf(t)<0}));if(r.length&&!e)throw new Error("MarkdownIt. Failed to enable unknown rule(s): "+r);return this},_.prototype.disable=function(t,e){var n=[];Array.isArray(t)||(t=[t]),["core","block","inline"].forEach((function(e){n=n.concat(this[e].ruler.disable(t,!0))}),this),n=n.concat(this.inline.ruler2.disable(t,!0));var r=t.filter((function(t){return n.indexOf(t)<0}));if(r.length&&!e)throw new Error("MarkdownIt. Failed to disable unknown rule(s): "+r);return this},_.prototype.use=function(t){var e=[this].concat(Array.prototype.slice.call(arguments,1));return t.apply(t,e),this},_.prototype.parse=function(t,e){if("string"!=typeof t)throw new Error("Input data should be a String");var n=new this.core.State(t,this,e);return this.core.process(n),n.tokens},_.prototype.render=function(t,e){return e=e||{},this.renderer.render(this.parse(t,e),this.options,e)},_.prototype.parseInline=function(t,e){var n=new this.core.State(t,this,e);return n.inlineMode=!0,this.core.process(n),n.tokens},_.prototype.renderInline=function(t,e){return e=e||{},this.renderer.render(this.parseInline(t,e),this.options,e)},t.exports=_},function(t){t.exports=JSON.parse('{"Aacute":"Á","aacute":"á","Abreve":"Ă","abreve":"ă","ac":"∾","acd":"∿","acE":"∾̳","Acirc":"Â","acirc":"â","acute":"´","Acy":"А","acy":"а","AElig":"Æ","aelig":"æ","af":"⁡","Afr":"𝔄","afr":"𝔞","Agrave":"À","agrave":"à","alefsym":"ℵ","aleph":"ℵ","Alpha":"Α","alpha":"α","Amacr":"Ā","amacr":"ā","amalg":"⨿","amp":"&","AMP":"&","andand":"⩕","And":"⩓","and":"∧","andd":"⩜","andslope":"⩘","andv":"⩚","ang":"∠","ange":"⦤","angle":"∠","angmsdaa":"⦨","angmsdab":"⦩","angmsdac":"⦪","angmsdad":"⦫","angmsdae":"⦬","angmsdaf":"⦭","angmsdag":"⦮","angmsdah":"⦯","angmsd":"∡","angrt":"∟","angrtvb":"⊾","angrtvbd":"⦝","angsph":"∢","angst":"Å","angzarr":"⍼","Aogon":"Ą","aogon":"ą","Aopf":"𝔸","aopf":"𝕒","apacir":"⩯","ap":"≈","apE":"⩰","ape":"≊","apid":"≋","apos":"\'","ApplyFunction":"⁡","approx":"≈","approxeq":"≊","Aring":"Å","aring":"å","Ascr":"𝒜","ascr":"𝒶","Assign":"≔","ast":"*","asymp":"≈","asympeq":"≍","Atilde":"Ã","atilde":"ã","Auml":"Ä","auml":"ä","awconint":"∳","awint":"⨑","backcong":"≌","backepsilon":"϶","backprime":"‵","backsim":"∽","backsimeq":"⋍","Backslash":"∖","Barv":"⫧","barvee":"⊽","barwed":"⌅","Barwed":"⌆","barwedge":"⌅","bbrk":"⎵","bbrktbrk":"⎶","bcong":"≌","Bcy":"Б","bcy":"б","bdquo":"„","becaus":"∵","because":"∵","Because":"∵","bemptyv":"⦰","bepsi":"϶","bernou":"ℬ","Bernoullis":"ℬ","Beta":"Β","beta":"β","beth":"ℶ","between":"≬","Bfr":"𝔅","bfr":"𝔟","bigcap":"⋂","bigcirc":"◯","bigcup":"⋃","bigodot":"⨀","bigoplus":"⨁","bigotimes":"⨂","bigsqcup":"⨆","bigstar":"★","bigtriangledown":"▽","bigtriangleup":"△","biguplus":"⨄","bigvee":"⋁","bigwedge":"⋀","bkarow":"⤍","blacklozenge":"⧫","blacksquare":"▪","blacktriangle":"▴","blacktriangledown":"▾","blacktriangleleft":"◂","blacktriangleright":"▸","blank":"␣","blk12":"▒","blk14":"░","blk34":"▓","block":"█","bne":"=⃥","bnequiv":"≡⃥","bNot":"⫭","bnot":"⌐","Bopf":"𝔹","bopf":"𝕓","bot":"⊥","bottom":"⊥","bowtie":"⋈","boxbox":"⧉","boxdl":"┐","boxdL":"╕","boxDl":"╖","boxDL":"╗","boxdr":"┌","boxdR":"╒","boxDr":"╓","boxDR":"╔","boxh":"─","boxH":"═","boxhd":"┬","boxHd":"╤","boxhD":"╥","boxHD":"╦","boxhu":"┴","boxHu":"╧","boxhU":"╨","boxHU":"╩","boxminus":"⊟","boxplus":"⊞","boxtimes":"⊠","boxul":"┘","boxuL":"╛","boxUl":"╜","boxUL":"╝","boxur":"└","boxuR":"╘","boxUr":"╙","boxUR":"╚","boxv":"│","boxV":"║","boxvh":"┼","boxvH":"╪","boxVh":"╫","boxVH":"╬","boxvl":"┤","boxvL":"╡","boxVl":"╢","boxVL":"╣","boxvr":"├","boxvR":"╞","boxVr":"╟","boxVR":"╠","bprime":"‵","breve":"˘","Breve":"˘","brvbar":"¦","bscr":"𝒷","Bscr":"ℬ","bsemi":"⁏","bsim":"∽","bsime":"⋍","bsolb":"⧅","bsol":"\\\\","bsolhsub":"⟈","bull":"•","bullet":"•","bump":"≎","bumpE":"⪮","bumpe":"≏","Bumpeq":"≎","bumpeq":"≏","Cacute":"Ć","cacute":"ć","capand":"⩄","capbrcup":"⩉","capcap":"⩋","cap":"∩","Cap":"⋒","capcup":"⩇","capdot":"⩀","CapitalDifferentialD":"ⅅ","caps":"∩︀","caret":"⁁","caron":"ˇ","Cayleys":"ℭ","ccaps":"⩍","Ccaron":"Č","ccaron":"č","Ccedil":"Ç","ccedil":"ç","Ccirc":"Ĉ","ccirc":"ĉ","Cconint":"∰","ccups":"⩌","ccupssm":"⩐","Cdot":"Ċ","cdot":"ċ","cedil":"¸","Cedilla":"¸","cemptyv":"⦲","cent":"¢","centerdot":"·","CenterDot":"·","cfr":"𝔠","Cfr":"ℭ","CHcy":"Ч","chcy":"ч","check":"✓","checkmark":"✓","Chi":"Χ","chi":"χ","circ":"ˆ","circeq":"≗","circlearrowleft":"↺","circlearrowright":"↻","circledast":"⊛","circledcirc":"⊚","circleddash":"⊝","CircleDot":"⊙","circledR":"®","circledS":"Ⓢ","CircleMinus":"⊖","CirclePlus":"⊕","CircleTimes":"⊗","cir":"○","cirE":"⧃","cire":"≗","cirfnint":"⨐","cirmid":"⫯","cirscir":"⧂","ClockwiseContourIntegral":"∲","CloseCurlyDoubleQuote":"”","CloseCurlyQuote":"’","clubs":"♣","clubsuit":"♣","colon":":","Colon":"∷","Colone":"⩴","colone":"≔","coloneq":"≔","comma":",","commat":"@","comp":"∁","compfn":"∘","complement":"∁","complexes":"ℂ","cong":"≅","congdot":"⩭","Congruent":"≡","conint":"∮","Conint":"∯","ContourIntegral":"∮","copf":"𝕔","Copf":"ℂ","coprod":"∐","Coproduct":"∐","copy":"©","COPY":"©","copysr":"℗","CounterClockwiseContourIntegral":"∳","crarr":"↵","cross":"✗","Cross":"⨯","Cscr":"𝒞","cscr":"𝒸","csub":"⫏","csube":"⫑","csup":"⫐","csupe":"⫒","ctdot":"⋯","cudarrl":"⤸","cudarrr":"⤵","cuepr":"⋞","cuesc":"⋟","cularr":"↶","cularrp":"⤽","cupbrcap":"⩈","cupcap":"⩆","CupCap":"≍","cup":"∪","Cup":"⋓","cupcup":"⩊","cupdot":"⊍","cupor":"⩅","cups":"∪︀","curarr":"↷","curarrm":"⤼","curlyeqprec":"⋞","curlyeqsucc":"⋟","curlyvee":"⋎","curlywedge":"⋏","curren":"¤","curvearrowleft":"↶","curvearrowright":"↷","cuvee":"⋎","cuwed":"⋏","cwconint":"∲","cwint":"∱","cylcty":"⌭","dagger":"†","Dagger":"‡","daleth":"ℸ","darr":"↓","Darr":"↡","dArr":"⇓","dash":"‐","Dashv":"⫤","dashv":"⊣","dbkarow":"⤏","dblac":"˝","Dcaron":"Ď","dcaron":"ď","Dcy":"Д","dcy":"д","ddagger":"‡","ddarr":"⇊","DD":"ⅅ","dd":"ⅆ","DDotrahd":"⤑","ddotseq":"⩷","deg":"°","Del":"∇","Delta":"Δ","delta":"δ","demptyv":"⦱","dfisht":"⥿","Dfr":"𝔇","dfr":"𝔡","dHar":"⥥","dharl":"⇃","dharr":"⇂","DiacriticalAcute":"´","DiacriticalDot":"˙","DiacriticalDoubleAcute":"˝","DiacriticalGrave":"`","DiacriticalTilde":"˜","diam":"⋄","diamond":"⋄","Diamond":"⋄","diamondsuit":"♦","diams":"♦","die":"¨","DifferentialD":"ⅆ","digamma":"ϝ","disin":"⋲","div":"÷","divide":"÷","divideontimes":"⋇","divonx":"⋇","DJcy":"Ђ","djcy":"ђ","dlcorn":"⌞","dlcrop":"⌍","dollar":"$","Dopf":"𝔻","dopf":"𝕕","Dot":"¨","dot":"˙","DotDot":"⃜","doteq":"≐","doteqdot":"≑","DotEqual":"≐","dotminus":"∸","dotplus":"∔","dotsquare":"⊡","doublebarwedge":"⌆","DoubleContourIntegral":"∯","DoubleDot":"¨","DoubleDownArrow":"⇓","DoubleLeftArrow":"⇐","DoubleLeftRightArrow":"⇔","DoubleLeftTee":"⫤","DoubleLongLeftArrow":"⟸","DoubleLongLeftRightArrow":"⟺","DoubleLongRightArrow":"⟹","DoubleRightArrow":"⇒","DoubleRightTee":"⊨","DoubleUpArrow":"⇑","DoubleUpDownArrow":"⇕","DoubleVerticalBar":"∥","DownArrowBar":"⤓","downarrow":"↓","DownArrow":"↓","Downarrow":"⇓","DownArrowUpArrow":"⇵","DownBreve":"̑","downdownarrows":"⇊","downharpoonleft":"⇃","downharpoonright":"⇂","DownLeftRightVector":"⥐","DownLeftTeeVector":"⥞","DownLeftVectorBar":"⥖","DownLeftVector":"↽","DownRightTeeVector":"⥟","DownRightVectorBar":"⥗","DownRightVector":"⇁","DownTeeArrow":"↧","DownTee":"⊤","drbkarow":"⤐","drcorn":"⌟","drcrop":"⌌","Dscr":"𝒟","dscr":"𝒹","DScy":"Ѕ","dscy":"ѕ","dsol":"⧶","Dstrok":"Đ","dstrok":"đ","dtdot":"⋱","dtri":"▿","dtrif":"▾","duarr":"⇵","duhar":"⥯","dwangle":"⦦","DZcy":"Џ","dzcy":"џ","dzigrarr":"⟿","Eacute":"É","eacute":"é","easter":"⩮","Ecaron":"Ě","ecaron":"ě","Ecirc":"Ê","ecirc":"ê","ecir":"≖","ecolon":"≕","Ecy":"Э","ecy":"э","eDDot":"⩷","Edot":"Ė","edot":"ė","eDot":"≑","ee":"ⅇ","efDot":"≒","Efr":"𝔈","efr":"𝔢","eg":"⪚","Egrave":"È","egrave":"è","egs":"⪖","egsdot":"⪘","el":"⪙","Element":"∈","elinters":"⏧","ell":"ℓ","els":"⪕","elsdot":"⪗","Emacr":"Ē","emacr":"ē","empty":"∅","emptyset":"∅","EmptySmallSquare":"◻","emptyv":"∅","EmptyVerySmallSquare":"▫","emsp13":" ","emsp14":" ","emsp":" ","ENG":"Ŋ","eng":"ŋ","ensp":" ","Eogon":"Ę","eogon":"ę","Eopf":"𝔼","eopf":"𝕖","epar":"⋕","eparsl":"⧣","eplus":"⩱","epsi":"ε","Epsilon":"Ε","epsilon":"ε","epsiv":"ϵ","eqcirc":"≖","eqcolon":"≕","eqsim":"≂","eqslantgtr":"⪖","eqslantless":"⪕","Equal":"⩵","equals":"=","EqualTilde":"≂","equest":"≟","Equilibrium":"⇌","equiv":"≡","equivDD":"⩸","eqvparsl":"⧥","erarr":"⥱","erDot":"≓","escr":"ℯ","Escr":"ℰ","esdot":"≐","Esim":"⩳","esim":"≂","Eta":"Η","eta":"η","ETH":"Ð","eth":"ð","Euml":"Ë","euml":"ë","euro":"€","excl":"!","exist":"∃","Exists":"∃","expectation":"ℰ","exponentiale":"ⅇ","ExponentialE":"ⅇ","fallingdotseq":"≒","Fcy":"Ф","fcy":"ф","female":"♀","ffilig":"ffi","fflig":"ff","ffllig":"ffl","Ffr":"𝔉","ffr":"𝔣","filig":"fi","FilledSmallSquare":"◼","FilledVerySmallSquare":"▪","fjlig":"fj","flat":"♭","fllig":"fl","fltns":"▱","fnof":"ƒ","Fopf":"𝔽","fopf":"𝕗","forall":"∀","ForAll":"∀","fork":"⋔","forkv":"⫙","Fouriertrf":"ℱ","fpartint":"⨍","frac12":"½","frac13":"⅓","frac14":"¼","frac15":"⅕","frac16":"⅙","frac18":"⅛","frac23":"⅔","frac25":"⅖","frac34":"¾","frac35":"⅗","frac38":"⅜","frac45":"⅘","frac56":"⅚","frac58":"⅝","frac78":"⅞","frasl":"⁄","frown":"⌢","fscr":"𝒻","Fscr":"ℱ","gacute":"ǵ","Gamma":"Γ","gamma":"γ","Gammad":"Ϝ","gammad":"ϝ","gap":"⪆","Gbreve":"Ğ","gbreve":"ğ","Gcedil":"Ģ","Gcirc":"Ĝ","gcirc":"ĝ","Gcy":"Г","gcy":"г","Gdot":"Ġ","gdot":"ġ","ge":"≥","gE":"≧","gEl":"⪌","gel":"⋛","geq":"≥","geqq":"≧","geqslant":"⩾","gescc":"⪩","ges":"⩾","gesdot":"⪀","gesdoto":"⪂","gesdotol":"⪄","gesl":"⋛︀","gesles":"⪔","Gfr":"𝔊","gfr":"𝔤","gg":"≫","Gg":"⋙","ggg":"⋙","gimel":"ℷ","GJcy":"Ѓ","gjcy":"ѓ","gla":"⪥","gl":"≷","glE":"⪒","glj":"⪤","gnap":"⪊","gnapprox":"⪊","gne":"⪈","gnE":"≩","gneq":"⪈","gneqq":"≩","gnsim":"⋧","Gopf":"𝔾","gopf":"𝕘","grave":"`","GreaterEqual":"≥","GreaterEqualLess":"⋛","GreaterFullEqual":"≧","GreaterGreater":"⪢","GreaterLess":"≷","GreaterSlantEqual":"⩾","GreaterTilde":"≳","Gscr":"𝒢","gscr":"ℊ","gsim":"≳","gsime":"⪎","gsiml":"⪐","gtcc":"⪧","gtcir":"⩺","gt":">","GT":">","Gt":"≫","gtdot":"⋗","gtlPar":"⦕","gtquest":"⩼","gtrapprox":"⪆","gtrarr":"⥸","gtrdot":"⋗","gtreqless":"⋛","gtreqqless":"⪌","gtrless":"≷","gtrsim":"≳","gvertneqq":"≩︀","gvnE":"≩︀","Hacek":"ˇ","hairsp":" ","half":"½","hamilt":"ℋ","HARDcy":"Ъ","hardcy":"ъ","harrcir":"⥈","harr":"↔","hArr":"⇔","harrw":"↭","Hat":"^","hbar":"ℏ","Hcirc":"Ĥ","hcirc":"ĥ","hearts":"♥","heartsuit":"♥","hellip":"…","hercon":"⊹","hfr":"𝔥","Hfr":"ℌ","HilbertSpace":"ℋ","hksearow":"⤥","hkswarow":"⤦","hoarr":"⇿","homtht":"∻","hookleftarrow":"↩","hookrightarrow":"↪","hopf":"𝕙","Hopf":"ℍ","horbar":"―","HorizontalLine":"─","hscr":"𝒽","Hscr":"ℋ","hslash":"ℏ","Hstrok":"Ħ","hstrok":"ħ","HumpDownHump":"≎","HumpEqual":"≏","hybull":"⁃","hyphen":"‐","Iacute":"Í","iacute":"í","ic":"⁣","Icirc":"Î","icirc":"î","Icy":"И","icy":"и","Idot":"İ","IEcy":"Е","iecy":"е","iexcl":"¡","iff":"⇔","ifr":"𝔦","Ifr":"ℑ","Igrave":"Ì","igrave":"ì","ii":"ⅈ","iiiint":"⨌","iiint":"∭","iinfin":"⧜","iiota":"℩","IJlig":"IJ","ijlig":"ij","Imacr":"Ī","imacr":"ī","image":"ℑ","ImaginaryI":"ⅈ","imagline":"ℐ","imagpart":"ℑ","imath":"ı","Im":"ℑ","imof":"⊷","imped":"Ƶ","Implies":"⇒","incare":"℅","in":"∈","infin":"∞","infintie":"⧝","inodot":"ı","intcal":"⊺","int":"∫","Int":"∬","integers":"ℤ","Integral":"∫","intercal":"⊺","Intersection":"⋂","intlarhk":"⨗","intprod":"⨼","InvisibleComma":"⁣","InvisibleTimes":"⁢","IOcy":"Ё","iocy":"ё","Iogon":"Į","iogon":"į","Iopf":"𝕀","iopf":"𝕚","Iota":"Ι","iota":"ι","iprod":"⨼","iquest":"¿","iscr":"𝒾","Iscr":"ℐ","isin":"∈","isindot":"⋵","isinE":"⋹","isins":"⋴","isinsv":"⋳","isinv":"∈","it":"⁢","Itilde":"Ĩ","itilde":"ĩ","Iukcy":"І","iukcy":"і","Iuml":"Ï","iuml":"ï","Jcirc":"Ĵ","jcirc":"ĵ","Jcy":"Й","jcy":"й","Jfr":"𝔍","jfr":"𝔧","jmath":"ȷ","Jopf":"𝕁","jopf":"𝕛","Jscr":"𝒥","jscr":"𝒿","Jsercy":"Ј","jsercy":"ј","Jukcy":"Є","jukcy":"є","Kappa":"Κ","kappa":"κ","kappav":"ϰ","Kcedil":"Ķ","kcedil":"ķ","Kcy":"К","kcy":"к","Kfr":"𝔎","kfr":"𝔨","kgreen":"ĸ","KHcy":"Х","khcy":"х","KJcy":"Ќ","kjcy":"ќ","Kopf":"𝕂","kopf":"𝕜","Kscr":"𝒦","kscr":"𝓀","lAarr":"⇚","Lacute":"Ĺ","lacute":"ĺ","laemptyv":"⦴","lagran":"ℒ","Lambda":"Λ","lambda":"λ","lang":"⟨","Lang":"⟪","langd":"⦑","langle":"⟨","lap":"⪅","Laplacetrf":"ℒ","laquo":"«","larrb":"⇤","larrbfs":"⤟","larr":"←","Larr":"↞","lArr":"⇐","larrfs":"⤝","larrhk":"↩","larrlp":"↫","larrpl":"⤹","larrsim":"⥳","larrtl":"↢","latail":"⤙","lAtail":"⤛","lat":"⪫","late":"⪭","lates":"⪭︀","lbarr":"⤌","lBarr":"⤎","lbbrk":"❲","lbrace":"{","lbrack":"[","lbrke":"⦋","lbrksld":"⦏","lbrkslu":"⦍","Lcaron":"Ľ","lcaron":"ľ","Lcedil":"Ļ","lcedil":"ļ","lceil":"⌈","lcub":"{","Lcy":"Л","lcy":"л","ldca":"⤶","ldquo":"“","ldquor":"„","ldrdhar":"⥧","ldrushar":"⥋","ldsh":"↲","le":"≤","lE":"≦","LeftAngleBracket":"⟨","LeftArrowBar":"⇤","leftarrow":"←","LeftArrow":"←","Leftarrow":"⇐","LeftArrowRightArrow":"⇆","leftarrowtail":"↢","LeftCeiling":"⌈","LeftDoubleBracket":"⟦","LeftDownTeeVector":"⥡","LeftDownVectorBar":"⥙","LeftDownVector":"⇃","LeftFloor":"⌊","leftharpoondown":"↽","leftharpoonup":"↼","leftleftarrows":"⇇","leftrightarrow":"↔","LeftRightArrow":"↔","Leftrightarrow":"⇔","leftrightarrows":"⇆","leftrightharpoons":"⇋","leftrightsquigarrow":"↭","LeftRightVector":"⥎","LeftTeeArrow":"↤","LeftTee":"⊣","LeftTeeVector":"⥚","leftthreetimes":"⋋","LeftTriangleBar":"⧏","LeftTriangle":"⊲","LeftTriangleEqual":"⊴","LeftUpDownVector":"⥑","LeftUpTeeVector":"⥠","LeftUpVectorBar":"⥘","LeftUpVector":"↿","LeftVectorBar":"⥒","LeftVector":"↼","lEg":"⪋","leg":"⋚","leq":"≤","leqq":"≦","leqslant":"⩽","lescc":"⪨","les":"⩽","lesdot":"⩿","lesdoto":"⪁","lesdotor":"⪃","lesg":"⋚︀","lesges":"⪓","lessapprox":"⪅","lessdot":"⋖","lesseqgtr":"⋚","lesseqqgtr":"⪋","LessEqualGreater":"⋚","LessFullEqual":"≦","LessGreater":"≶","lessgtr":"≶","LessLess":"⪡","lesssim":"≲","LessSlantEqual":"⩽","LessTilde":"≲","lfisht":"⥼","lfloor":"⌊","Lfr":"𝔏","lfr":"𝔩","lg":"≶","lgE":"⪑","lHar":"⥢","lhard":"↽","lharu":"↼","lharul":"⥪","lhblk":"▄","LJcy":"Љ","ljcy":"љ","llarr":"⇇","ll":"≪","Ll":"⋘","llcorner":"⌞","Lleftarrow":"⇚","llhard":"⥫","lltri":"◺","Lmidot":"Ŀ","lmidot":"ŀ","lmoustache":"⎰","lmoust":"⎰","lnap":"⪉","lnapprox":"⪉","lne":"⪇","lnE":"≨","lneq":"⪇","lneqq":"≨","lnsim":"⋦","loang":"⟬","loarr":"⇽","lobrk":"⟦","longleftarrow":"⟵","LongLeftArrow":"⟵","Longleftarrow":"⟸","longleftrightarrow":"⟷","LongLeftRightArrow":"⟷","Longleftrightarrow":"⟺","longmapsto":"⟼","longrightarrow":"⟶","LongRightArrow":"⟶","Longrightarrow":"⟹","looparrowleft":"↫","looparrowright":"↬","lopar":"⦅","Lopf":"𝕃","lopf":"𝕝","loplus":"⨭","lotimes":"⨴","lowast":"∗","lowbar":"_","LowerLeftArrow":"↙","LowerRightArrow":"↘","loz":"◊","lozenge":"◊","lozf":"⧫","lpar":"(","lparlt":"⦓","lrarr":"⇆","lrcorner":"⌟","lrhar":"⇋","lrhard":"⥭","lrm":"‎","lrtri":"⊿","lsaquo":"‹","lscr":"𝓁","Lscr":"ℒ","lsh":"↰","Lsh":"↰","lsim":"≲","lsime":"⪍","lsimg":"⪏","lsqb":"[","lsquo":"‘","lsquor":"‚","Lstrok":"Ł","lstrok":"ł","ltcc":"⪦","ltcir":"⩹","lt":"<","LT":"<","Lt":"≪","ltdot":"⋖","lthree":"⋋","ltimes":"⋉","ltlarr":"⥶","ltquest":"⩻","ltri":"◃","ltrie":"⊴","ltrif":"◂","ltrPar":"⦖","lurdshar":"⥊","luruhar":"⥦","lvertneqq":"≨︀","lvnE":"≨︀","macr":"¯","male":"♂","malt":"✠","maltese":"✠","Map":"⤅","map":"↦","mapsto":"↦","mapstodown":"↧","mapstoleft":"↤","mapstoup":"↥","marker":"▮","mcomma":"⨩","Mcy":"М","mcy":"м","mdash":"—","mDDot":"∺","measuredangle":"∡","MediumSpace":" ","Mellintrf":"ℳ","Mfr":"𝔐","mfr":"𝔪","mho":"℧","micro":"µ","midast":"*","midcir":"⫰","mid":"∣","middot":"·","minusb":"⊟","minus":"−","minusd":"∸","minusdu":"⨪","MinusPlus":"∓","mlcp":"⫛","mldr":"…","mnplus":"∓","models":"⊧","Mopf":"𝕄","mopf":"𝕞","mp":"∓","mscr":"𝓂","Mscr":"ℳ","mstpos":"∾","Mu":"Μ","mu":"μ","multimap":"⊸","mumap":"⊸","nabla":"∇","Nacute":"Ń","nacute":"ń","nang":"∠⃒","nap":"≉","napE":"⩰̸","napid":"≋̸","napos":"ʼn","napprox":"≉","natural":"♮","naturals":"ℕ","natur":"♮","nbsp":" ","nbump":"≎̸","nbumpe":"≏̸","ncap":"⩃","Ncaron":"Ň","ncaron":"ň","Ncedil":"Ņ","ncedil":"ņ","ncong":"≇","ncongdot":"⩭̸","ncup":"⩂","Ncy":"Н","ncy":"н","ndash":"–","nearhk":"⤤","nearr":"↗","neArr":"⇗","nearrow":"↗","ne":"≠","nedot":"≐̸","NegativeMediumSpace":"​","NegativeThickSpace":"​","NegativeThinSpace":"​","NegativeVeryThinSpace":"​","nequiv":"≢","nesear":"⤨","nesim":"≂̸","NestedGreaterGreater":"≫","NestedLessLess":"≪","NewLine":"\\n","nexist":"∄","nexists":"∄","Nfr":"𝔑","nfr":"𝔫","ngE":"≧̸","nge":"≱","ngeq":"≱","ngeqq":"≧̸","ngeqslant":"⩾̸","nges":"⩾̸","nGg":"⋙̸","ngsim":"≵","nGt":"≫⃒","ngt":"≯","ngtr":"≯","nGtv":"≫̸","nharr":"↮","nhArr":"⇎","nhpar":"⫲","ni":"∋","nis":"⋼","nisd":"⋺","niv":"∋","NJcy":"Њ","njcy":"њ","nlarr":"↚","nlArr":"⇍","nldr":"‥","nlE":"≦̸","nle":"≰","nleftarrow":"↚","nLeftarrow":"⇍","nleftrightarrow":"↮","nLeftrightarrow":"⇎","nleq":"≰","nleqq":"≦̸","nleqslant":"⩽̸","nles":"⩽̸","nless":"≮","nLl":"⋘̸","nlsim":"≴","nLt":"≪⃒","nlt":"≮","nltri":"⋪","nltrie":"⋬","nLtv":"≪̸","nmid":"∤","NoBreak":"⁠","NonBreakingSpace":" ","nopf":"𝕟","Nopf":"ℕ","Not":"⫬","not":"¬","NotCongruent":"≢","NotCupCap":"≭","NotDoubleVerticalBar":"∦","NotElement":"∉","NotEqual":"≠","NotEqualTilde":"≂̸","NotExists":"∄","NotGreater":"≯","NotGreaterEqual":"≱","NotGreaterFullEqual":"≧̸","NotGreaterGreater":"≫̸","NotGreaterLess":"≹","NotGreaterSlantEqual":"⩾̸","NotGreaterTilde":"≵","NotHumpDownHump":"≎̸","NotHumpEqual":"≏̸","notin":"∉","notindot":"⋵̸","notinE":"⋹̸","notinva":"∉","notinvb":"⋷","notinvc":"⋶","NotLeftTriangleBar":"⧏̸","NotLeftTriangle":"⋪","NotLeftTriangleEqual":"⋬","NotLess":"≮","NotLessEqual":"≰","NotLessGreater":"≸","NotLessLess":"≪̸","NotLessSlantEqual":"⩽̸","NotLessTilde":"≴","NotNestedGreaterGreater":"⪢̸","NotNestedLessLess":"⪡̸","notni":"∌","notniva":"∌","notnivb":"⋾","notnivc":"⋽","NotPrecedes":"⊀","NotPrecedesEqual":"⪯̸","NotPrecedesSlantEqual":"⋠","NotReverseElement":"∌","NotRightTriangleBar":"⧐̸","NotRightTriangle":"⋫","NotRightTriangleEqual":"⋭","NotSquareSubset":"⊏̸","NotSquareSubsetEqual":"⋢","NotSquareSuperset":"⊐̸","NotSquareSupersetEqual":"⋣","NotSubset":"⊂⃒","NotSubsetEqual":"⊈","NotSucceeds":"⊁","NotSucceedsEqual":"⪰̸","NotSucceedsSlantEqual":"⋡","NotSucceedsTilde":"≿̸","NotSuperset":"⊃⃒","NotSupersetEqual":"⊉","NotTilde":"≁","NotTildeEqual":"≄","NotTildeFullEqual":"≇","NotTildeTilde":"≉","NotVerticalBar":"∤","nparallel":"∦","npar":"∦","nparsl":"⫽⃥","npart":"∂̸","npolint":"⨔","npr":"⊀","nprcue":"⋠","nprec":"⊀","npreceq":"⪯̸","npre":"⪯̸","nrarrc":"⤳̸","nrarr":"↛","nrArr":"⇏","nrarrw":"↝̸","nrightarrow":"↛","nRightarrow":"⇏","nrtri":"⋫","nrtrie":"⋭","nsc":"⊁","nsccue":"⋡","nsce":"⪰̸","Nscr":"𝒩","nscr":"𝓃","nshortmid":"∤","nshortparallel":"∦","nsim":"≁","nsime":"≄","nsimeq":"≄","nsmid":"∤","nspar":"∦","nsqsube":"⋢","nsqsupe":"⋣","nsub":"⊄","nsubE":"⫅̸","nsube":"⊈","nsubset":"⊂⃒","nsubseteq":"⊈","nsubseteqq":"⫅̸","nsucc":"⊁","nsucceq":"⪰̸","nsup":"⊅","nsupE":"⫆̸","nsupe":"⊉","nsupset":"⊃⃒","nsupseteq":"⊉","nsupseteqq":"⫆̸","ntgl":"≹","Ntilde":"Ñ","ntilde":"ñ","ntlg":"≸","ntriangleleft":"⋪","ntrianglelefteq":"⋬","ntriangleright":"⋫","ntrianglerighteq":"⋭","Nu":"Ν","nu":"ν","num":"#","numero":"№","numsp":" ","nvap":"≍⃒","nvdash":"⊬","nvDash":"⊭","nVdash":"⊮","nVDash":"⊯","nvge":"≥⃒","nvgt":">⃒","nvHarr":"⤄","nvinfin":"⧞","nvlArr":"⤂","nvle":"≤⃒","nvlt":"<⃒","nvltrie":"⊴⃒","nvrArr":"⤃","nvrtrie":"⊵⃒","nvsim":"∼⃒","nwarhk":"⤣","nwarr":"↖","nwArr":"⇖","nwarrow":"↖","nwnear":"⤧","Oacute":"Ó","oacute":"ó","oast":"⊛","Ocirc":"Ô","ocirc":"ô","ocir":"⊚","Ocy":"О","ocy":"о","odash":"⊝","Odblac":"Ő","odblac":"ő","odiv":"⨸","odot":"⊙","odsold":"⦼","OElig":"Œ","oelig":"œ","ofcir":"⦿","Ofr":"𝔒","ofr":"𝔬","ogon":"˛","Ograve":"Ò","ograve":"ò","ogt":"⧁","ohbar":"⦵","ohm":"Ω","oint":"∮","olarr":"↺","olcir":"⦾","olcross":"⦻","oline":"‾","olt":"⧀","Omacr":"Ō","omacr":"ō","Omega":"Ω","omega":"ω","Omicron":"Ο","omicron":"ο","omid":"⦶","ominus":"⊖","Oopf":"𝕆","oopf":"𝕠","opar":"⦷","OpenCurlyDoubleQuote":"“","OpenCurlyQuote":"‘","operp":"⦹","oplus":"⊕","orarr":"↻","Or":"⩔","or":"∨","ord":"⩝","order":"ℴ","orderof":"ℴ","ordf":"ª","ordm":"º","origof":"⊶","oror":"⩖","orslope":"⩗","orv":"⩛","oS":"Ⓢ","Oscr":"𝒪","oscr":"ℴ","Oslash":"Ø","oslash":"ø","osol":"⊘","Otilde":"Õ","otilde":"õ","otimesas":"⨶","Otimes":"⨷","otimes":"⊗","Ouml":"Ö","ouml":"ö","ovbar":"⌽","OverBar":"‾","OverBrace":"⏞","OverBracket":"⎴","OverParenthesis":"⏜","para":"¶","parallel":"∥","par":"∥","parsim":"⫳","parsl":"⫽","part":"∂","PartialD":"∂","Pcy":"П","pcy":"п","percnt":"%","period":".","permil":"‰","perp":"⊥","pertenk":"‱","Pfr":"𝔓","pfr":"𝔭","Phi":"Φ","phi":"φ","phiv":"ϕ","phmmat":"ℳ","phone":"☎","Pi":"Π","pi":"π","pitchfork":"⋔","piv":"ϖ","planck":"ℏ","planckh":"ℎ","plankv":"ℏ","plusacir":"⨣","plusb":"⊞","pluscir":"⨢","plus":"+","plusdo":"∔","plusdu":"⨥","pluse":"⩲","PlusMinus":"±","plusmn":"±","plussim":"⨦","plustwo":"⨧","pm":"±","Poincareplane":"ℌ","pointint":"⨕","popf":"𝕡","Popf":"ℙ","pound":"£","prap":"⪷","Pr":"⪻","pr":"≺","prcue":"≼","precapprox":"⪷","prec":"≺","preccurlyeq":"≼","Precedes":"≺","PrecedesEqual":"⪯","PrecedesSlantEqual":"≼","PrecedesTilde":"≾","preceq":"⪯","precnapprox":"⪹","precneqq":"⪵","precnsim":"⋨","pre":"⪯","prE":"⪳","precsim":"≾","prime":"′","Prime":"″","primes":"ℙ","prnap":"⪹","prnE":"⪵","prnsim":"⋨","prod":"∏","Product":"∏","profalar":"⌮","profline":"⌒","profsurf":"⌓","prop":"∝","Proportional":"∝","Proportion":"∷","propto":"∝","prsim":"≾","prurel":"⊰","Pscr":"𝒫","pscr":"𝓅","Psi":"Ψ","psi":"ψ","puncsp":" ","Qfr":"𝔔","qfr":"𝔮","qint":"⨌","qopf":"𝕢","Qopf":"ℚ","qprime":"⁗","Qscr":"𝒬","qscr":"𝓆","quaternions":"ℍ","quatint":"⨖","quest":"?","questeq":"≟","quot":"\\"","QUOT":"\\"","rAarr":"⇛","race":"∽̱","Racute":"Ŕ","racute":"ŕ","radic":"√","raemptyv":"⦳","rang":"⟩","Rang":"⟫","rangd":"⦒","range":"⦥","rangle":"⟩","raquo":"»","rarrap":"⥵","rarrb":"⇥","rarrbfs":"⤠","rarrc":"⤳","rarr":"→","Rarr":"↠","rArr":"⇒","rarrfs":"⤞","rarrhk":"↪","rarrlp":"↬","rarrpl":"⥅","rarrsim":"⥴","Rarrtl":"⤖","rarrtl":"↣","rarrw":"↝","ratail":"⤚","rAtail":"⤜","ratio":"∶","rationals":"ℚ","rbarr":"⤍","rBarr":"⤏","RBarr":"⤐","rbbrk":"❳","rbrace":"}","rbrack":"]","rbrke":"⦌","rbrksld":"⦎","rbrkslu":"⦐","Rcaron":"Ř","rcaron":"ř","Rcedil":"Ŗ","rcedil":"ŗ","rceil":"⌉","rcub":"}","Rcy":"Р","rcy":"р","rdca":"⤷","rdldhar":"⥩","rdquo":"”","rdquor":"”","rdsh":"↳","real":"ℜ","realine":"ℛ","realpart":"ℜ","reals":"ℝ","Re":"ℜ","rect":"▭","reg":"®","REG":"®","ReverseElement":"∋","ReverseEquilibrium":"⇋","ReverseUpEquilibrium":"⥯","rfisht":"⥽","rfloor":"⌋","rfr":"𝔯","Rfr":"ℜ","rHar":"⥤","rhard":"⇁","rharu":"⇀","rharul":"⥬","Rho":"Ρ","rho":"ρ","rhov":"ϱ","RightAngleBracket":"⟩","RightArrowBar":"⇥","rightarrow":"→","RightArrow":"→","Rightarrow":"⇒","RightArrowLeftArrow":"⇄","rightarrowtail":"↣","RightCeiling":"⌉","RightDoubleBracket":"⟧","RightDownTeeVector":"⥝","RightDownVectorBar":"⥕","RightDownVector":"⇂","RightFloor":"⌋","rightharpoondown":"⇁","rightharpoonup":"⇀","rightleftarrows":"⇄","rightleftharpoons":"⇌","rightrightarrows":"⇉","rightsquigarrow":"↝","RightTeeArrow":"↦","RightTee":"⊢","RightTeeVector":"⥛","rightthreetimes":"⋌","RightTriangleBar":"⧐","RightTriangle":"⊳","RightTriangleEqual":"⊵","RightUpDownVector":"⥏","RightUpTeeVector":"⥜","RightUpVectorBar":"⥔","RightUpVector":"↾","RightVectorBar":"⥓","RightVector":"⇀","ring":"˚","risingdotseq":"≓","rlarr":"⇄","rlhar":"⇌","rlm":"‏","rmoustache":"⎱","rmoust":"⎱","rnmid":"⫮","roang":"⟭","roarr":"⇾","robrk":"⟧","ropar":"⦆","ropf":"𝕣","Ropf":"ℝ","roplus":"⨮","rotimes":"⨵","RoundImplies":"⥰","rpar":")","rpargt":"⦔","rppolint":"⨒","rrarr":"⇉","Rrightarrow":"⇛","rsaquo":"›","rscr":"𝓇","Rscr":"ℛ","rsh":"↱","Rsh":"↱","rsqb":"]","rsquo":"’","rsquor":"’","rthree":"⋌","rtimes":"⋊","rtri":"▹","rtrie":"⊵","rtrif":"▸","rtriltri":"⧎","RuleDelayed":"⧴","ruluhar":"⥨","rx":"℞","Sacute":"Ś","sacute":"ś","sbquo":"‚","scap":"⪸","Scaron":"Š","scaron":"š","Sc":"⪼","sc":"≻","sccue":"≽","sce":"⪰","scE":"⪴","Scedil":"Ş","scedil":"ş","Scirc":"Ŝ","scirc":"ŝ","scnap":"⪺","scnE":"⪶","scnsim":"⋩","scpolint":"⨓","scsim":"≿","Scy":"С","scy":"с","sdotb":"⊡","sdot":"⋅","sdote":"⩦","searhk":"⤥","searr":"↘","seArr":"⇘","searrow":"↘","sect":"§","semi":";","seswar":"⤩","setminus":"∖","setmn":"∖","sext":"✶","Sfr":"𝔖","sfr":"𝔰","sfrown":"⌢","sharp":"♯","SHCHcy":"Щ","shchcy":"щ","SHcy":"Ш","shcy":"ш","ShortDownArrow":"↓","ShortLeftArrow":"←","shortmid":"∣","shortparallel":"∥","ShortRightArrow":"→","ShortUpArrow":"↑","shy":"­","Sigma":"Σ","sigma":"σ","sigmaf":"ς","sigmav":"ς","sim":"∼","simdot":"⩪","sime":"≃","simeq":"≃","simg":"⪞","simgE":"⪠","siml":"⪝","simlE":"⪟","simne":"≆","simplus":"⨤","simrarr":"⥲","slarr":"←","SmallCircle":"∘","smallsetminus":"∖","smashp":"⨳","smeparsl":"⧤","smid":"∣","smile":"⌣","smt":"⪪","smte":"⪬","smtes":"⪬︀","SOFTcy":"Ь","softcy":"ь","solbar":"⌿","solb":"⧄","sol":"/","Sopf":"𝕊","sopf":"𝕤","spades":"♠","spadesuit":"♠","spar":"∥","sqcap":"⊓","sqcaps":"⊓︀","sqcup":"⊔","sqcups":"⊔︀","Sqrt":"√","sqsub":"⊏","sqsube":"⊑","sqsubset":"⊏","sqsubseteq":"⊑","sqsup":"⊐","sqsupe":"⊒","sqsupset":"⊐","sqsupseteq":"⊒","square":"□","Square":"□","SquareIntersection":"⊓","SquareSubset":"⊏","SquareSubsetEqual":"⊑","SquareSuperset":"⊐","SquareSupersetEqual":"⊒","SquareUnion":"⊔","squarf":"▪","squ":"□","squf":"▪","srarr":"→","Sscr":"𝒮","sscr":"𝓈","ssetmn":"∖","ssmile":"⌣","sstarf":"⋆","Star":"⋆","star":"☆","starf":"★","straightepsilon":"ϵ","straightphi":"ϕ","strns":"¯","sub":"⊂","Sub":"⋐","subdot":"⪽","subE":"⫅","sube":"⊆","subedot":"⫃","submult":"⫁","subnE":"⫋","subne":"⊊","subplus":"⪿","subrarr":"⥹","subset":"⊂","Subset":"⋐","subseteq":"⊆","subseteqq":"⫅","SubsetEqual":"⊆","subsetneq":"⊊","subsetneqq":"⫋","subsim":"⫇","subsub":"⫕","subsup":"⫓","succapprox":"⪸","succ":"≻","succcurlyeq":"≽","Succeeds":"≻","SucceedsEqual":"⪰","SucceedsSlantEqual":"≽","SucceedsTilde":"≿","succeq":"⪰","succnapprox":"⪺","succneqq":"⪶","succnsim":"⋩","succsim":"≿","SuchThat":"∋","sum":"∑","Sum":"∑","sung":"♪","sup1":"¹","sup2":"²","sup3":"³","sup":"⊃","Sup":"⋑","supdot":"⪾","supdsub":"⫘","supE":"⫆","supe":"⊇","supedot":"⫄","Superset":"⊃","SupersetEqual":"⊇","suphsol":"⟉","suphsub":"⫗","suplarr":"⥻","supmult":"⫂","supnE":"⫌","supne":"⊋","supplus":"⫀","supset":"⊃","Supset":"⋑","supseteq":"⊇","supseteqq":"⫆","supsetneq":"⊋","supsetneqq":"⫌","supsim":"⫈","supsub":"⫔","supsup":"⫖","swarhk":"⤦","swarr":"↙","swArr":"⇙","swarrow":"↙","swnwar":"⤪","szlig":"ß","Tab":"\\t","target":"⌖","Tau":"Τ","tau":"τ","tbrk":"⎴","Tcaron":"Ť","tcaron":"ť","Tcedil":"Ţ","tcedil":"ţ","Tcy":"Т","tcy":"т","tdot":"⃛","telrec":"⌕","Tfr":"𝔗","tfr":"𝔱","there4":"∴","therefore":"∴","Therefore":"∴","Theta":"Θ","theta":"θ","thetasym":"ϑ","thetav":"ϑ","thickapprox":"≈","thicksim":"∼","ThickSpace":"  ","ThinSpace":" ","thinsp":" ","thkap":"≈","thksim":"∼","THORN":"Þ","thorn":"þ","tilde":"˜","Tilde":"∼","TildeEqual":"≃","TildeFullEqual":"≅","TildeTilde":"≈","timesbar":"⨱","timesb":"⊠","times":"×","timesd":"⨰","tint":"∭","toea":"⤨","topbot":"⌶","topcir":"⫱","top":"⊤","Topf":"𝕋","topf":"𝕥","topfork":"⫚","tosa":"⤩","tprime":"‴","trade":"™","TRADE":"™","triangle":"▵","triangledown":"▿","triangleleft":"◃","trianglelefteq":"⊴","triangleq":"≜","triangleright":"▹","trianglerighteq":"⊵","tridot":"◬","trie":"≜","triminus":"⨺","TripleDot":"⃛","triplus":"⨹","trisb":"⧍","tritime":"⨻","trpezium":"⏢","Tscr":"𝒯","tscr":"𝓉","TScy":"Ц","tscy":"ц","TSHcy":"Ћ","tshcy":"ћ","Tstrok":"Ŧ","tstrok":"ŧ","twixt":"≬","twoheadleftarrow":"↞","twoheadrightarrow":"↠","Uacute":"Ú","uacute":"ú","uarr":"↑","Uarr":"↟","uArr":"⇑","Uarrocir":"⥉","Ubrcy":"Ў","ubrcy":"ў","Ubreve":"Ŭ","ubreve":"ŭ","Ucirc":"Û","ucirc":"û","Ucy":"У","ucy":"у","udarr":"⇅","Udblac":"Ű","udblac":"ű","udhar":"⥮","ufisht":"⥾","Ufr":"𝔘","ufr":"𝔲","Ugrave":"Ù","ugrave":"ù","uHar":"⥣","uharl":"↿","uharr":"↾","uhblk":"▀","ulcorn":"⌜","ulcorner":"⌜","ulcrop":"⌏","ultri":"◸","Umacr":"Ū","umacr":"ū","uml":"¨","UnderBar":"_","UnderBrace":"⏟","UnderBracket":"⎵","UnderParenthesis":"⏝","Union":"⋃","UnionPlus":"⊎","Uogon":"Ų","uogon":"ų","Uopf":"𝕌","uopf":"𝕦","UpArrowBar":"⤒","uparrow":"↑","UpArrow":"↑","Uparrow":"⇑","UpArrowDownArrow":"⇅","updownarrow":"↕","UpDownArrow":"↕","Updownarrow":"⇕","UpEquilibrium":"⥮","upharpoonleft":"↿","upharpoonright":"↾","uplus":"⊎","UpperLeftArrow":"↖","UpperRightArrow":"↗","upsi":"υ","Upsi":"ϒ","upsih":"ϒ","Upsilon":"Υ","upsilon":"υ","UpTeeArrow":"↥","UpTee":"⊥","upuparrows":"⇈","urcorn":"⌝","urcorner":"⌝","urcrop":"⌎","Uring":"Ů","uring":"ů","urtri":"◹","Uscr":"𝒰","uscr":"𝓊","utdot":"⋰","Utilde":"Ũ","utilde":"ũ","utri":"▵","utrif":"▴","uuarr":"⇈","Uuml":"Ü","uuml":"ü","uwangle":"⦧","vangrt":"⦜","varepsilon":"ϵ","varkappa":"ϰ","varnothing":"∅","varphi":"ϕ","varpi":"ϖ","varpropto":"∝","varr":"↕","vArr":"⇕","varrho":"ϱ","varsigma":"ς","varsubsetneq":"⊊︀","varsubsetneqq":"⫋︀","varsupsetneq":"⊋︀","varsupsetneqq":"⫌︀","vartheta":"ϑ","vartriangleleft":"⊲","vartriangleright":"⊳","vBar":"⫨","Vbar":"⫫","vBarv":"⫩","Vcy":"В","vcy":"в","vdash":"⊢","vDash":"⊨","Vdash":"⊩","VDash":"⊫","Vdashl":"⫦","veebar":"⊻","vee":"∨","Vee":"⋁","veeeq":"≚","vellip":"⋮","verbar":"|","Verbar":"‖","vert":"|","Vert":"‖","VerticalBar":"∣","VerticalLine":"|","VerticalSeparator":"❘","VerticalTilde":"≀","VeryThinSpace":" ","Vfr":"𝔙","vfr":"𝔳","vltri":"⊲","vnsub":"⊂⃒","vnsup":"⊃⃒","Vopf":"𝕍","vopf":"𝕧","vprop":"∝","vrtri":"⊳","Vscr":"𝒱","vscr":"𝓋","vsubnE":"⫋︀","vsubne":"⊊︀","vsupnE":"⫌︀","vsupne":"⊋︀","Vvdash":"⊪","vzigzag":"⦚","Wcirc":"Ŵ","wcirc":"ŵ","wedbar":"⩟","wedge":"∧","Wedge":"⋀","wedgeq":"≙","weierp":"℘","Wfr":"𝔚","wfr":"𝔴","Wopf":"𝕎","wopf":"𝕨","wp":"℘","wr":"≀","wreath":"≀","Wscr":"𝒲","wscr":"𝓌","xcap":"⋂","xcirc":"◯","xcup":"⋃","xdtri":"▽","Xfr":"𝔛","xfr":"𝔵","xharr":"⟷","xhArr":"⟺","Xi":"Ξ","xi":"ξ","xlarr":"⟵","xlArr":"⟸","xmap":"⟼","xnis":"⋻","xodot":"⨀","Xopf":"𝕏","xopf":"𝕩","xoplus":"⨁","xotime":"⨂","xrarr":"⟶","xrArr":"⟹","Xscr":"𝒳","xscr":"𝓍","xsqcup":"⨆","xuplus":"⨄","xutri":"△","xvee":"⋁","xwedge":"⋀","Yacute":"Ý","yacute":"ý","YAcy":"Я","yacy":"я","Ycirc":"Ŷ","ycirc":"ŷ","Ycy":"Ы","ycy":"ы","yen":"¥","Yfr":"𝔜","yfr":"𝔶","YIcy":"Ї","yicy":"ї","Yopf":"𝕐","yopf":"𝕪","Yscr":"𝒴","yscr":"𝓎","YUcy":"Ю","yucy":"ю","yuml":"ÿ","Yuml":"Ÿ","Zacute":"Ź","zacute":"ź","Zcaron":"Ž","zcaron":"ž","Zcy":"З","zcy":"з","Zdot":"Ż","zdot":"ż","zeetrf":"ℨ","ZeroWidthSpace":"​","Zeta":"Ζ","zeta":"ζ","zfr":"𝔷","Zfr":"ℨ","ZHcy":"Ж","zhcy":"ж","zigrarr":"⇝","zopf":"𝕫","Zopf":"ℤ","Zscr":"𝒵","zscr":"𝓏","zwj":"‍","zwnj":"‌"}')},function(t,e,n){"use strict";var r={};function o(t,e,n){var i,a,s,c,u,l="";for("string"!=typeof e&&(n=e,e=o.defaultChars),void 0===n&&(n=!0),u=function(t){var e,n,o=r[t];if(o)return o;for(o=r[t]=[],e=0;e<128;e++)n=String.fromCharCode(e),/^[0-9a-z]$/i.test(n)?o.push(n):o.push("%"+("0"+e.toString(16).toUpperCase()).slice(-2));for(e=0;e=55296&&s<=57343){if(s>=55296&&s<=56319&&i+1=56320&&c<=57343){l+=encodeURIComponent(t[i]+t[i+1]),i++;continue}l+="%EF%BF%BD"}else l+=encodeURIComponent(t[i]);return l}o.defaultChars=";/?:@&=+$,-_.!~*'()#",o.componentChars="-_.!~*'()",t.exports=o},function(t,e,n){"use strict";var r={};function o(t,e){var n;return"string"!=typeof e&&(e=o.defaultChars),n=function(t){var e,n,o=r[t];if(o)return o;for(o=r[t]=[],e=0;e<128;e++)n=String.fromCharCode(e),o.push(n);for(e=0;e=55296&&c<=57343?"���":String.fromCharCode(c),e+=6):240==(248&o)&&e+91114111?u+="����":(c-=65536,u+=String.fromCharCode(55296+(c>>10),56320+(1023&c))),e+=9):u+="�";return u}))}o.defaultChars=";/?:@&=+$,#",o.componentChars="",t.exports=o},function(t,e,n){"use strict";t.exports=function(t){var e="";return e+=t.protocol||"",e+=t.slashes?"//":"",e+=t.auth?t.auth+"@":"",t.hostname&&-1!==t.hostname.indexOf(":")?e+="["+t.hostname+"]":e+=t.hostname||"",e+=t.port?":"+t.port:"",e+=t.pathname||"",e+=t.search||"",e+=t.hash||""}},function(t,e,n){"use strict";function r(){this.protocol=null,this.slashes=null,this.auth=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.pathname=null}var o=/^([a-z0-9.+-]+:)/i,i=/:[0-9]*$/,a=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,s=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r","\n","\t"]),c=["'"].concat(s),u=["%","/","?",";","#"].concat(c),l=["/","?","#"],f=/^[+a-z0-9A-Z_-]{0,63}$/,p=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,d={javascript:!0,"javascript:":!0},h={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0};r.prototype.parse=function(t,e){var n,r,i,s,c,m=t;if(m=m.trim(),!e&&1===t.split("#").length){var g=a.exec(m);if(g)return this.pathname=g[1],g[2]&&(this.search=g[2]),this}var v=o.exec(m);if(v&&(i=(v=v[0]).toLowerCase(),this.protocol=v,m=m.substr(v.length)),(e||v||m.match(/^\/\/[^@\/]+@[^@\/]+/))&&(!(c="//"===m.substr(0,2))||v&&d[v]||(m=m.substr(2),this.slashes=!0)),!d[v]&&(c||v&&!h[v])){var b,_,y=-1;for(n=0;n127?C+="x":C+=w[A];if(!C.match(f)){var S=x.slice(0,n),R=x.slice(n+1),O=w.match(p);O&&(S.push(O[1]),R.unshift(O[2])),R.length&&(m=R.join(".")+m),this.hostname=S.join(".");break}}}}this.hostname.length>255&&(this.hostname=""),k&&(this.hostname=this.hostname.substr(1,this.hostname.length-2))}var N=m.indexOf("#");-1!==N&&(this.hash=m.substr(N),m=m.slice(0,N));var L=m.indexOf("?");return-1!==L&&(this.search=m.substr(L),m=m.slice(0,L)),m&&(this.pathname=m),h[i]&&this.hostname&&!this.pathname&&(this.pathname=""),this},r.prototype.parseHost=function(t){var e=i.exec(t);e&&(":"!==(e=e[0])&&(this.port=e.substr(1)),t=t.substr(0,t.length-e.length)),t&&(this.hostname=t)},t.exports=function(t,e){if(t&&t instanceof r)return t;var n=new r;return n.parse(t,e),n}},function(t,e,n){"use strict";e.Any=n(57),e.Cc=n(58),e.Cf=n(108),e.P=n(36),e.Z=n(59)},function(t,e){t.exports=/[\xAD\u0600-\u0605\u061C\u06DD\u070F\u08E2\u180E\u200B-\u200F\u202A-\u202E\u2060-\u2064\u2066-\u206F\uFEFF\uFFF9-\uFFFB]|\uD804[\uDCBD\uDCCD]|\uD82F[\uDCA0-\uDCA3]|\uD834[\uDD73-\uDD7A]|\uDB40[\uDC01\uDC20-\uDC7F]/},function(t,e,n){"use strict";e.parseLinkLabel=n(110),e.parseLinkDestination=n(111),e.parseLinkTitle=n(112)},function(t,e,n){"use strict";t.exports=function(t,e,n){var r,o,i,a,s=-1,c=t.posMax,u=t.pos;for(t.pos=e+1,r=1;t.pos=n)return c;if(34!==(i=t.charCodeAt(e))&&39!==i&&40!==i)return c;for(e++,40===i&&(i=41);e"+i(t[e].content)+""},a.code_block=function(t,e,n,r,o){var a=t[e];return""+i(t[e].content)+"\n"},a.fence=function(t,e,n,r,a){var s,c,u,l,f=t[e],p=f.info?o(f.info).trim():"",d="";return p&&(d=p.split(/\s+/g)[0]),0===(s=n.highlight&&n.highlight(f.content,d)||i(f.content)).indexOf(""+s+"\n"):"
"+s+"
\n"},a.image=function(t,e,n,r,o){var i=t[e];return i.attrs[i.attrIndex("alt")][1]=o.renderInlineAsText(i.children,n,r),o.renderToken(t,e,n)},a.hardbreak=function(t,e,n){return n.xhtmlOut?"
\n":"
\n"},a.softbreak=function(t,e,n){return n.breaks?n.xhtmlOut?"
\n":"
\n":"\n"},a.text=function(t,e){return i(t[e].content)},a.html_block=function(t,e){return t[e].content},a.html_inline=function(t,e){return t[e].content},s.prototype.renderAttrs=function(t){var e,n,r;if(!t.attrs)return"";for(r="",e=0,n=t.attrs.length;e\n":">")},s.prototype.renderInline=function(t,e,n){for(var r,o="",i=this.rules,a=0,s=t.length;a/i.test(t)}t.exports=function(t){var e,n,i,a,s,c,u,l,f,p,d,h,m,g,v,b,_,y,E=t.tokens;if(t.md.options.linkify)for(n=0,i=E.length;n=0;e--)if("link_close"!==(c=a[e]).type){if("html_inline"===c.type&&(y=c.content,/^\s]/i.test(y)&&m>0&&m--,o(c.content)&&m++),!(m>0)&&"text"===c.type&&t.md.linkify.test(c.content)){for(f=c.content,_=t.md.linkify.match(f),u=[],h=c.level,d=0,l=0;l<_.length;l++)g=_[l].url,v=t.md.normalizeLink(g),t.md.validateLink(v)&&(b=_[l].text,b=_[l].schema?"mailto:"!==_[l].schema||/^mailto:/i.test(b)?t.md.normalizeLinkText(b):t.md.normalizeLinkText("mailto:"+b).replace(/^mailto:/,""):t.md.normalizeLinkText("http://"+b).replace(/^http:\/\//,""),(p=_[l].index)>d&&((s=new t.Token("text","",0)).content=f.slice(d,p),s.level=h,u.push(s)),(s=new t.Token("link_open","a",1)).attrs=[["href",v]],s.level=h++,s.markup="linkify",s.info="auto",u.push(s),(s=new t.Token("text","",0)).content=b,s.level=h,u.push(s),(s=new t.Token("link_close","a",-1)).level=--h,s.markup="linkify",s.info="auto",u.push(s),d=_[l].lastIndex);d=0;e--)"text"!==(n=t[e]).type||r||(n.content=n.content.replace(i,s)),"link_open"===n.type&&"auto"===n.info&&r--,"link_close"===n.type&&"auto"===n.info&&r++}function u(t){var e,n,o=0;for(e=t.length-1;e>=0;e--)"text"!==(n=t[e]).type||o||r.test(n.content)&&(n.content=n.content.replace(/\+-/g,"±").replace(/\.{2,}/g,"…").replace(/([?!])…/g,"$1..").replace(/([?!]){4,}/g,"$1$1$1").replace(/,{2,}/g,",").replace(/(^|[^-])---([^-]|$)/gm,"$1—$2").replace(/(^|\s)--(\s|$)/gm,"$1–$2").replace(/(^|[^-\s])--([^-\s]|$)/gm,"$1–$2")),"link_open"===n.type&&"auto"===n.info&&o--,"link_close"===n.type&&"auto"===n.info&&o++}t.exports=function(t){var e;if(t.md.options.typographer)for(e=t.tokens.length-1;e>=0;e--)"inline"===t.tokens[e].type&&(o.test(t.tokens[e].content)&&c(t.tokens[e].children),r.test(t.tokens[e].content)&&u(t.tokens[e].children))}},function(t,e,n){"use strict";var r=n(1).isWhiteSpace,o=n(1).isPunctChar,i=n(1).isMdAsciiPunct,a=/['"]/,s=/['"]/g,c="’";function u(t,e,n){return t.substr(0,e)+n+t.substr(e+1)}function l(t,e){var n,a,l,f,p,d,h,m,g,v,b,_,y,E,k,x,w,C,A,T,S;for(A=[],n=0;n=0&&!(A[w].level<=h);w--);if(A.length=w+1,"text"===a.type){p=0,d=(l=a.content).length;t:for(;p=0)g=l.charCodeAt(f.index-1);else for(w=n-1;w>=0&&("softbreak"!==t[w].type&&"hardbreak"!==t[w].type);w--)if("text"===t[w].type){g=t[w].content.charCodeAt(t[w].content.length-1);break}if(v=32,p=48&&g<=57&&(x=k=!1),k&&x&&(k=!1,x=_),k||x){if(x)for(w=A.length-1;w>=0&&(m=A[w],!(A[w].level=0;e--)"inline"===t.tokens[e].type&&a.test(t.tokens[e].content)&&l(t.tokens[e].children,t)}},function(t,e,n){"use strict";var r=n(38);function o(t,e,n){this.src=t,this.env=n,this.tokens=[],this.inlineMode=!1,this.md=e}o.prototype.Token=r,t.exports=o},function(t,e,n){"use strict";var r=n(37),o=[["table",n(123),["paragraph","reference"]],["code",n(124)],["fence",n(125),["paragraph","reference","blockquote","list"]],["blockquote",n(126),["paragraph","reference","blockquote","list"]],["hr",n(127),["paragraph","reference","blockquote","list"]],["list",n(128),["paragraph","reference","blockquote"]],["reference",n(129)],["heading",n(130),["paragraph","reference","blockquote"]],["lheading",n(131)],["html_block",n(132),["paragraph","reference","blockquote"]],["paragraph",n(134)]];function i(){this.ruler=new r;for(var t=0;t=n))&&!(t.sCount[a]=c){t.line=n;break}for(r=0;rn)return!1;if(f=e+1,t.sCount[f]=4)return!1;if((u=t.bMarks[f]+t.tShift[f])>=t.eMarks[f])return!1;if(124!==(s=t.src.charCodeAt(u++))&&45!==s&&58!==s)return!1;for(;u=4)return!1;if((d=(p=i(c.replace(/^\||\|$/g,""))).length)>m.length)return!1;if(a)return!0;for((h=t.push("table_open","table",1)).map=v=[e,0],(h=t.push("thead_open","thead",1)).map=[e,e+1],(h=t.push("tr_open","tr",1)).map=[e,e+1],l=0;l=4);f++){for(p=i(c.replace(/^\||\|$/g,"")),h=t.push("tr_open","tr",1),l=0;l=4))break;o=++r}return t.line=o,(i=t.push("code_block","code",0)).content=t.getLines(e,o,4+t.blkIndent,!0),i.map=[e,t.line],!0}},function(t,e,n){"use strict";t.exports=function(t,e,n,r){var o,i,a,s,c,u,l,f=!1,p=t.bMarks[e]+t.tShift[e],d=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4)return!1;if(p+3>d)return!1;if(126!==(o=t.src.charCodeAt(p))&&96!==o)return!1;if(c=p,(i=(p=t.skipChars(p,o))-c)<3)return!1;if(l=t.src.slice(c,p),a=t.src.slice(p,d),96===o&&a.indexOf(String.fromCharCode(o))>=0)return!1;if(r)return!0;for(s=e;!(++s>=n)&&!((p=c=t.bMarks[s]+t.tShift[s])<(d=t.eMarks[s])&&t.sCount[s]=4||(p=t.skipChars(p,o))-c=4)return!1;if(62!==t.src.charCodeAt(A++))return!1;if(o)return!0;for(c=d=t.sCount[e]+A-(t.bMarks[e]+t.tShift[e]),32===t.src.charCodeAt(A)?(A++,c++,d++,i=!1,y=!0):9===t.src.charCodeAt(A)?(y=!0,(t.bsCount[e]+d)%4==3?(A++,c++,d++,i=!1):i=!0):y=!1,h=[t.bMarks[e]],t.bMarks[e]=A;A=T,b=[t.sCount[e]],t.sCount[e]=d-c,_=[t.tShift[e]],t.tShift[e]=A-t.bMarks[e],k=t.md.block.ruler.getRules("blockquote"),v=t.parentType,t.parentType="blockquote",w=!1,p=e+1;p=(T=t.eMarks[p])));p++)if(62!==t.src.charCodeAt(A++)||w){if(l)break;for(E=!1,s=0,u=k.length;s=T,m.push(t.bsCount[p]),t.bsCount[p]=t.sCount[p]+1+(y?1:0),b.push(t.sCount[p]),t.sCount[p]=d-c,_.push(t.tShift[p]),t.tShift[p]=A-t.bMarks[p]}for(g=t.blkIndent,t.blkIndent=0,(x=t.push("blockquote_open","blockquote",1)).markup=">",x.map=f=[e,0],t.md.block.tokenize(t,e,p),(x=t.push("blockquote_close","blockquote",-1)).markup=">",t.lineMax=C,t.parentType=v,f[1]=t.line,s=0;s<_.length;s++)t.bMarks[s+e]=h[s],t.tShift[s+e]=_[s],t.sCount[s+e]=b[s],t.bsCount[s+e]=m[s];return t.blkIndent=g,!0}},function(t,e,n){"use strict";var r=n(1).isSpace;t.exports=function(t,e,n,o){var i,a,s,c,u=t.bMarks[e]+t.tShift[e],l=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4)return!1;if(42!==(i=t.src.charCodeAt(u++))&&45!==i&&95!==i)return!1;for(a=1;u=a)return-1;if((n=t.src.charCodeAt(i++))<48||n>57)return-1;for(;;){if(i>=a)return-1;if(!((n=t.src.charCodeAt(i++))>=48&&n<=57)){if(41===n||46===n)break;return-1}if(i-o>=10)return-1}return i=4)return!1;if(t.listIndent>=0&&t.sCount[e]-t.listIndent>=4&&t.sCount[e]=t.blkIndent&&(D=!0),(S=i(t,e))>=0){if(p=!0,O=t.bMarks[e]+t.tShift[e],b=Number(t.src.substr(O,S-O-1)),D&&1!==b)return!1}else{if(!((S=o(t,e))>=0))return!1;p=!1}if(D&&t.skipSpaces(S)>=t.eMarks[e])return!1;if(v=t.src.charCodeAt(S-1),r)return!0;for(g=t.tokens.length,p?(I=t.push("ordered_list_open","ol",1),1!==b&&(I.attrs=[["start",b]])):I=t.push("bullet_list_open","ul",1),I.map=m=[e,0],I.markup=String.fromCharCode(v),y=e,R=!1,L=t.md.block.ruler.getRules("list"),x=t.parentType,t.parentType="list";y=_?1:E-f)>4&&(l=1),u=f+l,(I=t.push("list_item_open","li",1)).markup=String.fromCharCode(v),I.map=d=[e,0],A=t.tight,C=t.tShift[e],w=t.sCount[e],k=t.listIndent,t.listIndent=t.blkIndent,t.blkIndent=u,t.tight=!0,t.tShift[e]=s-t.bMarks[e],t.sCount[e]=E,s>=_&&t.isEmpty(e+1)?t.line=Math.min(t.line+2,n):t.md.block.tokenize(t,e,n,!0),t.tight&&!R||(M=!1),R=t.line-e>1&&t.isEmpty(t.line-1),t.blkIndent=t.listIndent,t.listIndent=k,t.tShift[e]=C,t.sCount[e]=w,t.tight=A,(I=t.push("list_item_close","li",-1)).markup=String.fromCharCode(v),y=e=t.line,d[1]=y,s=t.bMarks[e],y>=n)break;if(t.sCount[y]=4)break;for(N=!1,c=0,h=L.length;c=4)return!1;if(91!==t.src.charCodeAt(x))return!1;for(;++x3||t.sCount[C]<0)){for(_=!1,f=0,p=y.length;f=4)return!1;if(35!==(i=t.src.charCodeAt(u))||u>=l)return!1;for(a=1,i=t.src.charCodeAt(++u);35===i&&u6||uu&&r(t.src.charCodeAt(s-1))&&(l=s),t.line=e+1,(c=t.push("heading_open","h"+String(a),1)).markup="########".slice(0,a),c.map=[e,t.line],(c=t.push("inline","",0)).content=t.src.slice(u,l).trim(),c.map=[e,t.line],c.children=[],(c=t.push("heading_close","h"+String(a),-1)).markup="########".slice(0,a),!0))}},function(t,e,n){"use strict";t.exports=function(t,e,n){var r,o,i,a,s,c,u,l,f,p,d=e+1,h=t.md.block.ruler.getRules("paragraph");if(t.sCount[e]-t.blkIndent>=4)return!1;for(p=t.parentType,t.parentType="paragraph";d3)){if(t.sCount[d]>=t.blkIndent&&(c=t.bMarks[d]+t.tShift[d])<(u=t.eMarks[d])&&(45===(f=t.src.charCodeAt(c))||61===f)&&(c=t.skipChars(c,f),(c=t.skipSpaces(c))>=u)){l=61===f?1:2;break}if(!(t.sCount[d]<0)){for(o=!1,i=0,a=h.length;i|$))/i,/<\/(script|pre|style)>/i,!0],[/^/,!0],[/^<\?/,/\?>/,!0],[/^/,!0],[/^/,!0],[new RegExp("^|$))","i"),/^$/,!0],[new RegExp(o.source+"\\s*$"),/^$/,!1]];t.exports=function(t,e,n,r){var o,a,s,c,u=t.bMarks[e]+t.tShift[e],l=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4)return!1;if(!t.md.options.html)return!1;if(60!==t.src.charCodeAt(u))return!1;for(c=t.src.slice(u,l),o=0;o3||t.sCount[c]<0)){for(r=!1,o=0,i=u.length;o0&&this.level++,this.tokens.push(o),o},i.prototype.isEmpty=function(t){return this.bMarks[t]+this.tShift[t]>=this.eMarks[t]},i.prototype.skipEmptyLines=function(t){for(var e=this.lineMax;te;)if(!o(this.src.charCodeAt(--t)))return t+1;return t},i.prototype.skipChars=function(t,e){for(var n=this.src.length;tn;)if(e!==this.src.charCodeAt(--t))return t+1;return t},i.prototype.getLines=function(t,e,n,r){var i,a,s,c,u,l,f,p=t;if(t>=e)return"";for(l=new Array(e-t),i=0;pn?new Array(a-n+1).join(" ")+this.src.slice(c,u):this.src.slice(c,u)}return l.join("")},i.prototype.Token=r,t.exports=i},function(t,e,n){"use strict";var r=n(37),o=[["text",n(137)],["newline",n(138)],["escape",n(139)],["backticks",n(140)],["strikethrough",n(61).tokenize],["emphasis",n(62).tokenize],["link",n(141)],["image",n(142)],["autolink",n(143)],["html_inline",n(144)],["entity",n(145)]],i=[["balance_pairs",n(146)],["strikethrough",n(61).postProcess],["emphasis",n(62).postProcess],["text_collapse",n(147)]];function a(){var t;for(this.ruler=new r,t=0;t=i)break}else t.pending+=t.src[t.pos++]}t.pending&&t.pushPending()},a.prototype.parse=function(t,e,n,r){var o,i,a,s=new this.State(t,e,n,r);for(this.tokenize(s),a=(i=this.ruler2.getRules("")).length,o=0;o=0&&32===t.pending.charCodeAt(n)?n>=1&&32===t.pending.charCodeAt(n-1)?(t.pending=t.pending.replace(/ +$/,""),t.push("hardbreak","br",0)):(t.pending=t.pending.slice(0,-1),t.push("softbreak","br",0)):t.push("softbreak","br",0)),i++;i?@[]^_`{|}~-".split("").forEach((function(t){o[t.charCodeAt(0)]=1})),t.exports=function(t,e){var n,i=t.pos,a=t.posMax;if(92!==t.src.charCodeAt(i))return!1;if(++i=m)return!1;for(g=u,(l=t.md.helpers.parseLinkDestination(t.src,u,t.posMax)).ok&&(d=t.md.normalizeLink(l.str),t.md.validateLink(d)?u=l.pos:d=""),g=u;u=m||41!==t.src.charCodeAt(u))&&(v=!0),u++}if(v){if(void 0===t.env.references)return!1;if(u=0?a=t.src.slice(g,u++):u=s+1):u=s+1,a||(a=t.src.slice(c,s)),!(f=t.env.references[r(a)]))return t.pos=h,!1;d=f.href,p=f.title}return e||(t.pos=c,t.posMax=s,t.push("link_open","a",1).attrs=n=[["href",d]],p&&n.push(["title",p]),t.md.inline.tokenize(t),t.push("link_close","a",-1)),t.pos=u,t.posMax=m,!0}},function(t,e,n){"use strict";var r=n(1).normalizeReference,o=n(1).isSpace;t.exports=function(t,e){var n,i,a,s,c,u,l,f,p,d,h,m,g,v="",b=t.pos,_=t.posMax;if(33!==t.src.charCodeAt(t.pos))return!1;if(91!==t.src.charCodeAt(t.pos+1))return!1;if(u=t.pos+2,(c=t.md.helpers.parseLinkLabel(t,t.pos+1,!1))<0)return!1;if((l=c+1)<_&&40===t.src.charCodeAt(l)){for(l++;l<_&&(i=t.src.charCodeAt(l),o(i)||10===i);l++);if(l>=_)return!1;for(g=l,(p=t.md.helpers.parseLinkDestination(t.src,l,t.posMax)).ok&&(v=t.md.normalizeLink(p.str),t.md.validateLink(v)?l=p.pos:v=""),g=l;l<_&&(i=t.src.charCodeAt(l),o(i)||10===i);l++);if(p=t.md.helpers.parseLinkTitle(t.src,l,t.posMax),l<_&&g!==l&&p.ok)for(d=p.str,l=p.pos;l<_&&(i=t.src.charCodeAt(l),o(i)||10===i);l++);else d="";if(l>=_||41!==t.src.charCodeAt(l))return t.pos=b,!1;l++}else{if(void 0===t.env.references)return!1;if(l<_&&91===t.src.charCodeAt(l)?(g=l+1,(l=t.md.helpers.parseLinkLabel(t,l))>=0?s=t.src.slice(g,l++):l=c+1):l=c+1,s||(s=t.src.slice(u,c)),!(f=t.env.references[r(s)]))return t.pos=b,!1;v=f.href,d=f.title}return e||(a=t.src.slice(u,c),t.md.inline.parse(a,t.md,t.env,m=[]),(h=t.push("image","img",0)).attrs=n=[["src",v],["alt",""]],h.children=m,h.content=a,d&&n.push(["title",d])),t.pos=l,t.posMax=_,!0}},function(t,e,n){"use strict";var r=/^<([a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*)>/,o=/^<([a-zA-Z][a-zA-Z0-9+.\-]{1,31}):([^<>\x00-\x20]*)>/;t.exports=function(t,e){var n,i,a,s,c,u,l=t.pos;return 60===t.src.charCodeAt(l)&&(!((n=t.src.slice(l)).indexOf(">")<0)&&(o.test(n)?(s=(i=n.match(o))[0].slice(1,-1),c=t.md.normalizeLink(s),!!t.md.validateLink(c)&&(e||((u=t.push("link_open","a",1)).attrs=[["href",c]],u.markup="autolink",u.info="auto",(u=t.push("text","",0)).content=t.md.normalizeLinkText(s),(u=t.push("link_close","a",-1)).markup="autolink",u.info="auto"),t.pos+=i[0].length,!0)):!!r.test(n)&&(s=(a=n.match(r))[0].slice(1,-1),c=t.md.normalizeLink("mailto:"+s),!!t.md.validateLink(c)&&(e||((u=t.push("link_open","a",1)).attrs=[["href",c]],u.markup="autolink",u.info="auto",(u=t.push("text","",0)).content=t.md.normalizeLinkText(s),(u=t.push("link_close","a",-1)).markup="autolink",u.info="auto"),t.pos+=a[0].length,!0))))}},function(t,e,n){"use strict";var r=n(60).HTML_TAG_RE;t.exports=function(t,e){var n,o,i,a=t.pos;return!!t.md.options.html&&(i=t.posMax,!(60!==t.src.charCodeAt(a)||a+2>=i)&&(!(33!==(n=t.src.charCodeAt(a+1))&&63!==n&&47!==n&&!function(t){var e=32|t;return e>=97&&e<=122}(n))&&(!!(o=t.src.slice(a).match(r))&&(e||(t.push("html_inline","",0).content=t.src.slice(a,a+o[0].length)),t.pos+=o[0].length,!0))))}},function(t,e,n){"use strict";var r=n(55),o=n(1).has,i=n(1).isValidEntityCode,a=n(1).fromCodePoint,s=/^&#((?:x[a-f0-9]{1,6}|[0-9]{1,7}));/i,c=/^&([a-z][a-z0-9]{1,31});/i;t.exports=function(t,e){var n,u,l=t.pos,f=t.posMax;if(38!==t.src.charCodeAt(l))return!1;if(l+1=0;){if((o=i[n]).open&&o.marker===r.marker&&o.end<0&&o.level===r.level){var s=!1;if((o.close||r.open)&&void 0!==o.length&&void 0!==r.length&&(o.length+r.length)%3==0&&(o.length%3==0&&r.length%3==0||(s=!0)),!s){r.jump=e-n,r.open=!1,o.end=e,o.jump=0;break}}n-=o.jump+1}}},function(t,e,n){"use strict";t.exports=function(t){var e,n,r=0,o=t.tokens,i=t.tokens.length;for(e=n=0;e0&&r++,"text"===o[e].type&&e+10&&this.level++,this.pendingLevel=this.level,this.tokens.push(o),o},s.prototype.scanDelims=function(t,e){var n,r,s,c,u,l,f,p,d,h=t,m=!0,g=!0,v=this.posMax,b=this.src.charCodeAt(t);for(n=t>0?this.src.charCodeAt(t-1):32;h=3&&":"===t[e-3]?0:e>=3&&"/"===t[e-3]?0:r.match(n.re.no_http)[0].length:0}},"mailto:":{validate:function(t,e,n){var r=t.slice(e);return n.re.mailto||(n.re.mailto=new RegExp("^"+n.re.src_email_name+"@"+n.re.src_host_strict,"i")),n.re.mailto.test(r)?r.match(n.re.mailto)[0].length:0}}},u="a[cdefgilmnoqrstuwxz]|b[abdefghijmnorstvwyz]|c[acdfghiklmnoruvwxyz]|d[ejkmoz]|e[cegrstu]|f[ijkmor]|g[abdefghilmnpqrstuwy]|h[kmnrtu]|i[delmnoqrst]|j[emop]|k[eghimnprwyz]|l[abcikrstuvy]|m[acdeghklmnopqrstuvwxyz]|n[acefgilopruz]|om|p[aefghklmnrstwy]|qa|r[eosuw]|s[abcdeghijklmnortuvxyz]|t[cdfghjklmnortvwz]|u[agksyz]|v[aceginu]|w[fs]|y[et]|z[amw]",l="biz|com|edu|gov|net|org|pro|web|xxx|aero|asia|coop|info|museum|name|shop|рф".split("|");function f(t){var e=t.re=n(150)(t.__opts__),r=t.__tlds__.slice();function s(t){return t.replace("%TLDS%",e.src_tlds)}t.onCompile(),t.__tlds_replaced__||r.push(u),r.push(e.src_xn),e.src_tlds=r.join("|"),e.email_fuzzy=RegExp(s(e.tpl_email_fuzzy),"i"),e.link_fuzzy=RegExp(s(e.tpl_link_fuzzy),"i"),e.link_no_ip_fuzzy=RegExp(s(e.tpl_link_no_ip_fuzzy),"i"),e.host_fuzzy_test=RegExp(s(e.tpl_host_fuzzy_test),"i");var c=[];function l(t,e){throw new Error('(LinkifyIt) Invalid schema "'+t+'": '+e)}t.__compiled__={},Object.keys(t.__schemas__).forEach((function(e){var n=t.__schemas__[e];if(null!==n){var r={validate:null,link:null};if(t.__compiled__[e]=r,"[object Object]"===o(n))return!function(t){return"[object RegExp]"===o(t)}(n.validate)?i(n.validate)?r.validate=n.validate:l(e,n):r.validate=function(t){return function(e,n){var r=e.slice(n);return t.test(r)?r.match(t)[0].length:0}}(n.validate),void(i(n.normalize)?r.normalize=n.normalize:n.normalize?l(e,n):r.normalize=function(t,e){e.normalize(t)});!function(t){return"[object String]"===o(t)}(n)?l(e,n):c.push(e)}})),c.forEach((function(e){t.__compiled__[t.__schemas__[e]]&&(t.__compiled__[e].validate=t.__compiled__[t.__schemas__[e]].validate,t.__compiled__[e].normalize=t.__compiled__[t.__schemas__[e]].normalize)})),t.__compiled__[""]={validate:null,normalize:function(t,e){e.normalize(t)}};var f=Object.keys(t.__compiled__).filter((function(e){return e.length>0&&t.__compiled__[e]})).map(a).join("|");t.re.schema_test=RegExp("(^|(?!_)(?:[><|]|"+e.src_ZPCc+"))("+f+")","i"),t.re.schema_search=RegExp("(^|(?!_)(?:[><|]|"+e.src_ZPCc+"))("+f+")","ig"),t.re.pretest=RegExp("("+t.re.schema_test.source+")|("+t.re.host_fuzzy_test.source+")|@","i"),function(t){t.__index__=-1,t.__text_cache__=""}(t)}function p(t,e){var n=t.__index__,r=t.__last_index__,o=t.__text_cache__.slice(n,r);this.schema=t.__schema__.toLowerCase(),this.index=n+e,this.lastIndex=r+e,this.raw=o,this.text=o,this.url=o}function d(t,e){var n=new p(t,e);return t.__compiled__[n.schema].normalize(n,t),n}function h(t,e){if(!(this instanceof h))return new h(t,e);var n;e||(n=t,Object.keys(n||{}).reduce((function(t,e){return t||s.hasOwnProperty(e)}),!1)&&(e=t,t={})),this.__opts__=r({},s,e),this.__index__=-1,this.__last_index__=-1,this.__schema__="",this.__text_cache__="",this.__schemas__=r({},c,t),this.__compiled__={},this.__tlds__=l,this.__tlds_replaced__=!1,this.re={},f(this)}h.prototype.add=function(t,e){return this.__schemas__[t]=e,f(this),this},h.prototype.set=function(t){return this.__opts__=r(this.__opts__,t),this},h.prototype.test=function(t){if(this.__text_cache__=t,this.__index__=-1,!t.length)return!1;var e,n,r,o,i,a,s,c;if(this.re.schema_test.test(t))for((s=this.re.schema_search).lastIndex=0;null!==(e=s.exec(t));)if(o=this.testSchemaAt(t,e[2],s.lastIndex)){this.__schema__=e[2],this.__index__=e.index+e[1].length,this.__last_index__=e.index+e[0].length+o;break}return this.__opts__.fuzzyLink&&this.__compiled__["http:"]&&(c=t.search(this.re.host_fuzzy_test))>=0&&(this.__index__<0||c=0&&null!==(r=t.match(this.re.email_fuzzy))&&(i=r.index+r[1].length,a=r.index+r[0].length,(this.__index__<0||ithis.__last_index__)&&(this.__schema__="mailto:",this.__index__=i,this.__last_index__=a)),this.__index__>=0},h.prototype.pretest=function(t){return this.re.pretest.test(t)},h.prototype.testSchemaAt=function(t,e,n){return this.__compiled__[e.toLowerCase()]?this.__compiled__[e.toLowerCase()].validate(t,n,this):0},h.prototype.match=function(t){var e=0,n=[];this.__index__>=0&&this.__text_cache__===t&&(n.push(d(this,e)),e=this.__last_index__);for(var r=e?t.slice(e):t;this.test(r);)n.push(d(this,e)),r=r.slice(this.__last_index__),e+=this.__last_index__;return n.length?n:null},h.prototype.tlds=function(t,e){return t=Array.isArray(t)?t:[t],e?(this.__tlds__=this.__tlds__.concat(t).sort().filter((function(t,e,n){return t!==n[e-1]})).reverse(),f(this),this):(this.__tlds__=t.slice(),this.__tlds_replaced__=!0,f(this),this)},h.prototype.normalize=function(t){t.schema||(t.url="http://"+t.url),"mailto:"!==t.schema||/^mailto:/i.test(t.url)||(t.url="mailto:"+t.url)},h.prototype.onCompile=function(){},t.exports=h},function(t,e,n){"use strict";t.exports=function(t){var e={};e.src_Any=n(57).source,e.src_Cc=n(58).source,e.src_Z=n(59).source,e.src_P=n(36).source,e.src_ZPCc=[e.src_Z,e.src_P,e.src_Cc].join("|"),e.src_ZCc=[e.src_Z,e.src_Cc].join("|");return e.src_pseudo_letter="(?:(?![><|]|"+e.src_ZPCc+")"+e.src_Any+")",e.src_ip4="(?:(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)",e.src_auth="(?:(?:(?!"+e.src_ZCc+"|[@/\\[\\]()]).)+@)?",e.src_port="(?::(?:6(?:[0-4]\\d{3}|5(?:[0-4]\\d{2}|5(?:[0-2]\\d|3[0-5])))|[1-5]?\\d{1,4}))?",e.src_host_terminator="(?=$|[><|]|"+e.src_ZPCc+")(?!-|_|:\\d|\\.-|\\.(?!$|"+e.src_ZPCc+"))",e.src_path="(?:[/?#](?:(?!"+e.src_ZCc+"|[><|]|[()[\\]{}.,\"'?!\\-]).|\\[(?:(?!"+e.src_ZCc+"|\\]).)*\\]|\\((?:(?!"+e.src_ZCc+"|[)]).)*\\)|\\{(?:(?!"+e.src_ZCc+'|[}]).)*\\}|\\"(?:(?!'+e.src_ZCc+'|["]).)+\\"|\\\'(?:(?!'+e.src_ZCc+"|[']).)+\\'|\\'(?="+e.src_pseudo_letter+"|[-]).|\\.{2,4}[a-zA-Z0-9%/]|\\.(?!"+e.src_ZCc+"|[.]).|"+(t&&t["---"]?"\\-(?!--(?:[^-]|$))(?:-*)|":"\\-+|")+"\\,(?!"+e.src_ZCc+").|\\!(?!"+e.src_ZCc+"|[!]).|\\?(?!"+e.src_ZCc+"|[?]).)+|\\/)?",e.src_email_name='[\\-;:&=\\+\\$,\\.a-zA-Z0-9_][\\-;:&=\\+\\$,\\"\\.a-zA-Z0-9_]*',e.src_xn="xn--[a-z0-9\\-]{1,59}",e.src_domain_root="(?:"+e.src_xn+"|"+e.src_pseudo_letter+"{1,63})",e.src_domain="(?:"+e.src_xn+"|(?:"+e.src_pseudo_letter+")|(?:"+e.src_pseudo_letter+"(?:-|"+e.src_pseudo_letter+"){0,61}"+e.src_pseudo_letter+"))",e.src_host="(?:(?:(?:(?:"+e.src_domain+")\\.)*"+e.src_domain+"))",e.tpl_host_fuzzy="(?:"+e.src_ip4+"|(?:(?:(?:"+e.src_domain+")\\.)+(?:%TLDS%)))",e.tpl_host_no_ip_fuzzy="(?:(?:(?:"+e.src_domain+")\\.)+(?:%TLDS%))",e.src_host_strict=e.src_host+e.src_host_terminator,e.tpl_host_fuzzy_strict=e.tpl_host_fuzzy+e.src_host_terminator,e.src_host_port_strict=e.src_host+e.src_port+e.src_host_terminator,e.tpl_host_port_fuzzy_strict=e.tpl_host_fuzzy+e.src_port+e.src_host_terminator,e.tpl_host_port_no_ip_fuzzy_strict=e.tpl_host_no_ip_fuzzy+e.src_port+e.src_host_terminator,e.tpl_host_fuzzy_test="localhost|www\\.|\\.\\d{1,3}\\.|(?:\\.(?:%TLDS%)(?:"+e.src_ZPCc+"|>|$))",e.tpl_email_fuzzy='(^|[><|]|"|\\(|'+e.src_ZCc+")("+e.src_email_name+"@"+e.tpl_host_fuzzy_strict+")",e.tpl_link_fuzzy="(^|(?![.:/\\-_@])(?:[$+<=>^`||]|"+e.src_ZPCc+"))((?![$+<=>^`||])"+e.tpl_host_port_fuzzy_strict+e.src_path+")",e.tpl_link_no_ip_fuzzy="(^|(?![.:/\\-_@])(?:[$+<=>^`||]|"+e.src_ZPCc+"))((?![$+<=>^`||])"+e.tpl_host_port_no_ip_fuzzy_strict+e.src_path+")",e}},function(t,e,n){"use strict";t.exports={options:{html:!1,xhtmlOut:!1,breaks:!1,langPrefix:"language-",linkify:!1,typographer:!1,quotes:"“”‘’",highlight:null,maxNesting:100},components:{core:{},block:{},inline:{}}}},function(t,e,n){"use strict";t.exports={options:{html:!1,xhtmlOut:!1,breaks:!1,langPrefix:"language-",linkify:!1,typographer:!1,quotes:"“”‘’",highlight:null,maxNesting:20},components:{core:{rules:["normalize","block","inline"]},block:{rules:["paragraph"]},inline:{rules:["text"],rules2:["balance_pairs","text_collapse"]}}}},function(t,e,n){"use strict";t.exports={options:{html:!0,xhtmlOut:!0,breaks:!1,langPrefix:"language-",linkify:!1,typographer:!1,quotes:"“”‘’",highlight:null,maxNesting:20},components:{core:{rules:["normalize","block","inline"]},block:{rules:["blockquote","code","fence","heading","hr","html_block","lheading","list","reference","paragraph"]},inline:{rules:["autolink","backticks","emphasis","entity","escape","html_inline","image","link","newline","text"],rules2:["balance_pairs","emphasis","text_collapse"]}}}},function(t,e,n){(function(t){var r=void 0!==t&&t||"undefined"!=typeof self&&self||window,o=Function.prototype.apply;function i(t,e){this._id=t,this._clearFn=e}e.setTimeout=function(){return new i(o.call(setTimeout,r,arguments),clearTimeout)},e.setInterval=function(){return new i(o.call(setInterval,r,arguments),clearInterval)},e.clearTimeout=e.clearInterval=function(t){t&&t.close()},i.prototype.unref=i.prototype.ref=function(){},i.prototype.close=function(){this._clearFn.call(r,this._id)},e.enroll=function(t,e){clearTimeout(t._idleTimeoutId),t._idleTimeout=e},e.unenroll=function(t){clearTimeout(t._idleTimeoutId),t._idleTimeout=-1},e._unrefActive=e.active=function(t){clearTimeout(t._idleTimeoutId);var e=t._idleTimeout;e>=0&&(t._idleTimeoutId=setTimeout((function(){t._onTimeout&&t._onTimeout()}),e))},n(155),e.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==t&&t.setImmediate||this&&this.setImmediate,e.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==t&&t.clearImmediate||this&&this.clearImmediate}).call(this,n(11))},function(t,e,n){(function(t,e){!function(t,n){"use strict";if(!t.setImmediate){var r,o,i,a,s,c=1,u={},l=!1,f=t.document,p=Object.getPrototypeOf&&Object.getPrototypeOf(t);p=p&&p.setTimeout?p:t,"[object process]"==={}.toString.call(t.process)?r=function(t){e.nextTick((function(){h(t)}))}:!function(){if(t.postMessage&&!t.importScripts){var e=!0,n=t.onmessage;return t.onmessage=function(){e=!1},t.postMessage("","*"),t.onmessage=n,e}}()?t.MessageChannel?((i=new MessageChannel).port1.onmessage=function(t){h(t.data)},r=function(t){i.port2.postMessage(t)}):f&&"onreadystatechange"in f.createElement("script")?(o=f.documentElement,r=function(t){var e=f.createElement("script");e.onreadystatechange=function(){h(t),e.onreadystatechange=null,o.removeChild(e),e=null},o.appendChild(e)}):r=function(t){setTimeout(h,0,t)}:(a="setImmediate$"+Math.random()+"$",s=function(e){e.source===t&&"string"==typeof e.data&&0===e.data.indexOf(a)&&h(+e.data.slice(a.length))},t.addEventListener?t.addEventListener("message",s,!1):t.attachEvent("onmessage",s),r=function(e){t.postMessage(a+e,"*")}),p.setImmediate=function(t){"function"!=typeof t&&(t=new Function(""+t));for(var e=new Array(arguments.length-1),n=0;n1)for(var n=1;n1&&void 0!==arguments[1]&&arguments[1];if("string"!=typeof t||!t.trim())throw new Error("Invalid url.");return e&&("object"!==(void 0===e?"undefined":r(e))&&(e={stripFragment:!1}),t=i(t,e)),o(t)}},function(t,e,n){"use strict";var r=n(64),o=n(65),i=n(66);t.exports=function(t){t=(t||"").trim();var e={protocols:r(t),protocol:null,port:null,resource:"",user:"",pathname:"",hash:"",search:"",href:t,query:Object.create(null)},n=t.indexOf("://"),a=null,s=null;t.startsWith(".")&&(t.startsWith("./")&&(t=t.substring(2)),e.pathname=t,e.protocol="file");var c=t.charAt(1);return e.protocol||(e.protocol=e.protocols[0],e.protocol||(o(t)?e.protocol="ssh":"/"===c||"~"===c?(t=t.substring(2),e.protocol="file"):e.protocol="file")),-1!==n&&(t=t.substring(n+3)),s=t.split("/"),"file"!==e.protocol?e.resource=s.shift():e.resource="",2===(a=e.resource.split("@")).length&&(e.user=a[0],e.resource=a[1]),2===(a=e.resource.split(":")).length&&(e.resource=a[0],a[1]?(e.port=Number(a[1]),isNaN(e.port)&&(e.port=null,s.unshift(a[1]))):e.port=null),s=s.filter(Boolean),"file"===e.protocol?e.pathname=e.href:e.pathname=e.pathname||("file"!==e.protocol||"/"===e.href[0]?"/":"")+s.join("/"),2===(a=e.pathname.split("#")).length&&(e.pathname=a[0],e.hash=a[1]),2===(a=e.pathname.split("?")).length&&(e.pathname=a[0],e.search=a[1]),e.query=i.parse(e.search),e.href=e.href.replace(/\/$/,""),e.pathname=e.pathname.replace(/\/$/,""),e}},function(t,e,n){"use strict";function r(t,e){return Object.prototype.hasOwnProperty.call(t,e)}t.exports=function(t,e,n,i){e=e||"&",n=n||"=";var a={};if("string"!=typeof t||0===t.length)return a;var s=/\+/g;t=t.split(e);var c=1e3;i&&"number"==typeof i.maxKeys&&(c=i.maxKeys);var u=t.length;c>0&&u>c&&(u=c);for(var l=0;l=0?(f=m.substr(0,g),p=m.substr(g+1)):(f=m,p=""),d=decodeURIComponent(f),h=decodeURIComponent(p),r(a,d)?o(a[d])?a[d].push(h):a[d]=[a[d],h]:a[d]=h}return a};var o=Array.isArray||function(t){return"[object Array]"===Object.prototype.toString.call(t)}},function(t,e,n){"use strict";var r=function(t){switch(typeof t){case"string":return t;case"boolean":return t?"true":"false";case"number":return isFinite(t)?t:"";default:return""}};t.exports=function(t,e,n,s){return e=e||"&",n=n||"=",null===t&&(t=void 0),"object"==typeof t?i(a(t),(function(a){var s=encodeURIComponent(r(a))+n;return o(t[a])?i(t[a],(function(t){return s+encodeURIComponent(r(t))})).join(e):s+encodeURIComponent(r(t[a]))})).join(e):s?encodeURIComponent(r(s))+n+encodeURIComponent(r(t)):""};var o=Array.isArray||function(t){return"[object Array]"===Object.prototype.toString.call(t)};function i(t,e){if(t.map)return t.map(e);for(var n=[],r=0;re.some(e=>e instanceof RegExp?e.test(t):e===t);t.exports=(t,e)=>{e=Object.assign({defaultProtocol:"http:",normalizeProtocol:!0,forceHttp:!1,forceHttps:!1,stripHash:!0,stripWWW:!0,removeQueryParameters:[/^utm_\w+/i],removeTrailingSlash:!0,removeDirectoryIndex:!1,sortQueryParameters:!0},e),Reflect.has(e,"normalizeHttps")&&(e.forceHttp=e.normalizeHttps),Reflect.has(e,"normalizeHttp")&&(e.forceHttps=e.normalizeHttp),Reflect.has(e,"stripFragment")&&(e.stripHash=e.stripFragment);const n=(t=t.trim()).startsWith("//");!n&&/^\.*\//.test(t)||(t=t.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,e.defaultProtocol));const i=new r(t);if(e.forceHttp&&e.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(e.forceHttp&&"https:"===i.protocol&&(i.protocol="http:"),e.forceHttps&&"http:"===i.protocol&&(i.protocol="https:"),e.stripHash&&(i.hash=""),i.pathname&&(i.pathname=i.pathname.replace(/((?![https?:]).)\/{2,}/g,(t,e)=>/^(?!\/)/g.test(e)?`${e}/`:"/")),i.pathname&&(i.pathname=decodeURI(i.pathname)),!0===e.removeDirectoryIndex&&(e.removeDirectoryIndex=[/^index\.[a-z]+$/]),Array.isArray(e.removeDirectoryIndex)&&e.removeDirectoryIndex.length>0){let t=i.pathname.split("/");const n=t[t.length-1];o(n,e.removeDirectoryIndex)&&(t=t.slice(0,t.length-1),i.pathname=t.slice(1).join("/")+"/")}if(i.hostname&&(i.hostname=i.hostname.replace(/\.$/,""),e.stripWWW&&/^www\.([a-z\-\d]{2,63})\.([a-z\.]{2,5})$/.test(i.hostname)&&(i.hostname=i.hostname.replace(/^www\./,""))),Array.isArray(e.removeQueryParameters))for(const t of[...i.searchParams.keys()])o(t,e.removeQueryParameters)&&i.searchParams.delete(t);return e.sortQueryParameters&&i.searchParams.sort(),t=i.toString(),(e.removeTrailingSlash||"/"===i.pathname)&&(t=t.replace(/\/$/,"")),n&&!e.normalizeProtocol&&(t=t.replace(/^http:\/\//,"//")),t}},function(t,e,n){"use strict";var r=n(63),o=n(170);function i(){this.protocol=null,this.slashes=null,this.auth=null,this.host=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.query=null,this.pathname=null,this.path=null,this.href=null}e.parse=_,e.resolve=function(t,e){return _(t,!1,!0).resolve(e)},e.resolveObject=function(t,e){return t?_(t,!1,!0).resolveObject(e):e},e.format=function(t){o.isString(t)&&(t=_(t));return t instanceof i?t.format():i.prototype.format.call(t)},e.Url=i;var a=/^([a-z0-9.+-]+:)/i,s=/:[0-9]*$/,c=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,u=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r","\n","\t"]),l=["'"].concat(u),f=["%","/","?",";","#"].concat(l),p=["/","?","#"],d=/^[+a-z0-9A-Z_-]{0,63}$/,h=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,m={javascript:!0,"javascript:":!0},g={javascript:!0,"javascript:":!0},v={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},b=n(66);function _(t,e,n){if(t&&o.isObject(t)&&t instanceof i)return t;var r=new i;return r.parse(t,e,n),r}i.prototype.parse=function(t,e,n){if(!o.isString(t))throw new TypeError("Parameter 'url' must be a string, not "+typeof t);var i=t.indexOf("?"),s=-1!==i&&i127?I+="x":I+=L[D];if(!I.match(d)){var P=O.slice(0,T),j=O.slice(T+1),U=L.match(h);U&&(P.push(U[1]),j.unshift(U[2])),j.length&&(_="/"+j.join(".")+_),this.hostname=P.join(".");break}}}this.hostname.length>255?this.hostname="":this.hostname=this.hostname.toLowerCase(),R||(this.hostname=r.toASCII(this.hostname));var F=this.port?":"+this.port:"",$=this.hostname||"";this.host=$+F,this.href+=this.host,R&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),"/"!==_[0]&&(_="/"+_))}if(!m[k])for(T=0,N=l.length;T0)&&n.host.split("@"))&&(n.auth=R.shift(),n.host=n.hostname=R.shift());return n.search=t.search,n.query=t.query,o.isNull(n.pathname)&&o.isNull(n.search)||(n.path=(n.pathname?n.pathname:"")+(n.search?n.search:"")),n.href=n.format(),n}if(!x.length)return n.pathname=null,n.search?n.path="/"+n.search:n.path=null,n.href=n.format(),n;for(var C=x.slice(-1)[0],A=(n.host||t.host||x.length>1)&&("."===C||".."===C)||""===C,T=0,S=x.length;S>=0;S--)"."===(C=x[S])?x.splice(S,1):".."===C?(x.splice(S,1),T++):T&&(x.splice(S,1),T--);if(!E&&!k)for(;T--;T)x.unshift("..");!E||""===x[0]||x[0]&&"/"===x[0].charAt(0)||x.unshift(""),A&&"/"!==x.join("/").substr(-1)&&x.push("");var R,O=""===x[0]||x[0]&&"/"===x[0].charAt(0);w&&(n.hostname=n.host=O?"":x.length?x.shift():"",(R=!!(n.host&&n.host.indexOf("@")>0)&&n.host.split("@"))&&(n.auth=R.shift(),n.host=n.hostname=R.shift()));return(E=E||n.host&&x.length)&&!O&&x.unshift(""),x.length?n.pathname=x.join("/"):(n.pathname=null,n.path=null),o.isNull(n.pathname)&&o.isNull(n.search)||(n.path=(n.pathname?n.pathname:"")+(n.search?n.search:"")),n.auth=t.auth||n.auth,n.slashes=n.slashes||t.slashes,n.href=n.format(),n},i.prototype.parseHost=function(){var t=this.host,e=s.exec(t);e&&(":"!==(e=e[0])&&(this.port=e.substr(1)),t=t.substr(0,t.length-e.length)),t&&(this.hostname=t)}},function(t,e,n){"use strict";t.exports={isString:function(t){return"string"==typeof t},isObject:function(t){return"object"==typeof t&&null!==t},isNull:function(t){return null===t},isNullOrUndefined:function(t){return null==t}}},function(t,e,n){var r=n(67),o=n(68),i=n(69),a=n(16);t.exports=function(t){return function(e){e=a(e);var n=o(e)?i(e):void 0,s=n?n[0]:e.charAt(0),c=n?r(n,1).join(""):e.slice(1);return s[t]()+c}}},function(t,e){t.exports=function(t,e,n){var r=-1,o=t.length;e<0&&(e=-e>o?0:o+e),(n=n>o?o:n)<0&&(n+=o),o=e>n?0:n-e>>>0,e>>>=0;for(var i=Array(o);++r-1;);return n}},function(t,e){t.exports=function(t,e,n,r){for(var o=t.length,i=n+(r?1:-1);r?i--:++i0;){if("top-level"!==this.indentTypes.pop())break}},t}();e.default=a,t.exports=e.default},function(t,e,n){var r=n(187),o=n(188),i=n(189),a=n(16);t.exports=function(t,e,n){return e=(n?o(t,e,n):void 0===e)?1:i(e),r(a(t),e)}},function(t,e){var n=9007199254740991,r=Math.floor;t.exports=function(t,e){var o="";if(!t||e<1||e>n)return o;do{e%2&&(o+=t),(e=r(e/2))&&(t+=t)}while(e);return o}},function(t,e,n){var r=n(40),o=n(41),i=n(43),a=n(19);t.exports=function(t,e,n){if(!a(n))return!1;var s=typeof e;return!!("number"==s?o(n)&&i(e,n.length):"string"==s&&e in n)&&r(n[e],t)}},function(t,e,n){var r=n(190);t.exports=function(t){var e=r(t),n=e%1;return e==e?n?e-n:e:0}},function(t,e,n){var r=n(191),o=1/0,i=17976931348623157e292;t.exports=function(t){return t?(t=r(t))===o||t===-o?(t<0?-1:1)*i:t==t?t:0:0===t?t:0}},function(t,e,n){var r=n(19),o=n(23),i=NaN,a=/^\s+|\s+$/g,s=/^[-+]0x[0-9a-f]+$/i,c=/^0b[01]+$/i,u=/^0o[0-7]+$/i,l=parseInt;t.exports=function(t){if("number"==typeof t)return t;if(o(t))return i;if(r(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=r(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(a,"");var n=c.test(t);return n||u.test(t)?l(t.slice(2),n?2:8):s.test(t)?i:+t}},function(t,e){t.exports=function(t){var e=null==t?0:t.length;return e?t[e-1]:void 0}},function(t,e,n){"use strict";e.__esModule=!0;var r,o=n(39),i=(r=o)&&r.__esModule?r:{default:r};var a=function(){function t(){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.level=0}return t.prototype.beginIfPossible=function(t,e){0===this.level&&this.isInlineBlock(t,e)?this.level=1:this.level>0?this.level++:this.level=0},t.prototype.end=function(){this.level--},t.prototype.isActive=function(){return this.level>0},t.prototype.isInlineBlock=function(t,e){for(var n=0,r=0,o=e;o50)return!1;if(a.type===i.default.OPEN_PAREN)r++;else if(a.type===i.default.CLOSE_PAREN&&0===--r)return!0;if(this.isForbiddenToken(a))return!1}return!1},t.prototype.isForbiddenToken=function(t){var e=t.type,n=t.value;return e===i.default.RESERVED_TOPLEVEL||e===i.default.RESERVED_NEWLINE||e===i.default.COMMENT||e===i.default.BLOCK_COMMENT||";"===n},t}();e.default=a,t.exports=e.default},function(t,e,n){"use strict";e.__esModule=!0;var r=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.params=e,this.index=0}return t.prototype.get=function(t){var e=t.key,n=t.value;return this.params?e?this.params[e]:this.params[this.index++]:n},t}();e.default=r,t.exports=e.default},function(t,e,n){var r=n(74),o=n(76),i=n(45),a=n(9),s=n(41),c=n(46),u=n(75),l=n(47),f="[object Map]",p="[object Set]",d=Object.prototype.hasOwnProperty;t.exports=function(t){if(null==t)return!0;if(s(t)&&(a(t)||"string"==typeof t||"function"==typeof t.splice||c(t)||l(t)||i(t)))return!t.length;var e=o(t);if(e==f||e==p)return!t.size;if(u(t))return!r(t).length;for(var n in t)if(d.call(t,n))return!1;return!0}},function(t,e,n){var r=n(197)(Object.keys,Object);t.exports=r},function(t,e){t.exports=function(t,e){return function(n){return t(e(n))}}},function(t,e,n){var r=n(12)(n(8),"DataView");t.exports=r},function(t,e,n){var r=n(73),o=n(200),i=n(19),a=n(77),s=/^\[object .+?Constructor\]$/,c=Function.prototype,u=Object.prototype,l=c.toString,f=u.hasOwnProperty,p=RegExp("^"+l.call(f).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");t.exports=function(t){return!(!i(t)||o(t))&&(r(t)?p:s).test(a(t))}},function(t,e,n){var r,o=n(201),i=(r=/[^.]+$/.exec(o&&o.keys&&o.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"";t.exports=function(t){return!!i&&i in t}},function(t,e,n){var r=n(8)["__core-js_shared__"];t.exports=r},function(t,e){t.exports=function(t,e){return null==t?void 0:t[e]}},function(t,e,n){var r=n(12)(n(8),"Promise");t.exports=r},function(t,e,n){var r=n(12)(n(8),"WeakMap");t.exports=r},function(t,e,n){var r=n(17),o=n(18),i="[object Arguments]";t.exports=function(t){return o(t)&&r(t)==i}},function(t,e){t.exports=function(){return!1}},function(t,e,n){var r=n(17),o=n(42),i=n(18),a={};a["[object Float32Array]"]=a["[object Float64Array]"]=a["[object Int8Array]"]=a["[object Int16Array]"]=a["[object Int32Array]"]=a["[object Uint8Array]"]=a["[object Uint8ClampedArray]"]=a["[object Uint16Array]"]=a["[object Uint32Array]"]=!0,a["[object Arguments]"]=a["[object Array]"]=a["[object ArrayBuffer]"]=a["[object Boolean]"]=a["[object DataView]"]=a["[object Date]"]=a["[object Error]"]=a["[object Function]"]=a["[object Map]"]=a["[object Number]"]=a["[object Object]"]=a["[object RegExp]"]=a["[object Set]"]=a["[object String]"]=a["[object WeakMap]"]=!1,t.exports=function(t){return i(t)&&o(t.length)&&!!a[r(t)]}},function(t,e){t.exports=function(t){return function(e){return t(e)}}},function(t,e,n){(function(t){var r=n(71),o=e&&!e.nodeType&&e,i=o&&"object"==typeof t&&t&&!t.nodeType&&t,a=i&&i.exports===o&&r.process,s=function(){try{var t=i&&i.require&&i.require("util").types;return t||a&&a.binding&&a.binding("util")}catch(t){}}();t.exports=s}).call(this,n(21)(t))},function(t,e,n){var r=n(16),o=/[\\^$.*+?()[\]{}|]/g,i=RegExp(o.source);t.exports=function(t){return(t=r(t))&&i.test(t)?t.replace(o,"\\$&"):t}},function(t,e,n){"use strict";e.__esModule=!0;var r=i(n(24)),o=i(n(25));function i(t){return t&&t.__esModule?t:{default:t}}var a=["ALL","ALTER","ANALYZE","AND","ANY","ARRAY","AS","ASC","BEGIN","BETWEEN","BINARY","BOOLEAN","BREAK","BUCKET","BUILD","BY","CALL","CASE","CAST","CLUSTER","COLLATE","COLLECTION","COMMIT","CONNECT","CONTINUE","CORRELATE","COVER","CREATE","DATABASE","DATASET","DATASTORE","DECLARE","DECREMENT","DELETE","DERIVED","DESC","DESCRIBE","DISTINCT","DO","DROP","EACH","ELEMENT","ELSE","END","EVERY","EXCEPT","EXCLUDE","EXECUTE","EXISTS","EXPLAIN","FALSE","FETCH","FIRST","FLATTEN","FOR","FORCE","FROM","FUNCTION","GRANT","GROUP","GSI","HAVING","IF","IGNORE","ILIKE","IN","INCLUDE","INCREMENT","INDEX","INFER","INLINE","INNER","INSERT","INTERSECT","INTO","IS","JOIN","KEY","KEYS","KEYSPACE","KNOWN","LAST","LEFT","LET","LETTING","LIKE","LIMIT","LSM","MAP","MAPPING","MATCHED","MATERIALIZED","MERGE","MINUS","MISSING","NAMESPACE","NEST","NOT","NULL","NUMBER","OBJECT","OFFSET","ON","OPTION","OR","ORDER","OUTER","OVER","PARSE","PARTITION","PASSWORD","PATH","POOL","PREPARE","PRIMARY","PRIVATE","PRIVILEGE","PROCEDURE","PUBLIC","RAW","REALM","REDUCE","RENAME","RETURN","RETURNING","REVOKE","RIGHT","ROLE","ROLLBACK","SATISFIES","SCHEMA","SELECT","SELF","SEMI","SET","SHOW","SOME","START","STATISTICS","STRING","SYSTEM","THEN","TO","TRANSACTION","TRIGGER","TRUE","TRUNCATE","UNDER","UNION","UNIQUE","UNKNOWN","UNNEST","UNSET","UPDATE","UPSERT","USE","USER","USING","VALIDATE","VALUE","VALUED","VALUES","VIA","VIEW","WHEN","WHERE","WHILE","WITH","WITHIN","WORK","XOR"],s=["DELETE FROM","EXCEPT ALL","EXCEPT","EXPLAIN DELETE FROM","EXPLAIN UPDATE","EXPLAIN UPSERT","FROM","GROUP BY","HAVING","INFER","INSERT INTO","INTERSECT ALL","INTERSECT","LET","LIMIT","MERGE","NEST","ORDER BY","PREPARE","SELECT","SET CURRENT SCHEMA","SET SCHEMA","SET","UNION ALL","UNION","UNNEST","UPDATE","UPSERT","USE KEYS","VALUES","WHERE"],c=["AND","INNER JOIN","JOIN","LEFT JOIN","LEFT OUTER JOIN","OR","OUTER JOIN","RIGHT JOIN","RIGHT OUTER JOIN","XOR"],u=void 0,l=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.cfg=e}return t.prototype.format=function(t){return u||(u=new o.default({reservedWords:a,reservedToplevelWords:s,reservedNewlineWords:c,stringTypes:['""',"''","``"],openParens:["(","[","{"],closeParens:[")","]","}"],namedPlaceholderTypes:["$"],lineCommentTypes:["#","--"]})),new r.default(this.cfg,u).format(t)},t}();e.default=l,t.exports=e.default},function(t,e,n){"use strict";e.__esModule=!0;var r=i(n(24)),o=i(n(25));function i(t){return t&&t.__esModule?t:{default:t}}var a=["A","ACCESSIBLE","AGENT","AGGREGATE","ALL","ALTER","ANY","ARRAY","AS","ASC","AT","ATTRIBUTE","AUTHID","AVG","BETWEEN","BFILE_BASE","BINARY_INTEGER","BINARY","BLOB_BASE","BLOCK","BODY","BOOLEAN","BOTH","BOUND","BULK","BY","BYTE","C","CALL","CALLING","CASCADE","CASE","CHAR_BASE","CHAR","CHARACTER","CHARSET","CHARSETFORM","CHARSETID","CHECK","CLOB_BASE","CLONE","CLOSE","CLUSTER","CLUSTERS","COALESCE","COLAUTH","COLLECT","COLUMNS","COMMENT","COMMIT","COMMITTED","COMPILED","COMPRESS","CONNECT","CONSTANT","CONSTRUCTOR","CONTEXT","CONTINUE","CONVERT","COUNT","CRASH","CREATE","CREDENTIAL","CURRENT","CURRVAL","CURSOR","CUSTOMDATUM","DANGLING","DATA","DATE_BASE","DATE","DAY","DECIMAL","DEFAULT","DEFINE","DELETE","DESC","DETERMINISTIC","DIRECTORY","DISTINCT","DO","DOUBLE","DROP","DURATION","ELEMENT","ELSIF","EMPTY","ESCAPE","EXCEPTIONS","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXTENDS","EXTERNAL","EXTRACT","FALSE","FETCH","FINAL","FIRST","FIXED","FLOAT","FOR","FORALL","FORCE","FROM","FUNCTION","GENERAL","GOTO","GRANT","GROUP","HASH","HEAP","HIDDEN","HOUR","IDENTIFIED","IF","IMMEDIATE","IN","INCLUDING","INDEX","INDEXES","INDICATOR","INDICES","INFINITE","INSTANTIABLE","INT","INTEGER","INTERFACE","INTERVAL","INTO","INVALIDATE","IS","ISOLATION","JAVA","LANGUAGE","LARGE","LEADING","LENGTH","LEVEL","LIBRARY","LIKE","LIKE2","LIKE4","LIKEC","LIMITED","LOCAL","LOCK","LONG","MAP","MAX","MAXLEN","MEMBER","MERGE","MIN","MINUS","MINUTE","MLSLABEL","MOD","MODE","MONTH","MULTISET","NAME","NAN","NATIONAL","NATIVE","NATURAL","NATURALN","NCHAR","NEW","NEXTVAL","NOCOMPRESS","NOCOPY","NOT","NOWAIT","NULL","NULLIF","NUMBER_BASE","NUMBER","OBJECT","OCICOLL","OCIDATE","OCIDATETIME","OCIDURATION","OCIINTERVAL","OCILOBLOCATOR","OCINUMBER","OCIRAW","OCIREF","OCIREFCURSOR","OCIROWID","OCISTRING","OCITYPE","OF","OLD","ON","ONLY","OPAQUE","OPEN","OPERATOR","OPTION","ORACLE","ORADATA","ORDER","ORGANIZATION","ORLANY","ORLVARY","OTHERS","OUT","OVERLAPS","OVERRIDING","PACKAGE","PARALLEL_ENABLE","PARAMETER","PARAMETERS","PARENT","PARTITION","PASCAL","PCTFREE","PIPE","PIPELINED","PLS_INTEGER","PLUGGABLE","POSITIVE","POSITIVEN","PRAGMA","PRECISION","PRIOR","PRIVATE","PROCEDURE","PUBLIC","RAISE","RANGE","RAW","READ","REAL","RECORD","REF","REFERENCE","RELEASE","RELIES_ON","REM","REMAINDER","RENAME","RESOURCE","RESULT_CACHE","RESULT","RETURN","RETURNING","REVERSE","REVOKE","ROLLBACK","ROW","ROWID","ROWNUM","ROWTYPE","SAMPLE","SAVE","SAVEPOINT","SB1","SB2","SB4","SECOND","SEGMENT","SELF","SEPARATE","SEQUENCE","SERIALIZABLE","SHARE","SHORT","SIZE_T","SIZE","SMALLINT","SOME","SPACE","SPARSE","SQL","SQLCODE","SQLDATA","SQLERRM","SQLNAME","SQLSTATE","STANDARD","START","STATIC","STDDEV","STORED","STRING","STRUCT","STYLE","SUBMULTISET","SUBPARTITION","SUBSTITUTABLE","SUBTYPE","SUCCESSFUL","SUM","SYNONYM","SYSDATE","TABAUTH","TABLE","TDO","THE","THEN","TIME","TIMESTAMP","TIMEZONE_ABBR","TIMEZONE_HOUR","TIMEZONE_MINUTE","TIMEZONE_REGION","TO","TRAILING","TRANSACTION","TRANSACTIONAL","TRIGGER","TRUE","TRUSTED","TYPE","UB1","UB2","UB4","UID","UNDER","UNIQUE","UNPLUG","UNSIGNED","UNTRUSTED","USE","USER","USING","VALIDATE","VALIST","VALUE","VARCHAR","VARCHAR2","VARIABLE","VARIANCE","VARRAY","VARYING","VIEW","VIEWS","VOID","WHENEVER","WHILE","WITH","WORK","WRAPPED","WRITE","YEAR","ZONE"],s=["ADD","ALTER COLUMN","ALTER TABLE","BEGIN","CONNECT BY","DECLARE","DELETE FROM","DELETE","END","EXCEPT","EXCEPTION","FETCH FIRST","FROM","GROUP BY","HAVING","INSERT INTO","INSERT","INTERSECT","LIMIT","LOOP","MODIFY","ORDER BY","SELECT","SET CURRENT SCHEMA","SET SCHEMA","SET","START WITH","UNION ALL","UNION","UPDATE","VALUES","WHERE"],c=["AND","CROSS APPLY","CROSS JOIN","ELSE","END","INNER JOIN","JOIN","LEFT JOIN","LEFT OUTER JOIN","OR","OUTER APPLY","OUTER JOIN","RIGHT JOIN","RIGHT OUTER JOIN","WHEN","XOR"],u=void 0,l=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.cfg=e}return t.prototype.format=function(t){return u||(u=new o.default({reservedWords:a,reservedToplevelWords:s,reservedNewlineWords:c,stringTypes:['""',"N''","''","``"],openParens:["(","CASE"],closeParens:[")","END"],indexedPlaceholderTypes:["?"],namedPlaceholderTypes:[":"],lineCommentTypes:["--"],specialWordChars:["_","$","#",".","@"]})),new r.default(this.cfg,u).format(t)},t}();e.default=l,t.exports=e.default},function(t,e,n){"use strict";e.__esModule=!0;var r=i(n(24)),o=i(n(25));function i(t){return t&&t.__esModule?t:{default:t}}var a=["ACCESSIBLE","ACTION","AGAINST","AGGREGATE","ALGORITHM","ALL","ALTER","ANALYSE","ANALYZE","AS","ASC","AUTOCOMMIT","AUTO_INCREMENT","BACKUP","BEGIN","BETWEEN","BINLOG","BOTH","CASCADE","CASE","CHANGE","CHANGED","CHARACTER SET","CHARSET","CHECK","CHECKSUM","COLLATE","COLLATION","COLUMN","COLUMNS","COMMENT","COMMIT","COMMITTED","COMPRESSED","CONCURRENT","CONSTRAINT","CONTAINS","CONVERT","CREATE","CROSS","CURRENT_TIMESTAMP","DATABASE","DATABASES","DAY","DAY_HOUR","DAY_MINUTE","DAY_SECOND","DEFAULT","DEFINER","DELAYED","DELETE","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DO","DROP","DUMPFILE","DUPLICATE","DYNAMIC","ELSE","ENCLOSED","END","ENGINE","ENGINES","ENGINE_TYPE","ESCAPE","ESCAPED","EVENTS","EXEC","EXECUTE","EXISTS","EXPLAIN","EXTENDED","FAST","FETCH","FIELDS","FILE","FIRST","FIXED","FLUSH","FOR","FORCE","FOREIGN","FULL","FULLTEXT","FUNCTION","GLOBAL","GRANT","GRANTS","GROUP_CONCAT","HEAP","HIGH_PRIORITY","HOSTS","HOUR","HOUR_MINUTE","HOUR_SECOND","IDENTIFIED","IF","IFNULL","IGNORE","IN","INDEX","INDEXES","INFILE","INSERT","INSERT_ID","INSERT_METHOD","INTERVAL","INTO","INVOKER","IS","ISOLATION","KEY","KEYS","KILL","LAST_INSERT_ID","LEADING","LEVEL","LIKE","LINEAR","LINES","LOAD","LOCAL","LOCK","LOCKS","LOGS","LOW_PRIORITY","MARIA","MASTER","MASTER_CONNECT_RETRY","MASTER_HOST","MASTER_LOG_FILE","MATCH","MAX_CONNECTIONS_PER_HOUR","MAX_QUERIES_PER_HOUR","MAX_ROWS","MAX_UPDATES_PER_HOUR","MAX_USER_CONNECTIONS","MEDIUM","MERGE","MINUTE","MINUTE_SECOND","MIN_ROWS","MODE","MODIFY","MONTH","MRG_MYISAM","MYISAM","NAMES","NATURAL","NOT","NOW()","NULL","OFFSET","ON DELETE","ON UPDATE","ON","ONLY","OPEN","OPTIMIZE","OPTION","OPTIONALLY","OUTFILE","PACK_KEYS","PAGE","PARTIAL","PARTITION","PARTITIONS","PASSWORD","PRIMARY","PRIVILEGES","PROCEDURE","PROCESS","PROCESSLIST","PURGE","QUICK","RAID0","RAID_CHUNKS","RAID_CHUNKSIZE","RAID_TYPE","RANGE","READ","READ_ONLY","READ_WRITE","REFERENCES","REGEXP","RELOAD","RENAME","REPAIR","REPEATABLE","REPLACE","REPLICATION","RESET","RESTORE","RESTRICT","RETURN","RETURNS","REVOKE","RLIKE","ROLLBACK","ROW","ROWS","ROW_FORMAT","SECOND","SECURITY","SEPARATOR","SERIALIZABLE","SESSION","SHARE","SHOW","SHUTDOWN","SLAVE","SONAME","SOUNDS","SQL","SQL_AUTO_IS_NULL","SQL_BIG_RESULT","SQL_BIG_SELECTS","SQL_BIG_TABLES","SQL_BUFFER_RESULT","SQL_CACHE","SQL_CALC_FOUND_ROWS","SQL_LOG_BIN","SQL_LOG_OFF","SQL_LOG_UPDATE","SQL_LOW_PRIORITY_UPDATES","SQL_MAX_JOIN_SIZE","SQL_NO_CACHE","SQL_QUOTE_SHOW_CREATE","SQL_SAFE_UPDATES","SQL_SELECT_LIMIT","SQL_SLAVE_SKIP_COUNTER","SQL_SMALL_RESULT","SQL_WARNINGS","START","STARTING","STATUS","STOP","STORAGE","STRAIGHT_JOIN","STRING","STRIPED","SUPER","TABLE","TABLES","TEMPORARY","TERMINATED","THEN","TO","TRAILING","TRANSACTIONAL","TRUE","TRUNCATE","TYPE","TYPES","UNCOMMITTED","UNIQUE","UNLOCK","UNSIGNED","USAGE","USE","USING","VARIABLES","VIEW","WHEN","WITH","WORK","WRITE","YEAR_MONTH"],s=["ADD","AFTER","ALTER COLUMN","ALTER TABLE","DELETE FROM","EXCEPT","FETCH FIRST","FROM","GROUP BY","GO","HAVING","INSERT INTO","INSERT","INTERSECT","LIMIT","MODIFY","ORDER BY","SELECT","SET CURRENT SCHEMA","SET SCHEMA","SET","UNION ALL","UNION","UPDATE","VALUES","WHERE"],c=["AND","CROSS APPLY","CROSS JOIN","ELSE","INNER JOIN","JOIN","LEFT JOIN","LEFT OUTER JOIN","OR","OUTER APPLY","OUTER JOIN","RIGHT JOIN","RIGHT OUTER JOIN","WHEN","XOR"],u=void 0,l=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.cfg=e}return t.prototype.format=function(t){return u||(u=new o.default({reservedWords:a,reservedToplevelWords:s,reservedNewlineWords:c,stringTypes:['""',"N''","''","``","[]"],openParens:["(","CASE"],closeParens:[")","END"],indexedPlaceholderTypes:["?"],namedPlaceholderTypes:["@",":"],lineCommentTypes:["#","--"]})),new r.default(this.cfg,u).format(t)},t}();e.default=l,t.exports=e.default},function(t,e){t.exports=function(t){var e={begin:"\\$+[a-zA-Z_-ÿ][a-zA-Z0-9_-ÿ]*"},n={className:"meta",begin:/<\?(php)?|\?>/},r={className:"string",contains:[t.BACKSLASH_ESCAPE,n],variants:[{begin:'b"',end:'"'},{begin:"b'",end:"'"},t.inherit(t.APOS_STRING_MODE,{illegal:null}),t.inherit(t.QUOTE_STRING_MODE,{illegal:null})]},o={variants:[t.BINARY_NUMBER_MODE,t.C_NUMBER_MODE]};return{aliases:["php","php3","php4","php5","php6","php7"],case_insensitive:!0,keywords:"and include_once list abstract global private echo interface as static endswitch array null if endwhile or const for endforeach self var while isset public protected exit foreach throw elseif include __FILE__ empty require_once do xor return parent clone use __CLASS__ __LINE__ else break print eval new catch __METHOD__ case exception default die require __FUNCTION__ enddeclare final try switch continue endfor endif declare unset true false trait goto instanceof insteadof __DIR__ __NAMESPACE__ yield finally",contains:[t.HASH_COMMENT_MODE,t.COMMENT("//","$",{contains:[n]}),t.COMMENT("/\\*","\\*/",{contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),t.COMMENT("__halt_compiler.+?;",!1,{endsWithParent:!0,keywords:"__halt_compiler",lexemes:t.UNDERSCORE_IDENT_RE}),{className:"string",begin:/<<<['"]?\w+['"]?$/,end:/^\w+;?$/,contains:[t.BACKSLASH_ESCAPE,{className:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]}]},n,{className:"keyword",begin:/\$this\b/},e,{begin:/(::|->)+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/},{className:"function",beginKeywords:"function",end:/[;{]/,excludeEnd:!0,illegal:"\\$|\\[|%",contains:[t.UNDERSCORE_TITLE_MODE,{className:"params",begin:"\\(",end:"\\)",contains:["self",e,t.C_BLOCK_COMMENT_MODE,r,o]}]},{className:"class",beginKeywords:"class interface",end:"{",excludeEnd:!0,illegal:/[:\(\$"]/,contains:[{beginKeywords:"extends implements"},t.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",end:";",illegal:/[\.']/,contains:[t.UNDERSCORE_TITLE_MODE]},{beginKeywords:"use",end:";",contains:[t.UNDERSCORE_TITLE_MODE]},{begin:"=>"},r,o]}}},function(t,e,n){var r=n(79),o=n(235),i=n(236),a=n(80),s=n(237),c=n(49),u=200;t.exports=function(t,e,n){var l=-1,f=o,p=t.length,d=!0,h=[],m=h;if(n)d=!1,f=i;else if(p>=u){var g=e?null:s(t);if(g)return c(g);d=!1,f=a,m=new r}else m=e?[]:h;t:for(;++l-1}},function(t,e,n){var r=n(28);t.exports=function(t,e){var n=this.__data__,o=r(n,t);return o<0?(++this.size,n.push([t,e])):n[o][1]=e,this}},function(t,e,n){var r=n(29);t.exports=function(t){var e=r(this,t).delete(t);return this.size-=e?1:0,e}},function(t,e){t.exports=function(t){var e=typeof t;return"string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t}},function(t,e,n){var r=n(29);t.exports=function(t){return r(this,t).get(t)}},function(t,e,n){var r=n(29);t.exports=function(t){return r(this,t).has(t)}},function(t,e,n){var r=n(29);t.exports=function(t,e){var n=r(this,t),o=n.size;return n.set(t,e),this.size+=n.size==o?0:1,this}},function(t,e){var n="__lodash_hash_undefined__";t.exports=function(t){return this.__data__.set(t,n),this}},function(t,e){t.exports=function(t){return this.__data__.has(t)}},function(t,e,n){var r=n(72);t.exports=function(t,e){return!!(null==t?0:t.length)&&r(t,e,0)>-1}},function(t,e){t.exports=function(t,e,n){for(var r=-1,o=null==t?0:t.length;++r>>32-e},rotr:function(t,e){return t<<32-e|t>>>e},endian:function(t){if(t.constructor==Number)return 16711935&r.rotl(t,8)|4278255360&r.rotl(t,24);for(var e=0;e0;t--)e.push(Math.floor(256*Math.random()));return e},bytesToWords:function(t){for(var e=[],n=0,r=0;n>>5]|=t[n]<<24-r%32;return e},wordsToBytes:function(t){for(var e=[],n=0;n<32*t.length;n+=8)e.push(t[n>>>5]>>>24-n%32&255);return e},bytesToHex:function(t){for(var e=[],n=0;n>>4).toString(16)),e.push((15&t[n]).toString(16));return e.join("")},hexToBytes:function(t){for(var e=[],n=0;n>>6*(3-i)&63)):e.push("=");return e.join("")},base64ToBytes:function(t){t=t.replace(/[^A-Z0-9+\/]/gi,"");for(var e=[],r=0,o=0;r>>6-2*o);return e}},t.exports=r},function(t,e){function n(t){return!!t.constructor&&"function"==typeof t.constructor.isBuffer&&t.constructor.isBuffer(t)} + */(function(){var i,a=200,s="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",c="Expected a function",u="__lodash_hash_undefined__",l=500,f="__lodash_placeholder__",p=1,d=2,h=4,m=1,g=2,v=1,b=2,_=4,y=8,E=16,k=32,x=64,w=128,C=256,A=512,T=30,S="...",R=800,O=16,N=1,L=2,I=1/0,D=9007199254740991,M=17976931348623157e292,P=NaN,j=4294967295,U=j-1,F=j>>>1,$=[["ary",w],["bind",v],["bindKey",b],["curry",y],["curryRight",E],["flip",A],["partial",k],["partialRight",x],["rearg",C]],B="[object Arguments]",z="[object Array]",q="[object AsyncFunction]",H="[object Boolean]",G="[object Date]",V="[object DOMException]",W="[object Error]",Y="[object Function]",K="[object GeneratorFunction]",X="[object Map]",Z="[object Number]",J="[object Null]",Q="[object Object]",tt="[object Proxy]",et="[object RegExp]",nt="[object Set]",rt="[object String]",ot="[object Symbol]",it="[object Undefined]",at="[object WeakMap]",st="[object WeakSet]",ct="[object ArrayBuffer]",ut="[object DataView]",lt="[object Float32Array]",ft="[object Float64Array]",pt="[object Int8Array]",dt="[object Int16Array]",ht="[object Int32Array]",mt="[object Uint8Array]",gt="[object Uint8ClampedArray]",vt="[object Uint16Array]",bt="[object Uint32Array]",_t=/\b__p \+= '';/g,yt=/\b(__p \+=) '' \+/g,Et=/(__e\(.*?\)|\b__t\)) \+\n'';/g,kt=/&(?:amp|lt|gt|quot|#39);/g,xt=/[&<>"']/g,wt=RegExp(kt.source),Ct=RegExp(xt.source),At=/<%-([\s\S]+?)%>/g,Tt=/<%([\s\S]+?)%>/g,St=/<%=([\s\S]+?)%>/g,Rt=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Ot=/^\w*$/,Nt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Lt=/[\\^$.*+?()[\]{}|]/g,It=RegExp(Lt.source),Dt=/^\s+|\s+$/g,Mt=/^\s+/,Pt=/\s+$/,jt=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Ut=/\{\n\/\* \[wrapped with (.+)\] \*/,Ft=/,? & /,$t=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Bt=/\\(\\)?/g,zt=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,qt=/\w*$/,Ht=/^[-+]0x[0-9a-f]+$/i,Gt=/^0b[01]+$/i,Vt=/^\[object .+?Constructor\]$/,Wt=/^0o[0-7]+$/i,Yt=/^(?:0|[1-9]\d*)$/,Kt=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Xt=/($^)/,Zt=/['\n\r\u2028\u2029\\]/g,Jt="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Qt="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",te="[\\ud800-\\udfff]",ee="["+Qt+"]",ne="["+Jt+"]",re="\\d+",oe="[\\u2700-\\u27bf]",ie="[a-z\\xdf-\\xf6\\xf8-\\xff]",ae="[^\\ud800-\\udfff"+Qt+re+"\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde]",se="\\ud83c[\\udffb-\\udfff]",ce="[^\\ud800-\\udfff]",ue="(?:\\ud83c[\\udde6-\\uddff]){2}",le="[\\ud800-\\udbff][\\udc00-\\udfff]",fe="[A-Z\\xc0-\\xd6\\xd8-\\xde]",pe="(?:"+ie+"|"+ae+")",de="(?:"+fe+"|"+ae+")",he="(?:"+ne+"|"+se+")"+"?",me="[\\ufe0e\\ufe0f]?"+he+("(?:\\u200d(?:"+[ce,ue,le].join("|")+")[\\ufe0e\\ufe0f]?"+he+")*"),ge="(?:"+[oe,ue,le].join("|")+")"+me,ve="(?:"+[ce+ne+"?",ne,ue,le,te].join("|")+")",be=RegExp("['’]","g"),_e=RegExp(ne,"g"),ye=RegExp(se+"(?="+se+")|"+ve+me,"g"),Ee=RegExp([fe+"?"+ie+"+(?:['’](?:d|ll|m|re|s|t|ve))?(?="+[ee,fe,"$"].join("|")+")",de+"+(?:['’](?:D|LL|M|RE|S|T|VE))?(?="+[ee,fe+pe,"$"].join("|")+")",fe+"?"+pe+"+(?:['’](?:d|ll|m|re|s|t|ve))?",fe+"+(?:['’](?:D|LL|M|RE|S|T|VE))?","\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",re,ge].join("|"),"g"),ke=RegExp("[\\u200d\\ud800-\\udfff"+Jt+"\\ufe0e\\ufe0f]"),xe=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,we=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Ce=-1,Ae={};Ae[lt]=Ae[ft]=Ae[pt]=Ae[dt]=Ae[ht]=Ae[mt]=Ae[gt]=Ae[vt]=Ae[bt]=!0,Ae[B]=Ae[z]=Ae[ct]=Ae[H]=Ae[ut]=Ae[G]=Ae[W]=Ae[Y]=Ae[X]=Ae[Z]=Ae[Q]=Ae[et]=Ae[nt]=Ae[rt]=Ae[at]=!1;var Te={};Te[B]=Te[z]=Te[ct]=Te[ut]=Te[H]=Te[G]=Te[lt]=Te[ft]=Te[pt]=Te[dt]=Te[ht]=Te[X]=Te[Z]=Te[Q]=Te[et]=Te[nt]=Te[rt]=Te[ot]=Te[mt]=Te[gt]=Te[vt]=Te[bt]=!0,Te[W]=Te[Y]=Te[at]=!1;var Se={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Re=parseFloat,Oe=parseInt,Ne="object"==typeof t&&t&&t.Object===Object&&t,Le="object"==typeof self&&self&&self.Object===Object&&self,Ie=Ne||Le||Function("return this")(),De=e&&!e.nodeType&&e,Me=De&&"object"==typeof r&&r&&!r.nodeType&&r,Pe=Me&&Me.exports===De,je=Pe&&Ne.process,Ue=function(){try{var t=Me&&Me.require&&Me.require("util").types;return t||je&&je.binding&&je.binding("util")}catch(t){}}(),Fe=Ue&&Ue.isArrayBuffer,$e=Ue&&Ue.isDate,Be=Ue&&Ue.isMap,ze=Ue&&Ue.isRegExp,qe=Ue&&Ue.isSet,He=Ue&&Ue.isTypedArray;function Ge(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function Ve(t,e,n,r){for(var o=-1,i=null==t?0:t.length;++o-1}function Je(t,e,n){for(var r=-1,o=null==t?0:t.length;++r-1;);return n}function En(t,e){for(var n=t.length;n--&&cn(e,t[n],0)>-1;);return n}var kn=dn({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),xn=dn({"&":"&","<":"<",">":">",'"':""","'":"'"});function wn(t){return"\\"+Se[t]}function Cn(t){return ke.test(t)}function An(t){var e=-1,n=Array(t.size);return t.forEach((function(t,r){n[++e]=[r,t]})),n}function Tn(t,e){return function(n){return t(e(n))}}function Sn(t,e){for(var n=-1,r=t.length,o=0,i=[];++n",""":'"',"'":"'"});var Dn=function t(e){var n,r=(e=null==e?Ie:Dn.defaults(Ie.Object(),e,Dn.pick(Ie,we))).Array,o=e.Date,Jt=e.Error,Qt=e.Function,te=e.Math,ee=e.Object,ne=e.RegExp,re=e.String,oe=e.TypeError,ie=r.prototype,ae=Qt.prototype,se=ee.prototype,ce=e["__core-js_shared__"],ue=ae.toString,le=se.hasOwnProperty,fe=0,pe=(n=/[^.]+$/.exec(ce&&ce.keys&&ce.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",de=se.toString,he=ue.call(ee),me=Ie._,ge=ne("^"+ue.call(le).replace(Lt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),ve=Pe?e.Buffer:i,ye=e.Symbol,ke=e.Uint8Array,Se=ve?ve.allocUnsafe:i,Ne=Tn(ee.getPrototypeOf,ee),Le=ee.create,De=se.propertyIsEnumerable,Me=ie.splice,je=ye?ye.isConcatSpreadable:i,Ue=ye?ye.iterator:i,on=ye?ye.toStringTag:i,dn=function(){try{var t=Fi(ee,"defineProperty");return t({},"",{}),t}catch(t){}}(),Mn=e.clearTimeout!==Ie.clearTimeout&&e.clearTimeout,Pn=o&&o.now!==Ie.Date.now&&o.now,jn=e.setTimeout!==Ie.setTimeout&&e.setTimeout,Un=te.ceil,Fn=te.floor,$n=ee.getOwnPropertySymbols,Bn=ve?ve.isBuffer:i,zn=e.isFinite,qn=ie.join,Hn=Tn(ee.keys,ee),Gn=te.max,Vn=te.min,Wn=o.now,Yn=e.parseInt,Kn=te.random,Xn=ie.reverse,Zn=Fi(e,"DataView"),Jn=Fi(e,"Map"),Qn=Fi(e,"Promise"),tr=Fi(e,"Set"),er=Fi(e,"WeakMap"),nr=Fi(ee,"create"),rr=er&&new er,or={},ir=fa(Zn),ar=fa(Jn),sr=fa(Qn),cr=fa(tr),ur=fa(er),lr=ye?ye.prototype:i,fr=lr?lr.valueOf:i,pr=lr?lr.toString:i;function dr(t){if(Ss(t)&&!vs(t)&&!(t instanceof vr)){if(t instanceof gr)return t;if(le.call(t,"__wrapped__"))return pa(t)}return new gr(t)}var hr=function(){function t(){}return function(e){if(!Ts(e))return{};if(Le)return Le(e);t.prototype=e;var n=new t;return t.prototype=i,n}}();function mr(){}function gr(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=i}function vr(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=j,this.__views__=[]}function br(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e=e?t:e)),t}function Mr(t,e,n,r,o,a){var s,c=e&p,u=e&d,l=e&h;if(n&&(s=o?n(t,r,o,a):n(t)),s!==i)return s;if(!Ts(t))return t;var f=vs(t);if(f){if(s=function(t){var e=t.length,n=new t.constructor(e);e&&"string"==typeof t[0]&&le.call(t,"index")&&(n.index=t.index,n.input=t.input);return n}(t),!c)return ri(t,s)}else{var m=zi(t),g=m==Y||m==K;if(Es(t))return Zo(t,c);if(m==Q||m==B||g&&!o){if(s=u||g?{}:Hi(t),!c)return u?function(t,e){return oi(t,Bi(t),e)}(t,function(t,e){return t&&oi(e,ic(e),t)}(s,t)):function(t,e){return oi(t,$i(t),e)}(t,Nr(s,t))}else{if(!Te[m])return o?t:{};s=function(t,e,n){var r=t.constructor;switch(e){case ct:return Jo(t);case H:case G:return new r(+t);case ut:return function(t,e){var n=e?Jo(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}(t,n);case lt:case ft:case pt:case dt:case ht:case mt:case gt:case vt:case bt:return Qo(t,n);case X:return new r;case Z:case rt:return new r(t);case et:return function(t){var e=new t.constructor(t.source,qt.exec(t));return e.lastIndex=t.lastIndex,e}(t);case nt:return new r;case ot:return o=t,fr?ee(fr.call(o)):{}}var o}(t,m,c)}}a||(a=new kr);var v=a.get(t);if(v)return v;a.set(t,s),Is(t)?t.forEach((function(r){s.add(Mr(r,e,n,r,t,a))})):Rs(t)&&t.forEach((function(r,o){s.set(o,Mr(r,e,n,o,t,a))}));var b=f?i:(l?u?Li:Ni:u?ic:oc)(t);return We(b||t,(function(r,o){b&&(r=t[o=r]),Sr(s,o,Mr(r,e,n,o,t,a))})),s}function Pr(t,e,n){var r=n.length;if(null==t)return!r;for(t=ee(t);r--;){var o=n[r],a=e[o],s=t[o];if(s===i&&!(o in t)||!a(s))return!1}return!0}function jr(t,e,n){if("function"!=typeof t)throw new oe(c);return oa((function(){t.apply(i,n)}),e)}function Ur(t,e,n,r){var o=-1,i=Ze,s=!0,c=t.length,u=[],l=e.length;if(!c)return u;n&&(e=Qe(e,vn(n))),r?(i=Je,s=!1):e.length>=a&&(i=_n,s=!1,e=new Er(e));t:for(;++o-1},_r.prototype.set=function(t,e){var n=this.__data__,r=Rr(n,t);return r<0?(++this.size,n.push([t,e])):n[r][1]=e,this},yr.prototype.clear=function(){this.size=0,this.__data__={hash:new br,map:new(Jn||_r),string:new br}},yr.prototype.delete=function(t){var e=ji(this,t).delete(t);return this.size-=e?1:0,e},yr.prototype.get=function(t){return ji(this,t).get(t)},yr.prototype.has=function(t){return ji(this,t).has(t)},yr.prototype.set=function(t,e){var n=ji(this,t),r=n.size;return n.set(t,e),this.size+=n.size==r?0:1,this},Er.prototype.add=Er.prototype.push=function(t){return this.__data__.set(t,u),this},Er.prototype.has=function(t){return this.__data__.has(t)},kr.prototype.clear=function(){this.__data__=new _r,this.size=0},kr.prototype.delete=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n},kr.prototype.get=function(t){return this.__data__.get(t)},kr.prototype.has=function(t){return this.__data__.has(t)},kr.prototype.set=function(t,e){var n=this.__data__;if(n instanceof _r){var r=n.__data__;if(!Jn||r.length0&&n(s)?e>1?Hr(s,e-1,n,r,o):tn(o,s):r||(o[o.length]=s)}return o}var Gr=ci(),Vr=ci(!0);function Wr(t,e){return t&&Gr(t,e,oc)}function Yr(t,e){return t&&Vr(t,e,oc)}function Kr(t,e){return Xe(e,(function(e){return ws(t[e])}))}function Xr(t,e){for(var n=0,r=(e=Wo(e,t)).length;null!=t&&ne}function to(t,e){return null!=t&&le.call(t,e)}function eo(t,e){return null!=t&&e in ee(t)}function no(t,e,n){for(var o=n?Je:Ze,a=t[0].length,s=t.length,c=s,u=r(s),l=1/0,f=[];c--;){var p=t[c];c&&e&&(p=Qe(p,vn(e))),l=Vn(p.length,l),u[c]=!n&&(e||a>=120&&p.length>=120)?new Er(c&&p):i}p=t[0];var d=-1,h=u[0];t:for(;++d=s)return c;var u=n[r];return c*("desc"==u?-1:1)}}return t.index-e.index}(t,e,n)}))}function _o(t,e,n){for(var r=-1,o=e.length,i={};++r-1;)s!==t&&Me.call(s,c,1),Me.call(t,c,1);return t}function Eo(t,e){for(var n=t?e.length:0,r=n-1;n--;){var o=e[n];if(n==r||o!==i){var i=o;Vi(o)?Me.call(t,o,1):Fo(t,o)}}return t}function ko(t,e){return t+Fn(Kn()*(e-t+1))}function xo(t,e){var n="";if(!t||e<1||e>D)return n;do{e%2&&(n+=t),(e=Fn(e/2))&&(t+=t)}while(e);return n}function wo(t,e){return ia(ta(t,e,Oc),t+"")}function Co(t){return wr(dc(t))}function Ao(t,e){var n=dc(t);return ca(n,Dr(e,0,n.length))}function To(t,e,n,r){if(!Ts(t))return t;for(var o=-1,a=(e=Wo(e,t)).length,s=a-1,c=t;null!=c&&++oi?0:i+e),(n=n>i?i:n)<0&&(n+=i),i=e>n?0:n-e>>>0,e>>>=0;for(var a=r(i);++o>>1,a=t[i];null!==a&&!Ms(a)&&(n?a<=e:a=a){var l=e?null:xi(t);if(l)return Rn(l);s=!1,o=_n,u=new Er}else u=e?[]:c;t:for(;++r=r?t:No(t,e,n)}var Xo=Mn||function(t){return Ie.clearTimeout(t)};function Zo(t,e){if(e)return t.slice();var n=t.length,r=Se?Se(n):new t.constructor(n);return t.copy(r),r}function Jo(t){var e=new t.constructor(t.byteLength);return new ke(e).set(new ke(t)),e}function Qo(t,e){var n=e?Jo(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}function ti(t,e){if(t!==e){var n=t!==i,r=null===t,o=t==t,a=Ms(t),s=e!==i,c=null===e,u=e==e,l=Ms(e);if(!c&&!l&&!a&&t>e||a&&s&&u&&!c&&!l||r&&s&&u||!n&&u||!o)return 1;if(!r&&!a&&!l&&t1?n[o-1]:i,s=o>2?n[2]:i;for(a=t.length>3&&"function"==typeof a?(o--,a):i,s&&Wi(n[0],n[1],s)&&(a=o<3?i:a,o=1),e=ee(e);++r-1?o[a?e[s]:s]:i}}function di(t){return Oi((function(e){var n=e.length,r=n,o=gr.prototype.thru;for(t&&e.reverse();r--;){var a=e[r];if("function"!=typeof a)throw new oe(c);if(o&&!s&&"wrapper"==Di(a))var s=new gr([],!0)}for(r=s?r:n;++r1&&y.reverse(),p&&lc))return!1;var l=a.get(t),f=a.get(e);if(l&&f)return l==e&&f==t;var p=-1,d=!0,h=n&g?new Er:i;for(a.set(t,e),a.set(e,t);++p-1&&t%1==0&&t1?"& ":"")+e[r],e=e.join(n>2?", ":" "),t.replace(jt,"{\n/* [wrapped with "+e+"] */\n")}(r,function(t,e){return We($,(function(n){var r="_."+n[0];e&n[1]&&!Ze(t,r)&&t.push(r)})),t.sort()}(function(t){var e=t.match(Ut);return e?e[1].split(Ft):[]}(r),n)))}function sa(t){var e=0,n=0;return function(){var r=Wn(),o=O-(r-n);if(n=r,o>0){if(++e>=R)return arguments[0]}else e=0;return t.apply(i,arguments)}}function ca(t,e){var n=-1,r=t.length,o=r-1;for(e=e===i?r:e;++n1?t[e-1]:i;return n="function"==typeof n?(t.pop(),n):i,La(t,n)}));function Fa(t){var e=dr(t);return e.__chain__=!0,e}function $a(t,e){return e(t)}var Ba=Oi((function(t){var e=t.length,n=e?t[0]:0,r=this.__wrapped__,o=function(e){return Ir(e,t)};return!(e>1||this.__actions__.length)&&r instanceof vr&&Vi(n)?((r=r.slice(n,+n+(e?1:0))).__actions__.push({func:$a,args:[o],thisArg:i}),new gr(r,this.__chain__).thru((function(t){return e&&!t.length&&t.push(i),t}))):this.thru(o)}));var za=ii((function(t,e,n){le.call(t,n)?++t[n]:Lr(t,n,1)}));var qa=pi(ga),Ha=pi(va);function Ga(t,e){return(vs(t)?We:Fr)(t,Pi(e,3))}function Va(t,e){return(vs(t)?Ye:$r)(t,Pi(e,3))}var Wa=ii((function(t,e,n){le.call(t,n)?t[n].push(e):Lr(t,n,[e])}));var Ya=wo((function(t,e,n){var o=-1,i="function"==typeof e,a=_s(t)?r(t.length):[];return Fr(t,(function(t){a[++o]=i?Ge(e,t,n):ro(t,e,n)})),a})),Ka=ii((function(t,e,n){Lr(t,n,e)}));function Xa(t,e){return(vs(t)?Qe:po)(t,Pi(e,3))}var Za=ii((function(t,e,n){t[n?0:1].push(e)}),(function(){return[[],[]]}));var Ja=wo((function(t,e){if(null==t)return[];var n=e.length;return n>1&&Wi(t,e[0],e[1])?e=[]:n>2&&Wi(e[0],e[1],e[2])&&(e=[e[0]]),bo(t,Hr(e,1),[])})),Qa=Pn||function(){return Ie.Date.now()};function ts(t,e,n){return e=n?i:e,e=t&&null==e?t.length:e,Ci(t,w,i,i,i,i,e)}function es(t,e){var n;if("function"!=typeof e)throw new oe(c);return t=Bs(t),function(){return--t>0&&(n=e.apply(this,arguments)),t<=1&&(e=i),n}}var ns=wo((function(t,e,n){var r=v;if(n.length){var o=Sn(n,Mi(ns));r|=k}return Ci(t,r,e,n,o)})),rs=wo((function(t,e,n){var r=v|b;if(n.length){var o=Sn(n,Mi(rs));r|=k}return Ci(e,r,t,n,o)}));function os(t,e,n){var r,o,a,s,u,l,f=0,p=!1,d=!1,h=!0;if("function"!=typeof t)throw new oe(c);function m(e){var n=r,a=o;return r=o=i,f=e,s=t.apply(a,n)}function g(t){var n=t-l;return l===i||n>=e||n<0||d&&t-f>=a}function v(){var t=Qa();if(g(t))return b(t);u=oa(v,function(t){var n=e-(t-l);return d?Vn(n,a-(t-f)):n}(t))}function b(t){return u=i,h&&r?m(t):(r=o=i,s)}function _(){var t=Qa(),n=g(t);if(r=arguments,o=this,l=t,n){if(u===i)return function(t){return f=t,u=oa(v,e),p?m(t):s}(l);if(d)return Xo(u),u=oa(v,e),m(l)}return u===i&&(u=oa(v,e)),s}return e=qs(e)||0,Ts(n)&&(p=!!n.leading,a=(d="maxWait"in n)?Gn(qs(n.maxWait)||0,e):a,h="trailing"in n?!!n.trailing:h),_.cancel=function(){u!==i&&Xo(u),f=0,r=l=o=u=i},_.flush=function(){return u===i?s:b(Qa())},_}var is=wo((function(t,e){return jr(t,1,e)})),as=wo((function(t,e,n){return jr(t,qs(e)||0,n)}));function ss(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new oe(c);var n=function(){var r=arguments,o=e?e.apply(this,r):r[0],i=n.cache;if(i.has(o))return i.get(o);var a=t.apply(this,r);return n.cache=i.set(o,a)||i,a};return n.cache=new(ss.Cache||yr),n}function cs(t){if("function"!=typeof t)throw new oe(c);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}ss.Cache=yr;var us=Yo((function(t,e){var n=(e=1==e.length&&vs(e[0])?Qe(e[0],vn(Pi())):Qe(Hr(e,1),vn(Pi()))).length;return wo((function(r){for(var o=-1,i=Vn(r.length,n);++o=e})),gs=oo(function(){return arguments}())?oo:function(t){return Ss(t)&&le.call(t,"callee")&&!De.call(t,"callee")},vs=r.isArray,bs=Fe?vn(Fe):function(t){return Ss(t)&&Jr(t)==ct};function _s(t){return null!=t&&As(t.length)&&!ws(t)}function ys(t){return Ss(t)&&_s(t)}var Es=Bn||qc,ks=$e?vn($e):function(t){return Ss(t)&&Jr(t)==G};function xs(t){if(!Ss(t))return!1;var e=Jr(t);return e==W||e==V||"string"==typeof t.message&&"string"==typeof t.name&&!Ns(t)}function ws(t){if(!Ts(t))return!1;var e=Jr(t);return e==Y||e==K||e==q||e==tt}function Cs(t){return"number"==typeof t&&t==Bs(t)}function As(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=D}function Ts(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function Ss(t){return null!=t&&"object"==typeof t}var Rs=Be?vn(Be):function(t){return Ss(t)&&zi(t)==X};function Os(t){return"number"==typeof t||Ss(t)&&Jr(t)==Z}function Ns(t){if(!Ss(t)||Jr(t)!=Q)return!1;var e=Ne(t);if(null===e)return!0;var n=le.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&ue.call(n)==he}var Ls=ze?vn(ze):function(t){return Ss(t)&&Jr(t)==et};var Is=qe?vn(qe):function(t){return Ss(t)&&zi(t)==nt};function Ds(t){return"string"==typeof t||!vs(t)&&Ss(t)&&Jr(t)==rt}function Ms(t){return"symbol"==typeof t||Ss(t)&&Jr(t)==ot}var Ps=He?vn(He):function(t){return Ss(t)&&As(t.length)&&!!Ae[Jr(t)]};var js=yi(fo),Us=yi((function(t,e){return t<=e}));function Fs(t){if(!t)return[];if(_s(t))return Ds(t)?Ln(t):ri(t);if(Ue&&t[Ue])return function(t){for(var e,n=[];!(e=t.next()).done;)n.push(e.value);return n}(t[Ue]());var e=zi(t);return(e==X?An:e==nt?Rn:dc)(t)}function $s(t){return t?(t=qs(t))===I||t===-I?(t<0?-1:1)*M:t==t?t:0:0===t?t:0}function Bs(t){var e=$s(t),n=e%1;return e==e?n?e-n:e:0}function zs(t){return t?Dr(Bs(t),0,j):0}function qs(t){if("number"==typeof t)return t;if(Ms(t))return P;if(Ts(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=Ts(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(Dt,"");var n=Gt.test(t);return n||Wt.test(t)?Oe(t.slice(2),n?2:8):Ht.test(t)?P:+t}function Hs(t){return oi(t,ic(t))}function Gs(t){return null==t?"":jo(t)}var Vs=ai((function(t,e){if(Zi(e)||_s(e))oi(e,oc(e),t);else for(var n in e)le.call(e,n)&&Sr(t,n,e[n])})),Ws=ai((function(t,e){oi(e,ic(e),t)})),Ys=ai((function(t,e,n,r){oi(e,ic(e),t,r)})),Ks=ai((function(t,e,n,r){oi(e,oc(e),t,r)})),Xs=Oi(Ir);var Zs=wo((function(t,e){t=ee(t);var n=-1,r=e.length,o=r>2?e[2]:i;for(o&&Wi(e[0],e[1],o)&&(r=1);++n1),e})),oi(t,Li(t),n),r&&(n=Mr(n,p|d|h,Si));for(var o=e.length;o--;)Fo(n,e[o]);return n}));var uc=Oi((function(t,e){return null==t?{}:function(t,e){return _o(t,e,(function(e,n){return tc(t,n)}))}(t,e)}));function lc(t,e){if(null==t)return{};var n=Qe(Li(t),(function(t){return[t]}));return e=Pi(e),_o(t,n,(function(t,n){return e(t,n[0])}))}var fc=wi(oc),pc=wi(ic);function dc(t){return null==t?[]:bn(t,oc(t))}var hc=li((function(t,e,n){return e=e.toLowerCase(),t+(n?mc(e):e)}));function mc(t){return xc(Gs(t).toLowerCase())}function gc(t){return(t=Gs(t))&&t.replace(Kt,kn).replace(_e,"")}var vc=li((function(t,e,n){return t+(n?"-":"")+e.toLowerCase()})),bc=li((function(t,e,n){return t+(n?" ":"")+e.toLowerCase()})),_c=ui("toLowerCase");var yc=li((function(t,e,n){return t+(n?"_":"")+e.toLowerCase()}));var Ec=li((function(t,e,n){return t+(n?" ":"")+xc(e)}));var kc=li((function(t,e,n){return t+(n?" ":"")+e.toUpperCase()})),xc=ui("toUpperCase");function wc(t,e,n){return t=Gs(t),(e=n?i:e)===i?function(t){return xe.test(t)}(t)?function(t){return t.match(Ee)||[]}(t):function(t){return t.match($t)||[]}(t):t.match(e)||[]}var Cc=wo((function(t,e){try{return Ge(t,i,e)}catch(t){return xs(t)?t:new Jt(t)}})),Ac=Oi((function(t,e){return We(e,(function(e){e=la(e),Lr(t,e,ns(t[e],t))})),t}));function Tc(t){return function(){return t}}var Sc=di(),Rc=di(!0);function Oc(t){return t}function Nc(t){return co("function"==typeof t?t:Mr(t,p))}var Lc=wo((function(t,e){return function(n){return ro(n,t,e)}})),Ic=wo((function(t,e){return function(n){return ro(t,n,e)}}));function Dc(t,e,n){var r=oc(e),o=Kr(e,r);null!=n||Ts(e)&&(o.length||!r.length)||(n=e,e=t,t=this,o=Kr(e,oc(e)));var i=!(Ts(n)&&"chain"in n&&!n.chain),a=ws(t);return We(o,(function(n){var r=e[n];t[n]=r,a&&(t.prototype[n]=function(){var e=this.__chain__;if(i||e){var n=t(this.__wrapped__),o=n.__actions__=ri(this.__actions__);return o.push({func:r,args:arguments,thisArg:t}),n.__chain__=e,n}return r.apply(t,tn([this.value()],arguments))})})),t}function Mc(){}var Pc=vi(Qe),jc=vi(Ke),Uc=vi(rn);function Fc(t){return Yi(t)?pn(la(t)):function(t){return function(e){return Xr(e,t)}}(t)}var $c=_i(),Bc=_i(!0);function zc(){return[]}function qc(){return!1}var Hc=gi((function(t,e){return t+e}),0),Gc=ki("ceil"),Vc=gi((function(t,e){return t/e}),1),Wc=ki("floor");var Yc,Kc=gi((function(t,e){return t*e}),1),Xc=ki("round"),Zc=gi((function(t,e){return t-e}),0);return dr.after=function(t,e){if("function"!=typeof e)throw new oe(c);return t=Bs(t),function(){if(--t<1)return e.apply(this,arguments)}},dr.ary=ts,dr.assign=Vs,dr.assignIn=Ws,dr.assignInWith=Ys,dr.assignWith=Ks,dr.at=Xs,dr.before=es,dr.bind=ns,dr.bindAll=Ac,dr.bindKey=rs,dr.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return vs(t)?t:[t]},dr.chain=Fa,dr.chunk=function(t,e,n){e=(n?Wi(t,e,n):e===i)?1:Gn(Bs(e),0);var o=null==t?0:t.length;if(!o||e<1)return[];for(var a=0,s=0,c=r(Un(o/e));ao?0:o+n),(r=r===i||r>o?o:Bs(r))<0&&(r+=o),r=n>r?0:zs(r);n>>0)?(t=Gs(t))&&("string"==typeof e||null!=e&&!Ls(e))&&!(e=jo(e))&&Cn(t)?Ko(Ln(t),0,n):t.split(e,n):[]},dr.spread=function(t,e){if("function"!=typeof t)throw new oe(c);return e=null==e?0:Gn(Bs(e),0),wo((function(n){var r=n[e],o=Ko(n,0,e);return r&&tn(o,r),Ge(t,this,o)}))},dr.tail=function(t){var e=null==t?0:t.length;return e?No(t,1,e):[]},dr.take=function(t,e,n){return t&&t.length?No(t,0,(e=n||e===i?1:Bs(e))<0?0:e):[]},dr.takeRight=function(t,e,n){var r=null==t?0:t.length;return r?No(t,(e=r-(e=n||e===i?1:Bs(e)))<0?0:e,r):[]},dr.takeRightWhile=function(t,e){return t&&t.length?Bo(t,Pi(e,3),!1,!0):[]},dr.takeWhile=function(t,e){return t&&t.length?Bo(t,Pi(e,3)):[]},dr.tap=function(t,e){return e(t),t},dr.throttle=function(t,e,n){var r=!0,o=!0;if("function"!=typeof t)throw new oe(c);return Ts(n)&&(r="leading"in n?!!n.leading:r,o="trailing"in n?!!n.trailing:o),os(t,e,{leading:r,maxWait:e,trailing:o})},dr.thru=$a,dr.toArray=Fs,dr.toPairs=fc,dr.toPairsIn=pc,dr.toPath=function(t){return vs(t)?Qe(t,la):Ms(t)?[t]:ri(ua(Gs(t)))},dr.toPlainObject=Hs,dr.transform=function(t,e,n){var r=vs(t),o=r||Es(t)||Ps(t);if(e=Pi(e,4),null==n){var i=t&&t.constructor;n=o?r?new i:[]:Ts(t)&&ws(i)?hr(Ne(t)):{}}return(o?We:Wr)(t,(function(t,r,o){return e(n,t,r,o)})),n},dr.unary=function(t){return ts(t,1)},dr.union=Sa,dr.unionBy=Ra,dr.unionWith=Oa,dr.uniq=function(t){return t&&t.length?Uo(t):[]},dr.uniqBy=function(t,e){return t&&t.length?Uo(t,Pi(e,2)):[]},dr.uniqWith=function(t,e){return e="function"==typeof e?e:i,t&&t.length?Uo(t,i,e):[]},dr.unset=function(t,e){return null==t||Fo(t,e)},dr.unzip=Na,dr.unzipWith=La,dr.update=function(t,e,n){return null==t?t:$o(t,e,Vo(n))},dr.updateWith=function(t,e,n,r){return r="function"==typeof r?r:i,null==t?t:$o(t,e,Vo(n),r)},dr.values=dc,dr.valuesIn=function(t){return null==t?[]:bn(t,ic(t))},dr.without=Ia,dr.words=wc,dr.wrap=function(t,e){return ls(Vo(e),t)},dr.xor=Da,dr.xorBy=Ma,dr.xorWith=Pa,dr.zip=ja,dr.zipObject=function(t,e){return Ho(t||[],e||[],Sr)},dr.zipObjectDeep=function(t,e){return Ho(t||[],e||[],To)},dr.zipWith=Ua,dr.entries=fc,dr.entriesIn=pc,dr.extend=Ws,dr.extendWith=Ys,Dc(dr,dr),dr.add=Hc,dr.attempt=Cc,dr.camelCase=hc,dr.capitalize=mc,dr.ceil=Gc,dr.clamp=function(t,e,n){return n===i&&(n=e,e=i),n!==i&&(n=(n=qs(n))==n?n:0),e!==i&&(e=(e=qs(e))==e?e:0),Dr(qs(t),e,n)},dr.clone=function(t){return Mr(t,h)},dr.cloneDeep=function(t){return Mr(t,p|h)},dr.cloneDeepWith=function(t,e){return Mr(t,p|h,e="function"==typeof e?e:i)},dr.cloneWith=function(t,e){return Mr(t,h,e="function"==typeof e?e:i)},dr.conformsTo=function(t,e){return null==e||Pr(t,e,oc(e))},dr.deburr=gc,dr.defaultTo=function(t,e){return null==t||t!=t?e:t},dr.divide=Vc,dr.endsWith=function(t,e,n){t=Gs(t),e=jo(e);var r=t.length,o=n=n===i?r:Dr(Bs(n),0,r);return(n-=e.length)>=0&&t.slice(n,o)==e},dr.eq=ds,dr.escape=function(t){return(t=Gs(t))&&Ct.test(t)?t.replace(xt,xn):t},dr.escapeRegExp=function(t){return(t=Gs(t))&&It.test(t)?t.replace(Lt,"\\$&"):t},dr.every=function(t,e,n){var r=vs(t)?Ke:Br;return n&&Wi(t,e,n)&&(e=i),r(t,Pi(e,3))},dr.find=qa,dr.findIndex=ga,dr.findKey=function(t,e){return an(t,Pi(e,3),Wr)},dr.findLast=Ha,dr.findLastIndex=va,dr.findLastKey=function(t,e){return an(t,Pi(e,3),Yr)},dr.floor=Wc,dr.forEach=Ga,dr.forEachRight=Va,dr.forIn=function(t,e){return null==t?t:Gr(t,Pi(e,3),ic)},dr.forInRight=function(t,e){return null==t?t:Vr(t,Pi(e,3),ic)},dr.forOwn=function(t,e){return t&&Wr(t,Pi(e,3))},dr.forOwnRight=function(t,e){return t&&Yr(t,Pi(e,3))},dr.get=Qs,dr.gt=hs,dr.gte=ms,dr.has=function(t,e){return null!=t&&qi(t,e,to)},dr.hasIn=tc,dr.head=_a,dr.identity=Oc,dr.includes=function(t,e,n,r){t=_s(t)?t:dc(t),n=n&&!r?Bs(n):0;var o=t.length;return n<0&&(n=Gn(o+n,0)),Ds(t)?n<=o&&t.indexOf(e,n)>-1:!!o&&cn(t,e,n)>-1},dr.indexOf=function(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var o=null==n?0:Bs(n);return o<0&&(o=Gn(r+o,0)),cn(t,e,o)},dr.inRange=function(t,e,n){return e=$s(e),n===i?(n=e,e=0):n=$s(n),function(t,e,n){return t>=Vn(e,n)&&t=-D&&t<=D},dr.isSet=Is,dr.isString=Ds,dr.isSymbol=Ms,dr.isTypedArray=Ps,dr.isUndefined=function(t){return t===i},dr.isWeakMap=function(t){return Ss(t)&&zi(t)==at},dr.isWeakSet=function(t){return Ss(t)&&Jr(t)==st},dr.join=function(t,e){return null==t?"":qn.call(t,e)},dr.kebabCase=vc,dr.last=xa,dr.lastIndexOf=function(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var o=r;return n!==i&&(o=(o=Bs(n))<0?Gn(r+o,0):Vn(o,r-1)),e==e?function(t,e,n){for(var r=n+1;r--;)if(t[r]===e)return r;return r}(t,e,o):sn(t,ln,o,!0)},dr.lowerCase=bc,dr.lowerFirst=_c,dr.lt=js,dr.lte=Us,dr.max=function(t){return t&&t.length?zr(t,Oc,Qr):i},dr.maxBy=function(t,e){return t&&t.length?zr(t,Pi(e,2),Qr):i},dr.mean=function(t){return fn(t,Oc)},dr.meanBy=function(t,e){return fn(t,Pi(e,2))},dr.min=function(t){return t&&t.length?zr(t,Oc,fo):i},dr.minBy=function(t,e){return t&&t.length?zr(t,Pi(e,2),fo):i},dr.stubArray=zc,dr.stubFalse=qc,dr.stubObject=function(){return{}},dr.stubString=function(){return""},dr.stubTrue=function(){return!0},dr.multiply=Kc,dr.nth=function(t,e){return t&&t.length?vo(t,Bs(e)):i},dr.noConflict=function(){return Ie._===this&&(Ie._=me),this},dr.noop=Mc,dr.now=Qa,dr.pad=function(t,e,n){t=Gs(t);var r=(e=Bs(e))?Nn(t):0;if(!e||r>=e)return t;var o=(e-r)/2;return bi(Fn(o),n)+t+bi(Un(o),n)},dr.padEnd=function(t,e,n){t=Gs(t);var r=(e=Bs(e))?Nn(t):0;return e&&re){var r=t;t=e,e=r}if(n||t%1||e%1){var o=Kn();return Vn(t+o*(e-t+Re("1e-"+((o+"").length-1))),e)}return ko(t,e)},dr.reduce=function(t,e,n){var r=vs(t)?en:hn,o=arguments.length<3;return r(t,Pi(e,4),n,o,Fr)},dr.reduceRight=function(t,e,n){var r=vs(t)?nn:hn,o=arguments.length<3;return r(t,Pi(e,4),n,o,$r)},dr.repeat=function(t,e,n){return e=(n?Wi(t,e,n):e===i)?1:Bs(e),xo(Gs(t),e)},dr.replace=function(){var t=arguments,e=Gs(t[0]);return t.length<3?e:e.replace(t[1],t[2])},dr.result=function(t,e,n){var r=-1,o=(e=Wo(e,t)).length;for(o||(o=1,t=i);++rD)return[];var n=j,r=Vn(t,j);e=Pi(e),t-=j;for(var o=gn(r,e);++n=a)return t;var c=n-Nn(r);if(c<1)return r;var u=s?Ko(s,0,c).join(""):t.slice(0,c);if(o===i)return u+r;if(s&&(c+=u.length-c),Ls(o)){if(t.slice(c).search(o)){var l,f=u;for(o.global||(o=ne(o.source,Gs(qt.exec(o))+"g")),o.lastIndex=0;l=o.exec(f);)var p=l.index;u=u.slice(0,p===i?c:p)}}else if(t.indexOf(jo(o),c)!=c){var d=u.lastIndexOf(o);d>-1&&(u=u.slice(0,d))}return u+r},dr.unescape=function(t){return(t=Gs(t))&&wt.test(t)?t.replace(kt,In):t},dr.uniqueId=function(t){var e=++fe;return Gs(t)+e},dr.upperCase=kc,dr.upperFirst=xc,dr.each=Ga,dr.eachRight=Va,dr.first=_a,Dc(dr,(Yc={},Wr(dr,(function(t,e){le.call(dr.prototype,e)||(Yc[e]=t)})),Yc),{chain:!1}),dr.VERSION="4.17.19",We(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(t){dr[t].placeholder=dr})),We(["drop","take"],(function(t,e){vr.prototype[t]=function(n){n=n===i?1:Gn(Bs(n),0);var r=this.__filtered__&&!e?new vr(this):this.clone();return r.__filtered__?r.__takeCount__=Vn(n,r.__takeCount__):r.__views__.push({size:Vn(n,j),type:t+(r.__dir__<0?"Right":"")}),r},vr.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}})),We(["filter","map","takeWhile"],(function(t,e){var n=e+1,r=n==N||3==n;vr.prototype[t]=function(t){var e=this.clone();return e.__iteratees__.push({iteratee:Pi(t,3),type:n}),e.__filtered__=e.__filtered__||r,e}})),We(["head","last"],(function(t,e){var n="take"+(e?"Right":"");vr.prototype[t]=function(){return this[n](1).value()[0]}})),We(["initial","tail"],(function(t,e){var n="drop"+(e?"":"Right");vr.prototype[t]=function(){return this.__filtered__?new vr(this):this[n](1)}})),vr.prototype.compact=function(){return this.filter(Oc)},vr.prototype.find=function(t){return this.filter(t).head()},vr.prototype.findLast=function(t){return this.reverse().find(t)},vr.prototype.invokeMap=wo((function(t,e){return"function"==typeof t?new vr(this):this.map((function(n){return ro(n,t,e)}))})),vr.prototype.reject=function(t){return this.filter(cs(Pi(t)))},vr.prototype.slice=function(t,e){t=Bs(t);var n=this;return n.__filtered__&&(t>0||e<0)?new vr(n):(t<0?n=n.takeRight(-t):t&&(n=n.drop(t)),e!==i&&(n=(e=Bs(e))<0?n.dropRight(-e):n.take(e-t)),n)},vr.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},vr.prototype.toArray=function(){return this.take(j)},Wr(vr.prototype,(function(t,e){var n=/^(?:filter|find|map|reject)|While$/.test(e),r=/^(?:head|last)$/.test(e),o=dr[r?"take"+("last"==e?"Right":""):e],a=r||/^find/.test(e);o&&(dr.prototype[e]=function(){var e=this.__wrapped__,s=r?[1]:arguments,c=e instanceof vr,u=s[0],l=c||vs(e),f=function(t){var e=o.apply(dr,tn([t],s));return r&&p?e[0]:e};l&&n&&"function"==typeof u&&1!=u.length&&(c=l=!1);var p=this.__chain__,d=!!this.__actions__.length,h=a&&!p,m=c&&!d;if(!a&&l){e=m?e:new vr(this);var g=t.apply(e,s);return g.__actions__.push({func:$a,args:[f],thisArg:i}),new gr(g,p)}return h&&m?t.apply(this,s):(g=this.thru(f),h?r?g.value()[0]:g.value():g)})})),We(["pop","push","shift","sort","splice","unshift"],(function(t){var e=ie[t],n=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",r=/^(?:pop|shift)$/.test(t);dr.prototype[t]=function(){var t=arguments;if(r&&!this.__chain__){var o=this.value();return e.apply(vs(o)?o:[],t)}return this[n]((function(n){return e.apply(vs(n)?n:[],t)}))}})),Wr(vr.prototype,(function(t,e){var n=dr[e];if(n){var r=n.name+"";le.call(or,r)||(or[r]=[]),or[r].push({name:e,func:n})}})),or[hi(i,b).name]=[{name:"wrapper",func:i}],vr.prototype.clone=function(){var t=new vr(this.__wrapped__);return t.__actions__=ri(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=ri(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=ri(this.__views__),t},vr.prototype.reverse=function(){if(this.__filtered__){var t=new vr(this);t.__dir__=-1,t.__filtered__=!0}else(t=this.clone()).__dir__*=-1;return t},vr.prototype.value=function(){var t=this.__wrapped__.value(),e=this.__dir__,n=vs(t),r=e<0,o=n?t.length:0,i=function(t,e,n){var r=-1,o=n.length;for(;++r=this.__values__.length;return{done:t,value:t?i:this.__values__[this.__index__++]}},dr.prototype.plant=function(t){for(var e,n=this;n instanceof mr;){var r=pa(n);r.__index__=0,r.__values__=i,e?o.__wrapped__=r:e=r;var o=r;n=n.__wrapped__}return o.__wrapped__=t,e},dr.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof vr){var e=t;return this.__actions__.length&&(e=new vr(this)),(e=e.reverse()).__actions__.push({func:$a,args:[Ta],thisArg:i}),new gr(e,this.__chain__)}return this.thru(Ta)},dr.prototype.toJSON=dr.prototype.valueOf=dr.prototype.value=function(){return zo(this.__wrapped__,this.__actions__)},dr.prototype.first=dr.prototype.head,Ue&&(dr.prototype[Ue]=function(){return this}),dr}();Ie._=Dn,(o=function(){return Dn}.call(e,n,e,r))===i||(r.exports=o)}).call(this)}).call(this,n(11),n(21)(t))},function(t,e,n){var r,o,i;o=function(t){var e,n=[],r=Object.keys,o={},i={},a=/^(no-?highlight|plain|text)$/i,s=/\blang(?:uage)?-([\w-]+)\b/i,c=/((^(<[^>]+>|\t|)+|(?:\n)))/gm,u="",l={classPrefix:"hljs-",tabReplace:null,useBR:!1,languages:void 0};function f(t){return t.replace(/&/g,"&").replace(//g,">")}function p(t){return t.nodeName.toLowerCase()}function d(t,e){var n=t&&t.exec(e);return n&&0===n.index}function h(t){return a.test(t)}function m(t){var e,n={},r=Array.prototype.slice.call(arguments,1);for(e in t)n[e]=t[e];return r.forEach((function(t){for(e in t)n[e]=t[e]})),n}function g(t){var e=[];return function t(n,r){for(var o=n.firstChild;o;o=o.nextSibling)3===o.nodeType?r+=o.nodeValue.length:1===o.nodeType&&(e.push({event:"start",offset:r,node:o}),r=t(o,r),p(o).match(/br|hr|img|input/)||e.push({event:"stop",offset:r,node:o}));return r}(t,0),e}function v(t){if(e&&!t.langApiRestored){for(var n in t.langApiRestored=!0,e)t[n]&&(t[e[n]]=t[n]);(t.contains||[]).concat(t.variants||[]).forEach(v)}}function b(t){function e(t){return t&&t.source||t}function n(n,r){return new RegExp(e(n),"m"+(t.case_insensitive?"i":"")+(r?"g":""))}!function o(i,a){if(!i.compiled){if(i.compiled=!0,i.keywords=i.keywords||i.beginKeywords,i.keywords){var s={},c=function(e,n){t.case_insensitive&&(n=n.toLowerCase()),n.split(" ").forEach((function(t){var n=t.split("|");s[n[0]]=[e,n[1]?Number(n[1]):1]}))};"string"==typeof i.keywords?c("keyword",i.keywords):r(i.keywords).forEach((function(t){c(t,i.keywords[t])})),i.keywords=s}i.lexemesRe=n(i.lexemes||/\w+/,!0),a&&(i.beginKeywords&&(i.begin="\\b("+i.beginKeywords.split(" ").join("|")+")\\b"),i.begin||(i.begin=/\B|\b/),i.beginRe=n(i.begin),i.endSameAsBegin&&(i.end=i.begin),i.end||i.endsWithParent||(i.end=/\B|\b/),i.end&&(i.endRe=n(i.end)),i.terminator_end=e(i.end)||"",i.endsWithParent&&a.terminator_end&&(i.terminator_end+=(i.end?"|":"")+a.terminator_end)),i.illegal&&(i.illegalRe=n(i.illegal)),null==i.relevance&&(i.relevance=1),i.contains||(i.contains=[]),i.contains=Array.prototype.concat.apply([],i.contains.map((function(t){return function(t){return t.variants&&!t.cached_variants&&(t.cached_variants=t.variants.map((function(e){return m(t,{variants:null},e)}))),t.cached_variants||t.endsWithParent&&[m(t)]||[t]}("self"===t?i:t)}))),i.contains.forEach((function(t){o(t,i)})),i.starts&&o(i.starts,a);var u=i.contains.map((function(t){return t.beginKeywords?"\\.?(?:"+t.begin+")\\.?":t.begin})).concat([i.terminator_end,i.illegal]).map(e).filter(Boolean);i.terminators=u.length?n(function(t,n){for(var r=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./,o=0,i="",a=0;a0&&(i+=n);c.length>0;){var u=r.exec(c);if(null==u){i+=c;break}i+=c.substring(0,u.index),c=c.substring(u.index+u[0].length),"\\"==u[0][0]&&u[1]?i+="\\"+String(Number(u[1])+s):(i+=u[0],"("==u[0]&&o++)}}return i}(u,"|"),!0):{exec:function(){return null}}}}(t)}function _(t,e,n,r){function i(t){return new RegExp(t.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"),"m")}function a(t,e){var n=m.case_insensitive?e[0].toLowerCase():e[0];return t.keywords.hasOwnProperty(n)&&t.keywords[n]}function s(t,e,n,r){var o='')+e+(n?"":u):e}function c(){k+=null!=v.subLanguage?function(){var t="string"==typeof v.subLanguage;if(t&&!o[v.subLanguage])return f(x);var e=t?_(v.subLanguage,x,!0,E[v.subLanguage]):y(x,v.subLanguage.length?v.subLanguage:void 0);return v.relevance>0&&(C+=e.relevance),t&&(E[v.subLanguage]=e.top),s(e.language,e.value,!1,!0)}():function(){var t,e,n,r;if(!v.keywords)return f(x);for(r="",e=0,v.lexemesRe.lastIndex=0,n=v.lexemesRe.exec(x);n;)r+=f(x.substring(e,n.index)),(t=a(v,n))?(C+=t[1],r+=s(t[0],f(n[0]))):r+=f(n[0]),e=v.lexemesRe.lastIndex,n=v.lexemesRe.exec(x);return r+f(x.substr(e))}(),x=""}function p(t){k+=t.className?s(t.className,"",!0):"",v=Object.create(t,{parent:{value:v}})}function h(t,e){if(x+=t,null==e)return c(),0;var r=function(t,e){var n,r;for(n=0,r=e.contains.length;n")+'"');return x+=e,e.length||1}var m=w(t);if(!m)throw new Error('Unknown language: "'+t+'"');b(m);var g,v=r||m,E={},k="";for(g=v;g!==m;g=g.parent)g.className&&(k=s(g.className,"",!0)+k);var x="",C=0;try{for(var A,T,S=0;v.terminators.lastIndex=S,A=v.terminators.exec(e);)T=h(e.substring(S,A.index),A[0]),S=A.index+T;for(h(e.substr(S)),g=v;g.parent;g=g.parent)g.className&&(k+=u);return{relevance:C,value:k,language:t,top:v}}catch(t){if(t.message&&-1!==t.message.indexOf("Illegal"))return{relevance:0,value:f(e)};throw t}}function y(t,e){e=e||l.languages||r(o);var n={relevance:0,value:f(t)},i=n;return e.filter(w).filter(C).forEach((function(e){var r=_(e,t,!1);r.language=e,r.relevance>i.relevance&&(i=r),r.relevance>n.relevance&&(i=n,n=r)})),i.language&&(n.second_best=i),n}function E(t){return l.tabReplace||l.useBR?t.replace(c,(function(t,e){return l.useBR&&"\n"===t?"
":l.tabReplace?e.replace(/\t/g,l.tabReplace):""})):t}function k(t){var e,r,o,a,c,u=function(t){var e,n,r,o,i=t.className+" ";if(i+=t.parentNode?t.parentNode.className:"",n=s.exec(i))return w(n[1])?n[1]:"no-highlight";for(e=0,r=(i=i.split(/\s+/)).length;e/g,"\n"):e=t,c=e.textContent,o=u?_(u,c,!0):y(c),(r=g(e)).length&&((a=document.createElementNS("http://www.w3.org/1999/xhtml","div")).innerHTML=o.value,o.value=function(t,e,r){var o=0,i="",a=[];function s(){return t.length&&e.length?t[0].offset!==e[0].offset?t[0].offset"}function u(t){i+=""}function l(t){("start"===t.event?c:u)(t.node)}for(;t.length||e.length;){var d=s();if(i+=f(r.substring(o,d[0].offset)),o=d[0].offset,d===t){a.reverse().forEach(u);do{l(d.splice(0,1)[0]),d=s()}while(d===t&&d.length&&d[0].offset===o);a.reverse().forEach(c)}else"start"===d[0].event?a.push(d[0].node):a.pop(),l(d.splice(0,1)[0])}return i+f(r.substr(o))}(r,g(a),c)),o.value=E(o.value),t.innerHTML=o.value,t.className=function(t,e,n){var r=e?i[e]:n,o=[t.trim()];return t.match(/\bhljs\b/)||o.push("hljs"),-1===t.indexOf(r)&&o.push(r),o.join(" ").trim()}(t.className,u,o.language),t.result={language:o.language,re:o.relevance},o.second_best&&(t.second_best={language:o.second_best.language,re:o.second_best.relevance}))}function x(){if(!x.called){x.called=!0;var t=document.querySelectorAll("pre code");n.forEach.call(t,k)}}function w(t){return t=(t||"").toLowerCase(),o[t]||o[i[t]]}function C(t){var e=w(t);return e&&!e.disableAutodetect}return t.highlight=_,t.highlightAuto=y,t.fixMarkup=E,t.highlightBlock=k,t.configure=function(t){l=m(l,t)},t.initHighlighting=x,t.initHighlightingOnLoad=function(){addEventListener("DOMContentLoaded",x,!1),addEventListener("load",x,!1)},t.registerLanguage=function(e,n){var r=o[e]=n(t);v(r),r.aliases&&r.aliases.forEach((function(t){i[t]=e}))},t.listLanguages=function(){return r(o)},t.getLanguage=w,t.autoDetection=C,t.inherit=m,t.IDENT_RE="[a-zA-Z]\\w*",t.UNDERSCORE_IDENT_RE="[a-zA-Z_]\\w*",t.NUMBER_RE="\\b\\d+(\\.\\d+)?",t.C_NUMBER_RE="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",t.BINARY_NUMBER_RE="\\b(0b[01]+)",t.RE_STARTERS_RE="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",t.BACKSLASH_ESCAPE={begin:"\\\\[\\s\\S]",relevance:0},t.APOS_STRING_MODE={className:"string",begin:"'",end:"'",illegal:"\\n",contains:[t.BACKSLASH_ESCAPE]},t.QUOTE_STRING_MODE={className:"string",begin:'"',end:'"',illegal:"\\n",contains:[t.BACKSLASH_ESCAPE]},t.PHRASAL_WORDS_MODE={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},t.COMMENT=function(e,n,r){var o=t.inherit({className:"comment",begin:e,end:n,contains:[]},r||{});return o.contains.push(t.PHRASAL_WORDS_MODE),o.contains.push({className:"doctag",begin:"(?:TODO|FIXME|NOTE|BUG|XXX):",relevance:0}),o},t.C_LINE_COMMENT_MODE=t.COMMENT("//","$"),t.C_BLOCK_COMMENT_MODE=t.COMMENT("/\\*","\\*/"),t.HASH_COMMENT_MODE=t.COMMENT("#","$"),t.NUMBER_MODE={className:"number",begin:t.NUMBER_RE,relevance:0},t.C_NUMBER_MODE={className:"number",begin:t.C_NUMBER_RE,relevance:0},t.BINARY_NUMBER_MODE={className:"number",begin:t.BINARY_NUMBER_RE,relevance:0},t.CSS_NUMBER_MODE={className:"number",begin:t.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},t.REGEXP_MODE={className:"regexp",begin:/\//,end:/\/[gimuy]*/,illegal:/\n/,contains:[t.BACKSLASH_ESCAPE,{begin:/\[/,end:/\]/,relevance:0,contains:[t.BACKSLASH_ESCAPE]}]},t.TITLE_MODE={className:"title",begin:t.IDENT_RE,relevance:0},t.UNDERSCORE_TITLE_MODE={className:"title",begin:t.UNDERSCORE_IDENT_RE,relevance:0},t.METHOD_GUARD={begin:"\\.\\s*"+t.UNDERSCORE_IDENT_RE,relevance:0},t},i="object"==typeof window&&window||"object"==typeof self&&self,e.nodeType?i&&(i.hljs=o({}),void 0===(r=function(){return i.hljs}.apply(e,[]))||(t.exports=r)):o(e)},function(t,e,n){"use strict";t.exports=n(102)},function(t,e,n){"use strict";t.exports.encode=n(103),t.exports.decode=n(104),t.exports.format=n(105),t.exports.parse=n(106)},function(t,e){t.exports=/[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/},function(t,e){t.exports=/[\0-\x1F\x7F-\x9F]/},function(t,e){t.exports=/[ \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/},function(t,e,n){"use strict";var r="<[A-Za-z][A-Za-z0-9\\-]*(?:\\s+[a-zA-Z_:][a-zA-Z0-9:._-]*(?:\\s*=\\s*(?:[^\"'=<>`\\x00-\\x20]+|'[^']*'|\"[^\"]*\"))?)*\\s*\\/?>",o="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>",i=new RegExp("^(?:"+r+"|"+o+"|\x3c!----\x3e|\x3c!--(?:-?[^>-])(?:-?[^-])*--\x3e|<[?].*?[?]>|]*>|)"),a=new RegExp("^(?:"+r+"|"+o+")");t.exports.HTML_TAG_RE=i,t.exports.HTML_OPEN_CLOSE_TAG_RE=a},function(t,e,n){"use strict";t.exports.tokenize=function(t,e){var n,r,o,i,a=t.pos,s=t.src.charCodeAt(a);if(e)return!1;if(126!==s)return!1;if(o=(r=t.scanDelims(t.pos,!0)).length,i=String.fromCharCode(s),o<2)return!1;for(o%2&&(t.push("text","",0).content=i,o--),n=0;n=0;e--)95!==(n=s[e]).marker&&42!==n.marker||-1!==n.end&&(r=s[n.end],a=e>0&&s[e-1].end===n.end+1&&s[e-1].token===n.token-1&&s[n.end+1].token===r.token+1&&s[e-1].marker===n.marker,i=String.fromCharCode(n.marker),(o=t.tokens[n.token]).type=a?"strong_open":"em_open",o.tag=a?"strong":"em",o.nesting=1,o.markup=a?i+i:i,o.content="",(o=t.tokens[r.token]).type=a?"strong_close":"em_close",o.tag=a?"strong":"em",o.nesting=-1,o.markup=a?i+i:i,o.content="",a&&(t.tokens[s[e-1].token].content="",t.tokens[s[n.end+1].token].content="",e--))}},function(t,e,n){(function(t,r){var o;/*! https://mths.be/punycode v1.4.1 by @mathias */!function(i){e&&e.nodeType,t&&t.nodeType;var a="object"==typeof r&&r;a.global!==a&&a.window!==a&&a.self;var s,c=2147483647,u=36,l=1,f=26,p=38,d=700,h=72,m=128,g="-",v=/^xn--/,b=/[^\x20-\x7E]/,_=/[\x2E\u3002\uFF0E\uFF61]/g,y={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},E=u-l,k=Math.floor,x=String.fromCharCode;function w(t){throw new RangeError(y[t])}function C(t,e){for(var n=t.length,r=[];n--;)r[n]=e(t[n]);return r}function A(t,e){var n=t.split("@"),r="";return n.length>1&&(r=n[0]+"@",t=n[1]),r+C((t=t.replace(_,".")).split("."),e).join(".")}function T(t){for(var e,n,r=[],o=0,i=t.length;o=55296&&e<=56319&&o65535&&(e+=x((t-=65536)>>>10&1023|55296),t=56320|1023&t),e+=x(t)})).join("")}function R(t,e){return t+22+75*(t<26)-((0!=e)<<5)}function O(t,e,n){var r=0;for(t=n?k(t/d):t>>1,t+=k(t/e);t>E*f>>1;r+=u)t=k(t/E);return k(r+(E+1)*t/(t+p))}function N(t){var e,n,r,o,i,a,s,p,d,v,b,_=[],y=t.length,E=0,x=m,C=h;for((n=t.lastIndexOf(g))<0&&(n=0),r=0;r=128&&w("not-basic"),_.push(t.charCodeAt(r));for(o=n>0?n+1:0;o=y&&w("invalid-input"),((p=(b=t.charCodeAt(o++))-48<10?b-22:b-65<26?b-65:b-97<26?b-97:u)>=u||p>k((c-E)/a))&&w("overflow"),E+=p*a,!(p<(d=s<=C?l:s>=C+f?f:s-C));s+=u)a>k(c/(v=u-d))&&w("overflow"),a*=v;C=O(E-i,e=_.length+1,0==i),k(E/e)>c-x&&w("overflow"),x+=k(E/e),E%=e,_.splice(E++,0,x)}return S(_)}function L(t){var e,n,r,o,i,a,s,p,d,v,b,_,y,E,C,A=[];for(_=(t=T(t)).length,e=m,n=0,i=h,a=0;a<_;++a)(b=t[a])<128&&A.push(x(b));for(r=o=A.length,o&&A.push(g);r<_;){for(s=c,a=0;a<_;++a)(b=t[a])>=e&&bk((c-n)/(y=r+1))&&w("overflow"),n+=(s-e)*y,e=s,a=0;a<_;++a)if((b=t[a])c&&w("overflow"),b==e){for(p=n,d=u;!(p<(v=d<=i?l:d>=i+f?f:d-i));d+=u)C=p-v,E=u-v,A.push(x(R(v+C%E,0))),p=k(C/E);A.push(x(R(p,0))),i=O(n,y,r==o),n=0,++r}++n,++e}return A.join("")}s={version:"1.4.1",ucs2:{decode:T,encode:S},decode:N,encode:L,toASCII:function(t){return A(t,(function(t){return b.test(t)?"xn--"+L(t):t}))},toUnicode:function(t){return A(t,(function(t){return v.test(t)?N(t.slice(4).toLowerCase()):t}))}},void 0===(o=function(){return s}.call(e,n,e,t))||(t.exports=o)}()}).call(this,n(21)(t),n(11))},function(t,e,n){"use strict";t.exports=function(t,e){!0===e&&(e=0);var n=t.indexOf("://"),r=t.substring(0,n).split("+").filter(Boolean);return"number"==typeof e?r[e]:r}},function(t,e,n){"use strict";var r=n(64);t.exports=function t(e){if(Array.isArray(e))return-1!==e.indexOf("ssh")||-1!==e.indexOf("rsync");if("string"!=typeof e)return!1;var n=r(e);return e=e.substring(e.indexOf("://")+3),!!t(n)||e.indexOf("@")=o?t:r(t,e,n)}},function(t,e){var n=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]");t.exports=function(t){return n.test(t)}},function(t,e,n){var r=n(173),o=n(68),i=n(174);t.exports=function(t){return o(t)?i(t):r(t)}},function(t,e,n){var r=n(22),o=n(175),i=n(9),a=n(23),s=1/0,c=r?r.prototype:void 0,u=c?c.toString:void 0;t.exports=function t(e){if("string"==typeof e)return e;if(i(e))return o(e,t)+"";if(a(e))return u?u.call(e):"";var n=e+"";return"0"==n&&1/e==-s?"-0":n}},function(t,e,n){(function(e){var n="object"==typeof e&&e&&e.Object===Object&&e;t.exports=n}).call(this,n(11))},function(t,e,n){var r=n(182),o=n(183),i=n(184);t.exports=function(t,e,n){return e==e?i(t,e,n):r(t,o,n)}},function(t,e,n){var r=n(17),o=n(19),i="[object AsyncFunction]",a="[object Function]",s="[object GeneratorFunction]",c="[object Proxy]";t.exports=function(t){if(!o(t))return!1;var e=r(t);return e==a||e==s||e==i||e==c}},function(t,e,n){var r=n(75),o=n(196),i=Object.prototype.hasOwnProperty;t.exports=function(t){if(!r(t))return o(t);var e=[];for(var n in Object(t))i.call(t,n)&&"constructor"!=n&&e.push(n);return e}},function(t,e){var n=Object.prototype;t.exports=function(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||n)}},function(t,e,n){var r=n(198),o=n(44),i=n(203),a=n(78),s=n(204),c=n(17),u=n(77),l=u(r),f=u(o),p=u(i),d=u(a),h=u(s),m=c;(r&&"[object DataView]"!=m(new r(new ArrayBuffer(1)))||o&&"[object Map]"!=m(new o)||i&&"[object Promise]"!=m(i.resolve())||a&&"[object Set]"!=m(new a)||s&&"[object WeakMap]"!=m(new s))&&(m=function(t){var e=c(t),n="[object Object]"==e?t.constructor:void 0,r=n?u(n):"";if(r)switch(r){case l:return"[object DataView]";case f:return"[object Map]";case p:return"[object Promise]";case d:return"[object Set]";case h:return"[object WeakMap]"}return e}),t.exports=m},function(t,e){var n=Function.prototype.toString;t.exports=function(t){if(null!=t){try{return n.call(t)}catch(t){}try{return t+""}catch(t){}}return""}},function(t,e,n){var r=n(12)(n(8),"Set");t.exports=r},function(t,e,n){var r=n(48),o=n(233),i=n(234);function a(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new r;++ep))return!1;var h=l.get(t);if(h&&l.get(e))return h==e;var m=-1,g=!0,v=n&s?new r:void 0;for(l.set(t,e),l.set(e,t);++m>>24)|4278255360&(n[d]<<24|n[d]>>>8);n[c>>>5]|=128<>>9<<4)]=c;var h=s._ff,m=s._gg,g=s._hh,v=s._ii;for(d=0;d>>0,l=l+_>>>0,f=f+y>>>0,p=p+E>>>0}return r.endian([u,l,f,p])})._ff=function(t,e,n,r,o,i,a){var s=t+(e&n|~e&r)+(o>>>0)+a;return(s<>>32-i)+e},s._gg=function(t,e,n,r,o,i,a){var s=t+(e&r|n&~r)+(o>>>0)+a;return(s<>>32-i)+e},s._hh=function(t,e,n,r,o,i,a){var s=t+(e^n^r)+(o>>>0)+a;return(s<>>32-i)+e},s._ii=function(t,e,n,r,o,i,a){var s=t+(n^(e|~r))+(o>>>0)+a;return(s<>>32-i)+e},s._blocksize=16,s._digestsize=16,t.exports=function(t,e){if(null==t)throw new Error("Illegal argument "+t);var n=r.wordsToBytes(s(t,e));return e&&e.asBytes?n:e&&e.asString?a.bytesToString(n):r.bytesToHex(n)}},function(t,e,n){var r=n(94);"string"==typeof r&&(r=[[t.i,r,""]]);var o={hmr:!0,transform:void 0,insertInto:void 0};n(96)(r,o);r.locals&&(t.exports=r.locals)},function(t,e,n){(t.exports=n(95)(!1)).push([t.i,'@charset \'UTF-8\';\n\n/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput { /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect { /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type="button"],\n[type="reset"],\n[type="submit"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type="button"]::-moz-focus-inner,\n[type="reset"]::-moz-focus-inner,\n[type="submit"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type="button"]:-moz-focusring,\n[type="reset"]:-moz-focusring,\n[type="submit"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type="checkbox"],\n[type="radio"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type="number"]::-webkit-inner-spin-button,\n[type="number"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type="search"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type="search"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\n/*\n * Add the correct display in all browsers.\n */\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n\n/**\n * Manually forked from SUIT CSS Base: https://github.com/suitcss/base\n * A thin layer on top of normalize.css that provides a starting point more\n * suitable for web applications.\n */\n\n/**\n * 1. Prevent padding and border from affecting element width\n * https://goo.gl/pYtbK7\n * 2. Change the default font family in all browsers (opinionated)\n */\n\nhtml {\n box-sizing: border-box; /* 1 */\n font-family: sans-serif; /* 2 */\n}\n\n*,\n*::before,\n*::after {\n box-sizing: inherit;\n}\n\n/**\n * Removes the default spacing and border for appropriate elements.\n */\n\n\ndl,\ndd,\nh2,\nh3,\nh5,\np,\npre {\n margin: 0;\n}\n\nbutton {\n background: transparent;\n padding: 0;\n}\n\n/**\n * Work around a Firefox/IE bug where the transparent `button` background\n * results in a loss of the default `button` focus styles.\n */\n\nbutton:focus {\n outline: 1px dotted;\n outline: 5px auto -webkit-focus-ring-color;\n}\n\nol,\nul {\n list-style: none;\n margin: 0;\n padding: 0;\n}\n\n/**\n * Tailwind custom reset styles\n */\n\n/**\n * 1. Use the system font stack as a sane default.\n * 2. Use Tailwind\'s default "normal" line-height so the user isn\'t forced\n * to override it to ensure consistency even when using the default theme.\n */\n\nhtml {\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 1 */\n line-height: 1.5; /* 2 */\n}\n\n/**\n * Allow adding a border to an element by just adding a border-width.\n *\n * By default, the way the browser specifies that an element should have no\n * border is by setting it\'s border-style to `none` in the user-agent\n * stylesheet.\n *\n * In order to easily add borders to elements by just setting the `border-width`\n * property, we change the default border-style for all elements to `solid`, and\n * use border-width to hide them instead. This way our `border` utilities only\n * need to set the `border-width` property instead of the entire `border`\n * shorthand, making our border utilities much more straightforward to compose.\n *\n * https://github.com/tailwindcss/tailwindcss/pull/116\n */\n\n*,\n*::before,\n*::after {\n border-width: 0;\n border-style: solid;\n border-color: rgb(232, 229, 239);\n border-color: var(--gray-300);\n}\n\n/*\n * Ensure horizontal rules are visible by default\n */\n\n/**\n * Undo the `border-style: none` reset that Normalize applies to images so that\n * our `border-{width}` utilities have the expected effect.\n *\n * The Normalize reset is unnecessary for us since we default the border-width\n * to 0 on all elements.\n *\n * https://github.com/tailwindcss/tailwindcss/issues/362\n */\n\ntextarea {\n resize: vertical;\n}\n\ninput::-webkit-input-placeholder,\ntextarea::-webkit-input-placeholder {\n color: #a0aec0;\n}\n\ninput::-moz-placeholder,\ntextarea::-moz-placeholder {\n color: #a0aec0;\n}\n\ninput:-ms-input-placeholder,\ntextarea:-ms-input-placeholder {\n color: #a0aec0;\n}\n\ninput::-ms-input-placeholder,\ntextarea::-ms-input-placeholder {\n color: #a0aec0;\n}\n\ninput::placeholder,\ntextarea::placeholder {\n color: #a0aec0;\n}\n\nbutton,\n[role="button"] {\n cursor: pointer;\n}\n\n\nh2,\nh3,\nh5 {\n font-size: inherit;\n font-weight: inherit;\n}\n\n/**\n * Reset links to optimize for opt-in styling instead of\n * opt-out.\n */\n\na {\n color: inherit;\n text-decoration: inherit;\n}\n\n/**\n * Reset form element properties that are easy to forget to\n * style explicitly so you don\'t inadvertently introduce\n * styles that deviate from your design system. These styles\n * supplement a partial reset that is already applied by\n * normalize.css.\n */\n\nbutton,\ninput,\nselect,\ntextarea {\n padding: 0;\n line-height: inherit;\n color: inherit;\n}\n\n/**\n * Use the configured \'mono\' font family for elements that\n * are expected to be rendered with a monospace font, falling\n * back to the system monospace stack if there is no configured\n * \'mono\' font family.\n */\n\npre,\ncode {\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;\n}\n\n/**\n * Make replaced elements `display: block` by default as that\'s\n * the behavior you want almost all of the time. Inspired by\n * CSS Remedy, with `svg` added as well.\n *\n * https://github.com/mozdevs/cssremedy/issues/14\n */\n\n\nsvg,\ncanvas {\n display: block;\n vertical-align: middle;\n}\n\n/**\n * Constrain images and videos to the parent width and preserve\n * their instrinsic aspect ratio.\n *\n * https://github.com/mozdevs/cssremedy/issues/14\n */\n\n:root {\n --white: rgb(255, 255, 255);\n --blue-400: rgb(122, 122, 255);\n --green-100: rgb(227, 255, 242);\n --green-300: rgb(148, 242, 200);\n --green-400: rgb(114, 224, 175);\n --green-500: rgb(34, 212, 146);\n --purple-100: rgb(251, 245, 255);\n --purple-200: rgb(236, 211, 253);\n --purple-300: rgb(214, 188, 250);\n --purple-400: rgb(183, 148, 244);\n --purple-500: rgb(121, 0, 245);\n --purple-600: rgb(113, 7, 220);\n --purple-800: rgb(79, 15, 143);\n --red-100: rgb(255, 235, 243);\n --red-300: rgb(250, 133, 162);\n --red-400: rgb(250, 78, 121);\n --yellow-100: rgb(255, 253, 235);\n --yellow-200: rgb(255, 248, 196);\n --yellow-300: rgb(255, 243, 148);\n --yellow-400: rgb(255, 234, 79);\n --tint-50: rgba(0, 0, 150, 0.015);\n --tint-100: rgba(0, 0, 150, 0.025);\n --tint-200: rgba(0, 0, 100, 0.07);\n --tint-300: rgba(25, 0, 100, 0.1);\n --tint-400: rgba(20, 0, 100, 0.2);\n --tint-500: rgba(30, 20, 90, 0.35);\n --tint-600: rgba(30, 20, 70, 0.5);\n --tint-700: rgba(15, 10, 60, 0.75);\n --gray-50: rgb(252, 252, 253);\n --gray-100: rgb(247, 247, 252);\n --gray-200: rgb(238, 238, 245);\n --gray-300: rgb(232, 229, 239);\n --gray-400: rgb(209, 204, 224);\n --gray-500: rgb(176, 173, 197);\n --gray-600: rgb(142, 137, 162);\n --gray-700: rgb(75, 71, 109);\n --gray-800: rgb(51, 47, 81);\n /* dark theme */\n --dark-white: rgb(38, 38, 50);\n --dark-blue-400: rgb(85, 0, 255);\n --dark-green-100: rgb(32, 97, 90);\n --dark-green-300: rgb(55, 111, 123);\n --dark-green-500: rgb(63, 152, 142);\n --dark-purple-100: rgb(60, 46, 96);\n --dark-purple-200: rgb(81, 50, 128);\n --dark-purple-300: rgb(104, 85, 147);\n --dark-purple-400: rgb(106, 87, 148);\n --dark-purple-500: rgb(126, 107, 167);\n --dark-purple-600: rgb(145, 127, 183);\n --dark-purple-800: rgb(158, 140, 194);\n --dark-red-100: rgb(255, 235, 243);\n --dark-red-300: rgb(250, 133, 162);\n --dark-red-400: rgb(250, 78, 121);\n --dark-yellow-100: rgb(61, 57, 49);\n --dark-yellow-200: rgb(90, 78, 53);\n --dark-yellow-300: rgb(119, 103, 70);\n --dark-yellow-400: rgb(145, 121, 90);\n --dark-tint-50: rgba(240, 240, 245, 0.05);\n --dark-tint-100: rgba(240, 240, 245, 0.075);\n --dark-tint-200: rgba(240, 240, 245, 0.1);\n --dark-tint-300: rgba(240, 240, 245, 0.125);\n --dark-tint-400: rgba(240, 240, 245, 0.25);\n --dark-tint-500: rgba(240, 240, 245, 0.45);\n --dark-tint-600: rgba(240, 240, 245, 0.55);\n --dark-tint-700: rgba(240, 240, 245, 0.65);\n --dark-gray-0: rgb(30, 30, 40);\n --dark-gray-50: rgb(38, 38, 50);\n --dark-gray-100: rgb(48, 48, 58);\n --dark-gray-200: rgb(51, 51, 65);\n --dark-gray-300: rgb(75, 75, 85);\n --dark-gray-400: rgb(142, 142, 160);\n --dark-gray-500: rgb(152, 152, 170);\n --dark-gray-600: rgb(165, 165, 175);\n --dark-gray-700: rgb(216, 216, 223);\n --dark-gray-800: rgb(230, 230, 235);\n --dark-shadow-sm: \'0 2px 0 var(--gray-0)\';\n --dark-shadow-default: \'0 2px 0 var(--gray-50), 2px 4px 0 var(--gray-0)\';\n --dark-shadow-lg: \'0 2px 0 var(--gray-100), 2px 4px 0 var(--gray-50), 4px 6px 0 var(--gray-0)\';\n --dark-shadow-input: \'inset 0 2px 0 var(--gray-100)\';\n}\n\nhtml {\n box-sizing: border-box;\n font-size: 14px;\n background-color: rgb(238, 238, 245);\n background-color: var(--gray-200);\n overflow-x: hidden;\n overflow-y: scroll;\n}\n\n@media (min-width: 1024px) {\n html {\n font-size: 16px;\n }\n}\n\n/* Exclude iframes like 1Password save modals */\n\n*:not(iframe),\n*:after,\n*:before {\n position: relative;\n}\n\n*:focus {\n outline: 0 !important;\n}\n\nbody {\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";\n color: rgb(51, 47, 81);\n color: var(--gray-800);\n line-height: 1.5;\n width: 100%;\n}\n\n/* Dark theme */\n\n@media (prefers-color-scheme: dark) {\n html.theme-auto {\n --white: var(--dark-white);\n --blue-400: var(--dark-blue-400);\n --green-100: var(--dark-green-100);\n --green-300: var(--dark-green-300);\n --green-400: var(--dark-green-400);\n --green-500: var(--dark-green-500);\n --purple-100: var(--dark-purple-100);\n --purple-200: var(--dark-purple-200);\n --purple-300: var(--dark-purple-300);\n --purple-400: var(--dark-purple-400);\n --purple-500: var(--dark-purple-500);\n --purple-600: var(--dark-purple-600);\n --purple-800: var(--dark-purple-800);\n --red-100: var(--dark-red-100);\n --red-300: var(--dark-red-300);\n --red-400: var(--dark-red-400);\n --yellow-100: var(--dark-yellow-100);\n --yellow-200: var(--dark-yellow-200);\n --yellow-300: var(--dark-yellow-300);\n --yellow-400: var(--dark-yellow-400);\n --tint-50: var(--dark-tint-50);\n --tint-100: var(--dark-tint-100);\n --tint-200: var(--dark-tint-200);\n --tint-300: var(--dark-tint-300);\n --tint-400: var(--dark-tint-400);\n --tint-500: var(--dark-tint-500);\n --tint-600: var(--dark-tint-600);\n --tint-700: var(--dark-tint-700);\n --gray-0: var(--dark-gray-0);\n --gray-50: var(--dark-gray-50);\n --gray-100: var(--dark-gray-100);\n --gray-200: var(--dark-gray-200);\n --gray-300: var(--dark-gray-300);\n --gray-400: var(--dark-gray-400);\n --gray-500: var(--dark-gray-500);\n --gray-600: var(--dark-gray-600);\n --gray-700: var(--dark-gray-700);\n --gray-800: var(--dark-gray-800);\n --shadow-sm: \'0 2px 0 var(--gray-50)\';\n --shadow-default: \'0 2px 0 var(--gray-100), 2px 4px 0 var(--gray-50)\';\n --shadow-lg: \'0 2px 0 var(--gray-200), 2px 4px 0 var(--gray-100), 4px 6px 0 var(--gray-50)\';\n --shadow-input: \'inset 0 2px 0 var(--gray-100)\';\n }\n\n html.theme-auto {\n background-color: rgb(30, 30, 40);\n background-color: var(--dark-gray-0);\n }\n\n html.theme-auto .checkbox:before {\n background-color: rgb(51, 47, 81);\n background-color: var(--gray-800);\n }\n\n html.theme-auto .tab-nav,\n html.theme-auto .dropdown {\n background-color: rgb(209, 204, 224);\n background-color: var(--gray-400);\n }\n}\n\nhtml.theme-dark {\n --white: var(--dark-white);\n --blue-400: var(--dark-blue-400);\n --green-100: var(--dark-green-100);\n --green-300: var(--dark-green-300);\n --green-400: var(--dark-green-400);\n --green-500: var(--dark-green-500);\n --purple-100: var(--dark-purple-100);\n --purple-200: var(--dark-purple-200);\n --purple-300: var(--dark-purple-300);\n --purple-400: var(--dark-purple-400);\n --purple-500: var(--dark-purple-500);\n --purple-600: var(--dark-purple-600);\n --purple-800: var(--dark-purple-800);\n --red-100: var(--dark-red-100);\n --red-300: var(--dark-red-300);\n --red-400: var(--dark-red-400);\n --yellow-100: var(--dark-yellow-100);\n --yellow-200: var(--dark-yellow-200);\n --yellow-300: var(--dark-yellow-300);\n --yellow-400: var(--dark-yellow-400);\n --tint-50: var(--dark-tint-50);\n --tint-100: var(--dark-tint-100);\n --tint-200: var(--dark-tint-200);\n --tint-300: var(--dark-tint-300);\n --tint-400: var(--dark-tint-400);\n --tint-500: var(--dark-tint-500);\n --tint-600: var(--dark-tint-600);\n --tint-700: var(--dark-tint-700);\n --gray-0: var(--dark-gray-0);\n --gray-50: var(--dark-gray-50);\n --gray-100: var(--dark-gray-100);\n --gray-200: var(--dark-gray-200);\n --gray-300: var(--dark-gray-300);\n --gray-400: var(--dark-gray-400);\n --gray-500: var(--dark-gray-500);\n --gray-600: var(--dark-gray-600);\n --gray-700: var(--dark-gray-700);\n --gray-800: var(--dark-gray-800);\n --shadow-sm: \'0 2px 0 var(--gray-50)\';\n --shadow-default: \'0 2px 0 var(--gray-100), 2px 4px 0 var(--gray-50)\';\n --shadow-lg: \'0 2px 0 var(--gray-200), 2px 4px 0 var(--gray-100), 4px 6px 0 var(--gray-50)\';\n --shadow-input: \'inset 0 2px 0 var(--gray-100)\';\n}\n\nhtml.theme-dark {\n background-color: rgb(30, 30, 40);\n background-color: var(--dark-gray-0);\n}\n\nhtml.theme-dark .checkbox:before {\n background-color: rgb(51, 47, 81);\n background-color: var(--gray-800);\n}\n\nhtml.theme-dark .tab-nav,\nhtml.theme-dark .dropdown {\n background-color: rgb(209, 204, 224);\n background-color: var(--gray-400);\n}\n\n.alert {\n padding-left: 1rem;\n padding-right: 1rem;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n color: rgb(75, 71, 109);\n color: var(--gray-700);\n border-width: 0;\n border-left-width: 2px;\n border-color: rgba(0, 0, 150, 0.025);\n border-color: var(--tint-100);\n}\n\n.alert-warning {\n background-color: rgb(255, 253, 235);\n background-color: var(--yellow-100);\n border-color: rgb(255, 234, 79);\n border-color: var(--yellow-400);\n}\n\n.alert-empty {\n color: rgba(30, 20, 90, 0.35);\n color: var(--tint-500);\n padding-top: 2rem;\n padding-bottom: 2rem;\n text-align: center;\n}\n\n.button {\n display: inline-flex;\n align-items: center;\n justify-items: center;\n align-content: center;\n justify-content: center;\n padding-left: 1rem;\n padding-right: 1rem;\n min-height: 2.5rem;\n border-width: 0;\n background-color: rgb(121, 0, 245);\n background-color: var(--purple-500);\n overflow: hidden;\n border-radius: 0.125rem;\n color: rgb(255, 255, 255);\n color: var(--white);\n line-height: 1;\n text-decoration: none;\n}\n\n.button:after {\n content: \'\';\n display: block;\n position: absolute;\n left: 100%;\n bottom: 0;\n width: 200%;\n height: 100vh;\n background-color: rgba(30, 20, 90, 0.35);\n background-color: var(--tint-500);\n transform: translateX(-1rem) skewX(-65deg);\n transform-origin: 0% 100%;\n transition: transform 0.75s ease-out;\n}\n\n.button:hover:after {\n transform: translateX(-1.5rem) skewX(-65deg);\n transition-duration: 0.3s;\n}\n\n.button:not(:disabled):active:after {\n transition-delay: 0.2s;\n transition-duration: 0.3s;\n transform: translateX(-100%) skewX(-65deg);\n}\n\n.button-secondary {\n display: inline-flex;\n align-items: center;\n justify-items: center;\n align-content: center;\n justify-content: center;\n padding-left: 1rem;\n padding-right: 1rem;\n min-height: 2.5rem;\n border-width: 0;\n background-color: rgb(121, 0, 245);\n background-color: var(--purple-500);\n overflow: hidden;\n border-radius: 0.125rem;\n color: rgb(255, 255, 255);\n color: var(--white);\n line-height: 1;\n text-decoration: none;\n background-color: rgba(0, 0, 100, 0.07);\n background-color: var(--tint-200);\n color: rgba(15, 10, 60, 0.75);\n color: var(--tint-700);\n}\n\n.button-secondary:hover {\n background-color: rgba(25, 0, 100, 0.1);\n background-color: var(--tint-300);\n}\n\n.button-secondary:not(:disabled):active {\n background-color: rgba(30, 20, 90, 0.35);\n background-color: var(--tint-500);\n opacity: 0.5;\n}\n\n.button:focus,\n.button-secondary:focus {\n outline: 0;\n}\n\n.button:disabled,\n.button-secondary:disabled {\n cursor: not-allowed;\n opacity: 0.25;\n}\n\n.button-sm {\n font-size: 0.875rem;\n}\n\n.button.button-sm,\n.button-secondary.button-sm {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n min-height: 1.5rem;\n border-radius: 0.125rem;\n}\n\n.button-lg {\n font-size: 1.125rem;\n}\n\n.button.button-lg,\n.button-secondary.button-lg {\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n min-height: 3rem;\n}\n\n.button-lg.button:after {\n transform: translateX(-2rem) skewX(-65deg);\n}\n\n.button-lg.button:hover:after {\n transform: translateX(-3rem) skewX(-65deg);\n}\n\n.card {\n position: relative;\n display: grid;\n align-items: stretch;\n border-width: 1px;\n border-color: rgba(25, 0, 100, 0.1);\n border-color: var(--tint-300);\n background-color: rgb(255, 255, 255);\n background-color: var(--white);\n box-shadow: var(--shadow-sm);\n border-radius: 0.125rem;\n}\n\n.card-details {\n overflow: hidden;\n}\n\n.card-details-overflow {\n display: grid;\n grid-gap: 1rem;\n padding: 1.5rem;\n overflow-x: auto;\n}\n\n@media (min-width: 768px) {\n .card {\n grid-template-columns: 16rem 1fr;\n }\n\n .card-has-header {\n grid-template-rows: auto 1fr;\n }\n\n .card.card-no-props {\n display: block;\n }\n\n .card-header {\n grid-column-end: span 2;\n }\n\n .card-details-overflow {\n padding: 2rem;\n }\n}\n\n.checkbox-label {\n display: grid;\n justify-content: flex-start;\n grid-template-columns: auto;\n grid-auto-flow: column;\n grid-gap: 0.5rem;\n min-height: 0;\n cursor: pointer;\n color: rgb(51, 47, 81);\n color: var(--gray-800);\n}\n\n.checkbox {\n width: 1.5em;\n height: 1.5em;\n border-style: none;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n\n.checkbox:before {\n position: absolute;\n width: 1.5em;\n height: 1.5em;\n border-width: 1px;\n border-color: rgba(0, 0, 100, 0.07);\n border-color: var(--tint-200);\n background-color: rgb(252, 252, 253);\n background-color: var(--gray-50);\n box-shadow: var(--shadow-default);\n border-radius: 0.125rem;\n overflow: hidden;\n content: \'\';\n}\n\n.checkbox:after {\n position: absolute;\n top: 50%;\n left: 50%;\n color: rgb(121, 0, 245);\n color: var(--purple-500);\n font-size: 1.2em;\n font-weight: 900;\n line-height: 1;\n content: \'✓\';\n transition: transform 0.1s;\n transform: translate(-50%, -50%) scale(0);\n}\n\n.checkbox:focus,\n.checkbox:hover {\n outline: 0;\n}\n\n.checkbox:focus:before {\n border-color: rgba(25, 0, 100, 0.1);\n border-color: var(--tint-300);\n background-color: rgb(255, 255, 255);\n background-color: var(--white);\n}\n\n.checkbox:hover:before {\n border-color: rgba(25, 0, 100, 0.1);\n border-color: var(--tint-300);\n}\n\n.checkbox:checked:after {\n transform: translate(-50%, -50%) scale(1);\n}\n\n.checkbox:disabled {\n opacity: 0.5;\n}\n\n.code {\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;\n color: rgb(75, 71, 109);\n color: var(--gray-700);\n}\n\n.code-inline {\n display: inline-block;\n margin-top: -0.25rem;\n margin-bottom: -0.25rem;\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n border-radius: 0.125rem;\n background-color: rgb(247, 247, 252);\n background-color: var(--gray-100);\n border-width: 1px;\n border-color: rgba(0, 0, 150, 0.025);\n border-color: var(--tint-100);\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;\n color: rgb(75, 71, 109);\n color: var(--gray-700);\n word-break: break-all;\n}\n\n.code-block {\n display: block;\n padding-left: 1rem;\n padding-right: 1rem;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n border-radius: 0.125rem;\n background-color: rgb(247, 247, 252);\n background-color: var(--gray-100);\n border-width: 1px;\n border-color: rgba(0, 0, 150, 0.025);\n border-color: var(--tint-100);\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;\n color: rgb(75, 71, 109);\n color: var(--gray-700);\n}\n\n.code-inline pre,\n.code-block pre {\n white-space: pre-wrap;\n}\n\n.definition-list {\n display: grid;\n grid-column-gap: 1.5rem;\n grid-row-gap: 0.5rem;\n}\n\n.definition-list .definition-list {\n border-left-width: 2px;\n border-color: rgb(232, 229, 239);\n border-color: var(--gray-300);\n padding-left: 1rem;\n}\n\n@media (min-width: 640px) {\n .definition-list {\n grid-template-columns: 8rem 1fr;\n }\n\n .definition-list .definition-list {\n grid-template-columns: auto 1fr;\n }\n}\n\n@media (min-width: 1024px) {\n .definition-list {\n grid-template-columns: 14rem 1fr;\n }\n}\n\n.definition-list-title {\n font-weight: 600;\n margin-bottom: 0.75rem;\n}\n\n@media (min-width: 640px) {\n .definition-list-title {\n margin-left: 9.5rem;\n }\n}\n\n@media (min-width: 1024px) {\n .definition-list-title {\n margin-left: 15.5rem;\n }\n}\n\n.definition-label {\n color: rgba(30, 20, 70, 0.5);\n color: var(--tint-600);\n word-wrap: break-word;\n line-height: 1.25;\n}\n\n@media (min-width: 640px) {\n .definition-label {\n text-align: right;\n }\n}\n\n.definition-value {\n word-break: break-all;\n margin-bottom: 1rem;\n line-height: 1.25;\n}\n\n@media (min-width: 640px) {\n .definition-value {\n margin-bottom: 0;\n }\n}\n\n.definition-label:empty:after,\n.definition-value:empty:after {\n content: \'—\';\n color: rgb(232, 229, 239);\n color: var(--gray-300);\n}\n\n.definition-list-empty {\n color: rgb(232, 229, 239);\n color: var(--gray-300);\n}\n\n@media (min-width: 640px) {\n .definition-list-empty {\n grid-column-start: 2;\n }\n\n .definition-list .definition-list .definition-list-empty {\n grid-column-start: 1;\n }\n}\n\n.dropdown {\n position: absolute;\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);\n overflow-y: auto;\n max-height: \'66vh\';\n border-width: 1px;\n border-top-width: 0;\n border-color: rgba(0, 0, 100, 0.07);\n border-color: var(--tint-200);\n color: rgb(255, 255, 255);\n color: var(--white);\n background-color: rgb(75, 71, 109);\n background-color: var(--gray-700);\n}\n\n.layout-col {\n max-width: 80rem;\n padding-left: 1rem;\n padding-right: 1rem;\n margin-left: auto;\n margin-right: auto;\n}\n\n@media (min-width: 640px) {\n .layout-col {\n padding-left: 2.5rem;\n padding-right: 2.5rem;\n }\n}\n\n.link {\n text-decoration: underline;\n -webkit-text-decoration-color: rgb(209, 204, 224);\n text-decoration-color: rgb(209, 204, 224);\n -webkit-text-decoration-color: var(--gray-400);\n text-decoration-color: var(--gray-400);\n}\n\n.link:hover {\n color: rgb(121, 0, 245);\n color: var(--purple-500);\n -webkit-text-decoration-color: rgb(214, 188, 250);\n text-decoration-color: rgb(214, 188, 250);\n -webkit-text-decoration-color: var(--purple-300);\n text-decoration-color: var(--purple-300);\n}\n\n.links a {\n text-decoration: underline;\n -webkit-text-decoration-color: rgb(209, 204, 224);\n text-decoration-color: rgb(209, 204, 224);\n -webkit-text-decoration-color: var(--gray-400);\n text-decoration-color: var(--gray-400);\n}\n\n.links a:hover {\n color: rgb(121, 0, 245);\n color: var(--purple-500);\n -webkit-text-decoration-color: rgb(214, 188, 250);\n text-decoration-color: rgb(214, 188, 250);\n -webkit-text-decoration-color: var(--purple-300);\n text-decoration-color: var(--purple-300);\n}\n\n.link-dimmed {\n font-weight: 400;\n text-decoration: underline;\n color: rgba(30, 20, 70, 0.5);\n color: var(--tint-600);\n -webkit-text-decoration-color: rgba(20, 0, 100, 0.2);\n text-decoration-color: rgba(20, 0, 100, 0.2);\n -webkit-text-decoration-color: var(--tint-400);\n text-decoration-color: var(--tint-400);\n}\n\n.link-dimmed:hover {\n color: rgba(15, 10, 60, 0.75);\n color: var(--tint-700);\n -webkit-text-decoration-color: rgba(30, 20, 90, 0.35);\n text-decoration-color: rgba(30, 20, 90, 0.35);\n -webkit-text-decoration-color: var(--tint-500);\n text-decoration-color: var(--tint-500);\n}\n\n.link-solution {\n text-decoration: underline;\n color: rgb(75, 71, 109);\n color: var(--gray-700);\n -webkit-text-decoration-color: rgba(20, 0, 100, 0.2);\n text-decoration-color: rgba(20, 0, 100, 0.2);\n -webkit-text-decoration-color: var(--tint-400);\n text-decoration-color: var(--tint-400);\n}\n\n.link-solution:hover {\n color: rgb(51, 47, 81);\n color: var(--gray-800);\n -webkit-text-decoration-color: rgba(30, 20, 90, 0.35);\n text-decoration-color: rgba(30, 20, 90, 0.35);\n -webkit-text-decoration-color: var(--tint-500);\n text-decoration-color: var(--tint-500);\n}\n\n.grid {\n display: grid;\n}\n\n.cols-2 {\n grid-template-columns: repeat(2, 1fr);\n}\n\n.cols-auto {\n grid-template-columns: auto;\n grid-auto-flow: column;\n}\n\n.cols-auto-1fr {\n grid-template-columns: auto 1fr;\n}\n\n.gap-1 {\n grid-gap: 0.25rem;\n}\n\n.gap-2 {\n grid-gap: 0.5rem;\n}\n\n.gapy-2 {\n grid-row-gap: 0.5rem;\n}\n\n.gap-4 {\n grid-gap: 1rem;\n}\n\n.gapx-4 {\n grid-column-gap: 1rem;\n}\n\n.gapx-6 {\n grid-column-gap: 1.5rem;\n}\n\n.span-2 {\n grid-column-end: span 2;\n}\n\n.place-center {\n align-items: center;\n justify-items: center;\n align-content: center;\n justify-content: center;\n}\n\n.icon {\n fill: currentColor;\n height: 1em;\n line-height: 1;\n width: 1em;\n display: inline-block;\n vertical-align: baseline;\n vertical-align: initial;\n}\n\n.scrollbar::-webkit-scrollbar,\n.scrollbar::-webkit-scrollbar-corner {\n width: 4px;\n height: 4px;\n}\n\n.scrollbar::-webkit-scrollbar-track {\n background-color: rgb(255, 255, 255);\n background-color: var(--white);\n}\n\n.scrollbar::-webkit-scrollbar-track:horizontal,\n.scrollbar-lg::-webkit-scrollbar-track:horizontal {\n border-top: solid 1px rgba(0, 0, 0, 0.1);\n}\n\n.scrollbar::-webkit-scrollbar-track:vertical,\n.scrollbar-lg::-webkit-scrollbar-track:vertical {\n border-left: solid 1px rgba(0, 0, 0, 0.1);\n}\n\n.scrollbar::-webkit-scrollbar-thumb {\n background-color: rgb(209, 204, 224);\n background-color: var(--gray-400);\n border-radius: 2px;\n}\n\n.scrollbar-lg::-webkit-scrollbar,\n.scrollbar-lg::-webkit-scrollbar-corner {\n width: 8px;\n height: 8px;\n}\n\n.scrollbar-lg::-webkit-scrollbar-track {\n background-color: rgb(252, 252, 253);\n background-color: var(--gray-50);\n}\n\n.scrollbar-lg::-webkit-scrollbar-thumb {\n background-color: rgb(142, 137, 162);\n background-color: var(--gray-600);\n border-radius: 4px;\n}\n\n:root {\n --stack-height: var(--tab-main-height);\n}\n\n.stack {\n display: grid;\n grid-template: calc(0.4 * calc(100vh - 3rem)) calc(0.6 * calc(100vh - 3rem)) / 1fr;\n grid-template: calc(0.4 * var(--stack-height)) calc(0.6 * var(--stack-height)) / 1fr;\n}\n\n@media (min-width: 640px) {\n .stack {\n align-items: stretch;\n grid-template: calc(100vh - 3rem) / 22rem 1fr;\n grid-template: var(--stack-height) / 22rem 1fr;\n }\n}\n\n.stack-nav {\n height: 100%;\n background-color: rgb(255, 255, 255);\n background-color: var(--white);\n border-bottom-width: 1px;\n border-color: rgb(232, 229, 239);\n border-color: var(--gray-300);\n font-size: 0.75rem;\n overflow: hidden;\n display: grid;\n grid-template: 1fr / 100%;\n}\n\n@media (min-width: 640px) {\n .stack-nav {\n display: grid;\n grid-template: auto 1fr / 100%;\n border-bottom-width: 0;\n border-right-width: 1px;\n }\n}\n\n.stack-nav-actions {\n display: none;\n}\n\n@media (min-width: 640px) {\n .stack-nav-actions {\n display: grid;\n align-items: center;\n justify-content: space-between;\n grid-template-columns: auto;\n grid-auto-flow: column;\n padding-top: 1rem;\n padding-bottom: 1rem;\n background-color: rgb(247, 247, 252);\n background-color: var(--gray-100);\n }\n}\n\n.stack-nav-arrows {\n display: grid;\n grid-template-columns: repeat(2, 1fr);\n justify-content: center;\n align-items: center;\n grid-gap: 0.25rem;\n width: 2.5rem;\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n}\n\n.stack-nav-arrow {\n color: rgb(176, 173, 197);\n color: var(--gray-500);\n font-size: 0.75rem;\n}\n\n.stack-nav-arrow:hover {\n color: rgb(75, 71, 109);\n color: var(--gray-700);\n}\n\n.stack-frames {\n overflow: hidden;\n border-top-width: 1px;\n border-color: rgb(238, 238, 245);\n border-color: var(--gray-200);\n}\n\n.stack-frames-scroll {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n overflow-x: hidden;\n overflow-y: auto;\n}\n\n.stack-frame-group {\n border-bottom-width: 1px;\n border-color: rgb(232, 229, 239);\n border-color: var(--gray-300);\n background-color: rgb(255, 255, 255);\n background-color: var(--white);\n}\n\n.stack-frame {\n display: grid;\n align-items: flex-end;\n grid-template-columns: 2rem auto auto;\n}\n\n@media (min-width: 640px) {\n .stack-frame {\n grid-template-columns: 3rem 1fr auto;\n }\n}\n\n.stack-frame:not(:first-child) {\n margin-top: -0.5rem;\n}\n\n.stack-frame-selected,\n.stack-frame-selected .stack-frame-header {\n background-color: rgb(251, 245, 255);\n background-color: var(--purple-100);\n z-index: 10;\n}\n\n.stack-frame-group-vendor .stack-frame-selected,\n.stack-frame-group-vendor .stack-frame-selected .stack-frame-header {\n /* @apply bg-gray-100; */\n}\n\n.stack-frame-number {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n padding-top: 1rem;\n padding-bottom: 1rem;\n color: rgb(121, 0, 245);\n color: var(--purple-500);\n font-feature-settings: "tnum";\n font-variant-numeric: tabular-nums;\n text-align: center;\n}\n\n.stack-frame-group-vendor .stack-frame-number {\n color: rgba(30, 20, 90, 0.35);\n color: var(--tint-500);\n}\n\n.stack-frame-header {\n margin-right: -2.5rem;\n width: 100%;\n}\n\n.stack-frame-text {\n display: grid;\n align-items: center;\n grid-gap: 0.5rem;\n border-left-width: 2px;\n padding-left: 0.75rem;\n padding-top: 1rem;\n padding-bottom: 1rem;\n border-color: rgb(214, 188, 250);\n border-color: var(--purple-300);\n color: rgb(75, 71, 109);\n color: var(--gray-700);\n}\n\n.stack-frame-group-vendor .stack-frame-text {\n border-color: rgb(232, 229, 239);\n border-color: var(--gray-300);\n}\n\n.stack-frame-selected .stack-frame-text {\n border-color: rgb(121, 0, 245);\n border-color: var(--purple-500);\n}\n\n.stack-frame-group-vendor .stack-frame-selected .stack-frame-text {\n border-color: rgb(176, 173, 197);\n border-color: var(--gray-500);\n}\n\n.stack-frame-line {\n padding-left: 0.5rem;\n padding-right: 0.25rem;\n padding-top: 1rem;\n padding-bottom: 1rem;\n text-align: right;\n line-height: 1.25;\n}\n\n.stack-main {\n display: grid;\n height: 100%;\n overflow: hidden;\n background-color: rgb(247, 247, 252);\n background-color: var(--gray-100);\n grid-template: auto 1fr / 100%;\n}\n\n.stack-main-header {\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n border-bottom-width: 1px;\n border-color: rgb(238, 238, 245);\n border-color: var(--gray-200);\n font-size: 0.75rem;\n}\n\n@media (min-width: 640px) {\n .stack-main-header {\n padding-top: 1rem;\n padding-bottom: 1rem;\n font-size: 1rem;\n }\n}\n\n.stack-main-content {\n overflow: hidden;\n}\n\n.stack-viewer {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n display: flex;\n overflow: auto;\n background-color: rgb(255, 255, 255);\n background-color: var(--white);\n font-size: 0.75rem;\n}\n\n.stack-ruler {\n position: -webkit-sticky;\n position: sticky;\n flex: none;\n left: 0;\n z-index: 20;\n}\n\n.stack-lines {\n min-height: 100%;\n border-right-width: 1px;\n border-color: rgb(238, 238, 245);\n border-color: var(--gray-200);\n background-color: rgb(247, 247, 252);\n background-color: var(--gray-100);\n padding-top: 1rem;\n padding-bottom: 1rem;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n\n.stack-line {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;\n color: rgba(30, 20, 70, 0.5);\n color: var(--tint-600);\n line-height: 2;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n\n.stack-line-highlight {\n background-color: rgb(236, 211, 253);\n background-color: var(--purple-200);\n}\n\n.stack-line-selected {\n background-color: rgb(255, 248, 196);\n background-color: var(--yellow-200);\n}\n\n.stack-line-highlight.stack-line-selected {\n background-color: rgb(255, 243, 148);\n background-color: var(--yellow-300);\n}\n\n.stack-code {\n flex-grow: 1;\n padding-top: 1rem;\n padding-bottom: 1rem;\n}\n\n.stack-code-line {\n padding-left: 1.5rem;\n color: rgb(75, 71, 109);\n color: var(--gray-700);\n line-height: 2;\n}\n\n.stack-code-line:hover {\n background-color: rgb(251, 245, 255);\n background-color: var(--purple-100);\n}\n\n.stack-code-line .editor-link {\n display: inline-block;\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n opacity: 0;\n color: rgb(183, 148, 244);\n color: var(--purple-400);\n}\n\n.stack-code-line .editor-link:hover {\n color: rgb(121, 0, 245);\n color: var(--purple-500);\n}\n\n.stack-code-line:hover .editor-link {\n opacity: 1;\n}\n\n.stack-code-line-highlight {\n background-color: rgb(251, 245, 255);\n background-color: var(--purple-100);\n}\n\n.stack-code-line-selected {\n background-color: rgb(255, 253, 235);\n background-color: var(--yellow-100);\n}\n\n.stack-code-line-highlight.stack-code-line-selected {\n background-color: rgb(255, 248, 196);\n background-color: var(--yellow-200);\n}\n\n.solution-hiding {\n pointer-events: none;\n}\n\n.solution-hidden {\n height: 0;\n overflow: hidden;\n}\n\n.solution-hidden .solution-main,\n.solution-hiding .solution-main {\n transform: translateY(-25px) scaleY(0.95);\n opacity: 0;\n}\n\n.solution-main {\n z-index: 1;\n color: rgb(51, 47, 81);\n color: var(--gray-800);\n opacity: 1;\n transition: all 0.1s;\n}\n\n.solution-toggle {\n position: absolute;\n z-index: 10;\n top: 0.5rem;\n right: 10px;\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n font-size: 0.75rem;\n line-height: 1;\n cursor: pointer;\n}\n\n.solution-toggle-show {\n top: 0;\n background-color: rgb(148, 242, 200);\n background-color: var(--green-300);\n box-shadow: var(--shadow-sm);\n border-bottom-right-radius: 0.125rem;\n border-bottom-left-radius: 0.125rem;\n z-index: 0;\n clip-path: polygon(0 0, 100% 0, 100% 100%, 9px 100%, 0 calc(100% - 5px));\n -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 9px 100%, 0 calc(100% - 5px));\n}\n\n.solution-toggle-show a {\n text-decoration: none;\n}\n\n.solution-background {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n top: -6px;\n margin: 0 10px;\n background-color: rgb(148, 242, 200);\n background-color: var(--green-300);\n box-shadow: var(--shadow-default);\n border-width: 1px;\n border-color: rgba(25, 0, 100, 0.1);\n border-color: var(--tint-300);\n overflow: hidden;\n border-bottom-right-radius: 0.125rem;\n border-bottom-left-radius: 0.125rem;\n}\n\n.solution-title {\n font-weight: 600;\n font-size: 1.5rem;\n line-height: 1.25;\n margin-bottom: 1rem;\n}\n\n.solution-content {\n max-width: 56rem;\n}\n\n@media (min-width: 768px) {\n .solution-content {\n margin-left: 15rem;\n }\n}\n\n.solution code {\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;\n color: rgb(75, 71, 109);\n color: var(--gray-700);\n display: inline-block;\n margin-top: -0.25rem;\n margin-bottom: -0.25rem;\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n border-radius: 0.125rem;\n background-color: rgba(0, 0, 150, 0.025);\n background-color: var(--tint-100);\n border-width: 1px;\n border-color: rgba(0, 0, 150, 0.025);\n border-color: var(--tint-100);\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;\n color: rgb(75, 71, 109);\n color: var(--gray-700);\n word-break: break-all;\n line-height: 1.25;\n}\n\n:root {\n --tab-main-height: calc(100vh - 3rem);\n}\n\n.tabs {\n z-index: 10;\n}\n\n.tab-main {\n z-index: 1;\n border-left-width: 1px;\n border-right-width: 1px;\n border-bottom-width: 1px;\n border-color: rgba(25, 0, 100, 0.1);\n border-color: var(--tint-300);\n min-height: calc(100vh - 3rem);\n min-height: var(--tab-main-height);\n}\n\n.tab-content {\n background-color: rgb(255, 255, 255);\n background-color: var(--white);\n font-size: 0.875rem;\n min-height: calc(100vh - 3rem);\n min-height: var(--tab-main-height);\n}\n\n.tab-content-section {\n padding-top: 2rem;\n padding-bottom: 2rem;\n border-top-width: 2px;\n border-color: rgba(0, 0, 100, 0.07);\n border-color: var(--tint-200);\n}\n\n.tab-content-section:first-child {\n border-top-width: 0;\n}\n\n.tab-nav {\n position: sticky;\n position: -webkit-sticky;\n display: grid;\n justify-content: center;\n grid-template-columns: auto;\n grid-auto-flow: column;\n grid-gap: 0.5rem;\n top: 0;\n width: 100%;\n z-index: 10;\n background-color: rgb(75, 71, 109);\n background-color: var(--gray-700);\n padding: 0.25rem;\n box-shadow: var(--shadow-default);\n border-top-left-radius: 0.125rem;\n border-top-right-radius: 0.125rem;\n font-size: 0.75rem;\n}\n\n.tab-bar {\n display: grid;\n grid-template-columns: auto;\n grid-auto-flow: column;\n justify-content: flex-start;\n grid-gap: 0.25rem;\n overflow-x: auto;\n overflow-y: hidden;\n}\n\n.tab-bar::-webkit-scrollbar {\n height: 2px;\n}\n\n@media (min-width: 640px) {\n .tab-bar {\n justify-content: center;\n }\n}\n\n.tab {\n padding-left: 1rem;\n padding-right: 1rem;\n color: rgb(232, 229, 239);\n color: var(--gray-300);\n white-space: nowrap;\n border-radius: 0.125rem;\n height: 2.5rem;\n font-size: 0.875rem;\n}\n\n.tab-delimiter {\n border-left-width: 1px;\n border-color: rgb(142, 137, 162);\n border-color: var(--gray-600);\n}\n\n.tab:hover {\n background-color: rgba(20, 0, 100, 0.2);\n background-color: var(--tint-400);\n color: rgb(255, 255, 255);\n color: var(--white);\n}\n\n.tab-active,\n.tab-active:hover {\n background-color: rgba(30, 20, 70, 0.5);\n background-color: var(--tint-600);\n color: rgb(255, 255, 255);\n color: var(--white);\n}\n\n.ui-url {\n display: inline-block;\n line-height: 1.25;\n font-size: 0.875rem;\n font-weight: 400;\n text-decoration: underline;\n color: rgba(30, 20, 70, 0.5);\n color: var(--tint-600);\n -webkit-text-decoration-color: rgba(20, 0, 100, 0.2);\n text-decoration-color: rgba(20, 0, 100, 0.2);\n -webkit-text-decoration-color: var(--tint-400);\n text-decoration-color: var(--tint-400);\n}\n\n.ui-url:hover {\n color: rgba(15, 10, 60, 0.75);\n color: var(--tint-700);\n -webkit-text-decoration-color: rgba(30, 20, 90, 0.35);\n text-decoration-color: rgba(30, 20, 90, 0.35);\n -webkit-text-decoration-color: var(--tint-500);\n text-decoration-color: var(--tint-500);\n}\n\n.ui-path {\n display: inline-block;\n line-height: 1.25;\n}\n\n.ui-exception-message {\n font-weight: 600;\n line-height: 1.25;\n word-wrap: break-word;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 5;\n overflow: hidden;\n}\n\n.ui-exception-message-full {\n -webkit-line-clamp: unset;\n}\n\n.ui-exception-class {\n display: inline-block;\n line-height: 1.25;\n color: rgba(30, 20, 70, 0.5);\n color: var(--tint-600);\n}\n\n.ui-line-number {\n display: inline-block;\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n border-radius: 0.125rem;\n background-color: rgba(0, 0, 150, 0.015);\n background-color: var(--tint-50);\n color: rgba(30, 20, 70, 0.5);\n color: var(--tint-600);\n font-size: 0.75rem;\n line-height: 1.25;\n}\n\n.dark .hljs {\n display: block;\n overflow-x: auto;\n padding: 0.5em;\n color: #abb2bf;\n background: #282c34;\n}\n\n.dark .hljs-comment,\n.dark .hljs-quote {\n color: #5c6370;\n font-style: italic;\n}\n\n.dark .hljs-doctag,\n.dark .hljs-keyword,\n.dark .hljs-formula {\n color: #c678dd;\n}\n\n.dark .hljs-section,\n.dark .hljs-name,\n.dark .hljs-selector-tag,\n.dark .hljs-deletion,\n.dark .hljs-subst {\n color: #e06c75;\n}\n\n.dark .hljs-literal {\n color: #56b6c2;\n}\n\n.dark .hljs-string,\n.dark .hljs-regexp,\n.dark .hljs-addition,\n.dark .hljs-attribute,\n.dark .hljs-meta-string {\n color: #98c379;\n}\n\n.dark .hljs-built_in,\n.dark .hljs-class .dark .hljs-title {\n color: #e6c07b;\n}\n\n.dark .hljs-attr,\n.dark .hljs-variable,\n.dark .hljs-template-variable,\n.dark .hljs-type,\n.dark .hljs-selector-class,\n.dark .hljs-selector-attr,\n.dark .hljs-selector-pseudo,\n.dark .hljs-number {\n color: #d19a66;\n}\n\n.dark .hljs-symbol,\n.dark .hljs-bullet,\n.dark .hljs-link,\n.dark .hljs-meta,\n.dark .hljs-selector-id,\n.dark .hljs-title {\n color: #61aeee;\n}\n\n.dark .hljs-emphasis {\n font-style: italic;\n}\n\n.dark .hljs-strong {\n font-weight: bold;\n}\n\n.dark .hljs-link {\n text-decoration: underline;\n}\n\n.light .hljs {\n display: block;\n overflow-x: auto;\n padding: 0.5em;\n color: #383a42;\n background: #fafafa;\n}\n\n.light .hljs-comment,\n.light .hljs-quote {\n color: #a0a1a7;\n font-style: italic;\n}\n\n.light .hljs-doctag,\n.light .hljs-keyword,\n.light .hljs-formula {\n color: #a626a4;\n}\n\n.light .hljs-section,\n.light .hljs-name,\n.light .hljs-selector-tag,\n.light .hljs-deletion,\n.light .hljs-subst {\n color: #e45649;\n}\n\n.light .hljs-literal {\n color: #0184bb;\n}\n\n.light .hljs-string,\n.light .hljs-regexp,\n.light .hljs-addition,\n.light .hljs-attribute,\n.light .hljs-meta-string {\n color: #50a14f;\n}\n\n.light .hljs-built_in,\n.light .hljs-class .light .hljs-title {\n color: #c18401;\n}\n\n.light .hljs-attr,\n.light .hljs-variable,\n.light .hljs-template-variable,\n.light .hljs-type,\n.light .hljs-selector-class,\n.light .hljs-selector-attr,\n.light .hljs-selector-pseudo,\n.light .hljs-number {\n color: #986801;\n}\n\n.light .hljs-symbol,\n.light .hljs-bullet,\n.light .hljs-link,\n.light .hljs-meta,\n.light .hljs-selector-id,\n.light .hljs-title {\n color: #4078f2;\n}\n\n.light .hljs-emphasis {\n font-style: italic;\n}\n\n.light .hljs-strong {\n font-weight: bold;\n}\n\n.light .hljs-link {\n text-decoration: underline;\n}\n\n/* \n Dumps are hidden asap in errorPage.blade \n What follows is !important\n*/\n\n.tabs pre.sf-dump {\n display: block !important;\n}\n\n.sf-dump-public.sf-dump-highlight,\n.sf-dump-protected.sf-dump-highlight,\n.sf-dump-private.sf-dump-highlight,\n.sf-dump-str.sf-dump-highlight,\n.sf-dump-key.sf-dump-highlight {\n background-color: rgb(251, 245, 255) !important;\n background-color: var(--purple-100) !important;\n border-color: rgb(236, 211, 253) !important;\n border-color: var(--purple-200) !important;\n}\n\n.sf-dump-public.sf-dump-highlight-active,\n.sf-dump-protected.sf-dump-highlight-active,\n.sf-dump-private.sf-dump-highlight-active,\n.sf-dump-str.sf-dump-highlight-active,\n.sf-dump-key.sf-dump-highlight-active {\n background-color: rgb(255, 253, 235) !important;\n background-color: var(--yellow-100) !important;\n border-color: rgb(255, 248, 196) !important;\n border-color: var(--yellow-200) !important;\n}\n\npre.sf-dump .sf-dump-search-wrapper > * {\n border-color: rgb(232, 229, 239) !important;\n border-color: var(--gray-300) !important;\n}\n\npre.sf-dump .sf-dump-search-wrapper > input.sf-dump-search-input {\n font-size: 0.75rem !important;\n background-color: rgb(51, 47, 81) !important;\n background-color: var(--gray-800) !important;\n}\n\npre.sf-dump .sf-dump-search-wrapper > .sf-dump-search-input-next,\npre.sf-dump .sf-dump-search-wrapper > .sf-dump-search-input-previous {\n background-color: rgba(0, 0, 150, 0.025) !important;\n background-color: var(--tint-100) !important;\n}\n\npre.sf-dump .sf-dump-search-wrapper > .sf-dump-search-count {\n font-size: 0.875rem !important;\n}\n\npre.sf-dump,\npre.sf-dump .sf-dump-default {\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important;\n background-color: rgb(247, 247, 252) !important;\n background-color: var(--gray-100) !important;\n color: rgb(51, 47, 81) !important;\n color: var(--gray-800) !important;\n}\n\npre.sf-dump .sf-dump-num {\n color: rgb(250, 133, 162) !important;\n color: var(--red-300) !important;\n}\n\npre.sf-dump .sf-dump-const {\n font-weight: 400 !important;\n}\n\npre.sf-dump .sf-dump-str {\n font-weight: 400 !important;\n color: rgb(142, 137, 162) !important;\n color: var(--gray-600) !important;\n}\n\npre.sf-dump .sf-dump-note {\n color: rgb(122, 122, 255) !important;\n color: var(--blue-400) !important;\n}\n\npre.sf-dump .sf-dump-ref {\n color: rgb(142, 137, 162) !important;\n color: var(--gray-600) !important;\n}\n\npre.sf-dump .sf-dump-public,\npre.sf-dump .sf-dump-protected,\npre.sf-dump .sf-dump-private {\n color: rgb(121, 0, 245) !important;\n color: var(--purple-500) !important;\n}\n\npre.sf-dump .sf-dump-meta {\n color: rgb(121, 0, 245) !important;\n color: var(--purple-500) !important;\n}\n\npre.sf-dump .sf-dump-key {\n color: rgb(113, 7, 220) !important;\n color: var(--purple-600) !important;\n}\n\npre.sf-dump .sf-dump-index {\n color: rgb(122, 122, 255) !important;\n color: var(--blue-400) !important;\n}\n\npre.sf-dump .sf-dump-ellipsis {\n color: rgb(113, 7, 220) !important;\n color: var(--purple-600) !important;\n}\n\n.bg-gray-100{\n background-color: rgb(247, 247, 252) !important;\n background-color: var(--gray-100) !important;\n}\n\n.bg-tint-200{\n background-color: rgba(0, 0, 100, 0.07) !important;\n background-color: var(--tint-200) !important;\n}\n\n.bg-tint-300{\n background-color: rgba(25, 0, 100, 0.1) !important;\n background-color: var(--tint-300) !important;\n}\n\n.bg-tint-600{\n background-color: rgba(30, 20, 70, 0.5) !important;\n background-color: var(--tint-600) !important;\n}\n\n.hover\\:bg-tint-100:hover{\n background-color: rgba(0, 0, 150, 0.025) !important;\n background-color: var(--tint-100) !important;\n}\n\n.hover\\:bg-tint-400:hover{\n background-color: rgba(20, 0, 100, 0.2) !important;\n background-color: var(--tint-400) !important;\n}\n\n.hover\\:bg-tint-700:hover{\n background-color: rgba(15, 10, 60, 0.75) !important;\n background-color: var(--tint-700) !important;\n}\n\n.border-gray-700{\n border-color: rgb(75, 71, 109) !important;\n border-color: var(--gray-700) !important;\n}\n\n.border-tint-200{\n border-color: rgba(0, 0, 100, 0.07) !important;\n border-color: var(--tint-200) !important;\n}\n\n.border-tint-300{\n border-color: rgba(25, 0, 100, 0.1) !important;\n border-color: var(--tint-300) !important;\n}\n\n.rounded-full{\n border-radius: 9999px !important;\n}\n\n.rounded-t{\n border-top-left-radius: 0.25rem !important;\n border-top-right-radius: 0.25rem !important;\n}\n\n.border-none{\n border-style: none !important;\n}\n\n.border-t-2{\n border-top-width: 2px !important;\n}\n\n.border-b{\n border-bottom-width: 1px !important;\n}\n\n.cursor-pointer{\n cursor: pointer !important;\n}\n\n.inline-block{\n display: inline-block !important;\n}\n\n.flex{\n display: flex !important;\n}\n\n.inline-flex{\n display: inline-flex !important;\n}\n\n.hidden{\n display: none !important;\n}\n\n.items-center{\n align-items: center !important;\n}\n\n.items-baseline{\n align-items: baseline !important;\n}\n\n.justify-start{\n justify-content: flex-start !important;\n}\n\n.justify-end{\n justify-content: flex-end !important;\n}\n\n.justify-center{\n justify-content: center !important;\n}\n\n.font-mono{\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important;\n}\n\n.font-normal{\n font-weight: 400 !important;\n}\n\n.font-medium{\n font-weight: 500 !important;\n}\n\n.font-semibold{\n font-weight: 600 !important;\n}\n\n.h-5{\n height: 1.25rem !important;\n}\n\n.h-8{\n height: 2rem !important;\n}\n\n.h-full{\n height: 100% !important;\n}\n\n.mx-0{\n margin-left: 0 !important;\n margin-right: 0 !important;\n}\n\n.ml-0{\n margin-left: 0 !important;\n}\n\n.mt-1{\n margin-top: 0.25rem !important;\n}\n\n.mr-1{\n margin-right: 0.25rem !important;\n}\n\n.mb-1{\n margin-bottom: 0.25rem !important;\n}\n\n.mt-2{\n margin-top: 0.5rem !important;\n}\n\n.mr-2{\n margin-right: 0.5rem !important;\n}\n\n.mb-2{\n margin-bottom: 0.5rem !important;\n}\n\n.ml-2{\n margin-left: 0.5rem !important;\n}\n\n.mb-3{\n margin-bottom: 0.75rem !important;\n}\n\n.mt-4{\n margin-top: 1rem !important;\n}\n\n.mr-4{\n margin-right: 1rem !important;\n}\n\n.mb-4{\n margin-bottom: 1rem !important;\n}\n\n.ml-6{\n margin-left: 1.5rem !important;\n}\n\n.mt-8{\n margin-top: 2rem !important;\n}\n\n.mt-12{\n margin-top: 3rem !important;\n}\n\n.ml-auto{\n margin-left: auto !important;\n}\n\n.min-h-0{\n min-height: 0 !important;\n}\n\n.min-w-8{\n min-width: 2rem !important;\n}\n\n.opacity-25{\n opacity: 0.25 !important;\n}\n\n.opacity-50{\n opacity: 0.5 !important;\n}\n\n.opacity-75{\n opacity: 0.75 !important;\n}\n\n.overflow-visible{\n overflow: visible !important;\n}\n\n.p-4{\n padding: 1rem !important;\n}\n\n.p-12{\n padding: 3rem !important;\n}\n\n.py-2{\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n}\n\n.px-2{\n padding-left: 0.5rem !important;\n padding-right: 0.5rem !important;\n}\n\n.py-4{\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n}\n\n.px-4{\n padding-left: 1rem !important;\n padding-right: 1rem !important;\n}\n\n.px-6{\n padding-left: 1.5rem !important;\n padding-right: 1.5rem !important;\n}\n\n.pt-2{\n padding-top: 0.5rem !important;\n}\n\n.pt-10{\n padding-top: 2.5rem !important;\n}\n\n.pointer-events-none{\n pointer-events: none !important;\n}\n\n.static{\n position: static !important;\n}\n\n.absolute{\n position: absolute !important;\n}\n\n.relative{\n position: relative !important;\n}\n\n.sticky{\n position: -webkit-sticky !important;\n position: sticky !important;\n}\n\n.inset-0{\n top: 0 !important;\n right: 0 !important;\n bottom: 0 !important;\n left: 0 !important;\n}\n\n.top-0{\n top: 0 !important;\n}\n\n.right-0{\n right: 0 !important;\n}\n\n.bottom-0{\n bottom: 0 !important;\n}\n\n.left-0{\n left: 0 !important;\n}\n\n.top-full{\n top: 100% !important;\n}\n\n.left-full{\n left: 100% !important;\n}\n\n.text-left{\n text-align: left !important;\n}\n\n.text-white{\n color: rgb(255, 255, 255) !important;\n color: var(--white) !important;\n}\n\n.text-green-300{\n color: rgb(148, 242, 200) !important;\n color: var(--green-300) !important;\n}\n\n.text-purple-400{\n color: rgb(183, 148, 244) !important;\n color: var(--purple-400) !important;\n}\n\n.text-purple-800{\n color: rgb(79, 15, 143) !important;\n color: var(--purple-800) !important;\n}\n\n.text-gray-200{\n color: rgb(238, 238, 245) !important;\n color: var(--gray-200) !important;\n}\n\n.text-gray-300{\n color: rgb(232, 229, 239) !important;\n color: var(--gray-300) !important;\n}\n\n.text-gray-400{\n color: rgb(209, 204, 224) !important;\n color: var(--gray-400) !important;\n}\n\n.text-gray-500{\n color: rgb(176, 173, 197) !important;\n color: var(--gray-500) !important;\n}\n\n.text-gray-800{\n color: rgb(51, 47, 81) !important;\n color: var(--gray-800) !important;\n}\n\n.text-tint-600{\n color: rgba(30, 20, 70, 0.5) !important;\n color: var(--tint-600) !important;\n}\n\n.hover\\:text-white:hover{\n color: rgb(255, 255, 255) !important;\n color: var(--white) !important;\n}\n\n.hover\\:text-purple-500:hover{\n color: rgb(121, 0, 245) !important;\n color: var(--purple-500) !important;\n}\n\n.text-xs{\n font-size: 0.75rem !important;\n}\n\n.text-sm{\n font-size: 0.875rem !important;\n}\n\n.text-2xl{\n font-size: 1.5rem !important;\n}\n\n.italic{\n font-style: italic !important;\n}\n\n.uppercase{\n text-transform: uppercase !important;\n}\n\n.underline{\n text-decoration: underline !important;\n}\n\n.no-underline{\n text-decoration: none !important;\n}\n\n.tracking-wider{\n letter-spacing: 0.05em !important;\n}\n\n.align-middle{\n vertical-align: middle !important;\n}\n\n.whitespace-no-wrap{\n white-space: nowrap !important;\n}\n\n.w-4{\n width: 1rem !important;\n}\n\n.w-full{\n width: 100% !important;\n}\n\n.z-1{\n z-index: 1 !important;\n}\n\n.z-10{\n z-index: 10 !important;\n}\n\n@media (min-width: 640px){\n\n .sm\\:start-2 {\n grid-column-start: 2;\n }\n\n .sm\\:block{\n display: block !important;\n }\n\n .sm\\:ml-6{\n margin-left: 1.5rem !important;\n }\n}\n\n@media (min-width: 768px){\n\n .md\\:block{\n display: block !important;\n }\n}\n',""])},function(t,e,n){"use strict";t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var n=function(t,e){var n=t[1]||"",r=t[3];if(!r)return n;if(e&&"function"==typeof btoa){var o=(a=r,s=btoa(unescape(encodeURIComponent(JSON.stringify(a)))),c="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(s),"/*# ".concat(c," */")),i=r.sources.map((function(t){return"/*# sourceURL=".concat(r.sourceRoot).concat(t," */")}));return[n].concat(i).concat([o]).join("\n")}var a,s,c;return[n].join("\n")}(e,t);return e[2]?"@media ".concat(e[2],"{").concat(n,"}"):n})).join("")},e.i=function(t,n){"string"==typeof t&&(t=[[null,t,""]]);for(var r={},o=0;o=0&&f.splice(e,1)}function v(t){var e=document.createElement("style");if(void 0===t.attrs.type&&(t.attrs.type="text/css"),void 0===t.attrs.nonce){var r=function(){0;return n.nc}();r&&(t.attrs.nonce=r)}return b(e,t.attrs),m(t,e),e}function b(t,e){Object.keys(e).forEach((function(n){t.setAttribute(n,e[n])}))}function _(t,e){var n,r,o,i;if(e.transform&&t.css){if(!(i="function"==typeof e.transform?e.transform(t.css):e.transform.default(t.css)))return function(){};t.css=i}if(e.singleton){var a=l++;n=u||(u=v(e)),r=k.bind(null,n,a,!1),o=k.bind(null,n,a,!0)}else t.sourceMap&&"function"==typeof URL&&"function"==typeof URL.createObjectURL&&"function"==typeof URL.revokeObjectURL&&"function"==typeof Blob&&"function"==typeof btoa?(n=function(t){var e=document.createElement("link");return void 0===t.attrs.type&&(t.attrs.type="text/css"),t.attrs.rel="stylesheet",b(e,t.attrs),m(t,e),e}(e),r=w.bind(null,n,e),o=function(){g(n),n.href&&URL.revokeObjectURL(n.href)}):(n=v(e),r=x.bind(null,n),o=function(){g(n)});return r(t),function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap)return;r(t=e)}else o()}}t.exports=function(t,e){if("undefined"!=typeof DEBUG&&DEBUG&&"object"!=typeof document)throw new Error("The style-loader cannot be used in a non-browser environment");(e=e||{}).attrs="object"==typeof e.attrs?e.attrs:{},e.singleton||"boolean"==typeof e.singleton||(e.singleton=a()),e.insertInto||(e.insertInto="head"),e.insertAt||(e.insertAt="bottom");var n=h(t,e);return d(n,e),function(t){for(var r=[],o=0;om.maxDepth)&&a(y)}else if(/\bsf-dump-ref\b/.test(g.className)&&(y=g.getAttribute("href"))&&(y=y.substr(1),g.className+=" "+y,/[\[{]$/.test(g.previousSibling.nodeValue))){y=y!=g.nextSibling.id&&t.getElementById(y);try{p=y.nextSibling,g.appendChild(y),p.parentNode.insertBefore(y,p),/^[@#]/.test(g.innerHTML)?g.innerHTML+=" ":(g.innerHTML="",g.className="sf-dump-ref"),g.className+=" sf-dump-toggle"}catch(t){"&"==g.innerHTML.charAt(0)&&(g.innerHTML="…",g.className="sf-dump-ref")}}if(t.evaluate&&Array.from&&l.children.length>1){var C=function(t){var e,n,r=t.current();r&&(!function(t){for(var e,n=[];(t=t.parentNode||{})&&(e=t.previousSibling)&&"A"===e.tagName;)n.push(e);0!==n.length&&n.forEach((function(t){s(t)}))}(r),function(t,e,n){u(t),Array.from(n||[]).forEach((function(t){/\bsf-dump-highlight\b/.test(t.className)||(t.className=t.className+" sf-dump-highlight")})),/\bsf-dump-highlight-active\b/.test(e.className)||(e.className=e.className+" sf-dump-highlight-active")}(l,r,t.nodes),"scrollIntoView"in r&&(r.scrollIntoView(!0),e=r.getBoundingClientRect(),n=A.getBoundingClientRect(),e.top0?this.idx-1:this.nodes.length-1,this.current())},isEmpty:function(){return 0===this.count()},current:function(){return this.isEmpty()?null:this.nodes[this.idx]},reset:function(){this.nodes=[],this.idx=0},count:function(){return this.nodes.length}};var A=t.createElement("div");A.className="sf-dump-search-wrapper sf-dump-search-hidden",A.innerHTML='\n \n 0 of 0\n \n \n ',l.insertBefore(A,l.firstChild);var T=new SearchState,S=A.querySelector(".sf-dump-search-input"),R=A.querySelector(".sf-dump-search-count"),O=0,N="";i(S,"keyup",(function(e){var n=e.target.value;n!==N&&(N=n,clearTimeout(O),O=setTimeout((function(){if(T.reset(),c(l),u(l),""!==n){for(var e=["sf-dump-str","sf-dump-key","sf-dump-public","sf-dump-protected","sf-dump-private"].map(x).join(" or "),r=t.evaluate(".//span["+e+"][contains(translate(child::text(), "+k(n.toUpperCase())+", "+k(n.toLowerCase())+"), "+k(n.toLowerCase())+")]",l,null,XPathResult.ORDERED_NODE_ITERATOR_TYPE,null);node=r.iterateNext();)T.nodes.push(node);C(T)}else R.textContent="0 of 0"}),400))})),Array.from(A.querySelectorAll(".sf-dump-search-input-next, .sf-dump-search-input-previous")).forEach((function(t){i(t,"click",(function(t){t.preventDefault(),-1!==t.target.className.indexOf("next")?T.next():T.previous(),S.focus(),c(l),C(T)}))})),i(l,"keydown",(function(t){var e=!/\bsf-dump-search-hidden\b/.test(A.className);if(114===t.keyCode&&!e||E(t)&&70===t.keyCode){if(70===t.keyCode&&document.activeElement===S)return;t.preventDefault(),A.className=A.className.replace(/\bsf-dump-search-hidden\b/,""),S.focus()}else e&&(27===t.keyCode?(A.className+=" sf-dump-search-hidden",t.preventDefault(),u(l),S.value=""):(E(t)&&71===t.keyCode||13===t.keyCode||114===t.keyCode)&&(t.preventDefault(),t.shiftKey?T.previous():T.next(),c(l),C(T)))}))}if(!(0>=m.maxStringLength))try{for(v=(g=l.querySelectorAll(".sf-dump-str")).length,b=0,_=[];b
'+g.innerHTML+'')}catch(t){}}}(document)},function(t,e,n){var r=function(t){"use strict";var e,n=Object.prototype,r=n.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(t,e,n,r){var o=e&&e.prototype instanceof m?e:m,i=Object.create(o.prototype),a=new T(r||[]);return i._invoke=function(t,e,n){var r=l;return function(o,i){if(r===p)throw new Error("Generator is already running");if(r===d){if("throw"===o)throw i;return R()}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===h)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(r===l)throw r=d,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r=p;var c=u(t,e,n);if("normal"===c.type){if(r=n.done?d:f,c.arg===h)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(r=d,n.method="throw",n.arg=c.arg)}}}(t,n,a),i}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var l="suspendedStart",f="suspendedYield",p="executing",d="completed",h={};function m(){}function g(){}function v(){}var b={};b[i]=function(){return this};var _=Object.getPrototypeOf,y=_&&_(_(S([])));y&&y!==n&&r.call(y,i)&&(b=y);var E=v.prototype=m.prototype=Object.create(b);function k(t){["next","throw","return"].forEach((function(e){t[e]=function(t){return this._invoke(e,t)}}))}function x(t){var e;this._invoke=function(n,o){function i(){return new Promise((function(e,i){!function e(n,o,i,a){var s=u(t[n],t,o);if("throw"!==s.type){var c=s.arg,l=c.value;return l&&"object"==typeof l&&r.call(l,"__await")?Promise.resolve(l.__await).then((function(t){e("next",t,i,a)}),(function(t){e("throw",t,i,a)})):Promise.resolve(l).then((function(t){c.value=t,i(c)}),(function(t){return e("throw",t,i,a)}))}a(s.arg)}(n,o,e,i)}))}return e=e?e.then(i,i):i()}}function w(t,n){var r=t.iterator[n.method];if(r===e){if(n.delegate=null,"throw"===n.method){if(t.iterator.return&&(n.method="return",n.arg=e,w(t,n),"throw"===n.method))return h;n.method="throw",n.arg=new TypeError("The iterator does not provide a 'throw' method")}return h}var o=u(r,t.iterator,n.arg);if("throw"===o.type)return n.method="throw",n.arg=o.arg,n.delegate=null,h;var i=o.arg;return i?i.done?(n[t.resultName]=i.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=e),n.delegate=null,h):i:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,h)}function C(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function A(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function T(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(C,this),this.reset(!0)}function S(t){if(t){var n=t[i];if(n)return n.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,a=function n(){for(;++o=0;--i){var a=this.tryEntries[i],s=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var c=r.call(a,"catchLoc"),u=r.call(a,"finallyLoc");if(c&&u){if(this.prev=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),A(n),h}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;A(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,n,r){return this.delegate={iterator:S(t),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=e),h}},t}(t.exports);try{regeneratorRuntime=r}catch(t){Function("r","regeneratorRuntime = r")(r)}},function(t,e,n){"use strict";t.exports=n(101)},function(t,e,n){"use strict";var r=n(1),o=n(109),i=n(113),a=n(114),s=n(122),c=n(136),u=n(149),l=n(56),f=n(63),p={default:n(151),zero:n(152),commonmark:n(153)},d=/^(vbscript|javascript|file|data):/,h=/^data:image\/(gif|png|jpeg|webp);/;function m(t){var e=t.trim().toLowerCase();return!d.test(e)||!!h.test(e)}var g=["http:","https:","mailto:"];function v(t){var e=l.parse(t,!0);if(e.hostname&&(!e.protocol||g.indexOf(e.protocol)>=0))try{e.hostname=f.toASCII(e.hostname)}catch(t){}return l.encode(l.format(e))}function b(t){var e=l.parse(t,!0);if(e.hostname&&(!e.protocol||g.indexOf(e.protocol)>=0))try{e.hostname=f.toUnicode(e.hostname)}catch(t){}return l.decode(l.format(e))}function _(t,e){if(!(this instanceof _))return new _(t,e);e||r.isString(t)||(e=t||{},t="default"),this.inline=new c,this.block=new s,this.core=new a,this.renderer=new i,this.linkify=new u,this.validateLink=m,this.normalizeLink=v,this.normalizeLinkText=b,this.utils=r,this.helpers=r.assign({},o),this.options={},this.configure(t),e&&this.set(e)}_.prototype.set=function(t){return r.assign(this.options,t),this},_.prototype.configure=function(t){var e,n=this;if(r.isString(t)&&!(t=p[e=t]))throw new Error('Wrong `markdown-it` preset "'+e+'", check name');if(!t)throw new Error("Wrong `markdown-it` preset, can't be empty");return t.options&&n.set(t.options),t.components&&Object.keys(t.components).forEach((function(e){t.components[e].rules&&n[e].ruler.enableOnly(t.components[e].rules),t.components[e].rules2&&n[e].ruler2.enableOnly(t.components[e].rules2)})),this},_.prototype.enable=function(t,e){var n=[];Array.isArray(t)||(t=[t]),["core","block","inline"].forEach((function(e){n=n.concat(this[e].ruler.enable(t,!0))}),this),n=n.concat(this.inline.ruler2.enable(t,!0));var r=t.filter((function(t){return n.indexOf(t)<0}));if(r.length&&!e)throw new Error("MarkdownIt. Failed to enable unknown rule(s): "+r);return this},_.prototype.disable=function(t,e){var n=[];Array.isArray(t)||(t=[t]),["core","block","inline"].forEach((function(e){n=n.concat(this[e].ruler.disable(t,!0))}),this),n=n.concat(this.inline.ruler2.disable(t,!0));var r=t.filter((function(t){return n.indexOf(t)<0}));if(r.length&&!e)throw new Error("MarkdownIt. Failed to disable unknown rule(s): "+r);return this},_.prototype.use=function(t){var e=[this].concat(Array.prototype.slice.call(arguments,1));return t.apply(t,e),this},_.prototype.parse=function(t,e){if("string"!=typeof t)throw new Error("Input data should be a String");var n=new this.core.State(t,this,e);return this.core.process(n),n.tokens},_.prototype.render=function(t,e){return e=e||{},this.renderer.render(this.parse(t,e),this.options,e)},_.prototype.parseInline=function(t,e){var n=new this.core.State(t,this,e);return n.inlineMode=!0,this.core.process(n),n.tokens},_.prototype.renderInline=function(t,e){return e=e||{},this.renderer.render(this.parseInline(t,e),this.options,e)},t.exports=_},function(t){t.exports=JSON.parse('{"Aacute":"Á","aacute":"á","Abreve":"Ă","abreve":"ă","ac":"∾","acd":"∿","acE":"∾̳","Acirc":"Â","acirc":"â","acute":"´","Acy":"А","acy":"а","AElig":"Æ","aelig":"æ","af":"⁡","Afr":"𝔄","afr":"𝔞","Agrave":"À","agrave":"à","alefsym":"ℵ","aleph":"ℵ","Alpha":"Α","alpha":"α","Amacr":"Ā","amacr":"ā","amalg":"⨿","amp":"&","AMP":"&","andand":"⩕","And":"⩓","and":"∧","andd":"⩜","andslope":"⩘","andv":"⩚","ang":"∠","ange":"⦤","angle":"∠","angmsdaa":"⦨","angmsdab":"⦩","angmsdac":"⦪","angmsdad":"⦫","angmsdae":"⦬","angmsdaf":"⦭","angmsdag":"⦮","angmsdah":"⦯","angmsd":"∡","angrt":"∟","angrtvb":"⊾","angrtvbd":"⦝","angsph":"∢","angst":"Å","angzarr":"⍼","Aogon":"Ą","aogon":"ą","Aopf":"𝔸","aopf":"𝕒","apacir":"⩯","ap":"≈","apE":"⩰","ape":"≊","apid":"≋","apos":"\'","ApplyFunction":"⁡","approx":"≈","approxeq":"≊","Aring":"Å","aring":"å","Ascr":"𝒜","ascr":"𝒶","Assign":"≔","ast":"*","asymp":"≈","asympeq":"≍","Atilde":"Ã","atilde":"ã","Auml":"Ä","auml":"ä","awconint":"∳","awint":"⨑","backcong":"≌","backepsilon":"϶","backprime":"‵","backsim":"∽","backsimeq":"⋍","Backslash":"∖","Barv":"⫧","barvee":"⊽","barwed":"⌅","Barwed":"⌆","barwedge":"⌅","bbrk":"⎵","bbrktbrk":"⎶","bcong":"≌","Bcy":"Б","bcy":"б","bdquo":"„","becaus":"∵","because":"∵","Because":"∵","bemptyv":"⦰","bepsi":"϶","bernou":"ℬ","Bernoullis":"ℬ","Beta":"Β","beta":"β","beth":"ℶ","between":"≬","Bfr":"𝔅","bfr":"𝔟","bigcap":"⋂","bigcirc":"◯","bigcup":"⋃","bigodot":"⨀","bigoplus":"⨁","bigotimes":"⨂","bigsqcup":"⨆","bigstar":"★","bigtriangledown":"▽","bigtriangleup":"△","biguplus":"⨄","bigvee":"⋁","bigwedge":"⋀","bkarow":"⤍","blacklozenge":"⧫","blacksquare":"▪","blacktriangle":"▴","blacktriangledown":"▾","blacktriangleleft":"◂","blacktriangleright":"▸","blank":"␣","blk12":"▒","blk14":"░","blk34":"▓","block":"█","bne":"=⃥","bnequiv":"≡⃥","bNot":"⫭","bnot":"⌐","Bopf":"𝔹","bopf":"𝕓","bot":"⊥","bottom":"⊥","bowtie":"⋈","boxbox":"⧉","boxdl":"┐","boxdL":"╕","boxDl":"╖","boxDL":"╗","boxdr":"┌","boxdR":"╒","boxDr":"╓","boxDR":"╔","boxh":"─","boxH":"═","boxhd":"┬","boxHd":"╤","boxhD":"╥","boxHD":"╦","boxhu":"┴","boxHu":"╧","boxhU":"╨","boxHU":"╩","boxminus":"⊟","boxplus":"⊞","boxtimes":"⊠","boxul":"┘","boxuL":"╛","boxUl":"╜","boxUL":"╝","boxur":"└","boxuR":"╘","boxUr":"╙","boxUR":"╚","boxv":"│","boxV":"║","boxvh":"┼","boxvH":"╪","boxVh":"╫","boxVH":"╬","boxvl":"┤","boxvL":"╡","boxVl":"╢","boxVL":"╣","boxvr":"├","boxvR":"╞","boxVr":"╟","boxVR":"╠","bprime":"‵","breve":"˘","Breve":"˘","brvbar":"¦","bscr":"𝒷","Bscr":"ℬ","bsemi":"⁏","bsim":"∽","bsime":"⋍","bsolb":"⧅","bsol":"\\\\","bsolhsub":"⟈","bull":"•","bullet":"•","bump":"≎","bumpE":"⪮","bumpe":"≏","Bumpeq":"≎","bumpeq":"≏","Cacute":"Ć","cacute":"ć","capand":"⩄","capbrcup":"⩉","capcap":"⩋","cap":"∩","Cap":"⋒","capcup":"⩇","capdot":"⩀","CapitalDifferentialD":"ⅅ","caps":"∩︀","caret":"⁁","caron":"ˇ","Cayleys":"ℭ","ccaps":"⩍","Ccaron":"Č","ccaron":"č","Ccedil":"Ç","ccedil":"ç","Ccirc":"Ĉ","ccirc":"ĉ","Cconint":"∰","ccups":"⩌","ccupssm":"⩐","Cdot":"Ċ","cdot":"ċ","cedil":"¸","Cedilla":"¸","cemptyv":"⦲","cent":"¢","centerdot":"·","CenterDot":"·","cfr":"𝔠","Cfr":"ℭ","CHcy":"Ч","chcy":"ч","check":"✓","checkmark":"✓","Chi":"Χ","chi":"χ","circ":"ˆ","circeq":"≗","circlearrowleft":"↺","circlearrowright":"↻","circledast":"⊛","circledcirc":"⊚","circleddash":"⊝","CircleDot":"⊙","circledR":"®","circledS":"Ⓢ","CircleMinus":"⊖","CirclePlus":"⊕","CircleTimes":"⊗","cir":"○","cirE":"⧃","cire":"≗","cirfnint":"⨐","cirmid":"⫯","cirscir":"⧂","ClockwiseContourIntegral":"∲","CloseCurlyDoubleQuote":"”","CloseCurlyQuote":"’","clubs":"♣","clubsuit":"♣","colon":":","Colon":"∷","Colone":"⩴","colone":"≔","coloneq":"≔","comma":",","commat":"@","comp":"∁","compfn":"∘","complement":"∁","complexes":"ℂ","cong":"≅","congdot":"⩭","Congruent":"≡","conint":"∮","Conint":"∯","ContourIntegral":"∮","copf":"𝕔","Copf":"ℂ","coprod":"∐","Coproduct":"∐","copy":"©","COPY":"©","copysr":"℗","CounterClockwiseContourIntegral":"∳","crarr":"↵","cross":"✗","Cross":"⨯","Cscr":"𝒞","cscr":"𝒸","csub":"⫏","csube":"⫑","csup":"⫐","csupe":"⫒","ctdot":"⋯","cudarrl":"⤸","cudarrr":"⤵","cuepr":"⋞","cuesc":"⋟","cularr":"↶","cularrp":"⤽","cupbrcap":"⩈","cupcap":"⩆","CupCap":"≍","cup":"∪","Cup":"⋓","cupcup":"⩊","cupdot":"⊍","cupor":"⩅","cups":"∪︀","curarr":"↷","curarrm":"⤼","curlyeqprec":"⋞","curlyeqsucc":"⋟","curlyvee":"⋎","curlywedge":"⋏","curren":"¤","curvearrowleft":"↶","curvearrowright":"↷","cuvee":"⋎","cuwed":"⋏","cwconint":"∲","cwint":"∱","cylcty":"⌭","dagger":"†","Dagger":"‡","daleth":"ℸ","darr":"↓","Darr":"↡","dArr":"⇓","dash":"‐","Dashv":"⫤","dashv":"⊣","dbkarow":"⤏","dblac":"˝","Dcaron":"Ď","dcaron":"ď","Dcy":"Д","dcy":"д","ddagger":"‡","ddarr":"⇊","DD":"ⅅ","dd":"ⅆ","DDotrahd":"⤑","ddotseq":"⩷","deg":"°","Del":"∇","Delta":"Δ","delta":"δ","demptyv":"⦱","dfisht":"⥿","Dfr":"𝔇","dfr":"𝔡","dHar":"⥥","dharl":"⇃","dharr":"⇂","DiacriticalAcute":"´","DiacriticalDot":"˙","DiacriticalDoubleAcute":"˝","DiacriticalGrave":"`","DiacriticalTilde":"˜","diam":"⋄","diamond":"⋄","Diamond":"⋄","diamondsuit":"♦","diams":"♦","die":"¨","DifferentialD":"ⅆ","digamma":"ϝ","disin":"⋲","div":"÷","divide":"÷","divideontimes":"⋇","divonx":"⋇","DJcy":"Ђ","djcy":"ђ","dlcorn":"⌞","dlcrop":"⌍","dollar":"$","Dopf":"𝔻","dopf":"𝕕","Dot":"¨","dot":"˙","DotDot":"⃜","doteq":"≐","doteqdot":"≑","DotEqual":"≐","dotminus":"∸","dotplus":"∔","dotsquare":"⊡","doublebarwedge":"⌆","DoubleContourIntegral":"∯","DoubleDot":"¨","DoubleDownArrow":"⇓","DoubleLeftArrow":"⇐","DoubleLeftRightArrow":"⇔","DoubleLeftTee":"⫤","DoubleLongLeftArrow":"⟸","DoubleLongLeftRightArrow":"⟺","DoubleLongRightArrow":"⟹","DoubleRightArrow":"⇒","DoubleRightTee":"⊨","DoubleUpArrow":"⇑","DoubleUpDownArrow":"⇕","DoubleVerticalBar":"∥","DownArrowBar":"⤓","downarrow":"↓","DownArrow":"↓","Downarrow":"⇓","DownArrowUpArrow":"⇵","DownBreve":"̑","downdownarrows":"⇊","downharpoonleft":"⇃","downharpoonright":"⇂","DownLeftRightVector":"⥐","DownLeftTeeVector":"⥞","DownLeftVectorBar":"⥖","DownLeftVector":"↽","DownRightTeeVector":"⥟","DownRightVectorBar":"⥗","DownRightVector":"⇁","DownTeeArrow":"↧","DownTee":"⊤","drbkarow":"⤐","drcorn":"⌟","drcrop":"⌌","Dscr":"𝒟","dscr":"𝒹","DScy":"Ѕ","dscy":"ѕ","dsol":"⧶","Dstrok":"Đ","dstrok":"đ","dtdot":"⋱","dtri":"▿","dtrif":"▾","duarr":"⇵","duhar":"⥯","dwangle":"⦦","DZcy":"Џ","dzcy":"џ","dzigrarr":"⟿","Eacute":"É","eacute":"é","easter":"⩮","Ecaron":"Ě","ecaron":"ě","Ecirc":"Ê","ecirc":"ê","ecir":"≖","ecolon":"≕","Ecy":"Э","ecy":"э","eDDot":"⩷","Edot":"Ė","edot":"ė","eDot":"≑","ee":"ⅇ","efDot":"≒","Efr":"𝔈","efr":"𝔢","eg":"⪚","Egrave":"È","egrave":"è","egs":"⪖","egsdot":"⪘","el":"⪙","Element":"∈","elinters":"⏧","ell":"ℓ","els":"⪕","elsdot":"⪗","Emacr":"Ē","emacr":"ē","empty":"∅","emptyset":"∅","EmptySmallSquare":"◻","emptyv":"∅","EmptyVerySmallSquare":"▫","emsp13":" ","emsp14":" ","emsp":" ","ENG":"Ŋ","eng":"ŋ","ensp":" ","Eogon":"Ę","eogon":"ę","Eopf":"𝔼","eopf":"𝕖","epar":"⋕","eparsl":"⧣","eplus":"⩱","epsi":"ε","Epsilon":"Ε","epsilon":"ε","epsiv":"ϵ","eqcirc":"≖","eqcolon":"≕","eqsim":"≂","eqslantgtr":"⪖","eqslantless":"⪕","Equal":"⩵","equals":"=","EqualTilde":"≂","equest":"≟","Equilibrium":"⇌","equiv":"≡","equivDD":"⩸","eqvparsl":"⧥","erarr":"⥱","erDot":"≓","escr":"ℯ","Escr":"ℰ","esdot":"≐","Esim":"⩳","esim":"≂","Eta":"Η","eta":"η","ETH":"Ð","eth":"ð","Euml":"Ë","euml":"ë","euro":"€","excl":"!","exist":"∃","Exists":"∃","expectation":"ℰ","exponentiale":"ⅇ","ExponentialE":"ⅇ","fallingdotseq":"≒","Fcy":"Ф","fcy":"ф","female":"♀","ffilig":"ffi","fflig":"ff","ffllig":"ffl","Ffr":"𝔉","ffr":"𝔣","filig":"fi","FilledSmallSquare":"◼","FilledVerySmallSquare":"▪","fjlig":"fj","flat":"♭","fllig":"fl","fltns":"▱","fnof":"ƒ","Fopf":"𝔽","fopf":"𝕗","forall":"∀","ForAll":"∀","fork":"⋔","forkv":"⫙","Fouriertrf":"ℱ","fpartint":"⨍","frac12":"½","frac13":"⅓","frac14":"¼","frac15":"⅕","frac16":"⅙","frac18":"⅛","frac23":"⅔","frac25":"⅖","frac34":"¾","frac35":"⅗","frac38":"⅜","frac45":"⅘","frac56":"⅚","frac58":"⅝","frac78":"⅞","frasl":"⁄","frown":"⌢","fscr":"𝒻","Fscr":"ℱ","gacute":"ǵ","Gamma":"Γ","gamma":"γ","Gammad":"Ϝ","gammad":"ϝ","gap":"⪆","Gbreve":"Ğ","gbreve":"ğ","Gcedil":"Ģ","Gcirc":"Ĝ","gcirc":"ĝ","Gcy":"Г","gcy":"г","Gdot":"Ġ","gdot":"ġ","ge":"≥","gE":"≧","gEl":"⪌","gel":"⋛","geq":"≥","geqq":"≧","geqslant":"⩾","gescc":"⪩","ges":"⩾","gesdot":"⪀","gesdoto":"⪂","gesdotol":"⪄","gesl":"⋛︀","gesles":"⪔","Gfr":"𝔊","gfr":"𝔤","gg":"≫","Gg":"⋙","ggg":"⋙","gimel":"ℷ","GJcy":"Ѓ","gjcy":"ѓ","gla":"⪥","gl":"≷","glE":"⪒","glj":"⪤","gnap":"⪊","gnapprox":"⪊","gne":"⪈","gnE":"≩","gneq":"⪈","gneqq":"≩","gnsim":"⋧","Gopf":"𝔾","gopf":"𝕘","grave":"`","GreaterEqual":"≥","GreaterEqualLess":"⋛","GreaterFullEqual":"≧","GreaterGreater":"⪢","GreaterLess":"≷","GreaterSlantEqual":"⩾","GreaterTilde":"≳","Gscr":"𝒢","gscr":"ℊ","gsim":"≳","gsime":"⪎","gsiml":"⪐","gtcc":"⪧","gtcir":"⩺","gt":">","GT":">","Gt":"≫","gtdot":"⋗","gtlPar":"⦕","gtquest":"⩼","gtrapprox":"⪆","gtrarr":"⥸","gtrdot":"⋗","gtreqless":"⋛","gtreqqless":"⪌","gtrless":"≷","gtrsim":"≳","gvertneqq":"≩︀","gvnE":"≩︀","Hacek":"ˇ","hairsp":" ","half":"½","hamilt":"ℋ","HARDcy":"Ъ","hardcy":"ъ","harrcir":"⥈","harr":"↔","hArr":"⇔","harrw":"↭","Hat":"^","hbar":"ℏ","Hcirc":"Ĥ","hcirc":"ĥ","hearts":"♥","heartsuit":"♥","hellip":"…","hercon":"⊹","hfr":"𝔥","Hfr":"ℌ","HilbertSpace":"ℋ","hksearow":"⤥","hkswarow":"⤦","hoarr":"⇿","homtht":"∻","hookleftarrow":"↩","hookrightarrow":"↪","hopf":"𝕙","Hopf":"ℍ","horbar":"―","HorizontalLine":"─","hscr":"𝒽","Hscr":"ℋ","hslash":"ℏ","Hstrok":"Ħ","hstrok":"ħ","HumpDownHump":"≎","HumpEqual":"≏","hybull":"⁃","hyphen":"‐","Iacute":"Í","iacute":"í","ic":"⁣","Icirc":"Î","icirc":"î","Icy":"И","icy":"и","Idot":"İ","IEcy":"Е","iecy":"е","iexcl":"¡","iff":"⇔","ifr":"𝔦","Ifr":"ℑ","Igrave":"Ì","igrave":"ì","ii":"ⅈ","iiiint":"⨌","iiint":"∭","iinfin":"⧜","iiota":"℩","IJlig":"IJ","ijlig":"ij","Imacr":"Ī","imacr":"ī","image":"ℑ","ImaginaryI":"ⅈ","imagline":"ℐ","imagpart":"ℑ","imath":"ı","Im":"ℑ","imof":"⊷","imped":"Ƶ","Implies":"⇒","incare":"℅","in":"∈","infin":"∞","infintie":"⧝","inodot":"ı","intcal":"⊺","int":"∫","Int":"∬","integers":"ℤ","Integral":"∫","intercal":"⊺","Intersection":"⋂","intlarhk":"⨗","intprod":"⨼","InvisibleComma":"⁣","InvisibleTimes":"⁢","IOcy":"Ё","iocy":"ё","Iogon":"Į","iogon":"į","Iopf":"𝕀","iopf":"𝕚","Iota":"Ι","iota":"ι","iprod":"⨼","iquest":"¿","iscr":"𝒾","Iscr":"ℐ","isin":"∈","isindot":"⋵","isinE":"⋹","isins":"⋴","isinsv":"⋳","isinv":"∈","it":"⁢","Itilde":"Ĩ","itilde":"ĩ","Iukcy":"І","iukcy":"і","Iuml":"Ï","iuml":"ï","Jcirc":"Ĵ","jcirc":"ĵ","Jcy":"Й","jcy":"й","Jfr":"𝔍","jfr":"𝔧","jmath":"ȷ","Jopf":"𝕁","jopf":"𝕛","Jscr":"𝒥","jscr":"𝒿","Jsercy":"Ј","jsercy":"ј","Jukcy":"Є","jukcy":"є","Kappa":"Κ","kappa":"κ","kappav":"ϰ","Kcedil":"Ķ","kcedil":"ķ","Kcy":"К","kcy":"к","Kfr":"𝔎","kfr":"𝔨","kgreen":"ĸ","KHcy":"Х","khcy":"х","KJcy":"Ќ","kjcy":"ќ","Kopf":"𝕂","kopf":"𝕜","Kscr":"𝒦","kscr":"𝓀","lAarr":"⇚","Lacute":"Ĺ","lacute":"ĺ","laemptyv":"⦴","lagran":"ℒ","Lambda":"Λ","lambda":"λ","lang":"⟨","Lang":"⟪","langd":"⦑","langle":"⟨","lap":"⪅","Laplacetrf":"ℒ","laquo":"«","larrb":"⇤","larrbfs":"⤟","larr":"←","Larr":"↞","lArr":"⇐","larrfs":"⤝","larrhk":"↩","larrlp":"↫","larrpl":"⤹","larrsim":"⥳","larrtl":"↢","latail":"⤙","lAtail":"⤛","lat":"⪫","late":"⪭","lates":"⪭︀","lbarr":"⤌","lBarr":"⤎","lbbrk":"❲","lbrace":"{","lbrack":"[","lbrke":"⦋","lbrksld":"⦏","lbrkslu":"⦍","Lcaron":"Ľ","lcaron":"ľ","Lcedil":"Ļ","lcedil":"ļ","lceil":"⌈","lcub":"{","Lcy":"Л","lcy":"л","ldca":"⤶","ldquo":"“","ldquor":"„","ldrdhar":"⥧","ldrushar":"⥋","ldsh":"↲","le":"≤","lE":"≦","LeftAngleBracket":"⟨","LeftArrowBar":"⇤","leftarrow":"←","LeftArrow":"←","Leftarrow":"⇐","LeftArrowRightArrow":"⇆","leftarrowtail":"↢","LeftCeiling":"⌈","LeftDoubleBracket":"⟦","LeftDownTeeVector":"⥡","LeftDownVectorBar":"⥙","LeftDownVector":"⇃","LeftFloor":"⌊","leftharpoondown":"↽","leftharpoonup":"↼","leftleftarrows":"⇇","leftrightarrow":"↔","LeftRightArrow":"↔","Leftrightarrow":"⇔","leftrightarrows":"⇆","leftrightharpoons":"⇋","leftrightsquigarrow":"↭","LeftRightVector":"⥎","LeftTeeArrow":"↤","LeftTee":"⊣","LeftTeeVector":"⥚","leftthreetimes":"⋋","LeftTriangleBar":"⧏","LeftTriangle":"⊲","LeftTriangleEqual":"⊴","LeftUpDownVector":"⥑","LeftUpTeeVector":"⥠","LeftUpVectorBar":"⥘","LeftUpVector":"↿","LeftVectorBar":"⥒","LeftVector":"↼","lEg":"⪋","leg":"⋚","leq":"≤","leqq":"≦","leqslant":"⩽","lescc":"⪨","les":"⩽","lesdot":"⩿","lesdoto":"⪁","lesdotor":"⪃","lesg":"⋚︀","lesges":"⪓","lessapprox":"⪅","lessdot":"⋖","lesseqgtr":"⋚","lesseqqgtr":"⪋","LessEqualGreater":"⋚","LessFullEqual":"≦","LessGreater":"≶","lessgtr":"≶","LessLess":"⪡","lesssim":"≲","LessSlantEqual":"⩽","LessTilde":"≲","lfisht":"⥼","lfloor":"⌊","Lfr":"𝔏","lfr":"𝔩","lg":"≶","lgE":"⪑","lHar":"⥢","lhard":"↽","lharu":"↼","lharul":"⥪","lhblk":"▄","LJcy":"Љ","ljcy":"љ","llarr":"⇇","ll":"≪","Ll":"⋘","llcorner":"⌞","Lleftarrow":"⇚","llhard":"⥫","lltri":"◺","Lmidot":"Ŀ","lmidot":"ŀ","lmoustache":"⎰","lmoust":"⎰","lnap":"⪉","lnapprox":"⪉","lne":"⪇","lnE":"≨","lneq":"⪇","lneqq":"≨","lnsim":"⋦","loang":"⟬","loarr":"⇽","lobrk":"⟦","longleftarrow":"⟵","LongLeftArrow":"⟵","Longleftarrow":"⟸","longleftrightarrow":"⟷","LongLeftRightArrow":"⟷","Longleftrightarrow":"⟺","longmapsto":"⟼","longrightarrow":"⟶","LongRightArrow":"⟶","Longrightarrow":"⟹","looparrowleft":"↫","looparrowright":"↬","lopar":"⦅","Lopf":"𝕃","lopf":"𝕝","loplus":"⨭","lotimes":"⨴","lowast":"∗","lowbar":"_","LowerLeftArrow":"↙","LowerRightArrow":"↘","loz":"◊","lozenge":"◊","lozf":"⧫","lpar":"(","lparlt":"⦓","lrarr":"⇆","lrcorner":"⌟","lrhar":"⇋","lrhard":"⥭","lrm":"‎","lrtri":"⊿","lsaquo":"‹","lscr":"𝓁","Lscr":"ℒ","lsh":"↰","Lsh":"↰","lsim":"≲","lsime":"⪍","lsimg":"⪏","lsqb":"[","lsquo":"‘","lsquor":"‚","Lstrok":"Ł","lstrok":"ł","ltcc":"⪦","ltcir":"⩹","lt":"<","LT":"<","Lt":"≪","ltdot":"⋖","lthree":"⋋","ltimes":"⋉","ltlarr":"⥶","ltquest":"⩻","ltri":"◃","ltrie":"⊴","ltrif":"◂","ltrPar":"⦖","lurdshar":"⥊","luruhar":"⥦","lvertneqq":"≨︀","lvnE":"≨︀","macr":"¯","male":"♂","malt":"✠","maltese":"✠","Map":"⤅","map":"↦","mapsto":"↦","mapstodown":"↧","mapstoleft":"↤","mapstoup":"↥","marker":"▮","mcomma":"⨩","Mcy":"М","mcy":"м","mdash":"—","mDDot":"∺","measuredangle":"∡","MediumSpace":" ","Mellintrf":"ℳ","Mfr":"𝔐","mfr":"𝔪","mho":"℧","micro":"µ","midast":"*","midcir":"⫰","mid":"∣","middot":"·","minusb":"⊟","minus":"−","minusd":"∸","minusdu":"⨪","MinusPlus":"∓","mlcp":"⫛","mldr":"…","mnplus":"∓","models":"⊧","Mopf":"𝕄","mopf":"𝕞","mp":"∓","mscr":"𝓂","Mscr":"ℳ","mstpos":"∾","Mu":"Μ","mu":"μ","multimap":"⊸","mumap":"⊸","nabla":"∇","Nacute":"Ń","nacute":"ń","nang":"∠⃒","nap":"≉","napE":"⩰̸","napid":"≋̸","napos":"ʼn","napprox":"≉","natural":"♮","naturals":"ℕ","natur":"♮","nbsp":" ","nbump":"≎̸","nbumpe":"≏̸","ncap":"⩃","Ncaron":"Ň","ncaron":"ň","Ncedil":"Ņ","ncedil":"ņ","ncong":"≇","ncongdot":"⩭̸","ncup":"⩂","Ncy":"Н","ncy":"н","ndash":"–","nearhk":"⤤","nearr":"↗","neArr":"⇗","nearrow":"↗","ne":"≠","nedot":"≐̸","NegativeMediumSpace":"​","NegativeThickSpace":"​","NegativeThinSpace":"​","NegativeVeryThinSpace":"​","nequiv":"≢","nesear":"⤨","nesim":"≂̸","NestedGreaterGreater":"≫","NestedLessLess":"≪","NewLine":"\\n","nexist":"∄","nexists":"∄","Nfr":"𝔑","nfr":"𝔫","ngE":"≧̸","nge":"≱","ngeq":"≱","ngeqq":"≧̸","ngeqslant":"⩾̸","nges":"⩾̸","nGg":"⋙̸","ngsim":"≵","nGt":"≫⃒","ngt":"≯","ngtr":"≯","nGtv":"≫̸","nharr":"↮","nhArr":"⇎","nhpar":"⫲","ni":"∋","nis":"⋼","nisd":"⋺","niv":"∋","NJcy":"Њ","njcy":"њ","nlarr":"↚","nlArr":"⇍","nldr":"‥","nlE":"≦̸","nle":"≰","nleftarrow":"↚","nLeftarrow":"⇍","nleftrightarrow":"↮","nLeftrightarrow":"⇎","nleq":"≰","nleqq":"≦̸","nleqslant":"⩽̸","nles":"⩽̸","nless":"≮","nLl":"⋘̸","nlsim":"≴","nLt":"≪⃒","nlt":"≮","nltri":"⋪","nltrie":"⋬","nLtv":"≪̸","nmid":"∤","NoBreak":"⁠","NonBreakingSpace":" ","nopf":"𝕟","Nopf":"ℕ","Not":"⫬","not":"¬","NotCongruent":"≢","NotCupCap":"≭","NotDoubleVerticalBar":"∦","NotElement":"∉","NotEqual":"≠","NotEqualTilde":"≂̸","NotExists":"∄","NotGreater":"≯","NotGreaterEqual":"≱","NotGreaterFullEqual":"≧̸","NotGreaterGreater":"≫̸","NotGreaterLess":"≹","NotGreaterSlantEqual":"⩾̸","NotGreaterTilde":"≵","NotHumpDownHump":"≎̸","NotHumpEqual":"≏̸","notin":"∉","notindot":"⋵̸","notinE":"⋹̸","notinva":"∉","notinvb":"⋷","notinvc":"⋶","NotLeftTriangleBar":"⧏̸","NotLeftTriangle":"⋪","NotLeftTriangleEqual":"⋬","NotLess":"≮","NotLessEqual":"≰","NotLessGreater":"≸","NotLessLess":"≪̸","NotLessSlantEqual":"⩽̸","NotLessTilde":"≴","NotNestedGreaterGreater":"⪢̸","NotNestedLessLess":"⪡̸","notni":"∌","notniva":"∌","notnivb":"⋾","notnivc":"⋽","NotPrecedes":"⊀","NotPrecedesEqual":"⪯̸","NotPrecedesSlantEqual":"⋠","NotReverseElement":"∌","NotRightTriangleBar":"⧐̸","NotRightTriangle":"⋫","NotRightTriangleEqual":"⋭","NotSquareSubset":"⊏̸","NotSquareSubsetEqual":"⋢","NotSquareSuperset":"⊐̸","NotSquareSupersetEqual":"⋣","NotSubset":"⊂⃒","NotSubsetEqual":"⊈","NotSucceeds":"⊁","NotSucceedsEqual":"⪰̸","NotSucceedsSlantEqual":"⋡","NotSucceedsTilde":"≿̸","NotSuperset":"⊃⃒","NotSupersetEqual":"⊉","NotTilde":"≁","NotTildeEqual":"≄","NotTildeFullEqual":"≇","NotTildeTilde":"≉","NotVerticalBar":"∤","nparallel":"∦","npar":"∦","nparsl":"⫽⃥","npart":"∂̸","npolint":"⨔","npr":"⊀","nprcue":"⋠","nprec":"⊀","npreceq":"⪯̸","npre":"⪯̸","nrarrc":"⤳̸","nrarr":"↛","nrArr":"⇏","nrarrw":"↝̸","nrightarrow":"↛","nRightarrow":"⇏","nrtri":"⋫","nrtrie":"⋭","nsc":"⊁","nsccue":"⋡","nsce":"⪰̸","Nscr":"𝒩","nscr":"𝓃","nshortmid":"∤","nshortparallel":"∦","nsim":"≁","nsime":"≄","nsimeq":"≄","nsmid":"∤","nspar":"∦","nsqsube":"⋢","nsqsupe":"⋣","nsub":"⊄","nsubE":"⫅̸","nsube":"⊈","nsubset":"⊂⃒","nsubseteq":"⊈","nsubseteqq":"⫅̸","nsucc":"⊁","nsucceq":"⪰̸","nsup":"⊅","nsupE":"⫆̸","nsupe":"⊉","nsupset":"⊃⃒","nsupseteq":"⊉","nsupseteqq":"⫆̸","ntgl":"≹","Ntilde":"Ñ","ntilde":"ñ","ntlg":"≸","ntriangleleft":"⋪","ntrianglelefteq":"⋬","ntriangleright":"⋫","ntrianglerighteq":"⋭","Nu":"Ν","nu":"ν","num":"#","numero":"№","numsp":" ","nvap":"≍⃒","nvdash":"⊬","nvDash":"⊭","nVdash":"⊮","nVDash":"⊯","nvge":"≥⃒","nvgt":">⃒","nvHarr":"⤄","nvinfin":"⧞","nvlArr":"⤂","nvle":"≤⃒","nvlt":"<⃒","nvltrie":"⊴⃒","nvrArr":"⤃","nvrtrie":"⊵⃒","nvsim":"∼⃒","nwarhk":"⤣","nwarr":"↖","nwArr":"⇖","nwarrow":"↖","nwnear":"⤧","Oacute":"Ó","oacute":"ó","oast":"⊛","Ocirc":"Ô","ocirc":"ô","ocir":"⊚","Ocy":"О","ocy":"о","odash":"⊝","Odblac":"Ő","odblac":"ő","odiv":"⨸","odot":"⊙","odsold":"⦼","OElig":"Œ","oelig":"œ","ofcir":"⦿","Ofr":"𝔒","ofr":"𝔬","ogon":"˛","Ograve":"Ò","ograve":"ò","ogt":"⧁","ohbar":"⦵","ohm":"Ω","oint":"∮","olarr":"↺","olcir":"⦾","olcross":"⦻","oline":"‾","olt":"⧀","Omacr":"Ō","omacr":"ō","Omega":"Ω","omega":"ω","Omicron":"Ο","omicron":"ο","omid":"⦶","ominus":"⊖","Oopf":"𝕆","oopf":"𝕠","opar":"⦷","OpenCurlyDoubleQuote":"“","OpenCurlyQuote":"‘","operp":"⦹","oplus":"⊕","orarr":"↻","Or":"⩔","or":"∨","ord":"⩝","order":"ℴ","orderof":"ℴ","ordf":"ª","ordm":"º","origof":"⊶","oror":"⩖","orslope":"⩗","orv":"⩛","oS":"Ⓢ","Oscr":"𝒪","oscr":"ℴ","Oslash":"Ø","oslash":"ø","osol":"⊘","Otilde":"Õ","otilde":"õ","otimesas":"⨶","Otimes":"⨷","otimes":"⊗","Ouml":"Ö","ouml":"ö","ovbar":"⌽","OverBar":"‾","OverBrace":"⏞","OverBracket":"⎴","OverParenthesis":"⏜","para":"¶","parallel":"∥","par":"∥","parsim":"⫳","parsl":"⫽","part":"∂","PartialD":"∂","Pcy":"П","pcy":"п","percnt":"%","period":".","permil":"‰","perp":"⊥","pertenk":"‱","Pfr":"𝔓","pfr":"𝔭","Phi":"Φ","phi":"φ","phiv":"ϕ","phmmat":"ℳ","phone":"☎","Pi":"Π","pi":"π","pitchfork":"⋔","piv":"ϖ","planck":"ℏ","planckh":"ℎ","plankv":"ℏ","plusacir":"⨣","plusb":"⊞","pluscir":"⨢","plus":"+","plusdo":"∔","plusdu":"⨥","pluse":"⩲","PlusMinus":"±","plusmn":"±","plussim":"⨦","plustwo":"⨧","pm":"±","Poincareplane":"ℌ","pointint":"⨕","popf":"𝕡","Popf":"ℙ","pound":"£","prap":"⪷","Pr":"⪻","pr":"≺","prcue":"≼","precapprox":"⪷","prec":"≺","preccurlyeq":"≼","Precedes":"≺","PrecedesEqual":"⪯","PrecedesSlantEqual":"≼","PrecedesTilde":"≾","preceq":"⪯","precnapprox":"⪹","precneqq":"⪵","precnsim":"⋨","pre":"⪯","prE":"⪳","precsim":"≾","prime":"′","Prime":"″","primes":"ℙ","prnap":"⪹","prnE":"⪵","prnsim":"⋨","prod":"∏","Product":"∏","profalar":"⌮","profline":"⌒","profsurf":"⌓","prop":"∝","Proportional":"∝","Proportion":"∷","propto":"∝","prsim":"≾","prurel":"⊰","Pscr":"𝒫","pscr":"𝓅","Psi":"Ψ","psi":"ψ","puncsp":" ","Qfr":"𝔔","qfr":"𝔮","qint":"⨌","qopf":"𝕢","Qopf":"ℚ","qprime":"⁗","Qscr":"𝒬","qscr":"𝓆","quaternions":"ℍ","quatint":"⨖","quest":"?","questeq":"≟","quot":"\\"","QUOT":"\\"","rAarr":"⇛","race":"∽̱","Racute":"Ŕ","racute":"ŕ","radic":"√","raemptyv":"⦳","rang":"⟩","Rang":"⟫","rangd":"⦒","range":"⦥","rangle":"⟩","raquo":"»","rarrap":"⥵","rarrb":"⇥","rarrbfs":"⤠","rarrc":"⤳","rarr":"→","Rarr":"↠","rArr":"⇒","rarrfs":"⤞","rarrhk":"↪","rarrlp":"↬","rarrpl":"⥅","rarrsim":"⥴","Rarrtl":"⤖","rarrtl":"↣","rarrw":"↝","ratail":"⤚","rAtail":"⤜","ratio":"∶","rationals":"ℚ","rbarr":"⤍","rBarr":"⤏","RBarr":"⤐","rbbrk":"❳","rbrace":"}","rbrack":"]","rbrke":"⦌","rbrksld":"⦎","rbrkslu":"⦐","Rcaron":"Ř","rcaron":"ř","Rcedil":"Ŗ","rcedil":"ŗ","rceil":"⌉","rcub":"}","Rcy":"Р","rcy":"р","rdca":"⤷","rdldhar":"⥩","rdquo":"”","rdquor":"”","rdsh":"↳","real":"ℜ","realine":"ℛ","realpart":"ℜ","reals":"ℝ","Re":"ℜ","rect":"▭","reg":"®","REG":"®","ReverseElement":"∋","ReverseEquilibrium":"⇋","ReverseUpEquilibrium":"⥯","rfisht":"⥽","rfloor":"⌋","rfr":"𝔯","Rfr":"ℜ","rHar":"⥤","rhard":"⇁","rharu":"⇀","rharul":"⥬","Rho":"Ρ","rho":"ρ","rhov":"ϱ","RightAngleBracket":"⟩","RightArrowBar":"⇥","rightarrow":"→","RightArrow":"→","Rightarrow":"⇒","RightArrowLeftArrow":"⇄","rightarrowtail":"↣","RightCeiling":"⌉","RightDoubleBracket":"⟧","RightDownTeeVector":"⥝","RightDownVectorBar":"⥕","RightDownVector":"⇂","RightFloor":"⌋","rightharpoondown":"⇁","rightharpoonup":"⇀","rightleftarrows":"⇄","rightleftharpoons":"⇌","rightrightarrows":"⇉","rightsquigarrow":"↝","RightTeeArrow":"↦","RightTee":"⊢","RightTeeVector":"⥛","rightthreetimes":"⋌","RightTriangleBar":"⧐","RightTriangle":"⊳","RightTriangleEqual":"⊵","RightUpDownVector":"⥏","RightUpTeeVector":"⥜","RightUpVectorBar":"⥔","RightUpVector":"↾","RightVectorBar":"⥓","RightVector":"⇀","ring":"˚","risingdotseq":"≓","rlarr":"⇄","rlhar":"⇌","rlm":"‏","rmoustache":"⎱","rmoust":"⎱","rnmid":"⫮","roang":"⟭","roarr":"⇾","robrk":"⟧","ropar":"⦆","ropf":"𝕣","Ropf":"ℝ","roplus":"⨮","rotimes":"⨵","RoundImplies":"⥰","rpar":")","rpargt":"⦔","rppolint":"⨒","rrarr":"⇉","Rrightarrow":"⇛","rsaquo":"›","rscr":"𝓇","Rscr":"ℛ","rsh":"↱","Rsh":"↱","rsqb":"]","rsquo":"’","rsquor":"’","rthree":"⋌","rtimes":"⋊","rtri":"▹","rtrie":"⊵","rtrif":"▸","rtriltri":"⧎","RuleDelayed":"⧴","ruluhar":"⥨","rx":"℞","Sacute":"Ś","sacute":"ś","sbquo":"‚","scap":"⪸","Scaron":"Š","scaron":"š","Sc":"⪼","sc":"≻","sccue":"≽","sce":"⪰","scE":"⪴","Scedil":"Ş","scedil":"ş","Scirc":"Ŝ","scirc":"ŝ","scnap":"⪺","scnE":"⪶","scnsim":"⋩","scpolint":"⨓","scsim":"≿","Scy":"С","scy":"с","sdotb":"⊡","sdot":"⋅","sdote":"⩦","searhk":"⤥","searr":"↘","seArr":"⇘","searrow":"↘","sect":"§","semi":";","seswar":"⤩","setminus":"∖","setmn":"∖","sext":"✶","Sfr":"𝔖","sfr":"𝔰","sfrown":"⌢","sharp":"♯","SHCHcy":"Щ","shchcy":"щ","SHcy":"Ш","shcy":"ш","ShortDownArrow":"↓","ShortLeftArrow":"←","shortmid":"∣","shortparallel":"∥","ShortRightArrow":"→","ShortUpArrow":"↑","shy":"­","Sigma":"Σ","sigma":"σ","sigmaf":"ς","sigmav":"ς","sim":"∼","simdot":"⩪","sime":"≃","simeq":"≃","simg":"⪞","simgE":"⪠","siml":"⪝","simlE":"⪟","simne":"≆","simplus":"⨤","simrarr":"⥲","slarr":"←","SmallCircle":"∘","smallsetminus":"∖","smashp":"⨳","smeparsl":"⧤","smid":"∣","smile":"⌣","smt":"⪪","smte":"⪬","smtes":"⪬︀","SOFTcy":"Ь","softcy":"ь","solbar":"⌿","solb":"⧄","sol":"/","Sopf":"𝕊","sopf":"𝕤","spades":"♠","spadesuit":"♠","spar":"∥","sqcap":"⊓","sqcaps":"⊓︀","sqcup":"⊔","sqcups":"⊔︀","Sqrt":"√","sqsub":"⊏","sqsube":"⊑","sqsubset":"⊏","sqsubseteq":"⊑","sqsup":"⊐","sqsupe":"⊒","sqsupset":"⊐","sqsupseteq":"⊒","square":"□","Square":"□","SquareIntersection":"⊓","SquareSubset":"⊏","SquareSubsetEqual":"⊑","SquareSuperset":"⊐","SquareSupersetEqual":"⊒","SquareUnion":"⊔","squarf":"▪","squ":"□","squf":"▪","srarr":"→","Sscr":"𝒮","sscr":"𝓈","ssetmn":"∖","ssmile":"⌣","sstarf":"⋆","Star":"⋆","star":"☆","starf":"★","straightepsilon":"ϵ","straightphi":"ϕ","strns":"¯","sub":"⊂","Sub":"⋐","subdot":"⪽","subE":"⫅","sube":"⊆","subedot":"⫃","submult":"⫁","subnE":"⫋","subne":"⊊","subplus":"⪿","subrarr":"⥹","subset":"⊂","Subset":"⋐","subseteq":"⊆","subseteqq":"⫅","SubsetEqual":"⊆","subsetneq":"⊊","subsetneqq":"⫋","subsim":"⫇","subsub":"⫕","subsup":"⫓","succapprox":"⪸","succ":"≻","succcurlyeq":"≽","Succeeds":"≻","SucceedsEqual":"⪰","SucceedsSlantEqual":"≽","SucceedsTilde":"≿","succeq":"⪰","succnapprox":"⪺","succneqq":"⪶","succnsim":"⋩","succsim":"≿","SuchThat":"∋","sum":"∑","Sum":"∑","sung":"♪","sup1":"¹","sup2":"²","sup3":"³","sup":"⊃","Sup":"⋑","supdot":"⪾","supdsub":"⫘","supE":"⫆","supe":"⊇","supedot":"⫄","Superset":"⊃","SupersetEqual":"⊇","suphsol":"⟉","suphsub":"⫗","suplarr":"⥻","supmult":"⫂","supnE":"⫌","supne":"⊋","supplus":"⫀","supset":"⊃","Supset":"⋑","supseteq":"⊇","supseteqq":"⫆","supsetneq":"⊋","supsetneqq":"⫌","supsim":"⫈","supsub":"⫔","supsup":"⫖","swarhk":"⤦","swarr":"↙","swArr":"⇙","swarrow":"↙","swnwar":"⤪","szlig":"ß","Tab":"\\t","target":"⌖","Tau":"Τ","tau":"τ","tbrk":"⎴","Tcaron":"Ť","tcaron":"ť","Tcedil":"Ţ","tcedil":"ţ","Tcy":"Т","tcy":"т","tdot":"⃛","telrec":"⌕","Tfr":"𝔗","tfr":"𝔱","there4":"∴","therefore":"∴","Therefore":"∴","Theta":"Θ","theta":"θ","thetasym":"ϑ","thetav":"ϑ","thickapprox":"≈","thicksim":"∼","ThickSpace":"  ","ThinSpace":" ","thinsp":" ","thkap":"≈","thksim":"∼","THORN":"Þ","thorn":"þ","tilde":"˜","Tilde":"∼","TildeEqual":"≃","TildeFullEqual":"≅","TildeTilde":"≈","timesbar":"⨱","timesb":"⊠","times":"×","timesd":"⨰","tint":"∭","toea":"⤨","topbot":"⌶","topcir":"⫱","top":"⊤","Topf":"𝕋","topf":"𝕥","topfork":"⫚","tosa":"⤩","tprime":"‴","trade":"™","TRADE":"™","triangle":"▵","triangledown":"▿","triangleleft":"◃","trianglelefteq":"⊴","triangleq":"≜","triangleright":"▹","trianglerighteq":"⊵","tridot":"◬","trie":"≜","triminus":"⨺","TripleDot":"⃛","triplus":"⨹","trisb":"⧍","tritime":"⨻","trpezium":"⏢","Tscr":"𝒯","tscr":"𝓉","TScy":"Ц","tscy":"ц","TSHcy":"Ћ","tshcy":"ћ","Tstrok":"Ŧ","tstrok":"ŧ","twixt":"≬","twoheadleftarrow":"↞","twoheadrightarrow":"↠","Uacute":"Ú","uacute":"ú","uarr":"↑","Uarr":"↟","uArr":"⇑","Uarrocir":"⥉","Ubrcy":"Ў","ubrcy":"ў","Ubreve":"Ŭ","ubreve":"ŭ","Ucirc":"Û","ucirc":"û","Ucy":"У","ucy":"у","udarr":"⇅","Udblac":"Ű","udblac":"ű","udhar":"⥮","ufisht":"⥾","Ufr":"𝔘","ufr":"𝔲","Ugrave":"Ù","ugrave":"ù","uHar":"⥣","uharl":"↿","uharr":"↾","uhblk":"▀","ulcorn":"⌜","ulcorner":"⌜","ulcrop":"⌏","ultri":"◸","Umacr":"Ū","umacr":"ū","uml":"¨","UnderBar":"_","UnderBrace":"⏟","UnderBracket":"⎵","UnderParenthesis":"⏝","Union":"⋃","UnionPlus":"⊎","Uogon":"Ų","uogon":"ų","Uopf":"𝕌","uopf":"𝕦","UpArrowBar":"⤒","uparrow":"↑","UpArrow":"↑","Uparrow":"⇑","UpArrowDownArrow":"⇅","updownarrow":"↕","UpDownArrow":"↕","Updownarrow":"⇕","UpEquilibrium":"⥮","upharpoonleft":"↿","upharpoonright":"↾","uplus":"⊎","UpperLeftArrow":"↖","UpperRightArrow":"↗","upsi":"υ","Upsi":"ϒ","upsih":"ϒ","Upsilon":"Υ","upsilon":"υ","UpTeeArrow":"↥","UpTee":"⊥","upuparrows":"⇈","urcorn":"⌝","urcorner":"⌝","urcrop":"⌎","Uring":"Ů","uring":"ů","urtri":"◹","Uscr":"𝒰","uscr":"𝓊","utdot":"⋰","Utilde":"Ũ","utilde":"ũ","utri":"▵","utrif":"▴","uuarr":"⇈","Uuml":"Ü","uuml":"ü","uwangle":"⦧","vangrt":"⦜","varepsilon":"ϵ","varkappa":"ϰ","varnothing":"∅","varphi":"ϕ","varpi":"ϖ","varpropto":"∝","varr":"↕","vArr":"⇕","varrho":"ϱ","varsigma":"ς","varsubsetneq":"⊊︀","varsubsetneqq":"⫋︀","varsupsetneq":"⊋︀","varsupsetneqq":"⫌︀","vartheta":"ϑ","vartriangleleft":"⊲","vartriangleright":"⊳","vBar":"⫨","Vbar":"⫫","vBarv":"⫩","Vcy":"В","vcy":"в","vdash":"⊢","vDash":"⊨","Vdash":"⊩","VDash":"⊫","Vdashl":"⫦","veebar":"⊻","vee":"∨","Vee":"⋁","veeeq":"≚","vellip":"⋮","verbar":"|","Verbar":"‖","vert":"|","Vert":"‖","VerticalBar":"∣","VerticalLine":"|","VerticalSeparator":"❘","VerticalTilde":"≀","VeryThinSpace":" ","Vfr":"𝔙","vfr":"𝔳","vltri":"⊲","vnsub":"⊂⃒","vnsup":"⊃⃒","Vopf":"𝕍","vopf":"𝕧","vprop":"∝","vrtri":"⊳","Vscr":"𝒱","vscr":"𝓋","vsubnE":"⫋︀","vsubne":"⊊︀","vsupnE":"⫌︀","vsupne":"⊋︀","Vvdash":"⊪","vzigzag":"⦚","Wcirc":"Ŵ","wcirc":"ŵ","wedbar":"⩟","wedge":"∧","Wedge":"⋀","wedgeq":"≙","weierp":"℘","Wfr":"𝔚","wfr":"𝔴","Wopf":"𝕎","wopf":"𝕨","wp":"℘","wr":"≀","wreath":"≀","Wscr":"𝒲","wscr":"𝓌","xcap":"⋂","xcirc":"◯","xcup":"⋃","xdtri":"▽","Xfr":"𝔛","xfr":"𝔵","xharr":"⟷","xhArr":"⟺","Xi":"Ξ","xi":"ξ","xlarr":"⟵","xlArr":"⟸","xmap":"⟼","xnis":"⋻","xodot":"⨀","Xopf":"𝕏","xopf":"𝕩","xoplus":"⨁","xotime":"⨂","xrarr":"⟶","xrArr":"⟹","Xscr":"𝒳","xscr":"𝓍","xsqcup":"⨆","xuplus":"⨄","xutri":"△","xvee":"⋁","xwedge":"⋀","Yacute":"Ý","yacute":"ý","YAcy":"Я","yacy":"я","Ycirc":"Ŷ","ycirc":"ŷ","Ycy":"Ы","ycy":"ы","yen":"¥","Yfr":"𝔜","yfr":"𝔶","YIcy":"Ї","yicy":"ї","Yopf":"𝕐","yopf":"𝕪","Yscr":"𝒴","yscr":"𝓎","YUcy":"Ю","yucy":"ю","yuml":"ÿ","Yuml":"Ÿ","Zacute":"Ź","zacute":"ź","Zcaron":"Ž","zcaron":"ž","Zcy":"З","zcy":"з","Zdot":"Ż","zdot":"ż","zeetrf":"ℨ","ZeroWidthSpace":"​","Zeta":"Ζ","zeta":"ζ","zfr":"𝔷","Zfr":"ℨ","ZHcy":"Ж","zhcy":"ж","zigrarr":"⇝","zopf":"𝕫","Zopf":"ℤ","Zscr":"𝒵","zscr":"𝓏","zwj":"‍","zwnj":"‌"}')},function(t,e,n){"use strict";var r={};function o(t,e,n){var i,a,s,c,u,l="";for("string"!=typeof e&&(n=e,e=o.defaultChars),void 0===n&&(n=!0),u=function(t){var e,n,o=r[t];if(o)return o;for(o=r[t]=[],e=0;e<128;e++)n=String.fromCharCode(e),/^[0-9a-z]$/i.test(n)?o.push(n):o.push("%"+("0"+e.toString(16).toUpperCase()).slice(-2));for(e=0;e=55296&&s<=57343){if(s>=55296&&s<=56319&&i+1=56320&&c<=57343){l+=encodeURIComponent(t[i]+t[i+1]),i++;continue}l+="%EF%BF%BD"}else l+=encodeURIComponent(t[i]);return l}o.defaultChars=";/?:@&=+$,-_.!~*'()#",o.componentChars="-_.!~*'()",t.exports=o},function(t,e,n){"use strict";var r={};function o(t,e){var n;return"string"!=typeof e&&(e=o.defaultChars),n=function(t){var e,n,o=r[t];if(o)return o;for(o=r[t]=[],e=0;e<128;e++)n=String.fromCharCode(e),o.push(n);for(e=0;e=55296&&c<=57343?"���":String.fromCharCode(c),e+=6):240==(248&o)&&e+91114111?u+="����":(c-=65536,u+=String.fromCharCode(55296+(c>>10),56320+(1023&c))),e+=9):u+="�";return u}))}o.defaultChars=";/?:@&=+$,#",o.componentChars="",t.exports=o},function(t,e,n){"use strict";t.exports=function(t){var e="";return e+=t.protocol||"",e+=t.slashes?"//":"",e+=t.auth?t.auth+"@":"",t.hostname&&-1!==t.hostname.indexOf(":")?e+="["+t.hostname+"]":e+=t.hostname||"",e+=t.port?":"+t.port:"",e+=t.pathname||"",e+=t.search||"",e+=t.hash||""}},function(t,e,n){"use strict";function r(){this.protocol=null,this.slashes=null,this.auth=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.pathname=null}var o=/^([a-z0-9.+-]+:)/i,i=/:[0-9]*$/,a=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,s=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r","\n","\t"]),c=["'"].concat(s),u=["%","/","?",";","#"].concat(c),l=["/","?","#"],f=/^[+a-z0-9A-Z_-]{0,63}$/,p=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,d={javascript:!0,"javascript:":!0},h={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0};r.prototype.parse=function(t,e){var n,r,i,s,c,m=t;if(m=m.trim(),!e&&1===t.split("#").length){var g=a.exec(m);if(g)return this.pathname=g[1],g[2]&&(this.search=g[2]),this}var v=o.exec(m);if(v&&(i=(v=v[0]).toLowerCase(),this.protocol=v,m=m.substr(v.length)),(e||v||m.match(/^\/\/[^@\/]+@[^@\/]+/))&&(!(c="//"===m.substr(0,2))||v&&d[v]||(m=m.substr(2),this.slashes=!0)),!d[v]&&(c||v&&!h[v])){var b,_,y=-1;for(n=0;n127?C+="x":C+=w[A];if(!C.match(f)){var S=x.slice(0,n),R=x.slice(n+1),O=w.match(p);O&&(S.push(O[1]),R.unshift(O[2])),R.length&&(m=R.join(".")+m),this.hostname=S.join(".");break}}}}this.hostname.length>255&&(this.hostname=""),k&&(this.hostname=this.hostname.substr(1,this.hostname.length-2))}var N=m.indexOf("#");-1!==N&&(this.hash=m.substr(N),m=m.slice(0,N));var L=m.indexOf("?");return-1!==L&&(this.search=m.substr(L),m=m.slice(0,L)),m&&(this.pathname=m),h[i]&&this.hostname&&!this.pathname&&(this.pathname=""),this},r.prototype.parseHost=function(t){var e=i.exec(t);e&&(":"!==(e=e[0])&&(this.port=e.substr(1)),t=t.substr(0,t.length-e.length)),t&&(this.hostname=t)},t.exports=function(t,e){if(t&&t instanceof r)return t;var n=new r;return n.parse(t,e),n}},function(t,e,n){"use strict";e.Any=n(57),e.Cc=n(58),e.Cf=n(108),e.P=n(36),e.Z=n(59)},function(t,e){t.exports=/[\xAD\u0600-\u0605\u061C\u06DD\u070F\u08E2\u180E\u200B-\u200F\u202A-\u202E\u2060-\u2064\u2066-\u206F\uFEFF\uFFF9-\uFFFB]|\uD804[\uDCBD\uDCCD]|\uD82F[\uDCA0-\uDCA3]|\uD834[\uDD73-\uDD7A]|\uDB40[\uDC01\uDC20-\uDC7F]/},function(t,e,n){"use strict";e.parseLinkLabel=n(110),e.parseLinkDestination=n(111),e.parseLinkTitle=n(112)},function(t,e,n){"use strict";t.exports=function(t,e,n){var r,o,i,a,s=-1,c=t.posMax,u=t.pos;for(t.pos=e+1,r=1;t.pos=n)return c;if(34!==(i=t.charCodeAt(e))&&39!==i&&40!==i)return c;for(e++,40===i&&(i=41);e"+i(t[e].content)+""},a.code_block=function(t,e,n,r,o){var a=t[e];return""+i(t[e].content)+"\n"},a.fence=function(t,e,n,r,a){var s,c,u,l,f=t[e],p=f.info?o(f.info).trim():"",d="";return p&&(d=p.split(/\s+/g)[0]),0===(s=n.highlight&&n.highlight(f.content,d)||i(f.content)).indexOf(""+s+"\n"):"
"+s+"
\n"},a.image=function(t,e,n,r,o){var i=t[e];return i.attrs[i.attrIndex("alt")][1]=o.renderInlineAsText(i.children,n,r),o.renderToken(t,e,n)},a.hardbreak=function(t,e,n){return n.xhtmlOut?"
\n":"
\n"},a.softbreak=function(t,e,n){return n.breaks?n.xhtmlOut?"
\n":"
\n":"\n"},a.text=function(t,e){return i(t[e].content)},a.html_block=function(t,e){return t[e].content},a.html_inline=function(t,e){return t[e].content},s.prototype.renderAttrs=function(t){var e,n,r;if(!t.attrs)return"";for(r="",e=0,n=t.attrs.length;e\n":">")},s.prototype.renderInline=function(t,e,n){for(var r,o="",i=this.rules,a=0,s=t.length;a/i.test(t)}t.exports=function(t){var e,n,i,a,s,c,u,l,f,p,d,h,m,g,v,b,_,y,E=t.tokens;if(t.md.options.linkify)for(n=0,i=E.length;n=0;e--)if("link_close"!==(c=a[e]).type){if("html_inline"===c.type&&(y=c.content,/^\s]/i.test(y)&&m>0&&m--,o(c.content)&&m++),!(m>0)&&"text"===c.type&&t.md.linkify.test(c.content)){for(f=c.content,_=t.md.linkify.match(f),u=[],h=c.level,d=0,l=0;l<_.length;l++)g=_[l].url,v=t.md.normalizeLink(g),t.md.validateLink(v)&&(b=_[l].text,b=_[l].schema?"mailto:"!==_[l].schema||/^mailto:/i.test(b)?t.md.normalizeLinkText(b):t.md.normalizeLinkText("mailto:"+b).replace(/^mailto:/,""):t.md.normalizeLinkText("http://"+b).replace(/^http:\/\//,""),(p=_[l].index)>d&&((s=new t.Token("text","",0)).content=f.slice(d,p),s.level=h,u.push(s)),(s=new t.Token("link_open","a",1)).attrs=[["href",v]],s.level=h++,s.markup="linkify",s.info="auto",u.push(s),(s=new t.Token("text","",0)).content=b,s.level=h,u.push(s),(s=new t.Token("link_close","a",-1)).level=--h,s.markup="linkify",s.info="auto",u.push(s),d=_[l].lastIndex);d=0;e--)"text"!==(n=t[e]).type||r||(n.content=n.content.replace(i,s)),"link_open"===n.type&&"auto"===n.info&&r--,"link_close"===n.type&&"auto"===n.info&&r++}function u(t){var e,n,o=0;for(e=t.length-1;e>=0;e--)"text"!==(n=t[e]).type||o||r.test(n.content)&&(n.content=n.content.replace(/\+-/g,"±").replace(/\.{2,}/g,"…").replace(/([?!])…/g,"$1..").replace(/([?!]){4,}/g,"$1$1$1").replace(/,{2,}/g,",").replace(/(^|[^-])---([^-]|$)/gm,"$1—$2").replace(/(^|\s)--(\s|$)/gm,"$1–$2").replace(/(^|[^-\s])--([^-\s]|$)/gm,"$1–$2")),"link_open"===n.type&&"auto"===n.info&&o--,"link_close"===n.type&&"auto"===n.info&&o++}t.exports=function(t){var e;if(t.md.options.typographer)for(e=t.tokens.length-1;e>=0;e--)"inline"===t.tokens[e].type&&(o.test(t.tokens[e].content)&&c(t.tokens[e].children),r.test(t.tokens[e].content)&&u(t.tokens[e].children))}},function(t,e,n){"use strict";var r=n(1).isWhiteSpace,o=n(1).isPunctChar,i=n(1).isMdAsciiPunct,a=/['"]/,s=/['"]/g,c="’";function u(t,e,n){return t.substr(0,e)+n+t.substr(e+1)}function l(t,e){var n,a,l,f,p,d,h,m,g,v,b,_,y,E,k,x,w,C,A,T,S;for(A=[],n=0;n=0&&!(A[w].level<=h);w--);if(A.length=w+1,"text"===a.type){p=0,d=(l=a.content).length;t:for(;p=0)g=l.charCodeAt(f.index-1);else for(w=n-1;w>=0&&("softbreak"!==t[w].type&&"hardbreak"!==t[w].type);w--)if("text"===t[w].type){g=t[w].content.charCodeAt(t[w].content.length-1);break}if(v=32,p=48&&g<=57&&(x=k=!1),k&&x&&(k=!1,x=_),k||x){if(x)for(w=A.length-1;w>=0&&(m=A[w],!(A[w].level=0;e--)"inline"===t.tokens[e].type&&a.test(t.tokens[e].content)&&l(t.tokens[e].children,t)}},function(t,e,n){"use strict";var r=n(38);function o(t,e,n){this.src=t,this.env=n,this.tokens=[],this.inlineMode=!1,this.md=e}o.prototype.Token=r,t.exports=o},function(t,e,n){"use strict";var r=n(37),o=[["table",n(123),["paragraph","reference"]],["code",n(124)],["fence",n(125),["paragraph","reference","blockquote","list"]],["blockquote",n(126),["paragraph","reference","blockquote","list"]],["hr",n(127),["paragraph","reference","blockquote","list"]],["list",n(128),["paragraph","reference","blockquote"]],["reference",n(129)],["heading",n(130),["paragraph","reference","blockquote"]],["lheading",n(131)],["html_block",n(132),["paragraph","reference","blockquote"]],["paragraph",n(134)]];function i(){this.ruler=new r;for(var t=0;t=n))&&!(t.sCount[a]=c){t.line=n;break}for(r=0;rn)return!1;if(f=e+1,t.sCount[f]=4)return!1;if((u=t.bMarks[f]+t.tShift[f])>=t.eMarks[f])return!1;if(124!==(s=t.src.charCodeAt(u++))&&45!==s&&58!==s)return!1;for(;u=4)return!1;if((d=(p=i(c.replace(/^\||\|$/g,""))).length)>m.length)return!1;if(a)return!0;for((h=t.push("table_open","table",1)).map=v=[e,0],(h=t.push("thead_open","thead",1)).map=[e,e+1],(h=t.push("tr_open","tr",1)).map=[e,e+1],l=0;l=4);f++){for(p=i(c.replace(/^\||\|$/g,"")),h=t.push("tr_open","tr",1),l=0;l=4))break;o=++r}return t.line=o,(i=t.push("code_block","code",0)).content=t.getLines(e,o,4+t.blkIndent,!0),i.map=[e,t.line],!0}},function(t,e,n){"use strict";t.exports=function(t,e,n,r){var o,i,a,s,c,u,l,f=!1,p=t.bMarks[e]+t.tShift[e],d=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4)return!1;if(p+3>d)return!1;if(126!==(o=t.src.charCodeAt(p))&&96!==o)return!1;if(c=p,(i=(p=t.skipChars(p,o))-c)<3)return!1;if(l=t.src.slice(c,p),a=t.src.slice(p,d),96===o&&a.indexOf(String.fromCharCode(o))>=0)return!1;if(r)return!0;for(s=e;!(++s>=n)&&!((p=c=t.bMarks[s]+t.tShift[s])<(d=t.eMarks[s])&&t.sCount[s]=4||(p=t.skipChars(p,o))-c=4)return!1;if(62!==t.src.charCodeAt(A++))return!1;if(o)return!0;for(c=d=t.sCount[e]+A-(t.bMarks[e]+t.tShift[e]),32===t.src.charCodeAt(A)?(A++,c++,d++,i=!1,y=!0):9===t.src.charCodeAt(A)?(y=!0,(t.bsCount[e]+d)%4==3?(A++,c++,d++,i=!1):i=!0):y=!1,h=[t.bMarks[e]],t.bMarks[e]=A;A=T,b=[t.sCount[e]],t.sCount[e]=d-c,_=[t.tShift[e]],t.tShift[e]=A-t.bMarks[e],k=t.md.block.ruler.getRules("blockquote"),v=t.parentType,t.parentType="blockquote",w=!1,p=e+1;p=(T=t.eMarks[p])));p++)if(62!==t.src.charCodeAt(A++)||w){if(l)break;for(E=!1,s=0,u=k.length;s=T,m.push(t.bsCount[p]),t.bsCount[p]=t.sCount[p]+1+(y?1:0),b.push(t.sCount[p]),t.sCount[p]=d-c,_.push(t.tShift[p]),t.tShift[p]=A-t.bMarks[p]}for(g=t.blkIndent,t.blkIndent=0,(x=t.push("blockquote_open","blockquote",1)).markup=">",x.map=f=[e,0],t.md.block.tokenize(t,e,p),(x=t.push("blockquote_close","blockquote",-1)).markup=">",t.lineMax=C,t.parentType=v,f[1]=t.line,s=0;s<_.length;s++)t.bMarks[s+e]=h[s],t.tShift[s+e]=_[s],t.sCount[s+e]=b[s],t.bsCount[s+e]=m[s];return t.blkIndent=g,!0}},function(t,e,n){"use strict";var r=n(1).isSpace;t.exports=function(t,e,n,o){var i,a,s,c,u=t.bMarks[e]+t.tShift[e],l=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4)return!1;if(42!==(i=t.src.charCodeAt(u++))&&45!==i&&95!==i)return!1;for(a=1;u=a)return-1;if((n=t.src.charCodeAt(i++))<48||n>57)return-1;for(;;){if(i>=a)return-1;if(!((n=t.src.charCodeAt(i++))>=48&&n<=57)){if(41===n||46===n)break;return-1}if(i-o>=10)return-1}return i=4)return!1;if(t.listIndent>=0&&t.sCount[e]-t.listIndent>=4&&t.sCount[e]=t.blkIndent&&(D=!0),(S=i(t,e))>=0){if(p=!0,O=t.bMarks[e]+t.tShift[e],b=Number(t.src.substr(O,S-O-1)),D&&1!==b)return!1}else{if(!((S=o(t,e))>=0))return!1;p=!1}if(D&&t.skipSpaces(S)>=t.eMarks[e])return!1;if(v=t.src.charCodeAt(S-1),r)return!0;for(g=t.tokens.length,p?(I=t.push("ordered_list_open","ol",1),1!==b&&(I.attrs=[["start",b]])):I=t.push("bullet_list_open","ul",1),I.map=m=[e,0],I.markup=String.fromCharCode(v),y=e,R=!1,L=t.md.block.ruler.getRules("list"),x=t.parentType,t.parentType="list";y=_?1:E-f)>4&&(l=1),u=f+l,(I=t.push("list_item_open","li",1)).markup=String.fromCharCode(v),I.map=d=[e,0],A=t.tight,C=t.tShift[e],w=t.sCount[e],k=t.listIndent,t.listIndent=t.blkIndent,t.blkIndent=u,t.tight=!0,t.tShift[e]=s-t.bMarks[e],t.sCount[e]=E,s>=_&&t.isEmpty(e+1)?t.line=Math.min(t.line+2,n):t.md.block.tokenize(t,e,n,!0),t.tight&&!R||(M=!1),R=t.line-e>1&&t.isEmpty(t.line-1),t.blkIndent=t.listIndent,t.listIndent=k,t.tShift[e]=C,t.sCount[e]=w,t.tight=A,(I=t.push("list_item_close","li",-1)).markup=String.fromCharCode(v),y=e=t.line,d[1]=y,s=t.bMarks[e],y>=n)break;if(t.sCount[y]=4)break;for(N=!1,c=0,h=L.length;c=4)return!1;if(91!==t.src.charCodeAt(x))return!1;for(;++x3||t.sCount[C]<0)){for(_=!1,f=0,p=y.length;f=4)return!1;if(35!==(i=t.src.charCodeAt(u))||u>=l)return!1;for(a=1,i=t.src.charCodeAt(++u);35===i&&u6||uu&&r(t.src.charCodeAt(s-1))&&(l=s),t.line=e+1,(c=t.push("heading_open","h"+String(a),1)).markup="########".slice(0,a),c.map=[e,t.line],(c=t.push("inline","",0)).content=t.src.slice(u,l).trim(),c.map=[e,t.line],c.children=[],(c=t.push("heading_close","h"+String(a),-1)).markup="########".slice(0,a),!0))}},function(t,e,n){"use strict";t.exports=function(t,e,n){var r,o,i,a,s,c,u,l,f,p,d=e+1,h=t.md.block.ruler.getRules("paragraph");if(t.sCount[e]-t.blkIndent>=4)return!1;for(p=t.parentType,t.parentType="paragraph";d3)){if(t.sCount[d]>=t.blkIndent&&(c=t.bMarks[d]+t.tShift[d])<(u=t.eMarks[d])&&(45===(f=t.src.charCodeAt(c))||61===f)&&(c=t.skipChars(c,f),(c=t.skipSpaces(c))>=u)){l=61===f?1:2;break}if(!(t.sCount[d]<0)){for(o=!1,i=0,a=h.length;i|$))/i,/<\/(script|pre|style)>/i,!0],[/^/,!0],[/^<\?/,/\?>/,!0],[/^/,!0],[/^/,!0],[new RegExp("^|$))","i"),/^$/,!0],[new RegExp(o.source+"\\s*$"),/^$/,!1]];t.exports=function(t,e,n,r){var o,a,s,c,u=t.bMarks[e]+t.tShift[e],l=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4)return!1;if(!t.md.options.html)return!1;if(60!==t.src.charCodeAt(u))return!1;for(c=t.src.slice(u,l),o=0;o3||t.sCount[c]<0)){for(r=!1,o=0,i=u.length;o0&&this.level++,this.tokens.push(o),o},i.prototype.isEmpty=function(t){return this.bMarks[t]+this.tShift[t]>=this.eMarks[t]},i.prototype.skipEmptyLines=function(t){for(var e=this.lineMax;te;)if(!o(this.src.charCodeAt(--t)))return t+1;return t},i.prototype.skipChars=function(t,e){for(var n=this.src.length;tn;)if(e!==this.src.charCodeAt(--t))return t+1;return t},i.prototype.getLines=function(t,e,n,r){var i,a,s,c,u,l,f,p=t;if(t>=e)return"";for(l=new Array(e-t),i=0;pn?new Array(a-n+1).join(" ")+this.src.slice(c,u):this.src.slice(c,u)}return l.join("")},i.prototype.Token=r,t.exports=i},function(t,e,n){"use strict";var r=n(37),o=[["text",n(137)],["newline",n(138)],["escape",n(139)],["backticks",n(140)],["strikethrough",n(61).tokenize],["emphasis",n(62).tokenize],["link",n(141)],["image",n(142)],["autolink",n(143)],["html_inline",n(144)],["entity",n(145)]],i=[["balance_pairs",n(146)],["strikethrough",n(61).postProcess],["emphasis",n(62).postProcess],["text_collapse",n(147)]];function a(){var t;for(this.ruler=new r,t=0;t=i)break}else t.pending+=t.src[t.pos++]}t.pending&&t.pushPending()},a.prototype.parse=function(t,e,n,r){var o,i,a,s=new this.State(t,e,n,r);for(this.tokenize(s),a=(i=this.ruler2.getRules("")).length,o=0;o=0&&32===t.pending.charCodeAt(n)?n>=1&&32===t.pending.charCodeAt(n-1)?(t.pending=t.pending.replace(/ +$/,""),t.push("hardbreak","br",0)):(t.pending=t.pending.slice(0,-1),t.push("softbreak","br",0)):t.push("softbreak","br",0)),i++;i?@[]^_`{|}~-".split("").forEach((function(t){o[t.charCodeAt(0)]=1})),t.exports=function(t,e){var n,i=t.pos,a=t.posMax;if(92!==t.src.charCodeAt(i))return!1;if(++i=m)return!1;for(g=u,(l=t.md.helpers.parseLinkDestination(t.src,u,t.posMax)).ok&&(d=t.md.normalizeLink(l.str),t.md.validateLink(d)?u=l.pos:d=""),g=u;u=m||41!==t.src.charCodeAt(u))&&(v=!0),u++}if(v){if(void 0===t.env.references)return!1;if(u=0?a=t.src.slice(g,u++):u=s+1):u=s+1,a||(a=t.src.slice(c,s)),!(f=t.env.references[r(a)]))return t.pos=h,!1;d=f.href,p=f.title}return e||(t.pos=c,t.posMax=s,t.push("link_open","a",1).attrs=n=[["href",d]],p&&n.push(["title",p]),t.md.inline.tokenize(t),t.push("link_close","a",-1)),t.pos=u,t.posMax=m,!0}},function(t,e,n){"use strict";var r=n(1).normalizeReference,o=n(1).isSpace;t.exports=function(t,e){var n,i,a,s,c,u,l,f,p,d,h,m,g,v="",b=t.pos,_=t.posMax;if(33!==t.src.charCodeAt(t.pos))return!1;if(91!==t.src.charCodeAt(t.pos+1))return!1;if(u=t.pos+2,(c=t.md.helpers.parseLinkLabel(t,t.pos+1,!1))<0)return!1;if((l=c+1)<_&&40===t.src.charCodeAt(l)){for(l++;l<_&&(i=t.src.charCodeAt(l),o(i)||10===i);l++);if(l>=_)return!1;for(g=l,(p=t.md.helpers.parseLinkDestination(t.src,l,t.posMax)).ok&&(v=t.md.normalizeLink(p.str),t.md.validateLink(v)?l=p.pos:v=""),g=l;l<_&&(i=t.src.charCodeAt(l),o(i)||10===i);l++);if(p=t.md.helpers.parseLinkTitle(t.src,l,t.posMax),l<_&&g!==l&&p.ok)for(d=p.str,l=p.pos;l<_&&(i=t.src.charCodeAt(l),o(i)||10===i);l++);else d="";if(l>=_||41!==t.src.charCodeAt(l))return t.pos=b,!1;l++}else{if(void 0===t.env.references)return!1;if(l<_&&91===t.src.charCodeAt(l)?(g=l+1,(l=t.md.helpers.parseLinkLabel(t,l))>=0?s=t.src.slice(g,l++):l=c+1):l=c+1,s||(s=t.src.slice(u,c)),!(f=t.env.references[r(s)]))return t.pos=b,!1;v=f.href,d=f.title}return e||(a=t.src.slice(u,c),t.md.inline.parse(a,t.md,t.env,m=[]),(h=t.push("image","img",0)).attrs=n=[["src",v],["alt",""]],h.children=m,h.content=a,d&&n.push(["title",d])),t.pos=l,t.posMax=_,!0}},function(t,e,n){"use strict";var r=/^<([a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*)>/,o=/^<([a-zA-Z][a-zA-Z0-9+.\-]{1,31}):([^<>\x00-\x20]*)>/;t.exports=function(t,e){var n,i,a,s,c,u,l=t.pos;return 60===t.src.charCodeAt(l)&&(!((n=t.src.slice(l)).indexOf(">")<0)&&(o.test(n)?(s=(i=n.match(o))[0].slice(1,-1),c=t.md.normalizeLink(s),!!t.md.validateLink(c)&&(e||((u=t.push("link_open","a",1)).attrs=[["href",c]],u.markup="autolink",u.info="auto",(u=t.push("text","",0)).content=t.md.normalizeLinkText(s),(u=t.push("link_close","a",-1)).markup="autolink",u.info="auto"),t.pos+=i[0].length,!0)):!!r.test(n)&&(s=(a=n.match(r))[0].slice(1,-1),c=t.md.normalizeLink("mailto:"+s),!!t.md.validateLink(c)&&(e||((u=t.push("link_open","a",1)).attrs=[["href",c]],u.markup="autolink",u.info="auto",(u=t.push("text","",0)).content=t.md.normalizeLinkText(s),(u=t.push("link_close","a",-1)).markup="autolink",u.info="auto"),t.pos+=a[0].length,!0))))}},function(t,e,n){"use strict";var r=n(60).HTML_TAG_RE;t.exports=function(t,e){var n,o,i,a=t.pos;return!!t.md.options.html&&(i=t.posMax,!(60!==t.src.charCodeAt(a)||a+2>=i)&&(!(33!==(n=t.src.charCodeAt(a+1))&&63!==n&&47!==n&&!function(t){var e=32|t;return e>=97&&e<=122}(n))&&(!!(o=t.src.slice(a).match(r))&&(e||(t.push("html_inline","",0).content=t.src.slice(a,a+o[0].length)),t.pos+=o[0].length,!0))))}},function(t,e,n){"use strict";var r=n(55),o=n(1).has,i=n(1).isValidEntityCode,a=n(1).fromCodePoint,s=/^&#((?:x[a-f0-9]{1,6}|[0-9]{1,7}));/i,c=/^&([a-z][a-z0-9]{1,31});/i;t.exports=function(t,e){var n,u,l=t.pos,f=t.posMax;if(38!==t.src.charCodeAt(l))return!1;if(l+1=0;){if((o=i[n]).open&&o.marker===r.marker&&o.end<0&&o.level===r.level){var s=!1;if((o.close||r.open)&&void 0!==o.length&&void 0!==r.length&&(o.length+r.length)%3==0&&(o.length%3==0&&r.length%3==0||(s=!0)),!s){r.jump=e-n,r.open=!1,o.end=e,o.jump=0;break}}n-=o.jump+1}}},function(t,e,n){"use strict";t.exports=function(t){var e,n,r=0,o=t.tokens,i=t.tokens.length;for(e=n=0;e0&&r++,"text"===o[e].type&&e+10&&this.level++,this.pendingLevel=this.level,this.tokens.push(o),o},s.prototype.scanDelims=function(t,e){var n,r,s,c,u,l,f,p,d,h=t,m=!0,g=!0,v=this.posMax,b=this.src.charCodeAt(t);for(n=t>0?this.src.charCodeAt(t-1):32;h=3&&":"===t[e-3]?0:e>=3&&"/"===t[e-3]?0:r.match(n.re.no_http)[0].length:0}},"mailto:":{validate:function(t,e,n){var r=t.slice(e);return n.re.mailto||(n.re.mailto=new RegExp("^"+n.re.src_email_name+"@"+n.re.src_host_strict,"i")),n.re.mailto.test(r)?r.match(n.re.mailto)[0].length:0}}},u="a[cdefgilmnoqrstuwxz]|b[abdefghijmnorstvwyz]|c[acdfghiklmnoruvwxyz]|d[ejkmoz]|e[cegrstu]|f[ijkmor]|g[abdefghilmnpqrstuwy]|h[kmnrtu]|i[delmnoqrst]|j[emop]|k[eghimnprwyz]|l[abcikrstuvy]|m[acdeghklmnopqrstuvwxyz]|n[acefgilopruz]|om|p[aefghklmnrstwy]|qa|r[eosuw]|s[abcdeghijklmnortuvxyz]|t[cdfghjklmnortvwz]|u[agksyz]|v[aceginu]|w[fs]|y[et]|z[amw]",l="biz|com|edu|gov|net|org|pro|web|xxx|aero|asia|coop|info|museum|name|shop|рф".split("|");function f(t){var e=t.re=n(150)(t.__opts__),r=t.__tlds__.slice();function s(t){return t.replace("%TLDS%",e.src_tlds)}t.onCompile(),t.__tlds_replaced__||r.push(u),r.push(e.src_xn),e.src_tlds=r.join("|"),e.email_fuzzy=RegExp(s(e.tpl_email_fuzzy),"i"),e.link_fuzzy=RegExp(s(e.tpl_link_fuzzy),"i"),e.link_no_ip_fuzzy=RegExp(s(e.tpl_link_no_ip_fuzzy),"i"),e.host_fuzzy_test=RegExp(s(e.tpl_host_fuzzy_test),"i");var c=[];function l(t,e){throw new Error('(LinkifyIt) Invalid schema "'+t+'": '+e)}t.__compiled__={},Object.keys(t.__schemas__).forEach((function(e){var n=t.__schemas__[e];if(null!==n){var r={validate:null,link:null};if(t.__compiled__[e]=r,"[object Object]"===o(n))return!function(t){return"[object RegExp]"===o(t)}(n.validate)?i(n.validate)?r.validate=n.validate:l(e,n):r.validate=function(t){return function(e,n){var r=e.slice(n);return t.test(r)?r.match(t)[0].length:0}}(n.validate),void(i(n.normalize)?r.normalize=n.normalize:n.normalize?l(e,n):r.normalize=function(t,e){e.normalize(t)});!function(t){return"[object String]"===o(t)}(n)?l(e,n):c.push(e)}})),c.forEach((function(e){t.__compiled__[t.__schemas__[e]]&&(t.__compiled__[e].validate=t.__compiled__[t.__schemas__[e]].validate,t.__compiled__[e].normalize=t.__compiled__[t.__schemas__[e]].normalize)})),t.__compiled__[""]={validate:null,normalize:function(t,e){e.normalize(t)}};var f=Object.keys(t.__compiled__).filter((function(e){return e.length>0&&t.__compiled__[e]})).map(a).join("|");t.re.schema_test=RegExp("(^|(?!_)(?:[><|]|"+e.src_ZPCc+"))("+f+")","i"),t.re.schema_search=RegExp("(^|(?!_)(?:[><|]|"+e.src_ZPCc+"))("+f+")","ig"),t.re.pretest=RegExp("("+t.re.schema_test.source+")|("+t.re.host_fuzzy_test.source+")|@","i"),function(t){t.__index__=-1,t.__text_cache__=""}(t)}function p(t,e){var n=t.__index__,r=t.__last_index__,o=t.__text_cache__.slice(n,r);this.schema=t.__schema__.toLowerCase(),this.index=n+e,this.lastIndex=r+e,this.raw=o,this.text=o,this.url=o}function d(t,e){var n=new p(t,e);return t.__compiled__[n.schema].normalize(n,t),n}function h(t,e){if(!(this instanceof h))return new h(t,e);var n;e||(n=t,Object.keys(n||{}).reduce((function(t,e){return t||s.hasOwnProperty(e)}),!1)&&(e=t,t={})),this.__opts__=r({},s,e),this.__index__=-1,this.__last_index__=-1,this.__schema__="",this.__text_cache__="",this.__schemas__=r({},c,t),this.__compiled__={},this.__tlds__=l,this.__tlds_replaced__=!1,this.re={},f(this)}h.prototype.add=function(t,e){return this.__schemas__[t]=e,f(this),this},h.prototype.set=function(t){return this.__opts__=r(this.__opts__,t),this},h.prototype.test=function(t){if(this.__text_cache__=t,this.__index__=-1,!t.length)return!1;var e,n,r,o,i,a,s,c;if(this.re.schema_test.test(t))for((s=this.re.schema_search).lastIndex=0;null!==(e=s.exec(t));)if(o=this.testSchemaAt(t,e[2],s.lastIndex)){this.__schema__=e[2],this.__index__=e.index+e[1].length,this.__last_index__=e.index+e[0].length+o;break}return this.__opts__.fuzzyLink&&this.__compiled__["http:"]&&(c=t.search(this.re.host_fuzzy_test))>=0&&(this.__index__<0||c=0&&null!==(r=t.match(this.re.email_fuzzy))&&(i=r.index+r[1].length,a=r.index+r[0].length,(this.__index__<0||ithis.__last_index__)&&(this.__schema__="mailto:",this.__index__=i,this.__last_index__=a)),this.__index__>=0},h.prototype.pretest=function(t){return this.re.pretest.test(t)},h.prototype.testSchemaAt=function(t,e,n){return this.__compiled__[e.toLowerCase()]?this.__compiled__[e.toLowerCase()].validate(t,n,this):0},h.prototype.match=function(t){var e=0,n=[];this.__index__>=0&&this.__text_cache__===t&&(n.push(d(this,e)),e=this.__last_index__);for(var r=e?t.slice(e):t;this.test(r);)n.push(d(this,e)),r=r.slice(this.__last_index__),e+=this.__last_index__;return n.length?n:null},h.prototype.tlds=function(t,e){return t=Array.isArray(t)?t:[t],e?(this.__tlds__=this.__tlds__.concat(t).sort().filter((function(t,e,n){return t!==n[e-1]})).reverse(),f(this),this):(this.__tlds__=t.slice(),this.__tlds_replaced__=!0,f(this),this)},h.prototype.normalize=function(t){t.schema||(t.url="http://"+t.url),"mailto:"!==t.schema||/^mailto:/i.test(t.url)||(t.url="mailto:"+t.url)},h.prototype.onCompile=function(){},t.exports=h},function(t,e,n){"use strict";t.exports=function(t){var e={};e.src_Any=n(57).source,e.src_Cc=n(58).source,e.src_Z=n(59).source,e.src_P=n(36).source,e.src_ZPCc=[e.src_Z,e.src_P,e.src_Cc].join("|"),e.src_ZCc=[e.src_Z,e.src_Cc].join("|");return e.src_pseudo_letter="(?:(?![><|]|"+e.src_ZPCc+")"+e.src_Any+")",e.src_ip4="(?:(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)",e.src_auth="(?:(?:(?!"+e.src_ZCc+"|[@/\\[\\]()]).)+@)?",e.src_port="(?::(?:6(?:[0-4]\\d{3}|5(?:[0-4]\\d{2}|5(?:[0-2]\\d|3[0-5])))|[1-5]?\\d{1,4}))?",e.src_host_terminator="(?=$|[><|]|"+e.src_ZPCc+")(?!-|_|:\\d|\\.-|\\.(?!$|"+e.src_ZPCc+"))",e.src_path="(?:[/?#](?:(?!"+e.src_ZCc+"|[><|]|[()[\\]{}.,\"'?!\\-]).|\\[(?:(?!"+e.src_ZCc+"|\\]).)*\\]|\\((?:(?!"+e.src_ZCc+"|[)]).)*\\)|\\{(?:(?!"+e.src_ZCc+'|[}]).)*\\}|\\"(?:(?!'+e.src_ZCc+'|["]).)+\\"|\\\'(?:(?!'+e.src_ZCc+"|[']).)+\\'|\\'(?="+e.src_pseudo_letter+"|[-]).|\\.{2,4}[a-zA-Z0-9%/]|\\.(?!"+e.src_ZCc+"|[.]).|"+(t&&t["---"]?"\\-(?!--(?:[^-]|$))(?:-*)|":"\\-+|")+"\\,(?!"+e.src_ZCc+").|\\!(?!"+e.src_ZCc+"|[!]).|\\?(?!"+e.src_ZCc+"|[?]).)+|\\/)?",e.src_email_name='[\\-;:&=\\+\\$,\\.a-zA-Z0-9_][\\-;:&=\\+\\$,\\"\\.a-zA-Z0-9_]*',e.src_xn="xn--[a-z0-9\\-]{1,59}",e.src_domain_root="(?:"+e.src_xn+"|"+e.src_pseudo_letter+"{1,63})",e.src_domain="(?:"+e.src_xn+"|(?:"+e.src_pseudo_letter+")|(?:"+e.src_pseudo_letter+"(?:-|"+e.src_pseudo_letter+"){0,61}"+e.src_pseudo_letter+"))",e.src_host="(?:(?:(?:(?:"+e.src_domain+")\\.)*"+e.src_domain+"))",e.tpl_host_fuzzy="(?:"+e.src_ip4+"|(?:(?:(?:"+e.src_domain+")\\.)+(?:%TLDS%)))",e.tpl_host_no_ip_fuzzy="(?:(?:(?:"+e.src_domain+")\\.)+(?:%TLDS%))",e.src_host_strict=e.src_host+e.src_host_terminator,e.tpl_host_fuzzy_strict=e.tpl_host_fuzzy+e.src_host_terminator,e.src_host_port_strict=e.src_host+e.src_port+e.src_host_terminator,e.tpl_host_port_fuzzy_strict=e.tpl_host_fuzzy+e.src_port+e.src_host_terminator,e.tpl_host_port_no_ip_fuzzy_strict=e.tpl_host_no_ip_fuzzy+e.src_port+e.src_host_terminator,e.tpl_host_fuzzy_test="localhost|www\\.|\\.\\d{1,3}\\.|(?:\\.(?:%TLDS%)(?:"+e.src_ZPCc+"|>|$))",e.tpl_email_fuzzy='(^|[><|]|"|\\(|'+e.src_ZCc+")("+e.src_email_name+"@"+e.tpl_host_fuzzy_strict+")",e.tpl_link_fuzzy="(^|(?![.:/\\-_@])(?:[$+<=>^`||]|"+e.src_ZPCc+"))((?![$+<=>^`||])"+e.tpl_host_port_fuzzy_strict+e.src_path+")",e.tpl_link_no_ip_fuzzy="(^|(?![.:/\\-_@])(?:[$+<=>^`||]|"+e.src_ZPCc+"))((?![$+<=>^`||])"+e.tpl_host_port_no_ip_fuzzy_strict+e.src_path+")",e}},function(t,e,n){"use strict";t.exports={options:{html:!1,xhtmlOut:!1,breaks:!1,langPrefix:"language-",linkify:!1,typographer:!1,quotes:"“”‘’",highlight:null,maxNesting:100},components:{core:{},block:{},inline:{}}}},function(t,e,n){"use strict";t.exports={options:{html:!1,xhtmlOut:!1,breaks:!1,langPrefix:"language-",linkify:!1,typographer:!1,quotes:"“”‘’",highlight:null,maxNesting:20},components:{core:{rules:["normalize","block","inline"]},block:{rules:["paragraph"]},inline:{rules:["text"],rules2:["balance_pairs","text_collapse"]}}}},function(t,e,n){"use strict";t.exports={options:{html:!0,xhtmlOut:!0,breaks:!1,langPrefix:"language-",linkify:!1,typographer:!1,quotes:"“”‘’",highlight:null,maxNesting:20},components:{core:{rules:["normalize","block","inline"]},block:{rules:["blockquote","code","fence","heading","hr","html_block","lheading","list","reference","paragraph"]},inline:{rules:["autolink","backticks","emphasis","entity","escape","html_inline","image","link","newline","text"],rules2:["balance_pairs","emphasis","text_collapse"]}}}},function(t,e,n){(function(t){var r=void 0!==t&&t||"undefined"!=typeof self&&self||window,o=Function.prototype.apply;function i(t,e){this._id=t,this._clearFn=e}e.setTimeout=function(){return new i(o.call(setTimeout,r,arguments),clearTimeout)},e.setInterval=function(){return new i(o.call(setInterval,r,arguments),clearInterval)},e.clearTimeout=e.clearInterval=function(t){t&&t.close()},i.prototype.unref=i.prototype.ref=function(){},i.prototype.close=function(){this._clearFn.call(r,this._id)},e.enroll=function(t,e){clearTimeout(t._idleTimeoutId),t._idleTimeout=e},e.unenroll=function(t){clearTimeout(t._idleTimeoutId),t._idleTimeout=-1},e._unrefActive=e.active=function(t){clearTimeout(t._idleTimeoutId);var e=t._idleTimeout;e>=0&&(t._idleTimeoutId=setTimeout((function(){t._onTimeout&&t._onTimeout()}),e))},n(155),e.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==t&&t.setImmediate||this&&this.setImmediate,e.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==t&&t.clearImmediate||this&&this.clearImmediate}).call(this,n(11))},function(t,e,n){(function(t,e){!function(t,n){"use strict";if(!t.setImmediate){var r,o,i,a,s,c=1,u={},l=!1,f=t.document,p=Object.getPrototypeOf&&Object.getPrototypeOf(t);p=p&&p.setTimeout?p:t,"[object process]"==={}.toString.call(t.process)?r=function(t){e.nextTick((function(){h(t)}))}:!function(){if(t.postMessage&&!t.importScripts){var e=!0,n=t.onmessage;return t.onmessage=function(){e=!1},t.postMessage("","*"),t.onmessage=n,e}}()?t.MessageChannel?((i=new MessageChannel).port1.onmessage=function(t){h(t.data)},r=function(t){i.port2.postMessage(t)}):f&&"onreadystatechange"in f.createElement("script")?(o=f.documentElement,r=function(t){var e=f.createElement("script");e.onreadystatechange=function(){h(t),e.onreadystatechange=null,o.removeChild(e),e=null},o.appendChild(e)}):r=function(t){setTimeout(h,0,t)}:(a="setImmediate$"+Math.random()+"$",s=function(e){e.source===t&&"string"==typeof e.data&&0===e.data.indexOf(a)&&h(+e.data.slice(a.length))},t.addEventListener?t.addEventListener("message",s,!1):t.attachEvent("onmessage",s),r=function(e){t.postMessage(a+e,"*")}),p.setImmediate=function(t){"function"!=typeof t&&(t=new Function(""+t));for(var e=new Array(arguments.length-1),n=0;n1)for(var n=1;n1&&void 0!==arguments[1]&&arguments[1];if("string"!=typeof t||!t.trim())throw new Error("Invalid url.");return e&&("object"!==(void 0===e?"undefined":r(e))&&(e={stripFragment:!1}),t=i(t,e)),o(t)}},function(t,e,n){"use strict";var r=n(64),o=n(65),i=n(66);t.exports=function(t){t=(t||"").trim();var e={protocols:r(t),protocol:null,port:null,resource:"",user:"",pathname:"",hash:"",search:"",href:t,query:Object.create(null)},n=t.indexOf("://"),a=null,s=null;t.startsWith(".")&&(t.startsWith("./")&&(t=t.substring(2)),e.pathname=t,e.protocol="file");var c=t.charAt(1);return e.protocol||(e.protocol=e.protocols[0],e.protocol||(o(t)?e.protocol="ssh":"/"===c||"~"===c?(t=t.substring(2),e.protocol="file"):e.protocol="file")),-1!==n&&(t=t.substring(n+3)),s=t.split("/"),"file"!==e.protocol?e.resource=s.shift():e.resource="",2===(a=e.resource.split("@")).length&&(e.user=a[0],e.resource=a[1]),2===(a=e.resource.split(":")).length&&(e.resource=a[0],a[1]?(e.port=Number(a[1]),isNaN(e.port)&&(e.port=null,s.unshift(a[1]))):e.port=null),s=s.filter(Boolean),"file"===e.protocol?e.pathname=e.href:e.pathname=e.pathname||("file"!==e.protocol||"/"===e.href[0]?"/":"")+s.join("/"),2===(a=e.pathname.split("#")).length&&(e.pathname=a[0],e.hash=a[1]),2===(a=e.pathname.split("?")).length&&(e.pathname=a[0],e.search=a[1]),e.query=i.parse(e.search),e.href=e.href.replace(/\/$/,""),e.pathname=e.pathname.replace(/\/$/,""),e}},function(t,e,n){"use strict";function r(t,e){return Object.prototype.hasOwnProperty.call(t,e)}t.exports=function(t,e,n,i){e=e||"&",n=n||"=";var a={};if("string"!=typeof t||0===t.length)return a;var s=/\+/g;t=t.split(e);var c=1e3;i&&"number"==typeof i.maxKeys&&(c=i.maxKeys);var u=t.length;c>0&&u>c&&(u=c);for(var l=0;l=0?(f=m.substr(0,g),p=m.substr(g+1)):(f=m,p=""),d=decodeURIComponent(f),h=decodeURIComponent(p),r(a,d)?o(a[d])?a[d].push(h):a[d]=[a[d],h]:a[d]=h}return a};var o=Array.isArray||function(t){return"[object Array]"===Object.prototype.toString.call(t)}},function(t,e,n){"use strict";var r=function(t){switch(typeof t){case"string":return t;case"boolean":return t?"true":"false";case"number":return isFinite(t)?t:"";default:return""}};t.exports=function(t,e,n,s){return e=e||"&",n=n||"=",null===t&&(t=void 0),"object"==typeof t?i(a(t),(function(a){var s=encodeURIComponent(r(a))+n;return o(t[a])?i(t[a],(function(t){return s+encodeURIComponent(r(t))})).join(e):s+encodeURIComponent(r(t[a]))})).join(e):s?encodeURIComponent(r(s))+n+encodeURIComponent(r(t)):""};var o=Array.isArray||function(t){return"[object Array]"===Object.prototype.toString.call(t)};function i(t,e){if(t.map)return t.map(e);for(var n=[],r=0;re.some(e=>e instanceof RegExp?e.test(t):e===t);t.exports=(t,e)=>{e=Object.assign({defaultProtocol:"http:",normalizeProtocol:!0,forceHttp:!1,forceHttps:!1,stripHash:!0,stripWWW:!0,removeQueryParameters:[/^utm_\w+/i],removeTrailingSlash:!0,removeDirectoryIndex:!1,sortQueryParameters:!0},e),Reflect.has(e,"normalizeHttps")&&(e.forceHttp=e.normalizeHttps),Reflect.has(e,"normalizeHttp")&&(e.forceHttps=e.normalizeHttp),Reflect.has(e,"stripFragment")&&(e.stripHash=e.stripFragment);const n=(t=t.trim()).startsWith("//");!n&&/^\.*\//.test(t)||(t=t.replace(/^(?!(?:\w+:)?\/\/)|^\/\//,e.defaultProtocol));const i=new r(t);if(e.forceHttp&&e.forceHttps)throw new Error("The `forceHttp` and `forceHttps` options cannot be used together");if(e.forceHttp&&"https:"===i.protocol&&(i.protocol="http:"),e.forceHttps&&"http:"===i.protocol&&(i.protocol="https:"),e.stripHash&&(i.hash=""),i.pathname&&(i.pathname=i.pathname.replace(/((?![https?:]).)\/{2,}/g,(t,e)=>/^(?!\/)/g.test(e)?`${e}/`:"/")),i.pathname&&(i.pathname=decodeURI(i.pathname)),!0===e.removeDirectoryIndex&&(e.removeDirectoryIndex=[/^index\.[a-z]+$/]),Array.isArray(e.removeDirectoryIndex)&&e.removeDirectoryIndex.length>0){let t=i.pathname.split("/");const n=t[t.length-1];o(n,e.removeDirectoryIndex)&&(t=t.slice(0,t.length-1),i.pathname=t.slice(1).join("/")+"/")}if(i.hostname&&(i.hostname=i.hostname.replace(/\.$/,""),e.stripWWW&&/^www\.([a-z\-\d]{2,63})\.([a-z\.]{2,5})$/.test(i.hostname)&&(i.hostname=i.hostname.replace(/^www\./,""))),Array.isArray(e.removeQueryParameters))for(const t of[...i.searchParams.keys()])o(t,e.removeQueryParameters)&&i.searchParams.delete(t);return e.sortQueryParameters&&i.searchParams.sort(),t=i.toString(),(e.removeTrailingSlash||"/"===i.pathname)&&(t=t.replace(/\/$/,"")),n&&!e.normalizeProtocol&&(t=t.replace(/^http:\/\//,"//")),t}},function(t,e,n){"use strict";var r=n(63),o=n(170);function i(){this.protocol=null,this.slashes=null,this.auth=null,this.host=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.query=null,this.pathname=null,this.path=null,this.href=null}e.parse=_,e.resolve=function(t,e){return _(t,!1,!0).resolve(e)},e.resolveObject=function(t,e){return t?_(t,!1,!0).resolveObject(e):e},e.format=function(t){o.isString(t)&&(t=_(t));return t instanceof i?t.format():i.prototype.format.call(t)},e.Url=i;var a=/^([a-z0-9.+-]+:)/i,s=/:[0-9]*$/,c=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,u=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r","\n","\t"]),l=["'"].concat(u),f=["%","/","?",";","#"].concat(l),p=["/","?","#"],d=/^[+a-z0-9A-Z_-]{0,63}$/,h=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,m={javascript:!0,"javascript:":!0},g={javascript:!0,"javascript:":!0},v={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},b=n(66);function _(t,e,n){if(t&&o.isObject(t)&&t instanceof i)return t;var r=new i;return r.parse(t,e,n),r}i.prototype.parse=function(t,e,n){if(!o.isString(t))throw new TypeError("Parameter 'url' must be a string, not "+typeof t);var i=t.indexOf("?"),s=-1!==i&&i127?I+="x":I+=L[D];if(!I.match(d)){var P=O.slice(0,T),j=O.slice(T+1),U=L.match(h);U&&(P.push(U[1]),j.unshift(U[2])),j.length&&(_="/"+j.join(".")+_),this.hostname=P.join(".");break}}}this.hostname.length>255?this.hostname="":this.hostname=this.hostname.toLowerCase(),R||(this.hostname=r.toASCII(this.hostname));var F=this.port?":"+this.port:"",$=this.hostname||"";this.host=$+F,this.href+=this.host,R&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),"/"!==_[0]&&(_="/"+_))}if(!m[k])for(T=0,N=l.length;T0)&&n.host.split("@"))&&(n.auth=R.shift(),n.host=n.hostname=R.shift());return n.search=t.search,n.query=t.query,o.isNull(n.pathname)&&o.isNull(n.search)||(n.path=(n.pathname?n.pathname:"")+(n.search?n.search:"")),n.href=n.format(),n}if(!x.length)return n.pathname=null,n.search?n.path="/"+n.search:n.path=null,n.href=n.format(),n;for(var C=x.slice(-1)[0],A=(n.host||t.host||x.length>1)&&("."===C||".."===C)||""===C,T=0,S=x.length;S>=0;S--)"."===(C=x[S])?x.splice(S,1):".."===C?(x.splice(S,1),T++):T&&(x.splice(S,1),T--);if(!E&&!k)for(;T--;T)x.unshift("..");!E||""===x[0]||x[0]&&"/"===x[0].charAt(0)||x.unshift(""),A&&"/"!==x.join("/").substr(-1)&&x.push("");var R,O=""===x[0]||x[0]&&"/"===x[0].charAt(0);w&&(n.hostname=n.host=O?"":x.length?x.shift():"",(R=!!(n.host&&n.host.indexOf("@")>0)&&n.host.split("@"))&&(n.auth=R.shift(),n.host=n.hostname=R.shift()));return(E=E||n.host&&x.length)&&!O&&x.unshift(""),x.length?n.pathname=x.join("/"):(n.pathname=null,n.path=null),o.isNull(n.pathname)&&o.isNull(n.search)||(n.path=(n.pathname?n.pathname:"")+(n.search?n.search:"")),n.auth=t.auth||n.auth,n.slashes=n.slashes||t.slashes,n.href=n.format(),n},i.prototype.parseHost=function(){var t=this.host,e=s.exec(t);e&&(":"!==(e=e[0])&&(this.port=e.substr(1)),t=t.substr(0,t.length-e.length)),t&&(this.hostname=t)}},function(t,e,n){"use strict";t.exports={isString:function(t){return"string"==typeof t},isObject:function(t){return"object"==typeof t&&null!==t},isNull:function(t){return null===t},isNullOrUndefined:function(t){return null==t}}},function(t,e,n){var r=n(67),o=n(68),i=n(69),a=n(16);t.exports=function(t){return function(e){e=a(e);var n=o(e)?i(e):void 0,s=n?n[0]:e.charAt(0),c=n?r(n,1).join(""):e.slice(1);return s[t]()+c}}},function(t,e){t.exports=function(t,e,n){var r=-1,o=t.length;e<0&&(e=-e>o?0:o+e),(n=n>o?o:n)<0&&(n+=o),o=e>n?0:n-e>>>0,e>>>=0;for(var i=Array(o);++r-1;);return n}},function(t,e){t.exports=function(t,e,n,r){for(var o=t.length,i=n+(r?1:-1);r?i--:++i0;){if("top-level"!==this.indentTypes.pop())break}},t}();e.default=a,t.exports=e.default},function(t,e,n){var r=n(187),o=n(188),i=n(189),a=n(16);t.exports=function(t,e,n){return e=(n?o(t,e,n):void 0===e)?1:i(e),r(a(t),e)}},function(t,e){var n=9007199254740991,r=Math.floor;t.exports=function(t,e){var o="";if(!t||e<1||e>n)return o;do{e%2&&(o+=t),(e=r(e/2))&&(t+=t)}while(e);return o}},function(t,e,n){var r=n(40),o=n(41),i=n(43),a=n(19);t.exports=function(t,e,n){if(!a(n))return!1;var s=typeof e;return!!("number"==s?o(n)&&i(e,n.length):"string"==s&&e in n)&&r(n[e],t)}},function(t,e,n){var r=n(190);t.exports=function(t){var e=r(t),n=e%1;return e==e?n?e-n:e:0}},function(t,e,n){var r=n(191),o=1/0,i=17976931348623157e292;t.exports=function(t){return t?(t=r(t))===o||t===-o?(t<0?-1:1)*i:t==t?t:0:0===t?t:0}},function(t,e,n){var r=n(19),o=n(23),i=NaN,a=/^\s+|\s+$/g,s=/^[-+]0x[0-9a-f]+$/i,c=/^0b[01]+$/i,u=/^0o[0-7]+$/i,l=parseInt;t.exports=function(t){if("number"==typeof t)return t;if(o(t))return i;if(r(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=r(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(a,"");var n=c.test(t);return n||u.test(t)?l(t.slice(2),n?2:8):s.test(t)?i:+t}},function(t,e){t.exports=function(t){var e=null==t?0:t.length;return e?t[e-1]:void 0}},function(t,e,n){"use strict";e.__esModule=!0;var r,o=n(39),i=(r=o)&&r.__esModule?r:{default:r};var a=function(){function t(){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.level=0}return t.prototype.beginIfPossible=function(t,e){0===this.level&&this.isInlineBlock(t,e)?this.level=1:this.level>0?this.level++:this.level=0},t.prototype.end=function(){this.level--},t.prototype.isActive=function(){return this.level>0},t.prototype.isInlineBlock=function(t,e){for(var n=0,r=0,o=e;o50)return!1;if(a.type===i.default.OPEN_PAREN)r++;else if(a.type===i.default.CLOSE_PAREN&&0===--r)return!0;if(this.isForbiddenToken(a))return!1}return!1},t.prototype.isForbiddenToken=function(t){var e=t.type,n=t.value;return e===i.default.RESERVED_TOPLEVEL||e===i.default.RESERVED_NEWLINE||e===i.default.COMMENT||e===i.default.BLOCK_COMMENT||";"===n},t}();e.default=a,t.exports=e.default},function(t,e,n){"use strict";e.__esModule=!0;var r=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.params=e,this.index=0}return t.prototype.get=function(t){var e=t.key,n=t.value;return this.params?e?this.params[e]:this.params[this.index++]:n},t}();e.default=r,t.exports=e.default},function(t,e,n){var r=n(74),o=n(76),i=n(45),a=n(9),s=n(41),c=n(46),u=n(75),l=n(47),f="[object Map]",p="[object Set]",d=Object.prototype.hasOwnProperty;t.exports=function(t){if(null==t)return!0;if(s(t)&&(a(t)||"string"==typeof t||"function"==typeof t.splice||c(t)||l(t)||i(t)))return!t.length;var e=o(t);if(e==f||e==p)return!t.size;if(u(t))return!r(t).length;for(var n in t)if(d.call(t,n))return!1;return!0}},function(t,e,n){var r=n(197)(Object.keys,Object);t.exports=r},function(t,e){t.exports=function(t,e){return function(n){return t(e(n))}}},function(t,e,n){var r=n(12)(n(8),"DataView");t.exports=r},function(t,e,n){var r=n(73),o=n(200),i=n(19),a=n(77),s=/^\[object .+?Constructor\]$/,c=Function.prototype,u=Object.prototype,l=c.toString,f=u.hasOwnProperty,p=RegExp("^"+l.call(f).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");t.exports=function(t){return!(!i(t)||o(t))&&(r(t)?p:s).test(a(t))}},function(t,e,n){var r,o=n(201),i=(r=/[^.]+$/.exec(o&&o.keys&&o.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"";t.exports=function(t){return!!i&&i in t}},function(t,e,n){var r=n(8)["__core-js_shared__"];t.exports=r},function(t,e){t.exports=function(t,e){return null==t?void 0:t[e]}},function(t,e,n){var r=n(12)(n(8),"Promise");t.exports=r},function(t,e,n){var r=n(12)(n(8),"WeakMap");t.exports=r},function(t,e,n){var r=n(17),o=n(18),i="[object Arguments]";t.exports=function(t){return o(t)&&r(t)==i}},function(t,e){t.exports=function(){return!1}},function(t,e,n){var r=n(17),o=n(42),i=n(18),a={};a["[object Float32Array]"]=a["[object Float64Array]"]=a["[object Int8Array]"]=a["[object Int16Array]"]=a["[object Int32Array]"]=a["[object Uint8Array]"]=a["[object Uint8ClampedArray]"]=a["[object Uint16Array]"]=a["[object Uint32Array]"]=!0,a["[object Arguments]"]=a["[object Array]"]=a["[object ArrayBuffer]"]=a["[object Boolean]"]=a["[object DataView]"]=a["[object Date]"]=a["[object Error]"]=a["[object Function]"]=a["[object Map]"]=a["[object Number]"]=a["[object Object]"]=a["[object RegExp]"]=a["[object Set]"]=a["[object String]"]=a["[object WeakMap]"]=!1,t.exports=function(t){return i(t)&&o(t.length)&&!!a[r(t)]}},function(t,e){t.exports=function(t){return function(e){return t(e)}}},function(t,e,n){(function(t){var r=n(71),o=e&&!e.nodeType&&e,i=o&&"object"==typeof t&&t&&!t.nodeType&&t,a=i&&i.exports===o&&r.process,s=function(){try{var t=i&&i.require&&i.require("util").types;return t||a&&a.binding&&a.binding("util")}catch(t){}}();t.exports=s}).call(this,n(21)(t))},function(t,e,n){var r=n(16),o=/[\\^$.*+?()[\]{}|]/g,i=RegExp(o.source);t.exports=function(t){return(t=r(t))&&i.test(t)?t.replace(o,"\\$&"):t}},function(t,e,n){"use strict";e.__esModule=!0;var r=i(n(24)),o=i(n(25));function i(t){return t&&t.__esModule?t:{default:t}}var a=["ALL","ALTER","ANALYZE","AND","ANY","ARRAY","AS","ASC","BEGIN","BETWEEN","BINARY","BOOLEAN","BREAK","BUCKET","BUILD","BY","CALL","CASE","CAST","CLUSTER","COLLATE","COLLECTION","COMMIT","CONNECT","CONTINUE","CORRELATE","COVER","CREATE","DATABASE","DATASET","DATASTORE","DECLARE","DECREMENT","DELETE","DERIVED","DESC","DESCRIBE","DISTINCT","DO","DROP","EACH","ELEMENT","ELSE","END","EVERY","EXCEPT","EXCLUDE","EXECUTE","EXISTS","EXPLAIN","FALSE","FETCH","FIRST","FLATTEN","FOR","FORCE","FROM","FUNCTION","GRANT","GROUP","GSI","HAVING","IF","IGNORE","ILIKE","IN","INCLUDE","INCREMENT","INDEX","INFER","INLINE","INNER","INSERT","INTERSECT","INTO","IS","JOIN","KEY","KEYS","KEYSPACE","KNOWN","LAST","LEFT","LET","LETTING","LIKE","LIMIT","LSM","MAP","MAPPING","MATCHED","MATERIALIZED","MERGE","MINUS","MISSING","NAMESPACE","NEST","NOT","NULL","NUMBER","OBJECT","OFFSET","ON","OPTION","OR","ORDER","OUTER","OVER","PARSE","PARTITION","PASSWORD","PATH","POOL","PREPARE","PRIMARY","PRIVATE","PRIVILEGE","PROCEDURE","PUBLIC","RAW","REALM","REDUCE","RENAME","RETURN","RETURNING","REVOKE","RIGHT","ROLE","ROLLBACK","SATISFIES","SCHEMA","SELECT","SELF","SEMI","SET","SHOW","SOME","START","STATISTICS","STRING","SYSTEM","THEN","TO","TRANSACTION","TRIGGER","TRUE","TRUNCATE","UNDER","UNION","UNIQUE","UNKNOWN","UNNEST","UNSET","UPDATE","UPSERT","USE","USER","USING","VALIDATE","VALUE","VALUED","VALUES","VIA","VIEW","WHEN","WHERE","WHILE","WITH","WITHIN","WORK","XOR"],s=["DELETE FROM","EXCEPT ALL","EXCEPT","EXPLAIN DELETE FROM","EXPLAIN UPDATE","EXPLAIN UPSERT","FROM","GROUP BY","HAVING","INFER","INSERT INTO","INTERSECT ALL","INTERSECT","LET","LIMIT","MERGE","NEST","ORDER BY","PREPARE","SELECT","SET CURRENT SCHEMA","SET SCHEMA","SET","UNION ALL","UNION","UNNEST","UPDATE","UPSERT","USE KEYS","VALUES","WHERE"],c=["AND","INNER JOIN","JOIN","LEFT JOIN","LEFT OUTER JOIN","OR","OUTER JOIN","RIGHT JOIN","RIGHT OUTER JOIN","XOR"],u=void 0,l=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.cfg=e}return t.prototype.format=function(t){return u||(u=new o.default({reservedWords:a,reservedToplevelWords:s,reservedNewlineWords:c,stringTypes:['""',"''","``"],openParens:["(","[","{"],closeParens:[")","]","}"],namedPlaceholderTypes:["$"],lineCommentTypes:["#","--"]})),new r.default(this.cfg,u).format(t)},t}();e.default=l,t.exports=e.default},function(t,e,n){"use strict";e.__esModule=!0;var r=i(n(24)),o=i(n(25));function i(t){return t&&t.__esModule?t:{default:t}}var a=["A","ACCESSIBLE","AGENT","AGGREGATE","ALL","ALTER","ANY","ARRAY","AS","ASC","AT","ATTRIBUTE","AUTHID","AVG","BETWEEN","BFILE_BASE","BINARY_INTEGER","BINARY","BLOB_BASE","BLOCK","BODY","BOOLEAN","BOTH","BOUND","BULK","BY","BYTE","C","CALL","CALLING","CASCADE","CASE","CHAR_BASE","CHAR","CHARACTER","CHARSET","CHARSETFORM","CHARSETID","CHECK","CLOB_BASE","CLONE","CLOSE","CLUSTER","CLUSTERS","COALESCE","COLAUTH","COLLECT","COLUMNS","COMMENT","COMMIT","COMMITTED","COMPILED","COMPRESS","CONNECT","CONSTANT","CONSTRUCTOR","CONTEXT","CONTINUE","CONVERT","COUNT","CRASH","CREATE","CREDENTIAL","CURRENT","CURRVAL","CURSOR","CUSTOMDATUM","DANGLING","DATA","DATE_BASE","DATE","DAY","DECIMAL","DEFAULT","DEFINE","DELETE","DESC","DETERMINISTIC","DIRECTORY","DISTINCT","DO","DOUBLE","DROP","DURATION","ELEMENT","ELSIF","EMPTY","ESCAPE","EXCEPTIONS","EXCLUSIVE","EXECUTE","EXISTS","EXIT","EXTENDS","EXTERNAL","EXTRACT","FALSE","FETCH","FINAL","FIRST","FIXED","FLOAT","FOR","FORALL","FORCE","FROM","FUNCTION","GENERAL","GOTO","GRANT","GROUP","HASH","HEAP","HIDDEN","HOUR","IDENTIFIED","IF","IMMEDIATE","IN","INCLUDING","INDEX","INDEXES","INDICATOR","INDICES","INFINITE","INSTANTIABLE","INT","INTEGER","INTERFACE","INTERVAL","INTO","INVALIDATE","IS","ISOLATION","JAVA","LANGUAGE","LARGE","LEADING","LENGTH","LEVEL","LIBRARY","LIKE","LIKE2","LIKE4","LIKEC","LIMITED","LOCAL","LOCK","LONG","MAP","MAX","MAXLEN","MEMBER","MERGE","MIN","MINUS","MINUTE","MLSLABEL","MOD","MODE","MONTH","MULTISET","NAME","NAN","NATIONAL","NATIVE","NATURAL","NATURALN","NCHAR","NEW","NEXTVAL","NOCOMPRESS","NOCOPY","NOT","NOWAIT","NULL","NULLIF","NUMBER_BASE","NUMBER","OBJECT","OCICOLL","OCIDATE","OCIDATETIME","OCIDURATION","OCIINTERVAL","OCILOBLOCATOR","OCINUMBER","OCIRAW","OCIREF","OCIREFCURSOR","OCIROWID","OCISTRING","OCITYPE","OF","OLD","ON","ONLY","OPAQUE","OPEN","OPERATOR","OPTION","ORACLE","ORADATA","ORDER","ORGANIZATION","ORLANY","ORLVARY","OTHERS","OUT","OVERLAPS","OVERRIDING","PACKAGE","PARALLEL_ENABLE","PARAMETER","PARAMETERS","PARENT","PARTITION","PASCAL","PCTFREE","PIPE","PIPELINED","PLS_INTEGER","PLUGGABLE","POSITIVE","POSITIVEN","PRAGMA","PRECISION","PRIOR","PRIVATE","PROCEDURE","PUBLIC","RAISE","RANGE","RAW","READ","REAL","RECORD","REF","REFERENCE","RELEASE","RELIES_ON","REM","REMAINDER","RENAME","RESOURCE","RESULT_CACHE","RESULT","RETURN","RETURNING","REVERSE","REVOKE","ROLLBACK","ROW","ROWID","ROWNUM","ROWTYPE","SAMPLE","SAVE","SAVEPOINT","SB1","SB2","SB4","SECOND","SEGMENT","SELF","SEPARATE","SEQUENCE","SERIALIZABLE","SHARE","SHORT","SIZE_T","SIZE","SMALLINT","SOME","SPACE","SPARSE","SQL","SQLCODE","SQLDATA","SQLERRM","SQLNAME","SQLSTATE","STANDARD","START","STATIC","STDDEV","STORED","STRING","STRUCT","STYLE","SUBMULTISET","SUBPARTITION","SUBSTITUTABLE","SUBTYPE","SUCCESSFUL","SUM","SYNONYM","SYSDATE","TABAUTH","TABLE","TDO","THE","THEN","TIME","TIMESTAMP","TIMEZONE_ABBR","TIMEZONE_HOUR","TIMEZONE_MINUTE","TIMEZONE_REGION","TO","TRAILING","TRANSACTION","TRANSACTIONAL","TRIGGER","TRUE","TRUSTED","TYPE","UB1","UB2","UB4","UID","UNDER","UNIQUE","UNPLUG","UNSIGNED","UNTRUSTED","USE","USER","USING","VALIDATE","VALIST","VALUE","VARCHAR","VARCHAR2","VARIABLE","VARIANCE","VARRAY","VARYING","VIEW","VIEWS","VOID","WHENEVER","WHILE","WITH","WORK","WRAPPED","WRITE","YEAR","ZONE"],s=["ADD","ALTER COLUMN","ALTER TABLE","BEGIN","CONNECT BY","DECLARE","DELETE FROM","DELETE","END","EXCEPT","EXCEPTION","FETCH FIRST","FROM","GROUP BY","HAVING","INSERT INTO","INSERT","INTERSECT","LIMIT","LOOP","MODIFY","ORDER BY","SELECT","SET CURRENT SCHEMA","SET SCHEMA","SET","START WITH","UNION ALL","UNION","UPDATE","VALUES","WHERE"],c=["AND","CROSS APPLY","CROSS JOIN","ELSE","END","INNER JOIN","JOIN","LEFT JOIN","LEFT OUTER JOIN","OR","OUTER APPLY","OUTER JOIN","RIGHT JOIN","RIGHT OUTER JOIN","WHEN","XOR"],u=void 0,l=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.cfg=e}return t.prototype.format=function(t){return u||(u=new o.default({reservedWords:a,reservedToplevelWords:s,reservedNewlineWords:c,stringTypes:['""',"N''","''","``"],openParens:["(","CASE"],closeParens:[")","END"],indexedPlaceholderTypes:["?"],namedPlaceholderTypes:[":"],lineCommentTypes:["--"],specialWordChars:["_","$","#",".","@"]})),new r.default(this.cfg,u).format(t)},t}();e.default=l,t.exports=e.default},function(t,e,n){"use strict";e.__esModule=!0;var r=i(n(24)),o=i(n(25));function i(t){return t&&t.__esModule?t:{default:t}}var a=["ACCESSIBLE","ACTION","AGAINST","AGGREGATE","ALGORITHM","ALL","ALTER","ANALYSE","ANALYZE","AS","ASC","AUTOCOMMIT","AUTO_INCREMENT","BACKUP","BEGIN","BETWEEN","BINLOG","BOTH","CASCADE","CASE","CHANGE","CHANGED","CHARACTER SET","CHARSET","CHECK","CHECKSUM","COLLATE","COLLATION","COLUMN","COLUMNS","COMMENT","COMMIT","COMMITTED","COMPRESSED","CONCURRENT","CONSTRAINT","CONTAINS","CONVERT","CREATE","CROSS","CURRENT_TIMESTAMP","DATABASE","DATABASES","DAY","DAY_HOUR","DAY_MINUTE","DAY_SECOND","DEFAULT","DEFINER","DELAYED","DELETE","DESC","DESCRIBE","DETERMINISTIC","DISTINCT","DISTINCTROW","DIV","DO","DROP","DUMPFILE","DUPLICATE","DYNAMIC","ELSE","ENCLOSED","END","ENGINE","ENGINES","ENGINE_TYPE","ESCAPE","ESCAPED","EVENTS","EXEC","EXECUTE","EXISTS","EXPLAIN","EXTENDED","FAST","FETCH","FIELDS","FILE","FIRST","FIXED","FLUSH","FOR","FORCE","FOREIGN","FULL","FULLTEXT","FUNCTION","GLOBAL","GRANT","GRANTS","GROUP_CONCAT","HEAP","HIGH_PRIORITY","HOSTS","HOUR","HOUR_MINUTE","HOUR_SECOND","IDENTIFIED","IF","IFNULL","IGNORE","IN","INDEX","INDEXES","INFILE","INSERT","INSERT_ID","INSERT_METHOD","INTERVAL","INTO","INVOKER","IS","ISOLATION","KEY","KEYS","KILL","LAST_INSERT_ID","LEADING","LEVEL","LIKE","LINEAR","LINES","LOAD","LOCAL","LOCK","LOCKS","LOGS","LOW_PRIORITY","MARIA","MASTER","MASTER_CONNECT_RETRY","MASTER_HOST","MASTER_LOG_FILE","MATCH","MAX_CONNECTIONS_PER_HOUR","MAX_QUERIES_PER_HOUR","MAX_ROWS","MAX_UPDATES_PER_HOUR","MAX_USER_CONNECTIONS","MEDIUM","MERGE","MINUTE","MINUTE_SECOND","MIN_ROWS","MODE","MODIFY","MONTH","MRG_MYISAM","MYISAM","NAMES","NATURAL","NOT","NOW()","NULL","OFFSET","ON DELETE","ON UPDATE","ON","ONLY","OPEN","OPTIMIZE","OPTION","OPTIONALLY","OUTFILE","PACK_KEYS","PAGE","PARTIAL","PARTITION","PARTITIONS","PASSWORD","PRIMARY","PRIVILEGES","PROCEDURE","PROCESS","PROCESSLIST","PURGE","QUICK","RAID0","RAID_CHUNKS","RAID_CHUNKSIZE","RAID_TYPE","RANGE","READ","READ_ONLY","READ_WRITE","REFERENCES","REGEXP","RELOAD","RENAME","REPAIR","REPEATABLE","REPLACE","REPLICATION","RESET","RESTORE","RESTRICT","RETURN","RETURNS","REVOKE","RLIKE","ROLLBACK","ROW","ROWS","ROW_FORMAT","SECOND","SECURITY","SEPARATOR","SERIALIZABLE","SESSION","SHARE","SHOW","SHUTDOWN","SLAVE","SONAME","SOUNDS","SQL","SQL_AUTO_IS_NULL","SQL_BIG_RESULT","SQL_BIG_SELECTS","SQL_BIG_TABLES","SQL_BUFFER_RESULT","SQL_CACHE","SQL_CALC_FOUND_ROWS","SQL_LOG_BIN","SQL_LOG_OFF","SQL_LOG_UPDATE","SQL_LOW_PRIORITY_UPDATES","SQL_MAX_JOIN_SIZE","SQL_NO_CACHE","SQL_QUOTE_SHOW_CREATE","SQL_SAFE_UPDATES","SQL_SELECT_LIMIT","SQL_SLAVE_SKIP_COUNTER","SQL_SMALL_RESULT","SQL_WARNINGS","START","STARTING","STATUS","STOP","STORAGE","STRAIGHT_JOIN","STRING","STRIPED","SUPER","TABLE","TABLES","TEMPORARY","TERMINATED","THEN","TO","TRAILING","TRANSACTIONAL","TRUE","TRUNCATE","TYPE","TYPES","UNCOMMITTED","UNIQUE","UNLOCK","UNSIGNED","USAGE","USE","USING","VARIABLES","VIEW","WHEN","WITH","WORK","WRITE","YEAR_MONTH"],s=["ADD","AFTER","ALTER COLUMN","ALTER TABLE","DELETE FROM","EXCEPT","FETCH FIRST","FROM","GROUP BY","GO","HAVING","INSERT INTO","INSERT","INTERSECT","LIMIT","MODIFY","ORDER BY","SELECT","SET CURRENT SCHEMA","SET SCHEMA","SET","UNION ALL","UNION","UPDATE","VALUES","WHERE"],c=["AND","CROSS APPLY","CROSS JOIN","ELSE","INNER JOIN","JOIN","LEFT JOIN","LEFT OUTER JOIN","OR","OUTER APPLY","OUTER JOIN","RIGHT JOIN","RIGHT OUTER JOIN","WHEN","XOR"],u=void 0,l=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.cfg=e}return t.prototype.format=function(t){return u||(u=new o.default({reservedWords:a,reservedToplevelWords:s,reservedNewlineWords:c,stringTypes:['""',"N''","''","``","[]"],openParens:["(","CASE"],closeParens:[")","END"],indexedPlaceholderTypes:["?"],namedPlaceholderTypes:["@",":"],lineCommentTypes:["#","--"]})),new r.default(this.cfg,u).format(t)},t}();e.default=l,t.exports=e.default},function(t,e){t.exports=function(t){var e={begin:"\\$+[a-zA-Z_-ÿ][a-zA-Z0-9_-ÿ]*"},n={className:"meta",begin:/<\?(php)?|\?>/},r={className:"string",contains:[t.BACKSLASH_ESCAPE,n],variants:[{begin:'b"',end:'"'},{begin:"b'",end:"'"},t.inherit(t.APOS_STRING_MODE,{illegal:null}),t.inherit(t.QUOTE_STRING_MODE,{illegal:null})]},o={variants:[t.BINARY_NUMBER_MODE,t.C_NUMBER_MODE]};return{aliases:["php","php3","php4","php5","php6","php7"],case_insensitive:!0,keywords:"and include_once list abstract global private echo interface as static endswitch array null if endwhile or const for endforeach self var while isset public protected exit foreach throw elseif include __FILE__ empty require_once do xor return parent clone use __CLASS__ __LINE__ else break print eval new catch __METHOD__ case exception default die require __FUNCTION__ enddeclare final try switch continue endfor endif declare unset true false trait goto instanceof insteadof __DIR__ __NAMESPACE__ yield finally",contains:[t.HASH_COMMENT_MODE,t.COMMENT("//","$",{contains:[n]}),t.COMMENT("/\\*","\\*/",{contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),t.COMMENT("__halt_compiler.+?;",!1,{endsWithParent:!0,keywords:"__halt_compiler",lexemes:t.UNDERSCORE_IDENT_RE}),{className:"string",begin:/<<<['"]?\w+['"]?$/,end:/^\w+;?$/,contains:[t.BACKSLASH_ESCAPE,{className:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]}]},n,{className:"keyword",begin:/\$this\b/},e,{begin:/(::|->)+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/},{className:"function",beginKeywords:"function",end:/[;{]/,excludeEnd:!0,illegal:"\\$|\\[|%",contains:[t.UNDERSCORE_TITLE_MODE,{className:"params",begin:"\\(",end:"\\)",contains:["self",e,t.C_BLOCK_COMMENT_MODE,r,o]}]},{className:"class",beginKeywords:"class interface",end:"{",excludeEnd:!0,illegal:/[:\(\$"]/,contains:[{beginKeywords:"extends implements"},t.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",end:";",illegal:/[\.']/,contains:[t.UNDERSCORE_TITLE_MODE]},{beginKeywords:"use",end:";",contains:[t.UNDERSCORE_TITLE_MODE]},{begin:"=>"},r,o]}}},function(t,e,n){var r=n(79),o=n(235),i=n(236),a=n(80),s=n(237),c=n(49),u=200;t.exports=function(t,e,n){var l=-1,f=o,p=t.length,d=!0,h=[],m=h;if(n)d=!1,f=i;else if(p>=u){var g=e?null:s(t);if(g)return c(g);d=!1,f=a,m=new r}else m=e?[]:h;t:for(;++l-1}},function(t,e,n){var r=n(28);t.exports=function(t,e){var n=this.__data__,o=r(n,t);return o<0?(++this.size,n.push([t,e])):n[o][1]=e,this}},function(t,e,n){var r=n(29);t.exports=function(t){var e=r(this,t).delete(t);return this.size-=e?1:0,e}},function(t,e){t.exports=function(t){var e=typeof t;return"string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t}},function(t,e,n){var r=n(29);t.exports=function(t){return r(this,t).get(t)}},function(t,e,n){var r=n(29);t.exports=function(t){return r(this,t).has(t)}},function(t,e,n){var r=n(29);t.exports=function(t,e){var n=r(this,t),o=n.size;return n.set(t,e),this.size+=n.size==o?0:1,this}},function(t,e){var n="__lodash_hash_undefined__";t.exports=function(t){return this.__data__.set(t,n),this}},function(t,e){t.exports=function(t){return this.__data__.has(t)}},function(t,e,n){var r=n(72);t.exports=function(t,e){return!!(null==t?0:t.length)&&r(t,e,0)>-1}},function(t,e){t.exports=function(t,e,n){for(var r=-1,o=null==t?0:t.length;++r>>32-e},rotr:function(t,e){return t<<32-e|t>>>e},endian:function(t){if(t.constructor==Number)return 16711935&r.rotl(t,8)|4278255360&r.rotl(t,24);for(var e=0;e0;t--)e.push(Math.floor(256*Math.random()));return e},bytesToWords:function(t){for(var e=[],n=0,r=0;n>>5]|=t[n]<<24-r%32;return e},wordsToBytes:function(t){for(var e=[],n=0;n<32*t.length;n+=8)e.push(t[n>>>5]>>>24-n%32&255);return e},bytesToHex:function(t){for(var e=[],n=0;n>>4).toString(16)),e.push((15&t[n]).toString(16));return e.join("")},hexToBytes:function(t){for(var e=[],n=0;n>>6*(3-i)&63)):e.push("=");return e.join("")},base64ToBytes:function(t){t=t.replace(/[^A-Z0-9+\/]/gi,"");for(var e=[],r=0,o=0;r>>6-2*o);return e}},t.exports=r},function(t,e){function n(t){return!!t.constructor&&"function"==typeof t.constructor.isBuffer&&t.constructor.isBuffer(t)} /*! * Determine if an object is a Buffer * * @author Feross Aboukhadijeh * @license MIT */ -t.exports=function(t){return null!=t&&(n(t)||function(t){return"function"==typeof t.readFloatLE&&"function"==typeof t.slice&&n(t.slice(0,0))}(t)||!!t._isBuffer)}},function(t,e,n){"use strict";n.r(e);n(93);var r,o,i,a=n(6),s=n.n(a),c=n(31),u=n.n(c),l=n(32),f=n.n(l),p=n(7),d=n(0),h=Object(d.a)({},(function(){var t=this.$createElement,e=this._self._c||t;return e("svg",{staticStyle:{display:"none"},attrs:{xmlns:"http://www.w3.org/2000/svg"}},[e("symbol",{attrs:{id:"arrow-down-icon",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 448 512"}},[e("path",{attrs:{d:"M413.1 222.5l22.2 22.2c9.4 9.4 9.4 24.6 0 33.9L241 473c-9.4 9.4-24.6 9.4-33.9 0L12.7 278.6c-9.4-9.4-9.4-24.6 0-33.9l22.2-22.2c9.5-9.5 25-9.3 34.3.4L184 343.4V56c0-13.3 10.7-24 24-24h32c13.3 0 24 10.7 24 24v287.4l114.8-120.5c9.3-9.8 24.8-10 34.3-.4z"}})]),this._v(" "),e("symbol",{attrs:{id:"arrow-up-icon",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 448 512"}},[e("path",{attrs:{d:"M34.9 289.5l-22.2-22.2c-9.4-9.4-9.4-24.6 0-33.9L207 39c9.4-9.4 24.6-9.4 33.9 0l194.3 194.3c9.4 9.4 9.4 24.6 0 33.9L413 289.4c-9.5 9.5-25 9.3-34.3-.4L264 168.6V456c0 13.3-10.7 24-24 24h-32c-13.3 0-24-10.7-24-24V168.6L69.2 289.1c-9.3 9.8-24.8 10-34.3.4z"}})]),this._v(" "),e("symbol",{attrs:{id:"clipboard-icon",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 384 512"}},[e("path",{attrs:{d:"M336 64h-80c0-35.3-28.7-64-64-64s-64 28.7-64 64H48C21.5 64 0 85.5 0 112v352c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48zM192 40c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm144 418c0 3.3-2.7 6-6 6H54c-3.3 0-6-2.7-6-6V118c0-3.3 2.7-6 6-6h42v36c0 6.6 5.4 12 12 12h168c6.6 0 12-5.4 12-12v-36h42c3.3 0 6 2.7 6 6z"}})]),this._v(" "),e("symbol",{attrs:{id:"lightbulb-icon",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 352 512"}},[e("path",{attrs:{d:"M176 80c-52.94 0-96 43.06-96 96 0 8.84 7.16 16 16 16s16-7.16 16-16c0-35.3 28.72-64 64-64 8.84 0 16-7.16 16-16s-7.16-16-16-16zM96.06 459.17c0 3.15.93 6.22 2.68 8.84l24.51 36.84c2.97 4.46 7.97 7.14 13.32 7.14h78.85c5.36 0 10.36-2.68 13.32-7.14l24.51-36.84c1.74-2.62 2.67-5.7 2.68-8.84l.05-43.18H96.02l.04 43.18zM176 0C73.72 0 0 82.97 0 176c0 44.37 16.45 84.85 43.56 115.78 16.64 18.99 42.74 58.8 52.42 92.16v.06h48v-.12c-.01-4.77-.72-9.51-2.15-14.07-5.59-17.81-22.82-64.77-62.17-109.67-20.54-23.43-31.52-53.15-31.61-84.14-.2-73.64 59.67-128 127.95-128 70.58 0 128 57.42 128 128 0 30.97-11.24 60.85-31.65 84.14-39.11 44.61-56.42 91.47-62.1 109.46a47.507 47.507 0 0 0-2.22 14.3v.1h48v-.05c9.68-33.37 35.78-73.18 52.42-92.16C335.55 260.85 352 220.37 352 176 352 78.8 273.2 0 176 0z"}})]),this._v(" "),e("symbol",{attrs:{id:"pencil-icon",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"}},[e("path",{attrs:{d:"M497.9 142.1l-46.1 46.1c-4.7 4.7-12.3 4.7-17 0l-111-111c-4.7-4.7-4.7-12.3 0-17l46.1-46.1c18.7-18.7 49.1-18.7 67.9 0l60.1 60.1c18.8 18.7 18.8 49.1 0 67.9zM284.2 99.8L21.6 362.4.4 483.9c-2.9 16.4 11.4 30.6 27.8 27.8l121.5-21.3 262.6-262.6c4.7-4.7 4.7-12.3 0-17l-111-111c-4.8-4.7-12.4-4.7-17.1 0zM124.1 339.9c-5.5-5.5-5.5-14.3 0-19.8l154-154c5.5-5.5 14.3-5.5 19.8 0s5.5 14.3 0 19.8l-154 154c-5.5 5.5-14.3 5.5-19.8 0zM88 424h48v36.3l-64.5 11.3-31.1-31.1L51.7 376H88v48z"}})]),this._v(" "),e("symbol",{attrs:{id:"plus-icon",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"}},[e("path",{attrs:{d:"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm144 276c0 6.6-5.4 12-12 12h-92v92c0 6.6-5.4 12-12 12h-56c-6.6 0-12-5.4-12-12v-92h-92c-6.6 0-12-5.4-12-12v-56c0-6.6 5.4-12 12-12h92v-92c0-6.6 5.4-12 12-12h56c6.6 0 12 5.4 12 12v92h92c6.6 0 12 5.4 12 12v56z"}})]),this._v(" "),e("symbol",{attrs:{id:"share-icon",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"}},[e("path",{attrs:{d:"M503.691 189.836L327.687 37.851C312.281 24.546 288 35.347 288 56.015v80.053C127.371 137.907 0 170.1 0 322.326c0 61.441 39.581 122.309 83.333 154.132 13.653 9.931 33.111-2.533 28.077-18.631C66.066 312.814 132.917 274.316 288 272.085V360c0 20.7 24.3 31.453 39.687 18.164l176.004-152c11.071-9.562 11.086-26.753 0-36.328z"}})])])}),[],!1,null,null,null).exports,m=n(5),g=n(13),v={props:{name:{required:!0}},data:function(){return{fullException:!1}},methods:{removeClamp:function(){this.fullException||(this.fullException=!0)}}},b=Object(d.a)(v,(function(){var t=this.$createElement;return(this._self._c||t)("div",{staticClass:"ui-exception-message",class:this.fullException?"ui-exception-message-full":"",on:{mousedown:this.removeClamp}},[this._v("\n "+this._s(this.name)+"\n")])}),[],!1,null,null,null).exports,_={components:{ExceptionClass:n(14).a,ExceptionMessage:b,LineNumber:g.a,FilePath:m.a},inject:["report"],computed:{firstFrame:function(){return this.report.stacktrace[0]}}},y={inject:["report","telescopeUrl","config"],components:{OccurrenceDetails:Object(d.a)(_,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"card-details-overflow scrollbar p-12 pt-10"},[n("div",{staticClass:"text-2xl"},[n("ExceptionClass",{attrs:{name:t.report.exception_class}}),t._v(" "),n("ExceptionMessage",{attrs:{name:t.report.message}})],1),t._v(" "),n("div",[n("a",{staticClass:"ui-url",attrs:{href:t.report.context.request.url,target:"_blank"}},[t._v("\n "+t._s(t.report.context.request.url)+"\n ")])])])}),[],!1,null,null,null).exports,FilePath:m.a}},E=Object(d.a)(y,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"mt-12 card card-has-header card-no-props"},[n("div",{staticClass:"card-header"},[n("div",{staticClass:"grid items-center rounded-t border-b border-tint-300 text-xs text-tint-600 ",staticStyle:{"grid-template-columns":"1fr 1fr"}},[n("div",{staticClass:"grid cols-auto justify-start gap-2 px-4 py-2"},[n("div",{staticClass:"flex items-center"},[n("a",{attrs:{href:"http://flareapp.io/docs/ignition-for-laravel/introduction",target:"_blank",title:"Ignition docs"}},[n("svg",{staticClass:"w-4 h-5 mr-4",attrs:{viewBox:"0 0 428 988"}},[n("polygon",{staticStyle:{fill:"#FA4E79"},attrs:{points:"428,247.1 428,494.1 214,617.5 214,369.3 \t\t"}}),t._v(" "),n("polygon",{staticStyle:{fill:"#FFF082"},attrs:{points:"0,988 0,741 214,617.5 214,864.1 \t\t"}}),t._v(" "),n("polygon",{staticStyle:{fill:"#E6003A"},attrs:{points:"214,123.9 214,617.5 0,494.1 0,0 \t\t"}}),t._v(" "),n("polygon",{staticStyle:{fill:"#FFE100"},attrs:{points:"214,864.1 214,617.5 428,741 428,988 \t\t"}})])]),t._v(" "),n("FilePath",{attrs:{pathClass:"font-normal",file:t.report.application_path+t.config.directorySeparator,relative:!1}})],1)]),t._v(" "),n("div",{staticClass:"grid cols-auto items-center justify-end gap-4 px-4 py-2"},[t.telescopeUrl?n("div",[n("a",{staticClass:"link-dimmed sm:ml-6",attrs:{href:t.telescopeUrl,target:"_blank"}},[t._v("Telescope")])]):t._e()])])]),t._v(" "),n("div"),t._v(" "),n("div",{staticClass:"card-details"},[n("OccurrenceDetails")],1)])}),[],!1,null,null,null).exports,k=n(10),x=n.n(k),w=n(20),C=n.n(w),A=n(100)(),T=null,S={inject:["config"],props:{solution:{required:!0}},data:function(){return{isHidingSolutions:this.hasHideSolutionsCookie(),canExecuteSolutions:null,runningSolution:!1,executionSuccessful:null}},computed:{healthCheckEndpoint:function(){return this.solution.execute_endpoint.replace("execute-solution","health-check")}},created:function(){this.configureRunnableSolutions()},mounted:function(){this.isHidingSolutions&&this.$refs.solutionCard.classList.add("solution-hidden")},methods:{configureRunnableSolutions:function(){this.config.enableRunnableSolutions?this.checkExecutionEndpoint():this.canExecuteSolutions=!1},markdown:function(t){return A.render(t)},checkExecutionEndpoint:(o=C()(x.a.mark((function t(){var e;return x.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,fetch(this.healthCheckEndpoint);case 3:return t.next=5,t.sent.json();case 5:e=t.sent,this.canExecuteSolutions=e.can_execute_commands,t.next=12;break;case 9:t.prev=9,t.t0=t.catch(0),this.canExecuteSolutions=!1;case 12:case"end":return t.stop()}}),t,this,[[0,9]])}))),function(){return o.apply(this,arguments)}),execute:(r=C()(x.a.mark((function t(){var e;return x.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!this.runningSolution){t.next=2;break}return t.abrupt("return");case 2:return t.prev=2,this.runningSolution=!0,t.next=6,fetch(this.solution.execute_endpoint,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({solution:this.solution.class,parameters:this.solution.run_parameters})});case 6:e=t.sent,this.executionSuccessful=200===e.status,t.next=14;break;case 10:t.prev=10,t.t0=t.catch(2),console.error(t.t0),this.executionSuccessful=!1;case 14:return t.prev=14,this.runningSolution=!1,t.finish(14);case 17:case"end":return t.stop()}}),t,this,[[2,10,14,17]])}))),function(){return r.apply(this,arguments)}),refresh:function(){location.reload()},getUrlLabel:function(t){var e=document.createElement("a");return e.href=t,e.hostname},toggleSolutions:function(){var t=this;this.isHidingSolutions?(window.clearTimeout(T),this.toggleHidingSolutions()):(this.$refs.solutionCard.classList.add("solution-hiding"),T=window.setTimeout((function(){t.$refs.solutionCard.classList.remove("solution-hiding"),t.toggleHidingSolutions()}),100))},toggleHidingSolutions:function(){if(this.isHidingSolutions)return document.cookie="".concat("hide_solutions","=;expires=Thu, 01 Jan 1970 00:00:00 UTC;path=/;"),void(this.isHidingSolutions=!1);var t=new Date;t.setTime(t.getTime()+31536e6),document.cookie="".concat("hide_solutions","=true;expires=").concat(t.toUTCString(),";path=/;"),this.isHidingSolutions=!0},hasHideSolutionsCookie:function(){return document.cookie.includes("hide_solutions")}}},R={components:{SolutionCard:Object(d.a)(S,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",[n("div",{staticClass:"solution-toggle",class:{"solution-toggle-show":t.isHidingSolutions},on:{click:t.toggleSolutions}},[t.isHidingSolutions?n("a",{staticClass:"link-solution",attrs:{target:"_blank"}},[n("Icon",{staticClass:"text-xs mr-1",attrs:{name:"lightbulb"}}),t._v(" Show solutions")],1):n("a",{staticClass:"link-solution",attrs:{target:"_blank"}},[t._v("Hide solutions")])]),t._v(" "),n("div",{ref:"solutionCard",staticClass:"solution",class:{"solution-hidden":t.isHidingSolutions}},[n("div",{staticClass:"solution-main"},[n("div",{staticClass:"solution-background mx-0"},[n("svg",{staticClass:"hidden absolute right-0 h-full | md:block",attrs:{x:"0px",y:"0px",viewBox:"0 0 299 452"}},[n("g",{staticStyle:{opacity:"0.075"}},[n("polygon",{staticStyle:{fill:"rgb(63,63,63)"},attrs:{points:"298.1,451.9 150.9,451.9 21,226.9 298.1,227.1"}}),t._v(" "),n("polygon",{staticStyle:{fill:"rgb(151,151,151)"},attrs:{points:"298.1,227.1 21,226.9 150.9,1.9 298.1,1.9"}})])])]),t._v(" "),n("div",{staticClass:"p-12"},[n("div",{staticClass:"solution-content ml-0"},[n("h2",{staticClass:"solution-title"},[t._v(t._s(t.solution.title))]),t._v(" "),t.solution.description?n("div",{domProps:{innerHTML:t._s(t.markdown(t.solution.description))}}):t._e(),t._v(" "),t.solution.is_runnable?n("div",[n("p",{domProps:{innerHTML:t._s(t.markdown(t.solution.action_description))}}),t._v(" "),null===t.canExecuteSolutions?n("p",{staticClass:"py-4 text-sm italic"},[t._v("\n Loading...\n ")]):t._e(),t._v(" "),n("div",{staticClass:"mt-4"},[t.solution.is_runnable&&!0===t.canExecuteSolutions&&null===t.executionSuccessful?n("button",{staticClass:"button-secondary button-lg bg-tint-300 hover:bg-tint-400",attrs:{disabled:t.runningSolution},on:{click:t.execute}},[t.runningSolution?n("span",[t._v("Running...")]):t._e(),t._v(" "),t.runningSolution?t._e():n("span",[t._v(t._s(t.solution.run_button_text))])]):t._e(),t._v(" "),t.executionSuccessful?n("p",[n("strong",{staticClass:"font-semibold"},[t._v("The solution was executed succesfully.")]),t._v(" "),n("a",{staticClass:"link-solution",attrs:{href:"#"},on:{click:function(e){return e.preventDefault(),t.refresh(e)}}},[t._v("Refresh now.")])]):t._e(),t._v(" "),!1===t.executionSuccessful?n("p",[t._v("\n Something went wrong when executing the solution. Please try\n refresh the page and try again.\n ")]):t._e()])]):t._e(),t._v(" "),Object.entries(t.solution.links).length>0?n("div",{staticClass:"mt-8 grid justify-start"},[n("div",{staticClass:"border-t-2 border-gray-700 opacity-25 "}),t._v(" "),n("div",{staticClass:"pt-2 grid cols-auto-1fr gapx-4 gapy-2 text-sm"},[n("label",{staticClass:"font-semibold uppercase tracking-wider"},[t._v("Read more")]),t._v(" "),n("ul",t._l(t.solution.links,(function(e,r){return n("li",{key:r},[n("a",{staticClass:"link-solution",attrs:{href:e,target:"_blank"}},[t._v(t._s(r))])])})),0)])]):t._e()])])])])])}),[],!1,null,null,null).exports,ErrorCard:E,FilePath:m.a},inject:["report","solutions"],data:function(){return{activeSolutionKey:0}},computed:{firstFrame:function(){return this.report.stacktrace[0]},solution:function(){return this.solutions[this.activeSolutionKey]}}},O=Object(d.a)(R,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",[n("div",{staticClass:"layout-col z-10"},[n("ErrorCard")],1),t._v(" "),t.solutions.length>0?n("div",{staticClass:"layout-col z-1"},[n("SolutionCard",t._b({},"SolutionCard",{solution:t.solution},!1)),t._v(" "),t.solutions.length>1?n("div",{staticClass:"absolute left-0 bottom-0 w-full h-8 mb-2 px-4 text-sm z-10"},[n("ul",{staticClass:"grid cols-auto place-center gap-1"},t._l(t.solutions,(function(e,r){return n("li",{key:e.class,on:{click:function(e){t.activeSolutionKey=r}}},[n("a",{staticClass:"grid place-center h-8 min-w-8 px-2 rounded-full",class:{"bg-tint-200 font-semibold":t.activeSolutionKey===r,"hover:bg-tint-100 cursor-pointer":t.activeSolutionKey!==r}},[t._v("\n "+t._s(r+1)+"\n ")])])})),0)]):t._e()],1):t._e()])}),[],!1,null,null,null).exports,N={components:{CheckboxField:n(35).a},props:["error"],computed:{selectedTabs:function(){return this.tabs.filter((function(t){return t.checked})).map((function(t){return t.name}))}},data:function(){return{tabs:[{label:"Stack trace",name:"stackTraceTab",checked:!0},{label:"Request",name:"requestTab",checked:!0},{label:"App",name:"appTab",checked:!0},{label:"User",name:"userTab",checked:!0},{label:"Context",name:"contextTab",checked:!0},{label:"Debug",name:"debugTab",checked:!0}]}},methods:{shareError:function(){this.$emit("share",this.selectedTabs)}}},L=Object(d.a)(N,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",[n("div",{staticClass:"grid cols-2 justify-start gapx-6 gapy-2"},t._l(t.tabs,(function(e){return n("CheckboxField",{key:e.name,staticClass:"text-gray-200 hover:text-white",attrs:{label:e.label,name:e.name},on:{change:function(t){e.checked=!e.checked}},model:{value:e.checked,callback:function(n){t.$set(e,"checked",n)},expression:"tab.checked"}})})),1),t._v(" "),n("div",{staticClass:"mt-4"},[t.error?n("div",{staticClass:"mb-3"},[t._v("\n We were unable to share your error."),n("br"),t._v("\n Please try again later.\n ")]):t._e(),t._v(" "),n("button",{staticClass:"button-secondary button-sm bg-tint-600 text-white",on:{click:t.shareError}},[t._v("\n Share\n ")])])])}),[],!1,null,null,null).exports,I={props:{text:{required:!0}},data:function(){return{copied:!1,timeout:!1}},methods:{copy:function(t){var e=this;this.timeout&&window.clearTimeout(this.timeout);var n=document.createElement("textarea");n.value=t,document.body.appendChild(n),n.select(),document.execCommand("copy"),document.body.removeChild(n),this.copied=!0,this.timeout=window.setTimeout((function(){return e.copied=!1}),3e3)}}},D={components:{CopyButton:Object(d.a)(I,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("button",{attrs:{title:"Copy to clipboard"},on:{click:function(e){return t.copy(t.text)}}},[n("Icon",{class:t.copied?"fill-green-300":"fill-gray-200 hover:fill-white",attrs:{name:"clipboard"}}),t._v(" "),t.copied?n("div",{staticClass:"ml-2 absolute top-0 left-full text-green-300"},[t._v("\n Copied!\n ")]):t._e()],1)}),[],!1,null,null,null).exports},props:{publicUrl:{required:!0},ownerUrl:{required:!0}}},M={components:{ShareLinks:Object(d.a)(D,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"text-left"},[n("p",{staticClass:"mt-2 text-gray-300"},[t._v("Share your error with others:")]),t._v(" "),n("div",{staticClass:"grid cols-auto items-center justify-start gap-2 mt-2"},[n("a",{staticClass:"button-secondary button-sm bg-tint-600 hover:bg-tint-700 text-white",attrs:{href:t.publicUrl,target:"_blank"}},[t._v("Open public share")]),t._v(" "),n("CopyButton",{attrs:{text:t.publicUrl}})],1),t._v(" "),n("p",{staticClass:"mt-4 text-gray-300"},[t._v("Administer your shared error here:")]),t._v(" "),n("div",{staticClass:"grid cols-auto items-center justify-start gap-2 mt-2"},[n("a",{staticClass:"button-secondary button-sm bg-tint-600 hover:bg-tint-700 text-white",attrs:{href:t.ownerUrl,target:"_blank"}},[t._v("Open share admin")]),t._v(" "),n("CopyButton",{attrs:{text:t.ownerUrl}})],1)])}),[],!1,null,null,null).exports,ShareForm:L},inject:["report","shareEndpoint"],data:function(){return{shareHadError:!1,sharedErrorUrls:null,menuVisible:!1}},watch:{menuVisible:function(t){t?window.addEventListener("click",this.toggleMenu):window.removeEventListener("click",this.toggleMenu)}},methods:{toggleMenu:function(){this.menuVisible=!this.menuVisible},shareError:(i=C()(x.a.mark((function t(e){var n,r;return x.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,fetch(this.shareEndpoint,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({report:JSON.stringify(this.report),tabs:e,lineSelection:window.location.hash})});case 3:return n=t.sent,t.next=6,n.json();case 6:r=t.sent,n.ok?this.sharedErrorUrls=r:this.shareHadError=!0,t.next=13;break;case 10:t.prev=10,t.t0=t.catch(0),this.shareHadError=!0;case 13:case"end":return t.stop()}}),t,this,[[0,10]])}))),function(t){return i.apply(this,arguments)})}},P={inject:["config"],components:{ShareButton:Object(d.a)(M,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{on:{click:function(t){t.stopPropagation()}}},[n("button",{staticClass:"tab",class:t.menuVisible?"tab-active":"",on:{click:t.toggleMenu}},[t._v("\n Share\n "),n("Icon",{staticClass:"ml-2",attrs:{name:"share"}})],1),t._v(" "),n("div",{staticClass:"dropdown z-10 right-0 top-full p-4 overflow-visible",class:{hidden:!t.menuVisible},staticStyle:{"min-width":"18rem","margin-right":"-1px"},on:{click:function(t){t.stopPropagation()}}},[n("div",{staticClass:"flex items-center mb-4"},[n("svg",{staticClass:"w-4 h-5 mr-2",attrs:{viewBox:"0 0 682 1024"}},[n("polygon",{staticStyle:{fill:"#51DB9E"},attrs:{points:"235.3,510.5 21.5,387 21.5,140.2 236.5,264.1 "}}),t._v(" "),n("polygon",{staticStyle:{fill:"#7900F5"},attrs:{points:"235.3,1004.8 21.5,881.4 21.5,634.5 234.8,757.9 "}}),t._v(" "),n("polygon",{staticStyle:{fill:"#94F2C8"},attrs:{points:"448.9,386.9 21.5,140.2 235.3,16.7 663.2,263.4 "}}),t._v(" "),n("polygon",{staticStyle:{fill:"#A475F4"},attrs:{points:"234.8,757.9 21.5,634.5 235.3,511 449.1,634.5 "}})]),t._v(" "),n("h5",{staticClass:"text-left font-semibold uppercase tracking-wider whitespace-no-wrap"},[t._v("\n "+t._s(t.sharedErrorUrls?"Shared":"Share")+" on Flare\n ")]),t._v(" "),n("a",{staticClass:"ml-auto underline",attrs:{target:"_blank",href:"https://flareapp.io/docs/ignition-for-laravel/sharing-errors",title:"Flare documentation"}},[t._v("Docs\n ")])]),t._v(" "),t.sharedErrorUrls?n("div",[n("ShareLinks",{attrs:{publicUrl:t.sharedErrorUrls.public_url,ownerUrl:t.sharedErrorUrls.owner_url}})],1):n("ShareForm",{attrs:{error:t.shareHadError},on:{share:t.shareError}})],1)])}),[],!1,null,null,null).exports},props:{value:{required:!0},customTabs:{required:!0}},data:function(){return{defaultTabs:[{component:"StackTab",title:"Stack trace"},{component:"RequestTab",title:"Request"},{component:"AppTab",title:"App"},{component:"UserTab",title:"User"},{component:"ContextTab",title:"Context"},{component:"DebugTab",title:"Debug"}],shareButtonEnabled:this.config.enableShareButton}},mounted:function(){this.applyDefaultTabProps(),this.$emit("input",this.tabs[this.currentTabIndex])},computed:{currentTabIndex:function(){var t=this;return this.tabs.findIndex((function(e){return e.component===t.value.component}))},nextTab:function(){return this.tabs[this.currentTabIndex+1]||this.tabs[0]},previousTab:function(){return this.tabs[this.currentTabIndex-1]||this.tabs[this.tabs.length-1]},tabs:function(){var t={};return this.defaultTabs.forEach((function(e){t[e.component]=e})),this.customTabs.forEach((function(e){t[e.component]=e})),Object.values(t)}},methods:{applyDefaultTabProps:function(){var t=this;this.defaultTabs.map((function(e){return e.component===t.value.component&&(e.props=t.value.props||{}),e}))}}},j={props:{tab:{required:!0}},render:function(t){return t(this.tab.component,{props:this.tab.props||{}})}},U={props:{report:{required:!0},config:{required:!0},solutions:{required:!0},telescopeUrl:{required:!0},shareEndpoint:{required:!0},defaultTab:{required:!0},defaultTabProps:{required:!1}},data:function(){return{customTabs:window.tabs,tab:{component:this.defaultTab,props:this.defaultTabProps||{}}}},provide:function(){return{config:this.config,report:this.report,solutions:this.solutions,telescopeUrl:this.telescopeUrl,shareEndpoint:this.shareEndpoint,setTab:this.setTab}},components:{Summary:O,Tabs:Object(d.a)(P,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("nav",{staticClass:"tab-nav"},[n("ul",{staticClass:"tab-bar"},t._l(t.tabs,(function(e){return n("li",{key:e.component},[n("button",{staticClass:"tab",class:t.value.component===e.component?"tab-active":"",on:{click:function(n){return n.preventDefault(),t.$emit("input",e)}}},[t._v("\n "+t._s(e.title)+"\n ")])])})),0),t._v(" "),t.shareButtonEnabled?[n("div",{staticClass:"tab-delimiter"}),t._v(" "),n("ShareButton")]:t._e()],2)}),[],!1,null,null,null).exports,Details:Object(d.a)(j,void 0,void 0,!1,null,null,null).exports,IconSymbols:h},methods:{setTab:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.tab={component:t,props:e}}},created:function(){}},F=Object(d.a)(U,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",[n("IconSymbols"),t._v(" "),n("Summary"),t._v(" "),n("div",{staticClass:"layout-col mt-12"},[n("div",{staticClass:"tabs"},[n("Tabs",t._b({model:{value:t.tab,callback:function(e){t.tab=e},expression:"tab"}},"Tabs",{customTabs:t.customTabs},!1)),t._v(" "),n("div",{staticClass:"tab-main"},[n("Details",t._b({},"Details",{tab:t.tab},!1))],1)],1)])],1)}),[],!1,null,null,null).exports;function $(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function B(t){for(var e=1;e=this.selectedRange[0]&&t<=this.selectedRange[1])},editorUrl:function(t){return Object(c.a)(this.config,this.selectedFrame.file,t)},highlightedCode:function(t){var e=o.a.highlight("php",t||"",!0,this.highlightState);return this.highlightState=e.top,e.value||" "}}},l=n(0),f=Object(l.a)(u,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"stack-main"},[n("div",{staticClass:"stack-main-header"},[n("div",{staticClass:"grid cols-auto gap-2 justify-start items-center"},[n("ExceptionClass",{attrs:{name:t.selectedFrame.class||"",method:t.selectedFrame.method||""}})],1),t._v(" "),t.selectedFrame.file?n("FilePath",{staticClass:"mt-1",attrs:{"line-number":t.selectedFrame.line_number,file:t.selectedFrame.file,editable:!0}}):t._e()],1),t._v(" "),n("div",{staticClass:"stack-main-content"},[n("div",{staticClass:"stack-viewer scrollbar"},[n("div",{staticClass:"stack-ruler"},[n("div",{staticClass:"stack-lines"},t._l(t.selectedFrame.code_snippet,(function(e,r){return n("p",{key:r,staticClass:"stack-line cursor-pointer",class:{"stack-line-selected":t.withinSelectedRange(parseInt(r)),"stack-line-highlight":parseInt(r)===t.selectedFrame.line_number},on:{click:function(e){t.handleLineNumberClick(e,parseInt(r))}}},[t._v("\n "+t._s(r)+"\n ")])})),0)]),t._v(" "),n("pre",{ref:"codeContainer",staticClass:"stack-code",class:t.highlightTheme},[t._l(t.selectedFrame.code_snippet,(function(e,r){return n("p",{key:r,staticClass:"stack-code-line",class:{"stack-code-line-highlight":parseInt(r)===t.selectedFrame.line_number,"stack-code-line-selected":t.withinSelectedRange(parseInt(r))}},[n("span",{domProps:{innerHTML:t._s(t.highlightedCode(e))}}),n("a",{staticClass:"editor-link",attrs:{href:t.editorUrl(r)}},[n("Icon",{attrs:{name:"pencil"}})],1)])})),t._v("\n ")],2)])])])}),[],!1,null,null,null).exports,p={props:{frameGroup:{required:!0}},components:{ExceptionClass:i.a,FilePath:a.a,LineNumber:s.a}},d=Object(l.a)(p,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.frameGroup.expanded||"vendor"!==t.frameGroup.type?"unknown"===t.frameGroup.type?n("li",{staticClass:"stack-frame-group stack-frame-group-unknown"},[n("div",{staticClass:"stack-frame"},[n("button",{staticClass:"stack-frame-number"}),t._v(" "),n("div",{staticClass:"span-2 stack-frame-text"},[n("span",{staticClass:"text-left text-gray-500"},[t._v("\n "+t._s(t.frameGroup.frames.length>1?t.frameGroup.frames.length+" unknown frames":"1 unknown frame")+"\n ")])])])]):n("li",[n("ul",{staticClass:"stack-frame-group",class:"vendor"===t.frameGroup.type?"stack-frame-group-vendor":""},t._l(t.frameGroup.frames,(function(e,r){return n("li",{key:r,staticClass:"stack-frame | cursor-pointer",class:e.selected?"stack-frame-selected":"",on:{click:function(n){return t.$emit("select",e.frame_number)}}},[n("div",{staticClass:"stack-frame-number"},[t._v(t._s(e.frame_number))]),t._v(" "),n("div",{staticClass:"stack-frame-text"},[0===r?n("header",{staticClass:"stack-frame-header",class:e.class?"mb-1":""},[n("FilePath",{staticClass:"stack-frame-path",attrs:{pathClass:"vendor"===t.frameGroup.type?"text-gray-800":"text-purple-800",file:e.relative_file}})],1):t._e(),t._v(" "),e.class?n("span",{staticClass:"stack-frame-exception-class"},[n("ExceptionClass",{staticClass:"stack-frame-exception-class",attrs:{name:e.class}})],1):t._e()]),t._v(" "),n("div",{staticClass:"stack-frame-line"},[n("LineNumber",{attrs:{lineNumber:e.line_number}})],1)])})),0)]):n("li",{staticClass:"stack-frame-group stack-frame-group-vendor",on:{click:function(e){return t.$emit("expand")}}},[n("div",{staticClass:"stack-frame | cursor-pointer"},[n("button",{staticClass:"stack-frame-number"},[n("Icon",{staticClass:"align-middle text-gray-500",attrs:{name:"plus"}})],1),t._v(" "),n("div",{staticClass:"span-2 stack-frame-text"},[n("button",{staticClass:"text-left text-gray-500"},[t._v("\n "+t._s(t.frameGroup.frames.length>1?t.frameGroup.frames.length+" vendor frames…":"1 vendor frame…")+"\n ")])])])])}),[],!1,null,null,null).exports,h=n(6),m=n.n(h),g=n(4),v=n.n(g),b=n(15),_=n.n(b);function y(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function E(t){return t.map((function(e,n){return function(t){for(var e=1;e