/*

*          __        ___
*    _____/ /___  __/ (_)____
*   / ___/ __/ / / / / / ___/
*  (__  ) /_/ /_/ / / (__  )
* /____/\__/\__, /_/_/____/
*          /____/
*
* light - weight css preprocessor @licence MIT
*/

/*!

* Wait for document loaded before starting the execution
*/

/*!

* Chart.js v3.4.1
* https://www.chartjs.org
* (c) 2021 Chart.js Contributors
* Released under the MIT License
*/

/*!

* Chartkick.js
* Create beautiful charts with one line of JavaScript
* https://github.com/ankane/chartkick.js
* v4.0.4
* MIT License
*/

/*!

* Glide.js v3.4.1
* (c) 2013-2019 Jędrzej Chałubek <jedrzej.chalubek@gmail.com> (http://jedrzejchalubek.com/)
* Released under the MIT License.
*/

/*!

* The buffer module from node.js, for the browser.
*
* @author   Feross Aboukhadijeh <http://feross.org>
* @license  MIT
*/

/*!

* Vue.js v2.6.14
* (c) 2014-2021 Evan You
* Released under the MIT License.
*/

/*!

* chartjs-adapter-date-fns v2.0.0
* https://www.chartjs.org
* (c) 2021 chartjs-adapter-date-fns Contributors
* Released under the MIT license
*/

/*!

* clipboard.js v2.0.8
* https://clipboardjs.com/
*
* Licensed MIT © Zeno Rocha
*/

/*! © Stefan Thomas | github.com/bitcoinjs/bitcoinjs-lib

*/

/*! © Tom Wu | www-cs-students.stanford.edu/~tjw/jsbn/

*/

/*! ../../config */

/*! ../../dagre-wrapper/index.js */

/*! ../../diagrams/common/common */

/*! ../../logger */

/*! ../../mermaidAPI */

/*! ../../utils */

/*! ../common/common */

/*! ../config */

/*! ../createLabel */

/*! ../diagrams/class/svgDraw */

/*! ../diagrams/common/common */

/*! ../intersect/index.js */

/*! ../logger */

/*! ../package.json */

/*! ../utils */

/*! ./../../../../node_modules/process/browser.js */

/*! ./../../../../node_modules/webpack/buildin/module.js */

/*! ./../process/browser.js */

/*! ./classDb */

/*! ./clusters */

/*! ./config */

/*! ./createLabel */

/*! ./defaultConfig */

/*! ./diagrams/class/classDb */

/*! ./diagrams/class/classRenderer */

/*! ./diagrams/class/classRenderer-v2 */

/*! ./diagrams/class/parser/classDiagram */

/*! ./diagrams/class/styles */

/*! ./diagrams/common/common */

/*! ./diagrams/er/erDb */

/*! ./diagrams/er/erRenderer */

/*! ./diagrams/er/parser/erDiagram */

/*! ./diagrams/er/styles */

/*! ./diagrams/flowchart/flowDb */

/*! ./diagrams/flowchart/flowRenderer */

/*! ./diagrams/flowchart/flowRenderer-v2 */

/*! ./diagrams/flowchart/parser/flow */

/*! ./diagrams/flowchart/styles */

/*! ./diagrams/gantt/ganttDb */

/*! ./diagrams/gantt/ganttRenderer */

/*! ./diagrams/gantt/parser/gantt */

/*! ./diagrams/gantt/styles */

/*! ./diagrams/git/gitGraphAst */

/*! ./diagrams/git/gitGraphRenderer */

/*! ./diagrams/git/parser/gitGraph */

/*! ./diagrams/git/styles */

/*! ./diagrams/info/infoDb */

/*! ./diagrams/info/infoRenderer */

/*! ./diagrams/info/parser/info */

/*! ./diagrams/info/styles */

/*! ./diagrams/pie/parser/pie */

/*! ./diagrams/pie/pieDb */

/*! ./diagrams/pie/pieRenderer */

/*! ./diagrams/pie/styles */

/*! ./diagrams/requirement/parser/requirementDiagram */

/*! ./diagrams/requirement/requirementDb */

/*! ./diagrams/requirement/requirementRenderer */

/*! ./diagrams/requirement/styles */

/*! ./diagrams/sequence/parser/sequenceDiagram */

/*! ./diagrams/sequence/sequenceDb */

/*! ./diagrams/sequence/sequenceRenderer */

/*! ./diagrams/sequence/styles */

/*! ./diagrams/state/parser/stateDiagram */

/*! ./diagrams/state/stateDb */

/*! ./diagrams/state/stateRenderer */

/*! ./diagrams/state/stateRenderer-v2 */

/*! ./diagrams/state/styles */

/*! ./diagrams/user-journey/journeyDb */

/*! ./diagrams/user-journey/journeyRenderer */

/*! ./diagrams/user-journey/parser/journey */

/*! ./diagrams/user-journey/styles */

/*! ./edges */

/*! ./erDb */

/*! ./erMarkers */

/*! ./errorRenderer */

/*! ./flowChartShapes */

/*! ./flowDb */

/*! ./ganttDb */

/*! ./gitGraphAst */

/*! ./id-cache.js */

/*! ./infoDb */

/*! ./intersect-circle.js */

/*! ./intersect-ellipse */

/*! ./intersect-ellipse.js */

/*! ./intersect-line */

/*! ./intersect-node.js */

/*! ./intersect-polygon.js */

/*! ./intersect-rect.js */

/*! ./intersect/index.js */

/*! ./intersect/intersect-rect */

/*! ./journeyDb */

/*! ./logger */

/*! ./markers */

/*! ./mermaid-graphlib */

/*! ./mermaidAPI */

/*! ./nodes */

/*! ./parser/classDiagram */

/*! ./parser/erDiagram */

/*! ./parser/flow */

/*! ./parser/gantt */

/*! ./parser/gitGraph */

/*! ./parser/info */

/*! ./parser/journey */

/*! ./parser/pie */

/*! ./parser/requirementDiagram */

/*! ./parser/sequenceDiagram */

/*! ./parser/stateDiagram */

/*! ./pieDb */

/*! ./requirementDb */

/*! ./requirementMarkers */

/*! ./sequenceDb */

/*! ./shapes */

/*! ./shapes/note */

/*! ./shapes/util */

/*! ./stateDb */

/*! ./styles */

/*! ./svgDraw */

/*! ./theme-base */

/*! ./theme-dark */

/*! ./theme-default */

/*! ./theme-forest */

/*! ./theme-helpers */

/*! ./theme-neutral */

/*! ./themes */

/*! ./util */

/*! ./utils */

/*! @braintree/sanitize-url */

/*! Check if previously processed */

/*! Mike Samuel © 2009 | code.google.com/p/json-sans-eval

*/

/*! algoliasearch.umd.js | 4.10.2 | © Algolia, inc. | github.com/algolia/algoliasearch-client-javascript */

/*! d3 */

/*! dagre */

/*! dagre-d3 */

/*! dagre-d3/lib/label/add-html-label.js */

/*! entity-decode/browser */

/*! exports provided: LEVELS, log, setLogLevel */

/*! exports provided: addClasses, addRelations, setConf, drawOld, draw, default */

/*! exports provided: addToRender, addToRenderV2, default */

/*! exports provided: bounds, drawActors, setConf, draw, default */

/*! exports provided: calcThemeVariables, default */

/*! exports provided: clear, insertEdgeLabel, positionEdgeLabel, intersection, insertEdge */

/*! exports provided: clusterDb, clear, extractDecendants, validate, findNonClusterChild, adjustClustersAndEdges, extractor, sortNodesByHierarchy */

/*! exports provided: default */

/*! exports provided: defaultConfig, updateCurrentConfig, setSiteConfig, saveConfigFromInitilize, updateSiteConfig, getSiteConfig, setConfig, getConfig, sanitize, addDirective, reset */

/*! exports provided: detectInit, detectDirective, detectType, isSubstringInArray, interpolateToCurve, formatUrl, runFunc, getStylesFromArray, generateId, random, assignWithDepth, getTextObj, drawSimpleText, wrapLabel, calculateTextHeight, calculateTextWidth, calculateTextDimensions, calculateSvgSizeAttrs, configureSvgSize, initIdGeneratior, default */

/*! exports provided: draw, default */

/*! exports provided: drawEdge, drawClass, parseMember, default */

/*! exports provided: drawRect, drawFace, drawCircle, drawText, drawLabel, drawSection, drawTask, drawBackgroundRect, getTextObj, getNoteRect, default */

/*! exports provided: drawRect, drawText, drawLabel, drawActor, anchorElement, drawActivation, drawLoop, drawBackgroundRect, insertArrowHead, insertArrowFilledHead, insertSequenceNumber, insertArrowCrossHead, getTextObj, getNoteRect, default */

/*! exports provided: drawStartState, drawDivider, drawSimpleState, drawDescrState, addTitleAndBox, drawText, drawNote, drawState, drawEdge */

/*! exports provided: encodeEntities, decodeEntities, default */

/*! exports provided: getRows, removeScript, sanitizeText, lineBreakRegex, hasBreaks, splitBreaks, evaluate, default */

/*! exports provided: getThemeVariables */

/*! exports provided: insertCluster, getClusterTitleWidth, clear, positionCluster */

/*! exports provided: insertNode, setNodeElem, clear, positionNode */

/*! exports provided: labelHelper, updateNodeBounds, insertPolygonShape */

/*! exports provided: mkBorder */

/*! exports provided: name, version, description, main, keywords, scripts, repository, author, license, standard, dependencies, devDependencies, files, yarn-upgrade-all, sideEffects, husky, default */

/*! exports provided: parseDirective, addActor, addMessage, addSignal, getMessages, getActors, getActor, getActorKeys, getTitle, getTitleWrapped, enableSequenceNumbers, showSequenceNumbers, setWrap, autoWrap, clear, parseMessage, LINETYPE, ARROWTYPE, PLACEMENT, addNote, setTitle, apply, default */

/*! exports provided: parseDirective, addClass, lookUpDomId, clear, getClass, getClasses, getRelations, addRelation, addAnnotation, addMember, addMembers, cleanupLabel, setCssClass, setLink, setClickEvent, bindFunctions, lineType, relationType, default */

/*! exports provided: parseDirective, addState, clear, getState, getStates, logDocuments, getRelations, addRelation, cleanupLabel, lineType, relationType, default */

/*! exports provided: parseDirective, clear, setAxisFormat, getAxisFormat, setTodayMarker, getTodayMarker, setDateFormat, enableInclusiveEndDates, endDatesAreInclusive, enableTopAxis, topAxisEnabled, getDateFormat, setExcludes, getExcludes, setTitle, getTitle, addSection, getSections, getTasks, addTask, findTaskById, addTaskOrg, setLink, setClass, setClickEvent, bindFunctions, default */

/*! exports provided: parseDirective, clear, setTitle, getTitle, addSection, getSections, getTasks, addTask, addTaskOrg, default */

/*! exports provided: parseDirective, default */

/*! exports provided: parseDirective, lookUpDomId, addVertex, addSingleLink, addLink, updateLinkInterpolate, updateLink, addClass, setDirection, setClass, setLink, getTooltip, setClickEvent, bindFunctions, getDirection, getVertices, getEdges, getClasses, clear, setGen, defaultStyle, addSubGraph, getDepthFirstPos, indexNodes, getSubGraphs, firstGraph, default */

/*! exports provided: render */

/*! exports provided: set, get, keys, size, default */

/*! exports provided: setConf, addVertices, addEdges, getClasses, draw, default */

/*! exports provided: setConf, draw, bounds, drawTasks, default */

/*! exports provided: setConf, draw, default */

/*! exports provided: setConf, drawReqs, drawElements, draw, default */

/*! exports provided: setConf, getClasses, draw, default */

/*! exports provided: setDirection, setOptions, getOptions, commit, branch, merge, checkout, reset, prettyPrint, clear, getBranchesAsObjArray, getBranches, getCommits, getCommitsArray, getCurrentBranch, getDirection, getHead, default */

/*! exports provided: setMessage, getMessage, setInfo, getInfo, default */

/*! fs */

/*! graphlib */

/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <feross.org/opensource> */

/*! khroma */

/*! moment-mini */

/*! no static exports found */

/*! path */

/*! sequence config was passed as #1 */

/*! stylis */

/*!*********************!*\

!*** external "d3" ***!
\*********************/

/*!**********************!*\

!*** ./package.json ***!
\**********************/

/*!**********************!*\

!*** ./src/utils.js ***!
\**********************/

/*!***********************!*\

!*** ./src/config.js ***!
\***********************/

/*!***********************!*\

!*** ./src/logger.js ***!
\***********************/

/*!***********************!*\

!*** ./src/styles.js ***!
\***********************/

/*!************************!*\

!*** ./src/mermaid.js ***!
\************************/

/*!************************!*\

!*** external "dagre" ***!
\************************/

/*!*************************!*\

!*** external "khroma" ***!
\*************************/

/*!*************************!*\

!*** external "stylis" ***!
\*************************/

/*!***************************!*\

!*** ./src/mermaidAPI.js ***!
\***************************/

/*!***************************!*\

!*** external "dagre-d3" ***!
\***************************/

/*!***************************!*\

!*** external "graphlib" ***!
\***************************/

/*!*****************************!*\

!*** ./src/themes/index.js ***!
\*****************************/

/*!******************************!*\

!*** ./src/defaultConfig.js ***!
\******************************/

/*!******************************!*\

!*** ./src/errorRenderer.js ***!
\******************************/

/*!******************************!*\

!*** external "moment-mini" ***!
\******************************/

/*!*********************************!*\

!*** ./src/diagrams/er/erDb.js ***!
\*********************************/

/*!**********************************!*\

!*** ./src/themes/theme-base.js ***!
\**********************************/

/*!**********************************!*\

!*** ./src/themes/theme-dark.js ***!
\**********************************/

/*!***********************************!*\

!*** (webpack)/buildin/module.js ***!
\***********************************/

/*!***********************************!*\

!*** ./src/diagrams/er/styles.js ***!
\***********************************/

/*!***********************************!*\

!*** ./src/diagrams/pie/pieDb.js ***!
\***********************************/

/*!************************************!*\

!*** ./src/dagre-wrapper/edges.js ***!
\************************************/

/*!************************************!*\

!*** ./src/dagre-wrapper/index.js ***!
\************************************/

/*!************************************!*\

!*** ./src/dagre-wrapper/nodes.js ***!
\************************************/

/*!************************************!*\

!*** ./src/diagrams/git/styles.js ***!
\************************************/

/*!************************************!*\

!*** ./src/diagrams/pie/styles.js ***!
\************************************/

/*!************************************!*\

!*** ./src/themes/theme-forest.js ***!
\************************************/

/*!*************************************!*\

!*** ./src/diagrams/info/infoDb.js ***!
\*************************************/

/*!*************************************!*\

!*** ./src/diagrams/info/styles.js ***!
\*************************************/

/*!*************************************!*\

!*** ./src/themes/theme-default.js ***!
\*************************************/

/*!*************************************!*\

!*** ./src/themes/theme-helpers.js ***!
\*************************************/

/*!*************************************!*\

!*** ./src/themes/theme-neutral.js ***!
\*************************************/

/*!**************************************!*\

!*** ./src/dagre-wrapper/markers.js ***!
\**************************************/

/*!**************************************!*\

!*** ./src/diagrams/class/styles.js ***!
\**************************************/

/*!**************************************!*\

!*** ./src/diagrams/er/erMarkers.js ***!
\**************************************/

/*!**************************************!*\

!*** ./src/diagrams/gantt/styles.js ***!
\**************************************/

/*!**************************************!*\

!*** ./src/diagrams/state/shapes.js ***!
\**************************************/

/*!**************************************!*\

!*** ./src/diagrams/state/styles.js ***!
\**************************************/

/*!***************************************!*\

!*** ./src/dagre-wrapper/clusters.js ***!
\***************************************/

/*!***************************************!*\

!*** ./src/diagrams/class/classDb.js ***!
\***************************************/

/*!***************************************!*\

!*** ./src/diagrams/class/svgDraw.js ***!
\***************************************/

/*!***************************************!*\

!*** ./src/diagrams/common/common.js ***!
\***************************************/

/*!***************************************!*\

!*** ./src/diagrams/er/erRenderer.js ***!
\***************************************/

/*!***************************************!*\

!*** ./src/diagrams/gantt/ganttDb.js ***!
\***************************************/

/*!***************************************!*\

!*** ./src/diagrams/state/stateDb.js ***!
\***************************************/

/*!****************************************!*\

!*** ./src/diagrams/state/id-cache.js ***!
\****************************************/

/*!****************************************!*\

!*** external "entity-decode/browser" ***!
\****************************************/

/*!*****************************************!*\

!*** ./node_modules/process/browser.js ***!
\*****************************************/

/*!*****************************************!*\

!*** ./src/diagrams/git/gitGraphAst.js ***!
\*****************************************/

/*!*****************************************!*\

!*** ./src/diagrams/pie/pieRenderer.js ***!
\*****************************************/

/*!*****************************************!*\

!*** ./src/diagrams/sequence/styles.js ***!
\*****************************************/

/*!******************************************!*\

!*** ./src/dagre-wrapper/createLabel.js ***!
\******************************************/

/*!******************************************!*\

!*** ./src/dagre-wrapper/shapes/note.js ***!
\******************************************/

/*!******************************************!*\

!*** ./src/dagre-wrapper/shapes/util.js ***!
\******************************************/

/*!******************************************!*\

!*** ./src/diagrams/flowchart/flowDb.js ***!
\******************************************/

/*!******************************************!*\

!*** ./src/diagrams/flowchart/styles.js ***!
\******************************************/

/*!******************************************!*\

!*** ./src/diagrams/sequence/svgDraw.js ***!
\******************************************/

/*!******************************************!*\

!*** external "@braintree/sanitize-url" ***!
\******************************************/

/*!*******************************************!*\

!*** ./src/diagrams/info/infoRenderer.js ***!
\*******************************************/

/*!*******************************************!*\

!*** ./src/diagrams/pie/parser/pie.jison ***!
\*******************************************/

/*!********************************************!*\

!*** ./src/diagrams/requirement/styles.js ***!
\********************************************/

/*!*********************************************!*\

!*** ./src/diagrams/class/classRenderer.js ***!
\*********************************************/

/*!*********************************************!*\

!*** ./src/diagrams/gantt/ganttRenderer.js ***!
\*********************************************/

/*!*********************************************!*\

!*** ./src/diagrams/info/parser/info.jison ***!
\*********************************************/

/*!*********************************************!*\

!*** ./src/diagrams/sequence/sequenceDb.js ***!
\*********************************************/

/*!*********************************************!*\

!*** ./src/diagrams/state/stateRenderer.js ***!
\*********************************************/

/*!*********************************************!*\

!*** ./src/diagrams/user-journey/styles.js ***!
\*********************************************/

/*!**********************************************!*\

!*** ./src/dagre-wrapper/intersect/index.js ***!
\**********************************************/

/*!**********************************************!*\

!*** ./src/diagrams/git/gitGraphRenderer.js ***!
\**********************************************/

/*!**********************************************!*\

!*** ./src/diagrams/user-journey/svgDraw.js ***!
\**********************************************/

/*!***********************************************!*\

!*** ./node_modules/path-browserify/index.js ***!
\***********************************************/

/*!***********************************************!*\

!*** ./src/dagre-wrapper/mermaid-graphlib.js ***!
\***********************************************/

/*!***********************************************!*\

!*** ./src/diagrams/gantt/parser/gantt.jison ***!
\***********************************************/

/*!************************************************!*\

!*** ./src/diagrams/class/classRenderer-v2.js ***!
\************************************************/

/*!************************************************!*\

!*** ./src/diagrams/er/parser/erDiagram.jison ***!
\************************************************/

/*!************************************************!*\

!*** ./src/diagrams/flowchart/flowRenderer.js ***!
\************************************************/

/*!************************************************!*\

!*** ./src/diagrams/git/parser/gitGraph.jison ***!
\************************************************/

/*!************************************************!*\

!*** ./src/diagrams/state/stateRenderer-v2.js ***!
\************************************************/

/*!************************************************!*\

!*** ./src/diagrams/user-journey/journeyDb.js ***!
\************************************************/

/*!**************************************************!*\

!*** ./src/diagrams/flowchart/parser/flow.jison ***!
\**************************************************/

/*!***************************************************!*\

!*** ./src/diagrams/flowchart/flowChartShapes.js ***!
\***************************************************/

/*!***************************************************!*\

!*** ./src/diagrams/flowchart/flowRenderer-v2.js ***!
\***************************************************/

/*!***************************************************!*\

!*** ./src/diagrams/requirement/requirementDb.js ***!
\***************************************************/

/*!***************************************************!*\

!*** ./src/diagrams/sequence/sequenceRenderer.js ***!
\***************************************************/

/*!******************************************************!*\

!*** ./node_modules/node-libs-browser/mock/empty.js ***!
\******************************************************/

/*!******************************************************!*\

!*** ./src/diagrams/class/parser/classDiagram.jison ***!
\******************************************************/

/*!******************************************************!*\

!*** ./src/diagrams/state/parser/stateDiagram.jison ***!
\******************************************************/

/*!******************************************************!*\

!*** ./src/diagrams/user-journey/journeyRenderer.js ***!
\******************************************************/

/*!*******************************************************!*\

!*** ./src/dagre-wrapper/intersect/intersect-line.js ***!
\*******************************************************/

/*!*******************************************************!*\

!*** ./src/dagre-wrapper/intersect/intersect-node.js ***!
\*******************************************************/

/*!*******************************************************!*\

!*** ./src/dagre-wrapper/intersect/intersect-rect.js ***!
\*******************************************************/

/*!*******************************************************!*\

!*** external "dagre-d3/lib/label/add-html-label.js" ***!
\*******************************************************/

/*!********************************************************!*\

!*** ./src/diagrams/requirement/requirementMarkers.js ***!
\********************************************************/

/*!********************************************************!*\

!*** ./src/diagrams/user-journey/parser/journey.jison ***!
\********************************************************/

/*!*********************************************************!*\

!*** ./src/dagre-wrapper/intersect/intersect-circle.js ***!
\*********************************************************/

/*!*********************************************************!*\

!*** ./src/diagrams/requirement/requirementRenderer.js ***!
\*********************************************************/

/*!**********************************************************!*\

!*** ./src/dagre-wrapper/intersect/intersect-ellipse.js ***!
\**********************************************************/

/*!**********************************************************!*\

!*** ./src/dagre-wrapper/intersect/intersect-polygon.js ***!
\**********************************************************/

/*!************************************************************!*\

!*** ./src/diagrams/sequence/parser/sequenceDiagram.jison ***!
\************************************************************/

/*!******************************************************************!*\

!*** ./src/diagrams/requirement/parser/requirementDiagram.jison ***!
\******************************************************************/

/**

* @license
* Copyright (c) 2012-2013 Chris Pettitt
*
* 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.
*/

/**!

* @fileOverview Kickass library to create and place poppers near their reference elements.
* @version 1.16.1
* @license
* Copyright (c) 2016 Federico Zivolo and 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.
*/